13/04/2016, 21:57
Buonasera a tutti ragazzi, intanto come comanda la buona educazione mi presento: mi chiamo Paolo e premetto che di elettronica, purtroppo, ci capisco poco o niente.
Detto questo passo ad esporre il mio problema:
Sto cercando di comandare un semplice motore a 12 v (per la precisione questa è la descrizione - voltaggio 6-12v, 13000 - 26000 rpm, corrente 1,1 - 1,9 A) con la mia raspi pi3 e dopo aver letto qualche tutorial in rete ho deciso di comprare su amazon sia un micro controllore L9110S che un H-bridge stepper L298N per fare un po' di prove.
Da quello che ho capito il primo (L9110S) viene comandato da due GIPO, quindi ho collegato
il GPIo 22 al pin A-1B, il GPIO 23 (impostato come PWM per regolare la velocità) al Pin A-1A. Poi ho collegato un trasformatore 12V 20A ai due pin VCC e GROUND è collegato il motore al morsetto del motore A. Questo é il semplice codice in Python che ho buttato giù per provare:
Quindi ho voluto provare anche l'H-bridge ed anche qui, dopo essermi documentato un po' in rete credo di aver capito che gli occorrano tre GPIO per funzionare, uno dei quali impostato come PWM sempre per controllare la velocità. Quindi ho collegato il GPIO 27 al pin IN1, il GPIO 22 al pin IN2 e il solito GPIO 23 impostato come PWM per controllare la velocità al pin ENA (dopo aver tolto il ponticello che, sempre se non ho frainteso, serve solo se si vuole comandare un servo invece di due DC). Questo é il codice che ho scritto:
In ambedue i casi, però, il motore non ne vuole sapere di funzionare, evidentemente sbaglio qualcosa ma non sono proprio riuscito a capire cosa. Mi era anche venuto il dubbio che il motore fosse guasto, ma se lo collego direttamente al trasformatore, gira che è una bellezza.
C'è nessuno che è in grado di darmi una dritta?
Detto questo passo ad esporre il mio problema:
Sto cercando di comandare un semplice motore a 12 v (per la precisione questa è la descrizione - voltaggio 6-12v, 13000 - 26000 rpm, corrente 1,1 - 1,9 A) con la mia raspi pi3 e dopo aver letto qualche tutorial in rete ho deciso di comprare su amazon sia un micro controllore L9110S che un H-bridge stepper L298N per fare un po' di prove.
Da quello che ho capito il primo (L9110S) viene comandato da due GIPO, quindi ho collegato
il GPIo 22 al pin A-1B, il GPIO 23 (impostato come PWM per regolare la velocità) al Pin A-1A. Poi ho collegato un trasformatore 12V 20A ai due pin VCC e GROUND è collegato il motore al morsetto del motore A. Questo é il semplice codice in Python che ho buttato giù per provare:
Codice:
import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(22, GPIO.OUT)
GPIO.setup(23, GPIO.OUT)
motore=GPIO.PWM(23,100)
motore.start(0)
print "inizio"
GPIO.output(22, 0)
GPIO.output(23, 1)
for i in range (1,101):
motore.ChangeDutyCycle(i)
print i
time.sleep(5)
GPIO.cleanup()
print "fine"
Quindi ho voluto provare anche l'H-bridge ed anche qui, dopo essermi documentato un po' in rete credo di aver capito che gli occorrano tre GPIO per funzionare, uno dei quali impostato come PWM sempre per controllare la velocità. Quindi ho collegato il GPIO 27 al pin IN1, il GPIO 22 al pin IN2 e il solito GPIO 23 impostato come PWM per controllare la velocità al pin ENA (dopo aver tolto il ponticello che, sempre se non ho frainteso, serve solo se si vuole comandare un servo invece di due DC). Questo é il codice che ho scritto:
Codice:
import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(22, GPIO.OUT)
GPIO.setup(23, GPIO.OUT)
GPIO.setup(27, GPIO.OUT)
motore=GPIO.PWM(23,100)
motore.start(0)
print "inizio"
GPIO.output(27, 1)
GPIO.output(22, 0)
GPIO.output(23, 1)
for i in range (1,101):
motore.ChangeDutyCycle(i)
print i
time.sleep(5)
GPIO.cleanup()
print "fine"
In ambedue i casi, però, il motore non ne vuole sapere di funzionare, evidentemente sbaglio qualcosa ma non sono proprio riuscito a capire cosa. Mi era anche venuto il dubbio che il motore fosse guasto, ma se lo collego direttamente al trasformatore, gira che è una bellezza.
C'è nessuno che è in grado di darmi una dritta?