GAS TT 10 anni con voi

Ben arrivato! Fai login o registrati per fruire di tutte le funzionalità del forum e del sito.
Se eri già registrato e non ti ricordi la password usa questo link per recuperare l'accesso.
Sito e forum dedicati al fermodellismo, il nostro hobby viene praticato in molte maniere diverse, tutte ugualmente valide: hai un plastico? oppure sei un collezionista? oppure un semplice appassionato? Non esitare a scrivere nel forum, tutti gli interventi sono benvenuti... Postate foto e video del vostro plastico e chiedete aiuto per ogni problema o curiosità inerente al nostro hobby.

Motori passo passo

Tutto ciò che è elettricità applicata al fermodellismo.

Moderatori: lorelay49, cararci, MrMassy86, adobel55

Messaggio
Autore
Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 4933
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 59
Stato: Non connesso

Motori passo passo

#1 Messaggio da Edgardo_Rosatti »

Ciao a tutti, apro questa discussione per parlare dei motori passo passo e per cercare di capirne il loro funzionamento.

Premessa: i motori passo passo o "stepper" sono dei motori alimentati in corrente continua in grado di effettuare movimenti angolari molto precisi dell'albero di rotazione.
Spero di aver espresso la definizione di funzionamento in modo corretto [:I].

Questo tipo di motori è largamente usato in robotica o semplicemente nelle stampanti per gestire al meglio il controllo dei dispositivi interni, come movimento del carrello testine e del foglio di stampa.

Per una consultazione del principio di funzionamento di questi motori, rimando alla sempre esaustiva Wikipedia:
http://it.wikipedia.org/wiki/Motore_passo-passo

Avendo a disposizine una vecchia stampante HP, ho recuperato un paio di motori passo passo funzionanti a 24 Volt in CC e ho iniziato a fare qualche esperimento per vedere se potevo utilizzarli.
La prima appicazione che mi è venuta in mente è stata quella di usarli per muovere il binario di una piattaforma girevole, in particolare quella installata sul modulo "piattaforma" del nostro modulare.
I motori in questione, come dicevo, funzionano a 24 Volt in CC e sono del tipo PM35L-048.
Mentre per la gestione sto usando Arduino Uno e una cheda driver chiamata Easydriver in grado di pilotare motori passo passo con una alimentazione compresa tra 6,5 e 30 volt in CC.

Da questo lato, sia motore che driver si comportano molto bene, infatti ho sperimentto con successo il controllo del motore tramite Easydriver, tuttavia ho notato che l'intero sistema, motore + driver, scalda molto.
In paricolare, ho notato che maggiore è la velocità richiesta e maggiore è il surriscaldamento del motore.

Vice versa, minore è la velocità del motore e minore è il suo surriscaldamento.
Da quello che sto capendo, le bobine del motore vengono costantemente alimentate dal driver anche quando il motore è fermo per tenerlo in posizione.
Quello che mi preoccupa è il calore che ne esce e non è poco.

Ora la mia domanda da smanettone è semplice: è normale tutto questo calore? Da quello che ho potuto vedere in rete è un problema comune, ma a me spaventa un po' perchè a volte è impossibile toccare con le dita il motore dal calore che produce.

Il driver ha un pin che può essere di aiuto che è chiamato "sleep". Se mandato massa (low) disalimenta il motore quando fermo.
E' una opzione che devo ancora provare e che potrenebbe risolvere il problema.

Qualsiasi consiglio è ben accetto.

Edgardo.


ED

Avatar utente
roy67
Socio GAS TT
Messaggi: 6485
Iscritto il: domenica 27 gennaio 2013, 8:13
Nome: Roberto
Regione: Emilia Romagna
Città: Parma
Ruolo: Moderatore
Stato: Non connesso

Re: Motori passo passo

#2 Messaggio da roy67 »

E' normale che scaldino. D'altra parte i motori di quel tipo, come i brushless, rimangono alimentati anche quando fermi. In motori con "qualche" Kw viene messa un elettroventola che funziona pilotata da un PCB che rileva un termotransistor, installato all'interno del motore.

