Arduino Forum

International => Italiano => Software => Topic started by: BoredCoder on May 16, 2019, 07:27 pm

Title: Aiuto con problema sui motori passo passo
Post by: BoredCoder on May 16, 2019, 07:27 pm
Buonasera, sono nuovo con arduino e vorrei risolvere questo problema:
Far avanzare di mezzo giro in senso orario con modalità di pilotaggio half-step un motore stepper bipolare(passo 1,8°) con velocità di 25 giri/minuto.

Grazie miller per l'aiuto!
Title: Re: Aiuto con problema sui motori passo passo
Post by: gpb01 on May 16, 2019, 08:30 pm
Buonasera,
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (http://forum.arduino.cc/index.php?topic=113640.0) (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con molta attenzione tutto il su citato REGOLAMENTO (http://forum.arduino.cc/index.php?topic=149082.0) ... Grazie. :)

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione, nessuno ti potrà rispondere, quindi ti consiglio di farla al più presto. ;)
Title: Re: Aiuto con problema sui motori passo passo
Post by: BoredCoder on May 16, 2019, 08:52 pm
Buonasera, grazie per avermi avvertito! Ho scritto la mia presentazione. Ora potrei far si che questo messaggio possa essere attenzionato? Grazie :-[
Title: Re: Aiuto con problema sui motori passo passo
Post by: gpb01 on May 16, 2019, 09:48 pm
Ora potrei far si che questo messaggio possa essere attenzionato?
... quello viene da se. Se qualcuno ritiene di poterti aiutare, sicuramente interverrà  :)

Guglielmo
Title: Re: Aiuto con problema sui motori passo passo
Post by: BoredCoder on May 16, 2019, 09:49 pm
Pensavo che il mio thread fosse invisibile, tutto qui
Title: Re: Aiuto con problema sui motori passo passo
Post by: brunello22 on May 17, 2019, 12:20 am
Quote
Far avanzare di mezzo giro in senso orario con modalità di pilotaggio half-step un motore stepper bipolare(passo 1,8°) con velocità di 25 giri/minuto
Non capisco quale sia il problema..

Il motore è collegato per mezzo di un driver, quale ?

Title: Re: Aiuto con problema sui motori passo passo
Post by: Maurotec on May 17, 2019, 01:41 am
Il motore compie un giro completo in 200 step.
stepalgiro = 360 / 1.8 = 200.
Questo vale in full-step (passo pieno)

In modo mezzo passo (half step), il minimo angolo di rotazione vale 1.8/2 = 0.9.

stepalgiro = 360 / 0.9 = 400

Per compiere 25 giri al minuto servono 400 x 25 = 10000 (diecimila) passi.

Presumo che il motore passo passo è connesso ad un circuito integrato driver.
La velocità di rotazione dipende dalla frequenza del segnale collegato al terminale 'STEP' (o equivalente) del driver. La frequenza vale F = 1/T con T espresso in secondi. Sappiamo che 1 minuto è composta da 60 secondi. 10000 / 60 = 166.666 passi al secondo. Il segnale in questione sarà una onda quadra di frequenza 166.66 Hz, duty cicle del 50% con periodo T = 1/166.66 = 0,006s (6ms), la larghezza dell'impulso sarà 3ms alto e 3ms basso. Per generare questa frequenza con arduino ci sono due strade consigliate:

1) cercare una libreria che gestisce uno dei timer hardware contenuti dentro la MCU impiegata al fine di generare un a frequenza.
2) Nel caso non si riesca a centrare l'obbiettivo con la (1) occorre gestire uno dei timer manipolando direttamente i registri della MCU.

Il Timer 1 a 16 bit permette di generare questa precisa frequenza 166,666666667Hz (e molte altre con ottima risoluzione).

Ciao.
Title: Re: Aiuto con problema sui motori passo passo
Post by: uwefed on May 17, 2019, 01:49 am
C'é una terza possibilitá; usare una libreria (stepper o accelstepper).