Choix arduino et composants

Bonjour

Petite présentation rapide pour mon premier message.
Bougie, 22 ans, mes passions vont de l'informatique aux trains en passant par la photo, le modélisme et le bricolage au sens large.

Dans le cadre de la construction d'un pupitre de conduite de train, je dois faire des manomètres et contrôler des "lumières". Après plusieurs questions à droite et à gauche, j'ai le choix entre contrôler des moteurs pas à pas ou des afficheurs galvaniques. A première vu le deuxième choix semble plus simple, mais la solution moteur me parait beaucoup plus facilement modulable.
Ce que je veux faire ce sont les manos à gauche : ImageShack - Best place for all of your image hosting and image sharing needs

Pour mes manomètres et tous ce qui est cadran rond avec une aiguille, je pense utiliser un moteur pas à pas. On peut donc facilement imaginer mon problème.

Il me faut un arduino (plusieurs ? :frowning: ) pour contrôler au moins 5 moteurs + une bonne vingtaine de lumières (leds/petites ampoules).

pour faire dans le plus vague : quel(s) moteur(s) et carte(s) allant avec et quel arduino utiliser ?

Est ce qu'en C# on peut envoyer des données sur l'interface série de l'arduino ? sinon, il va me falloir un shield ethernet qui va prendre de la place.

Merci pour l'aide que vous pourrez m'apporter.

PS : je précise que mes connaissances en électronique s’arrête à suivre un schéma simple pour le réaliser sur une plaque de tests ou souder tout ça. Je suis incapable de créer un circuit de toute pièce ni même calculer la valeur des résistances et autre si je veux modifier un montage existant

[EDIT] : on peut trouver des choses comme ça : http://207.58.139.247/products/81, ça me semble pas mal.
[EDIT2] : je suis assez séduit par http://www.arduino.cc/en/Tutorial/MotorKnob, ça semble parfait. Seulement je vais devoir contrôler au mini 5 moteurs à terme : il va me falloir combien d'arduino pour ça ? big_smile

Bonjour bougie
le probleme avec un moteur pas a pas, c'est que tu ne connais jamais sa position. Il te faut une reference. Je pense a une barriere optique et un petit disque avec une encoche ou un trou que tu places sur l'axe du moteur, derriere le quadrant. A chaque mise sous tension, tu fais tourner le moteur pour amener l'aiguille sur l'origine de ton echelle. L'ideal serait d'avoir une autre barriere utilisee comme "fin de course".
Il faut alors compter 3 ou 4 signaux par moteur. Step, Dir et Origine ( et si possible Fin). Avec tes lampes, cela correspond parfaitement pour Arduino Mega (54 entrees/sorties).
Une autre solution c'est d'utiliser des servos comme on utilise en radio-commande. Tu as alors besoin d'un seul signal (PWM) par moteur.
A ton service si tu as besoin d'autres infos.
Jacques

je suis conscient de devoir connaitre la position du moteur. Mais dans mon cas je me suis dit (dans le cas du moteur affichant la vitesse) : je place "manuellement" le moteur au début une bonne fois pour tout. Si maintenant je sais dans l'arduino que j'ai une vitesse de 160Km/h et qu'il me faut 42 step pour amener l'aiguille à cette position, lors de l’extinction, je fais -42 step et ça roule, non ? Un problème peut serte apparaitre en cas de crash.

Utiliser des servos semble est une bonne idée. j'ai cependant éliminé cette option par rapport au prix. aurais-je eu tord ?
Sachant que je peux peut être récupérer des moteurs pas à pas dans de vieilles imprimantes, mais c'est pas l'argument premier.

Ok pour l'arduino mega. Ça me semble très correct 54 E/S.

bougie:
Ce que je veux faire ce sont les manos à gauche : ImageShack - Best place for all of your image hosting and image sharing needs

Pour mes manomètres et tous ce qui est cadran rond avec une aiguille, je pense utiliser un moteur pas à pas. On peut donc facilement imaginer mon problème.

