Autor Tema: 9 salidas PWM, ideas?  (Leído 5339 veces)

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

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
9 salidas PWM, ideas?
« en: 19 de Diciembre de 2006, 17:16:37 »
Os cuento, quiero controlar desde el PC por USB 9 electroválvulas por PWM, se me presenta el siguiente problema. Voy a usar el 18F2550 para el tema del envio/recepción de datos por USB y para controlar una de las electroválvulas, por lo que queda un modulo PWM libre en el PIC y 8 que necesitan ser controlados!(upsss) Mi idea es utilizar otro PIC, DsPIC, o algún IC para enviarle via I2C, SPI, u otro protocolo los valores para el PWM, y he ahí el problema. No encuentro ningún IC que haga esta función, y tampoco un PIC/DsPIC con tantos canales PWM de salida. Lo mas parecido, sencillo y barato que he encontrado es el DsPIC 30F2020
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocName=en026339
El problema está en que no me queda claro que sean 8 salidas PWM las que da, ya que internamente tiene 4 generadores PWM que dan la salida complementada, aunque según el datasheet puede darlas independientes...creo que eso no los convierte en 8, sino en 4 pero sin ser complementadas, simplemente la otra no funcionaría. Por otro lado este DsPIC también presenta el problema que no está incluido en el WinPIC800 :(

Que me recomendais?? ya que ando un poco descolocaö!!

Gracias y un saludo! :)

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: 9 salidas PWM, ideas?
« Respuesta #1 en: 19 de Diciembre de 2006, 17:19:23 »
Hola!
Hay en el foro (no tengo el link  a mano, pero el buscador debe dar resultado) un hilo de RedPic donde muestra en CCS como controlar varios servos mediante PWM e interrupciones....quizas esa sea la solucion: en lugar de usar el modulo PWM, generarlas "a pedal"....

Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
Re: 9 salidas PWM, ideas?
« Respuesta #2 en: 19 de Diciembre de 2006, 18:19:21 »
Gracias por la respuesta aitopes ;), a eso se le llama velocidad! El tema del PWM por Soft lo he estado pensando, la cosa es que tengo cierto 'miedo' de que eso no vaya a ir lo fino que necesitaría, ya que el PWM es de unos 200Hz y además tengo que estar leyendo del bus I2C...  por lo que la historia está en que mientras lea el I2C la generación por soft del PWM va a quedar desatenida... por otro lado, puesto que no requiero demasiada resolución (solo tengo tres posiciones), las electroválvulas van desfasadas y a la misma frecuencia, quizá esto ayude muy mucho con respecto al algoritmo del soft, el problema es que... soy muy perro!!! y si el PIC(o IC) ya lleva los módulos incluidos... un calentamiento menos! jeje

Gracias :)


Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
Re: 9 salidas PWM, ideas?
« Respuesta #4 en: 19 de Diciembre de 2006, 18:54:43 »
Gracias por el aviso Manolo, los he visto, pero como me gusta eso de quejarme... la cosa es que tienen demasiadas patas, el único de 28 (ya que realmente ese PIC solo lo voy a usar para el tema del PWM) es el que comentaba antes el 30F2020 y no está en el winpic800, aunque si no hubiera mas remedio utilizaría uno con mas patas, será por estaño! :) de todas formas el tema que me intriga es que internamente tiene solo 4 módulos y para doblarlo usan salidas complementadas (no he entendido esto totalmente del datasheet), es decir, puedo controlar 8 módulos independientemente, o solo 4 y tendré 8 salidas??

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: 9 salidas PWM, ideas?
« Respuesta #5 en: 19 de Diciembre de 2006, 19:29:16 »
Tienes razón, sólo generan 4 duty cycles diferentes.
Yo consideraría generarlos por software; quizás te de para gestionar el I2C y los PWM sin interferencias.

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
Re: 9 salidas PWM, ideas?
« Respuesta #6 en: 19 de Diciembre de 2006, 20:02:36 »
vaya, me ha fastidiado no equivocarme en esta ocasión :/ ... pegando un ojo veo q el 18F4450 lleva 5 PWM... si pongo dos solo tendría que sincronizarlos... ummm ummmm voy a pensar por donde tirar... intentaré hacer algún cálculo de tiempo con respecto a la generación del PWM por soft con un DsPIC 28p(miedo me da meterme con el C30) y comunicación con I2C con el 18F2550 28p... se queda mas compacto, no tengo que pensar en sincronizar y bueno.. a ver si no tengo problemas cn las interrupciones del PWM y la lectura del I2C :S:S Voy a ojear los AVR (aunque eso esté casi casi prohibido decirlo por aquí jajaja) a ver si hay alguno con los 8 benditos módulos.

