Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Quadrant des gaz et molette de trim

Composants et fournitures

Arduino Leonardo
Un Leonardo ou un Micro conviendra pour ce projet, jusqu'à 6 contrôles possibles sur chaque Arduino
× 1
Câble, branchement
3 fils par module
× 3
Potentiomètre rotatif 50k, détails dans la section histoire
1 par module
× 1

Outils et machines nécessaires

Fer à souder (générique)
Imprimante 3D (générique)

Applications et services en ligne

Arduino IDE

À propos de ce projet

Présentation

Ayant récemment mis à niveau mon PC pour lui permettre d'exécuter MS FS2020, j'ai eu envie d'améliorer les commandes que j'utilisais. Un clavier n'a pas vraiment la bonne sensation pour voler et je voulais améliorer l'expérience vers quelque chose de mieux. Je ne suis pas un voleur à temps plein et je ne peux pas me permettre l'espace ou l'argent pour consacrer beaucoup à la fabrication d'un cockpit complet ou même d'un ensemble de commandes acheté.

Conception

J'ai commencé à concevoir un ensemble de commandes en CAO qui pourraient être faites avec les outils dont je dispose et donner une expérience raisonnable de ce que j'imagine qu'un vrai avion se sentirait, je n'ai jamais touché les commandes d'un avion donc c'est basé sur ce que Je pense qu'ils seraient comme.

J'ai décidé que les commandes que je voudrais sont des leviers simples pour les gaz, les volets, le train d'atterrissage et une roue de compensation de profondeur. Je pilote principalement les petits avions monomoteurs légers dans la simulation, c'est donc ce sur quoi je me concentrais.

La roue de garniture était la plus difficile à concevoir et il a fallu plusieurs idées esquissées sur plusieurs jours pour arriver à un design qui, selon moi, offrirait l'apparence que je voulais.

Construire

Toutes les pièces ont été imprimées en 3D en ABS sur mon UP ! imprimante, ils ont ensuite été peints et câblés à un Arduino, un Leonardo pour commencer, puis échangés contre un Micro. Pour finir avec une unité plug and play qui peut être rangée facilement lorsqu'elle n'est pas utilisée.

Pièces

Liste des pièces imprimées en 3D

Chaque module de levier nécessitera

  • 1 x Corps gauche
  • 1 x Corps droit
  • 1 x levier avec x crans, 5 variantes disponibles avec 2-6 crans
  • 1 x extrémité de levier
  • 1 x bouton, 6 variantes disponibles
  • 1 x plaque de friction, 3 variantes disponibles
  • 1 x support de potentiomètre
  • Chaque module de roue nécessitera

  • 1 x Corps de roue Trim gauche
  • 1 x Corps de roue Trim droite
  • 1 x engrenage de roue de trim
  • 1 x moyeu de roue Trim
  • 1 x roue de roue de garniture, si vous fabriquez la roue assemblée
  • 8 x Nodules de roue de garniture, si vous fabriquez la roue assemblée
  • 1 x roue de garniture en une seule pièce, si vous fabriquez la roue en une seule pièce
  • 1 x quadrant de roue de trim
  • 1 x entraînement de quadrant de roue de trim
  • 1 x support de potentiomètre
  • Les pièces du boîtier arrière peuvent être utilisées pour loger l'Arduino et le câblage.

    Conclusion

    Une construction très agréable, très facile du point de vue du codage, le vrai défi de cette construction était la conception, en particulier la molette de garniture et la sensation à droite.

    Code

    • Quadrant.ino
    Quadrant.inoArduino
    Utilisez la variable de réglage et le moniteur série pour trouver les valeurs de point final pour chaque potentiomètre, entrez-les dans le tableau axisLimits
    #include Joystick_ Joystick ; // mettre les valeurs max et min de l'analogiqueRead dans ces tableaux // ceux-ci sont traduits dans une plage de 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};// activez ou désactivez les axes en définissant ces variablesbool a0Used =true;bool a1Used =true;bool a2Used =true;bool a3Used =true;bool a4Used =false;bool a5Used =false;// le mode de réglage imprime la valeur de la broche et la valeur traduite sur le moniteur série// réglage int =-1 ; // pas d'impression sur le moniteur série // int setting =2; // valeurs 0 - 5, imprimez les valeurs des broches sur le paramètre serial monitorint =-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(setting>=0) Serial.begin(96000);}void loop() { int value =0; int pos =0 ; if(a0Used){ ​​value =analogRead(A0) ; pos =translateValue(value, axisLimits0[0], axisLimits0[1]); Joystick.setThrottle(pos); if(setting ==0) settingPrint(value, pos); } if(a1Used){ ​​value =analogRead(A1); pos =translateValue(value, axisLimits1[0], axisLimits1[1]); Joystick.setRxAxis(pos); if(setting ==1) settingPrint(value, pos); } if(a2Used){ ​​value =analogRead(A2); pos =translateValue(value, axisLimits2[0], axisLimits2[1]); Joystick.setRyAxis(pos); if(setting ==2) settingPrint(value, pos); } if(a3Used){ ​​value =analogRead(A3) ; pos =translateValue(value, axisLimits3[0], axisLimits3[1]); Joystick.setRzAxis(pos); if(setting ==3) settingPrint(value, pos); } if(a4Used){ ​​value =analogRead(A4); pos =translateValue(value, axisLimits4[0], axisLimits4[1]); Joystick.setXAxis(pos); if(setting ==4) settingPrint(value, pos); } if(a5Used){ ​​value =analogRead(A5); pos =translateValue(value, axisLimits5[0], axisLimits5[1]); Joystick.setYAxis(pos); if(réglage ==5) settingPrint(valeur, pos); } delay(5);}int translateValue(int v, int f1, int f2){ // traduit les valeurs en une plage de 0 - 1023 int result =0; int début =0 ; plage flottante =0 ; if(f1  1023) résultat =1023 ; return result;}void settingPrint(int value, int pos){ Serial.print(value); Serial.print(" "); Serial.println(pos);}

    Pièces et boîtiers personnalisés

    Un sans la languette au cas où vous en auriez besoinCelui que j'utilise

    Sketchfab est toujours en cours de traitement.

    Ce fichier contient toutes les pièces sous forme de fichier STEP release_u3k8QjPXzJ.stp

    Schémas

    Pour ajouter plus de commandes, branchez 5V et GRD et utilisez les broches A1 à A5 quadrant_ZkMygPyRiE.fzz

    Processus de fabrication

    1. Animation LCD et jeux
    2. Voltmètre DIY utilisant Arduino et Smartphone
    3. Enregistreur de données de température et d'humidité
    4. Molette de trim analogique FlightGear
    5. Communication Python3 et Arduino
    6. Automates cellulaires basés sur Arduino et OLED
    7. Radio FM utilisant Arduino et RDA8057M
    8. Système de présence basé sur Arduino et la feuille de calcul Google
    9. Comprendre l'équilibrage et l'alignement des roues