Grasshopper

algorithmic modeling for Rhino

Orientation data sent from the GyrOSC app being used as input for Kangaroo.

Accelerometer readings on their own aren't much good for determining orientation (because you can't differentiate between gravity and other accelerations).
The gyroscope readings on their own also do not provide a good orientation reading.
However, when combined (along with the magnetometer, and using some nice mathematics), they can provide a good sensing of the orientation of the device.

Here I'm using this app to send this as a quaternion to grasshopper, and using it to orient the base plate. I'm also applying the acceleration as a separate force to the structure.

http://www.bitshapesoftware.com/instruments/gyrosc/

Views: 552

Comment

You need to be a member of Grasshopper to add comments!

Comment by taz on August 13, 2012 at 11:09am

Comment by Andy Payne on August 11, 2012 at 9:02pm

Thanks for the links... and also for mentioning GyrOSC.  I hadn't been aware of this app, but it looks really impressive.  Downloading now :)

Comment by Daniel Piker on August 11, 2012 at 8:12pm

Hi Andy,

I've not made any measurements but the orientation does seem pretty accurate (at least over short periods), and the onboard sensor fusion does a good job.

It's not completely immune to drift though, and after a minute or two, and a few complete turns, the yaw can be noticeably off. There is a button in the app to recalibrate, so you can just line the device up with the table edge and tap this every minute or so. I'm not quite sure why it can't do this itself based on the compass reading though.

by the way, I found this google tech talk by David Sachs fascinating and very helpful in understanding sensor fusion a bit more (including the advantages of doing it on the hardware)

Also - talking of filtering, one other thing I was trying was using the accelerometer data (reoriented from the device frame to world frame) for 'dead reckoning' to get position, but the results were useless - way off within a second. Any slight lag has a huge effect here, and I guess maybe to get anything even half decent this would need to be done on the hardware too.

Of course, how accurate these readings need to be all depends on the intended application. I do think IMUs have a lot of unexplored potential as input devices...

Comment by Andy Payne on August 11, 2012 at 6:45pm

Great job.  How accurate do you think the orientation quaternions are (in relationship to the actual orientation of the ipad)?  The reason I ask is that some time ago I was looking into a similar application where I was using a Kalman filter to handle the sensor fusion between the accelerometer, gyro, and magnetometer.  Kalman filters are not trivial... but there are also examples online that you can modify/plug in.  I was able to get a relatively good workflow(but never followed through with my application).  Using the built-in device on the ipad makes a lot more sense (as I had bought several of the sensors separately and built them into a single configuration).  

Really nice work.

-Andy

Comment by Ángel Linares on August 11, 2012 at 4:54pm

Niiiiiiiiiiice!

Comment by Pieter Segeren on August 11, 2012 at 3:04pm

Incredibly impressive Daniel.
I Like it a lot.

About

Translate

Search

Photos

  • Add Photos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service