Autor Tema: Integrado para manejar 8 PWM para motores de CC  (Leído 6632 veces)

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

Desconectado falflores

  • PIC16
  • ***
  • Mensajes: 173
    • Control, electrónica y programación en español
Integrado para manejar 8 PWM para motores de CC
« en: 05 de Octubre de 2011, 06:20:58 »
Hola amigos del foro, estoy cacharreando un brazo robot muy sencillo, hecho con sintra y motorreductores de plástico, pero que puede tener mucho potencial con un buen control, el problema es que no logro encontrar la forma de controlar todas las articulaciones al mismo tiempo por medio de 6 señales PWM de alrededor de 20khz, que es la frecuencia que normalmente se necesita en motores de DC para evitar ruidos, hice un programa en C para utilizar el módulo CCP en modo PWM de un PIC16F877A a 20khz, mi profesor de manipuladores me dijo que se puede multiplexar dicha señal a los 6 enables de puentes H integrados (L298N) para así tener los 6 PWM necesarios, pero en la práctica la potencia que le llega a cada motor es muy pobre, que ya los tiempos muertos son demasiados largos (5/6 del tiempo total para cada articulación).

Busque un PIC con más salidas PWM por hardware, y encontré que hay un PIC con 8 salidas, pero desgraciadamente no lo venden en México, también me di a la tarea de generar las salidas por software, pero al menos en C no logro pasar de los 100Hz para 6 salidas PWM, posteriormente estuve buscando en la red un integrado que tenga 8 salidas de PWM, que se pueda escoger la frecuencia de operación, o en su defecto que sea fija alrededor de 20khz, y que tenga comunicación serial, SPI, I2C o por el estilo para mandarle la información, y que tenga 8 bits de resolución, pero no logro encontrar siquiera un integrado que por lo menos tenga unos 20khz de frecuencia.

Así que mi pregunta es: Alguien sabe de la existencia de algún circuito integrado con estas características?, es decir, 8 PWM, comunicación serial y con una frecuencia alta?.

PD: encontre el integrado TLC5490 que es un driver de PWM de 16 canales, pero es para LEDs, me podría sevir, pero no logro saber de la datasheet la frecuencia del PWM, aunque supongo que por ser un driver para LEDs, debe ser baja, alguien sabe la frecuencia del PWM de este integrado?


Saludos y gracias por su tiempo.
Los invito a mi blog "Control, electrónica y programación en español" www.robotnias.blogspot.com

Desconectado Yoshua

  • PIC16
  • ***
  • Mensajes: 207
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #1 en: 08 de Octubre de 2011, 18:56:43 »
Fijate si conseguis potenciometros digitales, asi, generas una onda triangular con un CCP del pic o un 555 y con el potenciometro mas un comparador podes hacer todas las ondas pwm que quieras, usando un potenciometro mas un comparador haces una señal pwm.

EDITO: me parece que la frecuencia de pwm es de 7khz (30Mhz/cantidad de pasos).
« Última modificación: 08 de Octubre de 2011, 19:50:56 por Yoshua »

Desconectado Yoshua

  • PIC16
  • ***
  • Mensajes: 207
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #2 en: 08 de Octubre de 2011, 20:28:13 »
Ana te subo un circuito que hace pwm a 4 bits, completamente digital, hecho con un par de contadores. U6 se encarga de generar el reset para los contadores U1 y U3; las lineas D0 a D3 son los pines en donde se fijan los 4 bits para el pwm.
« Última modificación: 08 de Octubre de 2011, 20:35:20 por Yoshua »

Desconectado falflores

  • PIC16
  • ***
  • Mensajes: 173
    • Control, electrónica y programación en español
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #3 en: 14 de Octubre de 2011, 05:31:34 »
Hola de nuevo, perdón por tardar en responder tanto tiempo, pero he estado aprendiendo PLC en la escuela y la verdad estoy descuidando bastante los micros; gracias por tus respuestas Yoshua, la verdad es que lo que me propones ya lo hice una vez para un control proporcional por hardware de un motor, y la verdad es que es una muy buena opción, aunque mucho más engorrosa y cara, pero no deja de ser buena, de hecho eso me liberaría completamente de generar el PWM y solamente me ocuparía de mandar el valor de los pot digitales, lo voy a considerar seriamente. Es una lástima no dar con un CI que me haga todo esto, ya que sería una solución mucho más compacta.
Los invito a mi blog "Control, electrónica y programación en español" www.robotnias.blogspot.com

