Conectarea motoarelor stepper unipolare la microcontrolerele avr - microcontrolere și tehnologii

Informații detaliate teoretice despre motoarele pas cu pas pot fi găsite pe Internet, iar aici vom aborda o soluție practică. Un motor unipolar are o singură înfășurare în fiecare fază, de la mijlocul înfășurării se face un robinet. Aceasta vă permite să schimbați direcția câmpului magnetic creat de înfășurare, schimbând pur și simplu jumătățile înfășurării. Acest lucru simplifică foarte mult circuitul șoferului. Șoferul trebuie să aibă doar 4 taste simple. Conductoarele mediane ale înfășurărilor pot fi combinate în interiorul motorului, astfel încât acest motor poate avea 5 sau 6 pini. Uneori motoarele unipolare au 4 înfășurări separate, din acest motiv ele sunt denumite în mod greșit motoare cu 4 faze. Fiecare bobina are conductori separate, astfel încât toate concluziile 8. Din cauza simplității conectării și controlului motorului unipolar, în acest articol vom lua în considerare doar acest tip de motor pas cu pas.

Controler Atmega8, tactat de la un generator intern cu o frecvență de 8MHz. În program se folosesc două întreruperi externe și o întrerupere a depășirii temporizatorului T0. Toate întreruperile sunt definite și configurate în funcția principală și, de asemenea, sunt configurate porturile I / O ale microcontrolerului.

Pentru a porni motorul într-o direcție sau alta, este necesar să aplicați o serie de impulsuri deplasate în fază la înfășurările sale. Aceste secvențe de impulsuri sunt definite în câmpurile cw_dir [] și ccw_dir []. respectiv în sensul acelor de ceasornic și în sens antiorar. Starea indicatorului de direcție a rotației schimbă starea sa de la log.0 la log1 și invers atunci când este apăsat unul dintre butoanele SB1 și SB2. Dacă starea == 1 motorul se rotește în sens antiorar, dacă starea == 0 motorul se rotește în sensul acelor de ceasornic. Starea variabilă își modifică valoarea când intervin întreruperi externe la intrările INT0 și INT1. Pentru ca o întrerupere externă să apară, tragem intrările INT0 și INT1 prin rezistențe la puterea pozitivă.

Conectarea motoarelor stepper unipolare la microcontrolerele avr - microcontrolere și tehnologii

Discutarea articolului pe forum

Înțeleg că semnalul va urma în fiecare secundă?


Nu, impulsul ar trebui să fie în fiecare minut. Pentru a fi mai clar, voi intra în detalii. Turnul ceasului. Până atunci, mișcarea ceasului era dintr-un sistem pendul, care era foarte nesigur. Fiecare mișcare de minut a pendulului a transformat rotița într-un anumit unghi. Acum, pendulul este înlocuit de un motor pas cu pas și de calculul general al raportului de transmisie al mecanismului de angrenare. Motorul ar trebui să efectueze 8 pași în fiecare minut la o viteză de 1 viraj pe secundă. Pulsul de control al minutelor vine de la ceasul electronic principal. În modul de așteptare, consumul curent de motoare pas cu pas nu ar trebui să fie. În circuit, puteți utiliza un microcontroler mai puțin puternic. În prezent, această schemă de control a fost implementată la nivelul hardware-ului meu și a funcționat timp de 5 ani, dar vreau să o fac la un nivel mai modern, dar nu am experiență și cunoștințe în programare. Prin urmare, vă rog să vă ajut. În calitate de inginer de electronică este suficient de puternic.

Cod postat pe forum, dacă aveți nevoie de scris HEX

Articole similare