3D Robotics

ArduPlane home page

3689354430?profile=original

3689312509?profile=original

 

Convert any RC airplane into a fully-autonomous UAV!
Just add the APM 2 autopilot to any RC aircraft and it becomes a fully-programmable flying robot with a powerful ground station and Mission Planner.  

 

Features include:

  • Return to Launch with a flick of your RC toggle switch or a mouse click in the graphical Ground Station
  • Unlimited 3D GPS waypoints
  • Built-in camera control
  • Fully-scriptable missions
  • One-click software load, and easy point-and-click configuration in the powerful Mission Planner. NO programming required!
  • Replay recorded missions and analyze all the data with a graphing interface
  • Supports two-way telemetry with Xbee wireless modules. 
  • Point-and-click waypoint entry or real-time mission commands while the UAV is in the air
  • Fly with a joystick or gamepad via your PC--no need for RC control!
  • Built-in failsafe will bring your aircraft home in the case of radio loss

 

All instructions and software are here.

 

 


3689354391?profile=original

3689354242?profile=original

 

APM 2 is an open source, Arduino-compatible, pro-quality autopilot. It is the most advanced IMU-based open source autopilot available today, and provides an entire UAV control system with scriptable missions with 3D waypoints, in-flight uploading of commands and powerful ground station software. 

 

APM 2 supports any kind of of vehicle with a one-click change of code. Available code include ArduPlane (fixed wing), ArduCopter (rotary wing), ArduRover (ground vehicles) and more.

 


Everything you need to create an ArduPlane UAV:

 

APM 2.5 autopilot with GPS ($179)

[Optional] Telemetry kit ($75).

3689354459?profile=original

 

You'll also need a at least a five-channel RC radio setup, a soldering iron, a mini USB cable and of course something that flies!3689354440?profile=original (We're partial to the SkyFun delta wing (right) and
Bixlee 2   powered glider (left) or its equivalents ourselves).

 

 

 

 


Resources:

Manual
Source code/firmware

