I'm delighted to announce the release of ArduPlane 2.50 for your flying pleasure. This release has a lot of advances to some of the core ArduPlane code, and should be a big improvement for many people.

Perhaps the most important change in this release is the new DCM code that does acceleration correction based on the GPS. This improvement is based on work by Bill Premerlani which really advances the state of the art for attitude estimation on small microcontroller based autopilots. The improvement in attitude estimation is very noticable in flight, resulting in significantly more accurate control. Many thanks to Bill for his patience in working with Jon Challinger and myself to bring this improvement to ArduPlane.

Other significant improvements include:

  • updates to the barometer driver to sample the pressure and temperature much more rapidly, leading to better altitude estimation
  • updates to the AP_AnalogSource driver to be interrupt driven, allowing us to sample all analog sources much more rapidly. For ArduPlane this improves the airspeed sensor on the APM2 a lot.
  • updates to the waypoint completion logic, to use a "finish line" algorithm. This prevents the problem of circling around a waypoint when we miss it by more than the waypoint radius. The waypoint is now considered complete when we pass a line that is perpendicular to the track, and passing through the target waypoint.
  • improvements to the AP_Mount code, allowing for control of roll/pitch/yaw stabilisation via EEPROM variables that can be set over MAVLink. This allows you to setup the mount once, and it will resume operation as soon as you boot. These changes also fix a number of bugs in the AP_Mount code, so it AP_Mount hasn't worked for you, please try again. Many thanks to Greg Fletcher and Amilcar Lucus for the AP_Mount improvements.
  • Lots of improvements to the ArduPlane parameter documentation.  This documentation should be the first place you look when trying to understand ArduPlane configuration parameters. Many thanks to Andreas Antonopoulos for his great work on generating these wiki docs based on the source code markup.
  • New LAND_PITCH_CD parameter to control the landing pitch when not under airspeed control. Thanks to Jeff Taylor for fixing this!
  • New SCALING_SPEED parameter that allows you to set the base speed for scaling PIDs. Previously we assumed a standard speed of 15 m/s, which is too low for fast aircraft. By adjusting SCALING_SPEED you can have the same set of PIDs for both airspeed and non-airspeed flight control.

There is one change in this release which may require some re-tuning. We were using the wrong value for time delta when using the PID controller for navigation roll. This has been fixed by making the PID library calculate the delta time internally, but it means that existing HDG2RLL_I and HDG2RLL_D values  will be incorrect. I have fixed the defaults, but if you have your own settings for these, you will need to drop HDG2RLL_I by a factor of 5, and raise HDG2RLL_D by a factor of 5 to get the same result as for the previous release.

Thanks to everyone who has contributed to this release!

For the next release the plan is to concentrate on improved stabilisation and navigation controllers, based on the great work being done by Jon Challinger.


Happy flying!

Views: 12184

Reply to This

Replies to This Discussion

Another day of test with no luck.

I dont know what happened.
When I start up everithing i have several strange behaviors.

1.- the distance to waypoint 1 is bad on the planner. The planner showme a distance like if theplane where in waypoint 1, I walk with the plane and the distance increases.

2.- when I go to AUTO mode the CH3 OUT gos to minimum. But if I blow into de pitot the engine starts to run.

3.- When I go to AUTO mode the sevos starts to move like a heart beat.

I try with another everithing Change pitot, change APM (another APM2), Change GPS, Change ESC, CHANGE AIRPLANE !!!, And always get the same result.

May be I could make a video showing that or upload all the logs generated in the planner.

When I was first getting setup I also noticed that the motor would not run on the ground in AUTO but it ran when it was flying in AUTO. I think that it has to detect that it’s flying as a safety feature.

 

I found it much easier to get setup with the airspeed sensor disconnected. You only need that for auto landing anyway. I was amazed at how well it does missions with no airspeed sensor. After you get everything tuned then you can hook up airspeed and start tuning it.

 

 

.

 

.

Unfortunately I can't offer any advice to Martin (except to try with airspeed disabled), but on Mike Mac's point - it would be fantastic to have some information on exactly which PIDs to tune for airspeed.

One thing I forgot is that sometimes APM reinitializes when I go to AUTO. The fails are not consistent so I don´t know where to start.

Tomorrow I´m going to check the input current and verify if my problem is the same as others with inputs greater than 5 volts

Since updating both firmware and Mission Planner I have been having a number of issues and just some all-around odd behavior in both simulation mode and when flying for real.  At this point I don't know if the problems are on my end or if in fact some bugs have been introduced.  I did not knowingly change any parameter settings, but maybe some need to be adjusted to accommodate the new software.  I posted some of these issues in another thread, so I won't repeat them here.

I'd like to do a little more digging.  I can fix some issues by rolling back Mission Planner, but not all.  I'd like to roll back firmware as well for two reasons.  One, I'd like to get things working again just to have the comfort level that I can go back if needed.  Second, if my problems still exist after rolling back, that will point to problems on my end.  If the problems go away, that might point to something in the software.

