William Premerlani

AileronAssist versions 1.7 and 1.8 released

UAV DevBoard pilots:

This is an update of a previous post.

I deleted version 1.6 of AileronAssist firmware and released version 1.7.

The reason is that I noticed that the firmware fail safe does not work in version 1.6. Although the commanded return to launch will work just fine in version 1.6, loss of signal return to launch does not. If you turn off your transmitter, and if your radio does not have a fail safe, its not going to be pretty.

If you are using a radio with its own fail safe, it does not matter whether you use version 1.6 or 1.7 of AileronAssist. But if you might ever use a radio that does not have fail safe, you should use version 1.7.

Previous versions of AileronAssist are fine. It is only version 1.6 that is affected.

I never noticed it before, because I no longer use radios that do not have built in fail safe.

Also, version 1.8 of AileronAssist, with waypoint processing, was just released. It supercedes both version 1.6 and 1.7

Best regards,
Bill Premerlani

Views: 24

AydinX Comment by AydinX on September 17, 2009 at 10:08pm
Thanks for the update Will. Well I’ve also using the version 1.7. Even thou it takes me some assistance in my finance by payday loan lender since I’ve been doing some modifications. Anyway it’s true that the firmware version 1.6 have just limited capabilities like when you loss of signal of your radio there are some defects. But anyway, version 1.6 might work for some but definitely not for us!
William Premerlani Comment by William Premerlani on September 18, 2009 at 5:50am
AydinX,

You are welcome.

By the way, to assure the best performance of the firmware, you need to consider vibration. Too much vibration will disrupt the operation of the gyros.

A simple way to check is to run the roll-pitch-yaw demo with the board in your plane, and the motor running. Let the motor run for a few minutes, it will take that long for vibration to have an effect. If there is a difference in performance with and without the motor running, then you will need to take steps to isolate the board from vibration.

The simplest thing to do is to place some foam rubber between the board and the plane, and to mount the board in a location where there is not much vibration.

Best regards,
Bill
Rana Comment by Rana on September 20, 2009 at 3:49am
Hi Bill !

W'll try to give feedback on Aileron Assist rev8, I have to setup my new Wingdragan 4 Ch Electric Sposrter Pusher plane.

Since this plane is of same family as my earlier plane so I should not face any thouble in setting gains and trims for control surfaces but still I need to first run Roll Pitch firmware and set the gains.

Matrix Nav 8 is great one, I did not notice any functionality bug till now, I did many flights and it done well.

Great job done !

regards

Rana
William Premerlani Comment by William Premerlani on September 20, 2009 at 4:26am
Rana,

Thank you very much for the feedback.

I will be very much interested to hear how AileronAssist8 performs for you. During my test flights, I found that AileronAssist performed even better than MatrixNav.

You mentioned that you run the rollpitchyaw demo first as part of setting up a new plane. That is a great idea, it double checks that the hardware is working right.

There is one other check you should also run when installing the board on a new plane: make sure that the vibration of the motor is not going to disrupt the gyros. The simple way to check that is with the rollpitchyaw demo. Run the motor up to full speed, and check that the demo continues to operate properly for 2 minutes.

Best regards,
Billu
William Premerlani Comment by William Premerlani on September 20, 2009 at 7:18am
Hi Rana,

Yes, I carefully went through your long comments after your sucessful test flights with MatrixNav 8. My response is there right below your comments. Let me know if they are not visible to you, they should be.

I was thinking some more about the last, very long flight that you made.

I think there is a could chance your plane made serveral round trips through the waypoints.

As I am sure that you know, once the firmware works its way through your list of waypoints, it repeats them again.

How high was the closest waypoint? If may be that when your plane passed through the closest waypoint to you, it was so high that you could not hear it or see it, so it continued on around the course all over again.

There is a simple way for you to estimate whether that happened or not, based on how fast your plane was probably flying and the length of the course. My guess is that if you divide how far the plane flew during the amount of time that it was airborne by the length of the course, you will find that it went around the course several times.

I would be very interested in the results of your estimates and your calculations.

Best regards,
Bill
Bryan Cuervo Comment by Bryan Cuervo on September 20, 2009 at 9:07am
Bill,
I just tried a project “make” in MPLAB IDE V7.50 for your latest version - AileronAssistV1.80 and it looks like I’m getting the same errors I got when attempting this with AileronAssistV1.70:

