All Posts (14056)

Sort by

3689375156?profile=original

Just posting a link to a build log I've been working on to show my progress with setting up the Ardupilot Mega on an AXN Floater:

http://projects.electrictoast.net

So far, I've gotten the HIL simulation working with X-Plane. Instead of the provided pearl script, I'm using my own Processing application to translate between the APM and X-Plane. It runs on a seperate laptop, and also can display other useful information (control deflection, accelerations, attitude, etc) that help with debugging. I will probably be testing the plane on its own in normal RC configuration fairly soon.



I've also been trying to include a little bit of more basic stuff, like care of LiPo batteries, and how voltage dividers work, but I would be glad to answer questions of how things work, or why I'm doing something in some way if I haven't explained it clearly.

Read more…

ArduIMU 1.8.1 Posted

I posted an update to the ArduIMU. If someone else is working on this, please feel free to email me happy@happykillmore.com.

http://code.google.com/p/ardu-imu/downloads/detail?name=ArduIMU_1_8_1.zip&can=2&q=

Fixes in this post:

1) NMEA protocol now works (typos in update function and missing PMTK in init function)

2) Magnetometer works (typo in setup where it said MAGNETOMETER == 1 where it should have said USE_MAGNETOMETER == 1, AP_Compass must be changed to APM_Compass, Buffer mapping differs from AP2.7 and older code in AP_Compass.cpp)

3) Added blinking lights function to GPS parsing routine (blinks when there is no lock but valid message from GPS unit)

4) Added #define GPS_CONNECTION 0 // 0 for GPS pins, 1 for programming pins (this allows the user to select where the GPS is connected)

Please note that this isn't considered an "official" release and it may well get deleted... I didn't check with anyone before making these changes and posting this :)

Known issues with this version:

1) When selecting BINARY output, GPS light will not blink (#3 above). Simple fix: Add if (GPS.fix >= 1) to a new line 129 of output.pde

2) Removing/disconnecting GPS will not disable GPS lock light.

Read more…

Shadow Cam


Shadow Cam.

This is a little proof of concept video I just put together. The goal is to always keep my aircraft's shadow in the field of view.

Equipment: Senior Telemaster. Fly-Cam-One-3 with built in pan/tilt. Sparkfun 6DOFv4 IMU (it was laying around so I used it.) Gumstix flight computer. Ardupilot used for controlling pan/tilt servos on the camera.

The flight is 100% manually piloted. Camera is 100% automatically pointed.

On board I am running a 15-state kalman filter for attitude estimation. The filter converges to "true" yaw angle independent of ground track, wind, and magnetometer. This is actually critical for camera pointing.

On the ground I have small app I whipped together Thursday evening that computes the sun location for the current time in ECEF coordinates. Then converts the sun "vector" to NED coordinates based on a GPS connected to the ground station (assuming I'm not ranging very far from my start point.) The code computes a new sun angle every minute. Finally, the sun vector is inverted to get a shadow vector and that is sent up to the aircraft as it's target point vector (once a minute.)

Notice: sun vector * [ -1 -1 -1 ] = shadow vector.
Also: sun vector * [ 1 1 -1 ] = reflection vector (where we would be looking at the suns reflection off surface water.)
Also: sun vector * [ 1 1 1 ] = rainbow vector if we would happen to fly above the clouds (this would keep us looking at the center of a rainbow circle/arc.) :-)

In order to run myself over with the shadow from the aircraft's perspective I need to fly the airplane through the sun from the ground pilot's perspective.

Disclaimers: this was my first time out trying something like this so the video is rough. The pan/tilt on the flycam is very low grade, but works well enough for a demo. I'm also flying with an IMU that is about 2 orders of magnitude coarser than I'm used to flying with, so that degrades my attitude estimation more than I would have liked (but the filter still converges.) I put very little effort into aligning the IMU mount with the camera mount, so there are certainly a few degrees of bias just from mounting issues. Finally, I only eyeballed the mapping between servo commands and pan/tilt angles so I'm in the ball park, but there are certainly errors there too. It's a hack, but made for a fun afternoon. :-)
Read more…

I would like to make a plea to the GPS protocol developers of ArduPilot and ArduPilot Mega. Please make the blue light mean something.

Since the beginning of the AP project, the blue light has had exactly two states. On = GPS Lock, Off = No GPS Lock. Any other blinking is purely fictional....aside from telling you the AP hasn't crashed or has no power.

Would you please, please, please, please, please make the light toggle on and off every time the AP gets a valid message without GPS lock? We all know it can take 5 minutes sometimes to get lock and if we're sitting there either looking at nothing or looking at a blinking light assuming it's actually talking... we may be wasting our time for GPS lock that is never coming.