I only know how to use MP to load firmware.  If someone could provide the steps to manually load earlier firmware I would greatly appreciate it.

Thanks,
Paul

Paul, should erase your eeprom (CLI setup/erase, reset) after loading new firmware and do a MP setup again. I suspect your issues are that you've still got settings from old firmware versions.

Hi Chris,

I erased, reset and reloaded firmware a number of times and still have these issues.  I want to do more testing myself before posting more.  I have had so many problems that I get lost it what happened when.  I still would very much like to know how to manually load earlier firmware.  I can't seem to find the steps anywhere.

Thanks,
Paul

Paul, instructions for loading code with Arduino is in the manual. Previous versions of the code are in the downloads section.

If you can let us know what the issues you're having are, we may be able to diagnose.

Hi Chris,

Thank you very much for the link to the Arduino section, I appreciate it.  I'll go ahead and post what has happened since upgrading.

First, when flying the real plane, I gound-tested the control surfaces in stabilize mode and all seemed well initially.  I did some other preparations before flying, then tested again.  This time only the ailerons responded.  The elevetor and rudder did not move.  I don't recall what I did, maybe reconnected or something, and they then responsed.

Either before or after this, all on the same day, I had my first-ever error when connecting the 3DR Radio.  I simply got a failed to connect message.  I tried again and it connected.

I then flew in manual mode.  The person sitting at my laptop said the the red icon was not pointing in the same direction as the real plane.  I landed, made sure the compass and auto delclination were set and walked the plane around.  Still no go.  The icon was sitting in almost the opposite direction.  I had to disable the compass to get the real plane and icon to align.

When I reviewed the flight log after doing the auto flight and looked at the altitude profile, it was much more jagged than I had ever seen.  It appeared the plane stuggled to hold a good alitude.  My other logs, even with some wind, were much more flat at the cruise altitude.

This next issue was very prominent in sim mode, but might have been happening in the flight above as well.  I always set my cross track correction to zero degrees.  It was working fine.  The plane, real and sim, would make its turn then make a bee line to the next waypoint.  The orange line in MP would always point to the center of the target waypoint.  Now, the orange line always points to the side of the waypoint.  The plane flies a curve from one waypoint to the next.  It's almost like it's crabbing into the wind, but there was no simulated wind.  Only as the plane approached the waypoint would the orange line begin to point to the center.  I then put 30 degrees in for cross track correction (sim mode again).  Now the sim plane tracked the green line perfectly and ignored the orange line that continuously pointed off center of the waypoint (graphic posted in the other thread).  After the cross track correction, the sim plane flew right to the center of the waypoint.

I also have this issue with writing and reading waypoints as noted in this thread by someone else, but their post is about a real flight, I believe.  Initially, the sim plane would just fly off course.  I then discovered it was following a waypoint across the country to where I had been flying for real.  I did an erase, yet the problem remained.  I could not get rid of these phantom waypoints.  The next thing was what I described here a few minutes ago.  The sim plane went to the first two waypoints, ignored the rest and went home.  I tried writing to APM2 with no waypoints and would read back no waypoints, and did many other tests.  Sometimes, new (or old) waypoints would come back on the read, sometimes not.  But they were there somewhere and the plane followed them.

I still can't get the latest releases of MP to work in sim mode at all.  Although GPS data shows up on the sim tab, when I click on "Home Location" I get the message that says "If you are at your field..."  The GPS data is just not getting from the sim page to anywhere else in MP.  I can only fix this by going back to 1.9.x or maybe the first 1.2 version.

Finally, my joystick will now not calibrate properly.  The rudder control band is so tiny that it's basically on/off.  Yet the joystick works fine in Windows.  I saw this happen with the slider I use to change mode, but then for no apparent reason the slider band went wide again on calibration.  Again, the joystick's own utility shows none of these issues.

Well, there it is.  This all happend basically overnight after upgrading firmware and MP.

If nothing else, I hope this might help if others have seen similar issues.

Thanks,
Paul

P.S. -- One thing I'm wondering about.  I use the airspeed sensor and, of course, have that enabled.  I assumed it would control using airspeed once that was set.  However, I did not see before this release the parameter to select whether or not to use airspeed for control.  What's odd is that "1" is shown when the sensor is enabled, yet "0" is shown when "Use for control" is enabled.  Is that correct?

This was probably understood, but let me clarify.  On the "All Parameters" page you see a list of paramters in one column and their state in another.  When the airspeed sensor is enabled, its state is set to "1."  When "Use airspeed for control" is enabled, its state is set to "0."  It just seems that any enabled state should be consistent.

Hi Paul,

When ARSPD_USE is 1, then the airspeed will be used for control. It is just like all the other boolean parameters. If you set it to 0 then airspeed values will be logged, but it will not use airspeed for flight control.

Cheers, Tridge

RSS

Social Networking

Contests

Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.

A list of all T3 contests is here

Groups

Advertisement

© 2013   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service