paparazzi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] altitude problem in standby


From: Gautier Hattenberger
Subject: Re: [Paparazzi-devel] altitude problem in standby
Date: Fri, 06 Sep 2013 21:35:01 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130803 Thunderbird/17.0.8

Hello,

It is not an issue, but rather a (very old) feature of Paparazzi.

The flight altitude is updated when switching to a new waypoint only the the altitude difference between the two waypoints is greater than 1 meter (relevant code is in subsystems/nav.c:393).
Here is the idea:
When you have a flight plan with most of the waypoints at the same altitude (it is the case in basic.xml), you want to be able to control the flight altitude in all blocks without changing the waypoints altitude all the time. It is possible by changing the "flight altitude" parameter in the settings without touching WP alt. As a result, when you switch to an other block or flight pattern, the flight altitude will remain unchanged since the WPs alt are the same. If you have a flight pattern that need to be done a specific altitude, you just need to specify this altitude in the flight plan (and make it different from the other of more then 1 meter). It is the case for the landing procedure that starts at a lower altitude.

I really don't want to change this behavior since it is really useful in the end when you know how it works. But you can have some good practice to overcome your problem:
The standby point should be used as a waiting/return to base point and nothing else, especially not as part of the mission goal. If you need to go high or far away, make special waypoints for this at an altitude different from the standby point so that in case of deroute the target altitude will be correct.

I hope it helps you to make efficient and safe flight plans.

Gautier


Le 06/09/2013 17:15, Refik Sever a écrit :

Hello,

 

Felix, I think that you can solve this issue :)

 

As I wrote in my last email, when the data link is lost for 22s, it goes to standby. However, it does not update the altitude. If it is at 1000m and the datalink is lost, it will circle at 1000m until its power is completely discharged.

 

We have tried several simulations and observed the behaviour:

 

In the beginning of flight_plan.xml, the altitude is set as 202m. However, the STDBY waypoiny altitude is set as 200m. If the alt values are different by at least 2m, then it updates the altitude while going to standby. If they are same or the difference of them are at most 1m, then it does not update the altitude.:

 

<flight_plan alt="202" ground_alt="28" home_mode_height="140" lat0="36.898197" lon0="30.643143" max_dist_from_home="900" name="Basic" qfu="180" security_height="25">

 

<waypoint alt="200" name="STDBY" x="1.0" y="-50.0"/>

 

 

You can easily try it. Make both "alt" as 200m-200m, or 200m - 199m, it will not update the altitude while it goes to standby. If you make 200m - 202m or more, then it updates. We used this exception and decrease the voltage in simulation so it executes the exception:

 

<exception cond="datalink_time > 22 || (11.0 > PowerVoltage())" deroute="Standby"/>

 

I think that somewhere in the codes there is an "if statement" checking the difference of them.

 

 

Second problem is, if it is in Standby and if we set the altitude to 1000m and the datalink is gone, then it will not execute the exception condition and change the altitude, because it is already in Standby.

 

We solved this problem by adding a different block and use this block only when the  datalink is lost. Therefore, we guarantee that it updates the altitude.

 

I think that it must be solved in paparazzi for everybody, otherwise it will be a problem for everyone. Or at least, we can put it in example flight plans.

 

Best regards,

Refik

 

 

From: address@hidden [mailto:address@hidden] On Behalf Of Refik Sever
Sent: Thursday, September 5, 2013 9:10 PM
To: address@hidden
Subject: [Paparazzi-devel] altitude problem in standby

 

Dear all,

If the datalink is lost for 22s, we switch to Standby by using this exception.

<exception cond="datalink_time > 22" deroute="Standby"/>

Although the STDBY point has an altitude constraint, it does not update the altitude.

<waypoint alt="150" name="STDBY" x="1.0" y="-50.0"/>

If we move to standby from another block by sending a command from GCS, it updates the altitude to 150m. But, if it goes to standby with an exception condition by itself, the altitude remains same.

Nowadays we are trying to increase the altitude (above 1000m), and if the datalink will be lost at that altitude, it will be a big problem because it will remain at 1000m until the battery will be completely discharged. 

We are using stable paparazzi version (V5_0v5.0.1_stable-7-gcea1b0b-dirty).  The behaviour is same for the Master branch.

Could you please check that,

Regards,
Refik




_______________________________________________
Paparazzi-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel


reply via email to

[Prev in Thread] Current Thread [Next in Thread]