All Posts (14048)

Sort by
Moderator

"Skywalker" platform made in glass fibre

I know many of you people out there asked for the Skywalker made in Glass fibre or Kevlar.


I found the plane and I think it looks very much like the foam Skywalker version.

The model is made in strong GF and has a wingspan on 1.6 M.

Wings are made in balsa and the total weight is around 1 kg.

Here you have some pictures.



The foam version of the UAV and FPV planes


No more intell about new frames or platforms. ;-)
Read more…

This caught me out big time. And I thought it might be of help to someone else to post my experience even if it was foolish.

The scenario: I have two AP one with V1 shield, Thermopile sensors. Second one with V2 shield with IMU +V2 I only have one GPS EM406 that I swop around (waiting to get UBlox) for second AP.

The problem: I could not get the throttle to work on the First AP every ting else work fine, after rereading the manual rescan the discussions and blogs for similar problems I found some and try all the options only to end with the same problem –no throttle-. Now I started to swab shields around. I want to add that if I remove the shield the throttle works fine.

The result was and a good lesson not to take short cuts when building. When I soldered the pins of AP1 I have also soldered in Pin 13 so instead of de-soldering pin 13 I have just cut the pin flush to the plastic base. Everything was fine till I used Velcro to strap the AP to the base in the airframe it put enough force on the shield to make pin 13!! . I will not repeat the names I called myself.

The lesson Read the manual on the lines and between the lines and do not take any short cuts it will bite you!!

Read more…

FreeSpace Autopilot Crash!


I rarely crash. Maybe I've been lucky? I had been ignoring a bug for the longest time only to have it occur just as I was over the trees ready to land. There was no time to recover.

Toward the end of the video you can see the crash. The plane is trying to follow a runway beam but winds up oscillating back and forth and eventually tip stalls. The only thing that saved me from ending up on the roof of the barn was accidentally flipping on the autopilot for 1/4 of a second as I was in a panic flipping every switch.

My beamfollow is what I suspect caused the crash. It works like this:

1) The "beam" is created and basically defines a path to follow. It is assigned a bearing.
2) I get the distance from the aircraft to the beam. 30m out the bearing command is perpendicular to the beam. As the aircraft gets nearer and nearer, the bearing command converges to the actual beam bearing
3) The aircraft follows the beam bearing by feeding the bearing error into the bank command (The aircraft simply banks toward the bearing)

If the aircraft is going decently fast, there aren't any issues. But something oscillates when I go slow, and especially when I just hover in the wind making no progress as in this video.

So the two bugs are:

1) Beamfollow oscillations induced by low airspeed
2) Altitude was lost making all the turns, making recovery impossible.
3) Probably flying 30 feet above the treetops in gusty winds made for all sorts of funky air currents.

I've learned 2 things from all this:

1) Don't ignore strange behavior. It WILL happen near the ground one day.
2) FAILSAFE MODES! Plane should recognize dangerously low altitudes or oscillations and enter a wings level climb and alert the user.

The damage? Stripped aileron servo gears, Cracked left aileron, busted pitot tube, chipped prop, and a few cracks on the fuse. She'll fly again in a few weeks!
Read more…

Flexible motion sensors

Just recently Seeedstudio added this product to their website. Since they mention that it can be used for aviation, I thought it would be nice to post it here. In addition, it seems pretty lightweight to me (shipping weight is 5 gram). A direct link to this product on the Seeedstudio website is here: http://www.seeedstudio.com/depot/seeeduino-motion-frame-p-705.html?cPath=84_89

Seeeduino Film Motion Frame is a motion sensing extension board designed for Seeeduino Film. It’s flexible, super slim, and suitable to build wearable applications.
It consists of a barometer, 32Mbit flash and a 3axis accelerometerSensor to provide sensing and logging of eight, temperature, air pressure, motion. FILM and other extension FRAMEs could be simply connected via the 20p universal bus like a chain, native 2.54mm pitch pins also enable quick prototyping.

Features
  • Seeeduino Film compatible
  • Flexible
  • I2C 3-Axis Accelerometer
  • I2C Barometer
  • SPI 32M-BIT flash
  • Ultra small/slim form factor
  • 0.1” pitch pad breakout
  • 20pin daisy-chain flex bus
  • Transform by cutting and chaining
  • Reinforced to increase endurance
Application Ideas
  • Sports and Gyms
  • Aviation
  • Hiking/Climbing
  • Data logging
  • Environment Sensing
  • Security
Documents

Read more…

GPS Boundary detection

3689375442?profile=original

One part of the Aussie Outback challenge rules dictate that the aircraft/GCS must have GPS boundary detection and if the aircraft wanders outside of this boundary then it must go into the spiral of death.

As part of my slow but sure attempt at entering the competition I have created a simple but effective solution to this part of the rules using a Ray casting algorithm and running this on a Netduino in C# (easy to convert to Arduino).


Here is the code to test if the current location falls within a polygon:

