UDN2917EB motor driver stepper stampante

Buongiorno a tutti. Mi avvicino al mondo degli stepper per la prima volta. Ho smontato una stampante epson stylus color 800 e all' interno ho trovato 3 motori stepper. Cercando le specifiche ho trovato il manuale di servizio della stampante e i motori sono di tipo bipolare con tensione operativa di 42v

I motori sono pilotati da tre UDN2917EB dual full bridge pwm motor driver
datasheet:Redirect Notice
e sono pilotati in questa configurazione: Motor Driver Circuits - Epson Stylus COLOR 800 Service Manual [Page 59] | ManualsLib.
Data la tensione di questi motori (e per non spendere) vorrei riutilizzare i driver già presenti nella stampante. E' possibile controllarli come un l298N? ho notato che essi sono collegati al processore della stampante tramite pin "phase" e non come un l298N tramite pin "enable" ma sul driver UDN2917EB sono presenti entrambi. Ringrazio anticipatamente per l' attenzione

Nel 2917, il pin "phase" cambia lo stato del ponte (o se preferisci, inverte la polarita' delle due uscite del ponte), mentre l'enable disabilita le uscite (le scollega, o spegne completamente il ponte)

Ovviamente con questa configurazione vanno usati solo motori passo-passo senza connessione in comune fra le fasi (2 fasi / 4 fili), e per farli girare devi pilotare entrambi gli ingressi phase con la corretta sequenza, tenendo enable a 0, mentre con I0 ed I1 imposti la massima corrente per il motore.

ok grazie intato della risposta..si i motori hanno 4 fili e sono proprio quelli tolti dalla stampante per cui devono andare bene. Come trovo la "sequenza corretta" di phase? e sopratutto con I0 e I1 piloto completamente il motore passo-passo? non servono anche gli altri due ingressi?

ho trovato questo..il problema è che non ho idea di come realizzare la cosa con arduino..
CW
Phase 1 Phase 2
0 0
0 1
1 0
1 1
CCW
Phase 1 Phase 2
0 0
1 0
0 1
1 1

Gli ingressi "I" servono, insieme agli ingressi VREF, sia per settare la massima corrente che il driver puo dare al motore, sia in condizioni particolari per controllare il funzionamento in "microstep", ma nel tuo caso credo che non serva un'uso simile ... una volta settati correttamente, li lasci cosi e via ... vedi solo di non settarli entrambi ad 1 contemporaneamente, se no la corrente va a zero ed il motore non gira :wink:

Le sequenze sono quelle, ruotando a turno gli ingressi decidi in che senso far girare il motore ... devi usare due pin dell'arduino per pilotarli (penso con le digitalWrite) ... ad esempio, passando da 00 a 01 a 11 a 10 e cosi via, ruota in un senso ... da 00 a 10 a 11 a 01 e cosi via ruota nell'altro ...

Visto che nella stampante i motori vengono pilotati in corrente. Non credo che i motori sono per 42V; dirrei per una tensione < di 12V
Ciao Uwe

uno dei motori in questione è questo: Minebea EM-261 Astrosyn Stepper Motor 17PM-K212-P2T
http://img37.imageshack.us/img37/2157/e1o7.jpg (quello a sinistra)
il manuale nella parte motori riporta questo: "Drive voltage: 42 VDC 5% (The voltage applied to the driver)".

Sulla pista su cui sono attaccati i driver e i motori è presente una scritta che riporta 42v http://img43.imageshack.us/img43/7906/j9xs.jpg

il datasheet del UDN2917EB dice che sul pin Vbb (Load Supply) possono essere forniti da min 10V a max 45V, inoltre l' alimentatore della stampante fornisce solo due tensioni 5V e 42V, ciò mi porta a dedurre che il motore operi a 42V o sbaglio?

se così fosse è giusto fare così:

  • +5V sul pin Vcc(logic supply) e massa su gnd (anche su arduino?)
  • +42V su pin Vbb e massa su gnd e inserire un condensatore >=47uF tra Vbb e gnd (da datasheet e anche da pcb stampante)
  • settare I0 = Low, I1 = Low per la corrente massima in uscita (Valore per Low? 0.8V? e High 2.4V?, che pin di arduino?)
  • fornire tramite due pin digitali di arduino la sequenza sui pin phase per la rotazione oraria o antioraria
  • mettere la tensione giusta su Vref: non ho capito cosa mettere su Vref..il datasheet riporta min 1.5V max 7.5V e in seguito "Varying the reference voltage (VREF) provides continuous control of the peak load current for micro-stepping applications, within the specified limits for VREF" ..quindi potrei per esempio dargli costantemente +5V?

dovrei essere a posto adesso?

Il UDN2917EB é un driver in corrente. devi settare la corrente giusta per il motore senó se é troppo alta quello si surriscalda e si fonde.

Ciao Uwe

sulla pcb della stampante c'è una resistenza da 0.39Ohm +-2% che credo sia quella che chiamano Rs nella formula ITRIP = VREF/10 RS. Potrei ricollegare tutto e provare con un tester Vref? un altra cosa..come stabilisco a che distanza temporale dare gli impulsi sul pin phase?

La frequenza e percui i tempi dei segnali phase determinano i passi del motore e percui la sua velocitá di rotazione.
Ciao Uwe

Ho riguardato le specifiche della stampante e per uno dei motori: http://img706.imageshack.us/img706/7571/k98v.jpg
da che valori potrei partire?

Molti dei dati che ti servono sono nella documentazione che hai gia linkato tu ... ad esempio, per le correnti, devi calcolare le Rs (si, sono quelle che dici tu) e la Vref per ottenere la corrente che vuoi, tenendo presente i limiti indicati nel datasheet, e cioe' che la massima corrente (in tutto) e' di 1.5A, e tenendo presente anche la massima dissipazione di potenza del chip (grafico in seconda pagina), e considerando che e' indicato anche a quanti Volt lo puoi usare (da 10 a 45 V) ... la frequenza, piu che dal driver, dipende di solito dal motore (motori piu grossi in genere funzionano a frequenze, e quindi velocita', minori) ... nel tuo ultimo link c'e' indicata la frequenza da 240 a 4080 Hz, parti da 1KHz e fai qualche prova per vedere le velocita' che ottieni e se sono quelle che ti servono ... ed ovviamente, considera che ti servono due distinte alimentazioni, la parte di potenza funziona da 10 a 45V (quindi puoi usare un'alimentatore da 12V), mentre la logica e gli ingressi vanno a 5V ... ed ancora, ricordarsi i condensatori di filtro sia sul 12V che sul 5V, almeno 47uF, meglio se il doppio, con un 100nF in parallelo ...

grazie mille..si il mio problema era proprio leggere il datasheet..vengo da un liceo scientifico e ora faccio ingegneria dell' informazione e di circuiti ne ho visti gran pochi!