All Posts (14048)

Sort by
3D Robotics

DelFly II Autonomous Navigation

[From BotJunkie]: "The DelFly II from TU Delft is one of the most promising flapping wing micro UAVs we’ve seen, and at the International Micro Air Vehicle Conference and Flight Competition last week the little MAV got quite a workout. The video shows the robot flying along with a feed from the onboard camera and some of the vision algorithms being used to navigate. Especially cool is how the DelFly II actually runs into a wall at one point and bounces right back, which is one of the big advantages of a flapping wing design over a rotary wing. Also, that optic flow navigation technique is something that we’ve written about before; it replicates the way that insects navigate, using simple moving patterns to determine speed and direction relative to objects.


BotJunkie continues: "It’s not specified in the video what level of autonomy was used on the Delfly II… The competition permitted both full autonomy and remote control based on onboard video. At the very least, the first sequence (the figure eight around the two orange poles) seems to be completely autonomous, albeit (as far as I can tell) using a ground station to interpret the video and send steering commands to the robot.

If you think 16 grams is pretty small for an autonomous robot, don’t forget the DelFly Micro, which weighs just a hair (literally) over 3 (!) grams, and also manages to carry an onboard camera that can transmit streaming video. The DelFly Nano (1.5 grams) still seems to be a work in progress, and as for the DelFly Pico, somebody at TU Delft sneezed nearby and now they can’t find it."


[ TU Delft ]

[ IMAV 2010 ]

Read more…
3D Robotics

Camera hacking

SparkFun's high-altitude balloon tutorial continues with several great posts, including this one on hacking regular Canon cameras to run open source firmware called CHDK:


"What is Canon Hack Development Kit? It's this amazing open source effort to create a much more flexible firmware for the Canon digital camera. Where Canon (the parent company) wants to limit the user interface so that you can only change a few controls (thus resulting in usually decent photos), CHDK opens up the camera entirely so that you can do some really crazy stuff - like active motion detection on the camera that is fast enough to photograph lightning! Remember, you don't need the SD400 specifically - many different models of Canon will do. The SD400 is 5 megapixel and decently priced so it worked out well for my first launch.

There are tons of different user submitted scripts, but the most basic (and helpful to ballooning) is the ultra intervalometer. This script allows us to tell the camera to automatically take a picture every X number of seconds. Once CHDK is installed on the camera, and the ultra intervalometer is setup, the camera will start taking pictures as soon as the camera is turned on. In the case of my payload, I setup the SD400 to take a photo every 20 seconds. It's really freaky to have a camera just sitting there snapping away photos. But that's what we want for the balloon!

