Dev kit for lots of PWM outputs?

Hello,

I'm considering an unusual embedded application which requires 250 simultaneous PWM outputs, all independent. I will poll digital feedback values from each of the 250 devices (heaters) and use this information to adjust the output duty cycles on a PID loop algorithm. The chip would be dedicated to essentially this task only, with only a handful of discrete I/O (start/stop signal & a couple of indicator LED's).

Is there a single microcontroller that can do this? I looked at Atmel, but there are so many possibilities and I'm afraid I'll waste money on a development kit for a specific processor and then find out that there was something better, cheaper, easier to learn, or more appropriate.

Thanks for any leads you can provide.

Sid

Reply to
sylvestersn
Loading thread data ...

Sounds like a job for an FPGA. You can probably make each pin its own PWM channel. And you get get devices with up to several hundred I/O pins.

You have several choices for the smarts:

1) hardwired computational structure in the FPGA (ugh!) 2) external processor controlling the FPGA (think an addressable register for each PWM channel) 3) processor core packaged inside the FPGA package 4) processor implemented in the FPGA logic fabric

Basic Xilinx FPGA kit is about $100 from Xilinx or Digilent which makes it for them. Their processor cores can't be implemented in that chip but other people's can. Digilent also has NEXSYS with a much larger chip for $120 - could be useful as you might run out of program memory trying to squeeze things into the little chip (FPGAs don't offer much memory compared to microncontrollers)

Reply to
cs_posting

Use an FPGA as a PWM peripheral, all managed with one busy processor, or find a modest processor that has a high PWM output to pin ratio, and use as many as you need to get the job done.

I think I'd evaluate both solutions; I honestly don't know which one would end up looking better.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google?  See http://cfaj.freeshell.org/google/

"Applied Control Theory for Embedded Systems" came out in April.
See details at http://www.wescottdesign.com/actfes/actfes.html
Reply to
Tim Wescott

If I were to assume that your heaters are of a reasonable size then the time constants involved are going to be in the order of minutes to tens of minutes. As a result the bandwidth of the loop you use to control them can be as slow as a slug with it's foot torn off.

Even with 250 of them on one processor you are not going to need blisteringly fast speed. Not knowing much modern stuff I would suggest you could dangle them all on an RS-485 cable running at 9600Baud.

Read back data for temperature then send a 4bit adjustment back to each one for local processing with some shitty analog controller stuff.

One PIC for the central controller should do and another one for local processing at the heater.

I could be wrong though.

Of course..... you could use an FPGA......?

DNA

Reply to
Genome

I agree with sylvester. No modern microcontroller will have 250 separate input/output pins. I believe that you need to use an FPGA in tandem with a microcontroller. The FPGA handles the I/O and the PWM waveforms while the microcontroller can do the maths stuff.

Reply to
Anirban

Heaters don't need that fast a response, and you don't actually need PWM. You just need the current to be on some specified percent of the time, right?

If you can find a CPU with enough general purpose I/O pins, try this:

For each pin, keep an 8 bit counter and an 8 bit "setting" value. At regular intervals, add the setting to the counter, and if there's a carry, turn the I/O pin on, else turn it off.

With this technique, you can do the math much less often (as slow as one loop per second for heaters) and it "spreads out" the "on" pulses (instead of lumping them together like PWM does). This is the same technique used to draw angled lines, and similar to dithering and sigma-delta.

Reply to
DJ Delorie

On a sunny day (12 Feb 2007 19:40:43 -0800) it happened snipped-for-privacy@yahoo.com wrote in :

FPGA, perfect for this:-) As much IO lines as you like.

Reply to
Jan Panteltje

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.