## Nov 24, 2006

### Acceleration in the community…

So what happens when you let a physicist loose with an acceleration sensor? They find something to measure of course! I’ve been fortunate enough to test several sensors, including the HiTechnic acceleration sensor. This is a 3-axis accelerometer that can register up to 2.5 G’s along each axis with a fairly high resolution. I used it for a couple of “standard” robotics-type applications, like vehicles that try to roll up hill, etc., but what originally drew my attention to the RCX, years ago, was its ability to function as a cheap datalogger. So I wrote up a simple NXT-G program that allows me to log data from the sensor to the NXT file system on command: the result is a compact and very rugged datalogger, suitable for measuring accelerations almost anywhere. As an example, I duct taped the sensor to my tailbone, and went out back to play on the swings. The graph shows the results. The red line is the side-to-side acceleration (minimal, as I was trying to swing in a straight line), while the blue and yellow traces represent accelerations in the other two directions. The vector sum of all these is the green trace, showing my peak acceleration is slightly more than 2.5 G’s at the bottom of my arc. Notice I exited the swing by jumping off (hey, if you can’t have fun…), resulting in a very low-acceleration section of the graph.

Why bother? Two reasons: first, this is something I’ve wanted to do, and points out another really fun use for the NXT – teaching science. Imagine taking this to “physics day” at a theme park, and recording the accelerations on a roller coaster or some other thrill ride. “Mission Space” at Disney? “Demon Drop” at Cedar Point? Or just playing on the local playground? There are some wonderful possibilities here (I know, for instance, what the acceleration profile looks like for my car now).

Secondly, this is another good example of the community making all this possible. To get that graph, I had to use a sensor (to get the data) and extra-long cable (to allow for movement) from HiTechnic, a custom NXT-G block (to get the data out of the sensor) built by Steve Hassenplug, using the beta-version of the LabVIEW toolkit (to allow building and integrating such custom solutions), and of course the NXT brick from LEGO. I had the idea (and have for a while), but implementing that idea took contributions from at least four different directions.

OK, teachers, researchers, and amateur scientists… what will you datalog? Anybody want to email me some interesting data?

--
Brian Davis

Rob Torok said...

Brian,

Cool! That's looks like a lot of fun... I think my young boys and I will have some fun at the playground next door when ours arrives...

Could you please provide some more details (including some examples, such as the accelerometer one) of the programs you've used to do datalogging with the NXT.

Datalogging with the RCX was something that I came to a bit late with the RCX - and to be honest, never really got it into my teaching like I should've. When my new school year starts in Feb I'd like to be doing datalogging from the get go...

Rob

Drew Stevenson said...

Hmm... Could this be used for navigation by referencing the accelerations. (I think there are some GPS nav systems that use accelerometers to make a best guess at course and speed when they are not getting a GPS signal. I think they have a rotation acceleration too but the Compass should suffice as lng as your not rolling in 3D. (as in my Orbital Explorer described at NXTasy).

Any ideas on how to use these logs and a compass to give a working system for the Bot to self reference (instead of just log).

Thanks

Brian Davis said...

Well, I tossed a sample datalogging program up on NXTblog: look for the "DLog" project (or search for keyword "datalog"), and please let me know if it downloads and installs/works OK, and then I'll expand once I've heard it's availible.

The program I posted is easy to modify, but it's not the one I got the acceleration data with; that uses a custom block I can't release yet, as well as a beta acceleration sensor that's not (yet!) availible.

As to using this for navigation, you generally need a much higher precision to do "inertial navigation"... in fact, generally inertial measurement units need far more exacting (and expensive) sensors. But I've not tried it yet. As to "using" the data in a program, that's the great thing about the NXT file system: unlike on the RCX where the datalog was unavalible to the running program, a NXT-G program can read and write those files; they are essentially a very slow but large array of variables.

--
Brian Davis

Rob Torok said...

Okay Brian, I give up, I can't find your DLog project... gimme another hint please... (-:

For a start, what is NXTblog?

Also, what is the LabVIEW toolkit and how does it relaite (if at all) to NXT-G and/or Robolab?

Rob

Brian Davis said...

That's because it's up on LEGO "NXTlog", which I misspelled in such as a way as to cause confusion. My bad. Go to:

http://mindstorms.lego.com/nxtlog/default.aspx

and seach for "DLog" or "datalog" and it should pop up. The LabVIEW Toolkit is a way of writing your own blocks for NXT-G (among other things); it is being beta tested now, but the announcement was way back:

(if that's too mangled, Google for "LabVIEW Toolkit NXT" and the announcment from NI will likely be the top hit).

--
Brian Davis
(who REALLY needs to watch his spelling better... sorry)

Will George said...

Why bother? Geee to make me feel dumb? I would never have thought of that!

GREAT POST... Amazing