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

Gaskwadrant en trimwiel

Componenten en benodigdheden

Arduino Leonardo
Een Leonardo of Micro is geschikt voor dit project, tot 6 bedieningselementen mogelijk op elke Arduino
× 1
Draad, aansluiten
3 draden per module
× 3
Draaipotentiometer 50k, details in het verhaalgedeelte
1 per module
× 1

Benodigde gereedschappen en machines

Soldeerbout (algemeen)
3D-printer (algemeen)

Apps en online services

Arduino IDE

Over dit project

Inleiding

Nadat ik onlangs mijn pc had geüpgraded om MS FS2020 te kunnen gebruiken, werd ik geïnspireerd om de bedieningselementen die ik gebruikte te verbeteren. Een toetsenbord heeft niet echt het juiste gevoel om te vliegen en ik wilde de ervaring upgraden naar iets beters. Ik ben geen fulltime flight sudder en kan de ruimte of het geld niet betalen om veel te besteden aan het maken van een volledige cockpit of zelfs een gekochte set bedieningselementen.

Ontwerp

Ik begon met het ontwerpen van een set besturingselementen in CAD die gemaakt konden worden met de tools die ik heb en die een redelijke ervaring geven van hoe ik me voorstel dat een echt vliegtuig zou voelen. Ik heb nog nooit de bedieningselementen van een vliegtuig aangeraakt, dus het is gebaseerd op wat Ik denk dat ze zoiets zouden zijn.

Ik besloot dat de bedieningselementen die ik zou willen, enkele enkele hendels zijn voor gas, kleppen, landingsgestel en een trimwiel voor de lift. Ik vlieg meestal met de kleine, lichte eenmotorige vliegtuigen in de sim, dus daar concentreerde ik me op.

Het trimwiel was de grootste uitdaging om te ontwerpen en het kostte dagenlang verschillende geschetste ideeën om tot een ontwerp te komen waarvan ik dacht dat het de look en feel zou geven die ik wilde.

Bouw

Alle onderdelen zijn 3D geprint in ABS op mijn UP! printer, ze werden vervolgens geverfd en aangesloten op een Arduino, een Leonardo om mee te beginnen en vervolgens omgewisseld naar een Micro. Om te eindigen met een plug-and-play-eenheid die gemakkelijk kan worden opgeborgen wanneer deze niet in gebruik is.

Onderdelen

3D-geprinte onderdelenlijst

