miércoles, 8 de diciembre de 2021

Motor paso a paso unipolar

 https://www.youtube.com/watch?v=2-nVV9S7leM&ab_channel=BitwiseAr

El motor paso a paso está diseñado para dar pequeños pasos con gran precisión y torque, es decir que el conjunto de engranajes disminuye la velocidad pero aumenta la fuerza


El motor tiene un consumo de corriente por bobina que es demasiado elevado para conectarlo de forma directa a un pin digital de arduino. Para ello es necesario un drive



Conexión. 

  1. Mediante 4 cables conectaremos Arduino al módulo controlador
  2. Alimentamos al controlador desde Arduino con 5V


El giro del motor se genera a través de la energización de las bobinas y aquí tenemos 3 tablas que muestran la relación de las bobinas activadas y la dirección que va tomando el motor y las diferentes secuencias de paso


Programación

  1. Señalar las variables de los pines del módulo controlador
  2. Declaramos la variable "demora" con el número indicado que representará los milisegundos de demora entre pasos lo cual tiene un límite de 10ms
  3. En el setup señalamos todos los pines como salida del Arduino

void loop

Recordemos que el engranaje tiene una reducción de 1:64 y si utilizamos la secuencia de paso simple debemos considerar que el rotor requiere 8 ciclos.

  1. Como en esta secuencia de paso completo simple tenemos 4 pasos, debemos representarlos en el digitalWrite encendiendo con HIGH el pin según corresponda en la tabla 
  2. Agregamos el delay con al variable demora
  3. Luego debemos meterlo en un bucle for donde la condición es llegar a 512 que corresponderían a cada paso, ya que si multiplicamos 512*4 nos da 2048
  4. Finalmente, agregamos una detención del motor apagando todos los pines por 20 ms

Matriz array bidimensional

Si visualizamos una matriz de 4 pasos podemos ver que tanto las filas como las columnas comienzan con el número 0

Lo primero que hacemos es agregar la variable paso tipo array donde indicamos la cantidad de filas y columnas, de las llaves generamos la tabla tal cual 

Luego dentro del bucle que completa los 2048 pasos agregamos un bucle que recorre cada fila con la condición de llagar a la cuarta columna 

Si queremos cambiar a la secuencia con dos bobinas simplemente cambiamos los valores en el Array de paso
Ahora para la secuencia de medio paso simplemente agregamos las 4 filas adicionales y señalamos los valores

ahora debemos cambiar el número de pasos simplemente que es reemplazar el 4 por el 8



lunes, 6 de diciembre de 2021

joystick analógico KY-023

El joystick tiene 5 pines

  1. El VCC para recibir la energía y el GND para tierra
  2. El VRX y el VRY que son dos potenciómetros que representan el eje X y el eje Y
  3. El SW representa el switch que funciona cuando presionamos el joystick 

Conexión

  1. Vcc al 5V de Arduino
  2. GND a GND del arduino
  3. VRX y VRY a dos pines análogos como A0 y A1
  4. SW a un pin digital como el 7

Programación con buzzer

Variables

  1. Declaramos las variables para señalar las conexiones a los pines análogos a VRX y VRY
  2. La variable del SW 
  3. La variable para el buzzer
  4. Variables para lectura de valores en Serial (xVal - yVal)
  5. Variable para el delay

Setup

  1. Señalamos como entradas los pines del VRX, VRY y SW
  2. Señalamos como entrada el switch
  3. Señalamos como encendido el switch
  4. Señalamos como salida el buzzer
  5. Llamamos al Serial
void Loop
  1. La variable de valores X e Y se iguala a la lectura de los potenciómetros
  2. Luego la variable de lectura del botón se iguala a la lectura del switch 


Programar el buzzer

Simplemente, agregamos un condicional if, else que señala que si el valor de la señal digital del switch es cero se activará el buzzer (1), de lo contrario, permanecerá apagado (0)

Monitor Serial

El eje X y el eje Y se mantienen entre los 510 y 515.
  • Si muevo el joystick a la izquierda el valor de X es 0
  • Si muevo el joystick a la derecha el valor de X es el 1023
  • Se muevo el joystick hacia abajo el valor de Y es 0
  • Si muevo el joystick hacia arriba el valor de Y es 0
  • Si presiono el joystick el valor del botón es 0




viernes, 3 de diciembre de 2021

Teclado keypad

 






Hay copiar el siguiente código donde:
  1. Señalamos las filas y columnas correspondientes  
  2. Señalamos los números símbolos correspondientes al teclado
  3. Señalamos el número del pin correspondiente a cada fila y columna con ARRAY
  4. Para crear el mapa de la distribución cargamos todos los valores ya definidos al objeto llamado "teclado"

Para comprobar desde monitor serial

Clave secreta
  1. Debemos agregar una variable llamada clave con array 7, es decir 7 caracteres
  2. Luego agregamos la clave maestra con array 7 y le cargamos la contraseña
  3. Luego necesitamos un INDICE para cargar el array con cada


En void loop vamos a cargar el array clave con los caracteres que nos devuelva la función getKey agregando un if . Si se presiona una tecla, en el array clave se colocará el caracter correspondiente a la tecla presionada en el índice cero. Para ello incrementamos el valor del INDICE en uno. 
Luego agregamos otro if para que reconozca la clave maestra cuando se presione




Instalar paquetes de phyton en blender

Para agregar nuevos paquetes o mpdulos al phyton que tiene blender tenemos dos opciones según la documentación de blender   1. Reemplazar el...