I've just released ArduPlane 2.71 for your flying pleasure.

As was described in the 2.71-beta thread, these are the major changes from 2.70:

  • prevent control mode changes due to receiver input change when in throttle failsafe
  • auto-scale analog input based on board voltage. This also removes the INPUT_VOLTAGE parameter, as it is no longer needed
  • added TKOFF_THR_MINSPD and TKOFF_THR_MINACC parameters. These allow you to set a minimum ground speed or X acceleration before the motor is started in auto mode. This is to better support hand launching in AUTO mode, and bungee or catapult launching.
  • added TKOFF_HEAD_HOLD option. This determines if auto takeoff will try to hold heading while climbing out. For a hand launch it is often better just to hold the wings level, instead of trying to hold heading.
  • changed FBWB altitude control from elevator to lock in the altitude when the elevator stick is neutral. This fixes a problem with altitude changing in FBWB mode due to slight tuning errors. You can set the climb rate for FBWB with the FBWB_CLIMB_RATE parameter. It default to 2 m/s
  • auto-detect when the compass is way off due to interference and switch to GPS navigation until the compass is healthy again. This is designed to prevent flyaways due to very bad magnetic interference.
  • prevent servo output overflow on large PID gains. This is especially important for elevon aircraft
  • changed default STICK_MIXING behaviour to use FBWA style stick mixing in AUTO mode. This prevents the pilot from causing radical turns if they don't know that the plane is in an AUTO mode. You can get the old behaviour by changing the STICK_MIXING parameter to 2.
  • Added a software VTail mixer, enabled using the VTAIL_OUTPUT option.
  • Fixed loading of missions with DIGICAM control commands, so DIGICAM control works again
  • Don't trigger a GCS failsafe if the GCS has never connected
  • Fixed fence MAVLink target IDs (fixes a problem with AndroPilot)
  • Added HIL_SERVOS parameter to allow real servos to move in HIL mode
  • Fixed an off-by-one in PX4 channel output (last PWM output channel wasn't sent)
  • Fixed scaling of joystick speed when controlling a camera gimbal with a joystick
  • Fixed creation of APM directory on SDCard on PX4
  • fixed auto-config of uBlox baudrate for uBlox modules set to 9600 baud
  • Fixed PX4 startup in FMU only mode
  • Added APM/boot.log on SDCard on PX4

Many thanks to everyone who contributed to this release!

One thing that isn't in this release but will be in the next release is the new L1 navigation controller from Brandon and Paul. They are doing fantastic work and testing is good so far, but I wanted to get the new features above out first before adding the new navigation code. I hope we will release a 2.72 release with the new L1 controller in the next couple of weeks.

Happy flying!

Cheers, Tridge

Views: 11714

Reply to This

Replies to This Discussion

Hi Andrew...i read the rover code and found the parameter for trigger pin and the trigger function in stering.pde..i have a question...it's necessary to add a call for this function in a main loop or in some part of code this function is manage? I search and not find...the void call for the function..

Thank you very much for your attention..
Best regards..

Better keep your things in your own separate files:

File arm_switch.h:

#define ARM_SWITCH A1
#define ARM_SWITCH_DELAY 1000
unsigned long arm_watch_timer;

boolean armed = FALSE;

File arm_switch.ino:

#include "arm_switch.h"

static void init_arm_switch()
{

    arm_watch_timer = millis();

}

static void read_arm_switch()
{
    unsigned long now = millis();
    if ((now - arm_watch_timer) > ARM_SWITCH_DELAY)
    {
        if (digitalRead(ARM_SWITCH) == LOW)
        {
            if (armed)
            {
                // ...
                control_mode = MANUAL;
                armed = FALSE;    
            } else
            {
                // ...
                control_mode = AUTO;
                armed = TRUE;
            }
        }
        arm_watch_timer = millis();
    }
}

In ArduPlane.ino:

#include "arm_switch.h"

void setup() {

....

    init_arm_switch();

}

static void fast_loop()
{

...

    read_arm_switch();

}

Correction:

static void init_arm_switch()
{

    pinMode(ARM_SWITCH, INPUT);
    digitalWrite(ARM_SWITCH, HIGH);

    arm_watch_timer = millis();

}

Hook the switch between A1 and GND.

hi Cosmin..i follow estrict your instrucción compile and error apeear below is the error and attached my arduplane folder with your recomended modifications...i use arduplane 2.71 and last arduino relax download in the wiki....

ArduPlane.pde:56:25: warning: arm_switch.h: No such file or directory
arm_switch.ino: In function 'void init_arm_switch()':
arm_switch:5: error: 'ARM_SWITCH' was not declared in this scope
arm_switch:7: error: 'arm_watch_timer' was not declared in this scope
arm_switch.ino: In function 'void read_arm_switch()':
arm_switch:14: error: 'arm_watch_timer' was not declared in this scope
arm_switch:14: error: 'ARM_SWITCH_DELAY' was not declared in this scope
arm_switch:16: error: 'ARM_SWITCH' was not declared in this scope
arm_switch:18: error: 'armed' was not declared in this scope

Attachments:

Hey all, I had a little crash - could it be the APM (nooo!) or was it just me/the plane?

I loaded my APM 2.5 with the new 2.71 and took my Twinstar for its maiden flight. I tripple checked everything and the flight started good in manual mode, little windy though and the CG was a bit off. It was a little tail heavy and it wanted to pitch up the nose when lowering the throttle going in to the wind. I turned on stabilize and it was alot smoother. I had the plane on low throttle against the wind (8m/s) almost standing still and was banking left with the ailerons and the plane almost instantly went in to a spin and crashed. The damage was minimal though, it landed on its belly and slammed a prop in the ground bending one motor axle.

Setup; APM 2.5 with separate input/output with jp1 out. 3D Power module driving the input side with GPS, 433mhz telemetry and the Futaba RX. A 4700uf CAP is also attached. On the output a 7.5A UBEC drives 4 servos, OSD, Cam and a 5.8ghz 200mw TX. The GPS is in the tail and the telemetry is out in the wing with a custom dipole antenna. AUW on the heavy side with a 5000mah 3S, 67oz 1600kv 7x4 APC

The question is, did Ardupilot do something for this to happend or was it just a bad balanced plane that fell in to a stall spin?

I have gone through all the logs (first time digging in APM logs) and from what I can see, it did not reset or reboot, it had 5v all the time and the stall spin is recorded all the way down. Is it possible that the stabilize mode made the spin worse?

Can any of you expert take a glance at the logs to see if the plane reacted strange during my inputs? A stall spin should be corrected with rudder only but I used ailerons (dont ask.. :) ) and probably the APM too as it was in stabilize mode? Thats just making it worse due to the lack of lift from the wings..