Però, se scotta, non va bene, è un po' troppo. Caldo si, bollente no.

Sei sicuro della tensione di alimentazione?
Eventualmente verifica anche la frequenza di pilotaggio. Potrebbe scaldare solo perché alimetato ad una frequenza superiore. Oppure verifica che le onde siano "pulite". Se vi sono ridondanze potrebbero essere interpretate come ulteriori segnali che portano il motore ad essere più "nervoso", quindi scalda.

Per un miglior pilotaggio sarebbe bene dargli anche un ottimo rapporto di riduzione, sforza meno in rotazione ed avrai più precisione di fermata, nonostante l'alta velocità del motore.

Normalmente, sulle macchine utensili, io setto sempre il servo-drive a "spegnersi", quando il motore non è chiamato in rotazione. In questo modo le temperature rimangono "ragionevoli".
Ma parlo di motori che hanno almeno 6-7 Kw.[:I]
Ciao. Roberto Alinovi - L'uomo non teme ciò che in lui non c'è. (Hermann Hesse)

Avatar utente
Digtrain
Messaggi: 1619
Iscritto il: giovedì 20 dicembre 2012, 23:47
Nome: Walter
Regione: Lombardia
Città: Casarile
Stato: Non connesso

Re: Motori passo passo

#3 Messaggio da Digtrain »

Ciao Edgardo, :grin:

io e mio figlio avevamo costruito un circuitino, per conoscere e sperimentare i motori passo passo, basato su PIC, vedi topic: topic.asp?TOPIC_ID=10038

Ricordo per certo che quando il motore ha raggiunto la posizione le bobine non venivano più alimentate.

Se non sbaglio, ma devo chiedere a mio figlio Dario, il suo prof di fisica, a cui aveva chiesto consiglio, gli aveva consigliato di dare due, tre impulsi sull'ultimo step per mantenere il motore in posizione.
Noi non abbiamo mai avuto problemi di surriscaldamento.

Ciao Walter :geek:
Walter - Club Modellismo Pavese - Steamtown National Historic Site - Het Spoorwegmuseum Utrech - Loxx Berlino - "Il mio fisico è stato scolpito e modellato nelle migliori trattorie della Lomellina"

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 4933
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 59
Stato: Non connesso

Re: Motori passo passo

#4 Messaggio da Edgardo_Rosatti »

Innanzitutto vi ringrazio per i suggerimenti sempre preziosi :grin:

Ho controllato le specifiche del motore e il modello indicato funziona a 24 volt. Ha 6 fili, 2 per bobina con presa centrale, ma io ne posso usare solo 4 in quanto Easydriver ha 4 uscite per il controllo del motore, due chiamate A1 A2 e due chiamate B1 B2. Il datasheet del motore riporta 24 volt 600 mA. Le ho misurate col tester per identificare le bobine e mi da 75 ohm per bobina e 38 sulla presa centrale.
Qui ad esempio ho provato ad invertire i fili ma non cambia nulla.

La frequenza di pilotaggio delle bobine posso controllarla tramite software con comandi di ritardo espressi in millisecondi o microsecondi (comando "delay(periodo)").
Ho fatto un po' di prove variando il periodo e ottengo variazioni di velocità del motore. E qui anche variazioni di temperatura.

Il fatto di usare un controller come l'Easydriver mi facilita molto il lavoro, in quanto basta dare un treno d'impulsi al pin STEP tramite Arduino per gestire il motore e abilitare il senso di rotazione con DIR, poi al resto ci pensa l'Easydriver.
Il controller si basa sul chip Allegro A3967 che al suo interno contiene alcuni pin per la gestione del motore.
2 chiamati MS1 e MS2 consentono di muovere il motore a passo intero, mezzo passo, 1/4 di passo ed 1/8 di passo. 1/8 è l'impostazione di default e per ora lo sto usando così.
Poi ha RESET di chiara intuizione, SLEEP per disalimentare il motore quando richiesto e ENABLE che devo ancora capire a cosa serve.