Elke hendelmodule vereist

  • 1 x lichaam links
  • 1 x lichaam rechts
  • 1 x hendel met x pallen, 5 varianten beschikbaar met 2-6 pallen
  • 1 x Hendeluiteinde
  • 1 x knop, 6 varianten beschikbaar
  • 1 x Frictieplaat, 3 varianten beschikbaar
  • 1 x Potentiometerhouder
  • Elke wielmodule vereist

  • 1 x Trim wielkast links
  • 1 x Trim wielkast rechts
  • 1 x Trimwieltandwiel
  • 1 x Trim wielnaaf
  • 1 x trimwielwiel, als u het gemonteerde wiel maakt
  • 8 x Trim wielknobbeltjes, als je het gemonteerde wiel maakt
  • 1 x Trimwiel uit één stuk, als u het wiel uit één stuk maakt
  • 1 x trimwielkwadrant
  • 1 x trimwiel kwadrantaandrijving
  • 1 x Potentiometerhouder
  • Backbox-onderdelen kunnen worden gebruikt om de Arduino en bedrading te huisvesten.

    Conclusie

    Een zeer plezierige constructie, heel eenvoudig vanuit het oogpunt van codering, de echte uitdaging in deze build was het ontwerp, vooral het trimwiel en het gevoel krijgen juist.

    Code

    • Quadrant.ino
    Quadrant.inoArduino
    Gebruik de instellingsvariabele en de seriële monitor om de eindpuntwaarden voor elke potentiometer te vinden, voer ze in de axisLimits array
    #include Joystick_ Joystick;// plaats de max en min waarden van de analogRead in deze arrays// deze worden vertaald naar een bereik van 0 - 1023int axisLimits0[] ={686, 338};int axisLimits1[] ={345, 695};int axisLimits2[] ={327, 678};int axisLimits3[] ={342, 692};int axisLimits4[] ={0, 1023};int axisLimits5[] ={0, 1023};// zet assen aan of uit door deze variabelen in te stellen bool a0Used =true;bool a1Used =true;bool a2Used =true;bool a3Used =true;bool a4Used =false;bool a5Used =false;// instellingsmodus drukt de pin-waarde en vertaalde waarde af naar de seriële monitor// int-instelling =-1; // niet afdrukken naar de seriële monitor// int-instelling =2; // waarden 0 - 5, print de pin-waarden naar de seriële monitorint-instelling =-1; void setup () { if (a0Used) pinMode (A0, INPUT); if(a1Used) pinMode(A1, INPUT); if(a2Used) pinMode(A2, INPUT); if(a3Used) pinMode(A3, INPUT); if (a4Used) pinMode (A4, INPUT); if(a5Used) pinMode(A5, INPUT); Joystick.begin(); if(instelling>=0) Serial.begin(9600);}void loop() {int value =0; int pos =0; if (a0Used) {waarde =analogRead (A0); pos =translateValue(waarde, axisLimits0[0], axisLimits0[1]); Joystick.setThrottle(pos); if(setting ==0) settingPrint(value, pos); } if(a1Used){ ​​waarde =analogRead(A1); pos =translateValue(waarde, axisLimits1[0], axisLimits1[1]); Joystick.setRxAxis(pos); if(setting ==1) settingPrint(value, pos); } if(a2Used){ ​​waarde =analogRead(A2); pos =translateValue(waarde, axisLimits2[0], axisLimits2[1]); Joystick.setRyAxis(pos); if(setting ==2) settingPrint(value, pos); } if(a3Used){ ​​waarde =analogRead(A3); pos =translateValue(waarde, axisLimits3[0], axisLimits3[1]); Joystick.setRzAxis(pos); if(setting ==3) settingPrint(value, pos); } if(a4Used){ ​​waarde =analogRead(A4); pos =translateValue(waarde, axisLimits4[0], axisLimits4[1]); Joystick.setXAxis(pos); if(setting ==4) settingPrint(value, pos); } if(a5Used){ ​​waarde =analogRead(A5); pos =translateValue(waarde, axisLimits5[0], axisLimits5[1]); Joystick.setYAxis(pos); if(setting ==5) settingPrint(value, pos); } delay(5);}int translateValue(int v, int f1, int f2){ // vertaalt waarden naar een bereik van 0 - 1023 int resultaat =0; int start =0; vlotterbereik =0; if(f1  1023) resultaat =1023; resultaat retourneren;} ongeldige instellingPrint (int-waarde, int pos) { Serial.print (waarde); Serieel.print(" "); Serial.println(pos);}

    Aangepaste onderdelen en behuizingen

    Een zonder het tabblad voor het geval je het nodig hebtDegene die ik gebruik

    Sketchfab nog bezig.

    Dit bestand bevat alle onderdelen als een STEP-bestand vrijgegeven_u3k8QjPXzJ.stp

    Schema's

    Om meer bedieningselementen toe te voegen, sluit u 5V en GRD aan en gebruikt u pinnen A1 tot A5 quadrant_ZkMygPyRiE.fzz

    Productieproces

    1. LCD-animatie en gaming
    2. DIY voltmeter met Arduino en smartphone
    3. Temperatuur- en vochtigheidsdatalogger
    4. FlightGear Analog Trim Tab Wheel
    5. Python3- en Arduino-communicatie
    6. Arduino en OLED-gebaseerde mobiele automaten
    7. FM-radio met Arduino en RDA8057M
    8. Aanwezigheidssysteem op basis van Arduino en Google Spreadsheet
    9. IoT:Windows Remote Arduino en universele apps
    10. MKR1000 temperatuur- en vochtigheidssensor
    11. Inzicht in wielbalancering en wieluitlijning