Skip to main content
FW version: Stable

Redundant throttle

The system offers a second throttle input to ensure the higher safety of the Ride-by-Wire accelerator.

There are two possible scenarios for using the redundant throttle signal:

  • Throttle with dual analog signal
  • Throttle with one analog signal and end-stop switch

Both scenarios in case of an error set the sig_acc value to NaN. This will disarm the vehicle. Using the safetyopts parameter you can set if the vehicle recovers from this or not. With the default value, the vehicle stays disarmed to the next power cycle.

info

Mentioned variables are located in the folder /acc.

tip

Before you continue with redundant throttle setup, please test the LYNX with only one throttle signal. This will ensure, that the LYNX is working properly and you are not fighting with two problems at once.

Parameter

dual_err

  • 0:1 - Threshold for valuation of error (dual analog signal)
  • -1 - Enables check by throttle end switch

Dual analog signal

This feature compares both throttle signals (after the ASC and ASC_2) and if their difference is above the level set by value in parameter dual_err then the acceleration is disabled. The structure is shown in the picture below

safetythrottle.jpg

How to configure

  1. Configure the input signals in the ASC block.
    1. Set parameter /io/IN_acc to the GPIO ID of the first throttle signal
    2. Set parameter /io/IN_acc_2 to the GPIO ID of the second throttle signal
  2. Plot these variables to the Scope: /acc/asc/out, /acc/asc_2/out and /acc/acc_err
  3. Tune the ASC values to get the same signals from botch ASCs, ie. the acc_err is near 0
  4. Set the dual_err to a value a little higher than the maximum of the acc_err. If the acc_err is above dual_err, the acceleration will be disabled.

Throttle with end-stop switch

This feature is used for the throttle with one analog signal and end-stop switch. If the throttle value (after the ASC) is above dual_err and the endstop switch is activated, the device is disarmed.

How to configure

warning

Please see the difference between GPIO ID and GDIN ID.

  1. Configure the input signals in the ASC block.
    1. Set parameter /io/IN_acc to the GPIO ID of the first throttle signal
    2. Set parameter /io/IN_acc_2 to the GDIN ID of the endstop switch
  2. Plot these variables to the Scope: /acc/asc/out and /acc/acc_err
  3. From the plot, check the /acc/asc/out value at the moment when the end-stop switch is activated.
  4. Set the dual_err to /acc/asc/out value with a negative sign.
  5. Move with the throttle and check if the acc_err is zero. If not, decrease the dual_err value.

Most common input IDs

Check the Input mapping for more information.

GPIO IDInput name
8 - defaultGPIO0
9GPIO1
10GPIO2
11GPIO3
12GPIO4
warning

Also it is recommended to configure the GPIO to the floating input (disable pull-up or pull-down resistor). This can be done by setting the /common/ioconfX parameter to 0. More about ioconf here

| GDIN ID | Input name | | ----------- | ---------- | ----- | | 16 | GDIN0 | | 17 | GDIN1 | | 18 | GDIN2 | | 19 | GDIN3 | | 20 | GDIN4 | | 32 | DIN1 | uint8 | | 33 | DIN2 | uint8 | | ... | ... | | 39 | DIN8 | uint8 |

tip
  • For the endstop you can use the GDIN ID or DIN ID.
  • For the end-stop switch you will most likely need to enable the pull-up resistor. This can be done by setting the /common/ioconfX parameter to 1. More about ioconf here :::