Qui, se volete dare un'occhiata c'è il sito del progettista di Easydriver con molte info (in inglese) ed i dati delle temperature raggiunte da motore e driver:
http://www.schmalzhaus.com/EasyDriver/

Posto una foto dell'insieme dove si vede come ho in mente di utilizzare la parte meccanica, l'alimentatore e le schede.
Il motore ha sul suo albero una vite senza fine che comanda un ingranaggio. Il sistema è stato recuperato dalla stampante. La mia intenzione è quella di calettare l'ingranaggio bianco visibile in foto con l'asse di rotazione del binario della piattaforma da accoppiare poi al motore.
Questo mi dovrebbe consentire un buon rapporto di riduzione, spero si capisca.

Motore e sistema:
Immagine
106,23 KB

Posto anche lo schema elettrico di tutto l'impianto che per ora è fatto con diverse schede che sostituirò in futuro con un unico pcb.

Schema elettrico:
Immagine
27,86 KB

Lo schema prevede Arduino collegato al driver tramite 2 porte OUT per il controllo del motore (porte 2 e 3), 4 porte dedicate a 4 pulsanti per il comando del motore (4,5,6 e 7 come IN) con resistenze di pulldown.
Infine, tramite 2 NPN BC547 comando SLEEP e un relè per l'inversione di polarità delle rotaie (porte 8 e 9, OUT).
L'alimentazione per ora ha 2 fonti, 5VCC tramite USB per la programmazione di Arduino e 24 VCC per il driver, ma in futuro, l'alimentazione provverrà dall'alimentatora a 24 volt, in quanto il driver può fornire 5 volt anche per Arduino.

Walter, ho visto il tuo progetto ed ho notato che come per i motori della stampante, la presa centrale delle bobine è collegata insieme e viene usata nel tuo circuito, io invece non posso usarla, in quanto ho solo 4 uscite dal driver.

In conclusione, il progetto deve prevedere anche la polarizzazione delle rotaie, in quanto se ruoto di 180° il binario, dovrò invertire anche la polarità delle rotaie. Ma questo è il minimo problema.
ED

Avatar utente
roy67
Socio GAS TT
Messaggi: 6485
Iscritto il: domenica 27 gennaio 2013, 8:13
Nome: Roberto
Regione: Emilia Romagna
Città: Parma
Ruolo: Moderatore
Stato: Non connesso

Re: Motori passo passo

#5 Messaggio da roy67 »

Reset ed Enable sono, rispettivamente i segnali di "disattivazione e "attivazione". Cioè, quando sarà disattivato "reset" il circuito si "spegnerà". Mentre quando attivato "enable" il circuito si "accenderà". Questo dipende da che tipo di comando hai in uscita di pilotaggio. Normalmente Enable si attiva con un segnale positivo. Reset con un segnale negativo. (questo riferito agli standard, ma non è detto che sia così. Potrebbe essere il contrario)

Ovviamente uno escude l'altro. Se piloti il reset lascierai alimentato enable o viceversa.

Giocando con questi 2 segnali ho creato la "pausa", sull'integrato counter, nel faro di caprazoppa, . :wink:
Ciao. Roberto Alinovi - L'uomo non teme ciò che in lui non c'è. (Hermann Hesse)

Avatar utente
gavinca
Socio GAS TT
Messaggi: 1994
Iscritto il: martedì 22 maggio 2012, 13:07
Nome: Carlo
Regione: Piemonte
Città: Bellinzago Novarese
Stato: Non connesso

Re: Motori passo passo

#6 Messaggio da gavinca »

Ciao Ed, ho fatto un po' di esperimenti con i miei motori stepper e ho notato che tendono a scaldarsi quando sono fermi ma restano alimentati.
Io ho motori alimentati a 5V e 12V e quello a 12V tende a scaldarsi molto di più dell'altro.
Probabilmente con il tuo a 24V l'effetto è amplificato.

Per controllare i motori ho trovato molto utile questa libreria
http://www.airspayce.com/mikem/arduino/ ... index.html
che tra le varie opzioni ha disableOutputs per togliere alimentazione quando il motore è fermo, ma mi sembra di aver capito che anche tu puoi farlo con il disable.

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 4933
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 59
Stato: Non connesso

