Skip to content

Commit 20a1901

Browse files
committed
Add autoland modules page
1 parent 61df105 commit 20a1901

6 files changed

Lines changed: 240 additions & 2974 deletions

File tree

docs/modules/fixedwingautoland.md

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
---
2+
title: Fixed Wing Autoland
3+
slug: fixedwingautoland
4+
description: How autoland works for fixed wings
5+
---
6+
7+
## Introduction
8+
9+
INAV supports advanced automatic landings for fixed wing aircraft from version 7.1.
10+
The procedure is based on landings for man-carrying aircraft, so that safe landings at a specific location are possible.
11+
12+
The supported autoland modes are:
13+
* Safehome after "Return to Home"
14+
* At a defined LAND waypoint for missions
15+
16+
Every landing location can be defined with a target point and 2 different approach headings (colinear to the landing strips) with exclusive direction or opposite directions allowed.
17+
This enables up to 4 different approach directions, based on the landing site and surrounding area.
18+
19+
## Autoland Control Logic
20+
21+
1. After reaching Safehome/LAND Waypoint the altitude is corrected to "Approach Altitude".
22+
2. The aircraft circles for at least 30 seconds to determine the wind direction and strength.
23+
3. The landing direction and the approach waypoints are calculated on the basis of the measured wind parameters. If no headwind landing is possible or the wind strength is greater than "Max. tailwind" (see Global Parameters), return to point 2.
24+
4. The landing is initiated. The aircraft flies the downwind course, "Approach Altitude" is held.
25+
5. Base Leg: the altitude is reduced from 2/3 of "Approach Altitude".
26+
6. Final Approach: The engine power is reduced using "Pitch2throttle modifier" to reduce speed and the altitude is gradually reduced towards "Land Altitude" while approaching the Safehome coordinates.
27+
7. Glide: When "Glide Altitude" is reached, the motor is switched off and the pitch angle of "Glide Pitch" is held.
28+
7. Flare: Only if a LIDAR/Rangefinder sensor is present: the motor remains switched off and the pitch angle of "Flare Pitch" is held
29+
8. Landing: As soon as INAV has detected the landing, it is automatically disarmed, see setting `nav_disarm_on_landing`.
30+
31+
To activate the automatic landing, the parameter `nav_rth_allow_landing` must be set to `ALWAYS` or `FAILSAFE`.
32+
33+
> [!WARNING]
34+
> If landing is activated and no parameters are set for the landing site (Safehome and/or landing waypoint), the old landing procedure (circling until close to the ground, then hovering out) is performed.
35+
> This is probably not what you want.
36+
37+
The following graphics illustrate the process:
38+
39+
![Approach Drawing Up](/img/modules/Approach-Drawing-Up.png)
40+
41+
![Approach Drawing Side](/img/modules/Approach-Drawing-Side.png)
42+
43+
## Landing site parameters
44+
45+
### The following parameters are set for each landing site (Safefome/LAND waypoint):
46+
47+
All settings can also be conveniently made in the Configurator via Mission Control.
48+
49+
CLI command `fwapproach`:
50+
`fwapproach <index> <Approach altitude> <Land altitude> <Approach direction> <approach heading 1> <approach heading 2> <sea level>`
51+
52+
`fwapproach` has 17 slots in which landing parameters can be stored. In slot 0-7 the landing parameters for Safehome are stored, in 8 - 16 the parameters for waypoint missions. Only one landing point per mission can be saved.
53+
54+
* index: 0 - 17, 0 - 7 Safehome, 8 - 16 Mission
55+
* Approach direction: 0 - Left, 1 - Right. Always seen from the primary landing direction (positive value), i.e. whether the aircraft flies left or right turns on approach.
56+
* Approach Altitude: Initial altitude of the approach, the altitude at which the wind direction is determined and the downwind approach, in cm
57+
* Land Altitude: Altitude of the landing site, in cm
58+
* Approach heading 1 and 2: Two landing directions can be set, values: 0 - +/-360. 0 = landing direction is deactivated.
59+
A positive value means that you can approach in both directions, a negative value means that this direction is exclusive.
60+
Example: 90 degrees: It is possible to land in 90 degrees as well as in 270 degrees. -90 means that you can only land in a 90 degree direction.
61+
This means that practically 4 landing directions can be saved.
62+
* Sea Level: 0 - Deactivated, 1 - Activated. If activated, approach and land altitude refer to normal zero (sea level), otherwise relative altitude to the altitude during first GPS fix.
63+
64+
> [!CAUTION]
65+
> The Configuator automatically determines the ground altitude based on databases on the Internet, which may be inaccurate. Please always compare with the measured GPS altitude at the landing site to avoid crashes.
66+
67+
### Global parameters
68+
69+
All settings are available via “Advanced Tuning” in the Configurator.
70+
71+
* `nav_fw_land_approach_length`: Length of the final approach, measured from the land site (Safehome/Waypoint) to the last turning point.
72+
In cm. Max: 100000, Min: 100, Default: 35000
73+
74+
* `nav_fw_land_final_approach_pitch2throttle_mod`: Modifier for pitch to throttle ratio at final approach. This parameter can be used to reduce speed during the final approach.
75+
Example: If the parameter is set to 200% and Pitch To Throttle Ratio is set to 15, Pitch To Throttle Ratio is set to 30 on the final approach. This causes a reduction in engine power on approach when the nose is pointing downwards.
76+
In Percent. Min: 100, Max: 400, Default: 100
77+
78+
* `nav_fw_land_glide_alt`: Initial altitude of the glide phase. The altitude refers to "Landing Altitude", see above under "Landing site parameters"
79+
In cm. Min: 100, Max: 5000, Default: 200
80+
81+
* `nav_fw_land_flare_alt`: Initial altitude of the flare phase. The altitude refers to "Landing Altitude", see above under "Landing site parameters"
82+
In cm. Min: 0, Max: 5000, Default: 200
83+
84+
* `nav_fw_land_glide_pitch`: Pitch value for glide phase.
85+
In degrees. Min: 0, Max: 45, Default: 0
86+
87+
* `nav_fw_land_flare_pitch`: Pitch value for flare phase.
88+
In degrees. Min: 0, Max: 45, Default: 8
89+
90+
* `nav_fw_land_max_tailwind`: Max. tailwind if no landing direction with downwind is available. Wind strengths below this value are ignored (error tolerance in the wind measurement). Landing then takes place in the main direction. If, for example, 90 degrees is configured, landing takes place in this direction, NOT in 270 degrees (see above).
91+
In cm/s. Min: 0; Max: 3000, Default: 140
92+
93+
### General paramters and tuning tips
94+
95+
* `nav_fw_wp_tracking_accuracy`: Its highly recommended that this parameter is used and tuned well. Only with WP-Tracking enabled, the Aircraft will try to precisely align with the runway during approach.
96+
If WP-Tracking is not used, the Plane will head straight to the landiung location without flying in line with the intended landing strip. Wind can intensively alter the final landing heading.
97+
98+
* `nav_fw_pitch2thr`: The navigation throttle modifier has to be tuned well to allow stable navigation during climbs and descents to prevent a stall. Make sure your plane maintains Ground or Airspeed, when climbing in any navigation mode.
99+
The Craft should not get slower and not speed ub significantly during a navigation climb, if P2T is tuned properly.
100+
101+
* `nav_wp_radius`: This parameter might be too high if you have set up your craft with INAV 6 or INAV 7. With a too high value, the turning points for the Crosswind-Leg and Final Approach are hit too early and make it difficult for the plane to align to the runway or cut short the approach.
102+
Make sure this parameter is not set greater than 1000 (cm). The better your craft and navigation system is tuned, the lower this value can be. We recommend to start with 1000 for flying wings and 800 for a Plane with Tail.
103+
104+
* Test your Navigation-Tuning: A better Navigation-Tune will reward you with smoother and more reliable landings. To test your nav systems limit, we recommend to create a waypoint missions with many 90° turn angles with shorter and shorter tracks.
105+
With this Method, you can find out how well your plane can follow a navigation path and how long it takes to align to a waypoint track. A well tuned plane should be able to pull of a WP Mission that looks like this, where the distance between WP6 and WP7 si recommended to be the minimum approach length:
106+
107+
![Test Waypoint Track](https://github.com/iNavFlight/inav/assets/33039058/a929cd0c-80b1-42d6-815d-89a90e9daa1b)
108+
109+
110+
## Waypoint missions
111+
112+
Only one landing waypoint per mission can be active and saved and the landing waypoint must be the last waypoint of the mission.
113+
If the altitude of the waypoint and the "Approach Altitude" are different, the altitude of the waypoint is approached first and then the altitude is corrected to "Approach Altitude".
114+
115+
## Logic Conditions
116+
117+
The current landing state can be retrieved via ID 41 in "Flight" (FW Land State). This allows additional actions to be executed according to the landing phases, e.g. deployment of the landing flaps.
118+
119+
| Returned value | State |
120+
| --- | --- |
121+
| 0 | Idle/Inactive |
122+
| 1 | Loiter |
123+
| 2 | Downwind |
124+
| 3 | Base Leg |
125+
| 4 | Final Approach |
126+
| 5 | Glide |
127+
| 6 | Flare |

docs/modules/led.md

Lines changed: 44 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,13 @@ description: All things LEDs
66

77
## LED Strip
88

9-
INAV supports the use of addressable LED strips. Addressable LED strips allow each LED in the strip to
10-
be programmed with a unique and independant color. This is far more advanced than the normal RGB strips which
11-
require that all the LEDs in the strip show the same color.
9+
INAV supports the use of addressable LED strips.
10+
Addressable LED strips allow each LED in the strip to be programmed with a unique and independant color.
11+
This is far more advanced than the normal RGB strips, which do not allow for individual control of each LED in the strip.
1212

13-
Addressable LED strips can be used to show information from the flight controller system, the current implementation
14-
supports the following:
13+
Addressable LED strips can be used to show information from the flight controller system, the current implementation supports the following:
1514

16-
* Up to 128 LEDs. _If using more than 20 LEDs, you should look to use a separate power supply._
15+
* Up to 128 LEDs. *If using more than 20 LEDs, you should look to use a separate power supply.*
1716
* Indicators showing pitch/roll stick positions.
1817
* Heading/Orientation lights.
1918
* Flight mode specific color schemes.
@@ -25,14 +24,16 @@ supports the following:
2524

2625
Support for more than 128 LEDs is possible, it just requires additional development.
2726

28-
## Supported hardware
27+
### Supported Hardware
2928

30-
Only strips of 128 WS2811/WS2812 LEDs are supported currently. If the strip is longer than 128 LEDs it does not matter,
31-
but only the first 128 are used.
29+
Only strips of 128 WS2811/WS2812 LEDs are currently supported.
30+
If the strip is longer than 128 LEDs, only the first 128 are used.
3231

3332
WS2812 LEDs require an 800khz signal and precise timings and thus requires the use of a dedicated hardware timer.
3433

35-
Note: Not all WS2812 ICs use the same timings, some batches use different timings.
34+
::: info
35+
Not all WS2812 ICs use the same timings, some batches use different timings.
36+
:::
3637

3738
It could be possible to be able to specify the timings required via CLI if users request it.
3839

@@ -44,40 +45,53 @@ It could be possible to be able to specify the timings required via CLI if users
4445
* [Adafruit NeoPixel Stick](https://www.adafruit.com/products/1426) (works well)
4546
* Measured current consumption in all white mode ~ 350 mA.
4647

47-
## Connections
48+
### Connections
4849

4950
WS2812 LED strips generally require a single data line, 5V and GND.
5051

51-
WS2812 LEDs on full brightness can consume quite a bit of current. **It is recommended to verify the current draw of you LEDs and ensure your supply can cope with the load. Remember, your flight controller will likely be using the same BEC to operate.** Check the specs of the LED chips. Some are more power hungry than others. Remember that if using the flight controller's 5v supply. This is also powering other components on your flight controller. Make sure there is enough overhead so that they don't brownout.
52+
:::warning
53+
WS2812 LEDs on full brightness can consume quite a bit of current.
54+
It is recommended to verify the current draw of you LEDs and ensure your supply can cope with the load. Remember, your flight controller will likely be using the same BEC to operate.
55+
:::
5256

53-
On a multirotor that uses multiple BEC ESC's you can try use a different BEC to the one the FC uses. e.g. ESC1/BEC1 -> FC, ESC2/BEC2 -> LED strip. It's also possible to power one half of the strip from one BEC and the other half from another BEC. Just ensure that the GROUND is the same for all BEC outputs and LEDs.
57+
Check the specs of the LED chips.
58+
Some are more power hungry than others.
59+
Remember that if using the flight controller's 5v supply, this also powers other components on your flight controller.
60+
Please make sure there is enough overhead to reduce potential for a brownout.
5461

55-
If using a large number of LEDs. It would be more efficient to use 12v LEDs and power them with a separate regulated supply. Especially if using long strips. You would use the data line (LED pad) from the flight controller. Make sure there is continuity between the ground on the LEDS and the ground on the flight controller.
62+
On a multirotors that use individual ESCs with built in BECs, it's possible to use the ESC/BEC instead of the BEC from the FC e.g. ESC1/BEC1 -> FC, ESC2/BEC2 -> LED strip.
63+
It's also possible to power one half of the strip from one BEC and the other half from another BEC.
64+
Just ensure that the GROUND is the same for all BEC outputs and LEDs.
65+
66+
If using a large number of LEDs, it will be more efficient to use 12v LEDs and power them with a separate regulated supply.
67+
The data line (LED pad) from the flight controller will stil be used for control.
68+
Please ensure there is continuity between the ground on the LEDS and the ground on the flight controller.
5669

5770
| Target | Pin | LED Strip | Signal |
5871
| --------------------- | ---- | --------- | -------|
5972
| F3Discovery | PB8 | Data In | PB8 |
6073
| Sparky | PWM5 | Data In | PA6 |
6174

62-
If you have LEDs that are intermittent, flicker or show the wrong colors then drop the VIN to less than 4.7v, e.g. by using an inline
63-
diode on the VIN to the LED strip. The problem occurs because of the difference in voltage between the data signal and the power
64-
signal. The WS2811 LED's require the data signal (Din) to be between 0.3 * Vin (Max) and 0.7 * VIN (Min) to register valid logic
65-
low/high signals. The LED pin on the CPU will always be between 0v to ~3.3v, so the Vin should be 4.7v (3.3v / 0.7 = 4.71v).
75+
If you have LEDs that are intermittent, flicker, or show the wrong colors, then drop the VIN to less than 4.7v, e.g. by using an inline diode on the VIN to the LED strip.
76+
The problem occurs because of the difference in voltage between the data signal and the power
77+
signal.
78+
The WS2811 LED's require the data signal (Din) to be between 0.3 * Vin (Max) and 0.7 * VIN (Min) to register valid logic low/high signals. The LED pin on the CPU will always be between 0v to ~3.3v, so the Vin should be 4.7v (3.3v / 0.7 = 4.71v).
6679
Some LEDs are more tolerant of this than others.
6780

6881
The datasheet can be found here: http://www.adafruit.com/datasheets/WS2812.pdf
6982

70-
## Configuration
83+
## LED Setup
84+
85+
![Configurator LED Page](/img/modules/config_led.jpg)
7186

72-
The led strip feature can be configured via the GUI.
87+
The LED strip feature can be configured via Configurator in the LED Strip tab in Configurator.
7388

74-
GUI:
75-
Enable the Led Strip feature via the GUI under setup.
89+
1. Enable the Led Strip feature via the GUI under setup.
7690

77-
Configure the leds from the Led Strip tab in the INAV GUI.
91+
1. Configure the leds from the Led Strip tab in the INAV GUI.
7892
First setup how the led's are laid out so that you can visualize it later as you configure and so the flight controller knows how many led's there are available.
7993

80-
There is a step by step guide on how to use the GUI to configure the Led Strip feature using the GUI http://blog.oscarliang.net/setup-rgb-led-cleanflight/ which was published early 2015 by Oscar Liang which may or may not be up-to-date by the time you read this.
94+
1. There is a step by step guide on how to use the GUI to configure the Led Strip feature using the GUI http://blog.oscarliang.net/setup-rgb-led-cleanflight/ which was published early 2015 by Oscar Liang which may or may not be up-to-date by the time you read this.
8195

8296
CLI:
8397
Enable the `LED_STRIP` feature via the cli:
@@ -210,7 +224,9 @@ This mode binds the LED color to remaining battery capacity.
210224
| Deep pink | 0% |
211225

212226
When Warning or Critial voltage is reached, LEDs will blink slowly or fast.
213-
Note: this mode requires a current sensor. If you don't have the actual device you can set up a virtual current sensor (see [Battery](battery.md)).
227+
:::info
228+
This mode requires a current sensor. If you don't have the actual device you can set up a virtual current sensor (see [Battery](battery.md)).
229+
:::
214230

215231
#### Blink
216232

@@ -605,10 +621,9 @@ This configuration is specifically designed for the [Alien Spider AQ50D PRO 250m
605621

606622
## Troubleshooting
607623

608-
On initial power up the LEDs on the strip will be set to WHITE. This means you can attach a current meter to verify
609-
the current draw if your measurement equipment is fast enough. Most 5050 LEDs will draw 0.3 Watts a piece.
624+
On initial power up the LEDs on the strip will be set to WHITE.
625+
This means you can attach a current meter to verify the current draw if your measurement equipment is fast enough.
626+
Most 5050 LEDs will draw 0.3 Watts a piece.
610627
This also means that you can make sure that each R,G and B LED in each LED module on the strip is also functioning.
611-
612628
After a short delay the LEDs will show the unarmed color sequence and or low-battery warning sequence.
613-
614629
Also check that the feature `LED_STRIP` was correctly enabled and that it does not conflict with other features, as above.

docusaurus.config.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ const config: Config = {
3131
locales: ["en"],
3232
},
3333

34-
plugins: [require.resolve("docusaurus-lunr-search")],
34+
plugins: [require.resolve("docusaurus-lunr-search"), require.resolve("docusaurus-plugin-image-zoom")],
3535
themes: ['@docusaurus/theme-mermaid'],
3636
markdown: {
3737
mermaid: true,
@@ -90,6 +90,13 @@ const config: Config = {
9090
backgroundColor: '#ff9999',
9191
isCloseable: true,
9292
},
93+
zoom: { // the image zoom plugin
94+
selector: '.markdown :not(em) > img',
95+
background: {
96+
light: 'rgb(255, 255, 255)',
97+
dark: 'rgb(50, 50, 50)',
98+
}
99+
},
93100
navbar: {
94101
title: "INAV",
95102
// style: 'primary',

0 commit comments

Comments
 (0)