Anyone remember BASIC? I found a script that is basically an interval timer (set to take a picture) but also turns off the LCD. So simple, but reasonably hard to find. Thanks Vicente Piorno! You can download my entire CHDK zip (it's better to get the right CHDK for your camera from their website), or you can grab just the script."

Read more…
3D Robotics


Reports Wired's DangerRoom blog: "While on-the-fly autonomous navigation is a first for a full-sized helicopter, the technology developed by Sanjiv Singh and his team from Carnegie Mellon is not so different from what they used to outfit a Chevy Tahoe to win Darpa’s 2007 Urban Challenge. “It’s not as if we started from scratch,” says Singh. “A lot of the technology was there already.”

To make the helicopter self-flying, the team installed a scanning LIDAR that uses lasers to collect range information from its surroundings. The laser data is processed by a computer that relays commands to the helicopter controllers.

The data also creates a 3-D map that enables the helicopter to “see” the ground or obstacles in the air — and then adjust its trajectory accordingly. The algorithms helped the helicopter miss a tall tower during one of the tests. In another trial, the team deceptively instructed the helicopter to land on top of a car, but the chopper was not fooled, resolving instead to land on flat ground nearby."

It's based on earlier RMax automomous obstacle avoidance research:

Read more…

3689360655?profile=original

Well I'm back in the basement tinkering after a brief hiatus. After a couple in-air resets of the Ardupilot, I decided that I really wanted to do some simulation before commiting anything into the air again. I think the resets (and crashes) were caused by running out of RAM on the Arduino, but at least now I can give code changes a thorough shakedown before flight.

My workplace does avionics integration for real aircraft, and in most of our labs we use X-Plane and Labview to do simulation testing of aircraft avionics systems. We already have a set of VI's developed that handle all of the UDP communication between Labview and X-Plane.

I borrowed these VIs from work and wrote an interface to take the flight variables and pass them to and from the ArduPilot. I finally got everything working and my ArduPilot spent yesterday evening flying the X-Plane Cessna 172 around Ottawa.

One neat feature (I think) is how I'm getting the servo commands back into X-Plane. I built a 2-servo pitch/roll tray. On the tray I mounted my ArduIMU. The Ardupilot drives the two servos which causes the tray to pitch/roll. The ArduIMU senses this motion and sends its Euler angles back to the Labview computer. The labview computer decodes the ArduIMU pitch and Roll and sends these values over to X-Plane as Joystick positions. A couple of advantages of this method over simply outputting servo commands from the Ardupilot Serial port are:


- I'm testing the whole system (including the PWM signal code and the mux chip).
- I can fly the X-Plane aircraft in manual mode using my transmitter (more realistic, and makes a good way of positioning the aircraft for testing.)
- It's cool to see this little robot arm shift around while the aircraft flies along the flight plan.

I'll post a little video clip of the system in action later tonight.

Here are the details of my closed-loop path.

1. The computer running X-plane sends the aircraft position data (lat/long/alt/pitch/roll/heading) over the LAN to the Labview PC.
2. The Labview PC takes the X-Plane data, formats per the ArduIMU binary message protocol and sends it out the Serial port to the ArduPilot.
3. Ardupilot is set to GPS Protocol 3 (IMU) and listens to the serial data from labview thinking it's from an ArduIMU and does it's autopilot work.
4. The Channel 1 and 2 servo output from ArduPilot is connected to the little tilt table I built.
5. On the tilt table, the ArduIMU outputs Euler Angle Data (Pitch/Roll). I'm using a Sparkfun XBee USB explorer (without the XBEE) to translate the serial output from the ArduIMU back into USB format.
6. Labview reads the Pitch/Roll Data in, formats this data as a joystick position, and sends it to X-Plane.
7. Go back to step 1.

As you can see in the pictures, I am also powering the ArduPilot and ArduIMU from the computer's USB ports. This seems to work well, and I don't have to keep an eye on the voltage of a lipo pack during testing.

I can share the labview VI's I personally created for this little project. (Basically they create the simulated ArduIMU output, and read the ArduPilot and ArduIMU telemetry), however, the VIs that do the communication with X-Plane, while not complicated are not something I can give away (I like my job too much ;) )

The picture at the top of this post is the Local Map screenshot from X-Plane after completing a flightplan consisting of 15 waypoints.

Below are a couple pictures of my setup.

Read more…

Autonomous sailing with Ardupilot


3689360495?profile=original

Thanks DIYDrones community! We at the Royal Military College of Canada used the Ardupilot software and ground station as a basis for programming our 2m autonomous wing-sailed trimaran. This made our lives much easier while building and programming the boat during the 3 month time frame before it competed in Sailbot 2010 http://sailbot.ca.

Read more…
I'm posting this for those that didn't catch it in the comments of Varun's last post.

Between Varun's modified Ardupilot code, and my modified LabView Ground Station code, there is now a complete setup available to those that have been looking for in-the-air waypoint updates.

Setup of the hardware from Varun's post: "The XBee's TX pin is hooked up to analog4 (one of the few pins we foundwas not in use) via NewSoftSerial and runs at 57600 baud. If it has a valid packet, it replaces the ArduPilot's next waypoint value with the one from the packet. After it hits this new waypoint, it loads the old next waypoint back in from EEPROM and continues on its original path."

Operation of the GCS is simple. With Google Earth already setup on a good view of the area, click 'Capture Point' on the GCS, then click somewhere on the Google Earth globe. The point's coordinates will be captured in the GCS, add an altitude, and click 'Send Waypoint'.

Since I don't own a Ardupilot (yet) I have not been able to test it. One person has successfully tested the complete setup, but please report any bugs you find.
Read more…

Best plane for UAV application

I know this is an endless subject, but I must tell you how disappointed I was when I tried Multiplex EasyStar.I attached some pictures of my plane.It looks good, but flying caracteristics are weak.

My plane is stock:Permax 400/6v motor with 12,5 x 11 cm propeller.

The stock version is useless for UAV and FPV.Main reason is the motor, but I also think the plane may be the culprit.Gliders may fly longer, but they go with the wind.

My Multiplex EasyStar with landing gear:


There is a reason for EasyStar lack of landing gear.The reason is its poor controling behaviour(small control surfaces and big wings)



Read more…


Hi. I have finished the first prototype of the lightweight KFM3 wing for my UDB2 / Matrixpilot UAV. The wing is made entirely out of Polystyrene. The benfits of this wing are: wide AOA range, wider stable CG range since lift is produced farther back on the wing surface, no aileron reflex needed so lower aileron reflex drag. I will add vinglets to reduce wingtip vortexes and drag due to vortex leakage out from the rear KFM surfaces.


This design should also give a low wingloading for autopiloted photo missions in low speed.


Read more…


I have made a USD 2,- handheld cutter head for the PWM controller desribed in my previous blog post. The handheld cutter is nice for trimming off edges and so on. The spring keeps the wire tensioned. The final version don't need a series dropping resistor as the PWM driver stage uses two FETs.

The controller has also has been tested on a vertical setup for cutting spacers to my KFM3 depron wings (below):


The cutter gives nice clean cuts for vertical cutting operations (below). Please note the fan that sucks gases out from the workpiece. This is very important because blue and red foam gives off fumes that are very toxic when they are melted.



The PWM controller outputs pulses and is configurable both in duty cycle and several other parameters (below).



Based on interest, I may make a kit available.
Read more…

First Tests of IMUNEXT v2 controller

Hi Guys,

I was design IMUNEXT v2 board on this March but i didn't find time for testing and working with it.
Now i have a time for this because my Quadrocopter, Camera mount and Plane waiting for stabilisation ;)


