Manipulator loading and unloading system based on PMC6496 motion controller

Publisher:RadiantBlossomLatest update time:2012-04-27 Source: OFweek Keywords:PMC6496 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

1. Features of PMC6496

PMC6496 motion controller is a high-performance product with PLC characteristics carefully developed by Leadshine Company based on independent motion controller. Because it fully supports IEC61131-3 standard ladder diagram programming language, it can fully compete with medium and small PLCs in logic control. At the same time, its powerful motion control function is unmatched by traditional medium and small PLCs. 1. Hardware performance of PMC6496 Figure 1 is the hardware structure diagram of PMC6496 motion controller. Figure 1 Hardware structure

of PMC6496 motion controller PMC6496 is based on the hardware structure of embedded processor and FPGA. The interpolation algorithm, pulse signal generation, acceleration and deceleration control, and I/O signal detection and processing are all implemented by hardware and firmware, ensuring high-speed, high-precision and system stability of motion control. This series of controllers can control 4 stepping or servo motors, with advanced functions such as maximum 5MHz pulse frequency, four-axis linear interpolation, two-axis circular interpolation, continuous curve interpolation, S-curve speed control, etc. Through simple programming, a stable and reliable high-performance continuous trajectory motion control system can be developed. In addition to the 4 motor control ports, it also provides a wealth of I/O interfaces and communication interfaces: optoelectronic isolation I/O interface, expansion I/O interface, D/A output, PWM output, encoder interface, and hand-crank pulse generator interface. 1 network interface and 2 serial ports can communicate with the PC through the network port or serial port; at the same time, other devices can be connected through the serial port, such as: handheld programmer, touch screen, PLC, etc. Files and parameters can be conveniently stored with a U disk through the U disk interface. Flash is used to store user programs, and ferroelectric memory is used to save parameters when power is off. The main technical indicators of PMC6496 are detailed in Table 1. Table 1 PMC6496 controller hardware performance 2. Functional characteristics of PMC6496 PMC6496 motion controller has excellent motion control performance, stable and reliable operation, and a friendly ladder diagram editing environment. Its main features are as follows: Easy to learn: Since ladder diagram is the most familiar programming language for engineers in the automation industry, the introduction of PMC6496 has greatly reduced the application threshold of motion controllers, making it easier for users to get started and quickly develop their own equipment. Powerful motion control function: PMC6496 can control 4-axis stepper motors or servo motors to perform 4-axis linear interpolation, any 2-axis circular interpolation, and multi-axis continuous interpolation. It can control elliptical and spiral trajectories. In addition, PMC6496 is equipped with a 2048-segment instruction buffer, which effectively ensures the continuity and smoothness of high-speed trajectory motion. Friendly ladder diagram editing environment: Fully supports IEC61131-3 standard ladder diagram programming language, supports subroutines, ladder diagram comparison, watchdog, single-step debugging and other functions, and ladder diagram development is more convenient and quick. HMI device support: PMC6496 can communicate with human-machine interfaces based on standard Modbus protocol, including: touch screen, text display, handheld programmer, etc. When designing the human-machine interface, users only need to correctly set the Modbus addresses of various soft components according to the corresponding register address mapping formula, and almost no program code needs to be written. Network communication: PMC6496 is a PLC based on 10/100M Ethernet, which can make online operations such as ladder diagram debugging and downloading smoother. 2. The motion trajectory of robot loading and unloading A customer's production line needs to use a robot to load and unload materials, and the structure is shown in Figure 2. The X-axis performs horizontal left and right movements, the Y-axis performs vertical up and down movements, and the gripper is controlled by the cylinder to perform the grasping action. Their task is to grab the workpieces on the right tooling to the left conveyor belt in turn. The distance from the X-axis origin to the workpiece placement point on the conveyor belt is W, the distance from the first workpiece on the tooling to the workpiece placement point on the conveyor belt is S, and the distance between each workpiece on the tooling is L. Figure 2 Composition of robot loading and unloading system Usually, most users will determine the motion trajectory of X and Y as a rectangle, that is, after the Y-axis moves up and down, the X-axis moves horizontally again, and then the Y-axis moves up and down again, and so on. However, this method will cause relatively strong jitter and cause a certain amount of time waste. Therefore, the motion trajectory shown in Figure 4 can be used. At the two turns, the X and Y axes perform a circular interpolation motion with a radius of R, which can greatly reduce jitter and save time. Point A is the starting point. The path for grabbing and placing the first workpiece is A→B→C→D→E→F→G→H→I→J→K. The path for grabbing and placing the second workpiece is the same as the first one, except that the distance between A→B and F→G is increased by a length of L. The same is true for the third, fourth, and fifth. PMC6496 supports continuous interpolation motion. In continuous interpolation mode, the speed is continuous, and there is no acceleration and deceleration process between each interpolation segment, which makes the motion smoother. After running the CONTI_ENTER function block, enter the continuous interpolation mode, add the required interpolation motion trajectory, and use the LINE_START function block to start the continuous interpolation motion. PMC6496 runs all motion trajectories in continuous interpolation mode. Figure 3 Continuous interpolation motion Figure 4 Manipulator loading and unloading motion trajectory Three Manipulator loading and unloading control system process Draw a flow chart as shown in Figure 5. Each time it starts, the number of grabs is reset to 0, and it ends after 5 grabs. "Clamp" and "release" are cylinder actions. Figure 5 Manipulator loading and unloading flow chart Four Manipulator loading and unloading control system program The manipulator loading and unloading control system program is shown in Figure 6. Figure 6 Manipulator loading and unloading program (Program 1-4 Sections) Figure 6 (Continued 2) Program 5-22 Sections Figure 6 (Continued 3) Program 23-37 Sections Figure 6 (Continued 4) Program 38-49 Sections Figure 6 (Continued 4) Program 50-65 Sections Several key motion instruction function blocks used in the program are part of the PMC6496 motion library, explained as follows: Figure 7 Circular arc interpolation function block



























































































