Skip to main content

Practice 18: System 3, using DC Motor

▷ #TSCLab #TCLab #ESP32 #Arduino #Control #MACI

By: Ulbio Alejandro


En el siguiente blog se presenta la décimo octava práctica del laboratorio de control de temperatura y velocidad de un motor.

Objetivo general:

  • Realizar el diseño del controlar PID que permita controlar el Motor DC a un valor de referencia de RPM.

Materiales:

  • Matlab
  • TSC-Lab

Procedimiento:

Procedemos abrir la herramienta PID Tuner, el mismo que nos permitirá ajustar la dinámica del lazo de control al momento de implementarla. Para esto, se debe exportar el modelo matemático dando clic en Plant, para luego importar la función de transferencia antes escogida.
Ilustración 1 Importar la función de transferencia

Ilustración 2 Selección de la función de transferencia correspondiente.

Luego, es posible ajustar la dinámica del sistema variando tanto: el tiempo en estado estable, sobrenivel porcentual, tiempo pico e importante que el lazo sea estable, podemos ajustarlo con la familia de controlador PID, eso lo realizamos en la sección Type de la parte superior y la forma paralela. Una vez que la respuesta sea la deseada, se debe exportar los datos al Workspace para ser trabajados mediante código, esto lo hace mediante la tecla Export de la parte superior de la herramienta.
Ilustración 3 Exportando las constantes PID ajustadas.

Una vez obtenida en el script, se procede a implementar una simulación en Simulink, el mismo que colocamos los bloques necesarios para su funcionamiento. Es importante que en el bloque PID se ajusten los parámetros encontrados y la planta resulta la función de transferencia obtenida en la identificación de sistemas.

Ilustración 4 Simulación del controlador PID.

Ilustración 5 Exportando todos los datos obtenidos del Scope.

Finalmente, podemos obtener la respuesta de control según las características del sistema previamente ajustada en la herramienta PID Tuner.

Ilustración 6 Gráfica en lazo de control cerrado, probando las características del controlador PID.

✅ Test del controlador PID en Matlab

Finalmente, podemos obtener la respuesta de control según las características del sistema previamente ajustada en la herramienta PID Tuner.

Comments

Popular posts from this blog

Practice 27: NodeRed (USB)

✅ Práctica 27 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la vigési cuarta práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Enviar los valores sensados del motor del TSC-Lab por comunicación serial a Node-Red y visualizarlo.  Materiales: Node-Red TSC-Lab Introducción: En la presente práctica se muestra otra de las alternativas para visualizar y controlar dispositivos, la cual es Node-Red, siendo esta una herramienta de desarrollo basada en flujo para programación visual desarrollada originalmente por IBM para conectar dispositivos de hardware, API y servicios en línea como parte de Internet of Things. Para ir familiarizándose con el entorno de Node-Red se hará una conexión por comunicación seríal con el TSC-Lab. Procedimiento: Se necesita instalar Node-Red, a continuación se mostrará como hacerlo en un sistema operativo de Windows.  Instalar Node.js, puede descargarlo ...

Practice 29: NodeRed (Http) + Telegram

✅ Práctica 29 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la vigésima sextapráctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Recibir los valores sensados de temperatura del TSC-Lab a Telegram.  Materiales: Node-Red TSC-Lab Introducción: En la práctica anterior se aprendió a información del TSC-Lab a Node-Red mediante Wi-Fi con protocolo HTTP. Ahora a mas de enviar dicha información se pretende recibirla y monitoreada desde Telegram, la cual es una aplicación enfocada en la mensajería instantánea, el envío de varios archivos y la comunicación en masa. Se la puede descargar desde la tienda de Google Play o App Store. También se la puede utilizar desde su sitio web o versión de escritorio. En esta práctica se crearrá un bot en Telegram el cual al recibir un comando en específico, enviará de manera instantanea el valor de temperatura solicitado. Procedimiento: Nota: se asume qu...

Practice 28: NodeRed (Wifi)

✅ Práctica 28 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la vigésima quinta práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Enviar los valores sensados de temperatura del TSC-Lab por WiFi a Node-Red y visualizarlos.  Materiales: Node-Red TSC-Lab Introducción: En la práctica anterior se aprendió a utilizar y familiarizarse con Node-Red, el envío de información se lo hizo por medio de comunicación serial. Sin embargo, no tiene mucho sentido que se esté enviando información a Node-Red por el puerto serial cuando se puede aprovechar el ESP-32 para conectarse a internet por medio de Wi-Fi. Se usará el protocolo HTTP para conectarse al servidor donde se aloja el servidor que se está ejecutando Node-Red, lo cual permitirá que cualquier dispositivo tenga acceso a su información. Procedimiento: Nota: se asume que está instalado Node-Red, que está familiarizado con el entorno y qu...

Practice 30: NodeRed (Http) + ThingSpeak

✅ Práctica 30 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI When using this resource, please cite the original publication: Víctor Asanza, Kevin Chica-Orellana, Jonathan Cagua, Douglas Plaza, César Martín, Diego Hernan Peluffo-Ordóñez. (2021). Temperature and Speed Control Lab (TSC-Lab). IEEE Dataport. https://dx.doi.org/10.21227/8cty-6069 En el siguiente blog se presenta la vigésima séptima práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Enviar los valores sensados de temperatura del TSC-Lab por WiFi a Node-Red y ThingSpeak.  Materiales: Node-Red Thingspeak TSC-Lab Introducción: En la práctica anterior se aprendió a utilizar y familiarizarse con Node-Red, el envío de información se lo hizo por medio de comunicación serial. Sin embargo, no tiene mucho sentido que se esté enviando información a Node-Red por el puerto serial cuando se puede aprovechar el ESP-32 para conectarse a internet por medio de Wi-Fi. S...

