I'm at the FIRST Robotics Championship in Atlanta and we've just unveiled the first REAL Lego UAV. It's actuallly been working for a few months, but we couldn't talk about it since it's based on the new hardware that was just announced yesterday as the new FIRST Tech Challenge competition kit. Our UAV uses Mindstorms and the new hardware to make a full IMU-based autopilot, which both stabilizes and navigates the plane autonomously. It uses:

--Mindstorms NXT controller
--Two prototype integrating gyros from HiTechnic. These are not the rate gyros already available. Rate gyros output degrees/sec, which requires a pretty gnarly math process to measure and integrate the results over time to get absolute degrees. The prototype iGyros from HiTechnic do that in hardware, and output absolute degrees, which is very easy for the NXT to deal with with.
--A 3-axis accelerometer to calibrate the gyros using a modified Kalman filter. Basically gyros are right in the short term (seconds) but wrong in the long term (minutes; they drift over time). Meanwhile accelerometers are wrong in short term (they're noisy) but right in the long term (they don't drift). So we averge the accelerometer readings over time to correct drift in the gyros.
--A prototype servo multiplexer from HiTechnic. This is similar to the servo driver accessory that they're selling as part of the FTC competition kit, but is designed for RC use. It takes I2C output from the NXT and converts it into PWM for the servos. It also has a channel 6 input from the RC receiver that switches it from RC to NXT control (this is our hardware failsafe switch).
--A GPS sensor/datalogger (iBlue 747) that communicates with the NXT via bluetooth.

I'll post the RobotC code this weekend, but I wanted to give you a quick look at this. It's really cool, flies, and can now expand into anything else in the robotics world, from cameras to communications. More soon!

Views: 7577

Comment by Harrison on December 26, 2008 at 9:33pm
Is there any update on the new gyros? I assume its this one?


Hope these are the new ones!

3D Robotics
Comment by Chris Anderson on December 26, 2008 at 10:45pm
Sadly not. Those are the old non-integrating gyros. HiTechnic has still not released the ones I used.
Comment by dp on January 19, 2009 at 6:29am
Will the integratd accelerators and gyros work as well?Such as the ADIS16355?
Comment by Noth666 on January 19, 2009 at 7:20am
Hello People,

I've been using RobotC and 3rd party sensors with NXT for quite some time, mainly components by www.mindsensors.com who have a great number of NXT sensor systems, and also a servo controller.

The servo controller (NXT to 8 PWM servos) can be found on http://mindsensors.com/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=93
This comes with RobotC example so it should be straight forward.

So the gyros are the issue still at this point for the LEGO UAV.
Comment by Noth666 on January 19, 2009 at 7:39am
Also mindsensors have kits to interface most kinds of sensors to the NXT - perhaps it would be possible to use on of those to interface to a Gyro or several... Just a thought in case someone feels like giving it a shot (I am busy on my own non-LEGO UAV).
A year ago or so I wrote some 3 axis tilt/accel and other drivers in RobotC for NXT and did not find it too hard, just some timings needed some trial and error to get to work.

3D Robotics
Comment by Chris Anderson on January 19, 2009 at 8:51am
It can definitely be done with a generic interface and standard (non-NXT) gyros and accelerometers. It's just more work that I wanted to do. Meanwhile, Sami has created a version that uses the non-integrating gyros so it can be used with NXT sensors that are available now, which is great.
Comment by Noth666 on January 19, 2009 at 11:28am
mindsensors used to have a few different 3 axis accelerometers for NXT, as a matter of fact I have one :-), but yeah I guess it would be some work to get generic gyros working properly in robotc, I remember the accelerometer was quite some tweaking to get the driver to not hang the sensor, it would hang if polled too quickly for example, mainly when polling different registries.
Comment by William Fernandez on May 22, 2009 at 9:54am
Do you have a contact in Georgia. Would be Interested in seeing one with a digital camera for photogrammetric applications.
Comment by Paulo Guerra on September 29, 2009 at 9:12am
Hi Chris.

I think your project is great. We are trying to do something similar here in Ecuador. One question, is it possible for you to share the RobotC code used in this version of UAV? I will really appreciate it, since we are having some troubles with the gyros and accelerometer error correction. Thanks a lot.

Comment by Richard Daniel Mayo on December 2, 2009 at 5:21am
Question, is the gyro in the picture labeled "Pitch gyro" orientated correctly? It looks like it´s in a position to measure yaw, not pitch.


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service