Autor Tema: Delay al inicio del PWM para un motor  (Leído 2102 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Clausal

  • PIC10
  • *
  • Mensajes: 8
Delay al inicio del PWM para un motor
« en: 06 de Marzo de 2006, 15:05:00 »
Hola amigos, estoy tratando de manejar un motor, pero ahora que ya lo he manejado con PWM (ccp1), le quiero dar el brillo de que al comensar la conversion, que la partida del motor no sea tan rapida y brusca, osea que haya un pequeño retardo o delay, además quiero ajustar ese delay con un potenciometro paradarle mas sencibilidad,  espero que alguien pueda darme alguna idea desde ya muchas gracias. ChaoGiño

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
RE: Delay al inicio del PWM para un motor
« Respuesta #1 en: 06 de Marzo de 2006, 18:09:00 »
dejame ver, si mal no entendi vos queres que el motor arranque de a poco hasta la velocidad nominal?

conceptualmente tendrias que ir declarando distintos dutys en distintos tiempos si es que lo queres fijo

ejemplo: set_pmw1_duty(5);//esto genera un duty cicle de 5(relativo segun tu escala)
               delay_ms(200);
set_pmw1_duty(10);
               delay_ms(200);
y asi hasta darle la potencia que queres.los intervalos de tiempo tambien se los podes dar vos

espero haber sido de ayuda...

Desconectado Clausal

  • PIC10
  • *
  • Mensajes: 8
RE: Delay al inicio del PWM para un motor
« Respuesta #2 en: 07 de Marzo de 2006, 09:56:00 »
Hola fastyx  muchas gracias voy ir provando, y me has dado una nueva idea, pero en realidad quiero mover dos motores, que les doy control por dos potenciometros independientes, y cuando los potenciometros estan al centro con 2.5V, lo motroes estan quietos, luego si los muevo a derecha o a izquierda cambian sentido de gro pero a las vez se va incrementando la velocidad en la medida que se acerque a los extremos derecha o izquierda, pero bien muchas racias despues te cuento como anda la cosa, chao gracias

Desconectado Clausal

  • PIC10
  • *
  • Mensajes: 8
RE: Delay al inicio del PWM para un motor
« Respuesta #3 en: 07 de Marzo de 2006, 10:24:00 »
haa lo otro los motores generan un ruido sonoro, cuando le aplico el PWM con el driver l293, y cuando recien van a andar suenan un poco, si le coloco un filtro, o condensador,..... nose se les ocurre algo?

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
RE: Delay al inicio del PWM para un motor
« Respuesta #4 en: 07 de Marzo de 2006, 10:34:00 »
decime que tipo de motor estas usando

Desconectado Clausal

  • PIC10
  • *
  • Mensajes: 8
RE: Delay al inicio del PWM para un motor
« Respuesta #5 en: 08 de Marzo de 2006, 13:47:00 »
HOLA MI AMIGO fastyx, ESPERO QUE ESTES MUY BIEN, LA VERDAD QUE ESTOY UTILIZANDO MOTORES DC, ES DECIR DE CORRIENTE CONTINUA, LOS CUALES PARA  MODIFICAR SU SENTIDO DE GIRO LE CAMBIO LA POLARIDAD, LOS MANEJO CON EL L293, DONDE CON TRES SEÑALES CONTROLO UNO SOLO, DOS DE CAMBIO DE SENTIDO DE GIRO, Y UNA DE HABILITACION DEL MOTOR, Y EN ESE PIN, LE APLICO EL PWM.
AHORA HE ESTADO HACIENDO ALGO, PERO LA IDEA QUE TU ME DISTE ME GUSTO, PERO QUIERO HACER LO MISMO PERO REGULAR EL DELAY CON UN POTENCIOMETRO COSA DE VARIAR LA POSIBILIDAD DE MAS LENTITUD O MAS RAPIDO, O NOMAL, ME REFIERO EN LA PARTIDA. OK MUCHAS GRACIAS, NOS COMUNICAMOS CHAO...

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
RE: Delay al inicio del PWM para un motor
« Respuesta #6 en: 09 de Marzo de 2006, 14:00:00 »
estimado clausal.

                             creo que el ruido puede deberse a la frecuencia que usas en el pwm.proba con stear el pwm con distintas frecuencias ,te diria que pruebes con 7,8khz.

con respecto al tema del potenciometro,no tenes mas que colocar un pote para que ingrese dc en el pin de adc previamente configurado como entrada,habilitado el conversor adc y luego le decis al pwm que cargue una variable ejemplo valor que tome el read_adc() y lo pones en el argumento de set_pwm1_duty(valor).

con eso cuando varies el pote va a variar el pwm y en consecuencia la velocidad del motor.

recorda setear el timer 2 y habilitar el ccp en modo pwm

espero haber sido de utilidad!!!

Desconectado piriots

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
RE: Delay al inicio del PWM para un motor
« Respuesta #7 en: 10 de Marzo de 2006, 07:06:00 »
El pitido que oyes es porque estas trabajando con una frecuencia que esta dentro del rango de frecuencias audibles 20 Hz y 20KHz. Si utilizas un PWM superior a 20 kHz no oiras ruidos y las bobinas del motor te lo agradeceran. No tienes problemas al arrancar el motor con una frecuencia tan baja si usas un duty cycle pequeño? digo pequeño porque no se con que escala trabajas y no puedo concretar mas.

Salu2

Desconectado Clausal

  • PIC10
  • *
  • Mensajes: 8
RE: Delay al inicio del PWM para un motor
« Respuesta #8 en: 14 de Marzo de 2006, 13:45:00 »
Hola gracias Piriot, se me prendio un poco mas la ampolleta, lo voy a probar, pero en este momento no puedo porque estoy trabajando supuestamante!!!!!, ajaj, garcias y despues te cuento como me fue chao!!

Desconectado Clausal

  • PIC10
  • *
  • Mensajes: 8
RE: Delay al inicio del PWM para un motor
« Respuesta #9 en: 15 de Marzo de 2006, 14:28:00 »
Hola a todos aqui les dejo un programita, este es al que le quiero dar un delay, hay tres partes, la primera para el motor apagado, la segunta para el motor a la derecha con variacion de velocidad y la segunda a la izquierda con variacion de velocidad, desde cero a maxima velocidad, esto con un potenciometro, que cuando esta en la mitad, deja el motor quieto, lo que quiero es que cuando se vaya incrementando el valor desde la mitad, se pprodusca un delay, y luego se restablesca la velocidad normal, se me ha hecho un poco complicado!!!!!, gracias y esta parte funciona re bien, ero falta lo otro, chao gracias

while(1)
    {
             set_adc_channel(0);
             valor=read_adc();       // Lee valor RA0


if((valor<=129)||(valor>=127))
            {
            set_pwm1_duty(0);
             valor=read_adc();
             }


if(valor<=126)
             {
              output_bit(PIN_B0,1);
             output_bit(PIN_B1,0);
             valor=(128-read_adc());
             set_pwm1_duty(valor);
            delay_ms(10);
            }



if(valor>=130)
             {
             output_bit(PIN_B0,0);
             output_bit(PIN_B1,1);
             valor=(read_adc()-128);
             set_pwm1_duty(valor);
            delay_ms(10);

            }

              set_adc_channel(1);
            valor=read_adc();

Desconectado Clausal

  • PIC10
  • *
  • Mensajes: 8
RE: Delay al inicio del PWM para un motor
« Respuesta #10 en: 15 de Marzo de 2006, 14:30:00 »
Ahora se les ocurre como podría grabar una cantidad de movimientos?, osea si muevo el motor a a derecha, que se grabe esa funcion, y luego la repita en la misma velocidad y direcccion, seria interesante

Desconectado piriots

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
RE: Delay al inicio del PWM para un motor
« Respuesta #11 en: 16 de Marzo de 2006, 03:56:00 »
Escrito originalmente por Clausal
Ahora se les ocurre como podría grabar una cantidad de movimientos?, osea si muevo el motor a a derecha, que se grabe esa funcion, y luego la repita en la misma velocidad y direcccion, seria interesante


Lo que puedes hacer es guardar las variables de posicion y velocidad en la eeprom del pic y cuando las necesites las lees. Lo que ocurre es que is lo haces de esta forma, en el momento que leas los valores de la eeprom tendrias que deshabilitar el conversor analogico digital, ya que si no lo haces, leeras el valor de la eeprom y este cambiara cuando se realize la siguiente conversion.

Salu2

Desconectado clausal23

  • PIC10
  • *
  • Mensajes: 1
Re: Delay al inicio del PWM para un motor
« Respuesta #12 en: 02 de Junio de 2006, 13:22:22 »
Otra consulta porque cuando, cambio de cristal ,a 20MHz, pierdo precision en los movimientos en el motor DC?, sera que se genera ruido?, o porque cuando estoy con cristal de 4M, y la frecuencia PWM la aumento a 20KHz, igualmente no funciona bien, sera que falta un condensador para el ruido electrico. gracias


 

anything