Practice 10: Data acquisition with square velocity input

✅ Práctica 10a Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la décima práctica y corresponde a la quinta del laboratorio de control de velocidad. Github repository: https://github.com/vasanza/TSC-Lab Objetivo general: Recopilar y guardar las RPM para crear un dataset. Objetivos específicos: Comparar los resultados de movimiento con diferentes parámetros. Materiales: Aplicación de escritorio CoolTerm PCB de Temperature Control Lab (TSC-Lab) Introducción: Una vez entendido todo el funcionamiento y control de velocidad del motor, se pretende crear un dataset para mejorar el mismo, lo que se hará es tomar 10 muestras tanto en un PWM de 255 y 0 durante un periodo de 13 segundos, dichos datos pueden ser modificados en la parte inicial del código de arduino.  Procedimiento: Nota: revisar la práctica 1 donde se le recuerda a como utilizar la apliación CoolTerm. Se asume que la placa del ESP-32 ha sido previamente instalada e...

Práctica 5: Activation of Transistor 1 and 2, also Reading of temperature sensor 1 and 2

✅ Práctica 5a ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la quinta práctica del laboratorio de control de temperatura. Github repository: https://github.com/vasanza/TSC-Lab Objetivo general: Guardar las mediciones obtenidas con ayuda de Cool Term y exportarlas en un archivo comma-separtaed-values (csv). Objetivos específicos: Guardar los datos de las lecturas realizadas con los heaters 1 y 2 activados. Materiales: Programa Cool Term PCB de Temperature Control Lab (TSC-Lab) Introducción: Para esta práctica, el sistema sigue sin tener retroalimentación, es decir, es en lazo abierto ya que simplemente se está midiendo el cambio de temperatura conforme los heaters estén activados o desactivados y esto dependerá con cual de los casos el estudiante desea trabajar. Caso 1: ningun heater está activado Caso 2: únicamente el heater 1 se activa y desactiva. Caso 3: únicamente el heater 2 se activa y desactiva. Caso 4: ambos heaters se activa...

Práctica 1: Initial setups and tests

✅ Práctica 1 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la primera práctica del laboratorio de control de temperatura. Objetivo general: Entender el funcionamiento básico de TSC-Lab para la realización de futuras prácticas. Objetivos específicos: Analizar el comportamiento de la curva cuando los heaters están activados y desactivados. Guardar las mediciones obtenidas con ayuda de Cool Term y exportarlas en un archivo  comma-separtaed-values  (csv). Materiales: Programa Cool Term PCB de Temperature Control Lab (TSC-Lab) Introducción: El laboratorio de control de temperatura es un sistema en lazo cerrado. Sin embargo, en esta y futuras prácticas a realizar se comportará como un sistema de control en lazo abierto ya que no existe retroalimentación, únicamente los heaters se activan y los sensores empiezan a medir el incremento de temperatura y al desactivarlos los sensores miden como la temperatura baja hasta...

Practice 12: Speed Control Lab

  ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI Repositories En el siguiente blog se presenta la vigésima segunda práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Realizar la adquisición de datos en Matlab emplenado comunicación serial Materiales: Matlab TSC-Lab TSC-Lab 3D view Simulink: https://drive.google.com/drive/folders/18ANTrb-_z_2zbsUbq2Rz6FC7749ECxUc?usp=sharing Código para el TSC-LAB:

Practice 38: Deep sleep to TSC-Lab

✅ Práctica 38 ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI Repositories When using this resource, please cite the original publication: Víctor Asanza, Kevin Chica-Orellana, Jonathan Cagua, Douglas Plaza, César Martín, Diego Hernan Peluffo-Ordóñez. (2021). Temperature and Speed Control Lab (TSC-Lab). IEEE Dataport. https://dx.doi.org/10.21227/8cty-6069 En el siguiente blog se presenta la trigésima quinta práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Establecer el modo de suspensión profunda al TSC-Lab. Materiales: TSC-Lab Introducción: Una de las formas más fáciles para para el ahorro de energía de manera general dentro de proyectos IOT es estableciendo el modo de suspensión profunda del ESP-32. En la presente práctica se colocorá el microcontrolador del TSC-Lab en sueño profundo (deep sleep) y se lo despertará con un temporizador. Cabe recalcar que existen más alternativas para despertarlo, entre ellas está el despertador táctil...

Práctica 4: Activation of Transistor 2 and Reading of temperature sensor 1 and 2

✅ Práctica 4 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la cuarta práctica del laboratorio de control de temperatura. Objetivo general: Guardar las mediciones obtenidas con ayuda de Cool Term y exportarlas en un archivo comma-separtaed-values (csv). Objetivos específicos: Guardar los datos de las lecturas realizadas con el heater 2 activado. Materiales: Programa Cool Term PCB de Temperature Control Lab (TSC-Lab) Introducción: Para esta práctica, el sistema sigue sin tener retroalimentación, es decir, es en lazo abierto ya que simplemente se está midiendo el cambio de temperatura conforme los heaters estén activados o desactivados y esto dependerá con cual de los casos el estudiante desea trabajar. Caso 1: ningun heater está activado Caso 2: únicamente el heater 1 se activa y desactiva. Caso 3: únicamente el heater 2 se activa y desactiva. Para esta práctica se trabajará con el caso 3 . Los mediciones son almacen...