Film from recorder: (spin @ 3.35min) https://www.youtube.com/watch?v=x1BqU5uAXoU

Attached logs from APM + Tlog from Andropilot

Im working on correcting all the angles and balancing the plane now.

Regards,

Calle

The plane (after the crash!)

Attachments:

This is my first plane build using my APM1 board which I robbed from one of my quads. Ive put this onto a Skywalker 1680. I have an 8CH Rx so I can use the autopilot modes.

 So far I got just about every thing working except two main issues. 

For some reason as soon as I power it up the motor arms straight afterwards and I cant seem to disarm it.  Secondly  I set up the 6 flight mode on my T10CAG C & D Swc as the same as I have it set for my Quads. 

On the Radio Calibration setup I can see the "Radio 5" bar slide up and down in those 6 positions the same as when it works on my quads. So the radio is putting out the 6 positions and working ok as it should.

But when I go to the Flight Mode page it doesn't translate to move into each 6 flight mode positions one after the other. It jumps to the middle and bottom only.

I am sure this is an issue and the 6 position setup and may be it should be done for CH8 rather than CH5 for the plane?  Anyone have a T10CAG setup with 6 flight modes?

Thx in advance. John

Can someone please help? 

I still have not resolved this issue yet after many hrs of trying various setups. If I go by the wiki, then it seems CH5 should be ok to use for the 6 position flight modes. But then why is it not properly controlling output auto on 8? 

