cancel
Showing results for 
Search instead for 
Did you mean: 

Cortex-A chips for Generating Pulses?

helixwmonkey
Associate II
Posted on April 14, 2014 at 11:33

I am now using a Cortext-M3 chip(STM32F) to control Stepping Motor in an industrial equipment (Only generating pulses and direction signal to send to a stepper driver). Its maximum frequency is 72MHz so I can't add more complex tasks in it. I want to use a chip with maximum frequency at least at 400MHz to do more complex tasks like touch screen and camera controlling. I noticed that Cortex-A series chips basically has high operation frequencies like 480MHz, and I only know that they are basically used in smart-phones. So Could Cortex-A series chips be used in motor controlling?(For motor controlling, I only need to generate pulses and direction signal.) If so, do you have some recommending chips?

Thanks.

Summarizing my demands:

1. Able to Generate pulses at least 200kHz, with general I/O control.

2. Maximum frequency at least 400MHz. Able to do 3.6'' touch screen controlling.

3. Able to input video stream from a 2 Million pixel USB Camera and some basic image processing and displaying.

8 REPLIES 8
frankmeyer9
Associate II
Posted on April 14, 2014 at 12:54

I think you are somehow on the wrong track.

Motor controlling is not just about generating PWM. More important, you need to do complex calculations (filtering, PID controlling algorithms) in the PWM cycle time, say, in 5us for the stated 200kHz (cycle-by-cycle control).

This is the domain of DSPs, which are highly specialized and can do 5 of more operations in one machine instruction. They often have specific peripherals for motor control, run on lower clock frequencies (than 400MHz), and are much cheaper than Cortex-A types. TI and Microchip come to my mind here as supplier.

On the latter (Cortex-A) you will probably deal with a complex OS. Or do you really intend to deal with a 5000+ manual-page-monster in bare-metal coding ?

And those OS'es (having  an embedded Linux in mind) do usually support video streaming and TFT displays, but not hard realtime motor control.

Not sure why a motor control unit needs video streaming and displays...

helixwmonkey
Associate II
Posted on April 14, 2014 at 13:58

Thanks. The pulses generated here are to send to stepper driver. So I am only responsible for generating pulses of different frequencies and direction. And here is a new demand we add a camera and touch screen. The user send commands to MCU via touch screen, then the camera captures a image, briefly processes the image, then the computed results tell the MCU to drive the motor there.

helixwmonkey
Associate II
Posted on April 14, 2014 at 13:59

I'm a greenhorn to Cortex...

frankmeyer9
Associate II
Posted on April 14, 2014 at 14:43

The user send commands to MCU via touch screen, then the camera captures a image, briefly processes the image, then the computed results tell the MCU to drive the motor there.

 

That does not sound like hard realtime and cycle-by-cycle control. Especially ''briefly processes the image'' seems to be an understatement.

If this is not a commercial project (where the price matters most), I would go for one of the many Cortex-A boards available, using Linux. That would allow you to use high-level libraries like OpenCV, without messing directly with the hardware.

Not sure if any of those boards feature PWM outputs. However, considering back-EMF effects from motors, I would use a separate PWM controller for this purpose. A cheap Cortex-M0, controlled by a serial interface, would suffice IMHO.

helixwmonkey
Associate II
Posted on April 14, 2014 at 15:41

A cheap Cortex-M0, controlled by a serial interface, would suffice IMHO.

Good idea. Is there a faster connection between two chips than serial interface(maximum 4.5Mbps for serial as I remember)?

frankmeyer9
Associate II
Posted on April 14, 2014 at 16:45

With serial, I meant anything serial, including PCB-level buses like SPI, I2S and I2C, or CAN, USB and Ethernet.

...(maximum 4.5Mbps for serial as I remember)?

 

 

I'm not sure what requires such a high transfer rate. Managing this is non-trivial in both hardware and software.

I don't know your requirements/setup, but check other fora for motor control implementations. I suggest to consider galvanic isolation - you wouldn't be the first one to kill a 500+ bucks setup with one single burst of back EMF ...

dthedens23
Associate II
Posted on April 14, 2014 at 19:21

Sounds like someone does not know the definition of feature creep.  Kills more projects than anything.

this sounds like a job for multiple processors.  One to do the motor stuff which needs real time and another to do the camera/video stuff.  They can communicate to each other via a bus like SPI for instance.

An A8 pushes you into much higher cost, you need external DRAM, external flash, power rails, multilayer boards, compliance issues, ...

frankmeyer9
Associate II
Posted on April 15, 2014 at 08:54

I agree, the whole setup is kind of an overkill, both in commercial sense, and in regard to performance. But I believe it is rather a demonstration project, and not commercial. Perhaps for an university ...

It begins to make sense when you want to control more (slave) motor controllers from the Cortex-A master, say, for an autonomous or semi-autonomous robot with optical guidance.