Just received this link from my professor. Pretty cool stuff.
All Posts (14048)
Just received this link from my professor. Pretty cool stuff.
http://www.engadget.com/2010/05/25/parrot-ar-drone-to-get-official-launch-price-street-date-at-e3/
Engadget article on the Parrot.AR "Drone" - launching at E3, an interesting venue choice; especially considering they now have an Android client that they showed off at Goole I//O. Clicking the picture above will take you to the Slashgear article.
AAC: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=330632997
MP3: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=330633212
RSS feed
AAC: http://feeds.feedburner.com/diydrones
MP3: http://feeds.feedburner.com/diydronesmp3
The FAA routinely issues "NOTAMs" restricting aviation where top government officials are. This week it was San Francisco, where President Obama is visiting today and tomorrow. From the AMA alert:
"A new FDC NOTAM/TFR has been issued for San Francisco, CA and the San Francisco Bay area beginning at 5:01p on Tuesday, 5/25, until 12:30p PDT on Wednesday, 5/26. The TFR is issued for security purposes to cover VIP movement in this area. Model aircraft operations are prohibited in this area during the specific times of the TFR. Please note that TFRs are subject to change with very short notice. Check back often for the most current NOTAM/TFR information.
Timely alerts are also available on the web or on you cell phone at: Twitter.com/amagov.
See the link to the TFR below for more detailed information regarding the restrictions:
- Area 1 (5/25, 5:01p - 6:15p PDT)
(30nm radius from Latitude: 37º37'09"N, Longitude: 122º22'31"W) - Area 2 (5/25, 5:01p - 6:15p PDT)
(10nm radius from Latitude: 37º37'09"N, Longitude: 122º22'31"W) - Area 3 (5/25, 5:30p - 5/26, 10:00a PDT)
(30nm radius from Latitude: 37º47'44"N, Longitude: 122º25'24"W) - Area 4 (5/25, 5:30p - 5/26, 10:00a PDT)
(9nm radius from Latitude: 37º47'44"N, Longitude: 122º25'24"W) - Area 5 (5/26, 9:15a - 12:00p PDT)
(30nm radius from Latitude: 37º29'00"N, Longitude: 121º56'09"W) - Area 6 (5/26, 9:15a - 12:00p PDT)
(10nm radius from Latitude: 37º29'00"N, Longitude: 121º56'09"W) - Area 7 (5/26, 11:15a - 12:30p PDT)
(30nm radius from Latitude: 37º37'09"N, Longitude: 122º22'31"W) - Area 8 (5/26, 11:15a - 12:30p PDT)
(10nm radius from Latitude: 37º37'09"N, Longitude: 122º22'31"W)
Compatible with most 2.4Ghz video receiver systems this FPV camera and transmitter system is very versatile as well as light and very small.
The camera uses a quality glass lensed SONY CCD camera system.
Included:
1 x Sanyo CCD 1/3inch Camera
1 x Voltage Regulator
1 x Micro Light Weight Video Transmitter (100mW)
Camera specifications:
CCD SONY 1/3 CCD
Horizontal Resolution420TV Line
Minimum Illumination 0.01LUX/F1.2
Electric current 80MA
DSP+CCD CXD3142R+405AK
Size 38mm*38mm
FPV Tx Specifications:
Power: 100mW
Voltage Booster: 3.7v -> 12v
Weight: 8g
Channels: 4
And here's the impressive work of the AeroQuad team:
ArduCopter - The Full Featured UAV Multicopter!
Hey guys, as many of you know the AeroQuad has teamed up with DIY Drones on developing a very full featured multicopter! Chris from DIY Drones has proposed the name of this new effort to be called the ArduCopter! It will be based on the ArduPilot Pro Mega (APM) and the APM sensor board currently nicknamed the Oil Pan. Here's an initial feature list and software road map. Please chime in! Your input is valuable! I'll keep updating this front page until we agree on the first version of the ArduCopter's capabilities.
ArduCopter Feature ListSoftware Roadmap
- 6 Degree of Freedom IMU stabilized control
- Gyro stabilized flight mode enabling acrobatics (loops and barrel rolls)
- GPS for position hold
- Magnetometer for heading determination
- Barometer for altitude hold
- IR sensor integration for obstacle avoidance
- Sonar sensor for automated takeoff and landing capability
- Automated waypoint navigation
- Motor control using low cost standard PWM Electronics Speed Controllers (ESC's)
- On board flight telemetery data storage
- Mounted camera stabilization capability
- Wireless command & telemetry for long distance communication
- Capability to fly in "+", "x", hexa and octo configurations
- Battery level detection
- User configurable LED flight pattern
- Capability to use any R/C receiver
- ArduCopter Configuration and Ground Control Software
- Realtime graphs of flight data
- GUI for configuration of PID and other flight parameters
- On Screen Display integration
- Waypoint programming using Google Maps
- Mixertable view to auto configure "+", "x", hexa and octo configurations
- Initial baseline using Jose Julio's v3 software
- Provides absolute angle PID flight control
- Obstacle avoidance
- Waypoint navigation
- Generalize basic ArduCopter functions (ie. Separate PPM receiver input and motor control functions into separate libraries. Allows future coding of PWM vs. I2C ESC's)
- Emphasis on developing new capability into easy to use C++ libraries
- Integrate user defined EEPROM storage capability
- Develop/optimize AeroQuad serial real-time command/telemetry for ArduCopter
- Integrate AeroQuad Configurator for external software configuration of ArduCopter
- Rename Configurator to Ground Control Station and integrate graphical programming of waypoint navigation
- Integrate AeroQuad rate PID control
- Integrate mixertable configuration for multicopter configurations
- Integrate AeroQuad camera stabilization
- Integrate I2C motor control
- Develop capability to wirelessly control ArduCopter directly from Ground Control Station (USB joystick controller from laptop or through waypoint programming)
I'd like to ask any of the math wizards out there if you can write and post an improved "get_bearing" function for the navigation tab of the ArduPilot source.
The more I test the ArduPilot code with my emulator, the more nervous I get. You'll notice in the screenshot of my 43MPH flight around Paris on my emulator, the ArduPilot decided to take a few loops around waypoints and the larger the distance between the waypoints, the greater the error in bearing.
Here's the existing get_bearing function
long get_bearing(struct Location *loc1, struct Location *loc2)
{
long off_x = loc2->lng - loc1->lng;
long off_y = (loc2->lat - loc1->lat) * scaleLongUp;
long bearing = 9000 + atan2(-off_y, off_x) * 5729.57795;
if (bearing < 0) bearing += 36000;
return bearing;
}
Camera mounts, Paramodels, Zeppelins, Marcy 1 bicopter
After a hard week of jury duty, Marcy 1 is getting converted to a bicopter like the Bladestar. In exchange for requiring more wing area for a given amount of lift, bicopters have a smaller rotor diameter & cancelling pitch forces which hopefully allow a smaller balance beam or lower RPM.
A sad finish to monocopters, for the moment. Still hope an outdoor monocopter can be built to give the maximum hover time per mA.
Marcy 1's main problem is a new radio crash where the serial port is suddenly locking up. Looks like a silicon defect.
New camera mounts for Vika 1 press forward. This is supposed to work with a ny tie or a servo. Main issue now is the A490 no longer exposes the shutter signal anywhere accessible without destroying the main board.
PARAMODELS
Paragliders are finally catching on, powered by European ingenuity.
http://opale-paramodels.com
The 1st pocketable UAV's with useful payload & flight time are going to be a parafoils. They spend a lot of time making lifelike male pilot figures, but the general idea is 2 brake lines attach to 2 servos.
Finally, in case your boss doesn't give you enough time off to watch a zeppelin maneuvering, it's the Airship Ventures blimp doing somezigzags & pitching. Unfortunately, Canon autofocus wasn't there, so
the 10MP photos had to be shrunken to 640x480.
The good news is that it is free. The even better news is that it only runs on Windows
A bunch of the DIY Drones crew are going to be at Maker Faire this weekend, which promises to be completely mindblowing. Expect 100,000 people over Sat and Sun, and the lineup of projects on display is like nothing you've ever seen before. Many hundreds of groups just like ours, with DIY innovations from robotics and rocketry to biotech. Plus a show by the band Ok Go with Diet Coke/Mentos fireworks!
Jordi Munoz and I will be giving UAV demos at the GeekDad booth and the Maker Shed, along with quadcopter demos on the Innovation Stage at 4:30 on both Sat and Sun. Come by and say hi!
Update 5.20.10
video: https://www.youtube.com/watch?v=NDOL6O9PQzc
This idea came to me in math class when i was talking to one of my friends about this robot.
So whats new? BUTTONS!
I added 2 buttons. The one on the right is for storing waypoints. Now all i have to do is push the button and it stores the current location as a waypoint. This is done to store all the waypoints. There is also a LED that lights up to show that it is storing a waypoint. When you are done storing waypoints, then push the left button and the AGV drives the waypoint path. So no more must i lug my laptop around and read the serial monitor, write down the gps points, upload the gps points to the arduino. I now just push these little buttons which i took from a old rc controller from a cheap toy. When i am able to test this at my test site, i will add a better video of it driving in the comments below so be on the look out for it.
Here is the full post on my AGV from start to finish
My ideas for this design center around the need for a stable aircraft, either via its own inherent stability and/or provided by an on-board IMU or AHRS. In my case I'm relying on an ArduIMU for stabilization. Once I get the time I'd like to study further the possibility of using one 3 axis accelerometer for short-term pitch and roll stabilization for inherently stable airframes. I'm flying foam aircraft, up to 24 oz in weight and really low wing loadings so this design concept is not a one-size-fits all out-of-box. Right now my airborne code is very simple. The ArduIMU takes over as soon as all channel changes stop. So it is a crude fly-by-wire setup. The ArduIMU roll also limits the roll of aircraft to 60 degrees even under manual control.
I haven't gotten into the PID, turn-rates, navigation, and other heavy computing and will definitely be studying the ArduPilot code for guidance.
I want to give a big 'thank you' to all those responsible for developing and sharing ArduPilot, especially Chris and Jordi, you are an inspiration to us all.
My ultimate goal with this project is a fully autonomous vehicle, able to launch, fly, and land under its own control. So I'm working it up in stages, manual control, fly-by-wire, autonomous flight, autonomous landing, etc...
I'll start posting some code, schematics and documentation as I get it organized but none of it is out of the ordinary for here. Hopefully the following will answer any questions:
Important hardware bits:
To interface with a Palm you'll need a level shifter to get the Palm side to read standard RS-232 signals, 5V won't work. I use one of these and it works well.
The thumb sticks are not very good compared to RC sticks. The range of motion on them is really small. To get reasonable controlability out of them I use exponential throw for them and this works well. The push-button feature of them is however nice. I'll eventually use it on both sticks to change flight modes and other functions. If I ever move this design into a real enclosure I'll probably switch to RC sticks.
So far everything I'm using is common off-the-shelf stuff with the exception of the airborne ArduPilot Mega Beta, I thought it a good recycling project for it, but a regular Arduino Mega will do, or as an alternative , use a Arduino Pro Mini with serial port used for Xbee and I2C for IMU (if you use it).
I use a UBEC on the airborne side for the servo's and a separate one for all the electronics. Ground testing showed voltage drops from heavy servo use so I want to make sure the electronics have thier own clean power. I fly heli's and voltage drops are typical when running servos off the ESC's BEC, so all my heli's have servo UBECs.
The thumb sticks and enclosure layout is very comfortable as-is. I power the GCS off a 750mah 3S and get over an 2 hours of use out of it.
Edit: I forgot to mention the throttle control using the thumb stick: You can open up the stick and remove the spring, but I managed to wreck 2 trying this. After removing the spring, you need to reassemble it and to do so means bending the little metal tabs back over the plastic, press to hard and you can crush the whole thing so be careful if you try this.
Important software bits:
So far I've avoided using any timer or interrupts to keep the code simple for the Arduino side of things.
Servo control:
I originally used 2 bytes for the channel data in order to get the microsecond resolution on the servo's but after comparing that to single digit degree resolution I couldn't tell the difference so dropped to 1 byte channel positions. Micro second resolution would be needed for a quad rotor.
Palm:
The Palm software I'm using (Handheld Basic HH++) is free for non-commercial use. It runs on most any Palm going back to version 3.5. I've got a box full of Vx's I bought of ebay for $15 and a couple m500. The m500 is better since it has a SD Card slot for data logging. I just got a spare serial cable for mine and have yet to modify it for the GCS. The Palm processor in these older models can handle the graphics needs for simple UAV displays, and at the baud rate I'm using easily keeps up with the data refresh rate. The rate I get allows me to fly looking at the display if needed.
Since the display on the palm is limited, I use a small area in the lower left corner as a simple 'master caution' panel. When ever an alert occurs (low fuel, signal loss, etc) a click-able message is displayed along with a unique frequency beep. The alerts are prioritized and the message remains until it is cleared. Any lower priority messages will then display for clearing. There are only 5 or so alerts so the sound alone tells me whats up without having to look down.
Gotta get to work....