Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Compacte Analog Trim Tab Wiel voor FlightGear met Arduino Nano

Onderdelen en Benodigdheden

Arduino Nano R3 (of compatibel) 1
Draaipotmeter (10 kΩ, lineair) 1
Condensator 100 µF (stroomvlak filtering) 1
Adafruit SSD1306 0.96" OLED (I2C, 128×64) 1
Draadbruggen 1 set

Apps en Online Diensten

  • Arduino IDE
  • Anaconda (voor Python omgeving)
  • FlightGear (vluchtsimulator)

Over Dit Project

Dit project realiseert een compacte, analoge trim-wiel controller voor de elevatortrim in FlightGear. De Arduino leest de potentiometer uit en stuurt de waarde via seriële poort. Een Python-script zet dit om in UDP-pakketten die FlightGear begrijpt via het Generic Protocol.

Wat is een Trim Wiel?

Een trim-wiel stelt de pilot in om de elevatortrim (trim-tab) in te stellen, zodat het vliegtuig een bepaalde pitch-houding handhaaft zonder continue stuurkracht. In FlightGear wordt dit gemapped op /controls/flight/elevator-trim.

Benodigde Python Libraries

Installeer via Anaconda Prompt:

conda install -c anaconda pyserial
# socket en sys zijn standaard in Python

Drie Scripts

  1. Arduino Sketch (arduinoElevatorTrimOLED.ino) – leest potmeter, stuurt seriële data, toont gauge op OLED.
  2. Python Script (arduinoElevatorTrim.py) – leest seriële data, stuurt UDP naar FlightGear.
  3. XML Protocol (arduinoElevatorTrim.xml) – FlightGear generic protocol definitie.

Arduino Sketch Details

Vereist de U8glib library. Pas regel 2 aan voor uw display type:

#include <U8glib.h>
U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_DEV_0); // I2C

De map() functies vertalen de 0-1023 ADC waarde naar trim-waarde (-100 tot +100) en naald-positie (0-90 graden). Draairichting omkeren? Wissel de laatste twee argumenten van map().

Python Script Configuratie

host = "localhost"        // of 127.0.0.1
port = 21567              // vrije UDP poort
tty = "COM4"              // Arduino seriële poort (check Arduino IDE)

Let op: Sluit de Serial Monitor in de Arduino IDE voordat u het Python-script start, anders is de poort bezet.

Start het script vanuit de terminal:

python c:\pad\naar\arduinoElevatorTrim.py

FlightGear Configuratie

  1. Plaats arduinoElevatorTrim.xml in <FlightGearRoot>/data/protocol/.
  2. Start FlightGear met extra argument:
    --generic=socket,in,30,localhost,21567,udp,arduinoElevatorTrim

Uitleg: input, 30 Hz, localhost, poort 21567, UDP, protocol bestand arduinoElevatorTrim.

Code Overzicht

Arduino Sketch

Leest potmeter (A6), berekent genormaliseerde waarde (-1.0 tot +1.0), stuurt via Serial. Tekent een mooie analoge gauge met naald op de OLED.

Python Script

Eenvoudige bridge: leest regel per regel van seriële poort, stuurt ongewijzigd door naar UDP socket. Voorkomt duplicaten door vorige regel te onthouden.

XML Protocol

<?xml version="1.0"?>
<PropertyList>
  <generic>
    <input>
      <line_separator>\n</line_separator>
      <var_separator>,</var_separator>
      <chunk>
        <name>Elevator trim</name>
        <node>/controls/flight/elevator-trim</node>
        <type>float</type>
      </chunk>
    </input>
  </generic>
</PropertyList>

Schema

Potmeter: middelste tap → A6, uitersten → 5V en GND. 100µF condensator parallel over de potmeter voor ruisonderdrukking. OLED: SDA→A4, SCL→A5, VCC→3.3V/5V, GND→GND.

GitHub Repository

https://github.com/dciliberti/arduinoElevatorTrimOLED

Productieproces

  1. Arduino Digitale Dobbelsteen: Bouw Je Eigen LCD-willekeurige Getalgenerator
  2. Een Arduino Iron Man bouwen: onderdelen, sensoren en stapsgewijze handleiding
  3. Analoge-stijl LED Persistence-of-Vision Klok – DIY Arduino Nano Project
  4. Find Me: Slimme Item Locator met Arduino en Bluetooth
  5. Bouw een Functionele, Arduino-aangedreven 3D-geprinte Robotarm – Stap-voor-Stap Handleiding
  6. DIY Arduino Luchtbevochtiger Controller met Relais – Veilige Hoogspanningsopstelling
  7. NeoPixel Matrix Pong op Arduino Nano: Bouw je eigen neon Pong-spel
  8. Bouw een Aangepaste Arduino Joystick Stuurwiel voor Gaming
  9. Bouw een krachtige FM-radio ontvanger met Arduino en TEA5767 module
  10. Arduino 101: Bouw een teller met DHT11 sensor & LCD display
  11. Bouw een Arduino RGB Kleur Mixer – Stap-voor-stap Handleiding