1 Introduction
The motion control system is an electrical transmission control system that is guided by the theory of automatic control and takes the motor, the driving device of mechanical motion, as the control object, the controller as the core, and the power electronics and power conversion device as the actuator. In the electrical age, motors have always played a very important role in modern production and life. In recent years, due to the substantial growth of the market for electronic manufacturing equipment such as semiconductor manufacturing equipment, the motion control system on machinery and equipment has the following technical requirements:
(1) Multi-axis motion control. As the degree of automation of machinery and equipment increases, the number of axes required on a single machine increases. It is common for a device to have more than a dozen axes. When the number of axes increases, how to coordinate the movements of each axis becomes an important issue.
(2) Small size. Due to the limitation of factory space, the size of the machine is required to be as small as possible, and the size of the controller in the machine is also required to be smaller and smaller, and the relative wiring space is also smaller and smaller.
(3) More precise. As semiconductor manufacturing processes have become more precise than 100nm, the motion accuracy required for process and inspection related equipment must also be more precise. Other equipment such as LCD equipment and SMD process equipment also have the same requirements.
(4) More stable. Because the investment costs of all equipment are huge, the cost of system downtime is even more prominent, so all machine and equipment manufacturers must pursue system stability. At the same time, it must also be considered that when components are damaged and need to be repaired, they must be able to be replaced quickly and without errors.
Combining the above demand analysis, it can be seen that the conditions of multi-axis motion control in one controller, smaller controller size, easier wiring and maintenance seem to conflict. It can be said that fieldbus technology was born in response to the needs of these new machines and equipment.
2 Fieldbus motion control system communication characteristics
There are two communication control strategies for fieldbuses used for motion control: event triggering and time triggering. In event triggering, after the control unit detects the occurrence of an event, it calculates the correct response according to a predetermined algorithm and then sends the response information to the digital servo drive. The delay from the occurrence of the event to the reception of the response information must be limited, that is, the maximum value must be known, and its value is the real-time indicator of the communication protocol. However, the events in event triggering are random and unpredictable, which leads to uncertainty in fieldbus communication. The various stations in the system will compete for the transmission medium, resulting in communication conflicts and unreliability, and it is difficult to ensure high real-time performance. Event triggering is usually non-periodic, and it is easiest to implement it using non-periodic data transmission, but it can also be implemented using periodic data transmission. In this case, it is necessary to identify which period of data is valid data.
Time triggering is usually carried out periodically, and the control unit periodically calculates the control data and then sends the control data to the servo drive in a timely manner. Control and communication are driven by a global clock. The behavior of the system is not only determined in function, but also in time. The stations will not compete for the transmission medium, and the entire system is reliable. The communication cycle time in time-triggered control should be equal to the control cycle time, or the communication cycle time can be divided by the control cycle time. In periodic time triggering, the communication cycle time must be fixed and cannot have obvious fluctuations, that is, data transmission must be deterministic, also known as real-time.
In general, the performance requirements of fieldbus communication protocols for motion control are three points:
(1) Reliable communication to suit the harsh environment of industrial sites;
(2) Real-time data transmission. Both periodic and non-periodic data transmission must have high real-time performance, and the response time is usually (1 to 10) ms.
(3) Synchronicity of command execution and status feedback. In order to achieve the synchronous motion accuracy of each coordinate axis, each axis must execute the position control command and sample the current position at the same time after receiving the command value, and send it to the control unit.
3 Overall Design of CAN Bus Motion Control System
CAN bus (Controller Area Network) is a common application. Data transmission and control through CAN bus makes the performance of servo motor more stable and can be better and more flexibly applied in motion control system.
As shown in Figure 1, the motion control system based on CAN bus has two significant features compared with the typical structure of the control system. The first is that its control object is a servo motion control object, and the second is that its networked controller includes two parts: CAN bus communication medium and CAN controller node. Multiple CAN controller nodes are interconnected in parallel through the CAN bus communication medium to form a single-layer CAN bus-based servo motion control system. When more axis motion control is required, it is only necessary to simply add new motion control nodes and connect the new motion control nodes as new CAN bus nodes to the CAN bus to form a distributed multi-axis motion control system, and there is no need to make any hardware modifications to the original motion control nodes. It can also be interconnected up and down through the Internet gateway and IE (Industry Ethernet) or Intranet/Internet to form a multi-layer networked servo motion control system.
The design of motion control system based on CAN bus mainly involves the design of CAN controller node, including hardware and software. Hardware design mainly involves selecting appropriate chips and hardware circuits to design the five basic components of CAN controller node shown in Figure 1, namely, main controller, interface module between main controller and sensor/actuator, interface module between main controller and CAN bus controller, CAN bus controller and CAN bus transceiver. Software design mainly involves selecting appropriate system software and application development software to design various interface driver software, system management software and control function software.
4 System Hardware Design
The main controller uses AT89C51 microcontroller as the processing core and PCA82C250 as the CAN bus transceiver. Figure 2 shows the circuit diagram of the CAN bus system based on SJA1000. In order to enhance the anti-interference ability, the TX0 and RX0 pins of SJA1000 are not directly connected to the TXD and RXD of PCA82C250, but connected to PCA82C250 through the high-speed optical coupler 6N137, so that the electrical isolation between the CAN nodes on the bus can be achieved. The two sides of the optical coupler 6N137 use two completely independent power supplies VCC and +5V.
The interface between SJA1000 and MCU is relatively simple. AD0~AD7 are directly connected to the P0 port of AT89C51. RD, WR and ALE signals are also directly connected to the corresponding pins of AT89C51. MODE is connected to +5V to set the SJA100 controller to Interl mode. The chip select signal CS of SJA1000 is determined by P2.0 of AT89C51. Therefore, the addressing space of SJA1000 in the system starts from address 0. This address plus the offset of the internal register address of SJA1000 can be used to access the internal RAM space of SJA1000. The interrupt output signal INT of SJA1000 is connected to the INT0 pin of AT89C51 so that AT89C51 can respond to the transmission and reception of messages in interrupt mode or query mode.
5 System Programming
The process of establishing communication based on SJA1000 CAN bus includes system initialization, receiving and sending.
5.1 SJA1000 initialization procedure
After power-on, AT89C51 first runs its own reset program, and then calls the configuration program of SJA1000. Before setting the registers of SJA1000, the configuration program must check whether SJA1000 is in reset mode by reading the reset mode/request flag, because the register to which the configuration information is to be written can only be written in reset mode. In the initialization program, SJA1000 is first set to reset state, and then SJA1000 is set to use PeliCAN mode, the output frequency of the CLKOUT pin is 1/2 of the external crystal frequency, and it is a single acceptance filter mode.
The initialization process of SJA1000 (Figure omitted).
When clearing the reset mode/request flag of SJA1000 to enter the working mode, it is necessary to check whether the flag is indeed cleared and whether it has entered the working mode before proceeding to the next step. After entering the working mode, the interrupt of the CAN controller can be enabled, and normal transmission or reception of messages begins.
5.2 SJA1000 message sending and receiving
According to the CAN protocol specification, the transmission of messages is completed independently by the CAN controller SJA1000. During the message transmission process, the MCU AT89C51 must send the message to be sent into the system send buffer. Before moving the data in the system send buffer to the CAN controller send buffer, it must determine whether the send buffer is released.
The reception of messages is completed independently by the CAN controller SJA1000. The received message is in the receive buffer, and the receive buffer status flag RBS and the receive interrupt flag RI of the status register are set. If message reception is enabled, the MCU can read the new message in the receive buffer and store it in the memory unit of the MCU or the external data memory, and then release the receive buffer. The SJA1000 message reception process can be controlled by the interrupt request of the SJA1000 or by querying the control segment status flag of the SJA1000.
6 Summary
After analyzing the fact that traditional motion control systems no longer meet the requirements of electronic manufacturing equipment and the communication characteristics of fieldbus motion control systems, a networked motion control system solution based on the CAN bus of SJA1000 is proposed, which makes a new and beneficial exploration for the networking research and application of AC servo. The CAN bus can well meet the high requirements of fieldbus motion control systems for real-time response. At the same time, the use of the CAN bus also makes the system have good expansion performance. This lays a solid foundation for the development of multi-axis or multi-point distributed motion control networks.
Previous article:Design of Intelligent Nodes in Distributed Control System Based on CAN Bus
Next article:Application of PLC in Color Light Control
- Popular Resources
- Popular amplifiers
- Molex leverages SAP solutions to drive smart supply chain collaboration
- Pickering Launches New Future-Proof PXIe Single-Slot Controller for High-Performance Test and Measurement Applications
- CGD and Qorvo to jointly revolutionize motor control solutions
- Advanced gameplay, Harting takes your PCB board connection to a new level!
- Nidec Intelligent Motion is the first to launch an electric clutch ECU for two-wheeled vehicles
- Bosch and Tsinghua University renew cooperation agreement on artificial intelligence research to jointly promote the development of artificial intelligence in the industrial field
- GigaDevice unveils new MCU products, deeply unlocking industrial application scenarios with diversified products and solutions
- Advantech: Investing in Edge AI Innovation to Drive an Intelligent Future
- CGD and QORVO will revolutionize motor control solutions
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- [e-Network Limited Time Benefit] Unboxing - TENMA's 72-10390 Multimeter Unboxing and Review
- When ATSAMD51 EVK meets WIN7 64-bit
- How does a multimeter stabilize the voltage data it measures?
- STC8 Timer 0 timing failure
- [MPS Mall Big Offer Experience Season] Unboxing
- [MPS Mall Big Offer Experience Season] Unboxing
- LTspice (.command)
- My NetEase blog article disappeared
- [MPS Mall Big Offer Experience Season] Unboxing
- [Xingkong Board Python Programming Learning Control Panel] 5. Comparison between Offline Speech Recognition and Cloud Speech Recognition