Está en la página 1de 4

Diseño de codigo para controlar un proceso de

selección de cajas
Adrian Livio Carhuaz Encinas Adrian Urriolagoitia Marino Isabela Franco Jiménez Mgs. José Jesús Cabrera Pantoja.
6to Semestre 6to Semestre 7mo Semestre Sistemas Embebidos: IMT-222
adrian.carhuaz@ucb.edu.bo adrian.uriolagoitia@ucb.edu.bo isabela.franco@ucb.edu.bo Departamento de Ingeniería Mecatrónica

Resumen: En el siguiente documento se presentará el 𝐾𝑡


diseño de un código para implementar a un sistema que controle 𝜔 𝑗𝐿𝑎
diferentes periféricos mediante la comunicación USART en la =
placa de desarrollo STM32F334R8. Este sistema se
𝑉𝑡 𝑆 2 + (𝐵𝑚 + 𝑅𝑎 ) 𝑆 + (𝑅𝑎 𝐵𝑚 + 𝐾𝑡 𝐾𝑎 )
𝐽 𝐿𝑎 𝐽𝐿𝑎
implementará al proyecto para mostrar como seleccionan las
cajas de acuerdo a una característica especifica, moviéndolas Donde 𝑉𝑡 es el voltaje de entrada aplicado,𝑅𝑎 y La son la
para clasificarlas en un determinado lugar. El proyecto muestra resistencia de armadura e inductancia, respectivamente.𝐽 es el
un modelo a escala utilizando periféricos que se puedan momento de inercia del motor, ω es la velocidad del eje, 𝐵𝑚
implementar a la placa como servomotores y un motor paso a es la relación de amortiguamiento de la carga mecánica, 𝐾𝑡 y
paso para simular la transición de las cajas a un lugar y el 𝐾𝑎 son los constantes de par y motor respectivamente[1]” [2].
trasporte de banda. Se experimento con la configuración de
periféricos para que sean como inputs o outputs, para la Se iba a utilizar un motor paso a paso (Step Motor) “El motor
comunicación del Sensor-Periférico se realizó un canal ADC paso a paso tiene la ventaja sobre otros tipos de motores
para que el sensor mande una señal analógica y la convierta en porque funciona bien en lazo abierto ya que realiza el
una señal digital activando el periférico. La finalidad del movimiento paso a paso cuando se aplican impulsos de voltaje
proyecto es mostrar la comunicación exitosa entre el sensor y el a sus fases. Pero, debido a su inercia, el rotor oscila alrededor
periférico implementado el diseño de nuestro código que tiene de la posición final antes de estabilizarse. Además, el motor
incorporado máquinas de estado para que nuestro sistema sea puede perder pasos si la variación del par de carga es
secuencial muestre el desempeño de la comunicación entre los rápida.”[3]
actuadores y los sensores. La importancia de implementar
sistemas embebidos es para controlar procesos mediante un Para la señal de entrada se utiliza el sensor de color TCS3200,
microcontrolador que pueda observar el entorno mediante un “es un circuito integrado que puede convertir el color de la luz
mapeo con un sensor, que se comunique con el actuador que en un valor de frecuencia y este sensor tiene la capacidad de
pueda realizar dicha acción que se especificó con el código que registrar hasta 25 datos de color. El módulo TCS3200 tiene un
programamos. fotodetector con filtro de color rojo, verde, azul y claro. Los
filtros se distribuyen a cada fotodiodo que se organizan en una
Palabras clave: Input, Output, ADC, Maquina de estados finito, matriz de 8x8. Este módulo produce un oscilador de onda
GPIO, AHB, MODER, ODER, PWM, Servomotor, Step Motor.
cuadrada cuya frecuencia es igual al color detectado. Los dos
I. INTRODUCCION componentes principales de esta herramienta son el fotodiodo
y el convertidor de corriente a frecuencia (ADC).
La implementación de sistemas embebidos en la industria Básicamente, el sensor de color TCS3200 es un sensor de luz
ayuda en la comunicación entre los actuadores que tiene un que está equipado con un filtro de luz para colores básicos
sistema con los sensores que pueden ser los sentidos, estos nos como RGB (Rojo-Verde-Azul)[4] La Fig.1 muestra la forma
ayudarían a captar datos de su entorno los cuales generan física del módulo del sensor de color.”[5]
interrupciones cuando captan algo en su rango de detección,
para ello se implementó un proceso pequeño sobre la selección
de cajas en base al color, lo que se quiere lograr es mostrar la
comunicación entre el sensor de color con los dos motores, el
servomotor va servir para mover la caja cuando el sensor
detecte en su rango de visión, el step motor simula al motor
que está en la cinta transportadora que sirve para mover la
cinta.
II. DESCRIPCION DEL PROYECTO
El proyecto consiste en utilizar la placa STM32F334R8 para Fig.1 TCS3200 Color Sensor
el control de un proceso con nuestros Microcontrolador ARM
M4 implementando todo lo avanzo durante el curso, para ello III. IMPLEMENTOS DEL PROYECTO
vamos a utilizar un servo motor. “Los servomotores de CC son
muy utilizados en máquinas industriales, electrodomésticos y A. Materiales para el laboratorio
equipos debido a su alta confiabilidad, costo adecuado y DETALLE UNIDAD CANTIDAD
capacidad de control. El diagrama de bloques para el motor de
Step Motor (28BYJ-48) Unidad 1
CC que se considera en este estudio se muestra en la Figura,
Un servomotor de CC se controla principalmente variando el Driver (ULM2003) Unidad 1
voltaje de entrada 𝑉𝑡 . La acción de control se obtiene al reducir
la señal de error entre la señal de referencia y la salida real del Sensores de colores
Unidad 1
motor. a cero. El modelo de motor DC se expresa de la (TCS3200)
siguiente manera[1]: Servomotor (SG90) Unidad 1