public static bool LocationInsideBoundry(Position point, Position[] boundry)

{

bool insideBoundry = false;

try

{

int j = boundry.Length - 1;

for (int i = 0; i < boundry.Length; i++)

{

if (boundry[i].Longitude < point.Longitude && boundry[j].Longitude >= point.Longitude ||

boundry[j].Longitude < point.Longitude && boundry[i].Longitude >= point.Longitude)

{

if (boundry[i].Latitude +

(point.Longitude - boundry[i].Longitude) / (boundry[j].Longitude - boundry[i].Longitude) * (boundry[j].Latitude - boundry[i].Latitude) < point.Latitude)

{

insideBoundry = !insideBoundry;

}

}

j = i;

}

}

catch (Exception)

{

return false;

}

return insideBoundry;

}

Pretty simple stuff and works a treat.

Here is a simple app in .net that shows if the current location is inside the boundary – drag the map around with the right mouse button add some points and if the location is inside the boundary then the group box background will be green – outside then red.

Hopefully it will be of some use.

Cheers
Justin

Read more…
3D Robotics

Updated ArduPilot Mega public beta

I've updated the public beta of ArduPilotMega 1.0 to roll up some bug fixes. The new file is here.

Please note that NMEA GPS modules are now supported (thanks HappyKillmore!) and the Xbee test now works.

We need more people flying this code and filing bug reports so we can release a non-beta 1.0 and move on to more feature enhancements. So please try this code out, put it in the air, and file an issue report for any problems you find here.

Read more…

An all Aluminum ArduCopter

Here are some pics of my recently-completed first ArduCopter, which happens to made out of aluminum. I used aluminum sheets for the central frame pieces, perforated aluminum for the undercarriage, aluminum square tubes for the arms, and aluminum threaded rod to hold it together and provide a simple roll-cage. Ready to fly, including battery, it weighs in at 985 grams. It flies very stable and very well on the Alpha 1.0 code.


The equipment includes APM, IMU, battery alarm, Futaba Rx RC, Magnetometer, DIY power distribution (soldered Deans), Turnigy 18A Basic ESC, KDA20-22L motors, and 10x4.7 APC props. I've also installed the GPS and Xbee, which aren't shown in these picks.


I built the DIY frame because I discovered the DIY Drones site after the beta kit sold out, so I had to make my own. I chose aluminum because I like its look and feel, I had built several land-based robots with it previously, and I like to work with it. If anyone is interested, I would be happy to provide links to my various material sources.


I would like to thank everyone associated with DIY Drones and its community for all the great information on this site.





3689375284?profile=original








Read more…
Moderator

Some video of FoxTeam member with their QuadFox ..
We're flying and testing stable mode using Arducopter MP ( MultiPilot revision) .. the result is fantastic ;)
Then next step will be GPS hold and return to home ... ;)





Put GoProHD on QuadFox and fly only using throttle and yaw i don't touch roll ..


for more info see my blog : http://www.virtualrobotix.com/profiles/blogs/quadfox-stable-mode-test-work
Read more…

IMAV 2011: Towards all-weather MAV swarms

EMAV 2009 Outdoor competition location at The Hague, Netherlands

Or slightly rephrased: The IMAV 2011 summer edition rules are out (original post). IMAV2011 is actually a perfect showcase why IMU-based autopilots plus onboard computer vision are a good choice for MAV competitions. And it is also a good occasion to mention the currently running pxIMU batch order, limited to October 20! You can get your own competition-proven , computer-vision ready research autopilot. For the time after the batch order: We provide all participants of the batch order the hardware design on request, so that they can build more hardware if needed later (and we'll offer future batch orders if feasible). The design files will also be made available GPL-ish licensed at some point early 2011.

Now back to IMAV 2011 itself: Why all-weather and swarms? The competition location in The Netherlands can be quite cloudy and windy in September, like in the last Delft-competition, the EMAV 2009. Although there was no rain, virtually no fixed-wing team was able to fly autonomously, as all relied on thermopiles. This time RC-based flight is banned, so any team sticking to thermopiles is taking chances! By now there are some hackable IMU-based fixed wing autopilots around (ArduPilot, UAVDevBoard v3 and soon pxIMU). We actually hope for similar weather conditions in 2011: An overcast sky provides computer-vision-optimal diffuse lighting (perfect to e.g. locate pylons using pxOvero) and by using pxIMU or any other IMU-based autopilot, the attitude estimation does not depend any more on a more or less clear sky.

And why swarms? Because the IMAV 2011 rules actually encourage teams to run multiple vehicles. We're really happy about this development, because the complete PIXHAWK framework is optimized towards swarm-use. Ongoing research in the team involves mesh-based image transmission (which would allow to transmit images over multiple hops (a chain of MAVs) to a base station). QGroundControl has also been optimized to scale to multiple vehicles from early on. For details on the rules, please refer to the preliminiary rules PDF.
Read more…

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…