1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

Driver de puissance maison pour moteur pas à pas.

Discussion dans 'Electronique spécifique CNC' créé par mdog, 2 Septembre 2008.

  1. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Bonsoir à tous!

    Je poste ici afin de vous permettre de suivre l'un de mes projet, et éventuellement de recueillir quelques remarques qui pourrait m'être utiles :wink:.

    Après m'être pas mal amusé avec des drivers à base de L297/L298 qui se sont révélés décevants, je me lance dans la conception d'un driver pour moteurs pas à pas autour du LMD18245T.
    Ce composant est un pont en H, avec chopper intégré contrôlé en amont par un DAC avec entrée binaire sur 4 bits, idéal donc pour faire du micropas, voir le datasheet ici :
    http://www.dioda.cz/prodej/datasheet/LMD18245T.pdf
    Capacitées du composant : 3A max (en continu), DAC 4 bits soit 15 niveaux d'intensité + niveau 0.

    Je prévois de contrôler le composant depuis un microcontrôleur (un pic puisque je connais bien, surement le 16F57 qui est bon marché et largement suffisant pour cette application).

    Sur le papier, c'est tout simple, pour l'instant j'ai été confronté à un seul problème que j'ai finalement résolu :
    Il faut pour que le micropas soit viable, que les deux phases du moteurs évoluent en même temps, ce qui est difficile depuis un microcontrôleur puisque les états des sorties ne sont pas modifiée en même temps, donc les intensitées n'auraient pas variées en même temps dans chaque phase du moteur, la meilleure solution que j'ai trouvé est d'utiliser un Latch entre le microcontrôleur et les LMD18245, comme ça plus de soucis :wink:. Après recherche j'ai trouvé le 74F841 qui possède 10 E/S, juste ce dont j'ai besoin et dispo dans un mag ou je peux aller.

    Niveau électronique ce sera donc très simple puisque les LMD18245 intègrent toute la partie puissance. Pour chaque moteur il faudra 2 LMD18245, un Latch 10 E/S (74F841) et un 16F57 + quelques composants passifs, soit un budget d'environ 35€/moteur, mais heureusement j'ai réussi à avoir des LMD18245 en samples (gratos), ce qui va me permettre quelques tests sans avoir à stresser.

    Niveau programmation c'est tout simple aussi puisque je vais opter pour un contrôle en STEP/DIR, un simple tableaux de variables dans lequel on stocke les séquences d'alim des moteurs (en pas entier, demi pas ou micropas au choix, je m'oriente vers du 1/8e de pas), et on déroule le tout en fonction des données reçues sur les entrées STEP/DIR.

    J'ai déjà conçut une carte à base de 16F876 qui me permet de contrôler manuellement les moteurs en STEP/DIR et d'afficher les positions sur chaque axe, elle sera donc certainement intégrée au système final pour arriver à une carte toute complète. Je posterai bien sûr les schémas dès qu'ils seront au propre :wink:.

    En attendant n'hésitez pas à poster vos remarques/suggestions/encouragements/insultes(???) :wink:

    @+
    Mdog
     
  2. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
    Driver de puissance maison pour moteur pas à pas.
    Perso je t'aurais conseillé de venir nous rejoindre sur PAPSI :wink:

    Sinon, pas besoin de latch. Tu peux mettre à jour un port entier (8s) en un cycle.
     
  3. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Bonsoir, merci de ta réponse :wink:.

    Oui pour un port entier, mais j'ai besoin de deux ports malheureusement :(. Il faut pour chaque LMD18245, 4 sorties pour le DAC + une pour le sens, soit 10 sorties, du coup je vais utiliser deux ports, et là le latch devient obligatoire non ? Ca fonctionnerai peut-être sans à vrai dire, peut-être que le pic (cadencé à 20MHz) serait assez rapide, mais je préfère cette solution plus propre. Par contre si tu as une idée pour éliminer le latch maintenant que tu as toutes ces infos, je suis prenneur, sachant que je ne touche pas à l'assembleur mais seulement au C ^^. J'ai aussi pensé me contenter du 1/7e de pas, comme ça un port du pic suffirait, mais en utilisant les 4 entrées des DAC ça permet d'exploiter à fond les capacitées des LMD18245...

    Je suis PAPSI, tout comme YAPSC, mais malheureusement je ne pense pas pouvoir être d'une grande aide, je suis encore étudiant (Prépa) et la plupart des choses que je fais, je les apprend encore par moi-même, mes connaissances sont donc assez limitées en électro mais j'apprends au fur et a mesure, en cours c'est surtout maths, info, et physique :wink:. Ceci dit si je peux apporter ma pierre à l'édifice j'en serait ravi!

    @+
    Mdog

    EDIT :
    Au fait, je me demandais s'il était possible de programmer plusieurs pic en parallèle grâce à l'ICSP, par exemple on connecte toutes les pâtes ICSP Data ensemblent, toutes les pâtent ICSP Clock ensemblent etc, et on les programment tous en une fois. A priori je ne vois pas de problème si l'on se contente de les programmer, sans les lire ensuite, non ?
    Merci :wink:
     
  4. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
    Driver de puissance maison pour moteur pas à pas.
    Je pense que les 0.2µs de décalage (1 cycle) ne sont pas critiques. L'évolution du courant dans la bobine lente. En premiere approximation, l'erreur est au plus de 2mA sur un moteur 1ohms 1mH alimenté en 100V
    0.67% d'erreur...

    Pour la prog des pic en série, je pense qu'il y a des pb de synchro. C'est pour ça que des prog indus à 2000€ (pour une 30aine de PIC) existent :shock:
     
  5. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Ok merci beaucoup. Je pense que je vais tenter sans le Latch alors, sur une carte à pastille (bonjour le cablage!), si sa fonctionne ce sera plus simple :wink:.

    Pour la programmation j'aurais du m'en douter, c'est dommage mais pas bien grâve, la reprogrammation éventuelle sera juste un peu plus longue.

    Merci pour ton aide en tout cas, ça me permet d'avancer.

    Mes schémas sont presques prêts, je les posterai bientôt mais ils seront bien sûr en attente de validation, après il me restera à faire le PCB. Je vais surement demander d'autres samples pour ce composant, si je peux en avoir quelques-uns de plus la carte de puissance ne devrait pas me coûter grand chose :)

    @+
    Mdog
     
  6. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Bonsoir à tous!

    J'ai testé ce week-end un LMD18245T, qui fonctionne à merveille. Bon seul point négatif, il semble que celui que j'ai utilisé pour mes test ai cramé, sans que je sache pourquoi, mais c'est surement une érreure de manip ou une faiblesse du composant. J'ai utilisé éxactement le schéma du datasheet et c'est parfait.

    A part ça j'ai trouvé des schémas sur le net de cartes µStep utilisant ce composant avec un pic, et ne comportant pas de Latch (schéma identique à celui du datasheet), donc je pense que sa devrait fonctionner correctement :wink:.
    J'ai aussi demandé d'autres samples à National Semiconductor qui me les a gentillement envoyé gratuitement, donc c'est parfait ^^.

    Je vais terminer les schémas et faire le typon, et ensuite je ferais faire mon PCB, je connais quelqu'un qui devrait pouvoir me le faire car je ne suis malheureusement pas équipé...

    Merci pour ton aide Max-Mod en tout cas!

    @+
    Mdog
     
  7. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
  8. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Salut à tous!

    Juste un pti up pour vous informer que je suis passé en phase d'étude avancée sur ce projet :wink:.

    Les schémas sont terminés, le typon aussi. Je vais commander les composants car je dois réaliser des tests sur les pic que je vais utiliser et que je ne connais pas. Le programme est presque terminé et devrait intégrer une réduction d'intensité (si tout fonctionne correctement, et c'est là que j'ai besoin de tests car pas d'interruptions par le TMR0 sur les pic low-cost que j'ai choisis).

    Le typon que j'ai réalisé est conçu pour un circuit complet intégrant 4 cartes de puissances, l'interface port parallèle, 4 entrées pour les fins de courses et palpeur d'outil, 4 sorties 12v pour contrôler des relais, ainsi qu'une interface avec afficheur LCD qui affichera les positions sur chaque axe. Je ferais également un typon pour une carte de puissance seule, la carte d'interface seule, et une version à 3 cartes de puissance.

    Le typon tient sur 20x13 cm en simple face, mais je vais faire une version double face pour éliminer les straps :wink:.

    Pour l'instant le projet à un peu ralentit car j'ai un doigt hors-service (bagarre avec une porte qui à mal tournée), mais dès que tout sera prêt et testé, je posterai tous les schémas, typon etc etc...

    @+
    Mdog
     
  9. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Salut à tous!
    Je reviens un peu sur ce sujet car j'ai bien avancé, je vais bientôt (enfin dès que j'aurais du temps libre...) passer aux derniers tests puis à la réalisation.

    Je poste dès maintenant les premiers schémas, PCB, et le manuel que j'ai commencé à écrire, ainsi si vous avez des remarques/commentaires/critiques, ça pourra peut-être m'aider à améliorer tout ça :wink:.

    Voila donc l'ensemble de mon travail au jour d'aujourd'hui, donné simplement à titre informatif pour le moment :

    RIEN N'A ENCORE ÉTÉ TESTÉ.
    Les programmes à placer sur les microcontroleurs seront publiés une fois les premiers tests réalisés, en attendant il se peut également que ces schémas soient modifiés, il sont donc donné à titre purement informatif.
    Leur diffusion est interdite, merci de renvoyer quiconque s'y intéressera directement sur ce sujet.

    Alors on commence par les schémas.
    Partie logique :
    http://www.homecnc.fr/Manuel/Schema_logique.pdf
    Partie puissance :
    http://www.homecnc.fr/Manuel/Schema_puissance.pdf

    PCB :
    http://www.homecnc.fr/Manuel/PCB.pdf
    Schéma d'implantation :
    http://www.homecnc.fr/Manuel/Implantation.pdf

    Manuel (pas encore terminé) :
    http://www.homecnc.fr/Manuel/Manuel.pdf

    Partlist
    http://www.homecnc.fr/Manuel/partlist.htm

    Voilà, n'hésitez pas si vous avez des remarques, des critiques, j'ai pu laissé passé quelque-chose, une bêtise, et dans ce cas ça m'aidera bien si quelqu'un la voit :wink:

    Bonne soirée.
    @+
    Mdog
     
  10. fabrice c

    fabrice c Modérateur

    Messages:
    3 035
    Inscrit:
    19 Juin 2008
    Localité:
    reunion
  11. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    C'est une autre possibilité tout simplement, sur laquelle je ne me suis pas vraiment penché en réalité. Les LMD18245 sont des composants très pratiques (un peu cher), et j'utilise avec des pic très bon marché (environ 2$). Les LMD18245 simplifient le montage puisqu'ils intègrent une régulation en courant contrôlée par un DAC, et surtout j'oublie de préciser que j'ai obtenu 10 LMD18245 gratuitement en samples, j'ai donc créé une carte autour de ces composants pour qu'elle me revienne moins cher qu'une carte où j'aurais tout eu à acheter, maintenant que c'est finit, autant en faire profiter tout le monde si ça peux servir :wink:.

    @+
    Mdog
     
  12. fabrice c

    fabrice c Modérateur

    Messages:
    3 035
    Inscrit:
    19 Juin 2008
    Localité:
    reunion
  13. fabrice c

    fabrice c Modérateur

    Messages:
    3 035
    Inscrit:
    19 Juin 2008
    Localité:
    reunion
  14. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Merci!
    Pour la programmation, ce sera en C le programme est terminé. Par contre je me tâte encore sur les courbes d'alim des DAC. J'ai définit deux courbes possibles pour le microstepping et je ne sais pas laquelle fonctionnerai la mieux.
    D'ailleurs si je pouvais avoir votre avis, voila l'allure des deux courbes possibles :
    1ere possibilité :
    [​IMG]


    2eme possibilité :
    [​IMG]


    En théorie la première possibilité offre plus de couple, mais il est moins constant, c'est pourquoi je penche plutôt pour la deuxième solution qui offre un couple constant.

    Si quelqu'un peut me donner sont avis là-dessus ?

    Merci :wink:
    @+
    Mdog
     
  15. mdog

    mdog Ouvrier

    Messages:
    487
    Inscrit:
    15 Juin 2008
    Localité:
    Essonne
    Driver de puissance maison pour moteur pas à pas.
    Bonsoir à tous.
    Pas grand chose à voir avec le projet mais je vais pas ouvrir un sujet juste pour ça :
    Je cherche un buffer qui prenne du 12v en entrée et qui ressorte du TTL 5v, pourquoi pas en collecteurs ouverts, quelqu'un connait ça?
    Sinon je peux toujours abaisser la tension avec une zener mais je préférerai utiliser un CI.
    Le but étant d'utiliser des capteurs inductif NPN qui servent de FDC sur ma CN. La sortie me donne du +12v à vide, et 0v lorsque l'on arrive en FDC, il faut que je transforme ça pour que ce soit admissible par le port parallèle, le mieux ce serait d'avoir de la haute impédance quand je suis à 12v en entrée, et
    du 0v lorsque je suis à 0v en entrée.

    Merci d'avance :wink:.
    @+
    Mdog
     
Chargement...

Partager cette page