bonjour
Comme toujours il faut bien poser les bases du probleme :
Là il semble que ce soit pour rendre un rendu un peu réaliste en "simulateur train amateur" des mano ?
si oui et en dehors de l'aspect mécanique et esthétique, la solution arduino+servo en positionnement d'aiguille (aiguille du mano là ! :grin: ) est surement une bonne solution.
C'est simple à mettre en œuvre et pas trop cher, la vraie contrainte sera mécanique mais pas trop compliquée à résoudre, Il faut déjà déterminer l'angle de course des mano (à la louche je dirais 270°)

Artouste:
bonjour
Comme toujours il faut bien poser les bases du probleme :
Là il semble que ce soit pour rendre un rendu un peu réaliste en "simulateur train amateur" des mano ?
si oui et en dehors de l'aspect mécanique et esthétique, la solution arduino+servo en positionnement d'aiguille (aiguille du mano là ! :grin: ) est surement une bonne solution.
C'est simple à mettre en œuvre et pas trop cher, la vraie contrainte sera mécanique mais pas trop compliquée à résoudre, Il faut déjà déterminer l'angle de course des mano (à la louche je dirais 270°)

C'est tout à fait ça.

L'approximation des 270 est bonne. J'en voit quand même deux qui peuvent se contenter de 220.
Une image ou on voit mieux les manos : http://1.bp.blogspot.com/_U9KPZgWQvfo/TNUsIwSMQTI/AAAAAAAAASc/qERrvqoQbo4/s1600/3-76558-8lille.JPG

Pour ce qui est l'aspect mécanique et esthétique, ce n'est pas ce qui me préoccupe le plus pour le moment. En utilisant des servos ça risque même de bien me simplifier la tache.
Si j'utilise des moteur, j'ai pensé à utiliser un jeu d'engrenage pour bien démultiplier le moteur et rendre le déplacement de l'aiguille plus fluide et précis.

Avez vous des références de servo bien et pas chère ?

bougie:

Artouste:
bonjour
Comme toujours il faut bien poser les bases du probleme :
Là il semble que ce soit pour rendre un rendu un peu réaliste en "simulateur train amateur" des mano ?
si oui et en dehors de l'aspect mécanique et esthétique, la solution arduino+servo en positionnement d'aiguille (aiguille du mano là ! :grin: ) est surement une bonne solution.
C'est simple à mettre en œuvre et pas trop cher, la vraie contrainte sera mécanique mais pas trop compliquée à résoudre, Il faut déjà déterminer l'angle de course des mano (à la louche je dirais 270°)

C'est tout à fait ça.

L'approximation des 270 est bonne. J'en voit quand même deux qui peuvent se contenter de 220.
...

Avez vous des références de servo bien et pas chère ?

Dans votre cas et compte tenu des contraintes et du cahier des charges, les moins chers seront les meilleurs :grin:
En boutique france modelisme rapidement dispo comptez ~+/- 12 €
sinon mais il ne faut pas compter les jours
voir par exemple :
http://www.dealextreme.com/p/mystery-9g-mini-servo-with-accessories-1-3kg-torque-20023

Et j'aurai besoin d'un "adaptateur" comme celui la http://207.58.139.247/products/81 ? Ou je vais pouvoir brancher directement mon servo sur les sorties PWM de mon arduino ?

bougie:
Et j'aurai besoin d'un "adaptateur" comme celui la http://207.58.139.247/products/81 ? Ou je vais pouvoir brancher directement mon servo sur les sorties PWM de mon arduino ?

non ! même pas (elle est pas belle la vie ? :grin: )
un(des) servo ça ce commande en direct par l'arduino , la seule chose à prévoir c'est une petite alim externe "de puissance" :grin:
au hasard genre ça :
http://www.electronique-diffusion.fr/product_info.php?cPath=8_56_57&products_id=86650

Effectivement, la vie est belle 8)