Re: Motori passo passo

#7 Messaggio da Edgardo_Rosatti »

Sto rimettendo insieme un po' tutti i pezzi del puzzle facendo tesoro dei vostri consigli. Ho anche cercato ulteriori info sull'Easydriver e ho visto che in effetti i pin ENABLE, SLEEP e RESET tolgono l'alimentazione al motore quando è fermo, ma in modalità diverse.
In particolare, il driver vuole sempre questi pin a massa per essere attivati.
RESET è intuitivo e come dicevo in precedenti post resetta il dispositivo.
ENABLE, se attivato disalimenta solo le uscite di potenza del driver, quindi non alimenta il motore.
SLEEP, se attivato oltre a disalmentare il motore, manda a riposo anche il driver (il suo chip) offrendo un ulteriore risparmio di energia.
Tutti questi pin devono essere a massa per almeno un micosecondo per avere effetto sul driver.
Qui un riferimento tecnico su un blog (in inglese):
http://xavierstechno.blogspot.it/

Attualmente sono riuscito a usare 4 pulsanti NO per regolare velocità, direzione e le funzioni start/stop con successo e sono in procinto di provare anche le funzioni sopra descritte.
Devo dire per ora che le temperature si sono abbassate notevolmente e ho capito che ci vuole il metodo giusto per pilotare il motore che sto usando.
Purtroppo devo fare anche i conti con il poco tempo libero..

Carlo, ho letto della libreria accelstepper ma non ho ancora provato ad usarla, quindi per ora non ho elemeti utili per fare delle valutazioni in merito.
Piano piano e "passo passo", sono sicuro di essere sulla buona strada per risolvere il problema.

Edgardo
ED

Avatar utente
cannino_aosta
Messaggi: 3
Iscritto il: lunedì 7 ottobre 2013, 18:32
Nome: emanuele
Regione: Val D'Aosta
Città: aosta
Stato: Non connesso

Re: Motori passo passo

#8 Messaggio da cannino_aosta »

Ciao,

se non ricordo male dovrebbe esserci sul modulo easy driver un potenzionetro...
A seconda della tensione che imposti sul potenziometro vai a modificare la corrente che fornisci alle bobine.

Il tuo motore sembra essere un motore unipolare anzichè bipolare .... poco grave... perdi solo un po' di coppia rispetto a quella che ti aspetteresti .

da software puoi disabilitare il driver tramite il segnale EN ( toglia alimentazione al motore...tieni conto che il perno rimane libero)

Ciao

Ema
Emanuele

Avatar utente
schunt
Messaggi: 531
Iscritto il: giovedì 3 aprile 2014, 8:19
Nome: Enzo
Regione: Toscana
Città: cascina
Stato: Non connesso

Re: Motori passo passo

#9 Messaggio da schunt »

Edgardo - mi permetto di soggerirti quella che potrebbe essere una svista....... il chiavistello !!!!

Tutte le piattaforme in corrispondenza del binario, hanno da entrambi i lati un chiavistello che si retrae o fuori esce, per bloccare il Ponte girevole.

Nella piattaforma che realizzai sul vecchio plastico, premendo un pulsante facevo retrarre un chiavistello, dopi circa 1,5 secondi, la piattaforma iniziava a girare lentamente, circa un minuto per fare 360, cioe' lidentica velocita' delle piattaforme del diametro da 22 metri, ed utilizzavo un motore a cc debitamente super demoltiplicato; trasmissioni con cinghiette da giradischi.

Non e' possibile usare una velocita' maggiore, essa deve essere calcolata come velocita' angolare o perimetrale, per cui oltre, si correva il rischio di far ribaltare il rotabile che nella realta' e' dotato di sospensioni.

Se non ti convincono i risultati, sappi che ho disponibile il motore che realizzai per la piattaforma in perfetta efficienza e te lo posso inviare.
Enzo

Avatar utente
MarcoMN
Socio GAS TT
Messaggi: 626
Iscritto il: mercoledì 16 gennaio 2013, 8:54
Nome: Marco
Regione: Lombardia
Città: San Giorgio Bigarello
Stato: Non connesso