I installed the Skywalker Configuration param file as well but it still Arms as soon as it boots and the CH5 still does not give me the 6 modes. By the way is the Skywalker param file from the Wiki only for APM2.5 or will it work on APM1 as well?

Here as another strange thing I noticed. When it is connected with only the USB cable, it doesn't boot, eg red/green led off, but only when I connect to the MP does it seem to boot and then it Arms. Yet if I connect using the telemetry it boots up ok but then Arms soon as it finishes booting

I have attached some files if any one can take a look and spot what is wrong.

So to summarise my questions.

1.Can Arduplane be setup for 6 modes? If so is CH5/CH6 mix (SwC/SwD on Futaba T10CAG) the correct setup?  2. Is Arming the AMP1 board done the same as for Arducopter by holding the THR down and to the right?

3. On the RC Radio which plane configuration should be used? I currently have it on "Acrobatic" Should I be using one of the glider configurations? If so which one?

4. Can someone who is using a similar radio advise how they have theirs set up?

On a different issue. Is a 3A 5V(Burst 5A) UBEC enough to run the APM1 board as well as the 4 9g servos? Or do I need to get a 5A 5V UBEC? I prefer if I don't have to carry 2 batteries if possible.

Thanks in advance for any assistance. John

Attachments:

Hi John,

Looking at your tlog, you currently have FLTMODE_CH set to 8 (which is the default). If you want the 6 position mode control switch to be on channel 5 you need to set FLTMODE_CH to 5.

1.Can Arduplane be setup for 6 modes? If so is CH5/CH6 mix (SwC/SwD on Futaba T10CAG) the correct setup?  2. Is Arming the AMP1 board done the same as for Arducopter by holding the THR down and to the right?

yes, it can be setup for 6 modes. See the fight modes setup screen in MissionPlanner. You need to setup your transmitter to output 6 different PWM values for the 6 switch positions.

I don't know how to setup 6 PWM values on a Futaba. Look for a Futaba discussion thread.

ArduPlane doesn't have the concept of 'arming'. The plane is armed as soon as the motor and APM have power. You then use throttle to control motor speed.

3. On the RC Radio which plane configuration should be used? I currently have it on "Acrobatic" Should I be using one of the glider configurations? If so which one?

You can start with that, then customize it to suit the APM. The method of customization is transmitter specific - I don't have a Futaba so I can't help you with that.

On a different issue. Is a 3A 5V(Burst 5A) UBEC enough to run the APM1 board as well as the 4 9g servos? Or do I need to get a 5A 5V UBEC? I prefer if I don't have to carry 2 batteries if possible.

It will probably work, but it depends on the quality of the UBEC. I would recommend you use a Y lead from your battery to drive a separate BEC, or use a 3DR power module to power the APM and power the servos from your ESC.

Cheers, Tridge

How to set up six modes using most any transmitter is in the manual.

https://code.google.com/p/ardupilot-mega/wiki/Sixmodes

Use the one for the 9C. It should be nearly identical for the 10C that you have. It works just fine on my 9CAP Super. I believe I'm using SwD and SwG with the G being my 3 position and D gives me the other three. They are my less used modes.

Andrew, HFB, thanks for you input.

I have done the setup for T10CAG successfully as per the manual, and no issue there at all. I can see the green bar on the Radio Calibration setup where the "Radio 5" bar slide left to right in those 6 positions the same as when it works on my quads. So the radio is putting out the 6 positions and working ok as it should.( http://www.diydrones.com/profiles/blogs/getting-six-fly-modes-on-fu... )

Ive been using this for over 18 months on my 4 multirotor copters and I get all the 6 potions no problem. I will try Andrews suggestion to change to FLTMODE_CH to 5 and see how that works out.

UPDATE: That worked!! now I get all the 6 channels. Thanks guys for your help.

Yeah, if that's not set properly, you'll definitely not get the six like you should. The calibration setup will show the output you get from the  channel you have programmed properly but since the APM is looking for the mode change on another channel, it doesn't recognize any of those PWM changes.

Just on the Skywalker config file,  is the Skywalker param file from the Wiki only for APM2.5 or will it work on APM1 as well? Any idea how different it might be?

Reply to Discussion

RSS

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service