Departamento de Ingeniería Mecatrónica Sistemas Embebidos (IMT-222) / Número de información 007 @ 2022
Universidad Católica Boliviana "San Pablo" – Unidad Santa Cruz
Tabla.1 Se muestra los materiales que se utilizo en el proyecto mueva el servomotor para llevar la caja a otro lado, los
para mostrar el proceso en funcionamiento. estados van a cambiar dependiendo a que color va detectar
para que el servomotor se dirija a una dirección determinada.
B. Equipo
DETALLE UNIDAD CANTIDAD VI. IMPLEMENTACION DE ALGUNA PARTE DEL
PROYCETO
Placa de Equipo 1
Desarrollo A. Avance del Stepper Motor
STM32F3
Computadora Equipo 1
Tabla.2 Se muestra que los equipos que se necesitan para el
laboratorio, entre ellos el más importante la placa del
desarrollo STM32F339R8
IV. DIAGRAMA DE BLOQUES
Implementamos las librerías stm32f3xx.h, lab3.h, stdint.h
con la finalidad de poder utilizar las funciones de la placa y
las definiciones de tipos de datos.

Establecemos los prototipos de funciones de Setup_RCC,


Setup_GPIO, Setup_stepper. Ponemos la variable unit32_t
count para tener un conteo

Fig.2 Este diagrama de bloques muestra las entradas y


salidas que tiene el sistema, el sensor TCS3200 funciona como
entrada debido a que va generar una interrupción en el
La función exercise_1_2 se inicializa las variables para que
microprocesador al recibir la señal del sensor, las salidas
el Step Motor pueda moverse energizando las bobinas, en el
serán la activación del Step Motor haciendo que se mueva la
while hace que el código active al motor en un determinado
cinta transportadora, el servo motor moverá la caja a otro
tiempo con la función Setup_stepper.
lugar en caso que detecte una caja de un determinado lugar.
V. MAQUINA DE ESTADOS

En la función Setup_RCC se habilita el clock RCC en el


GPIOA para que se pueda utilizar los pines de ese puerto

Fig.3 En esta imagen se muestra la maquina de estados del