2.MOVECIRC

Description: The specified two axes use the current position as the arc start point, and perform circular interpolation according to the specified end position, center position, and interpolation direction. Its function block is shown in Figure 7.

Parameters:

EN: BOOL type, enable terminal (Enable), the drive input terminal of the instruction block.

AXIS0: Specify the first axis involved in circular interpolation.

AXIS1: Specify the second axis involved in circular interpolation.

END0: Specify the arc end point coordinates of the first axis.

END1: Specify the arc end point coordinates of the second axis.

CENTER0: Specify the arc center coordinates of the first axis.

CENTER1: Specify the arc center coordinates of the second axis.

DIR: USINT (BYTE) type, specify the direction of circular interpolation.

IFABS: Specify the motion mode, 0-relative motion, 1-absolute motion.

2. PMOVE

Description: The specified axis performs point motion according to the set pulse length and direction, starting speed, maximum running speed, acceleration, deceleration, and motion mode. Its function block is shown in Figure 8.

Figure 8 Point motion function block

Parameters:

EN: Enable, the drive input of the instruction block.

Axis: Specifies the axis number, ranging from 0 to 3 axes.

POS: Specifies the target position of the point motion, that is, the number of pulses, and the positive and negative signs represent the positive and negative directions respectively. For example, -10000 represents the length of 10,000 pulses of motion in the negative direction.

VEL0: Specifies the starting speed (that is, the initial speed), unit: pulse/second.

VEL1: Specifies the running speed (that is, the maximum speed), unit: pulse/second.

ACC: Specifies the acceleration, unit: pulse/second2.

DEC: Specifies the deceleration, unit: pulse/second2.

IFABS: Specifies the motion mode, 0-relative motion, 1-absolute motion.

3.HOMEMOVE

Description: Specifies that the axis performs the homing action according to the set mode, direction, and speed. After homing is completed, the current coordinate is cleared to 0, which is regarded as the origin (or zero point). Its function block is shown in Figure 9.

Figure 9 Return to origin motion function block

Parameters:

EN: Enable, the drive input terminal of the instruction block.

Axis: Specifies the axis number, ranging from 0 to 3 axes.

DIR: Specifies the direction of return to origin, 1-positive, 0-negative.

MODE: Specifies the mode of return to origin.

EZ: Only works for mode 4, that is, the number of EZ signals when searching for the origin.

VEL: Specifies the speed of return to origin, unit: pulse/second.

4.LINE2


Figure 10 Axis linear interpolation function block

Description: The specified two axes perform linear interpolation motion according to the specified end position and motion mode. Its function block is shown in Figure 10.

Parameters:

EN: Enable, the drive input of the instruction block.

Axis0: Specifies the first axis involved in interpolation, the specified range is 0~3 axes.

Axis1: Specifies the second axis involved in interpolation, the specified range is 0~3 axes.

END0: Specifies the target position of the first axis, unit: number of pulses.

END1: Specifies the target position of the second axis, unit: number of pulses

VEL1: Specifies the running speed (i.e. maximum speed), unit: pulses/second.

IFABS: Specifies the motion mode, 0-relative motion, 1-absolute motion.

5. Summary

In summary, the PMC6496 motion controller has the advantages of multiple motion control functions, strong I/O signal processing capabilities, and high cost performance; and the ladder diagram programming is very simple and convenient, and it is easy to use; using PMC6496 can easily complete the complex motion control of various automation equipment.

Keywords:PMC6496 Reference address:Manipulator loading and unloading system based on PMC6496 motion controller

Previous article:Improving microcontroller processing efficiency through architectural improvements
Next article:Using the highly integrated LT3759 wide input voltage application solution

Latest Power Management Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号