Utiliza un solo transistor pequeño para funcionar un pequeño motor DC.
Mientras que el circuito es muy directo (algunos dicen aburrido?) tiene un
genial truco del software - modulada de ancho de pulso (PWM)
control - con rampa de velocidad de velocidad hacia arriba y hacia abajo.
Es solamente un transistor... Que tenía que hacer algo para que sea más
¡ interesante!
El transistor (tipo de NPN 2N3904) está ahí para manejar la mayor
corriente requerida por el motor. (ver esquema de conexiones).
He añadido un par de otros juguetes del circuito transistor simple para que sea
más fácil ver lo que está sucediendo aquí.
El LED rojo es software de control. Se enciende solo cuando el motor esté
aceleración (aceleración) y apagado hacia atrás justo antes de que el motor arranca
desacelerando.
El LED azul está conectado entre el colector del transistor - pernos del emisor.
Se enciende sólo cuando el transistor se da vuelta apagado. Así que básicamente está mostrando
el período de apagado entre los pulsos de impulsión del motor.
O - Conecte el LED azul entre del transistor colector y V +
por lo que se puede ver la tensión de retroceso EMF!
Video:
Un corto video clip de esta demo en funcionamiento...
http://www.youtube.com/watch?v=gd39Jtel2uA&feature=youtu.be
Demo:
GIRO puede parecer un poco extraño al principio, pero es un idioma fácil de aprender.
En primer lugar, usted necesita la herramienta de la hélice, que incluye el editor, ayuda
archivos, ejemplos, objetos comunes y el Manual de la hélice.
Ver el enlace de abajo para agarre.
Existen tres lazos en este pequeño programa de demostración.
El exterior lazo - Loop para siempre.
Y dos bucles internos que hacen que la rampa de trenes - rampa para arriba y rampa de bajada.
Rampa para arriba comienza con anchuras de pulso muy corto y aumenta la anchura de cada uno
pulso sucesiva en el tren.
Rampa abajo hace lo opuesto, acortando cada pulso subsecuente en el tren.
El motor reacciona como está encendido, correr más rápido que el poder quedo en
durante un largo periodo.
Es realmente el corazón de los esquemas de modulación de ancho de pulso
Herramienta de programación de hélice está libre de paralaje en:
http://www.Parallax.com/tabid/832/default.aspx
La estructura del programa es determinada por la muesca. Así que cuidado con eso!
En este ejemplo se puede copiar y pegar directamente en la herramienta de apoyo.
Código:
{Motor.spin Richard Lamb - 15 de junio de 2013 cavelamb}
CON
_CLKMODE = XTAL1
_XINFREQ = 5_000_000
' definir tiempos
MS = _XINFREQ / 1_000
USec = _XINFREQ / 1_000_000
Tlong = Usec * 600
Tshort = ms * 300
' definir pines IO
P_LED = 06
P_Motor = 07
ENCENDIDO = 1
OFF = 0
' define constantes de programa
Tsteps = 120' número de pasos por la rampa
VAR
X largo
PUB PWM_Motor_Demo
dira [P_LED]: = 1'
dira [P_Motor]: = 1'
Outa [P_Motor]: = 0' iniciar bajo
Repetir ' repetir para siempre
Outa [P_LED]: = 0' LED en aceleración
Repetir X desde 1 hasta Tsteps 1' rampa de bucle
Outa [P_Motor]: = 1' encender energía del motor
waitCNT ((X*Tlong) + cnt) ' retardo más largo cada paso hace un pulso más largo
Outa [P_Motor]: = 0' motor apague la
waitCNT ((Tsteps - X + 1) * Tlong + cnt) ' + 1 para prevenir 0 Envuelva el contador a 8 minutos.
Outa [P_Motor]: = 1' demora corta para alargar el tiempo de ON.
waitcnt (Tshort * 5 + cnt)
Outa [P_LED]: = 1' LED apagado mientras decelera
Repetir X desde 1 hasta Tsteps 1' rampa abajo lazo
Outa [P_Motor]: = ON
waitCNT ((Tsteps - X + 1) * Tlong + cnt) ' retardo corto cada paso hace un pulso más corto
Outa [P_Motor]: = OFF
waitCNT ((X*Tlong) + cnt)
waitcnt (Tshort * 5 + cnt) ' corto retraso mientras que fuera de