Gestion des feux, decodage sbus, ecran de controle, avec arduino

Modérateur : Anim'Elec

Règles du forum
Pour toutes questions relatives au fonctionnement ou problème de fonctionnement entre une radio et un module sonore tel que MFU, Servonaut, USM...
Merci de poser les questions dans le forum radio, en prenant soin de publier dans la catégorie correspondante a votre radio (Marque)

Par ici --->,
Répondre
Avatar de l’utilisateur
thetux
Chauffeur sympa
Chauffeur sympa
Messages : 494
Inscription : 24 juil. 2012, 21:25
Pays : B
Localisation : Andenne
Has thanked : 7 times
Been thanked : 43 times

Gestion des feux, decodage sbus, ecran de controle, avec arduino

Message par thetux »

Bonjour,

avec un arduino nano, il est possible de decoder le signal SBus (Futaba, FrSky) et ainsi beneficier de plus de voies que sur le recepteur, d' afficher ces infos sur un ecran 0.49 pouces, et aussi de gerer les feux.

Vu qu on a le signal SBus, donc tous les cannaux, on sait aisement gerer les feux de frein, de recul, ... Par exemple, les clignotants s' arretent apres avoir tourne et que les roues reviennent au centre.
J' ai publie le code comme une librairie Arduino, pour que ce soit le plus simple possible.
https://www.arduino.cc/reference/en/lib ... modelisme/

Cette librairie contient meme un exemple de pcb qu on peut faire imprimer pour quelques euros.

Par exemple, pour gerer 11 canaux supplementaires aux 8 du recepteur, plus les feux et un ecran de mesure, le code Arduino se resume a

Code : Tout sélectionner

#include <Modelisme.h>
#include <ReceiverDisplay.h>

Receiver rec;
LightManager lm;
ReceiverDisplay screen("MT 1042", 24);

void setup(void) {
  //Manage lights
  lm.setup(2, 3, 4, 5, 6, 7, 8);
  //Screen
  screen.setup(&rec, &lm);
  //Sbus Decoder
  rec.setup(19);
  //Servos
  rec.servoPins[0] = 9; rec.servoChannels[0] = 6;
  rec.servoPins[1] = 10;rec.servoChannels[1] = 7;
  rec.servoPins[2] = 11;rec.servoChannels[2] = 8;
  rec.servoPins[3] = 12;rec.servoChannels[3] = 9;
  rec.servoPins[4] = 13;rec.servoChannels[4] = 10;
  rec.servoPins[5] = A0;rec.servoChannels[5] = 12;
  rec.servoPins[6] = A1;rec.servoChannels[6] = 13;
  rec.servoPins[7] = A2;rec.servoChannels[7] = 14;
  rec.servoPins[8] = A3;rec.servoChannels[8] = 15;
  rec.servoPins[9] = A6;rec.servoChannels[9] = 16;
  rec.servoPins[10]= A7;rec.servoChannels[10]= 17;
}

void loop()
{ 
  delay(50);
  rec.read();
  //Manage ligths
  lm.checkLights(rec.channels[11].angle, rec.channels[2].angle, rec.channels[4].angle, rec.channels[1].angle);
  //Manage screen
  screen.loop();
}
Avatar de l’utilisateur
Cactuszebest
Chauffeur sympa
Chauffeur sympa
Messages : 441
Inscription : 27 juil. 2005, 14:23
Numéro de département : 67
Pays : F
Localisation : Soultz-sous-forêts (67)
Has thanked : 26 times
Been thanked : 27 times

Re: Gestion des feux, decodage sbus, ecran de controle, avec arduino

Message par Cactuszebest »

Très interessant. Ca laisse la place à plein d'idée
Image
Lu sur TC: "Too many projects" means: I get easily distracted. C'est tellement vrai....
Répondre

Revenir à « Autres modules Lumières/son/ multifonction »