[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Paparazzi-devel] Using Paparazzi board as failsafe
From: |
Nathan Aherne |
Subject: |
Re: [Paparazzi-devel] Using Paparazzi board as failsafe |
Date: |
Sun, 26 Sep 2010 09:51:39 +1000 |
Hi Felix,
Thank you very much for this, it is working as advertised. To get the changes I
updated from SVN but now I am getting the error while building
main_ap.c:262:1: error: macro "DOWNLINK_SEND_BAT" passed 9 arguments, but takes
just 8
main_ap.c: In function ‘reporting_task’:
main_ap.c:262: error: ‘DOWNLINK_SEND_BAT’ undeclared (first use in this
function)
main_ap.c:262: error: (Each undeclared identifier is reported only once
main_ap.c:262: error: for each function it appears in.)
main_ap.c:262: warning: unused variable ‘e’
main_ap.c:262: warning: unused variable ‘zero’
Kindest regards,
Nathan Aherne
Email: address@hidden
Mob: 0402 555 080
On 25/09/2010, at 11:02 PM, Felix Ruess wrote:
> you might also want to take a look at the EMAV2009.xml flight plan
> (which includes EMAV2009_safety.xml as a procedure)....
>
> On Sat, Sep 25, 2010 at 2:57 PM, Felix Ruess <address@hidden> wrote:
>> Hi Nathan,
>>
>> I just updated the servo_switch module a bit. I can't test it at the
>> moment, but it *should* work as advertised ;-)
>>
>> Have a look at the mentor_tum.xml airframe... there it is used.
>>
>> Now you only have to declare a servo in your airframe.xml that you
>> want to use. Previously you had to set up commands, command laws as
>> well.
>>
>> By default the servo_switch module looks for a servo called SWITCH.
>> The switch on value is 2000us and switch off is 1000us by default.
>> If you want to use a different servo/values you can set that in the
>> modules section, e.g. for a servo named KILL:
>> <load name="servo_switch.xml">
>> <param name="SERVO_SWITCH_ON_VALUE" value="1100"/>
>> <param name="SERVO_SWITCH_OFF_VALUE" value="1900"/>
>> <param name="SERVO_SWITCH_SERVO" value="SERVO_KILL"/>
>> </load>
>>
>> In your flight plan you just call the makro defined in servo_switch.h
>> <call fun="ServoSwitchOn()"/>
>> or
>> <call fun="ServoSwitchOff()"/>
>> respectively.
>>
>> Cheers, Felix
>>
>> On Sat, Sep 25, 2010 at 8:51 AM, Nathan Aherne <address@hidden> wrote:
>>> Hi All,
>>>
>>> I have updated my paparazzi code and found the servo switch module, this
>>> should work fine fore me. What I would like to know is how to use this
>>> module (how to call servo_switch from within the flight plan) and set the
>>> servo to either min or max. Also how do I declare which servo output to use?
>>>
>>> Kindest regards,
>>>
>>> Nathan Aherne
>>> Email: address@hidden
>>> Mob: 0402 555 080
>>>
>>> On 25/09/2010, at 3:37 PM, Nathan Aherne wrote:
>>>
>>>> These are the relevant part of my flight plan in regards to the failsafe
>>>> action. The rest is just some of the competition waypoints.
>>>>
>>>> You will see I have implemented the Holdingpoint block so that the Kill
>>>> block is not run. I would like to understand if there is an easier way to
>>>> implement this crash failsafe than this, and output to a servo 1000ms or
>>>> 2000ms. Thanks for your help in advance!
>>>>
>>>> <sector color="red" name="MissionBoundary">
>>>> <corner name="MB1"/>
>>>> <corner name="MB2"/>
>>>> <corner name="MB3"/>
>>>> <corner name="MB4"/>
>>>> <corner name="MB5"/>
>>>> <corner name="MB6"/>
>>>> <corner name="MB7"/>
>>>> <corner name="MB8"/>
>>>> <corner name="MB9"/>
>>>> <corner name="MB10"/>
>>>> <corner name="MB11"/>
>>>> </sector>
>>>> </sectors>
>>>> <exceptions>
>>>> <exception cond="! InsideMissionBoundary(estimator_x, estimator_y)"
>>>> deroute="Kill"/>
>>>> </exceptions>
>>>> <blocks>
>>>> <!-- FLIGHT PLAN -->
>>>> <block name="Wait GPS">
>>>> <set value="1" var="kill_throttle"/>
>>>> <while cond="!GpsFixValid()"/>
>>>> </block>
>>>> <block name="Geo init">
>>>> <while cond="LessThan(NavBlockTime(), 10)"/>
>>>> <call fun="NavSetGroundReferenceHere()"/>
>>>> <set value="0" var="estimator_flight_time"/>
>>>> </block>
>>>> <block name="Holding point">
>>>> <call fun="NavSetWaypointHere(WP_STPT)"/>
>>>> <set value="1" var="kill_throttle"/>
>>>> <attitude roll="0" throttle="0" vmode="throttle"/>
>>>> </block>
>>>> <block key="c" name="KILL" strip_button="KILL" strip_icon="kill.png">
>>>> <go wp="CRASH" vmode="throttle" pitch="kill_pitch"/>
>>>> </block>
>>>>
>>>> Kindest regards,
>>>>
>>>> Nathan Aherne
>>>> Email: address@hidden
>>>> Mob: 0402 555 080
>>>>
>>>> On 25/09/2010, at 2:58 PM, Nathan Aherne wrote:
>>>>
>>>>> We would like to use the Paparazzi as a failsafe in this years outback
>>>>> challenge, plus use its other features to control and report back certain
>>>>> tests and conditions. We are using the paparazzi for this because it
>>>>> supplies so much more data than our commercial autopilot.
>>>>>
>>>>> The failsafe part just needs to output 2000ms or 1000ms on a servo output
>>>>> if the aircraft goes over the mission boundary. I have already built some
>>>>> code, but it seems there must be a simpler way to get the autpilot to do
>>>>> this, could someone help me out with this one please? Some sample code
>>>>> would be great and possibily an explanation of what I need to initialise.
>>>>>
>>>>> I am only wanting to run the GPS, Xbee and TWOG if possible.
>>>>>
>>>>> Thanks in advance!
>>>>>
>>>>> Kindest regards,
>>>>>
>>>>> Nathan Aherne
>>>>> Email: address@hidden
>>>>> Mob: 0402 555 080
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Paparazzi-devel mailing list
>>>>> address@hidden
>>>>> http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>>>>
>>>>
>>>> _______________________________________________
>>>> Paparazzi-devel mailing list
>>>> address@hidden
>>>> http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>>>
>>>
>>> _______________________________________________
>>> Paparazzi-devel mailing list
>>> address@hidden
>>> http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>>>
>>
>
> _______________________________________________
> Paparazzi-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
- [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/25
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/25
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/25
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Felix Ruess, 2010/09/25
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Felix Ruess, 2010/09/25
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe,
Nathan Aherne <=
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/25
- [Paparazzi-devel] Debian Linux installation, Alan Kitching, 2010/09/26
- Re: [Paparazzi-devel] Debian Linux installation, Nathan Aherne, 2010/09/26
- Re: [Paparazzi-devel] Debian Linux installation, Alan Kitching, 2010/09/27
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/25
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/26
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Felix Ruess, 2010/09/26
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/26
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Nathan Aherne, 2010/09/26
- Re: [Paparazzi-devel] Using Paparazzi board as failsafe, Felix Ruess, 2010/09/26