User Manual
Table Of Contents
- Cover
- Revision History
- Table of Contents
- Introduction
- Refer to the Datasheet for Hardware-Specific Issues
- User Manual Structure and Use
- SECTION 1 Connecting Power and Motors to the Controller
- SECTION 2 Safety Recommendations
- SECTION 3 Connecting Sensors and Actuators to Input/Outputs
- SECTION 4 I/O Configuration and Operation
- SECTION 5 Magnetic Sensor
- SECTION 6 Command Modes
- SECTION 7 Motor Operating Features and Options
- SECTION 8 Brushless Motor Connections and Operation
- SECTION 9 AC Induction MotorOperation
- SECTION 10 Closed Loop Speed and Speed Position Modes
- SECTION 11 Closed Loop Relative and Tracking Position Modes
- SECTION 12 Closed Loop Count Position Mode
- SECTION 13 Closed Loop Torque Mode
- SECTION 14 Serial (RS232/RS485/USB/TCP) Operation
- SECTION 15 Commands Reference
- Section1: ConnectingPower and Motors to the Controller
- Power Connections
- Controller Power
- Controller Powering Schemes
- Mandatory Connections
- Connection for Safe Operation with Discharged Batteries (note 1)
- Use precharge Resistor to prevent switch arcing (note 2)
- Protection against Damage due to Regeneration (notes 3 and 4)
- Connect Case to Earth if connecting AC equipment (note 5)
- Avoid Ground loops when connecting I/O devices (note 6)
- Connecting the Motors
- Single Channel Operation
- Power Fuses
- Wire Length Limits
- Electrical Noise Reduction Techniques
- Battery Current vs. Motor Current
- Measured and Calculated Currents
- Power Regeneration Considerations
- Using the Controller with a Power Supply
- Section 2: Safety Recommendations
- Section 3: Connecting Sensors and Actuators to Input/Outputs
- Controller Connections
- Controller’s Inputs and Outputs
- Connecting devices to Digital Outputs
- Connecting Resistive Loads to Outputs
- Connecting Inductive loads to Outputs
- Connecting Switches or Devices to Inputs shared with Outputs
- Connecting a Voltage Source to Analog Inputs
- Connecting Tachometer to Analog Inputs
- Connecting External Thermistor to Analog Inputs
- Using the Analog Inputs to Monitor External Voltages
- Connecting SSI Sensors
- Connecting Optical Encoders
- Connecting the Encoder
- Connecting Switches or Devices to direct Digital Inputs
- Connecting a Voltage Source to Analog Inputs
- Section 4: I/O Configuration and Operation
- Basic Operation
- Section 5: Roboteq Products Connection and Operation
- Section 6: Command Modes
- Input Command Modes and Priorities
- Operating the Controller in RC mode
- Using Sensors with PWM Outputs for Commands
- Operating the Controller In Analog Mode
- Monitoring and Telemetry in RC or Analog Modes
- Using the Controller with a Spektrum Satellite Receiver
- Using the Controller in Serial (USB/RS232/RS485/TCP) Mode
- Section 7: Motor Operating Features and Options
- Section 8: Brushless Motor Connections and Operation
- Section 9: AC Induction Motor Operation
- Section 10: Closed Loop Speed and Speed-Position Modes
- Section 11: Closed Loop Relative and Tracking Position Modes
- Modes Description
- Selecting the Position Modes
- Position Feedback Sensor Selection
- Sensor Mounting
- Feedback Sensor Range Setting
- Adding Safety Limit Switches
- Using Current Trigger as Protection
- Operating in Closed Loop Relative Position Mode
- Operating in Closed Loop Tracking Mode
- Position Mode Relative Control Loop Description
- PID tuning in Position Mode
- PID Tuning Differences between Position Relative and Position Tracking
- Loop Error Detection and Protection
- Section 12: Closed Loop Count Position Mode
- Section 13: Closed Loop Torque Mode
- Section 14: Serial(RS232/RS485/USB/TCP)Operation
- Section 15: CommandsReference
- Commands Types
- Runtime Commands
- AC - Set Acceleration
- AX - Next Acceleration
- B - Set User Boolean Variable
- BND - Spectrum Bind
- C - Set Encoder Counters
- CB - Set Brushless Counter
- CG - Set Motor Command via CAN
- CS - CAN Send
- CSS - Set SSI Sensor Counter
- D0 - Reset Individual Digital Out bits
- D1 - Set Individual Digital Out bits
- DC - Set Deceleration
- DS - Set all Digital Out bits
- DX - Next Deceleration
- EES - Save Configuration in EEPROM
- EX - Emergency Stop
- G - Go to Speed or to Relative Position
- GIQ - Go to Torque Amps
- GID - Go to Torque Amps
- H - Load Home counter
- MG - Emergency Stop Release
- MS - Stop in all modes
- P - Go to Absolute Desired Position
- PR - Go to Relative Desired Position
- PRX - Next Go to Relative Desired Position
- PX - Next Go to Absolute Desired Position
- R - MicroBasic Run
- RC - Set Pulse Out
- S - Set Motor Speed
- STT - STO Self-Test
- SX - Next Velocity
- VAR - Set User Variable
- DS402 Runtime Commands
- CW – Control Word (DS402)
- Profile Position Mode
- Velocity Mode
- PAC – Profile Acceleration (DS402)
- PDC – Profile Deceleration (DS402)
- POS – Target Position (DS402)
- PSP – Profile Velocity (DS402)
- ROM – Modes of Operation (DS402)
- S – Target Velocity (DS402)
- SAC – Velocity Acceleration (DS402)
- SDC – Velocity Deceleration (DS402)
- SPL – Velocity Min/Max Amount (DS402)
- TC – Target Torque (DS402)
- TSL – Torque Slope (DS402)
- Runtime Queries
- A - Read Motor Amps
- AI - Read Analog Inputs
- AIC - Read Analog Input after Conversion
- ANG - Read Rotor Angle
- ASI - Read Raw Sin/Cos sensor
- B - Read User Boolean Variable
- BA - Read Battery Amps
- BCR - Read Brushless Count Relative
- BMC - Read BMS State Of Charge in AmpHours
- BMF - Read BMS status flags
- BMS - Read BMS switch states
- BS - Read BL Motor Speed in RPM
- BSC - Read BMS State of Charge in percentage
- BSR - Read BL Motor Speed as 1/1000 of Max RPM
- C - Read Encoder Counter Absolute
- CAN - Read Raw CAN frame
- CB - Read Absolute Brushless Counter
- CF - Read Raw CAN Received Frames Count
- CIA - Read Converted Analog Command
- CIP - Read Internal Pulse Command
- CIS - Read Internal Serial Command
- CL - Read RoboCAN Alive Nodes Map
- CR - Read Encoder Count Relative
- CSR - Read Relative SSI Sensor Counter
- CSS - Read Absolute SSI Sensor Counter
- D - Read Digital Inputs
- DI - Read Individual Digital Inputs
- DO - Read Digital Output Status
- DPA - Read DC/Peak Amps
- DR - Read Destination Reached
- E - Read Closed Loop Error
- F - Read Feedback
- FC - Read FOC Angle Adjust
- FLW - Read Flow Sensor Counter
- FF - Read Fault Flags
- FID - Read Firmware ID
- FIN - Read Firmware ID (numerical)
- FM - Read Runtime Status Flag
- FS - Read Status Flags
- HS - Read Hall Sensor States
- ICL - Is RoboCAN Node Alive
- K - Read Spektrum Receiver
- LK - Read Lock status
- M - Read Motor Command Applied
- MA - Read Field Oriented Control Motor Amps
- MGD - Read Magsensor Track Detect
- MGM - Read Magsensor Markers
- MGS - Read Magsensor Status
- MGT - Read Magsensor Track Position
- MGY - Read Magsensor Gyroscope
- MGX - Read MagSensor Tape Cross Detection
- P - Read Motor Power Output Applied
- PHA - Read Phase Amps
- PI - Read Pulse Inputs
- PIC - Read Pulse Input after Conversion
- S - Read Encoder Motor Speed in RPM
- SCC - Read Script Checksum
- SNA - Read Sensor Angle
- SR - Read Encoder Speed Relative
- SS - Read SSI Sensor Motor Speed in RPM
- SSR - Read SSI Sensor Speed Relative
- STT - STO Self-Test Result
- T - Read Temperature
- TM - Read Time
- TR - Read Position Relative Tracking
- TRN - Read Control Unit type and Controller Model
- UID - Read MCU Id
- V - Read Volts
- VAR - Read User Integer Variable
- SL - Read Slip Frequency
- DS402 Runtime Queries
- AOM – Modes of Operation Display (DS402)
- CW – Control Word (DS402)
- F – Velocity/Position Actual Value (DS402)
- PAC – Profile Acceleration (DS402)
- PDC – Profile Deceleration (DS402)
- POS – Target Position (DS402)
- PSP – Profile Velocity (DS402)
- RMP – VL Velocity Demand (DS402)
- ROM – Modes of Operation (DS402)
- S – Target Velocity (DS402)
- SAC – Velocity Acceleration (DS402)
- SDC – Velocity Deceleration (DS402)
- SDM – Supported Drive Modes (DS402)
- SPL – Velocity Min/Max Amount (DS402)
- SW – Status Word (DS402)
- TC – Target Torque (DS402)
- TRQ – Target Torque (DS402)
- TSL – Profile Acceleration (DS402)
- VNM – Version Number (DS402)
- Query History Commands
- Maintenance Commands
- CLMOD – Motor/Sensor Setup
- CLRST - Reset configuration to factory defaults
- CLSAV - Save calibrations to Flash
- DFU - Update Firmware via USB
- EELD - Load Parameters from EEPROM
- EELOG - Dump Flash Log Data
- EERST - Reset Factory Defaults
- EESAV - Save Configuration in EEPROM
- ERASE - Erase Flash Log Data
- LK - Lock Configuration Access
- RESET - Reset Controller
- SLD - Script Load
- STIME - Set Time
- UK - Unlock Configuration Access
- Set/Read Configuration Commands
- General Configuration and Safety
- ACS - Analog Center Safety
- AMS - Analog within Min & Max Safety
- BEE - User Storage in Battery Backed RAM
- BRUN - MicroBasic Auto Start
- CLIN - Command Linearity
- CPRI - Command Priorities
- DFC - Default Command value
- DMOD – Modbus Mode
- ECHOF - Enable/Disable Serial Echo
- EE - Store User Data in Flash
- MDAL – Modbus Data Alignment
- MNOD – Modbus Node ID
- RSBR - Set RS232 bit rate
- RS485 - Enable RS485
- RWD - Serial Data Watchdog
- SCRO - Select Print output port for scripting
- SKCTR - Spektrum Center
- SKDB - Spektrum Deadband
- SKLIN - Spektrum Linearity
- SKMAX - Spektrum Max
- SKMIN - Spektrum Min
- SKUSE - Assign Spektrum port to motor command
- STO – STO Enable
- TELS - Telemetry String
- Analog, Digital, Pulse IO Configurations
- ACTR - Set Analog Input Center (0) Level
- ADB - Analog Deadband
- AINA - Analog Input Use
- ALIN - Analog Linearity
- AMAX - Set Analog Input Max Range
- AMAXA - Action at Analog Max
- AMIN - Set Analog Input Min Range
- AMINA - Action at Analog Min
- AMOD - Enable and Set Analog Input Mode
- APOL - Analog Input Polarity
- DINA - Digital Input Action
- DINL - Digital Input Active Level
- DOA - Digital Output Action
- DOL - Digital Outputs Active Level
- PCTR - Pulse Center Range
- PDB - Pulse Input Deadband
- PINA - Pulse Input Use
- PLIN - Pulse Linearity
- PMAX - Pulse Max Range
- PMAXA - Action on Pulse Max
- PMIN - Pulse Min Range
- PMINA - Action on Pulse Min
- PMOD - Pulse Mode Select
- PPOL - Pulse Input Polarity
- Motor Configurations
- ALIM - Amp Limit
- ATGA - Amps Trigger Action
- ATGD - Amps Trigger Delay
- ATRIG - Amps Trigger Level
- BKD - Brake activation delay in ms
- BLFB - Encoder or Hall Sensor Feedback for closed loop
- BLSTD - Stall Detection
- CLERD - Close Loop Error Detection
- EDEC - Fault Motor Deceleration Rate
- EHL - Encoder High Count Limit
- EHLA - Encoder High Limit Action
- EHOME - Encoder Counter Load at Home Position
- ELL - Encoder Low Count Limit
- ELLA - Encoder Low Limit Action
- EMOD - Encoder Usage
- EPPR - Encoder PPR Value
- ICAP - PID Integral Cap
- KD - PID Differential Gain
- KI - PID Integral Gain
- KP - PID Proportional Gain
- MAC - Motor Acceleration Rate
- MDEC - Motor Deceleration Rate
- MLX - Molex Input
- MDIR - Motor Direction
- MMOD - Operating Mode
- MVEL - Default Position Velocity
- MXMD - Separate or Mixed Mode Select
- MXPF - Motor Max Power Forward
- MXPR - Motor Max Power Reverse
- MXRPM - Max RPM Value
- MXTRN - Number of turns between limits
- OVH - Overvoltage hysteresis
- OVL - Overvoltage Cutoff Limit
- OTL - Over Temperature Cutoff Limit
- PWMF - PWM Frequency
- SCPR - SSI Sensor CPR Value
- SHL - SSI Sensor High Count Limit
- SHLA - SSI Sensor High Limit Action
- SHOME - SSI Sensor Counter Load at Home Position
- SLL - SSI Sensor Low Count Limit
- SLLA - SSI Sensor Low Limit Action
- SMOD - SSI Sensor Usage
- THLD - Short Circuit Detection Threshold
- TNM - Motor Torque Constant
- UVL - Undervoltage Limit
- Brushless Specific Commands
- BADJ - Brushless zero angle
- BADV - Brushless timing angle adjust
- BECC – BEMF Coupling Constant
- BFBK - Brushless feedback sesnor
- BHL - Brushless Counter High Limit
- BHLA - Brushless Counter High Limit Action
- BHOME - Brushless Counter Load at Home Position
- BLL - Brushless Counter Low Limit
- BLLA - Brushless Counter Low Limit Action
- BMOD - Brushless operating mode
- BPOL - Number of Pole Pairs and Speed Polarity of Brushless Motor
- BZPW - Brushless zero seek power level
- HPO - Hall Sensor Position
- HSM - Hall Sensor Map
- KIF - FOC PID Integral Gain
- KPF - FOC PID Proportional Gain
- PSA - Phase Shift Angle
- SPOL - Sin/Cos, Resolver or SSI sensor number of poles
- SSF – Sensorless Start-Up Frequency
- SVT – BEMF Integrator Limit
- SWD - Swap Windings
- TID - FOC Target Id
- ZSMC - SinCos Calibration
- AC Induction Specific Commands
- VPH - AC Induction Volts per Hertz
- ILM - Mutual Inductance
- ILLR - Rotor Leakage Inductance
- IRR - Rotor Resistance
- MPW - Minimum Power
- MXS - Optimal Slip Frequency
- RFC - Rotor Flux Current
- CAN Communication Commands
- TCP Communication Commands
Motor Operating Features and Options
86 Advanced Digital Motor Controller User Manual V2.0, July 8, 2019
Global Power Configuration Parameters
PWM Frequency
The power MOSFETs are switched at 16kHz by default. This frequency can set to another
value ranging from 10 kHz to 30 kHz. Increasing the frequency reduces efficiency due to
switching losses. Lowering the frequency eventually creates audible noise and can be in-
efficient on low inductance motors.
Changing the PWM frequency typically results in no visible change in the motor operation
and should be left untouched.
Overvoltage Protection
The controller includes a battery voltage monitoring circuit that will cause the output
transistors to be turned Off if the main battery voltage rises above a preset Over Voltage
threshold. The value of that threshold is set by default and may be adjusted by the user.
The default value and settable range is given in the controller model datasheet.
This protection is designed to prevent the voltage created by the motors during regenera-
tion to be “amplified” to unsafe levels by the switching circuit.
The controller will resume normal operation when the measured voltage drops below the
Over Voltage threshold minus a user definable hysteresis voltage.
The controller can also be configured to trigger one of its Digital Outputs when an Over
Voltage condition is detected. This Output can then be used to activate a Shunt load
across the VMot and Ground wires to absorb the excess energy if it is caused by regen-
eration. This protection is particularly recommended for a situation where the controller is
powered from a power supply instead of batteries.
Undervoltage Protection
In order to ensure that the power MOSFET transistors are switched properly, the control-
ler monitors the internal preset power supply that is used by the MOSFET drivers. If the
internal voltage drops below a safety level, the controller’s output stage is turned Off. The
rest of the controller’s electronics, including the microcomputer, will remain operational as
long as the power supply on VMot is above the minimum voltage specified in the product
datasheet or if Power Control is above 7V.
Additionally, the output stage will be turned off when the main battery voltage on VMot
drops below a user configurable level that is factory preset at 5V.
Temperature-Based Protection
The controller features active protection which automatically reduces power based on
measured operating temperature. This capability ensures that the controller will be able to
work safely with practically all motor types and will adjust itself automatically for the vari-
ous load conditions.
When the measured temperature reaches 5
o
C below the Over temperature limit, the con-
troller’s maximum allowed power output begins to drop by 20% for every degree until the
temperature reaches the Over temperature limit. Above this limit, the controller’s power
stage turns itself off completely. The same applies to MCU Temp at 90
o
C - 95
o
C degrees.
Note that the measured temperature is measured on the heat sink near the Power Transis-
tors and will rise and fall faster than the outside surface.