Pages: [1]   Go Down
Author Topic: ayuda control posición motor DC.  (Read 1947 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 1
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

El proyecto consta de controlar la posicion de un motor DC, mediante el control de un PID  y una salida pwm. modifico el setpoint con un potenciometro, que se supone que debe modificar la frecuencia de la salida pwm, y hacer girar el motor que movera un segundo potenciometro que sera mi retroalimentacion.  El problema es que modifico el setpoint con el potenciometro y la salida pwm no varia, manda solamente pulsos inconstantes. quiero saber si algo esta mal en el codigo.



Code:
/********************************************************
 * PID_PWM_ control de posicion motor DC.
 * leer entrada analogica A0 para controlar PWM salida 3
 ********************************************************/

#include <PID_v1.h>

//definir variavles
double Setpoint, Input, Output;
 

//especificar parametros
PID myPID(&Input, &Output, &Setpoint,2,5,1, DIRECT);

void setup()
{
  Setpoint=0;
  
  //inicializa la variavle
  Input = analogRead(A0); // retroalimentacion
  Setpoint = analogRead(A1); //  potenciometro modifica setpoint

  //encender PID
  myPID.SetMode(AUTOMATIC);
}

void loop()
{
  Input = analogRead(A0);
  myPID.Compute();
  analogWrite(3,Output);  

« Last Edit: August 05, 2012, 12:56:43 am by eduaarddo » Logged

Chile
Offline Offline
Edison Member
*
Karma: 35
Posts: 1251
Arduino rocks?
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Primero parte probando cosas uno por uno. Prueba si controlas el motor, las salidas del PID (con un Serial.print), la lectura del análogo, todo individualmente primero.
Logged

My website: http://ried.cl

Pages: [1]   Go Up
Jump to: