Pilotare Stepper Motor Aircore
buongiorno tutti,
ho da poco acquistato dei motori aircore per un progetto di un cruscotto da collegare al pc.
sono dei x27 128 https://s3-us-west-1.amazonaws.com/123d-circuits-datasheets/uploads%2f1392774822254-xatrnqzc91a9vn29-ddcc8d0e4ed81e9c8567ed6aee309e11%2fx27_flyer_v1.3.pdf che piloto con dei driver http://guy.carpenter.id.au/gaugette/resources/vid/2009111391612_vid6606%20manual%20060927.pdf.
ho utilizzato uno sketch per farli muovere tramite la libreria accelstepper https://www.pjrc.com/teensy/td_libs_accelstepper.html
e tutto funziona.
il mio problema è che motori non ruotano velocemente. dal datasheet ho visto che compiono fino 600° al secondo quindi dovrebbero fare quasi 2 giri al secondo (dato che motori hanno un finecorsa 315°) ma cosi non è, in più ho dei problemi capire datasheet.
quello dei motori dice che hanno una accuratezza di "1/3° resolution per partial step" e quello del driver invece "shaft stepping angle resolution 1/12°", quindi un giro sarebbe composto da 315*12 = 3780 steps ma se provo dare questo valore il motore arriva fine corsa e si sente il rumore di quando è sotto sforzo. questo mi pregiudica il calcolo della max speed e dell'accelerazione da inserire in quella libreria.
per la max speed ho considerato 600°/s e calcolato 600*12 = 7200 steps/s, e come accelerazione 14400 steps/s^2 ma il mio aircore ruota molto piu' lentamente di un motore servo che ho utilizzato per comparare che ha una velocità di 0.10s/60°.
qualcuno saprebbe darmi una mano per calcolare valori corretti o darmi qualche suggerimento per ottenere buone prestazioni dai motori?
ringrazio in anticipo chiunque voglia aiutarmi.
ho da poco acquistato dei motori aircore per un progetto di un cruscotto da collegare al pc.
sono dei x27 128 https://s3-us-west-1.amazonaws.com/123d-circuits-datasheets/uploads%2f1392774822254-xatrnqzc91a9vn29-ddcc8d0e4ed81e9c8567ed6aee309e11%2fx27_flyer_v1.3.pdf che piloto con dei driver http://guy.carpenter.id.au/gaugette/resources/vid/2009111391612_vid6606%20manual%20060927.pdf.
ho utilizzato uno sketch per farli muovere tramite la libreria accelstepper https://www.pjrc.com/teensy/td_libs_accelstepper.html
code: [select]
#include <accelstepper.h>
// define stepper , pins use
accelstepper stepper(1, 11, 12); // 1 means 2 wires. 3 step pin, 2 dir pin.
int halfrev = 800;
void setup()
{
stepper.setmaxspeed(7200);
stepper.setacceleration(14400);
}
void loop()
{
if (stepper.distancetogo() == 0)
{
delay(10);
halfrev = -halfrev;
stepper.moveto(halfrev);
}
stepper.run();
}
e tutto funziona.
il mio problema è che motori non ruotano velocemente. dal datasheet ho visto che compiono fino 600° al secondo quindi dovrebbero fare quasi 2 giri al secondo (dato che motori hanno un finecorsa 315°) ma cosi non è, in più ho dei problemi capire datasheet.
quello dei motori dice che hanno una accuratezza di "1/3° resolution per partial step" e quello del driver invece "shaft stepping angle resolution 1/12°", quindi un giro sarebbe composto da 315*12 = 3780 steps ma se provo dare questo valore il motore arriva fine corsa e si sente il rumore di quando è sotto sforzo. questo mi pregiudica il calcolo della max speed e dell'accelerazione da inserire in quella libreria.
per la max speed ho considerato 600°/s e calcolato 600*12 = 7200 steps/s, e come accelerazione 14400 steps/s^2 ma il mio aircore ruota molto piu' lentamente di un motore servo che ho utilizzato per comparare che ha una velocità di 0.10s/60°.
qualcuno saprebbe darmi una mano per calcolare valori corretti o darmi qualche suggerimento per ottenere buone prestazioni dai motori?
ringrazio in anticipo chiunque voglia aiutarmi.
dal datasheet del motore fornito non capisco quanti step al giro fa il motore. tu hai informazioni riguardo?
ciao uwe
ciao uwe
Arduino Forum > International > Italiano > Hardware (Moderator: leo72) > Pilotare Stepper Motor Aircore
arduino
Comments
Post a Comment