Strano comportamento stepper

ho montato questo e ho utilizzato i comandi nella libreria stepper.h

#include <Stepper.h>

Stepper myStepper(100, 5,6);

void setup()
{
  myStepper.setSpeed(25);
}
void loop()
{
  myStepper.step(100);
}

ma fa 3 passi in un verso e poi si ferma... come transistor ho usato i BC33725 (NPN general purpouse)... il circuito è montato bene. uso un L293B alimentato a 9 volt.
boh

hai messo i diodi? magari sono quelli

No, sono i NPN .. ci scommetto :smiley:
Quellli non li troviamo indicati da nessuna parte...
:frowning:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1258354000

perchè lo schema si riferisce all'integrato L293D che ha i diodi all'interno

hai ragione Federerico... infatti mi pareva impossibile che funzionasse perchè i transistor non sono mica polarizzati in questo modo... sul collettore nel mio caso non ho niente... dovrei metterlo a 5 volt magari con una resistenza modo che, quando gli arrivano 5 volt in base, l'npn va in conduzione e mi porta a zero il secondo ingresso! credo

FedeRErico no dai! XD :stuck_out_tongue:

Comunque non è detto che io abbia ragione, i diodi servono per il ricircolo delle correnti inverse, se non li metti può capitare che friggi l' L293, mi sono pronunciato solo perchè ho visto che stavi usando una versione senza diodi interni, con lo schema di uno coi diodi interni.

Detto ciò, un comportamento come quello che capita a te non me lo spiego (non ho mai provato con uno stepper).

Potrebbe essere la funzione delay() che manca nel corpo del loop, è possibile che la velocità di esecuzione del programma superi la capacità di commutazione del transistor.

potrebbe essere che hai invertito i fili di un motore ?

@Federico chiedo venia, scrivo senza guardare lo schermo e non mi fa il cancella :'(... vabbè comumque i diodi non so quanto c'entrino perchè sull'ingresso non ce ne stanno... stanno sulle uscite... solo che mi pare impossible che sto schema funzioni... il transistor come fa a polarizzarsi come interruttore? mi sa che è proprio sbagliato lo schema!

@ nuovo utente, no tranquillo! I delay sono intrinsechi nella libreria stepper.h (almeno credo) e vengono utilizzati quando faccio myStepper.setSpeed(25); ovvero 25 rivoluzioni per minuto. La frequenza del pwm inoltre l'ho misurata ed è di 13Hz mi pare, comunque molto bassa quindi ce la fa tranquillamente.

@tinman66 non credo ho rifatto il circuito 2 volte e ho provato tutte le combinazioni di fili nella speranza che fossero quelli!

Comunque mi sa che sto circuito è sbagliato per davvero! qualcuno di voi ha idea di come funzioni? quegli npn dovrebbero fare dei not, ok, ma i 5 volt al secondo ingresso come glieli danno?

ti consiglio prima di leggerti un ottimo tutorial sui motori passo passo e i sistemi di controllo relativi sul sito di vincenzov, trovi tutto teoria e pratica del loro controllo:

guardati anche gli altri tutorial sono eccezzionali per completezza e comprensione.
anzi sarebbe quasi da linkare nel plyground italiano la sua pagina.

so come funziona uno stepper, sono pure riuscito a pilotarlo come volevo senza la libreria stepper.h!
guarda http://www.youtube.com/watch?v=euU-LTcav7w

Non mi torna prorpio come possa funzionare quel transistor... se non ci sono resistenze di pull-up sugli ingressi il transistor non è nemmeno alimentato.
Lo avete mai visto funzionare questo circuito?

nel datasheet ho visto solo un diodo tra massa e l'ingresso quindi quello serve per tagliare tensioni che potrebbero danneggiare l'integrato!

avevo ragione... prima non vedevo niente sul collettore... ora c'è un'onda quadra di 5V!

EDIT funziona tutto adesso, ho corretto il circuito con res di pull up :smiley: