I ² The design of Controller for C and Double Arm PCB Drilling Machine
This paper introduces the printed circuit board based on I ² C drill press controller with manifold and double arm mICrocontroller The controller is composed of a human-computer interaction system and a motion control system ² C Bus bar connection This paper discusses the hardware structure and related key technologies of the controller system, and introduces the software design of the human-computer interaction system based on mC/OS II real-time operating system and the software design of the time triggered machine tool motion control system
printed circuit board
1 Introduction
The PCB drilling rig is an important equipment in oil production PCB With the improvement of processing requirements of electronic products, the low end PCB drilling machine controller based on single chip microcomputer has been difficult to meet the requirements ARM7TDMI is a 32 bit RISC microcontroller structure proposed by ARM Company at the end of the 20th century Based on the rich variety of chips, the core has the characteristics of fast operation, low power consumption and low price This paper introduces a PCB drilling machine controller based on double arm structure, which not only solves the problem of low efficiency of traditional low-grade drilling machine control system, but also has high economy It is the ideal controller of PCB drilling machine CNC systems are generally there are single CPU and multi CPU points [5] Single CPU usually uses centralized control time-sharing process to complete various tasks of CNC system It has the characteristics of compact structure, but relatively SIMple function The CNC system with multi CPU structure adopts multi CPU parallel processing, which can make the system achieve higher efficiency Multiple CPUs usually use common bus or shared memory for communication The control object of the drill controller is more complex: 4 Panasonic MINAS AC servo systems, 4 SPIndle motors, 9 switch inputs and 11 relay outputs need to be controlLED If the controller adopts a single CPU structure, the controller needs to expand more hardware, which increases the system cost and reduces the system reliability; If the controller adopts a dual CPU structure, the controller can be designed hierarchically according to the functions: the task of the human-computer interaction system is handed over to one CPU, and when the motion control of the machine tool is handed over to another CPU With this pipeline, the number of external extended hardware is reduced, the cost is reduced, and the reliability is improved
2. The hardware design of the controller
the controller consists of a system board and an interface board: The system board is composed of LPC2214 and S3C44B0X and their related peripheral circuits; The intermediate panel is mainly responsible for the drive and level matching between the system board and the machine tool electrical appliances
2.1 Hardware Design of Controller System Board
The controller system board consists of two subsystems: human-computer interaction system and machine tool motion control system. The human-computer interaction system and the machine tool motion control system pass I ² C Bus bar exchange data I ² C bus is a serial bus proposed by Philips. It has the characteristics of fast speed and simple hardware connection, without adding hardware
2.1.1 Hardware design of controller human-computer interaction system
The human-computer interaction system of the controller adopts S3C44B0X as an extension of a series of hardware to form a system with perfect human-computer interaction function. The system extends NOR flash memory chip SST39VF1601, which has 16 bit data width and 2MB storage space as system program memory To improve the execution speed of system programs, we expanded a HY57V641620 SDRAM with 1M * 4Bank * 16I/O Once the system is powered on, the system initialization program will copy the system program stored in SST39VF1601 to HY57V641620. At the same time, the data storage area of the system program is also located in HY57V641620, making the system program run completely in SDRAM In order to ensure that the drilling files of the machine tool can still be saved after the machine tool is powered off, the system expands the 16MB NandFlash chip K9F2808 as the electronic hard disk of the system Because S3C44B0X has its own LCD controller, the system selects STN 256 color 640x480 point EDMGRB8KHF LCD display module, without the LCD controller produced by Mitsubishi, as the output of machine tool information PS/2 keyboard is used for input of system operation information The system drills files from PC through RS232 serial port In order to facilitate the debugging of the system, a JTAG port is designed in the human-computer interaction system Some important parameters of the machine tool, such as the pitch of the feed axis of the machine tool, the pulse equivalence of the AC servo system, etc It needs to be saved. In retrOSPect, the system has extended the ² 512B EEPROM chip AT24C04 of C busbar
2.1.2 Hardware Design of Machine Tool Motion Control System
The motion control system of the machine tool is the LPC2214 microcontroller. LPC2214 has 256KB of flash memory and 16KB of SRAM inside, without expanding program memory and data memory The system has designed an RS232 serial port for ISP of LPC2214 system program In order to facilitate the debugging of the program, the motion control system has designed a JTAG port The circuit structure of the machine tool motion control system is shown in Figure 1 The hardware structure of the controller system board is centered on LPC2214 The machine tool electrical appliances are directly connected with LPC2214 through the interface circuit
2.1.3 Communication between human-computer interaction system and machine tool motion control system
After processing by S3C44B0X, the processing instructions of the NC system shall be sent to LPC2214 for execution, and the results of LPC2214 execution shall be returned to S3C44B0X for processing and display System Usage I ² C Bus bar for communication S3C44B0X operates in master mode, while AT24C04 and LPC2214 operate in slave mode AT24C04 slave address is 0xa0, LPC2214 slave address is 0x50, I ² The rate of C is 400KHz S3C44B0X and LPC2214 respectively establish a 24 bit global array for communication
3. Software Design
The software part is mainly composed of human-computer interaction system software and machine tool motion control system software. The software structure of human-computer interaction system is more complex. In retrospect, the software has transplanted the mC/OS-II operating system The software structure of the machine tool motion control system is relatively simple, but this part of software has a strong real-time requirement. Therefore, this software will not transplant the operating system, but will be written in time triggered mode
3.1 Human-computer interaction system software design
Human-computer interaction system software is written in a layered manner. The software is divided into system layer and application layer The main task of the system layer design is to transplant the embedded operating system mC/OS-II first, and then expand the operating system kernel to form a simple and efficient platform The application layer design is based on this platform to realize file processing operations, manual processing of machine tools, automatic processing of machine tools, and setting of machine parameters and other tasks The system layer migrates and extends the OS - II operating system kernel based on mC Porting means that the operating system can run on a specific processor platform by writing specific code According to the description of mC/OS-II, migration includes porting code to three files related to the processor: OS U CPU H. OS u CPU u AASM, OS u CPU u C.C [4] Based on the kernel/OS-II provided by mC, the driver module is designed to extend the operating system kernel, system tasks, operating system API functions and task scheduling module Through the design and implementation of LCD and other interface functions, keyboard, K9F2808, I ² C Busbar and tandem communication, etc, A driver module is established to separate the API functions of the operating system from the underlying hardware The system task part has designed three basic tasks: LCD redrawing task, keyboard reading task, I ² C Busbar read and write tasks, and run when the operating system starts Based on the API functions provided by the system layer, the application layer designs the main tasks and manual processing tasks, automatic processing, file transmission, and machine tool parameter settings
3.2.LPC2214 programming
The control program structure of the machine tool motion control system is relatively simple Because the embedded real-time operating system will occupy some system resources, affect the real-time performance of the system, and increase the difficulty of system design, we do not transplant the embedded real-time operating system, but use a simple time scheduling method This scheduling method can make the program more robust and stable The system uses a timer to generate the system scheduling rhythm, and uses a timer interrupt program for scheduling The system uses timer 0 to generate the system beat, and the timing period is 1ms The interrupt of PWM controller and four comparison registers are used to control the generation of feed pulse in AC servo system We divide tasks into two categories: one is periodic, and the other is non periodic Each task has a task control block The data structure of the task control block is as follows: The task control block contains important information about the task being scheduled: whether the task is a periodic task or an aperiodic task. When the task runs, the task is ready Logo, etc The main tasks of the control system are: X feed axis pulse sending task, Y feed axis control task, Z1 feed axis control task, Z2 feed axis control task, spindle motor control task, tool replacement task, etc