The single-chip dual-axis servo motor
drive implementation was architected around a central real-time path that is made up
of the following:
- ICSSG1 - EtherCAT client
controller firmware
- ICSSG0 - SDDF and EnDAT 2.2
decoding
- Sigma-Delta filtering
firmware with Load Sharing between RTU and PRU cores in PRU0 for
phase current feed back from two directly connected motors
- EnDat2.2 decoding
firmware with Loading Sharing between RTU and PRU cores in PRU1
for angle, position, and speed feedback from two directly connected
absolute encoders
- R5FSS1_0 - EtherCAT client stack
implementing CiA402 using FreeRTOS
- R5FSS0_0 and R5FSS0_1 – Two
independent closed-loop FOC capable of current, speed, or position closed-loop
control for two directly connected motors with absolute encoders
- IPC Notify in the MCU+ SDK
provides low-latency inter-core synchronization and communication
- EPWM – Six channels of enhanced
PWM peripherals to generate waveforms based on the output of two FOC loops