It's very simply code and would go a long way towards helping troubleshooting, development and even debugging the code. The blink rate will indicate the Hz / 2 if you're toggling. It will also show you when you're not calling the GPS update routine fast enough. It will give instant feedback to the user and the developer that the AP understands the language being spoken by the GPS (protocol selection and baud rate selection).

There are so many pros and no cons.

Who do I need to beg for this?

Here, I even wrote ALL of the require source code changes. This goes on about line #410 of arduimu.pde and you'll have to add int toggleMode=0; somewhere above.


Download text file: BlinkyNoFix.txt

Read more…
Pde_Wrong_Association.gif

I'm posting this for the benefit of those who are Googling "How to associate .PDE files with arduino" or "How to associate .PDE files with processing." Please note, the fix is contained in this post...so keep reading!

I don't know how the developers of the Arduino development environment (also called Processing <- The world's worst name for a development environment...makes Googling for help completely impossible) have managed to screw this up for the last 5 versions of their software, but they have....

When you download a new version (ie 0021) from here: http://arduino.cc/en/Main/Software and unzip everything in a folder... your first thought is (or at least mine is) where's the installer? No setup.exe to run? Nope. This was written by people who are not native Windows users and therefore do not follow Windows conventions.

So you click on the only executable in the root folder "Arduino.exe" It opens up just fine... so you think to yourself, "Ok, that was easy enough. Now it's done the file associations and I can open the .PDE file in my project folder." So you double-click your .PDE file...and it opens your old version of Arduino. WTF!?!

Fine, so I'll right click the .PDE and select "Open With..." and choose the "new" Arduino.exe. So you do that...again, it opens the old version.

So now you're getting pissed. So you might open the registry and go to HKEY_CLASSES_ROOT\.pde and find that it calls HKEY_CLASSES_ROOT\Processing.Document in which you drill all the way down and find that same pesky reference to your OLD Arduino folder...so you edit it to read your new folder\Arduio.exe "%1". But AGAIN, it opens the WRONG version of Arduino!?!?!

So now you're really pissed. So you rename your old .executable to arduino.old. So you double-click on the .PDE file AGAIN and are now prompted to select the program. So you browse to your new arduino folder and select arduino.exe. What is now selected is "Java Platform SE Binary" whatever that means...but who cares, as long as it opens with the right version.... but instead... Explorer.exe CRASHES!?!? Ok, now you're about to track down the developers of Arduino and Java and shove their Linux boxes up their.... ok... calm down....their must be a solution.

Here is the SOLUTION: Rename the executable arduino.exe to processing.exe and double-click on it. Then close the window that opened and you can now double-click on your .PDE files. I have no idea why the developers of Arduino/Processing are referencing a non-existant file in their file association call... but you'll notice that the HKEY_CLASSES_ROOT\Processing.Document\Shell\Open|command\{Default} references processing.exe "%1" which hasn't existed in 0018-0021... PLEASE FIX THIS ARDUINO GUYS!

Read more…
3D Robotics

Good news: ArduIMU 1.8 has now been released, which is now built on the same libraries as ArduPilotMega and ArduCopter. [Update: this has now been revised with bug fixes as 1.8.1. See this post for more.] That means that it's got all the latest Ardu* enhancements, including support for the most recent GPS modules (including latest MediaTek firmware), our custom FastSerial communications and magnetometer support. If you've been having trouble with GPS modules not getting lock, please upgrade to this latest version.


You can get the new code here. Note that since it now uses libraries, the installation process is different. Please follow the instructions here. Arduino 0019 or higher required.


If you encounter a bug or other problem, please file an issue here. The developers aren't regularily following comments on blog posts, so the past way to get bugs fixed quickly is through the issue tracker.


Special thanks to Doug Weibel for the port and to the whole APM team for the libraries, which are really paying off now that we're extending them to all the Ardu* projects.

Read more…
3D Robotics

Tour of the DIY Drones factory

I'm working at the new DIY Drones factory in San Diego today, and I thought I'd share some pictures so you can see where the magic happens! Jordi is the guy standing on the right above. Most conversations are in Spanish, but everyone speaks excellent English, too.