IMUNEXT v2 including 8 channel servo IN/OUT , Serial port for XBee modules or GPS, Serial PPM input for external controls.

I'm planning to share opensource codes and circuit schematic for designers. You can load your own code into ATMEGA328 core.

I will share Quadro and Plane tests when they are available.

Thanks
Melih
Read more…

ArmQuad stable mode first flight

Hi,

This is my experimental quadrorotor. In this flight I'm trying the stable mode with the accelerometer.

ARM 7 32bit LPC2103 a 60Mhz ( Coridium ARMmite PRO )
ITG-3200 Triple-Axis Digital-Output Gyro, 16bit, digitally-programmable low-pass filter
BMA180 Triple Axis Accelerometer, 14Bit, Programmable integrated digital filters
ESC: PWM at 495Hz
R/C RECEIVER: PPM composite signal, 8 Channel

Greetings, Danilo


Read more…

Cheap RC Helicopter Controlled via Motion Capture

Autonomous Helicopter from M W on Vimeo.


Recently we've seen a couple of really interesting university projects where quadcopters are controlled in motion capture stages. The video above demonstrates my progress while working at the USC Institute for Creative Technologies this summer over the course of about 2-3 weeks, to show that even cheap models can be controlled in motion capture stages, and some progress toward innovative control mechanisms (following a gloved hand).

Technical:

The model is a HorizonHobby: Blade CX2 RTF Electric Coaxial Micro Helicopter controlled via a Spektrum DX5e receiving servo signals through an Endurance RC PCTx from a PC computer. The software running on the computer consists of a VRPN (Virtual Reality Peripheral Network) middle wear program that takes data from a Phase Space Motion Capture Stage OWL Server and outputs clean model position data (x,y,z and heading) to a VR engine written to Dr. Evan Suma. The model is controlled by 4 PID loops, one each for the X,Y,Z, and heading variables and includes adjustable clamps, offsets, ramps, throws, trims, and other functionality to make it easier to tune and adjust the control loops. All of these values are adjusted easily by editing a text document that is read-in to the software every time it is executed, to prevent a recompilation whenever any values need to be adjusted (Often when manually tuning a PID loop!). Also, included in the control code is a trapezoidal function that smooths
deltas to the PID loops to prevent shocks to the control system (thanks to Marc Bolas for that suggestion!).

The PID outputs are then sent over a USB Human Interface Device to the PCTx, converted to PWM and PPM signals, sent to the TX, through the RX and eventually arrive at the servos and motor controller and make the helicopter move as desired.