Desconectado rina

  • PIC10
  • *
  • Mensajes: 45
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #4 en: 18 de Enero de 2012, 04:19:57 »
y por programa rtansolo te sale una frecuencia de 100hz las 8 salidas... que cristal de cuarzo tienes puesto 4mhz. en un momento dado podrias suvirlo porlomenos a 12mhz aunque tansolo suviria la frecuencia portadora 4 veces mas..

yo tengo un programa para car 4 salidas pwm por programa y con un cristal de cuarzo de 4mhz y una sesolucion de 255 juraria que la portadora suena asi aoido a casi 1Khz igual un cacho menos pero no tan poco.. si reduces el valor de resolucion de 0 a 100 todavia se aumentaria mas la frecuencia.. y bamos si bajas la resolucion a 32 estados ya es vastante variacion para un motor. con un cristal de 12mhz la portadora tendria que ser mas de 20khz para las 8 salidas. despues tansolo es mirar en que momento pones la parte del programa para las bariables. que para un motor seria al final antes de poner a cero todas las salidas pwm y volver a dispararlas.. asi siempre empezaria con un nivel de corriente mas bien alto hasta el 100% si pusieras esas instrucciones despues de poner a 0 todas las pwm lo que arias es que empezasen desde un balor muy pequeño que ni moveria el motor y no llegaria nunca al 100% se quedaria en un 90% del pwm..
que me imajino seria lo que te paso.. nolo viste en el espejo. (como me diria un profe que tuve) contestacion (se rompio al mirarme yo).. jejejej

pon si eso el programa que hiciste,  y le echo un vistazo

como iciste el programa en C para las 8 salidas pwm???
« Última modificación: 18 de Enero de 2012, 04:39:46 por rina »

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #5 en: 25 de Enero de 2012, 20:33:56 »
Echale un ojo a este integrado: tlc5940.
Si juegas contra el mejor, pierdes como los demás.

Desconectado nZeta

  • PIC16
  • ***
  • Mensajes: 130
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #6 en: 26 de Enero de 2012, 00:44:19 »
con un PSOC3 o un PSOC5 puedes generar hasta 52 salidas PWM, con un PSOC1 un poco menos, pero vale, eso gracias a la flexibilidad de los PSOC
http://www.cypress.com/?rID=40091

Desconectado falflores

  • PIC16
  • ***
  • Mensajes: 173
    • Control, electrónica y programación en español
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #7 en: 26 de Enero de 2012, 01:48:47 »
Hola nZeta, vi el video, está muy bueno como utiliza este dispositivo, pero la verdad nunca había oido hablar de ellos, son micros???, son FPGAs???, son arreglos de compuertas???, me podrías pasar más información por favor???. Gracias por la respuesta
Los invito a mi blog "Control, electrónica y programación en español" www.robotnias.blogspot.com

Desconectado falflores

  • PIC16
  • ***
  • Mensajes: 173
    • Control, electrónica y programación en español
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #8 en: 26 de Enero de 2012, 01:49:43 »
Echale un ojo a este integrado: tlc5940.

Ya había visto ese integrado, y de hecho creo que tengo uno por allí, tal vez lo pruebe pronto, gracias RaDon
Los invito a mi blog "Control, electrónica y programación en español" www.robotnias.blogspot.com

Desconectado nZeta

  • PIC16
  • ***
  • Mensajes: 130
Re: Integrado para manejar 8 PWM para motores de CC
« Respuesta #9 en: 26 de Enero de 2012, 11:30:19 »
Hola nZeta, vi el video, está muy bueno como utiliza este dispositivo, pero la verdad nunca había oido hablar de ellos, son micros???, son FPGAs???, son arreglos de compuertas???, me podrías pasar más información por favor???. Gracias por la respuesta
Los Programable System on Chip de CypressSemiconductors (PSOC) son microcontroladores con bloques Logicos analogicos y digitales configurables a la CPLD/FPGA. Estos bloques pueden configurarse fasilmente (Drag and Drop) como cualquier periferico de microcontrolador standard con los modulos que se encuentran en las librerias ya creadas (SPI, I2C, Timers, ADCs, DAC, PWM, etc.. ) o puedes crear tu propio modulo como un periferico o maquina de estado o lo que sea usando VHDL.

Los PSOC1 llevan nucleo M8C (Propio de cypress), los PSOC3 llevan nucleo 8051 y los PSOC5 nucleo ARM-CortexM3. Mas info en la pagina del fabricante www.cypress.com/PSOC
« Última modificación: 26 de Enero de 2012, 11:55:09 por nZeta »