There are currently 8 full-time employees, including Jordi (I'm not an employee, just a co-founder). Here's what some of them do:


Loading ArduIMU firmware and testing the boards with a custom jig.



Here's that jig



The pick-and-place machine


The shipping station


Applying solder paste with a stencil and hand-placing some super-delicate components


Hand-finishing boards and GPS modules that have parts that the pick-and-place machine can't handle.



The original toaster oven we used for reflow! Now still used sometimes (it's outside, so we don't have to vent it). The new automated reflow oven, with a proper conveyor belt, is just waiting to be vented inside.


Lots of room for flying at the baseball field out back!

Read more…
Moderator

Android Phone Center of Gravity Calculator.

CGC.gif


Android Phone Center of Gravity Calculator.


Here is a free Android Phone CGC (Center of Gravity Calculator) for planes.

It will calculate the position of the center of gravity of an airplane
using the tip chord, root chord, sweep and required CG in percent,
measured back from the leading edge at wing root.

It's free, released as donationware, just download the .apk file below
and use Astro File Explorer or Estrongs File Explorer (or equiv.) to
install it. (I'm busy working on getting it onto the Android Market.)

It's pretty intuitive but instructions are behind the 'Instructions' button

Comments and suggestions welcome!

Please try it out and send it to anyone who might be able to use it! (or point them to this post)

CGcalc.apk (Right Click > Save Link As: )

Thanks

Graham Dyer

(RCGroups: http://www.rcgroups.com/forums/showthread.php?t=1322984&pp=100#post16295945)
Read more…


Super early demo of my video overlay code. This is a post process that occurs after the mission to overlay the data on top of the video from my cheap Chinese camera. Note that the video is not in sync with the data, and is off by approx 250 ms. This is due to a reboot that occurred during the flight (cause unknown).

The code that draws the instruments is the same code that runs on my ground station. That happens to be displaying on a 256x128x1 vacuum flourescent display, hence the rather low resolution instruments.

This is the same flight I posted earlier, but with the video overlay.
Read more…

Arducopter photos followup

3689374597?profile=original

As a response to the requests for details on cost, etc + photos, here goes:

KDA 20-20L ($12.88) x 4: $51.52

HK SuperSimple 18-20 ESC: x 4: $31.20

Zippy 4000 mah 40C battery: $24.74

Zippy 500mah 20C battery: $6.43
Optional, but I like having a separate flight pack as opposed to powering via an ESC. It may be superstitious, but I'd really hate to have a brownout mess with my APM in flight.

HK-T500 Landing Gear: $3.78

Mikrokopter 500mm frame: $72.95
The MK frame is pretty pricey, and replacement aluminum riggers are pretty spendy. This will definitely be a step up with the Arducopter frame, when released.

Oilpan: $159.95

Ardupilot Mega: $59.95

Break away headers: $4.95

APC 10x4.7 Slow Flier x 2: $5.86

APC 10x4.7 Slow Flier Pusher x 2: $8.78

Spektrum AR6110E: $49.99

Radio Shack Project Enclosure: $3.99

JST Male connectors x 10: $1.99

JST Female connectors x 10: $1.55

F/F Servo Wires x 8: $12.00
I made these myself with some bare-end female servo cables from Hobbyking. But these are better :).

Optional Xbee
Adafruit Xbee adaper: $10.00

Xbee Explorer USB: $24.95

Xbee Pro RSPMA 900mhz: $44.95

Xbee Pro 900mhz Wire Antenna: $42.95

F/F Jumper Wires: $4.50
For connecting the Xbee to the Oilpan...

Total of the above: $614.98

I'd highly recommend getting an Xbee setup, since there are issues with blowing outputs on the APM when connecting speed controls and USB at the same time. That means that tuning PID values and testing is a MAJOR pain, since it requires unplugging your ESCs every time you want to plug in the USB. With Xbee you don't even have to open the electronics housing to make changes. Plus you get to look cool because you bring your laptop when you fly :P.

I also made some super-short servo extensions for my ESCs that have the voltage line cut (the red one). This prevents the ESCs from providing power to the board, since I wanted to use a separate flight battery. I found out afterwards that this may be also done by removing a solder jumper on the APM? If so, oh well... I already made the extensions.

There's a few other miscellaneous bits and pieces, such as Deans connectors for the main battery, and rubber grommets and nylon bolts that I bought for vibration isolation for the electronics platform. You can see those between the box and the platform in the pictures below. It's tough to say if they are effective or not yet, because I was having major vibration problems on my aeroquad setup (same frame, just a different box), and I haven't re-tested the aeroquad stuff after getting arducopter finished. It may just be that the Arducopter gyros and accels are less vibration sensitive. It can't hurt, though, and the Mikrokopter frame itself doesn't do much for vibration if you directly attach the electronics to it with the nylon standoffs.

This is pretty much the exact set of gear that is on my quad... Probably way more than anyone here wanted to know :).

Photos


Read more…

It's ALLIIVE!! (My Arducopter, that is)

I got my quad off the ground this morning and it worked perfectly with NO tuning needed! NONE! And I'm not using a stock frame either, I'm using a Mikrokopter 50cm frame with some modifications for vibration isolation (just an extra platform with some rubber grommets + nylon bolts)...

Setup:
APM/Oilpan
KDA motors from Hobbyking
HK SuperSimple ESCs with high-rate Quax PPM firmware
Turnigy 5000 3cell
Turnigy 1000 2cell battery for electronics
Spektrum DX7 + AR6100
Mikrokopter 50cm frame
APC 10x4.7 props
Electronics are housed in a Radio Shack project box... I've landed upside down before and really don't want to break anything :)

