Está en la página 1de 6

Control Automático

PRÁCTICA CONTROL DE POSICIÓN ANGULAR

Ingeniería Mecatrónica VDD 1 16 NC

Q1 2 15 Q6

A1 3 14 A6

Q2 4 13 NC

Turno matutino A2 5 12 Q5

Q3 6 11 A5

A3 7 10 Q4

VSS 8 9 A4

9ºA

Fecha de entrega: 12/05/2023

Gerardo Manuel Víctor Yael Edgar Omar Adam Gael


Luis Jorge
Zepeda Hernández Sandoval Jiménez Espinosa
Ruiz García García
Valdivia Murillo Ramírez Hernandez

Profesor.- Juan Manuel Quevedo Meza


MARCO TEÓRICO

Arduino.
Arduino es una plataforma de creación de electrónica de código abierto.
El Arduino es una placa basada en un microcontrolador ATMEL. Los
microcontroladores son circuitos integrados en los que se pueden grabar
instrucciones, las cuales las escribes con el lenguaje de programación que
puedes utilizar en el entorno Arduino IDE. Estas instrucciones permiten
crear programas que interactúan con los circuitos de la placa.

Controlador PID
Un controlador o regulador PID es un dispositivo que permite controlar un
sistema en lazo cerrado para que alcance el estado de salida deseado. El
controlador PID está compuesto de tres elementos que proporcionan una
acción Proporcional, Integral y Derivativa. Estas tres acciones son las que
dan nombre al controlador PID.

L293D
El circuito integrado L293D es
un controlador de motores. Esta
construido con 4 mitades de
puente-H. Está característica
nos permite controlar distintas
cantidades de motores. Por
ejemplo, puede controlar 4
motores de DC uni-
direccionalmente ó 2 motores-dc
en ambas direcciones. También
podría controlador un motor a
pasos de bi-polar.
Código

int retro = A1; // el pin A1 (entrada analógica)se llamará retro


const float refPin= A0;// referencia o set-point
int ActuadorPos=9; // el pin 9 (salida pwm)se llamará actuador
int ActuadorNeg=10; // el pin 10 (salida pwm)se llamará actuador
const float Kp =0.5;//ganancia proporcional
float error=0;
//const float uP=0; //ley de control
void setup() {
// put your setup code here, to run once:
pinMode(ActuadorPos, OUTPUT);
pinMode(ActuadorNeg, OUTPUT);
// inicializar comunicacion serial con la pc:
Serial.begin(19200); }
void loop() {
// put your main code here, to run repeatedly:
int sensor=analogRead(retro);
int referencia=analogRead(refPin);
error=referencia-sensor;
int uP=Kp*error;
if (uP > 0) {
uP=constrain(uP,0,255);
analogWrite(ActuadorPos,uP); // pin 9 arduino, pin 10 PH
analogWrite(ActuadorNeg,0); // pin 10 arduino, pin 15 PH }
if (uP <= 0){
uP=constrain(uP,-255,0);
analogWrite(ActuadorPos,0); // pin 10 arduino, pin 2 PH
analogWrite(ActuadorNeg,abs(uP)); // pin 6 arduino, pin 15 PH ; }
// print the analog value:
//Serial.print("error actual.");
//Serial.println(error);
//Serial.print("Accion de control.");
Serial.print(sensor/3.41);
Serial.print(" ");
Serial.println(referencia/3.41);
delay(1); // delay in between reads for stability }
PRÁCTICA CONTROL DE
POSICIÓN ANGULAR

Considere que controlar la posición de un motor de CD constituye controlar una


planta tipo integrador ya que su posición angular se incrementa al mantener una
entrada constante de voltaje. Por esta razón es suficiente la implementación de de
un controlador de tipo proporcional en lazo cerrado para lograr el sistema.

Conclusiones.

Los controladores PID son elementos que se presentan continuamente en la


industria y con razón ya que son muy útiles en el control de sistemas sensibles y
precisos como lo observamos en esta práctica que consistió en controlar la
posición angular de un motor.

Estamos familiarizados con este tipo de control, sin embargo, llevarlo a cabo en
Arduino es una situación totalmente nueva pero que simplifica en gran parte la
realización del circuito físico de la planta.
Fotografías de la practica
Hoja de Firma

También podría gustarte