Re: Motori passo passo

#10 Messaggio da MarcoMN »

Chiedo un parere agli esperti: per il mio plastico (vedi post sul Plastico Val di Mezzo) è previsto che tutto il settore che sovrasta la stazione nascosta, sia sollevabile ed eventualmente asportabile.
Ho individuato questo possibile sistema: piazzare 4 motori passo-passo che muovono una barra filettata fissata in asse con il perno del motore. Si può sollevare il tutto grazie a un dado fissato alla parte mobile e inserito, appunto, nelle barre filettate.
Facendo girare le barre, il dado, solidale al settore da ispezionare, lo fa sollevare. Gioco fatto.
Il problema sta nel fatto che voglio utilizzare la 12V e il peso da sollevare dovrebbe aggirarsi sui 30 kg complessivi. Significa che ogni motore deve sollevare 7,5-8 Kg cadauno.
Non so però come trasformare in N/m la coppia che dovrebbe erogare il motore.

Giro la domanda: mi aiutate a dimensionare correttamente il tipo di motore passo-passo che serve al mio caso? Anche per amperaggio e voltaggio di esercizio?
Marco - Fermodellismo per passione - La mia pagina Facebook

Avatar utente
schunt
Messaggi: 531
Iscritto il: giovedì 3 aprile 2014, 8:19
Nome: Enzo
Regione: Toscana
Città: cascina
Stato: Non connesso

Re: Motori passo passo

#11 Messaggio da schunt »

Con questa foto evidenzio la parte amovibile sopra la stazione nascosta, che essendo un robusto telaio di legno, e' di fatto imbulonata con dei tirafondi tra il PL e L'imbocco della galleria di sinistra.

Il legno e' un materiale vivo, che cambia dimensioni con molta frequenza, quindi pensare di sollevare un oggetto in legno con un servo meccanismo c'e' da tormentarsi la vita.

Immagine:
Immagine
393,1 KB
Enzo

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 4933
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 59
Stato: Non connesso

Re: Motori passo passo

#12 Messaggio da Edgardo_Rosatti »

Vi ringrazio per i suggerimenti sempre utili.

Attualmente sto riprogettando tutto lo schema che includerà la gestione di sleep/enable via software, un relè per l'inversione di polarità dei binari in caso di rotazione a 180° e un display lcd corredato di pulsanti per la gestione del tutto.
Inoltre, è emersa la necessità non indifferente di far sapere al sistema l'ultima posizione del meccanismo prima dello spegnimento o in caso di black out che ho risolto usando la eeprom non volatile interna di arduino. Purtroppo la eeprom ha una capacità limitata di 1024 indirizzi con dati di un byte (8 bit), ma con la tecnica del "bitwise" si riesce a memorizzare qualsiasi cosa.

Per Emanuele: grazie per la dritta, in effetti con quel trimmer è possibile regolare la corrente che scorre nelle bobine del motore. Problemi di coppia non ne ho, in quanto il motore è demoltiplicato con una vite senza fine ed un paio di ingranaggi e la piattaforma pesa pochissimo.
Per rispondere anche a Enzo, quando il motore è fermo, grazie proprio al sistema di ingranaggi usato, il tutto rimane molto stabile, praticamente un chiodo.
Sto usando un motore recuperato da una stampante HP completo di carter ed ingranaggi, praticamente ho cannibalizzato parte del movimento delle testine di stampa e sembra che funzioni molto bene.

Il meccanismo è ancora sul banco e la scheda di gestione in fase di sviluppo, mentre il software procede a piccole routine di prova.
Qui lo schema di gestione ancora provvisorio e il display lcd in un test:

Arduino, Easydriver e display+key:
Immagine
44,53 KB

Display lcd (test):
Immagine
92,42 KB
ED

Avatar utente
Pinter75
Messaggi: 3
Iscritto il: domenica 21 dicembre 2014, 12:17
Nome: Alessandro
Regione: Trentino - Alto Adige
Città: Trento
Stato: Non connesso

Re: Motori passo passo

