Bonjour,
Je développe un projet de panneaux solaires rotatifs.
Sauf que je suis plus doué en mécanique qu'en Arduino
J'ai acheté :
Arduino UNO
Arduino Motor Shield fixé sur le dessus
Moteur unipolaire Fiche technique Modéle 1805283
alimentation 12v DC max 24w qui produit 12.27v
J'ai branché mes 4 fils de bobine comme sur la doc + les 2 coms relié au GND
Branché l'alim 12v au VIN + GND
Branché l'aduino au PC via USB
j'ai envoyé le programme qui était donné à la fin de ce tuto
Le moteur à jamais tourné correctement, juste un pas en avant et un en arrière, ainsi de suite.
Puis je sentais que les cartes devenais brulante alors j'ai tout arrêté et débranché.
Depuis l'aduino affiche ON quand je le branche au PC via usb mais pas reconnue
La puce parcontre elle chauffe encore
Je comprend pas
Quelqu'un peu m'aiguillier sur mes erreurs ?
J'ai lu quelque part qu'il fallais supprimé la liaison VIN du motor-shiel pour ne pas alimenté le Arduino mais mon but n'est pas d'avoir 2 alimentation séparé mais une seule.
Est ce obligatoire sachant que l'alim dépasse un peu les 12v => 12.27v mesuré
Le shield utilisé est un pont en H et est fait pour travailler avec des moteurs BIPOLAIRES, ou avec des moteurs unipolaires utilisés en modes bipolaires, ce qui est possible avec le moteur 6 fils utilisé.
Avec le montage fait, quand on met du 12V sur un enroulement, on met du 0V sur l'autre enroulement de la même phase. C'est comme un transformateur alimenté d'un côté et en court-circuit de l'autre. Cela chauffe.
Dans un premier temps, il faut débrancher les deux fils communs. Normalement, cela ne devrait palus chauffer autant, mais on devrait avoir deux fois moins de couple que possible.
Si cela fonctionne, il ne faut utiliser qu'un seul enroulement par phase. Genre:
sur B- du shield mettre le fil bleu du moteur
sur B+ du shield mettre le fil blanc du moteur (commun)
sur A- du shield mettre le fil vert du moteur
sur A+ du shield mettre le fil jaune du moteur (commun)
fils noir er rouge non branchés.
Les lettres A et B peuvent être inversées, ainsi que pour une lettre les + et les -, les fils noir avec vert et les fils rouge et bleu. Suivant les inversions, cela inversera le sens de rotation.
Cela chauffe ? Mais cela expliquerais que mon Arduino soit HS ?
Quel carte faudrait t'il que j'achète pour utiliser toutes les ressources de ce moteur Unipolaire en 12v?
J'ai trouvé la UNL2003 mais j'ai l'impression que c'est pour du 5V et faible I de 350mA MAX
Mon but est d'avoir du couple car le moteur doit tenir en position la rotation de panneaux solaire, certes j'ai des engranges pour augmenté le couple derrière mais si je divise pas deux, cela fais
beaucoup de perte.
Dans le cas de l'utilisation du moteur en Bipolaire, quel est la différence entre les deux solution que tu donne ?
Pour des moteurs Bipolaire, je trouve beaucoup de 24v et 1 à 2A, ce qui ferais un voltage trop grand pour le motor-shiel qui est limité à 12v je crois
Je ne trouve pas de bon compromis
Un moteur unipolaire c'est comme un moteur bipolaire dont on a doublé les enroulements. Pour une phase, dans un bipolaire on utilise la seule bobine, dans un unipolaire, on va utiliser soit une bobine, soit l'autre. Si on a un unipolaire et que l'on laisse tomber un des deux enroulements, on a exactement le même couple possible que si on l'utilise en mode unipolaire.
Vu que tu as ce matériel, autant faire avec. On ne gagnerait rien à utiliser un équivalent ULN2003.
Note: pour le ULN2003, les 5V c'est pour la commande. Cela signifie que cela fonctionne avec une nano, mais pas vraiment avec une ESP (3,3V) En sortie, on peut aller jusqu'à 50V. Et les 500mA c'est possible seulement si on n'a que deux enroulement utilisés en même temps, pas plus, ce qui est le cas avec un seul moteur.
Pour éviter de devoir garder le moteur sous tension en permanence il serait peut-être préférable d'utiliser une transmission par vis sans fin, qui peut être non réversible.
Il faudrait peut-être supprimer la liaison lorsque l'Arduino est connecté au PC.
Exactement, j'ai le matériel dispo cité au dessus, on va essayer de faire avec
Du coup en partant sur le mode bipolaire
je garde tout mes branchements identique sauf le GND que je relie pas au 2 fils commun du moteur
j'utilse se programme ensuite
On verra ensuite si le couple est nécessaire.
Oui c'était une bonne idée mais le soir le système doit revenir en arrière d'autant qu'il à avancé dans la journée. 10°/heures pendant 13h puis retour en arrière de 130°
Mon seul problème, c'est le vent.
Soit la force moteur alimenté suffit (le moteur va être sous tension pour utiliser son couple radial dans mon cas 12v*0.42a = 5w consommé si je me trompe pas ?
Soit la force moteur ne suffit pas ou que je ne veux pas l'alimenter en permanence et il faudrait une sorte de targette qui ressort à chaque déplacement dans des trou spécifiques mais je n'ai pas encore trouvé comment faire
Je connaissait pas cette avantage des vis sans fin, merci pour l'idée, c'est une très bonne solution
Cette vidéo explique très bien
Je pense que cela permettrais d'avoir le moteur non alimenté hors déplacement nécessaire et plus de problème de vent.
Si je comprend le principe, c'est les frottements qui empêche le mouvement inverse ?
La question : mon engrange sous plan du dessus qui maintient la structure fait 240 dent sur 400mm diamètre réalisé en plusieurs pièce à l'imprimante 3D, il va valoir les réimprimé en engrange hélicoïdale si j'ai bien compris.
La vis sans fin, il faut que je regarde dans SolidWorks si c'est disponible.
Mais tout cela va t'il être assez solide en résine ?
N'étant pas un spécialiste de l'impression 3D (je sous-traite contre chocolat mes petites pièces au collègue de techno) j'ai quand même un doute sur des pièces de friction en plastique... En vrai nylon peut-être mais les plastiques d'imprimantes 3D... Au minimum les polir.
Sinon sur le net on prouve aussi de la pignonnerie traditionnelle en bronze.
Oui, mais je pense qu'on a intérêt si cela passe de ne mettre plus qu'un seul enroulement en jeu pour pouvoir profiter du couple maximal au cas où.
Par contre avec le pont, il est passible de ne le faire conduire en PWM par le programme. Cela diminue le courant et si on n'a pas besoin du couple maximal, le moteur chauffe moins et sa durée de vie augmente.
Quand le moteur est à l'arrêt, il n'a pas besoin de vaincre les frottements secs. Ces derniers vont d'ailleurs aider au maintien en position fixe. Certains drivers pour bipolaires le font automatiquement. Avec la plupart des drivers utilisés ici (A4988, TB6600...) ce n'est pas possible. Maintenir un courant réduit peut empêcher une erreur de pas à la reprise de la tension. Avec une vis sans fin, cela peut en plus aider. Autant en profiter ici. Par contre cela nécessitera de gérer le pas à pas sans bibliothèque, ce qui n'est pas très compliqué.
Autre solution plus simple mais moins parfaite, c'est d'utiliser le moteur en deux phases à la fois et pour l'arrêt déconnecter une phase. Le moteur consommera ainsi deux fois moins. C'est faisable à priori avec toutes les bibliothèques, mais pour l'arrêt on se décale d'un demi-pas.
C'est vrai si on alimente qu'un seul enroulement sous tension. Mais en en alimentant deux, cela augmente le couple de 40%. C'est ce qu'on fait en général. La plus part des drivers utilisent systématiquement le mode deux phases à la fois pour le mode pas entier.
Du coup, c'est 2 fois 5W.
La vis sans fin réduit la vitesse, mais va aussi augmenter le couple.
Effectivement
L'inconvénient de la vis sans fin (et des engrenages de façon général est qu'elle introduit du jeu, on peut ne pas avoir la même position si on vient d'un côté ou de l'autre). Dans certains cas on y met en dispositif de rattrapage (par exemple deux roues avec un ressort entre elles pour qu'il n'y ait plus de jeux).
J'utilise de la résine dont certaines ont des facultés de résistance assez importante, à tester donc.
Mon soucis, c'est que j'ai un plateau bas accroché à un support en bois lourd et un plateau au dessus avec 8mm d'espace entre les deux.
Mettre une vis sans fin va pas être simple
Dans cette vidéo, je vois que je peux garder mon engrenage droit mais je suppose que mon Module doit être le même que pour la vis sans fin.
Pour éclaircir mon projet afin que vous puissiez visualiser si certaines contraintes ou tolérances sont nécessaire ou pas.
J'ai un panneau solaire de 160w qui sera installé sur une structure en profilé alu avec angle réglable qui me permettra de changer l'inclinaison en fonction des saison manuellement.
Je voudrais que ce panneau commence en position 0° à 8h (En gros le matin, pas besoin de précision folle niveau heure) et que toutes les heures le moteur tourne d'un certains angle pour que le plateau bouge en conséquence.
Environ 12 déplacements de panneau dans la journée de 10 dégrée
A la fin de journée (20h), le panneau aura tourné de 120° environ et je le fais revenir au départ à 0° en sens inverse. (Cela évitera les problème d'enroulement de fils sur lui même)
Je met un délai d'attente de 12h et le programme recommence tous les jours.
Je n'ai donc pas besoin :
D'une très grande précision de déplacement
D'un système d'horlogerie, "delay" dans le programme ira très bien
J'ai besoin :
Que le couple moteur suffise à faire tourné le plateau
Que le moteur + Arduino ne consomme pas 50w car sinon je mange 1/3 de ma production
Que en cas de vent, le plateau ne se déplace pas (Vis sans fin parait être une excellente solution)
Si cela passe ? dans quel sens vous dites cela ?
Il va falloir géré au niveau du programme aussi car j'ai peu de connaissance en Arduino
et je m'appuis sur les programme fait en ligne 0
[quote="vileroi, post:13, topic:1134564"]
Par contre cela nécessitera de gérer le pas à pas sans bibliothèque, ce qui n'est pas très compliqué.
[/quote] Je vous suit
[quote="vileroi, post:13, topic:1134564"]
Autre solution plus simple mais moins parfaite, c'est d'utiliser le moteur en deux phases à la fois et pour l'arrêt déconnecter une phase. Le moteur consommera ainsi deux fois moins. C'est faisable à priori avec toutes les bibliothèques, mais pour l'arrêt on se décale d'un demi-pas.
[/quote] Il suffit de l'anticipé dans le déplacement, il faut savoir que tout va se faire au visuel pour le déplacement donc on revient à limiter l'importance d'une très grande précision.
Cela nous aideras surement
Oui 10w lors de son alimentation, en gros 10 secondes dans l'heure ? Le reste du temps le moteur n'est pas alimenter grâce à la vis sans fin
Merci à vous deux pour vos conseils et votre aide précieuse
Normalement l'engrenage ne devrait pas être droit. S'il l'est ici ce n'est que parce qu'il est suffisamment fin (et donc fragile) pour que ça ne soit pas critique.
Personnellement, je pensait vraiment faire plus simple :
8h // Démarrage programme (point 0)
Delay "3600000" soit une heure
9h // Programme de rotation => Rotation de 10°
Delay "3600000"
ainsi de suite jusqu'à 21h
Delay "3600000"
22h // Retour au point 0
Delay "3600000" x 10h
Reboot du programme
Un encodeur rajouterais de la programmation que je ne gère pas du tout