Conseils moteurs, boutons poussoirs & alim

Bonjour à tous,

J'ai plusieurs interrogations et j'aurai besoin !

J'ai envie d'essayer de faire une machine a trier les skittles / mms ( pas très original hein :smiley: )

J'aimerai y mettre 5 boutons ( 1 par couleur de bonbon ) de manière a pouvoir choisir la couleur que l'on veut avoir.

Pour ce qui est du branchement des boutons sur l'arduino, que me conseillez-vous ?

Est-ce possible de brancher 5 boutons en INPUT_PULLUP ? est-ce mieux de le faire avec des résistances rajoutées ( 1 par boutons donc ) ? Est-ce utile de mettre un condensateur ( a effet anti rebonds si je ne dis pas de bêtises ? ).

en cas de branchement en PULLUP / PULLDOWN, une résistance de 10K ohm fait l'affaire ?

Ensuite vient le cas des moteurs.

J'ai plusieurs choix , le servo a rotation continu et le moteur pas a pas ( uni ou bipolaire ? )

Les moteurs devront :

--Pour le 1er, il fera tourner un ' plateau ' qui présentera le bonbon devant le capteur de couleur, puis l'enverra vers le tuyau afin de l'envoyer dans le bon récipient ( J’espère que mon explication n'est pas trop mal formulée) ( il devra tourner de 90° 4 fois )

--Pour le 2eme, il aura simplement le rôle de positionner le tuyau vers le bon récipient ( disposé sur 360°), il y aura 6 récipient donc un tous les 60°

Selon vous, quel type de moteur est le plus adapté ?

Pour ce qui est des branchements, si j'utilise des servo , un shield n'est pas forcément nécessaire ?
Et si c'est des pas à pas ?
Y'a t-il besoin de condensateurs ? diode ?

Edit : J'ajoute des questions sur les alims >.< voir plus bas,

Un grand merci pour vos réponses !

David

Bonjour

Pour les boutons poussoirs, sujet maintes et maintes fois traité partout sur le net y compris ici.
Chacun a sa fibre, perso je te conseille ceci

Tes questions montrent d'ailleurs que tu as déjà fait pas mal de recherches.

A vue de nez je dirais moteur pap pour le plateau et servo pour le sélecteur.
Mais l'un comme l'autre ne coûtent que quelques euros.

Donc là j'aurais plutôt tendance à te dire : franchis le pas, arrête de cogiter et entre dans le concrêt en expérimentant par toi-même. C'est le propre de l'arduino : fais des montages/protos pour tester.

Commande tes premiers composants et commence à jouer :wink:

Même le rebond des boutons est intéressant à observer au début.

A part que "ma fibre" me fait préférer le condensateur (100 nF céramique est une valeur passe partout) je partage l'avis général de "bricoleau" : lance toi.

Mais ne teste qu'une chose nouvelle à la fois.

Renseigne-toi sur les moteurs pas à pas : il en existe de deux sortes, unipolaire ou bipolaire, ils ne se commandent pas de la même façon. Cherche des articles de vulgarisation ils sont assez facile à trouver.
Bien que les bibliothèques de gestion des moteurs pas à pas gèrent généralement les deux types de moteurs et se suffisent à elles même, un "bon vernis" sur le fonctionnement de ces moteurs te sera bien utile lorsque les problèmes inévitablement se manifesteront un jour ou l'autre.

Servo :
Attention les termes utilisés sont trompeurs.
Les "vrais" servos ont des débattement de 0/90°, 0/180° parfois 0/270°, jamais plus.
Ce que l'on trouve sous le vocable "servo à rotation continue" n'est en fait qu'un moteur classique qui se commande (marche avant, marche arrière, plus ou moins vite) avec des commandes copiées sur celle des servos.
Il faut bien voir qu'avec ce type de moteur tu n'a aucune indication de la position de l'axe du moteur.
Alors que la connaissance de la position de l'axe est le principe même des servo et est important pour ton projet.

J'aurais tendance à penser que le servo à rotation continu n'est pas un bon choix et je prendrais deux moteurs pas à pas.

Pour faire ton choix attend de voir s'il arrive d'autres réponses, il y a ici des membres avec des sensibilités et des expériences différentes, c'est ce qui fait la force et la richesse de ce forum

Bonsoir

Un projet pour trier des sucreries, je suis preneur :slight_smile:

Bonsoir
Entièrement d’accord avec @68tjs.

Pour le moteur, le pas à pas est préférable, tu sais toujours où il est vu que c’est toi qui le commande, le plus courant est le Nema17
Avec le driver de Pololu A4988 et la libraire AccelStepper décrite ici.

Pour ce qui est des servos, ce n’est pas la peine de recréer le PWM puisque des interfaces i2C à 16 ports ne coutent moins de 4€, c’est le PCA9685 avec la librairie Adafruit PWM Servo Driver Library

Je me réjouis de voire cette machine à l'oeuvre.

Cordialement
jpbbricole

Bonjour,

Les cartes arduinos ont des broches paramétrables qui vous permettront d'utiliser des boutons poussoirs sans avoir à ajouter de résistances supplémentaires. La bibliothèque de Bricoleau vous facilitera la tâche.

Concernant l'ajout d'un condensateur anti-rebond, c'est à vous de choisir selon vos critères personnels et des arguments qui vous seront donnés. Pour ma part, les rebonds d'un bouton poussoir sur une broche arduino ne sont en aucun cas destructeur. Donc l'ajout d'un filtrage matériel n'est pas nécessaire si on peux le faire par logiciel.

Concernant le choix des moteurs, je pense que l'utilisation de deux moteurs pas à pas sera bien adapté à votre projet. Ils vous permettront un positionnement plus précis et une gestion de l'accélération /décélération plus simple. Seulement 2 capteurs à utiliser pour connaître leurs positions angulaires voir même un seul avec un bon montage.

Il existe dans le commerce des cartes de commande de moteur pas à pas que vous pourrez facilement interfacer avec l'arduino et des librairies sont disponibles pour simplifier la programmation.

Bon courage et n'hésitez pas à demander conseil et aide si besoin...

Salut à tous,

Un grand merci pour vos avis c'est super !

La bibli que bricoleau à montrée à l'air top pour la gestion des boutons ( a voir si je l'utilise, mais en tous les cas elle est très intéressante ! )