The oscillations you will see in the video footage indicate that the PID loops are NOT critically damped (ie they need to be better tuned). But I believe that for two weeks of work that's pretty good performance for an inexpensive single rotor helicopter.

Hope you enjoy!

P.S. With luck code and a build log may be released soon, stay tuned!
Read more…
Developer

ArduPilot Mega v1.0 Alpha 1 release

The ArduPilot Mega development team is pleased to announce the public release of ArduPilot Mega v1.0 Alpha 1 test firmware. It is located here


If you are ready please feel free to test the code. The best place to start is with the manual which is located here

Please note
  1. There are libraries that you will need to install in your Arduino IDE for this firmware to work.
  2. This code is under development so there are lots of holes. Currently it supports MANUAL, STABILIZE, FLY_BY_WIRE_A, AUTO, RTL, and LOITER flight modes, a small number of a larger set of commands that will be implemented, and on board data logging. Currently it does not support any gps other than ublox, absolute or differential (airspeed) pressure sensors, magnetometer, battery voltage measurement, telemetry or uplink (some downlink available through Serial0), take-off or landing, and a bunch of other stuff
  3. The code is not compatible with the ArduPilot configuration tool. There is a waypoint (command) writer tool available in the tools directory of the repository, but no documentation available yet.
  4. The code is not currently compatible with the ground station.
We have successfully tested all flight modes. However this is an alpha release of code still under development. If you are expecting to just download it and have everything work, you are jumping on board too early. If you want to start learning about setting a UAV up with this system and learning about the features and options of the code then give it a go!
Read more…
Developer
This a long, long story but let's go to the point: We are now offering FedEx again and they offered us unbelievable "negotiated rates" compared with UPS. Thanks to Chris Anderson and Fred Smith! (And Paul the octopus!)

This what one our loyal development member said:
"Fedex is much more interesting for me here (Brazil). Awesome news!
I simulate here to see the difference on buying an ArduIMU V2 board:
FedEx International Priority $26.06
UPS Wordwide Expedited $54.93 (more than double)
Thank you for change it, man!"

Asian country's including Australia and Europe will be also affected (in a good way!). This will allow us to dramatically expand our boundaries and we are now more capable to compete in term of low prices!

Also domestic shipments will have a good discount, maybe no so noticeable but now you can even have Next-Day for just $15 in some areas ($9 for 2nd day), and we are considering using the new "FedEx Smart Post" that will costs around $4.95 to ship all over the country and is a combination of FedEX and USPS, is really cheap, you can fully track you package and takes from 2 to 8 days to arrive, check more here:
http://www.fedex.com/us/smartpostguide/tutorials/1_Intro.html

Also "FedEx Home Delivery" and "SmartPost" have free Saturday delivery!!! That's totally awesome for me. ;-)

This is one of the main reasons why UPS is doing this :
http://www.brownbailout.com/videos/?fbid=9pU_I5v3xuT#yqqTKQhBsSs

Other news:
-A new design for the store front is under development, just to look more "professional".
-We dropped PayPal Merchant solutions and now we are using a proper Gateway system to accept VISA,MasterCard, AMEX and Discover. (We still continue accepting normal PayPal payments). The difference is that I can capture after I prepare a shipment, so I can do last minute order changes without problems.
-We are now moving to a dedicated server cluster because we exceed our shared server by 5gb!! ;-)
-I bought QuickBooks and I don't know how to use it. LOL.

I been really busy on the store and I been unable to continue making posts and other development stuff (sorry!). We are not a garage company anymore. I'm looking to move into a big office with the proper utilities and hire more people to improve our services (maybe get a second pick and place machine). ;-)

If you want to know little details and changes on the store please fallow us on twitter:
http://twitter.com/storediydrones

