Share this

Three-degree-of-freedom motion control experimental device based on Kinetix

2026-04-06 06:21:21 · · #1
Abstract: An experimental device based on the Rockwell Automation Kinetix integrated motion control system was developed, enabling precise positioning control of a three-degree-of-freedom motion model. The hardware composition of the experimental device is introduced, and the software design and application methods are illustrated using the implementation of a plotter function as an example. Keywords: Kinetix, motion control, SERCOS interface 1 Introduction Motion control systems can achieve precise position control, speed control, acceleration control, torque control, and comprehensive control of these controlled variables. With the development of industrial automation technology, the requirements for the real-time performance and data transmission of motion control systems are becoming increasingly stringent. To improve the understanding of motion control systems among students in related majors, the Rockwell Automation Laboratory of Harbin Institute of Technology developed a three-degree-of-freedom motion control experimental device using the Kinetix integrated motion control system components donated by Rockwell Automation. This device combines logic control and motion control, achieving coordinated control of three axes on a Kinetix platform. 2 Hardware Composition The hardware structure of the experimental device is shown in Figure 1, consisting of the Rockwell Automation Kinetix integrated motion control system and a mechanical actuator. The Kinetix system is a comprehensive motion control solution comprised of AB ControlLogix programmable automation controllers, SERCOS interfaces, digital motion control modules, AB servo drives, motors, and actuators. The ControlLogix control platform integrates an 8-axis servo motion module, connected to the servo drives via interference-resistant SERCOS (serial real-time communication system) fiber optic cables, avoiding lengthy programs and messy signal lines, thus enabling the system to achieve efficient and precise motion control capabilities. 2.1 Control System The ControlLogix system provides a unified platform for sequential control, process control, and motion control. Multiple Logix55xx processors can be inserted simultaneously into a single 1756 rack. In addition to sequential and process control instructions, the processors offer a rich set of motion control instructions, supporting various motion functions and enabling highly integrated operation and closed-loop control of position and velocity loops, thereby meeting various motion accuracy requirements. Each processor can perform multitasking and provides high-speed, flexible communication and powerful input/output functions through the passive data bus on the rack backplane. The ControlLogix system also provides more than 50 general-purpose digital and analog I/O modules, communication modules, and special function modules based on the 1756 rack. As shown in Figure 1, this experimental setup uses the Logix5550 (1756-L1) processor as the core component of the control system; it receives external control signals through the digital input module (1756-IB16); and communicates with a remote computer through the Ethernet communication module (1756-ENBT). The system's motion control function is implemented by an 8-axis digital motion control module (1756-M08SE) with a SERCOS bus interface. SERCOS is a fieldbus interface and data exchange protocol specifically designed for digital servo and drive systems, enabling real-time data communication between industrial control computers and digital servo systems, sensors, and programmable controller I/O ports. [align=center]a: 1756-L1 b:1756-ENBT c: 1756-M08SE d:1756-IB16 Figure 1 Hardware Structure Diagram[/align] 2.2 Driver and Servo Motor The device uses an Ultra 3000 (2098-DSD-005-SE) AC servo driver with a SERCOS interface. It provides comprehensive servo drive support from simple standalone servos to multi-axis servo integrated control systems. It uses 220V single-phase AC input, with a continuous output peak current of 2.5A and an output power of 0.5kW. It can simultaneously realize sequential control and motion control, fully meeting the requirements of multi-axis control. The motor uses AB's Y-series low-inertia brushless servo motor (Y-1002-2-H), which has low rotor inertia and high acceleration. The motor itself is equipped with a photoelectric encoder, differential line drive data and commutation signal, and a 24VDC magnetic release brake to ensure position accuracy. 2.3 The mechanical structure of the device consists of three axes: X (X1 and X2), Y, and Z. Each axis comprises a servo motor (power unit), a lead screw (transmission device) connected to the motor via a coupling, and a guide rod (guide device), enabling movement in the X, Y, and Z directions of a Cartesian coordinate system. The X-axis is fixed to the base platform, and the synchronous movement of the two parallel axes X1 and X2 increases the mechanical load capacity. The Y-axis is perpendicular to the X-axis and fixed to two sliders that move along the X-axis direction as the X-axis lead screw rotates. Therefore, the movement of the X-axis in the system is represented by the movement of the Y-axis along the X-axis. The Z-axis is perpendicular to the plane formed by the X and Y axes and is fixed to a slider moving along the Y-axis, representing the direction of movement along the Y-axis. A clamp is mounted on the slider moving along the Z-axis, which can be used to fix a pen or carving knife to simulate a plotter or engraving machine. By comprehensively controlling the rotation of the X, Y, and Z axis motors, positioning in a three-degree-of-freedom space can be achieved. 3 Hardware Connection and Motion Control Implementation The motion control module, mounted on the same rack as the 1756-L1 processor, connects in series with four servo drives via its SERCOS interface's TX (receive port) and RX (transmit port) to form a communication loop. The servo drives are connected to the motors via cables, enabling real-time control of the servo motors. The experimental setup requires both independent motion on three axes and coordinated motion on two or three axes, which necessitates integration with the logic control of other I/O devices. ControlLogix perfectly combines logic control and motion control. The processor in the system can receive commands from the host computer via the EtherNet network interface (1756-ENBT) module, or directly receive control signals from the control panel to perform motion control on the device. 3.1 Control Panel The buttons on the experimental setup's control panel are connected to the contacts of the 1756-IB16 digital input module. The processor controls the movement of the servo motors based on the state of these buttons, thus achieving simple motion control. The start and stop buttons enable and disable the servo drive; the zero button sets the current position of each axis to the origin; the motion control button makes the servo device move according to a pre-programmed trajectory. 3.2 Host Computer (PC) Control When the host computer control system is in operation, start, stop, and other commands can be sent to the processor through the human-machine interface on the PC, and the motor speed can also be set. The processor executes the user program according to the host computer commands to control the movement of the servo motor. On the other hand, the motor's operating parameters can be fed back to the servo drive through the encoder, and then transmitted to the host computer through the 1756-M08SE module and the Ethernet interface module. The host computer can display the running speed, acceleration, and angular displacement on the human-machine interface, and monitor the movement position of each axis in real time. The PC in the system can also be used to configure system parameters and debug programs. 4. Software Design The ControlLogix system uses RSLogix5000 programming software for configuration, programming, and monitoring system operation. This software provides complete axis and drive configuration and motion control programming support, and has a cam/cam motion curve editor, which can generate and monitor motion trajectories through a graphical interface. Motion control programming can be completed simply by inserting standard motion control instructions into the processor's ladder diagram program. The following example illustrates the system configuration and programming method using the implementation of a plotter function on an experimental setup. 4.1 Adding I/O Modules and Drivers In a ControlLogix system, a single frame supports multiple processors. Therefore, even if the 1756 module and the processor are in the same rack, the I/O configuration function of the RSLogix5000 software is needed to assign the I/O modules used in the system, as well as the four Ultra3000 servo drives connected to the 1756-M08SE8 module, to the processors according to their actual rack slot numbers and node numbers. For programming convenience, the drives are named "axis_x1-4", and the node numbers are set to 1-4 by hardware. 4.2 Establishing Motion Groups Pen positioning is the result of three-axis linkage; therefore, motion groups need to be established to coordinate the movement of each axis. The drivers added in 4.1 are displayed in the "Ungrouped Axes" directory of the RSLogix5000 software, indicating that no motion groups have yet been defined for the drivers and their associated axes. In the RSlogix 5000 motion group configuration dialog box, define a custom group named MotionGroup. Then, in the Axis Assignment interface, assign the four motion axes to the created motion group. The axes within the motion group also need to be configured. In the Units property page, configure the units used; you can choose from inch, meter, or mm. In this system, one coordinate unit is 1 mm. In the Conversion property page, configure the encoder feedback points for each position unit the motor moves, i.e., the axis positioning type. There are two types: Linear and Rotary. Linear converts the number of feedback points into the distance moved, while Rotary converts the number of feedback points into the rotation angle. To visually represent the movement distance of each axis, select "Linear" here, and also select a unit count of 200,000. When creating the motion group, pay attention to setting an appropriate refresh rate to ensure sufficient computation time for motion task execution. During motion command execution, the label monitors the position, speed, and acceleration, transmitting the data to the 1756-MO8SE servo module and also to the processor. The host computer monitors the system's operation. 4.3 Establishing and Configuring the Three-Axis Coordinate System Establishing the coordinate system is fundamental to precise three-axis positioning. In the Motion Group Coordinate System Label dialog box, define the name as AB_XYZ. Next, add motion axes to the established coordinate system: In the coordinate system properties dialog box, select the dimension of the coordinate system as 3. For X1, select axis_x from the Axis Name dropdown. Similarly, select axis_y and axis_z from the dropdowns for X2 and X3 respectively. This completes the establishment of the coordinate system. 4.4 Plotter Control Programming (1) Motion Control Instructions The Logix55xx processor has a rich set of motion control instructions, including motion configuration instructions for adjusting/configuring axes or performing diagnostic tests on the servo system; motion event instructions that provide dedicated event detection (e.g., logging and monitoring positions) or error clearing functions; motion group instructions that control the movement of a group of drive shafts; motion move instructions that control the position of drive shafts; motion state instructions that can directly control or change the running state of drive shafts; and motion coordinated instructions that perform linear or circular motion in the Cartesian coordinate system. These instructions greatly simplify the motion control programming process. For example, if we want to draw the word "Rockwell" using an experimental setup, we can use two commands from the motion coordinates instruction: Motion Coordinated Linear Move (MCLM) and Motion Coordinated Circular Move (MCCM). The feature of these two commands is that we only need to specify the key coordinates, direction of motion, and mode of motion on the motion trajectory, without needing to know the motion allocation of each axis in the process of realizing a certain segment of the trajectory, which simplifies the programming work. The ladder diagram symbol for the MCCM instruction is shown in Figure 2. It enables the motion control system to perform circular motion in a Cartesian coordinate system. The parameter configuration for the instruction used in this plotter example is as follows: Figure 2 MCCM Instruction Ladder Diagram Symbol Coordinate System: Defined as AB_XYZ as previously named; Motion Control: The label of the instruction, custom-defined as mccmxyz; Move Type: Specifies the motion mode, 0 for absolute coordinates, 1 for incremental displacement. Here, the absolute incremental movement mode is used, that is, each axis moves along the circular trajectory towards a defined position with its own velocity, acceleration, and deceleration; Position: Specifies the coordinates of each axis of the motion group. The operands are a sequence in the three-dimensional coordinate system, and the axes of the newly established coordinate system are displayed below; Circle Type: Circular motion mode. The instruction defines four circle type operands: "Via" selects a point between the start and end points; "Center" defines a sequence array containing the center; "Radius" the first array in the sequence array contains the radius; "Centre"... "Incremental" means that the via/center/radius array defines a continuously growing and changing center coordinate, and this change is independent of the motion row operands. Its operands are also a sequence in a three-dimensional coordinate system. This article uses the first circle type. Via/Center/Radius: Defines the coordinates or radius of the point specified by Circle Type. Direction: Defines the direction of motion. Its specific parameter value depends on the specific application. In this example, it means moving the shortest distance in a three-dimensional coordinate system. Speed: Motion speed, which can be directly assigned or defined by the label. In this example, the initial value is defined as 3 by an immediate value. Speed ​​Units: Specifies the unit of the value calibrated by Speed. There are two options: directly defining the unit of motion per second in the coordinate system (Units per sec) and defining it as a percentage of the maximum speed (% of Maximum). In this example, the first method is selected. Accel Rate: Acceleration value, which can be directly assigned or defined by the label. Accel Units: Sets the unit of the value calibrated by Accel Rate. Decel Rate: Deceleration value, which can be directly copied or defined by the label. Decel Units: Sets the unit of the value calibrated by Decel Rate. Profile: Sets the speed change method. There are two options: Trapezoidal and S Curve. In this example, the first method is selected. Merge: Defines whether to convert the motion of all axes into motion in a single coordinate system. There are three operands: Merge Disabled, Coordinated Motion, and All Motion. Since this system only has one coordinate system, the first operand is selected. (2) To write the control program, the plotter needs to complete the global control function, including enabling and disabling the servo drive, clearing and resetting the motors of each axis. The movement of the pen is actually the process of moving according to the key points of the path decomposed by the human, which is a typical sequential movement. The key points selected for the letter "R" in this example and the coordinates of these key points are shown in the attached table. The Logix55xx processor supports custom data types (or data structures). Before programming, first define a data structure named MOTION_PATH to save the running parameters of each key point in sequence. Each key point contains the instruction type and the setting values ​​of parameters required by the MCLM or MCCM instruction, such as Move Type, Circle Type, Direction, Position, ViaCenterRadius. The instruction type is used to set whether the program executes the arc instruction or the line instruction. The program flowchart is shown in Figure 3. During power-on initialization, the pen is reset to the starting point, and each motion axis is enabled. During program execution, the key point parameters can be called sequentially to complete the drawing of the graphic. Figure 3 System Program Flowchart Figure 4 Physical Diagram of Motion Control Experimental Device 5 Conclusion The three-degree-of-freedom motion control experimental device based on Kinetix and the "Rockwell" lettering it draws are shown in Figure 4. It intuitively demonstrates the characteristics of motion control through the coordinated movement of three coordinate axes. Students only need to write simple ladder diagram programs to realize various motion control functions, enabling them to gain a more intuitive and profound understanding of motion control in the experiment. The system adopts the Kinetix integrated motion control system, which greatly simplifies system integration and debugging. The communication connection between the module and the driver uses fiber optic media to ensure reliable high-speed data transmission with good anti-interference capabilities, improving communication speed and the interconnectivity between the driver and the motion module. References [1] Li Yan, Xu Dianguo, et al. Research on SERCOS interface application technology [J]. Servo Control, 2006 (9): 20-22, 26 [2] Ding Jinshui, Yu Jianping, Multi-axis motion control of 1756-M08SE module [J], Mechanical Manufacturing and Automation, 2005, 34 (1): 68-71, 75 [3] Zhang Junfeng, Application of ControlLogix and SERCOS system [J], Electrical Age, 2005, (08): 54-55, 57 [4] Rockwell AB Logix5550 Motion Instruction Set [5] Rockwell AB RSLogix5000 Configuration and Programming [6] Rockwell AB ControlLogix Reference Manual [7] Rockwell AB1756-M08SE Installation Instruction About the Author Li Fengge (1967-) Female Master/Senior Engineer.
Read next

CATDOLL 109CM Dora Full Silicone Doll

Height: 109 Silicone Weight: 18.5kg Shoulder Width: 26cm Bust/Waist/Hip: 52/50/57cm Oral Depth: N/A Vaginal Depth: 3-13...

Articles 2026-02-22