Motor Shield R3 e problemi di temperatura

ragazzi.... :slight_smile:
io vi posso dare un suggerimento, per me non cambia nulla....

il fatto è che con questo sistema piloti tutti i tipi .....e con semplicità generi anche le fasi, con il tuo no.
Pensa se devi realizzare un controllo di posizionamento multi assi con movimenti interpolati.....
ciao

uwefed:
Perché non puoi pilotare un motore passo paso in tensione col L298?
Ok il pilotaggio in corrente ha vantaggi ma anche svantaggi (tensione di alimentazione alta (ca 4volte) e percui l' alimentatore deve essere 4 volte piú potente). Con motori con resistenza avvolgimenti alta non é possibile.
Ok che puoi anche col L298 in combinatzione col L297 costruire un driver in corrente, ma per aplicazioni semplici dove non serve una coppia massima a velocitá alta basta un pilotaggio in tensione.

Ciao Uwe

OK; se è così UWe ti chiedo gentilmente di verificare il mio precedente intervento, circa l'uso di transistor ed il calcolo delle R di limitazione, in modo da fornire a kurt una soluzione; poi lui leggerà l'intervento di cyclone e deciderà cosa fare. Grazie. Michele

@ Cyclone: è ovvio che per ogni cosa esiste la soluzione ottimale, ma a vote si cerca la soluzione per rispondere ala richiesta dell'utente. Se Kurt nello specifico avesse chiesto UNA soluzione da realizzare sarebbe stato un discorso, ma visto che ha la MSr3, se possibile gliela si fa sfruttare, a volte il risparmio economico va anche oltre la semplicità, questo intende Uwe, se mi posso permettere...

Quello che vorrei fare io è pilotare degli step motor nel modo più semplice possibile ( nel progetto che avrei in mente ne servirebbero ben 6 ) Ho comprato due di queste Motor shield ma a quanto dite non paiono proprio indicate per pilotare stepper.
Vi chiedo allora quale sia il metodo migliore per controllare senza gorssi problemi ed in modo efficiente questi motori. C'è un dispositivo che collegato ad arduino magari mediante ISP o I2C possa comandare un certo numero di motori? e che non sia impossibile da usare o abbia bisogno di altri componenti aggiuntivi (tipo transistor come citati sopra) ?
considerate che non tutti sono esperti in elettronica come voi Purtroppo.
Io sono un programmatore e su quello non ho problemi ma per il resto sono proprio a livello BASE! :astonished:

Comunque sia con il motore piccolo che ho:
http://robot-italy.com/it/39byg013-nema-17-bipolar-20mm-stepper.html
mi pare risponda bene secondo lo sketch.
Mentre con quello grande:

non saprei neanche come collegarlo visto che ha sei cavi, qualcuno me lo sa suggerire (giusto per provarlo)

Grazie ancora per la pazienza e le vostre utilissime risposte.

come ti avevo detto prima uno dei più semplici metodi per comandare più motori contemporaneamente è quello di usare, come in questo caso, 6 L297 collegati ad altrettanti L298.

per ogni L297 impiegheresti solo 2 segnali Clock e Direzione.... gli altri puoi anche non usarli.....
quindi in totale con 12 uscite digitali potresti risolvere il problema.
Io non so se sei in grado di realizzare un PCB ma ti consiglio di attrezzarti poichè tante volte ti capiterà di dover realizzare circuiti ad hoc.
questo è uno dei casi.

kurtommy alla Tua domanda non é semplicemente da rispondere.
Il circito di pilotaggio dipende dal motore che usi.
Motori passo passo esistono unipolari e bipolari ( 6 o 5 e 4 fili)
Poi indipendenti da questo esistono con una resistenza del avvolgimento basso (diciamo sotto ca 5 Ohm) e una tensione nominale bassa per essere pilotati in corrente oppure con una resistenza alta (>20 Ohm) e una tensione nominale alta.

Il vantaggio di un pilotaggio in corrente é che a velocitá alta la coppia é piú alta rispetto a un pilotaggio in tensione ed é possibile implementare micropassi.

Oggigiorno la difficoltá per implementare il pilotaggio in corrente é minima perché ci sono integrati che lo fanno automaticamente.
La combinazione L297-L298 lo fa ma sono integrati di concetto di almeno 30 anni fa e il L298 ha come stadio di uscita dei transistori PNP/NPN e non MOSFET come quelli moderni.

Come circuiti di pilotaggio consiglierei per esempio un Easydriver col A3967 che puó pilotare fino a 750mA per fase oppure un Big Easydriver oppure il stepper driver della Pololu entrambi col A4988 che puó pilotare fino a 2A. Tutti con possibilitá di micropassi ( passi intermedi tra i passi intermedi regolando il valore della corrente delle 2 fasi del motore).

Per il motore sopranminato consiglierei un Easydriver. Easy Driver Examples e Easy Driver stepper motor driver

Tutti i driver nominati li piloti con un segnale di direzione e dei impulsi per fare un passo / micropasso. Altri pin come la scelta dei passi pieni/micropassi enable ecc puoi mettere fisso su massa o 5V a secondo coem li vuoi usare.

Ciao Uwe

Per usare un transistore per pilotare un motore passo passo quest ultimo deve eserre uno unipolare. Il comune dei 2 avolgimenti va a polo positivo dell'alimentazione e i 4 avvolgimenti messi a massa coi transistori.
Per i motori http://robot-italy.com/it/39byg013-nema-17-bipolar-20mm-stepper.html come proposto da kurtommy essendo bipolari servono 2 ponti H per generare correnti positive e negative attraverso gli avvolgimenti del motore.
In generale non é saggio usare delle resistenze per limitare la corrente.

Il L298 ha delle perdite di tensione (UCEsat) sui transitori di uscita abbastanza alti.
Dal datasheet: VCEsat Total Drop a una corrnete di uscita di 1A: da 1.80V a 3.2V.
Con 0,4 A sará minore ma abbastanza da avere con un alimentazione di 5V alimentazione lato motore ca 2,7V sul motore.

la soluzione della Pololu la considero ottimale e con un buon rapporto costo/prestazione.
proprio per questo motivo la Motor Shield R3 mi sembra essere una scelta davvero obsoleta per essere usata ancora oggi in abbinamento con arduino.

boh! chissà il motivo della scelta del L298 ....

boh! chissà il motivo della scelta del L298 ....

Perché puó essere usato per pilotare 2 motori DC.
Altri ponti H con logica per pilotare motori passo passo (sequenze come L297, o microstepping ecc) non possono essere usati come ponti H per Motori Dc.
Ciao Uwe

uwefed:
Per il motore sopranminato consiglierei un Easydriver. Easy Driver Examples e Easy Driver stepper motor driver

Ah questo mi pare una bomba e anche semplice a usare, con microstep, acelerazione e solo due pin per il controllo! messo tra i preferiti, grazie 1000.
La Motor shield ne usa molti di più.

Allora adesso vi chiedo l'ultimo sforzo visto che ne ho comprate due di queste Motor shield:
Quali motori DC mi consigliate di acquistare per utilizzarli con questa scheda?
Ne ho qualcuno ma misurando con il tester hanno tutti resistenze molto basse, 2.8Ohm, 1.8 Ohm ... con una lipo da 3.7V (o alimentatore visto che le sconsigliate sempre) I = 3,7V / 1.8Ohm = 2.055A ci sono proprio a pelo con la corrente massima che è 2A!!! se aumento un attimo la tensione vado subito oltre!

Ci sono motori con resistenze maggiori o che assorbono meno?

Grazie 1000
Ciao

Per il motore sopranminato consiglierei un Easydriver. Easy Driver Examples e Easy Driver stepper motor driver

Sopranominato é inteso motore passo passo. Queste schedine non possono pilotare motori DC.

Ciao Uwe

si si avevo capito ma io chiedevo che motori DC usare per essere comandati da una Motor Shield R3!!

Ripongo nuovamente la mia domanda per non aprire un altra discussione.
Qualcuno mi può indicare un motore DC (visto che mi avete detto che i passo passo non sono adatti per questa scheda) adatto ad essere comandato dalla Motor Shield R3 (visto che ne ho due)

Grazie 1000.
Tom

Possibile che nessuno mi risponda? prima eravate in un sacco a consigliarmi!!! :cold_sweat:

i motori DC sono motori comunissimi, ce ne sono milioni di tipi, devi vedere le caratteristiche della motor shield e trovare modelli che rientrino in tali caratteristiche, non devi fare grandissimi sforzi :wink:

EDIT: voglio provare a rimettere in discussione la cosa. Sul link ufficiale leggo testualmente:

Operating Voltage 5V to 12V
Motor controller L298P, Drives 2 DC motors or 1 stepper motor Max current 2A per channel or 4A max (with external power supply)
Current sensing 1.65V/A
Free running stop and brake function

Perché gli è stato detto che non può pilotare correttamente uno step motor? Chi sbaglia, chi suggerisce o il team di Arduino (che a questo punto spaccerebbe qualcosa per qualcos'altro e sarebbe gravissimo)?

MI parleva di aver letto di correnti inferiori al mezzo A, ma qui leggo 2A per canale o 4A massimo.
Si possono avere chiarimenti in merito, nell'interesse di Kurtommy, ovviamente?

Concludo dicendo che NON ho mai usato alcun tipo di motore quindi non mi condannate al rogo se ho sbagliato.

Il Motor shield non puó essere facilmente usato per motori passo passo perché ogni ponte H del L298 é pilotato con i segnali DIR (su IN1 e DIR negato su IN2; per il secondo ponte H analogamente), un segnale PWM e un segnale break. Questo facilitá l' uso per pilotare un motore Dc ma limita uno stepper solo per la modalitá di pilotaggio Full Step Drive dove sempre tutte 2 gli avvolgimenti sono pilotati (se non si usa il segnale break o PWM. Non é possibile usare le modalitá di pilotaggio Wave Drive e Half Stepping perché in entrambi i casi é necessario spegnere uno dei 2 avvolgimenti. Usando il pin PWM (o meno indicato break) é possibile spegnere l'avvolgimento. Per realizzare questo é necessario scrivere il pilotaggio perche la libreria stepper non prevede questa configurazione.

Il L298 é un doppio ponte H realizzato con transistori NPN e PNP che sopporta 2A continui per uscita e 3A per impulsi singoli di durata minor di 0,1mSec.
Il datasheet permette di mettere i 2 ponti H in paralello ma solo nel caso che si collega OUT1 con OUT4 e OUT2 con OUT3. Questa configurazione di mettere in paralello le uscite sulla motorshield non é possibile perché il CD4077 che elabora il segnale DIR non lo permette. Nel caso che é fattibile puó erogare 4A. Anche se citato nella descrizione nel Arduino Motor Shield di poter erogare 4A é una cosa fuori dalle specifiche del datasheet.
http://www.datasheetcatalog.org/datasheet/SGSThomsonMicroelectronics/mXrqqxz.pdf

Ciao Uwe

Bella spiegazione, chiara, grazie.
Allora bisognerebbe con una certa urgenza correggere il PlayGround.
Vedi, io non ho mai usato dei motori, ho comprato per dotazione sia step che dc che servo.
Il giorno che trovo un po' di tempo magari compro la r3 per quello che leggo e poi mi sento dire che sullo step non va bene, non la prenderei bene, questo intendo dire.
Grazie ancora. Ciao

Io visto che ne ho comprate due l'ho presa ancora peggio :astonished: ]:slight_smile: ]:slight_smile:

kurtommy:

[quote author=Michele Menniti link=topic=119370.msg912174#msg912174 date=1346622815]
Bella spiegazione, chiara, grazie.
Allora bisognerebbe con una certa urgenza correggere il PlayGround.
Vedi, io non ho mai usato dei motori, ho comprato per dotazione sia step che dc che servo.
Il giorno che trovo un po' di tempo magari compro la r3 per quello che leggo e poi mi sento dire che sullo step non va bene, non la prenderei bene, questo intendo dire.
Grazie ancora. Ciao

Io visto che ne ho comprate due l'ho presa ancora peggio :astonished: ]:slight_smile: ]:slight_smile:
[/quote]
infatti indirettamente mi riferivo anche a te :disappointed_relieved:

Ho letto attentamente la discussione e credo che possa avermi risolto il mio problema.Attualmente per pilotare lo Stepper ho la
Motor Shield FE: FuturaNet: Il portale per makers ed elettronica by Futura Group
( che scalda da morire, non mi da la possibilità di fare microstepping con conseguenti vibrazioni del motore e strappi, e per logica, non essendo molto ferrato in materia elettronica non mi permette di ottenere la coppia dichiarata dallo stepper, si blocca appena lo tocco)

Vorrei però chiedervi conferma se, con il materiale a mia disposizione più la Big Easy Driver va bene o avete un altro driver da consigliarmi ( ho trovato anche questo che arriva a 3A :http://www.robot-italy.com/it/motor-servo-controllers/stepper-motor-controllers/l6470-stepper-driver-breakout.html)
Quello che ho a disposizione è:

Arduino 2009
Lo stepper è questo: http://www.robot-italy.com/it/stepper-motor-unipolar-nema-23-54mm.html

Grazie per una risposta..