Thank you guys for all your support!
Read more…
3D Robotics
I was part of the Open Source Hardware committee that drafted this definition and code of conduct. What do you think? (And come to the Open Hardware Summit in NYC on September 23rd. I'll be there!)

Introduction

Open Source Hardware (OSHW) is a term for tangible artifacts -- machines, devices, or other physical things -- whose design has been released to the public in such a way that anyone can make, modify,
distribute, and use those things. This definition is intended to help
provide guidelines for the development and evaluation of licenses for
Open Source Hardware.

It is important to note that hardware is different from software in that physical resources must always be committed for the creation of physical goods. Accordingly, persons or companies producing items
("products") under an OSHW license have an obligation not to imply that
such products are manufactured, sold, warrantied, or otherwise
sanctioned by the original designer and also not to make use of any
trademarks owned by the original designer.

The distribution terms of Open Source Hardware must comply with the following criteria:

1. Documentation

The hardware must be released with documentation including design files, and must allow modification and distribution of the design files. Where documentation is not furnished with the physical product,
there must be a well-publicized means of obtaining this documentation
for no more than a reasonable reproduction cost preferably, downloading
via the Internet without charge. The documentation must include design
files in the preferred form for which a hardware developer would modify
the design. Deliberately obfuscated design files are not allowed.
Intermediate forms analogous to compiled computer code -- such as
printer-ready copper artwork from a CAD program -- are not allowed as
substitutes.

2. Necessary Software

If the hardware requires software, embedded or otherwise, to operate properly and fulfill its essential functions, then the documentation requirement must also include at least one of the
following: The necessary software, released under an OSI-approved open
source license, or other sufficient documentation such that it could
reasonably be considered straightforward to write open source software
that allows the device to operate properly and fulfill its essential
functions.

3. Derived Works

The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original hardware. The license must allow for the manufacture, sale,
distribution, and use of products created from the design files or
derivatives of the design files.

4. Free redistribution

The license shall not restrict any party from selling or giving away the project documentation as a component of an aggregate distribution containing designs from several different sources. The
license shall not require a royalty or other fee for such sale. The
license shall not require any royalty or fee related to the sale of
derived works.

5. Attribution

The license may require derived works to provide attribution to the original designer when distributing design files, manufactured products, and/or derivatives thereof. The license may also require
derived works to carry a different name or version number from the
original design.

6. No Discrimination Against Persons or Groups

The license must not discriminate against any person or group of persons.

7. No Discrimination Against Fields of Endeavor

The license must not restrict anyone from making use of the hardware in a specific field of endeavor. For example, it may not restrict the hardware from being used in a business, or from being used
in nuclear research.

8. Distribution of License

The rights attached to the hardware must apply to all to whom the product or documentation is redistributed without the need for execution of an additional license by those parties.

9. License Must Not Be Specific to a Product

The rights attached to the hardware must not depend on the hardware being part of a particular larger product. If the hardware is extracted from that product and used or distributed within the terms of
the hardware license, all parties to whom the hardware is redistributed
should have the same rights as those that are granted in conjunction
with the original distribution.

10. License Must Not Restrict Other Hardware or Software

The license must not place restrictions on other hardware or software that may be distributed or used with the licensed hardware. For example, the license must not insist that all other hardware sold at
the same time be open source, nor that only open source software be used
in conjunction with the hardware.

11. License Must Be Technology-Neutral

No provision of the license may be predicated on any individual technology or style of interface.


Afterword

The signatories of this Open Source Hardware definition recognize that the open source movement represents only one way of sharing information. We encourage and support all forms of openness and
collaboration, whether or not they fit this definition.


Read more…

Propeller with propellers

Here's a video of the most recent flight of my custom quad rotor. It's built and programmed from scratch, and uses a Parallax Propeller chip for processing and an ITG-3200 3-axis gyro for stability.



I still have a bit of oscillation, but it's intermittent. If anyone recognizes the behavior exhibited at ~0:45 I'd be happy to hear suggestions on how to correct it. I'm using proportional and derivative (no integral) to keep the integrated gyro values in line with the integrated results from my remote control input.

The crash was all me, but thankfully it was fixed in about 2 minutes. :-)

Read more…
Moderator
Dear Friends,
we're a little crazy so we would test the Ardupilot Mega on this frame. This is a best Italian Composite Fiber Frame for Electric Jet , But our friends TAMACO put a Kolibri Turbine on it (more info available at: www.virtualrobotix.com ) ... in this video you can see how fast is that BaioJet Kolibry by TAMACO , the maximum speed test is around 300 km/h . We would test on this kind of frame the functionality of new ArduPilot Mega Board ... we hope don't crash your board Chris ;)

Read more…