Note: ArduPilot Mega requires no programming, but it's open source and you're welcome to modify it if you'd like. If you are going to play with the code, you can use the free Arduino IDE to edit and upload the code to the ArduPilot board.

 

 

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • got connection to uBlox - green comms icon in U-centre flashing, yaa hoo!
    But no lock.
    upon sending a warm restart I get:
    ??:??:?? 0000 B5 62 06 04 04 00 01 00 02 00 11 6C µbl
    ??:??:?? 0000 78 80 78 80 78 F8 80 80 80 80 78 00 80 78 00 80 x€x€xø€€€€x€x€
    0010 80 F8 00 78 78 F8 00 78 80 78 78 78 78 78 78 78 €øxxøx€xxxxxxx
    0020 F8 80 80 00 78 80 80 80 F8 80 80 00 78 78 80 F8 ø€€x€€€ø€€xx€ø
    and these repeated for many lines.

    Is this output OK? seems different to Chris's screen grab (in post url above) and values seem too constant and repetitive.
    not seeing UTC time in bottom right corner either (shouldn't i receive at least that?)
    no messages in message window.
    not much in text window. just short commands
    I have tried cold, warm restarts and waiting 20mins.
  • Wow, thanks for all the info Dave. I understand now why I got no wiggle - no GPS lock.
    I shall have to try out the suggestions soon.
    Thanks
  • One more fix - something is stripping the left and right brackets from the first include statement from the passthru.pde above which is
    #include "avr/io.h" (replace quotes with the brackets)
  • @Brett and others,
    Here is TCIII's passthrough code so you can connect your UBLOX to the APM normally and checkout the UBLOX with the u-center app without having to build a cable.

    #include

    void setup() {
    // Sirf
    //Serial.begin(57600);
    // uBlox
    Serial.begin(38400); // FTDI on APMega Beta RX0-TX0
    Serial1.begin(38400); // UBLOX on APMega Beta RX1-TX1

    pinMode(7,OUTPUT); // PD7 - AIN0 - Remove Before Fly input pin -
    setGPSMux();
    Serial.print("Begin GPS Test");
    }

    void loop()
    {
    // system Timers
    // Incoming from UBLOX to U-Center
    if(Serial1.available()>0)//Ok, let me see, the buffer is empty?
    {

    delay(30);
    while(Serial1.available()>0){
    byte incoming = Serial1.read();
    //Serial.print(incoming,DEC);
    Serial.print(incoming,BYTE); // will output Byte values
    //Serial.print(",");
    }
    //Serial.println(" ");
    }
    // and back again... U-Center to UBLOX
    if(Serial.available()>0)//Ok, let me see, the buffer is empty?
    {

    delay(30);
    while(Serial.available()>0){
    byte incoming = Serial.read();
    //Serial.print(incoming,DEC);
    Serial1.print(incoming,BYTE); // will output Byte values
    //Serial.print(",");
    }
    //Serial.println(" ");
    }

    }


    void setGPSMux(void)
    {
    digitalWrite(7, HIGH); //Remove Before Fly Pull Up resistor
    }
  • Brett,
    Have you tested your UBLOX by itself as discussed here
    http://diydrones.com/profiles/blog/show?id=705844:BlogPost:148030&a...
    Also, there is a passthrough.pde to use instead of making a cable. Look for it from TCIII above in this thread. When I set my UBLOX on a windows sill, it can take a really long time sometimes. You have to have a GPS lock to get a groundstart s you can see the IMU do it's calibration and get the servos to wiggle (you must be in a non-MANUAL mode for them to wiggle - I choose FBWA so I don't get prop spin)
    After you get that resolved, then you can start to see if FLY_BY_WIRE_A works. All you want to see there is the aileron and elevator channels working in the correct direction so as to make the aircraft return to straight and level. I had to set REVERSE_AILERONS to -1 for me. Just leave the manual throttle at idle for FBWA. Finally, you need to get the waypoint_writer from the SVN trunk-tools directory so you can set in some waypoints. I picked some close to home - maybe a mile of so whether or not you are actually going to fly it. I then use the printout in temp.pds for the precalc_waypoint (second time through AUTO - watch out for the prop spin!) I added a printout of the bearing as well so I can check it on GoogleEarth.
  • B) cannot confirm that uBlox GPS is working
    Thanks for any help you can give.
    APM 1.0 alpha loaded with config settings for my setup, STABILIZE mode or MANUAL ( 2 posn switch)
    all new parts and recent (< 3 weeks), (using own test board made (i.e. servos, radio rx, battery on board).)
    GPS antennae pointing upwards and outside.
    I do not get a fix (no C led light) though tried 3 times by 20-30 mins outside in clear view of sky.
    I do get the A (green) light on solid. No other leds on.
    (I can get C (red) light on solid during GPS_SIM)

    That's my problem
    Any advice or tests I can do? Thanks!

    I've reconnected each plug connection and visually checked all solder joints and pins for straightness.

    Tests done...
    Inside PrintErrors ON in GPS procedure gives GPS Timeout error and no others. Comes out with some values I don't understand. Most of

    these of constant value.
    (all test results saved if you want to see them)
    (I'm in Manual or STABILIZE mode)

    Main APM board LEDS:
    red: solid on
    yellow: solid on
    blue: flashing approx 1 Hz

    Any advice or tests I can do? Thanks!
  • A) Servos not moving in STABILIZE mode
    Thanks for any help you can give with above.
    APM alpha loaded and config settings for my setup, STABILIZE mode or MANUAL ( 2 posn switch)
    all new parts, own test board made (i.e. servos, radio rx, battery on board).
    Tests done...
    Radio test passes (values change B/W 1000 and 2000 on 3 channels)
    ADC test passes (small change in values observed)
    (all test results saved if you want to see them)
    Manual mode test passes (TX mode switch ON) - all 3 servos movements match stick movements
    STABILIZE mode test fails in IMHO (TX mode switch OFF) - I move main board in 3 axes separately and all 3 servos do not move
    I confirmed that log shows system changed into STABILIZE mode.
    Main APM board LEDS:
    red: solid on
    yellow: solid on
    blue: flashing approx 1 Hz
    Note: I don't have a GPS fix yet (it may even be not communicating, see another post)
    Any advice or tests I can do? Thanks!
  • 3D Robotics
    GPS plugs into the APM board, NOT the IMU (that's why the IMU I2C port says "No GPS!")
  • There are two equivalent looking ports
    Should the uBlox gps plug into the IMU board?
  • Oh well thats actually a lot better!! Thanks Chris!
This reply was deleted.