Saludos y graciasa :)

Desconectado Marioguillote

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1926
    • Servisystem
Re: 9 salidas PWM, ideas?
« Respuesta #7 en: 19 de Diciembre de 2006, 20:53:53 »
Hola a todos !


A ver si entendí bien, de que se trata el tema este:

No sólo existe el PIC para generar PWM.
PWM se puede generar con un 555, ó, con un par de puertas NAND.
El CD4093B son 4 puertas NAND, o sea que ahí tendrías 2 generadores de PWM.

Un estado sería 0% , el segundo sería 50% y el tercero 100% ?

Yo creo que con un poco de hardware se podría solucionar fácilmente y usando un PIC de 3 puertos. Aclaremos que perderías un puerto completo en gobernar el hard.
Pero una vez que metiste el estado en el pin, el PIC que haga otras tareas y se olvide de generar PWM.
Habría que ver la viabilidad del hard extra, si dá por espacios.
Por costes es despreciable. 5 CD4093B para 10 PWM te pueden salir la friolera de 1 a 1,5 Euros.

Creo que esa sería una salida sencilla, fiable, económica. Lo único que vas a tener que soldar un poco más. (Pero te lo vas a ahorrar en código)

Todo esto se basa en leer esto:

...  por lo que la historia está en que mientras lea el I2C la generación por soft del PWM va a quedar desatenida... por otro lado, puesto que no requiero demasiada resolución (solo tengo tres posiciones), las electroválvulas van desfasadas y a la misma frecuencia


Saludos
Mario
 

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re: 9 salidas PWM, ideas?
« Respuesta #8 en: 20 de Diciembre de 2006, 00:34:50 »
Hola J1M, recuerdo que hay un hilo que ya habla de generar 9 PWM con un solo micro, y yo personalmente e podido generar 9 PWM con un 16F y todos por software, esto solo con un cristal de 4MHz llegaban a una frecuencia de 60Hz y una resolución de 8 bit, por supuesto el duty cicle de cada uno era independiente del otro.

Por supuesto la comunicación I2C no estaba implementada, pero si usaras el I2C por hardware del micro el tiempo perdido sería ínfimo, por lo tanto creo que con cualquier micro de la familia 16F (y un cristal mayor a los 16MHz) que posea I2C por hardware puedes hacer los 9 PWM con una frecuencia de 200 Hz.

Un saludo.

Atte. CARLOS.
La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: 9 salidas PWM, ideas?
« Respuesta #9 en: 20 de Diciembre de 2006, 02:42:07 »
Yo opino como Chaly, creo que debería darte para hacerlo con un sólo micro por software.

Además, eso de que sólo quieres 3 posiciones a 200Hz simplifica mucho las cosas. Supongo que será suficiente con generar una interrupción que salte cada 1,25 ms. (800Hz) y ahí activar cada electroválvula según corresponda. De cada cuatro veces que entres en la interrupción, la primera sería duty=100%,  la segunda duty=66%, la tercera duty=33% y la última duty=0%.

¿No te serviría eso?

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: 9 salidas PWM, ideas?
« Respuesta #10 en: 20 de Diciembre de 2006, 02:50:14 »
Aquí la prueba del delito:
http://www.superrobotica.com/S310180.htm



Estos han conseguido 21 PWM + I2C con un 18F. Seguro que tú eres capaz de meter 22 PWM  :D

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5544
    • Picmania by Redraven
Re: 9 salidas PWM, ideas?
« Respuesta #11 en: 20 de Diciembre de 2006, 03:22:07 »
22 PWM, I2C ... y SPI  :D :D :D

Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
Re: 9 salidas PWM, ideas?
« Respuesta #12 en: 20 de Diciembre de 2006, 04:06:47 »
Muchas gracias por las respuestas compañeros :), voy a haceos caso y me pelearé un poco con la generación del PWM por soft y un PIC18.

saludos y gracias!! ;)

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: 9 salidas PWM, ideas?
« Respuesta #13 en: 20 de Diciembre de 2006, 07:17:21 »
Me gusta la idea de Mario.
Muchas veces he "delegado" tareas que por hard son muy sencillas (como este caso) y que por soft se pueden tornar una pesadilla.
Por supuesto, si estas jugado con el espacio tenes que recurrir a SMD (vamos, que no estan dificil!), pero en general tampoco es tanta la cantidad de cm2 que se agregan. Y ni hablar del tiempo de desarrollo que se ahorra.

Saluodos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert