Medicine Man Update
Here is the frame so far, now there’s the question of how to mount the hardware so that it doesn’t tear away in flight.. or worse, on landing!
Here is the frame so far, now there’s the question of how to mount the hardware so that it doesn’t tear away in flight.. or worse, on landing!
I have been researching different R/C airplanes to use as a platform for various UAV experiments. I figure that it would be reasonable to have a pretty simple and durable test airplane to first use to get familiar with things like landing and how wind effects smaller aircraft, as well as testing basic navigation without (too much) fear of a horrific crash. I’ve looked at various park flier “foamies” and came to the conclusion that a stable, slow 3 channel craft would fit the bill nicely. However, it bothered me how cheap looking the foamies I was considering looked, and I am worried about structural integrity after carving a cavity for the ArduPilot, GPS, camera, etc.
And then … Make Magazine.
I was reading the hot-off-the-press issue 17 and came to an article about the demise of model aircraft. In short it put forth the idea that “Ready To Fly” foamie are to airplanes as fast food is to cuisine – yes the airplane did fly, but it’s a totally disposable experience after a few hours. It then offered a solution – a simple, stable balsa constructed, traditionally designed sailplane model that could be built by anyone with some patience called the Medicine Man. They even included the plans to build on and several pages of step-by-step instructions. This was the ticket!
So I downloaded the plans an took them to my local blueprint shop, had them print it full sized for like $1.80 and was ready to go!
It’s been an exciting week! Thanks to help from Michal, I’ve got the ArduSim working with X-Plane and Google Earth. If anyone else is having problems with this, here are some suggestions and observations:
SerialX.begin(19200);
//SerialX.begin(4800);
Whatever you call SerialX.begin() with … make sure to match that in ArduSim!
I saw this over at Sailing Anarchy and thought it was pretty funny. I will never think of the Beastie Boy’s song in the same way again!
The Story of the Brass Monkey
It was necessary to keep a good supply of cannon balls near the cannon on old war ships. But how to prevent them from rolling about the deck was the problem. The best storage method devised was to stack them as a square based pyramid, with one ball on top, resting on four, resting on nine, which rested on sixteen. Thus, a supply of 30 cannon balls could be stacked in a small area right next to the cannon. There was only one problem — how to prevent the bottom layer from sliding/rolling from under the others.
The solution was a metal plate with 16 round indentations, called, for reasons unknown, a Monkey. But if this plate were made of iron, the iron balls would quickly rust to it. The solution to the rusting problem was to make them of brass – hence, Brass Monkeys.
Few landlubbers realize that brass contracts much more and much faster than iron when chilled. Consequently, when the temperature dropped too far, the brass indentations would shrink so much that the iron cannon balls would come right off the monkey. Thus,it was quite literally, cold enough to freeze the balls off a brass monkey. And all this time, you thought that was just a vulgar expression, didn’t you?
But then Drew had to point out that it had been busted on snopes.com!
Yet another attempt at getting to the bottom of why my computer seems not to like this setup. So there is still some weird bug in the system that I can’t help but wonder if it’s a strange windows, driver, or security software setting that no one else is running?
So from this picture you can tell that 1) the ardupilot.hex file was made correctly, and 2) it has been uploaded to the board. I am still not sure why it does not seem to accept serial traffic yet. As a side note, Michal’s reccomendation to bind the upload.bat to the debug hotkey (CTL+F5) make things go alot smoother!
So the next thing to try is the other style of hooking up to the board. This way seemed to work fine, but there where concerns about too much power being sent to the board without running through a regulator of sort.
Hmm, I am still at a loss for this problem – I think there is something serious wrong, and I am not sure what the root is. I tried entering the DebugInt(1); command into several places, and it does not show up on run. I get stabilization working to and from ArduSim, and it displays Pitch and Roll, so I know communiction there is good… but nothing with my ArduPilot board. No yellow lights (blue blinks about once per second, even if FTDI is not plugged in) and no test values. I have the Upload.bat configured to run as a hotkey, and that seems to work great, I always get success messages on builds and uploads.. just no calculations, and no traffic on the FTDI board. As a curiosity.. I plugged in a servo to ch1 and ch2 of the outs of the board, and both just cranked all the way over to full clockwise and kept on trying to keep turning.

USB love
I am amazed at all of the products sparkfun seems to just roll out, things you never knew you’d need… but soon become quite attached to! A prime example is their FTDI braekout, allowing you to connect over USB to the ArduPilot board.
I am pretty amazed by whoever figured out what hardware to put together, and how to write a driver for it. That being said… I am somewhat frustrated by the fact that it is kind of hit-or-miss for Windows to realize if it is a COM port or not! It seems that every 3rd attempt or so at using it, my computer will recognize that the USB device is plugged in, but not that it’s an active COM port. The only solution so far seems to be to uninstall the drivers and reinstall them. If that’s what it takes… then until I figure out exactly what the bug is, then that’s my suggestion for people with this problem too!
It turns out that the sim is not as strait forward as I expected, and if anyone else is having trouble with it, then feel free to chime in. One of the most annoying things to hear as a programmer is when someone uses something you developed and says “It didn’t work. why?” without giving any details as to how they are using it, what specifications are they running, what kind of errors are being generated, or anything that might be useful in diagnosing the problem! So with that being said, here is the basic setup I’m using:
-Windows XP on a Dell Latitude D820 laptop
-2nd generation ArduPilot board, with the solder jump made to power from an external battery
-external 4.8 volt battery source from 4x AA batteries
-USB connected FTDI breakout board for uploading data to the board
Is that what most of you guys are doing? Or are you using power from the plane across the extra servo-in port? Is anyone using a normal serial cable based breakout board instead of the FTDI’s USB one?