Donc si je récapitule en vitesse, avec ce qui suis, je peux être heureux ? :

Le moteur pas a pas va très bien pour un mano, rien que la 206 de ma mère en est équipée (pourquoi ne pas récupérer des tableaux de bord en casse? c'est tout fait...). Quand on met le contact, les aiguilles tremblent autour de 0, c'est simplement que le proc du tableau de bord fait tourner les moteurs vers 0, et comme l'aiguille est en buttée, alors au bout d'un certain moment, on sera sûr d'être à 0 quelle que soit la position d'origine... (faut le voir pour comprendre...)

beaucoup de systèmes à aiguille sont à base de PAP et une simple butée. l'avantage du TDB, c'est que tout y est déjà, il t'en faut deux pour être heureux!

Pour les TDB, on m'en avait parlé. Mais je ne connais(sais) aucun modèle susceptible d’être bien. Maintenant, un TDB dans une casse, je ne sais pas à combien ça se monnaye.

Ça reste à réfléchir.

J'avoue que je suis plus que très séduit pour le servo. Y'a juste à coller une aiguille dessus et c'est tout prêt je pense (à moins que la résolution ne soit vraiment pas top auquel cas il faudrait ajouter des engrenage pour améliorer tout ça).

bougie:
Pour les TDB, on m'en avait parlé. Mais je ne connais(sais) aucun modèle susceptible d’être bien. Maintenant, un TDB dans une casse, je ne sais pas à combien ça se monnaye.

Ça reste à réfléchir.

J'avoue que je suis plus que très séduit pour le servo. Y'a juste à coller une aiguille dessus et c'est tout prêt je pense (à moins que la résolution ne soit vraiment pas top auquel cas il faudrait ajouter des engrenage pour améliorer tout ça).

vu l'application les servo sont une solution simple à mettre en oeuvre.
la librairie servo est facile à utiliser.
au pire un peu de mecanique pour translater 270°/180°.
exemple avec l'exemple KNOB et un servo basique (pas top désolé pour la qualité de video)

www.risle.ovh.org/servo.avi

// Controlling a servo position using a potentiometer (variable resistor) 
// by Michal Rinott <http://people.interaction-ivrea.it/m.rinott> 

#include <Servo.h> 
 
Servo myservo;  // create servo object to control a servo 
 
int potpin = 0;  // analog pin used to connect the potentiometer
int val;    // variable to read the value from the analog pin 
 
void setup() 
{ 
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object 
} 
 
void loop() 
{ 
  val = analogRead(potpin);            // reads the value of the potentiometer (value between 0 and 1023) 
  val = map(val, 0, 1023, 0, 179);     // scale it to use it with the servo (value between 0 and 180) 
  myservo.write(val);                  // sets the servo position according to the scaled value 
  //delay(15);                           // waits for the servo to get there 
}

Tout ça me semble parfait :slight_smile:

Merci pour votre aide.

Une petite question par rapport au chois du servo : dans aucune des descriptions que j'ai vu il n'est question de l'angle de course. Ca veut dire quoi ? Qu'il peut tourner indéfiniment tant qu'on alimente, cad que sa courses n'est pas limitée ?

bougie:
Une petite question par rapport au chois du servo : dans aucune des descriptions que j'ai vu il n'est question de l'angle de course. Ca veut dire quoi ? Qu'il peut tourner indéfiniment tant qu'on alimente, cad que sa courses n'est pas limitée ?

bonjour
les servos (modélisme) sauf spécifications différentes ont une course standard de 180° .
dans le sketch arduino posté plus haut et la video , le servo effectue une course de 180° commandé par un potentiomètre rotatif basique de course 270°.

anecdotiquement (posté ce jour)
Voir ici comment un petit servo est utilisé en "indicateur" :grin:

J'ai reçu aujourd'hui mes arduinos :slight_smile: Il ne me manque plus que mes servos :stuck_out_tongue:
Je vais bientôt pouvoir commencer mes tests \o/