proyecto, las entradas serian los datos que manda el sensor
que es de 2 bits, mostrándonos una pequeña tablita donde
indica los estados que puede tener el sensor al detectar un
determinado color, la señal del sensor va permitir que se
Departamento de Ingeniería Mecatrónica Sistemas Embebidos (IMT-222) / Número de información 003 @ 2022
Universidad Católica Boliviana "San Pablo" – Unidad Santa Cruz
En la función Setup_GPIO se inicializa los pines 5, 6, 7, 8, 9
como salidas, el pin 5 se lo conecta al led y los demás pines se
los conecta a las patas de cada bobina del Stepper Motor.

Fig.5 Cuadro de las direcciones de cada periférico.

Fig.6 Se identifica la dirección del Offset del Registro AHB


VII. CONCLUSIONES
En este documento se ha presentado la implementación de
nuestro código de la placa STM32F3 en el proceso de
selección de cajas, implementando la comunicación USART
En la función Setup_stepper realiza lo siguiente para que el para que el sensor de color TCS3200 mande una señal a los
rotor gire una vuelta completa, se debe repetir la secuencia de actuadores siendo el Servomotor y el Step Motor, cuando se
los 4 pasos 8 veces a los 4 pasos se le denomina 1 ciclo detecta un cierto color, mostrando una pequeña demora al
entonces 1 ciclo se debe repetir 8 veces. El motor tiene una hacer la rotación el Step Motor al momento de energizar las
reducción mecánica por engranaje de 1 a 64, con lo cual un bobinas cuando haga una rotación completa.
giro completo o revolución del eje exterior requiere de 64
vueltas del rotor 4 * 8 * 64 = 2048 pasos para una revolución.
La demora entre pasos no debe ser menor a 10ms

Fig.4 Se ubica la dirección del MODER, determina la


dirección del el Pin que se vaya utilizar

Departamento de Ingeniería Mecatrónica Sistemas Embebidos (IMT-222) / Número de información 003 @ 2022
Universidad Católica Boliviana "San Pablo" – Unidad Santa Cruz
[3] M. Bendjedia, Y. Ait-Amirat, B. Walther, and A. Berthon,
“Position Control of a Sensorless Stepper Motor,”
IEEE Trans Power Electron, vol. 27, no. 2, pp. 578–
587, Feb. 2012, doi: 10.1109/TPEL.2011.2161774.

VIII. BIBLIOGRAFIA [4] M. Nkomo and M. Collier, “A color-sorting SCARA


robotic arm,” in 2012 2nd International Conference
[1] M. Moghaddas, M. R. Dastranj, N. Changizi, and M. on Consumer Electronics, Communications and
Rouhani, “Robust Control Of Dc Motor Using Fuzzy Networks (CECNet), Apr. 2012, pp. 763–768. doi:
Sliding Mode Control And Genetic Algorithm,” 10.1109/CECNet.2012.6201967.
Journal of Mathematics and Computer Science, vol.
02, no. 04, pp. 572–579, May 2011, doi: [5] G. I. E. Panie and A. B. Mutiara, “Development of Robotic
10.22436/jmcs.02.04.01. Arm for Color Based Goods Sorter in Factory Using
TCS3200 Sensor with a Web-Based Monitoring
[2] M. A. Jaradat, M. I. Awad, and B. S. El-Khasawneh, System,” in 2018 Third International Conference on
“Genetic-Fuzzy Sliding Mode Controller for a DC Informatics and Computing (ICIC), Oct. 2018, pp. 1–
Servomotor system,” in 2012 8th International 6. doi: 10.1109/IAC.2018.8780461.
Symposium on Mechatronics and its Applications,
Apr. 2012, pp. 1–6. doi:
10.1109/ISMA.2012.6215186.

Departamento de Ingeniería Mecatrónica Sistemas Embebidos (IMT-222) / Número de información 003 @ 2022
Universidad Católica Boliviana "San Pablo" – Unidad Santa Cruz

También podría gustarte