ajuste de distancia mediante control pid
DESCRIPTION
AJUSTE DE DISTANCIA CON PIDTRANSCRIPT
UNIVERSIDAD POLITÉCNICA DE TLAXCALA
INGENIERÍA MECATRÓNICA
Integración de Sistemas Mecatrónica
Trabajo: Ajuste de distancia mediante control PID
Elaboró: Fernando Corte Roldan Mario Lara Cirio
Erick Cahuantzi Muñoz Guillermo Roldan Xocoyotl
Jorge Antonio Hernández Sánchez
Profesor:
Rafael Palomino Gonzalez
Introducción La finalidad de esta práctica es implementar un sistema de ajuste de distancia mediante un control de PID (Proporcional-Integral-Derivativo). LabView y Arduino serán los softwares encargados de ayudar a crear el código de operación. Objetivos Al finalizar esta práctica el estudiante será capaz de: - Crear un código virtual - Utilizar las estructuras de datos elementales que incorpora LabView.
- Implementar un control clásico PID. Fundamentos Teóricos Un controlador que satisfaga el modo de control analógico Proporcional-Integra-Derivativo (PID) se caracteriza por una salida de controlador p(t) relacionada con la señal de error ep(t) mediante la siguiente expresión matemática.
donde Kp no tiene dimensiones, Ki se dan en y Kd en s. También se utilizan los tiempos integra Ti y derivativo Td, los cuales vienen relacionados mediante expresiones inversas de Ki y Kd respectivamente.
En la implementación del sistema deben utilizarse los anteriores. El término integral se aproxima teniendo en cuenta el método numérico trapezoidal de integración
Así teniendo la siguiente función del área sombreada
Por otra parte la acción derivativa puede aproximarse mediante la regla de la diferencia finita
Y se aproxima mediante la siguiente expresión matemática
Descripción de la práctica Se trata de diseñar un sistema de entorno grafico que realice el clásico algroitmo de control de PID mediante el apoyo de LabView, capaz de ajustar un móvil a una distancia deseada.
Edición de programa en Labview
INIT Inicializa la conexión con Arduino ejecutando la interfaz de LabView para Arduino Diagrama de bloques>Click derecho> Arduino>Init
Contexto de Init
VISA resource
Especifica el puerto COM correspondientes de transferencia de datos Click derecho sobre VISA resource de Init>Create> Control
Set Digital Pin Mode Configura el pin digital especifico entrada o salida Diagrama de bloques>click derecho>Arduino>Low Level>Set Digital Pin Mode
Contexto de Set Digital Pin Mode
Para definir el pin y el modo; pin: click derecho en Digital I/O Pin>Create>Constant., Modo: click derecho en Pin Mode (imput)>Create>Constant>cick sobre la constante y elegir Inputo o Output.
While Loop Repite un sub diagrama dentro hasta una terminal condicional Diagrama de bloques>click derecho>programming>structures>while loop
Shift Register Registra el desplazamiento
Ultrasonic Distance Nota: El VI del sensor ultrasónico no es parte del toolkit de Arduino, este se debe de descargar de la pagina www.mexiconi.com
Contexto de Ultrasonic Sensor HC-SR04
Tick Count (ms)
Devuelve el valor del temporizador en segundos Diagrama de bloques>click derecho>programming>timing>Tick Count (ms)
Subtract Resta dos componentes y muestra su resultado Diagrama de bloques>click derecho>programming>Numeric>Subtract
Contexto de Subtract
Add
Suma dos componentes y muestra su resultado Diagrama de bloques>click derecho>programming>Numeric>Subtract
Contexto de Add
Absolute Value
Devuelve el valor absoluto de la entrada Diagrama de bloques>click derecho>programming>Numeric>Absolute Value
Contexto de Absolute Value
PWM Write Pin
Escribe el valor especifico PWM a un solo pin PWM en el Arduino Diagrama de bloques>click derecho>Arduino>Low Level> PWM Write Pin
Contexto de PWM Write Pin
Para especificar el PWM Pin y Duty Cycle; click derecho en Digital I/O Pin o Value>Create>Control o Constant
Digital Write Pin
Escribe el valor especifico en el pin respectivo Diagrama de bloques>click derecho>Arduino>Low Level> Digital Write Pin
Contexto de Digital Write Pin
Para especificar el pin y el valor; click derecho en Digital I/O Pin o Value>Create>Control o Constant
Close
Cierra la conexión activa a un Arduino Diagrama de bloques>Click derecho> Arduino>Close
Simple Error Indica si un error ha ocurrido Diagrama de bloques>Click derecho>Programming>Dialog & user interfaces>Simple Error
Nota: Todos los componentes de Arduino deben conectarse en serie dentro del entrono gráfico de LabView para poder funcionar Formula Node
Evalua matemáticamente formulas y expresiones matemáticas similar a lenguaje C en un diagrama de bloque Diagrama de bloques>click derecho>programming>structures>Formula Node Input y Output: click derecho en contorno de formula node> add imput o add output
Crear controlador e indicador para Formula Node Click derecho sobre la entrada (input)>créate>control Click derecho sobre la salida (output)>créate>indicator
Contexto de Formula Node
Crear un Formula Node con cada uno de los componentes como el siguiente:
Algoritmo de proceso de PID
Algoritmo de condiciones de avance, paro y retroceso de motores
Case Structures
Tiene uno o más subdiagramas, o casos, exactamente uno de los cuales se ejecuta cuando la estructura se ejecuta. El valor por cable al terminal selector determina qué caso a ejecutar y puede ser booleano, cadena, un entero de tipo enumerado, o cluster de error. Diagrama de bloques>click derecho>programming>structures>Case Structure
To Byte Integer
Convierte un numero en un entermo de 8 bits Diagrama de bloques>click derecho>programming>numeric>conversion>To Byte Integer
To Extended Precision Float
Convierte en un número a una precisión extendida Diagrama de bloques>click derecho>programming>numeric>conversion> To Extended Precision Float
Waveform Chart
Panel Frontal>click derecho>Modern>Graph>Waveform Chart
Merge Signal
Fusiona dos o más señales en una sola salida Diagrama de bloques>click derecho>Sig Manip> Merge Signal (arrastrar hasta tener las señales deseada de entrada
Median Filter
Aplica un filtro de mediana de rango a x Diagrama de bloques>click derecho>Signa Procesing>Point By Point>Filters>Media Filters
Organizar Panel Frontal Vertical Smooth Box o Horizontal Smooth Box
Te permite organizar el panel frontal para dar una vista de tablero de control Panel Frontal>click derecho>Modern>Decorations>Vetical Smooth Box o Horizontal Smooth Box
Seleccionar Vertical Smooth Box o Horizontal Smooth Box>Reorder>Move To Back
Nota: Organizar controladores, indicaodres, graficas Establecer Indicador y Magnitud al Controlador Indicador Click derecho sobre el controlador>Visible Item>Digital display
Magnitu Click derecho sobre el controlador>Properties>Scale (minumum y máximum)
Referencias LabView User Manueal, National Instruments Corporation. LabView Measurement Manual, National Instruments Corporation. Labview Development Guielines, National Instruments Corporation. Labview Tutorial, National Instruments Corporation.