ArduPilot is great piece of hardware, no doubt. However it comes to its limits, mainly with limited memory, just one serial port, limited connectivity to other peripherals.So I have idea in my mind about improved setup, which would still use ArduPilot as hardware interface board for servo signals (5 channels IN from RC receiver,4 channels OUT for controlling plane), and of Infrared stabilization reading.Then it would connect to bidirectional serial link over Bluetooth module, which would connect ArduPilot with a smart phone located on the plane.One well-tuned firmware would be uploaded to ArduPilot once, this would provide work with signals and communication over BT module. These are ArduPilot's strong points.The central brain would be a mobile phone (or PDA) stored in plane. The phone would get servo positions from RC receiver through ArduPilot and over BT serial link, and the phone would also send servo positions back to ArduPilot for controlling plane. The phone would compute stabilization and navigation.GPS signal may come from external Bluetooth GPS module mounted somewhere on plane, or from phone's built-in GPS module (if the phone can be placed in plane with good signal reception).These are main benefits:- easier waypoint configuration (sending to phone over Bluetooth or memory card)- possibility to have multiple waypoint paths stored on phone, selectable on airfield from phone's menu- tuning autopilot parameters (e.g. PID loops) in phone's menu - no need for connecting laptop- using phone's camera for taking photos of video- logging flight data to memory card- much more memory for program and data- using mobile Internet connection or SMS allows for:> uploading new waypoints in mid-flight> reading telemetry in large distance> sending photos or video during flightThe phone would run on Windows Mobile or Symbian OS.Considering power, many phones and GPS modules allow charging over mini-USB plug, so this equipment could be charged during flight from same 5V source as used for ArduPilot. Or just left to use their own batteries.I'm waiting for my first Bluetooth serial module to come, then I'll make testing with such possible connection.And also still waiting for better weather, for trying original ArduPilot in air...
WHy not just use siemens xt75 with inbuilt gps? 10 additional GPIO and 2 adc and everything runs on j2me. Or just use a normal phone and software serial to get the second serial port or use the atmega 328 which has 2 serial ports? I would be happy to help out with making sth like this work
Best is if stabilization sensor would be a "plugin", replacable or selectable component of the software. Someone chooses IR because it works and is cheaper, someone uses gyro because of the valley or better performance. Stabilization code may work with either.
I live in a valley and there are mountains they go 45 degrees up the horizon on one side. So I thought they'd be useless. And really, the IR is a crutch for everyone until they can get gyros working. But, after seeing some data Dean posted in the UAV forum on RCGroups, it looks like IR would indeed work. But I'm continuing on the current path.
I'm still working on it, but currently I ended last summer thwarted by two things. The first was gyro drift. Inside the cockpit of my easystar, temps go up really fast and getting a handle on the gyro drift took some time. I'm not sure it's solved yet, but I've not had a chance to fly again this year. Over the winter, I built two more PCB designs, and I'm about to drop a third based on a new gryo.
I did clean up a lot on the PDA software that goes with this. The .net code is wonderful for writing apps, and in the link here http://www.rcgroups.com/forums/showthread.php?t=903862 you can build a version of the code on the desktop and fly it in a simulator. Works well for tweaking algorithm strategies. I've also added the ability to add noise and drift to the sensor readings in the desktop simulator, to help understand the problems I was facing in the air.
There are a few great reasons to use a smartphone or PDA as a core platform. First is the development environment. The second is the hardware. You won't find more horsepower and peripherals for the money. The third is the fact that smartphones have built in video camera and cameras that are on the edge of doing high def. The fourth is the built in radio. I use my normal sim and can track all my flight info from the ground. I have a ground-based PDA read off altitude using crude text-to-speech.
Recently I burned one of my two ArduPilots (bad smoke, and it's dead, my fault)... Shame, however it makes me thinking about this hardware alternative:
It's smaller and has everything that's needed by my opinion. It can run slightly modiffied ArduPilot code.
I was never fan of mux and failsafe chip, mainly because it didn't work in my 2 boards (sorry Chris&Jordi, no offense, ArduPilot is great design for getting started with UAV's, and it made me to start!).
Hey automatik, would you be able to give more details on how you installed linux on your router and what distribution(s) of linux can be used etc. It sounds interesting :)
automatik: many people probably already have capable phone, so the you don't need to count cost of a phone.
Frankly I didn't mean iPhone, this doesn't allow to be programmed in C/C++.
Another thing where mobile phone onboard would be useful is situation when the plane would get lost. It could send you SMS with last GPS coordinates, so that you can go and search it.
Today I solved serial over Bluetooth task, it works very nice! So at least telemetry to smart phone will be possible :)
This certainly seems feasible especially with "smart phones" nowadays. iPhone and "Google phone" G1 come to mind as perhaps best candidates...and are perhaps more powerful then PDAs of last few years (people tried similar things with PDAs back then but they were "cluncky" and expensive in comparison). If I was to do this I would probably lean towards G1 (iPhone has SDK but it's somewhat limited) which runs on Android open platform software and is cheaper then iPhone.
On the top of my head there are two things that I would spend more time thinking of:
- I would prefer that everything on the plane has 'wired' connection, just less chances that something can go wrong... I am not sure how "legit" this argument is since bluetooth devices will be close to one another. Have to think more about it
- For the price of "smart phone" you can get a really nice SBC that has more functionality and options.
While SBC, imo, is a nice option, there are others in today's computing world. I recently got WiFi router (~$50 from ebay), installed Linux on it and now have very small yet powerful mobile computer powered from batteries(serial port, usb port, 4 ethernet connections, and wifi ofcourse). I interfaced it (HW and SW) with Audrino, put it on a RC car, added usb webcam, etc...Anyhow for ~$50 and a little work you get 7"x7"x1" computer...(might be a little big for rc uav though :) )
As Chris mentioned there is "ease of use" with smart phone where you can "do stuff" in the field and just plop it into uav, which is appealing. Also smart phones might be better supported then some of the stuff I mentioned which is another plus...Sounds like a fun project
On our Windows Mobile phone, we just used the sync cable, which had serial lines. Perhaps modern phones do, too. But the main advantage of BT would be that you could program and otherwise set up the flight with the phone in your hand, and just place it anywhere in the plane when it's time to fly.
Comments
Cheers Kim
That looks promising, but didn't you consider using IR sensors like is discussed everywhere on this site?
I'm still working on it, but currently I ended last summer thwarted by two things. The first was gyro drift. Inside the cockpit of my easystar, temps go up really fast and getting a handle on the gyro drift took some time. I'm not sure it's solved yet, but I've not had a chance to fly again this year. Over the winter, I built two more PCB designs, and I'm about to drop a third based on a new gryo.
I did clean up a lot on the PDA software that goes with this. The .net code is wonderful for writing apps, and in the link here http://www.rcgroups.com/forums/showthread.php?t=903862 you can build a version of the code on the desktop and fly it in a simulator. Works well for tweaking algorithm strategies. I've also added the ability to add noise and drift to the sensor readings in the desktop simulator, to help understand the problems I was facing in the air.
There are a few great reasons to use a smartphone or PDA as a core platform. First is the development environment. The second is the hardware. You won't find more horsepower and peripherals for the money. The third is the fact that smartphones have built in video camera and cameras that are on the edge of doing high def. The fourth is the built in radio. I use my normal sim and can track all my flight info from the ground. I have a ground-based PDA read off altitude using crude text-to-speech.
I'm looking forward to this summer for sure.

It's smaller and has everything that's needed by my opinion. It can run slightly modiffied ArduPilot code.I was never fan of mux and failsafe chip, mainly because it didn't work in my 2 boards (sorry Chris&Jordi, no offense, ArduPilot is great design for getting started with UAV's, and it made me to start!).
Frankly I didn't mean iPhone, this doesn't allow to be programmed in C/C++.
Another thing where mobile phone onboard would be useful is situation when the plane would get lost. It could send you SMS with last GPS coordinates, so that you can go and search it.
Today I solved serial over Bluetooth task, it works very nice! So at least telemetry to smart phone will be possible :)
On the top of my head there are two things that I would spend more time thinking of:
- I would prefer that everything on the plane has 'wired' connection, just less chances that something can go wrong... I am not sure how "legit" this argument is since bluetooth devices will be close to one another. Have to think more about it
- For the price of "smart phone" you can get a really nice SBC that has more functionality and options.
While SBC, imo, is a nice option, there are others in today's computing world. I recently got WiFi router (~$50 from ebay), installed Linux on it and now have very small yet powerful mobile computer powered from batteries(serial port, usb port, 4 ethernet connections, and wifi ofcourse). I interfaced it (HW and SW) with Audrino, put it on a RC car, added usb webcam, etc...Anyhow for ~$50 and a little work you get 7"x7"x1" computer...(might be a little big for rc uav though :) )
As Chris mentioned there is "ease of use" with smart phone where you can "do stuff" in the field and just plop it into uav, which is appealing. Also smart phones might be better supported then some of the stuff I mentioned which is another plus...Sounds like a fun project
-
1
-
2
of 2 Next