Documentos de Académico
Documentos de Profesional
Documentos de Cultura
com
Descripción/información de pedido
El L293 y el L293D son controladores de media H cuádruples de alta corriente. El L293 está diseñado para proporcionar
corrientes de excitación bidireccionales de hasta 1 A a voltajes de 4,5 V a 36 V. El L293D está diseñado para
proporcionar corrientes de excitación bidireccionales de hasta 600 mA a voltajes de 4,5 V a 36 V. Ambos dispositivos
son diseñado para impulsar cargas inductivas como relés, solenoides, motores paso a paso bipolares y de CC, así como
Todas las entradas son compatibles con TTL. Cada salida es un circuito impulsor de tótem completo, con un sumidero
de transistor Darlington y una fuente pseudo-Darlington. Los controladores se habilitan en pares, con los
controladores 1 y 2 habilitados por 1,2EN y los controladores 3 y 4 habilitados por 3,4EN. Cuando una entrada de
habilitación es alta, los controladores asociados se habilitan y sus salidas están activas y en fase con sus entradas.
Cuando la entrada de habilitación es baja, esos controladores están deshabilitados y sus salidas están apagadas y en
estado de alta impedancia. Con las entradas de datos adecuadas, cada par de controladores forma un controlador
Diagrama de bloques
40/106
V
CC1
1
1 dieciséis
2
1 15 1 METRO
0 0
1
3 14
4 13
METRO 5 12
6 11
2 3
1 1
0 7 10 0
8 9 1 METRO
V
CC2
Me harté de los diagramas de pinout indescifrables dentro de las hojas de datos, así que
diseñé el mío propio que creo que brinda información más pertinente.
El lado izquierdo trata con el primer motor, el lado derecho trata con un segundo
motor. Sí, puede hacerlo funcionar con un solo motor conectado.
41/106
Diagrama de cableado
42/106
Instrucciones de prueba
Este proyecto está diseñado para aprender a usar el botón para controlar el LED. Primero
necesitamos leer el estado del botón y luego determinar si enciende el LED de acuerdo con el
estado del botón.
C_Code_6_DC_Motor
Primero, observe el resultado del proyecto, luego analice el código.
2. Use el comando cd para ingresar al directorio 6_DC_Motor del código C.
cd ~/LAFVIN_PI_Code/C_Code/6_DC_Motor
2. Use el siguiente comando para compilar el código "DC_Motor.c" y generar el
archivo ejecutable "DC_Motor.c"
gcc Motor_CC.c ‒o Motor_CC -lwiringPi
3. Luego ejecute el archivo generado "DC_Motor".
sudo ./DC_Motor
El motor de CC girará durante 5 segundos y luego se detendrá durante 5 segundos, luego durante otros 5
segundos, continuará el proceso.
para(i=0;i<3;i++){
retraso (1000);
}// este bucle se demorará 3*1000ms
digitalWrite(MotorEnable, BAJO)
// Si 1,2EN (pin1) está en nivel bajo, L293D no funciona. El motor deja de girar.
Python_Code_6_DC_Motor
Primero, observe el resultado del proyecto, luego analice el código.
1. Use el comando cd para ingresar al directorio 6_DC_Motor del código Python.
cd ~/LAFVIN_PI_Code/Python_Code/6_DC_Motor
2. Utilice el comando de Python para ejecutar DC_Motor.py.
python DC_Motor.py
El motor de CC girará durante 5 segundos y luego se detendrá durante 5 segundos, luego durante otros 5
segundos, continuará el proceso.
43/106
Explicación del código
GPIO.configuración (MotorPin1, GPIO.OUT)# Establecer pin1 y pin2 para la dirección de rotación del
motor como pin de salida
GPIO.configuración (MotorPin2, GPIO.OUT)
GPIO.setup(MotorEnable, GPIO.OUT)# Establecer pines para las condiciones de trabajo del motor como pin de
salida
GPIO.salida(MotorEnable, GPIO.BAJO)# Establecer el nivel bajo del motor para el estado inicial
GPIO.salida(MotorEnable, GPIO.ALTO)# Poner el motor en nivel alto GPIO.salida (MotorPin1,
GPIO.ALTO)# Establecer pin1 en nivel alto y pin2 en nivel bajo GPIO.salida (MotorPin2,
GPIO.BAJO)# Hacer que el motor gire en el sentido de las agujas del reloj tiempo.dormir(5)# girar
durante 5 segundos GPIO.salida(MotorEnable, GPIO.BAJO)# Detener el motor tiempo.dormir(5)
#espera 5 segundos
44/106
Lección 7 Servos
Acerca de esta lección:
Introducción
Servo es un tipo de motorreductor que solo puede girar 180 grados. Se controla
mediante el envío de pulsos eléctricos desde su raspberry pi. Estos pulsos le dicen al
servo a qué posición debe moverse. El Servo tiene tres cables, de los cuales el marrón
es el cable de tierra y debe conectarse al puerto GND de raspberry pi, el rojo es el cable
de alimentación y debe conectarse al puerto de 5v, y el naranja es la señal cable y debe
conectarse al puerto GPIOx.
Usamos una señal PWM de 50 Hz con un ciclo de trabajo en un cierto rango para impulsar el servo. El
tiempo de duración de 0,5 ms-2,5 ms de nivel alto de ciclo único PWM corresponde al ángulo del
servo 0 grados - 180 grados linealmente. Parte de los valores correspondientes son los siguientes:
0.5ms 0 grado
1ms 45 grados
1,5 ms 90 grados
2ms 135 grados
2,5 ms 180 grados
45/106
Diagrama de cableado
46/106
Instrucciones de prueba
En este experimento, el servo de control de frambuesa pi gira desde el ángulo mínimo hasta el ángulo
máximo, y luego hace que el servo gire desde el ángulo máximo hasta el ángulo mínimo
C_Code_7_Servo
Primero, observe el resultado del proyecto, luego analice el código. 3. Use
el comando cd para ingresar al directorio 7_Servo del código C.
cd ~/LAFVIN_PI_Code/C_Code/7_Servo
2. Use el siguiente comando para compilar el código "Servo.c" y generar el archivo
ejecutable "Servo.c"
gcc Servo.c ‒o Servo -lwiringPi
3. Luego ejecute el archivo generado "Servo".
sudo ./Servo
Después de ejecutar el programa, el servo girará de 0 grados a 180 grados, y
luego de 180 grados a 0 grados, circularmente.
softPwmCreate(pin, 0, 200); }
/* función de inicialización para servo pin PWM, pulso de 50 Hz, a saber, ciclo de 20 ms, s
necesario para controlar Servo. En la función softPwmCreate (int pin, int initialValue, in t
pwmRange), la unidad del tercer parámetro pwmRange es 100US, es decir, 0,1 ms. Para r
obtener el PWM con un ciclo de 20 ms, el pwmRange debe establecerse en 200. Entonces, norte
como subfunción de servoInit (), creamos un pin PWM con pwmRange 200.*/
Python_Code_7_Servo
Primero, observe el resultado del proyecto, luego analice el código.
1. Use el comando cd para ingresar al directorio 7_Servo del código Python.
cd ~/LAFVIN_PI_Code/Python_Code/7_Servo
2. Use el comando Python para ejecutar Servo.py.
python Servo.py
47/106
Después de ejecutar el programa, el servo girará de 0 grados a 180 grados, y
luego de 180 grados a 0 grados, circularmente.
48/106
Lección 8 LCD1602
Acerca de esta lección:
Introducción
LCD1602
Introducción a los pines de LCD1602:
VSS: un pin que se conecta a tierra
VDD: Un pin que se conecta a una fuente de alimentación de
+5V VO: Un pin th
RS: Un registro
Puedes seleccionar
registro, cual
L/E: una lectura
E: Una habilitación
ejecutar relevante
D0-D7:Alfiler
A y K: Alfiler
El chip de serie a paralelo utilizado en este módulo es PCF8574 (PCF8574A), y su dirección I2C predeterminada es
0x27 (0x3F), y puede ver todo el bus RPI en la dirección de su dispositivo I2C a través del comando "i2cdetect ‒y
1" para . (Consulte la sección "Configuración I2C" a continuación) a continuación se muestra el diagrama
esquemático de pines PCF8574 y el diagrama de pines de bloque:
49/106