Integrating MotionLinx with TwinCAT / MotionLinx Data Objects /
MotionLinx-Ai Receive PDOs
There are 3 receive PDOs utilized by the MotionLinx-Ai module. This is the data that originates from the master controller that is received by the MotionLinx-Ai module.
Receive PDO0 – Motor Setup (Object 0×1600)
Subindex | Index | Data Type | Data Description |
---|---|---|---|
SubIndex 1 Motor Control Left |
Index 0×2000 SubIndex 0 |
SINT | Bit 0: ON = Run Command OFF = Stop Command Bit 1: OFF = Run in Clockwise Direction ON = Run Counter Clockwise Direction |
SubIndex 2 Motor Control Right |
Index 0×2000 SubIndex 0 |
||
SubIndex 3 Motor Speed Left |
Index 0×2001 SubIndex 0 |
INT | Integer value to set the motor speed • For MDR the value is in mm/sec • For PGD the value is in motor RPM |
SubIndex 4 Motor Speed Right |
Index 0×2001 SubIndex 0 |
||
SubIndex 5 Motor Brake Mode Left |
Index 0×200F SubIndex 0 |
SINT | Integer value to set the motor braking method • See Motor Braking Methods Chart |
SubIndex 6 Motor Brake Mode Right |
Index 0×2010 SubIndex 0 |
Motor Braking Methods Chart
Value | Method | Data Description |
---|---|---|
0 | Normal | Once the controls have decelerated the rotor to a stop, the motor coils are internally connected. The permanent magnet forces in the rotor and the mechanical inertia of the gearbox holds the rotor in place. This is the industry standard holding brake method and is often termed short circuit or shunt. Normal is the default factory setting for all Pulseroller control modules. |
1 | Free | Once the controls have decelerated the rotor to a stop, the motor coils are internally disconnected and only the mechanical gearbox inertia holds the rotor in place. |
2 | Servo | When the controls have decelerated the rotor to a stop, the processor notes the Hall Effect sensor status. If the Hall Effect sensor status changes indicating a change in rotor position, the controls will inject current into the motor coils in the proper sequence to move the rotor back to its original stop position |
Receive PDO1 – Motor Ramps (Object 0×1601)
Subindex | Index | Data Type | Data Description |
---|---|---|---|
SubIndex 1 Motor Acceleration Left |
Index 0×2003 SubIndex 0 |
INT | Integer value to set the acceleration/deceleration ramps for Left/Right motor • For MDR the value is in mm • For PGD the value is in motor pulses |
SubIndex 2 Motor Deceleration Left |
Index 0×2004 SubIndex 0 |
||
SubIndex 3 Motor Acceleration Right |
Index 0×2005 SubIndex 0 |
||
SubIndex 4 Motor Deceleration Right |
Index 0×2006 SubIndex 0 |
Receive PDO2 – Servo/Periphery (Object 0×1602)
Subindex | Index | Data Type | Data Description |
---|---|---|---|
SubIndex 1 Servo Control |
Index 0×2007 SubIndex 0 |
INT | Bit 0: Reset Command Left Motor 0 to 1 = Set Current Position as “0” Bit 1: Servo Run Command Left Motor 1 = Run motor from current position value to value in Set Motor Servo Left SubIndex Bit 8: Reset Command Right Motor 0 to 1 = Set Current Position as “0” Bit 9: Servo Run Command Right Motor 1 = Run motor from current position value to value in Set Motor Servo Right SubIndex |
SubIndex 2 Set Motor Servo Left |
Index 0×2008 SubIndex 0 |
INT | Signed integer value to move to on the next Servo Run Command Left/Right Motor • Values are in mm for MDR • Values are in motor pulses for PGD • Valid values are from -32767 to +32767 |
SubIndex 3 Set Motor Servo Right |
Index 0×2009 SubIndex 0 |
||
SubIndex 4 Set Sensor Port Pin 2 Outputs |
Index 0×2011 SubIndex 0 |
Byte | If either or both Sensor ports have been configured as Outputs this numerical value controls their digital state: 0 = Both OFF 1 = Energize Left Sensor Port Pin 2 Only 2 = Energize Right Sensor Port Pin 2 Only 3 = Energize Both |
SubIndex 5 Clear Motor Error |
Index 0×2012 SubIndex 0 |
Byte | Numerical value to clear a motor error on either or both Motor Ports: 0 to 1 = Clear Motor Error If there is a motor error present, the module must see a transition from 0 to 1 to clear the error. Maintaining a constant value of 1 will not automatically clear a motor error if it occurs. |