#13 Messaggio da Pinter75 »

Ciao Edgardo, sto seguendo l' argomento perché vorrei copiare il tuo sistema, sto cercando una gestione di rotazione per una piattaforma girevole, mi hanno suggerito di montare un motore passo-passo comandato da una scheda ARDUINO ma più non so " di queste cose non ci capisco, anzi non ho avuto nessuno che me le spiega" a progetto ultimato posso "acquistare" il tuo comando ?
In tanto Grazie

Alessandro
Alessandro Pinter

Avatar utente
Docdelburg
Socio GAS TT
Messaggi: 6160
Iscritto il: martedì 4 settembre 2012, 18:16
Nome: Mauro
Regione: Estero
Città: Madrid (España)
Stato: Non connesso

Re: Motori passo passo

#14 Messaggio da Docdelburg »

Pinter75 ha scritto:

Ciao Edgardo, sto seguendo l' argomento perché vorrei copiare il tuo sistema, sto cercando una gestione di rotazione per una piattaforma girevole, mi hanno suggerito di montare un motore passo-passo comandato da una scheda ARDUINO ma più non so " di queste cose non ci capisco, anzi non ho avuto nessuno che me le spiega" a progetto ultimato posso "acquistare" il tuo comando ?
In tanto Grazie

Alessandro


Ciao Alessandro, sarebbe cortese e opportuno da parte tua presentarti nell'apposita area dicendoci qualcosa di te e della tua passione per il modellismo ferroviario.
Non essendoci un mercatino nel forum ti chiedo gentilmente di prendere contatti direttamente (con messaggi personali in privato) con le persone quando si tratti di compravendita. Grazie

Avatar utente
Edgardo_Rosatti
Socio GAS TT
Messaggi: 4933
Iscritto il: venerdì 28 ottobre 2011, 0:59
Nome: Edgardo
Regione: Lombardia
Città: Muggiò
Età: 59
Stato: Non connesso

Re: Motori passo passo

#15 Messaggio da Edgardo_Rosatti »

Ciao Alessandro, come consigliato da Mauro è buona cosa presentarsi nell'apposita area dedicata prima di intervenire sul forum.

Per rispondere alla tua domanda posso dirti che esistono diversi modi per pilotare un motore passo passo con Arduino.
Il più semplice è quello di acquistare una Arduino Motor shield che puoi trovare sul sito ufficiale di Arduino qui:
https://www.arduino.cc/en/Main/ArduinoMotorShieldR3
Questa scheda consente di comandare 2 motori a spazzole a 12 VCC o un motore passo passo con un assorbimento totale massimo di 4 Ampere (con alimentatore esterno).
La scheda non l'ho mai provata, quindi non saprei dare ulteriori informazioni in merito, comunque se cerchi in rete trovi molte altre soluzioni e info.

Nel mio caso sto usando una piccola scheda chiamata easydriver in grado di pilotare motori passo passo fino a 30 VCC:
https://www.sparkfun.com/products/12779

L'hardware del mio progetto è terminato (lo schema elettrico lo trovi un paio di post sopra), manca solo il completamento del software.

Ti dico subito che non vendo e non faccio kit, posso solo mettere a disposizione gli schemi ed il software come open source per aiutare a realizzare il tutto e dare info limitatamente a questo progetto.

Ciao
ED

Avatar utente
v200
Messaggi: 10390
Iscritto il: domenica 3 maggio 2015, 18:31
Nome: roberto
Regione: Piemonte
Città: Torino
Ruolo: Moderatore
Stato: Non connesso

Re: Motori passo passo

#16 Messaggio da v200 »

Ciao Edgardo,
sempre interessanti i tuoi post sull'elettronica, tempo fa leggendo su TT modellismo qualcuno aveva utilizzato il motore di una stampante per fare un piano mobile per movimentare i convogli su due piani. In un altro articolo si era utilizzato il motore per automatizzare una coulisse.
Ovviamente pilotate con il programma Arduino.
Roby
Roby - In ogni fermodellista in enne c'è un po di masochismo.

Torna a “COLLEGAMENTI ELETTRICI”