The system was very easy to get up and running (especially when compared to AeroQuad, which requires a lot more assembly work with the shield, etc). Wireless telemetry via XBee was a snap, and the configurator worked awesome as always (well done, Mikro!).

Stable mode was absolutely amazingly stable... It's less "noticeable" than other stable modes I've dealt with, too. It just seems to do what it should, without any fuss... Acro flew well too, very predictable without any obvious jitter or wobbliness.

Overall, I'm totally stoked, and super excited to get a chance to try all of the position holding stuff once it's released! Again, thanks, well done, and keep up the good work!

Read more…
Developer

3689374274?profile=original

Hello ArduPilots,

Here you will find my latest updated version of the ArduPilot (v2.7.4a JLN) successfully tested in autonomous flights with a Multiplex Cularis (GPS Ublox and ArduIMU v1.6). This version runs very well with the GPS Emulator v1.1.45 and you may test it yourself at home.

More photos at : http://diydrones.com/photo/albums/ardupilot-and-arduimu-on-a

The full software can be downloaded at: http://code.google.com/p/ardupilotdev/downloads/list

Here the test procedure with the GPS Emulator:

Required material: Ardupilot with or without shield, it works also with Arduino board "Duemilanove"

1) Compile and upload the ArduPilot_2_7_4_JLN software to your ardupilot board
2) Download a flight plan with PlanifMission.exe (v 1.4.14), i.e. upload the flight plan "fieldtest4"
3) Run the GPSEmulator.exe (v 1.1.45):
a) choose the ardupilot comm port: i.e. COM10 then click 'Connect'
b) Select File/Run ArduPilot Mission
c) Selected Mission 'fieldtest4'
d) GPS Data Source 'GPS Emulator w/ArduPilot'
e) check 'Listen to Throttle'
f) Click on the 'Start' button on the main window

Enjoy,
Jean-Louis Naudin

Main JLN DIY Drones page: http://diydrones.com/profile/JeanLouisNaudin

Google code: http://code.google.com/p/ardupilotdev/

Read more…
Glenn Rizzi is the Deputy Director of the US Army UAS Center of Excellence. In this video, he discusses the Army's deployment of unmanned technology at the tactical echelon level. Listen to him describe the US Army's Roadmap development programme with short term, medium term, and long term project goals. Swarming technologies, improved commonality and autonomy are all topics broached here, as well as the US Army's vision of what capacity the 'human element' should fulfill within the role of UAVs in a combat environment.


Read more…

Autopilot control in Xplane

3689374553?profile=original



Hello... I have small problem with autopilot.I try to make simulation on xplane9.Before I activate autopilot everything is good.But when autopilot is on ,plane flies strait forward and climbing slowly,instead of
flying to waypoints.Ardusimulator working properly.GPS and plane IMU datas
updating well.I couldn’t figured out what is the problem.Could you help me
plese???



As you can see from image.When I activate ardupilot , it adjust plane IMU roll=0 and Pitch=between
1.5 to 4.İt doesnt control heading.it gets fix when autopilot on condition.



Read more…

GPS News for October

Registration is now open for The Institute of Navigation (ION) Eighth Annual Robotic Lawn Mower Competition to be held June 2-4, 2011, at Siebenthaler’s Beaver Valley Garden Center near Dayton, Ohio.

"The purpose of the competition is for universities and colleges to design and operate a robotic unmanned lawnmower using the art and science of navigation to rapidly and accurately mow a field of grass.




If you thought that the MediaTek MT3329 GPS was small -- (the DIYdrones store claims it to be 16mm x 16mm but I would have guessed 12mm myself) -- Round Solutions, based in Neu-Isenburg, Germany, is offering the ORG4472 GPS module, based on the SiRF IV chipset is only 7mm x 7mm). But you do have to stick an antenna on it.

"The module has an integrated interface for accelerometers, gyrometers, or other sensors to make dead reckoning easy, the company said.

Read more…