- Side Stick
- Landing Gear Lever lamps and sensors
- Rudder Pedals with differential braking.
The subsystem consists of the following:
- Landing Gear Control Lever (CANid: 1175)
- 3 Red Indicators (CANid: 1400, 1, 2 )
- 3 Green Indicators (CANid: 1403, 4, 5)
- WOW, Weight on Wheels, (CANid: 1176) this sensor, prevents Landing Gear retraction while on the ground. See the movie "No Highway in the Sky" about 1hr in. For WOW to be TRUE all the sensors have to agree. WOW on the main wheels is responsible for moving the front canard down, until there is weight on the nose wheel at which time the canard goes to 90 degrees to act as a speed brake. as well as enabling nose wheel steering.
- Gear Down and Locked sensor (CANid: 1406, 07, 08)
- Gear Up and Locked sensor. (CANid: 1409, 9810, 11 )
Aircraft have 3 wheels Left, Nose, Right. Each pair of Red/Green Indicator shows the status of each wheel:
- RED SOLID, Gear UP, and Locked.
- RED BLINKING:
- Landing Gear Lever UP selected and gear not up and locked (gear retraction)
- Landing Gear Lever DOWN selected disagrees with landing gear not down and locked (gear extension)
- GREEN SOLID, Gear Down, and Locked
Landing Gear Lever
So to recap that's wires, 13 wires plus grounds. Since I only have two contacts, (UP & DOWN) on the Landing Gear Lever which is not used very much, I can catch them with an interrupt by putting a 2-input Or Gate followed by Schmitt Trigger connected to the Arduino Mega pins 20, 21. using the rising mode. You have to keep in mind that the switch once in the UP or Down position does not move, except in takeoff and landing, therefore the interrupt is detected on the rising edges.
UPDATE 1: To understand the logic behind my RED lamps which can be solid on or blinking at about 1 Hz, I have included a schematic for you to wonder about.
UPDATE 2: I have decided NOT to try and use the timers instead I will just use a lowly NE555. Its output is 1Hz with a 50% duty cycle.
// The Arduino Mega has 6 interrupt pins 2, 3, 18, 19, 20, and 21
Arduino pins and their mnemonic:
20 LGLUP attachInterrupt( digitalPinToInterrupt(LGLUP), ISR20, RISING );
21 LGLDOWN attachInterrupt( digitalPinToInterrupt(LGLDOWN), ISR21, RISING );
int LGLstatus :: = TRUE == 1 == UP; FALSE == 0 == DOWN; LGLstatus is set by ISR20 && ISR21
pins 22, 23, 24 are SOLID ON
// pins 25, 26, 27 are BLINK Enable
// RED LAMP
// GREEN LAMPS
//CANbus -- SPI interface
19 CANint. attachInterrupt( digitalPinToInterrupt(CANint), ISR19, RISING );
OPTIONAL: I possibly can include 3 analog input to read the Rudder Pedals (one channel) and Right and Left Toe brakes. These are just potentiometers.
A1 Rudder position
**Please Note that CANids of 1300 to 1499 are not reserved.