rudderCntrl.c:9: error: 'YAWKD' undeclared here (not in a function)
rudderCntrl.c:11: error: 'YAWBOOST' undeclared here (not in a function)
rudderCntrl.c: In function 'rudderCntrl': rudderCntrl.c:31: error: 'pwrud' undeclared (first use in this function) rudderCntrl.c:31: error: (Each undeclared identifier is reported only once
rudderCntrl.c:31: error: for each function it appears in.)
rudderCntrl.c:35: error: 'ruddtrim' undeclared (first use in this function)

Is there something I’m doing wrong on my end or is there a bug in the rudderCntrl.c file?
Thanks,
Bryan
P.S. I was able to “make” the roll-pitch-yaw demo program in IDE V7.5 without any errors.
William Premerlani Comment by William Premerlani on September 20, 2009 at 9:31am
Bryan,

Oops on my part.

It just hit me as to what the problem is. AileronAssist does not use rudder control. The file rudderCntrl.c is a vestige from a long time ago that I did not get around to deleting. It is not in the released project, but it is in the zip file.

All you have to do is delete the file rudderCntrl.c from the directory, and remove it from the project!!

Best regards,
Bill
Bryan Cuervo Comment by Bryan Cuervo on September 20, 2009 at 2:13pm
Bill,
Removing the Ruddercntrl.c file did the trick! Now I’m good to go and my goal with your DevBoard is to autonomously fly my tailless plane. I designed the large fuselage volume with a central compartment at the CG to hold the autopilot and you can see the temporary placement of the board constrained and damped in the compartment with a piece of foam cut to shape.
I’m also showing the mixer (in the yellow shrink tubing) that I bought to allow the DevBoard to control the elevons. Do you know of any issues with using an elevator/aileron mixer between the board and the servos? I’m guessing this would be the first time the DevBoard has been used in a tailless plane.
Take care,
Bryan

William Premerlani Comment by William Premerlani on September 20, 2009 at 2:57pm
Hi Bryan,

Wow, I am impressed with your aircraft.

As far as I know, this will be the first time the UAV DevBoard is used in a tailless plane.

Once you get the gains set in AileronAssist, stabilized mode should work really sweet.

I am hoping that you can fly your plane in manual mode while you adjust the gains. If so, what I would do would be to start with stabilized mode with zero feedback gains. That is equivalent to manual mode. Then, gradually raise the gains until the plane levels itself promptly when you take your hand off the sticks in the middle of a turn.

If you cannot fly it in manual mode, then what you should do is plenty of ground testing first. (Actually, come to think of it, you should do plent of ground testing in any case.) Make sure the elevon response to pitch and roll in stabilized mode is in the correct direction. Adjust the gains so that the amount of elevon deflection looks about right.

When I was developing AileronAssist for my Goldberg Endurance, I was getting roll oscillations if I turned the roll gains up too high. The interesting thing was the oscillations did not interfere with my control of the aircraft, they were just annoying and scary the first time you see them.

Then, start out with short flights in stabilized mode. Once stabilized mode is working, the takeoffs will be smooth, stable, and straight as an arrow.

Then, when you have confidence in the stabilization performance, go for a full flight.

Regarding the mixing, I do not see any issues. Once again, of course you want to check it on the ground.

One thing to consider early on is the slew rate of the servos that you are using to drive the elevons. The faster, the better. The latency introduced by the slewing of the servos will utimately limit the amount of feedback gain that you can use. The faster the servos, the higher you can go in feedback gain without inducing oscillations.

By the way, I believe that Ben Levitt has extended the firmware to directly handle all kinds of combinations of control surfaces, including elevons. We have not flight tested his modifications yet, but once we do, and we release his firmware, you will not need the mixer, it will be done for you by the firmware.

Let me know if there is anything I can do to help you. I think you will be pleased by the stabilization performance of AileronAssist, it is ideally suited for elevons, particularly since it was developed on an aircraft without a rudder!

But, please do your development in small steps, to minimize risk.

Best regards,
Bill
Bryan Cuervo Comment by Bryan Cuervo on September 23, 2009 at 5:29pm
Well Bill,
I think I had success with the PICkit 2 that I just got. I used it to program my Devboard and everything went as expected per your excellent instructions. My only concern was the last step when I did the program execute. Instead of seeing the message you showed, I got the following:

Programming Target (9/23/2009 8:16:25 PM)
dsPIC30F4011 found (Rev 0x1003)
Erasing Target
Programming Program Memory (0x0 - 0x1DFF)
Verifying Program Memory (0x0 - 0x1DFF)
Programming Configuration Memory
Verifying Configuration Memory
PICkit 2 Ready

The message never said that the programming succeeded. Is this alright or did I miss a step?
Thanks again,
Bryan

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

Groups

© 2012   Created by Chris Anderson.

Badges  |  Report an Issue  |  Terms of Service