Physics Sensor Data Acquisition Tool Hacked From a Sphero Mini
by JohnRConrad in Circuits > Sensors
4608 Views, 14 Favorites, 0 Comments
Physics Sensor Data Acquisition Tool Hacked From a Sphero Mini
In this Instructable I will show you to hack the physics sensor board from a Sphero Mini. This is a great project for use in high school or first-year college physics labs, and in a number of other applications as described below.
I conceived the idea for this project in the spring of 2020 as I was making the abrupt transition to remote teaching of my first-year physics classes at Furman University. For the then-upcoming fall semester of 2020, I was scheduled to teach two sections of General Physics I (classical mechanics). I knew that to do an acceptable job teaching the labs in the fall semester I needed to start planning immediately and work over the summer to prepare. The idea was that the students could use the 3-axis accelerometer and 3-axis rotational velocity sensor on a Sphero Mini’s Bluetooth-connected IMU (Inertial Measurement Unit) to take data for various “at-home” physics labs that I would develop. I knew enough about the Sphero Mini environment to know that the excellent user-friendly graphical user interface of the Sphero EDU app would allow the students to record and send the data to their mobile devices easily.
My primitive early attempts can be seen in my Furman Physics YouTube Channel video At Home Physics Labs with Sphero Sensor Board. Based on those initial results, Sphero partnered with us to generously provide 44 Sphero Minis to the Furman Physics department. You can view a quick overview of the project by watching the Furman Sphero Mini Sensor Board Project video. More detail is available in my blog How to Use A Sphero Mini Sensor Board for First-Year Physics Labs. While we may never need to return to large-scale remote instruction, I believe the project has applicability to:
- First-year physics university and high school labs
- Studio physics courses
- In-person and remote use
- Inquiry-based labs
- Individual student STEM special projects
- Science fair and robotics club projects
- Makerspace projects
- Science Centers and Museums
Supplies
Sphero Mini Robot Ball - You can purchase one of these brand new for a list price of $50, but you can often find them used on eBay for about half that price. You may actually find one abandoned in a kid's toy box. All you need is the sensor board and battery; even if the robot's drive motors are inoperative it's possible that the sensor board is still okay. If the used battery is dead, it can be easily replaced.
Remove the Sensor Board From the Sphero Mini
The video shows you how to disassemble the Sphero Mini, remove the idler wheel platform, and then detach the sensor board from the drive unit.
About the Sensor Board
The IMU on the Sphero Mini Sensor Board is the bmi055, which is a 6-axis IMU often used in commercial VR headsets. As you saw in the video in the previous step, there are two ways of "mounting" the sensor board. If you want to use the full three axes (roll, pitch and yaw) in a rolling application, the video showed you how to "mount" the sensor in the original Sphero Mini shell. If on the other hand, your application is just one (or two) axes it is convenient to house the board in a restaurant sauce container. In some applications, you may need to know the location of the IMU on the board. The figure above shows you the location.
Orientation of the Sensor Board Axes
The paper pie plate photo above shows the orientation of the IMU axes relative to the sensor board geometry. The following data for the accelerometer and gyroscope specs is taken from the Sphero Edu JavaScript Wiki.
Accelerometer
Provides motion acceleration data along a given axis measured by the Accelerometer, in g's, where g = 9.80665 m/s^2.
Acceleration-x is the left-to-right acceleration, from -8 to 8 g's.
Acceleration-y is is the forward-to-back acceleration, from of -8 to 8 g's.
Acceleration-z is is the upward-to-downward acceleration, from -8 to 8 g's.
Acceleration-total is the magnitude of the vector sum of acceleration of all 3 axes, from 0 to 14 g's.
Orientation
Provides the tilt angle along a given axis measured by the Gyroscope, in degrees.
Orientation pitch is the forward or backward tilt angle, from -180° to 180°.
Orientation roll is left or right tilt angle, from -90° to 90°.
Orientation yaw is the spin (twist) angle, from -180° to 180°.
Gyroscope
Provides the rate of rotation (angular velocity) around a given axis measured by the gyroscope, from -2,000° to 2,000° per second.
Gyroscope pitch is the rate of forward or backward spin, from -2,000° to 2,000° per second.
Gyroscope roll is the rate of left or right spin, from -2,000° to 2,000° per second.
Gyroscope yaw is the rate of sideways spin, from -2,000° to 2,000° per second.
Getting Started With the Sphero Mini Sensor Board
All you need to communicate with the sensor board is provided by the free Sphero EDU app which can be downloaded from the Sphero Edu site. There are versions of the app which run on iOS, macOS, Android and Chrome OS, Windows, and Fire OS. Launch the app and create an account by clicking on the "Sign In" button in the upper right hand corner. In the popup window, click the "I'm a Home User" button to create your account.
Take Some Sample Data
After you have created the Sphero Edu account, launch the video "Intro to Data Capture from Sphero Sensor Board", and you should now be able to take some data. To verify that you have gotten all of this to work, just record a 20-30 capture of accelerometer/gyroscope data as you manipulate the board in space, as shown in the video.
Optional: Download Curriculum Material
This step is optional. You may be interested in the curriculum material I developed for use in PHY 111 at Furman. The following video tutorials are available on the Furman Physics YouTube Channel:
- Unboxing the Furman modified Sphero Mini Sensor Board
- Intro to Data Capture from Sphero Mini Sensor Board
- Slingshot Sled Kinematics with Sphero Mini Sensor Board
- Centripetal Acceleration vs Angular Velocity Using Sphero Mini Sensor Board
- Solid Cylinder Rolling Down a Ramp Using Sphero Mini Sensor Board
- Simple Pendulum - Acceleration due to Gravity Using the Sphero Mini Sensor Board
- Sphero Mini Sensor Board Rolling Down a Shallow Cone
The Slingshot Sled lab is the most demanding of the four labs regarding hands-on building skills and attention to detail. But it is the most rewarding to engage the students' curiosity and encourage them to try different frictional scenarios. Therefore, it is the best of the labs in terms of applicability to evidence-based lab instruction. It suffers somewhat from accuracy issues due to the relatively slow sampling rate of the SMSB--this issue can be easily fixed in future applications. The Simple Pendulum lab is the easiest to perform and gives excellent agreement (better than 1% accuracy). The Centripetal Acceleration and Solid Cylinder labs lie in the middle range of difficulty and accuracy.
In addition to these video tutorials, you can download the entire collection of curriculum material (Word, Excel, and Mathematica documents) from the repository here.