68tjs, merci pour ces précisions sur les servo, je vais un peu me familiariser avec les moteurs pas à pas !

Avec les différents conseils que vous m'avez donné et les infos que j'ai pu voir sur internet je vais donc me tourner vers deux moteurs pas à pas. ( Avec driver , ceux conseillées par jpbbricole me semble bien !)

Au niveau des shields, pleins de modèle différents de a4988 j'imagine qu'ils sont plus ou moins équivalent ( peut être que ceux fait en Chine sont un peu moins bon ( et encore des fois c'est kif-kif ) mais le prix est moins élevé.

Zlika, pour ce qui est des boutons poussoirs, ce n'est pas gênant d'en utiliser 4-5 en mode INPUT_PULLUP donc ? Merci également pour les avis sur les moteurs !

Je vais commander ce qu'il me manque, tester un peu tout ça, et essayer de me lancer dans la conception, je vous tiendrai informé de mes avancées ! ( et du projet fini si j'y parviens ! )

Bonne journée et merci encore pour vos conseils !

Non, aucun problème du moment que tu as à disposition suffisamment de broches libres. Par exemple, un arduino uno possède 14 broches numériques configurables individuellement en entrée ou sortie. Les 14 broches disposent en interne d'une résistance pull-up que tu pourras activer depuis le programme. À toi de t'organiser pour connecter tout ce qui sera nécessaire dans ton projet (drivers moteur, boutons poussoirs, cellules de détection, module détecteur de couleur,...).
Pour information, le driver moteur pololu proposé par Jpbbricole se pilote avec 2 broches. Une broche pour indiquer le sens de rotation du moteur, et l'autre pour faire avancer les pas.

Par exemple, un arduino uno possède 14 broches numériques configurables individuellement en entrée ou sortie

Non il en possède 19, les broches soit disantes analogiques sont des broches numériques comme les autres tant que tu n'appelle pas la fonction analogRead().

Okay cool alors pour les boutons je les brancherai en input :slight_smile:
Petite précision concernant les moteurs pas à pas
J'ai vu des nema 17 qui tournent à 1.7 ampère ex celui là
moteur
Ou d'autres qui sont à 0.4
moteur 2
La différence est leur " force"?
Pour mon cas le 0.4 serait donc suffisant non ?
Merci d'avance

Oui, ces deux moteurs ont un couple différent. Il est difficile pour nous de te dire quel couple est nécessaire dans ton projet car ce paramètre dépend de la masse des pièces à mettre en mouvement et du rapport que tu pourrait appliquer si tu utilises des engrenages ou courroies. Mais celui qui a le moins de couple devrait être suffisant si tu entraîne ton plateau à sa périphérie (donc avec un rapport important) .

Merci de ta réponse
Les pièces à entraîner seront légères je dirai pas plus de 300 400g ( et encore je pense que je vise large)
Je vais donc me tourner vers les plus petits alors merci !

Tu as déjà les pièces mécaniques disponibles (récupération) ou tu utilises une imprimante 3D?

Au début je vais faire des pièces avec de la reçup ensuite avec une imprimante 3d
Le plus petit moteur a un couple de 26ncm
26 Newton centimètre si je ne me trompe pas ce qui équivaut à 2.7kg par cm ?
C'est donc amplement suffisant si je n'ai pas fait d'erreur

Si je me souviens bien de mes cours de mécanique, oui, donc 2,7kg à une distance de 1cm de l'axe du moteur ou 270g à 10cm.

Super, ben du coup merci je vais me touner vers ceux la

Du coup, je vais avoir deux moteurs : moteurs pas à pas
Je vais donc devoir les alimenter avec une alim externe de 12v et de minimum 1A si je ne me trompe pas ?

Un troisième moteur Servomoteur servira uniquement a mélanger afin que les bonbon ne se bloquent pas ( il tournera donc peu ).
Je devrai aussi l'alimenter autrement qu'avec l'arduino ? j'ai peur que l'arduino ne soit pas capable de lui fournir le nécessaire ( il nécessite 0.5-0.6 A en 4.6 -6v). Sachant que l'arduino alimentera déjà le capteur de couleur ! Il me faudra donc une autre alim de 6V ( qui pourrait éventuellement alimenter l'arduino par la même occasion ?

Une fois que tout ce beau monde a la bonne tension avec une intensité suffisante ( dites moi si je m'exprime mal, je ne suis pas super a l'aise encore ) il faut mettre en commun les masses ?

Est-ce possible de n'avoir qu'une alim ( par ex 12 V avec 2-3 ampères semble suffisant ) et de reduire la tension fourni au servo a 6 ( pour l'arduino recevoir du 12V ne pose pas de problème ), si oui comment ?
Un régulateur ? des resistances ?

Encore une fois, si je ne suis pas très clair je m'en excuse et n'hésitez pas a me le dire, que j'essaye de mieux expliquer ma pensée.

Merci d'avance :slight_smile:

david74:
Super, ben du coup merci je vais me touner vers ceux la

Du coup, je vais avoir deux moteurs : moteurs pas à pas
Je vais donc devoir les alimenter avec une alim externe de 12v et de minimum 1A si je ne me trompe pas ?

Je mettrai plutôt au moins 2A.

david74:
Une fois que tout ce beau monde a la bonne tension avec une intensité suffisante ( dites moi si je m'exprime mal, je ne suis pas super a l'aise encore ) il faut mettre en commun les masses ?

Oh que oui!

david74:
Je devrai aussi l'alimenter autrement qu'avec l'arduino ? j'ai peur que l'arduino ne soit pas capable de lui fournir le nécessaire ( il nécessite 0.5-0.6 A en 4.6 -6v). Sachant que l'arduino alimentera déjà le capteur de couleur ! Il me faudra donc une autre alim de 6V ( qui pourrait éventuellement alimenter l'arduino par la même occasion ?

Attenttiol l'Arduino c'est entre 7 et 12v (Vin) 9v est préférable. Je te conseille d'oublier le 5V de l'Arduino et de faire comme suit:
depuis l'alim principale 12v. qui va alimenter les moteurs pas à pas (MAPA) tu achète une poignée d'abaisseurs de tension comme ceci, tu en prend 1 pour faire du 5V. pour les servo, capteur de couleurs et d'autres futurs périfériques et un autre pour faire du 9v. pour le jack (Vin) de l'Arduino.

Cordialement
jpbbricole

+1
On trouve en ligne ces produits sous le nom de "convertisseur abaisseur de tension" ou "step-down converter" a des prix bien plus bas (ebay : 5 fois moins cher mais délais de livraison 3 à 4 semaines).
Tout dépend si tu privilégies le prix ou la rapidité de livraison.

Livraisons rapides et un peu moins cher mais en France : https://fr.shopping.rakuten.com/s/convertisseur+de+tension?s=1

Salut, encore merci pour vos éclaircissements !

Le fait de n'avoir qu'une seule alim pour toutes la machine est en plus bien plus pratique !

Pour ce qui est des abaisseurs de tensions, c'est une super idée merci !

Ils sont réglables donc ? ( en haut a droite, l'éspèce de potentiomètre gris sur la lien envoyé par jpbbricole ? )

Si je prends une alim 12v 3 Ampères, ( disons que les moteurs pas à pas tournent a fond ( ils sont annoncés a 0.4 on va prendre large 0.8 chacun ) ce qui donne 1.6A pour les deux, ensuite l'Arduino ( Uno ou Nano ) avec un abaisseur de tension pour la réguler a 9v il pomperait 0.5 ? l'abaisseur prendrait-il un peu aussi ?
Même cas pour le servo, il est annoncé a 0.6A, mais si j'utilise un abaisseur pour mettre la tension aux alentours de 5V va t-il pomper plus de courant ?

Navré si mon paté est flou, j'ai essayé de faire au mieux j'ai peur de m'être très mal expliqué

david74:
Ils sont réglables donc ? ( en haut a droite, l'éspèce de potentiomètre gris sur la lien envoyé par jpbbricole ? )

Oui

david74:
Si je prends une alim 12v 3 Ampères...

C'est bien de prévoir large.

david74:
un abaisseur pour mettre la tension aux alentours de 5V va t-il pomper plus de courant ?

Non, ces abaisseur ont un rendement assez élévé.

Zlika:
Pour information, le driver moteur pololu proposé par Jpbbricole se pilote avec 2 broches. Une broche pour indiquer le sens de rotation du moteur, et l'autre pour faire avancer les pas.

C'est 3 broches, ne pas oublier le signal ENA, qui permet de désactiver le driver ainsi le les MPAP ne reste pas toujours sous tension (surchauffe) Se signal serait commun s'il y a plusieurs drivers.

Bonne soirée et bonne bricole
jpbbricole

Salut, j'ai essayé de faire un montage avec Fritzing, c'est pas très clair, j’espère que ça reste lisible !

La batterie n'est pas la bonne, j'ai mis ce que j'ai trouvé.
Je n'ai pas mis non plus de régulateur de tension entre la batterie et le Servo / Capteur de couleur, mais il y en aura bien un ( 5V )
Tous les fils des moteurs pas à pas ne sont pas non plus branché, j'ai surtout voulu faire un schéma pour l'alimentation.

A première vue un câblage comme ça vous semble correct ?

Merci d'avance ! :wink: