Developer

Public beta of the Ardupilot 2.5 Airframe Test

Hello everyone,The Ardupilot 2.5 Airframe Test is now available as Public Beta. It goes without saying that everything seems to work, but we could use your feedback finalizing this code.Use this release to:- Configure your 2.5 Header files- verify your sensors are functioning properly- verify your servos are not reversed- verify your stabilzation is pointing your plane AWAY from the ground- verify your failsafe is functional- output handy radio values for header files- view the throttle output based on your airspeed sensor- fly a fully stablized plane with throttle based failsafeThe failsafe will cause the plane to loiter slowly at the point of failure. Just try and grab the signal at the next pass. ;)The header file has been moved to be right inline with the other files for your convenience. There are a few hardware specific options listed at the top of the header. Set yours up to fit your plane. Note: If you use this without a Z sensor, you will need to calibrate the XY sensor. (Simply point each side of the sensor at the ground/sky before flying.)For debugging, all the output is sent to the Serial monitor at 10 Hz. You will seeRadio IN: R:1501 E:1500 T:1015 (rudder, elevator, and throttle)Analog IN 0:499, 1: 529, 3: 235 (X, Y, and Z from IR)Sensors: ir_max:305 roll:0 pitch:-4 airSp:0 (IR_max higher number = more resolution, roll/pitch are angles, airspeed should be 0 at rest)PWM OUT: R:1504 E:1517 T:1024 (rudder, elevator, and throttle)As well as:set_mode: ##5| AUTOPILOT The current flight mode indication based on control switch position.*** FAILSAFE DETECTED *** The throttle has dropped 50µs below it's normal cutoff. Set this in your radio's preferences.Radio calibration:When prompted, move the Rudder (ch1) and Elevator (ch2) to the extremes to set your maximum servo travel. You will be prompted to hold the stick into position to move ahead in the process. The servos will twitch, which can be a guide to calibration in the field.Throttle input is disabled by default. Solder a wire from your channel 3 input signal pin to pin 13 to read the throttle for failsafe. Set throttle input to 1 to enable it. (Highly recommended)Adjusting the gains for attitude control - There is really one gain to worry about and that is ROLL_GAIN, and PITCH_GAIN. Lower this gain if things are squirrely up there.This code will spin the propeller. Please be careful...Best of luck,JasonSee this post for the latest version.
E-mail me when people leave their comments –

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

Join diydrones

Comments

  • Developer
    Beta 2 is ready. There were a few bugs found.
    - One of the sensors seemed to have been revered.
    - the autopilot control law wasn't outputting properly
    - the throttle output in fake autopilot mode was off
    - adjusted the header file with better gains for roll on an Easy star

    A note about the Autopilot mode:
    I have it set that the middle position uses the radio input to simulate the control output from the autopilot navigation.
    throttle up all the way = 20 meters of altitude error
    throttle down all the way = 0 meters of altitude error
    left rudder all the way = -35° bearing error,
    right rudder all the way = +35° bearing error
    elevator pull back = 0° pitch, push forward = -15° pitch


    These limits are listed in the header file and can be adjusted

    Control Switch functions are editable in the events.pde file.
    Ardupilot_25_Airframe_test_beta2.zip
  • Nice job! this looks good to me, it is nicely organized and looks easier to understand and modify.
  • Developer
    The header files for the tester are intended to be separate from the full version. I tried to simplify this header to include only the relevant options. There really isn't a need to rename it.

    If it is better to use the full header from 2.5 for the tester, I'll change that when 2.5 is ready. I can already see it might be confusing.

    Just a note:
    #include "test_header_25.h" means look in this folder for this file
    #include means look in the library for this file


    Jason
  • Admin
    Jason,

    I assume that we rename the test_header_25.h file when we customize it for our own aircraft's parameters?

    I also assume that we change the #include "test_header_25.h" declaration in the Ardupilot_25_Airframe_test_beta.pde file to reflect the new name for the test_header_25.h file?

    Regards,
    TCIII
  • Developer
    Oh and Defines.h is for system use and not for users.
  • Developer
    There will be a new header, although it will be 90% the same. The header can now live in the folder with the other 2.5 files. If you prefer to have the header in the library, that will be an option as well.
  • Admin
    Jason,

    Could you please elaborate more on the difference between the v 2.5 defines.h/test_header_25.h files and the v 2.4 easystar.h file?

    The original easystar.h file was inserted into the \arduino-0017\hardware\libraries folder. I assume that this location and the creation/editing of the easystar.h file has changed with the v2.5 Ardupilot release?

    Regards,
    TCIII
  • Nice one Jason, should get ours airborn by the weekend on 2.5, move nearly over so more time for the real tasks in life.

    Well Done!

    Doc
  • hi
    thanks for this answer should play a bit during Christmas leave.
    Unfortunately, no shield. but I will order one after Christmas.

    have a nice Christmas and happy new year
    from Sweden
  • Developer
    I just wanted to mention the other good use for this release is for FPV flyers who just want to have the most simple setup to fly a safer plane. No GPS, no shields, not even a Z sensor are needed. Just the XY and the Ardupilot.

    The advantages are less cost per plane, less bulk, less to fail in the air, and upgradable to AP later.

    An FMA co-pilot can do the stabilization, but not the failsafe. It's not open source, and it's not upgradeable.
This reply was deleted.