cancel
Showing results for 
Search instead for 
Did you mean: 

CAN on stm32f303xC processor

ArturasV
Senior
Posted on November 21, 2014 at 14:58

The original post was too long to process during our migration. Please click on the attachment to read the original post.
10 REPLIES 10
jpeacock
Associate III
Posted on December 01, 2014 at 19:50

If you mean a 3 phase AC induction motor by ''industrial'' then I'd suggest you look at an STM32F4 variant.  It has three phase motor control (TIM1 or TIM8) plus enough ADC channels to collect voltage and current for all three phases at a high resolution sample rate, plus there's a hardware shutdown for faults.  The DSP instructions are handy to quickly process the three phases into real and apparent power without loading down the CPU.

For CAN you'll need to look at what net stack you plan to use.  For instance, CANopen has well-defined profiles for motor control with open loop or positional feedback.  If this is a commercial product you'll want to follow a standard motor profile.

The 'F4 also has dual CAN buses so you can support high reliability, dual bus designs.  If the motor is safety critical you'll need redundant paths for networking.  In that case use two separate transceivers, not two transceivers in one package.  I also use an analog switch for the termination resistor so I can programmatically turn bus termination on or off.

There are some commercial CAN stacks or you can write your own (6 to 12 Mythical Man-Months development time for a full CANopen 4.2 stack implementation).  Most CAN protocols are not free so plan on buying the specs.  As I recall CANopen ran about 300 Euros at the time I got the spec but best to check organization websites before picking a protocol.  Some common ones are DeviceNet, CANopen and J1939.  You can get the basic CANopen specs off the CiA (CAN in Automation) website for free, more advanced requires joining the group.

  Jack Peacock