CN113433894A - Multi-channel multi-axis linkage numerical control system and method based on industrial PC - Google Patents

Multi-channel multi-axis linkage numerical control system and method based on industrial PC Download PDF

Info

Publication number
CN113433894A
CN113433894A CN202110809662.3A CN202110809662A CN113433894A CN 113433894 A CN113433894 A CN 113433894A CN 202110809662 A CN202110809662 A CN 202110809662A CN 113433894 A CN113433894 A CN 113433894A
Authority
CN
China
Prior art keywords
channel
module
numerical control
control
industrial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110809662.3A
Other languages
Chinese (zh)
Other versions
CN113433894B (en
Inventor
周永洪
赵汝焕
林鑫
龚德明
徐集涵
周昌
李锦轩
黄豪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongshan Mltor Cnc Technology Co ltd
Original Assignee
Zhongshan Mltor Cnc Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongshan Mltor Cnc Technology Co ltd filed Critical Zhongshan Mltor Cnc Technology Co ltd
Priority to CN202110809662.3A priority Critical patent/CN113433894B/en
Publication of CN113433894A publication Critical patent/CN113433894A/en
Application granted granted Critical
Publication of CN113433894B publication Critical patent/CN113433894B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4142Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34013Servocontroller

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

The invention provides a multi-channel multi-axis linkage numerical control system and method based on an industrial PC (personal computer). the system comprises an industrial computer with an Ethernet communication module, and is connected with an EtherCAT bus servo driver and/or an EtherCAT bus IO module based on an EtherCAT bus. The method is that a Xenomai real-time system supplements and corrects a Linux operating system, and numerical control software for multi-channel processing control is loaded on the Linux operating system, wherein the numerical control software has an operating interface for operating or setting parameters of one channel or a plurality of channels simultaneously. The invention is based on industrial PC and adopts a universal operating system Linux, can meet the overhead requirement of multi-channel multi-axis control on the high-speed operation of the CPU, has rich development resources and is beneficial to shortening the development period; meanwhile, the Ethernet EtherCAT bus reduces the number of cables for the numerical control system and the alternating current servo driver, so that the transmission rate and the transmission reliability are high, more motors can be controlled, and the expansion is easy.

Description

Multi-channel multi-axis linkage numerical control system and method based on industrial PC
Technical Field
The invention relates to the technical field of numerical control, in particular to a multi-channel multi-axis linkage numerical control system and method based on an industrial PC.
Background
The traditional single-channel numerical control system can only process one procedure, while the numerical control system with the multi-channel control function can simultaneously complete the processing of a plurality of procedures, which is equivalent to the processing procedure of a plurality of machine tools on one machine tool. The numerical control system supporting the multi-channel function is equivalent to a numerical control system which is provided with a plurality of control programs, can control the movement of different moving parts on the same machine tool, and can also control a plurality of different machine tools or equipment to move simultaneously.
At present, the main control unit of a domestic general numerical control system hardware platform is generally an ARM architecture embedded platform. As the ARM architecture has the dominant frequency of 500MHz-1GHz and the lower dominant frequency means that the processing capacity is limited, the numerical control system based on the embedded platform is mainly controlled by a single channel, the total number of control axes is not more than 10, and the overhead requirement of more channels and more axes on the high-speed operation of a CPU (central processing unit) cannot be met. The main control unit also adopts a form of 'PC + NC', the PC is mainly responsible for human-computer interface interaction, and the NC is ARM or DSP embedded CPU responsible for real-time control. In fact, the core control algorithm with large requirement on the CPU overhead of the numerical control system in the form of 'PC + NC' is still put in an NC embedded platform for operation, so that the requirement on the high-speed operation of the CPU by the multi-channel multi-axis numerical control of the invention cannot be met. But also introduces another problem, namely a bottleneck of data communication between the PC and the NC and a problem of data transmission errors.
In addition, some embedded numerical control system software runs in a bare computer state without an operating system, and a developer realizes task scheduling by interrupting or adopting a time slice mode; some numerical control systems operate simple real-time operating system kernels (such as mu C/OS-II), and schedule tasks such as PLC (programmable logic controller), interpolation and the like; however, the numerical control system needs developers to build application programs such as file systems, networks and the like from the bottom layer, and the design is relatively complex and troublesome.
In addition, some of the universal embedded numerical control systems adopt level pulse string signals, the level pulse string signals are sent to the alternating current servo driver through cables, the alternating current servo motor drives the machine tool workbench to reach a specified position, the transmission method is easy to interfere and lose pulse signals, the transmission distance is short, each motor is connected with the alternating current servo driver through a cable from the numerical control system, the number of the cables is large, and the expansion is not easy.
Disclosure of Invention
The invention provides an industrial PC-based multi-channel multi-axis linkage numerical control system and method, which meet the processing capacity overhead requirement of multi-channel multi-axis linkage control and are easy to expand, and are realized by the following technical means:
the industrial PC-based multi-channel multi-axis linkage numerical control system comprises an industrial computer with an Ethernet communication module, and is connected with an EtherCAT bus servo driver and/or an EtherCAT bus IO module based on an EtherCAT bus so as to realize data interaction and control;
the industrial computer is provided with a Linux operating system with a Xenomai real-time kernel, numerical control software for multi-channel processing control is run on the Linux operating system, and the numerical control software is provided with an operation interface for operating or setting parameters of one channel or a plurality of channels simultaneously.
In one or more embodiments of the present invention, the numerical control software includes a human-computer interaction module, a motion control module, and a logic control module, which are connected and communicate by a software data bus;
the man-machine interaction module realizes input/output based on an industrial computer and is used for a user to set a processing program and parameters;
the motion control module executes compiling and interpolation operation according to the processing program and generates a corresponding action instruction;
the logic control module is used for controlling the input and output of the switching value of the machine tool, collecting a machine tool spindle encoder and controlling the electrical property of the machine tool.
In one or more embodiments of the present invention, the human-computer interaction module includes a file editing module, a file management module, a processing operation module, a tool offset setting module, a parameter setting module, and a diagnosis and maintenance module, wherein:
the file editing module and the file management module are shared by all channels, the file editing module is used for compiling the machining program, and the file management module is used for identifying which channel the current machining program runs on; the processing operation module, the cutter offset setting module and the parameter setting module are respectively used for independently operating the processing programs of all channels and setting and modifying the cutter offset and parameters of all channels.
In one or more embodiments of the present invention, the motion control module includes a decoding and interpreting module for interpreting the processing program into corresponding data commands, and a real-time control module for performing operation processing according to the data commands and generating control commands.
In one or more embodiments of the present invention, the decoding interpretation module performs decoding, path planning, tool radius compensation, and spatial transformation operations, and the real-time control module is configured to perform speed planning, coarse interpolation, FIFO, inverse kinematics transformation, fine interpolation, precision compensation, and PID control operations according to the data commands.
The multi-channel multi-axis linkage numerical control method based on the industrial PC comprises a hardware configuration step and a software configuration step;
the hardware setting step includes:
s11, building a Linux operating system on the industrial computer, and performing real-time transformation on the Linux operating system by using a Xenomai real-time system so as to enable the Linux operating system to have real-time performance;
s12, running numerical control software for multi-channel processing control on the Linux operating system;
s13, connecting the industrial computer with an EtherCAT bus servo driver and/or an EtherCAT bus IO module through an EtherCAT bus;
the software configuration step comprises:
s21, establishing a man-machine interaction system in the numerical control software for a user to write a processing program and set parameters, wherein the man-machine interaction interface is provided with an operation interface for processing operation or parameter setting on one channel or a plurality of channels simultaneously;
s22, constructing a motion control system in the numerical control software to execute compiling, interpolation operation and generate corresponding action instructions according to the processing program, wherein the motion control system has two paths of outputs for connecting and driving the servo driver and the PLC;
and S23, building a logic control system on the PLC to realize the input and output control of the switching value of the machine tool.
In one or more embodiments of the invention, in step S22, the motion control system is defined to perform the following operations in sequence: decoding, path planning, tool radius compensation, space transformation, speed planning, coarse interpolation operation, inverse kinematics transformation, fine interpolation operation, precision compensation and PID control.
And S23, building a logic control system on the PLC to realize the input and output control of the switching value of the machine tool.
In one or more embodiments of the invention, in step S22, a FIFO module is disposed between the coarse interpolation operation and the inverse kinematics transformation.
In one or more embodiments of the present invention, the software configuring step further includes:
s24, before interpolation operation of each channel, multi-channel cooperative control is performed, and waiting and switching between tasks of each channel are performed based on a set task timer and a semaphore.
In one or more embodiments of the present invention, the multi-channel cooperative control includes inter-channel synchronous control and motion axis synchronous control;
the inter-channel synchronization control includes:
s31, defining a code instruction M for waiting for identification, wherein the code instruction M comprises an address character P;
s32, when a code instruction M is detected, adding the address symbol P values in each code instruction M to obtain a judgment value, and pointing the judgment value to a channel number set needing waiting only;
the motion axis synchronization control includes:
s41, setting a driving shaft and a plurality of driven shafts synchronous with the driving shaft, setting a synchronous control step command among moving channels for the driving shaft, and transmitting the synchronous moving command to the driven shafts so as to keep the driven shafts synchronous with the driving shaft;
and S42, if the current state is in the shaft synchronization and the driving shaft and the driven shaft are in the same program segment, ignoring the movement command of the driven shaft, only executing the movement command of the driving shaft and copying the movement command of the driving shaft to the driven shaft.
The invention has the beneficial effects that: based on an industrial PC and adopting a general operating system Linux, the industrial PC has a processing main frequency far exceeding that of an ARM architecture platform, can meet the overhead requirement of multi-channel multi-axis linkage control on high-speed operation of a CPU, and a file system and a network of the Linux operating system do not need much attention of developers, have rich development resources and are beneficial to shortening the development period; and the Xenomai real-time operating system is adopted to carry out real-time transformation on patching of the Linux operating system, so that the requirement of high real-time performance of the multi-channel multi-axis numerical control system is met. Meanwhile, a real-time industrial Ethernet EtherCAT bus is adopted to communicate the numerical control system with peripheral equipment such as an alternating current servo driver, an IO unit and the like in a control output mode, so that the number of cables is reduced, and because the transmission is not a physical pulse string signal but a digital quantity, the transmission rate and the reliability are high, more motors can be controlled, and the expansion is easy.
Drawings
FIG. 1 is a hardware architecture diagram of an industrial PC-based multi-channel multi-axis linkage numerical control system.
FIG. 2 is a software architecture diagram of an industrial PC-based multi-channel multi-axis linkage numerical control system.
Fig. 3 is a general flowchart of a multi-channel multi-axis linkage numerical control method based on an industrial PC.
FIG. 4 is an operation flow chart of the multi-channel multi-axis linkage numerical control method based on the industrial PC.
FIG. 5 is a diagram illustrating inter-channel synchronization control.
Fig. 6 is a schematic view of the motion axis synchronization control.
Fig. 7 is a schematic diagram of multi-channel hybrid control.
FIG. 8 is a diagram of multi-channel overlay control.
Detailed Description
The scheme of the present application is further described below with reference to the accompanying drawings 1 to 8:
referring to fig. 1 to 2, the multi-channel multi-axis linkage numerical control system based on the industrial PC includes an industrial computer having an ethernet communication module, for example, the industrial PC using an Intel J1900 quad CPU with a main frequency of 2GHz is used as its hardware platform, and is connected with an EtherCAT bus servo driver and/or an EtherCAT bus IO module based on an EtherCAT bus to realize data interaction and control; the industrial computer carries a Linux operating system (Ubuntu12.04, Linux kernel version 3.14.26) with a Xenomai real-time kernel, numerical control software 4 for multi-channel processing control is operated on the Linux operating system, the numerical control software 4 is provided with an operating interface for processing operation or parameter setting of one channel or a plurality of channels simultaneously, the numerical control software comprises a human-computer interaction module, a motion control module and a logic control module, and the modules are connected and communicated by a software data bus.
Specifically, the man-machine interaction module realizes input/output based on an industrial computer and is used for a user to write a processing program and set process parameters; the device comprises a file editing module, a file management module, a processing operation module, a cutter offset setting module, a parameter setting module and a diagnosis and maintenance module, wherein: the file editing module and the file management module are shared by all channels, the file editing module is used for compiling the machining program, the file management module is used for identifying which channel the machining program runs on currently, and the machining operation module, the cutter offset setting module and the parameter setting module are respectively used for independently running the machining program of all channels and setting and modifying cutter offsets and parameters of all channels.
The multi-channel control, each channel can carry out different user processing programs at the same time, each channel has its own independent tool offset compensation module, different channels can be selected to switch through the channel selection key of the machine tool operation panel, the channel tool offset compensation data of the invention is displayed on the human-computer interface, and the data input by the key is received and stored in the data area of the channel.
The parameter setting module is divided into system parameters, channel parameters, shaft parameters, processing parameters, macro parameters and compensation parameters. The system parameters act on the whole numerical control system, are irrelevant to the channel parameters, can set the most basic parameters of the system, and set the most controllable mechanical groups, the maximum channel number and the like; the channel parameters, the processing parameters, the macro parameters and the compensation parameters are parameters which are independent of each channel, different channels can be selected to be switched through a channel selection key of a machine tool operation panel, data of the channel are displayed on an operation interface, and the data input by the keys are received and stored in a data area of the channel. The shaft parameters are irrelevant to the channel, the speed parameters and the time parameters of each shaft are mainly set, and different shafts are selected through keys.
Each channel is provided with a manual automatic processing operation interface, different channels can be selected to be switched through a channel selection key of a machine tool operation panel, and manual automatic processing coordinate position data, a processing user program and alarm information of the channel are displayed on the operation interfaces. When the interface is automatically processed, the processing information of one channel can be independently displayed, and the processing information of two or more channels can be simultaneously displayed on the same interface. The machine tool operation panel can be used for all channels, but can be exclusively shared by one channel at the same time. Different channels can be selected by the channel selection key of the machine tool operation panel for switching, and the machine tool operation panel is switched to different channels for use.
The motion control module is used for performing compiling and interpolation operation according to the processing program and generating a corresponding action instruction, and the action instruction is sent to the servo driver through an EtherCAT bus; the motion control module comprises a decoding interpretation module for interpreting the processing program into corresponding data instructions and a real-time control module for performing operation processing according to the data instructions and generating control instructions. The decoding interpretation module further comprises a path optimization module, a cutter radius compensation module and a space transformation module; the real-time control module further comprises a path planning module, a speed planning module, a coarse interpolation operation module, an FIFO module, an inverse kinematics transformation module, a fine interpolation operation module, a precision compensation module and a PID control module. Namely, the decoding and interpreting module executes decoding, path planning, tool radius compensation and space transformation operations, and the real-time control module is used for executing speed planning, coarse interpolation operation, FIFO, inverse kinematics transformation, fine interpolation operation, precision compensation and PID control operation according to data instructions.
The motion axis of each channel is calculated in a Cartesian coordinate system, the data is calculated according to a single-axis motion space in fine interpolation and precision compensation, and all channel data are converted into motion axis data and are irrelevant to the channel.
Each channel can execute different programs simultaneously, the decoding and interpreting module analyzes the user program into a corresponding data instruction format and transmits the data instruction format to the real-time control module, and the real-time control module performs operation processing according to the data instruction and generates a control instruction so as to control the machine tool to complete corresponding actions. The multi-channel controlled decoding is that each channel establishes its own compiling buffer area, and can independently load the processing program to run respectively. On the basis of a traditional decoding interpreter, the decoding of the interpreter of the multi-channel instruction is added. The information of the tool compensation table in the channel can be called in the decoding process to compensate the length and the radius of the tool; and scaling and coordinate rotation processing are carried out according to the G code instruction. The files to be decoded and analyzed comprise a G code program in an ISO format, an instruction list format analysis and the like, and the files to be decoded and interpreted are finally normalized into a data format of a subsequent module and output to an internal software data bus; and for files which do not need to be decoded and participate in analysis, such as a path table function, the files are directly transmitted according to a convention format.
The speed planning and interpolation operation is the core of the multi-channel numerical control system, and each channel receives the position information, the feeding speed, the linear line or curve type information of the decoded, interpreted and normalized user program of the corresponding channel. And the speed planning adopts forward acceleration and deceleration, and performs forward-looking preprocessing on the line segment to enable the program segment to be in smooth transition. And the speed planning module limits the speed and the acceleration of the program segment according to the characteristics of the machine tool. The interpolation module carries out multi-axis linkage linear, circular arc and spline interpolation on the program segments according to the target speed, the link speed between the program segments, the acceleration, the interpolation period and the pulse equivalent of each program segment to generate refined pulse data of each axis, the refined pulse data of each axis are output to the position control module through a software data bus, at most 10-axis linkage is supported by each channel, each channel can carry out interpolation according to the received decoded data of the channel, and at most 18 channels can be simultaneously supported for interpolation.
The logic control module is used for controlling the input and output of the switching value of the machine tool, and transmits data to or receives data from a spindle encoder of the machine tool through an EtherCAT bus.
Referring to fig. 3 to 8, based on the above numerical control system, the present embodiment proposes a corresponding numerical control method, which includes a hardware configuration step and a software configuration step;
the hardware setting step includes:
s11, building a Linux operating system on the industrial computer, and performing real-time transformation on the Linux operating system by using a Xenomai real-time system so as to enable the Linux operating system to have real-time performance;
s12, running numerical control software for multi-channel processing control on the Linux operating system;
s13, connecting the industrial computer with an EtherCAT bus servo driver and/or an EtherCAT bus IO module through an EtherCAT bus;
the software configuration step comprises:
s21, establishing a man-machine interaction system in the numerical control software for a user to write a processing program and set technological parameters, wherein the man-machine interaction interface is provided with an operation interface for operating one channel or simultaneously operating a plurality of channels or setting parameters;
s22, constructing a motion control system in the numerical control software to execute compiling, interpolation operation and generate corresponding action instructions according to the processing program, wherein the motion control system has two paths of outputs which are connected with and drive the servo driver and the PLC, one path of output is connected with the servo driver through an EtherCAT bus, and the other path of output is connected with the PLC; specifically, the motion control system is defined to sequentially perform the following operations: path planning, speed planning, coarse interpolation operation, FIFO, inverse kinematics transformation, fine interpolation operation, precision compensation and PID control; after PID control operation is executed, the action command is output to a servo driver, and the action command is output to a PLC after path planning, cutter radius compensation and space transformation operation; the inverse kinematics transformation is to inversely calculate the displacement or rotation angle of each axis in an axis coordinate system according to the position and the posture of the machine tool planned by each channel motion control module in a Cartesian coordinate system; the precision compensation is to compensate the reverse clearance of each shaft, the screw pitch of the screw rod and the geometric error of the machine tool; the PID full-closed loop control module reads the actual positions of the machine tool workbenches acquired through an EhterCAT bus; the accumulated value of each axis pulse is added with the precision compensation data, the data is compared with the actual position value of the machine tool workbench, and the difference value is sent to an alternating current servo driver through an EhterCAT bus in each bus period, so that the precise position control of the motor is realized;
each channel can execute different programs simultaneously, the decoding and interpreting module analyzes the user program into a corresponding data instruction format and transmits the data instruction format to the real-time control module, and the real-time control module performs operation processing according to the data instruction and generates a control instruction so as to control the machine tool to complete corresponding actions. The multi-channel controlled decoding is that each channel establishes its own compiling buffer area, and can independently load the processing program to run respectively. On the basis of a traditional decoding interpreter, the decoding of the interpreter of the multi-channel instruction is added. The information of the tool compensation table in the channel can be called in the decoding process to compensate the length and the radius of the tool; and scaling and coordinate rotation processing are carried out according to the G code instruction. The files to be decoded and analyzed comprise a G code program in an ISO format, an instruction list format analysis and the like, and the files to be decoded and interpreted are finally normalized into a data format of a subsequent module and output to an internal software data bus; and for files which do not need to be decoded and participate in analysis, such as a path table function, the files are directly transmitted according to a convention format.
The speed planning and interpolation operation is the core of the multi-channel numerical control system, and each channel receives the position information, the feeding speed, the linear line or curve type information of the decoded, interpreted and normalized user program of the corresponding channel. And the speed planning adopts forward acceleration and deceleration, and performs forward-looking preprocessing on the line segment to enable the program segment to be in smooth transition. And the speed planning module limits the speed and the acceleration of the program segment according to the characteristics of the machine tool. The interpolation module carries out multi-axis linkage linear, circular arc and spline interpolation on the program segments according to the target speed, the connection speed between the program segments, the acceleration, the interpolation period and the pulse equivalent of each program segment to generate refined pulse data of each axis, and the refined pulse data of each axis are output to the position control module through a software data bus, for example, at most 10 axes linkage of each channel can be supported, each channel can carry out interpolation according to the received decoding data of the channel, and at most 18 channels can be supported to carry out interpolation simultaneously;
s23, building a logic control system on the PLC to realize the input and output control of the switching value of the machine tool;
s24, before interpolation operation of each channel, multi-channel cooperative control is performed, and waiting and switching between tasks of each channel are performed based on a set task timer and a semaphore. The multi-channel cooperative control comprises inter-channel synchronous control and motion axis synchronous control;
the inter-channel synchronization control includes:
s31, defining a code instruction M for waiting for identification, wherein the code instruction M comprises an address character P;
s32, when a code instruction M is detected, adding the address symbol P values in each code instruction M to obtain a judgment value, and pointing the judgment value to a channel number set needing waiting only;
the motion axis synchronization control includes:
s41, setting a driving shaft and a plurality of driven shafts synchronous with the driving shaft, setting a synchronous control step command among moving channels for the driving shaft, and transmitting the synchronous moving command to the driven shafts so as to keep the driven shafts synchronous with the driving shaft;
and S42, if the current state is in the shaft synchronization and the driving shaft and the driven shaft are in the same program segment, ignoring the movement command of the driven shaft, only executing the movement command of the driving shaft and copying the movement command of the driving shaft to the driven shaft.
Although each channel of the multi-channel numerical control system runs independently and parallelly, the selected channels need to be coordinated and consistent and wait for each other. The synchronous control is a key technology of cooperative control in multiple channels, and the synchronous control such as waiting, switching and the like among tasks are performed by interpreting and decoding a synchronous control instruction interface provided for a user and performing real-time monitoring control such as a timer, a semaphore and the like on a specified task of a specified channel. The invention triggers and controls the completion of scheduling in the interpolator.
The supporting of the inter-channel axis exchange is a necessary condition for realizing the flexible multi-channel control, and the traditional decoding interpreter is inconvenient for implementing the inter-channel axis exchange because a user carries out the exchange according to the names of the channel axes when programming the G code and the axis names of each channel are carried out according to the same address characters.
The method is characterized in that the method adopts a mode of setting a master channel and a slave channel for synchronizing different types of machine tool shafts among different channels, one channel is taken as an active channel, and the other channels are taken as follow channels, so that the motion amount of a channel shaft of a driven shaft is calculated in real time for control through the absolute amount of an initial value of a workpiece and the motion of the active channel, and the control is similar to feedforward compensation; and for the same type of machine axis overlapping control among different channels, an interpolation data buffer area is shared.
For example: the inter-channel synchronization control step is to define a code instruction M for waiting to be identified, where the code instruction M includes an address character P, that is, the format of the code instruction M is: m __ P __;
when a code instruction M is detected, adding the address symbol P values in each code instruction M to obtain a judgment value, and pointing the judgment value to a channel number set needing waiting only;
when the address symbol P in the code instruction M is empty, i.e. the judgment value is equal to zero, the waiting between the channels 1 and 2 is default.
The address symbol P comprises a binary or decimal value; when the address characters P are binary values, each address character P has n number of value bits, and only one value bit is "1", and the other value bits are "0". And the address character P is specified by a binary parameter which is set to "0" and is a binary specified waiting channel number; when the binary parameter is set to "1", the value of the P address character is the decimal designated waiting channel number.
For example:
1) in this embodiment, when the address character P is a binary value, 18 channels can be designated, as shown in the following table;
TABLE 1 binary Address symbol
Figure BDA0003167760910000131
When channel 1, channel 2, and channel 3 wait at the same time, the value of each address symbol P is:
the binary value "000000000000000001" for channel 1, corresponding to a decimal value of 1;
the binary value "000000000000000010" for channel 2, corresponding to a decimal value of 2;
the binary value "000000000000000100" for channel 3, corresponding to a decimal value of 4;
thus, a relative judgment value of "000000000000000111" is obtained, corresponding to a decimal value of 7, so that the judgment value of "7" represents that the channels 1, 2, 3 wait for synchronization.
2) In this embodiment, when the address character P is a decimal value, only 10 channels can be specified at most, see the following table;
TABLE 2 decimal address sign
Figure BDA0003167760910000132
Figure BDA0003167760910000141
When channel 1, channel 2, and channel 3 wait simultaneously, the decision value is the additive combination of numbers 1, 2, and 3, there is no limitation on the order of combination, channel 10 is represented by number 0, and when channel 10 is designated to wait, number 0 cannot be placed at the start bit.
Further, the data structure for inter-channel synchronous wait comprises: waiting for a code bit, a channel number bit, a waiting flag bit and a channel status bit;
the waiting code bit and the channel number bit are used for recording a code instruction M or emptying, the waiting flag bit is used for identifying whether the current channel is in a waiting state for execution, and the channel state bit is used for identifying the current channel state and comprises non-execution waiting, execution waiting and the end of the waiting;
when the waiting code bit and the channel number bit record a code instruction M, the address symbol P of the channel data with the code instruction M is operated to obtain a judgment value, and the waiting flag bit and the channel state bit for identifying each channel data are updated according to the judgment value.
Specifically, the synchronous flow of synchronous waiting among multiple channels is shown in fig. 1; for ease of understanding, the following example data structures define and synchronize the execution code of the wait portion.
1) The data structure is defined as:
Figure BDA0003167760910000142
2) synchronizing waiting execution code
Figure BDA0003167760910000151
The motion axis synchronization control step for moving a plurality of axes (the maximum number of which is controlled by the current channel interpolation maximum number of axes) in synchronization, includes: setting a driving shaft and a plurality of driven shafts synchronous with the driving shaft, setting a moving command for the driving shaft, and transmitting the moving command to the driven shafts synchronously so as to keep the driven shafts synchronous with the driving shaft;
and if the current state is in the shaft synchronization and the driving shaft and the driven shaft are in the same program segment, ignoring the movement command of the driven shaft, only executing the movement command of the driving shaft and copying the movement command of the driving shaft into the driven shaft.
The shaft synchronization command comprises a driving shaft number, a driven shaft number and a resident command bit in shaft synchronization; in the resident instruction bits: "0" represents park cancellation; "1" represents the stay of the driving shaft and the stay of the driven shaft is cancelled; and 2 represents that the driven shaft stays and the driving shaft stays are cancelled. The dwell command is an axial dwell, i.e. the absolute coordinates of the axis and the machine coordinates are both changed, but no position command is output to the motor.
The number of the driving shaft is the channel number of 100 plus the corresponding shaft number in the channel; the driven shaft is numbered as a channel number 100+ corresponding shaft number in the channel; when the channel number is not specified, the current channel is indicated. The master axis number includes a positive or negative value, and the slave axis direction is opposite to the master axis direction when designated as a negative value.
Specifically, the motion diagram of the motion axis synchronous control is shown in fig. 2; for ease of understanding, the following example data structures define and synchronize the execution code of the wait portion.
1) Multi-channel shaft synchronous control data structure
Figure BDA0003167760910000161
2) Multi-channel shaft synchronous execution code
Figure BDA0003167760910000171
The main shaft control processing of the multi-channel numerical control system can enable the main shaft and the encoder feedback of each channel to share control or cross control through PLC signals or P instructions. The bottom layer software of the multi-channel numerical control system is mainly realized by an EhterCAT bus master station protocol stack. In order to ensure the real-time performance of an EhterCAT bus master station protocol stack, an industrial PC (personal computer) with a network interface chip with higher real-time performance needs to be selected.
The above preferred embodiments should be considered as examples of the embodiments of the present application, and technical deductions, substitutions, improvements and the like similar to, similar to or based on the embodiments of the present application should be considered as the protection scope of the present patent.

Claims (10)

1. The industrial PC-based multi-channel multi-axis linkage numerical control system is characterized by comprising an industrial computer with an Ethernet communication module, wherein the industrial computer is connected with an EtherCAT bus servo driver and/or an EtherCAT bus IO module based on an EtherCAT bus so as to realize data interaction and control;
the industrial computer is provided with a Linux operating system with a Xenomai real-time kernel, numerical control software for multi-channel processing control is operated on the Linux operating system, and the numerical control software is provided with an operation interface for operating or setting parameters of one channel or a plurality of channels simultaneously.
2. The industrial PC-based multi-channel multi-axis linkage numerical control system according to claim 1, wherein the numerical control software comprises a human-computer interaction module, a motion control module and a logic control module, which are connected and communicate by a soft data bus;
the man-machine interaction module realizes input/output based on an industrial computer and is used for a user to set a processing program and parameters;
the motion control module executes compiling and interpolation operation according to the processing program and generates a corresponding action instruction;
the logic control module is used for controlling the input and output of the switching value of the machine tool, collecting a machine tool spindle encoder and controlling the electrical property of the machine tool.
3. The industrial PC-based multi-channel multi-axis linkage numerical control system according to claim 2, wherein the human-computer interaction module comprises a file editing module, a file management module, a processing operation module, a tool offset setting module, a parameter setting module and a diagnosis and maintenance module, wherein:
the file editing module and the file management module are shared by all channels, the file editing module is used for compiling the machining program, and the file management module is used for identifying which channel the current machining program runs on; the processing operation module, the cutter offset setting module and the parameter setting module are respectively used for independently operating the processing programs of all channels and setting and modifying the cutter offset and parameters of all channels.
4. The industrial PC-based multi-channel multi-axis linkage numerical control system according to claim 2, wherein the motion control module comprises a decoding and interpreting module for interpreting a processing program into corresponding data commands, and a real-time control module for performing operation processing according to the data commands and generating control commands.
5. The industrial PC-based multi-channel multi-axis linkage numerical control system according to claim 4, wherein the decoding interpretation module performs decoding, path planning, tool radius compensation and spatial transformation operations, and the real-time control module is used for performing speed planning, coarse interpolation operation, FIFO, inverse kinematics transformation, fine interpolation operation, precision compensation and PID control operation according to data commands.
6. The multi-channel multi-axis linkage numerical control method based on the industrial PC is characterized by comprising a hardware configuration step and a software configuration step;
the hardware setting step includes:
s11, building a Linux operating system on the industrial computer, and performing real-time transformation on the Linux operating system by using a Xenomai real-time system so as to enable the Linux operating system to have real-time performance;
s12, running numerical control software for multi-channel processing control on the Linux operating system;
s13, connecting the industrial computer with an EtherCAT bus servo driver and/or an EtherCAT bus IO module through an EtherCAT bus;
the software configuration step comprises:
s21, establishing a man-machine interaction system in the numerical control software for a user to write a processing program and set processing parameters, wherein the man-machine interaction interface is provided with an operation interface for operating one channel or simultaneously operating a plurality of channels or setting parameters;
s22, constructing a motion control system in the numerical control software to execute compiling, interpolation operation and generate corresponding action instructions according to the processing program, wherein the motion control system has two paths of outputs for connecting and driving the servo driver and the PLC;
and S23, building a logic control system on the PLC to realize the input and output control of the switching value of the machine tool.
7. The industrial PC-based multi-channel multi-axis linkage numerical control method according to claim 6, wherein in step S22, the motion control system is defined to sequentially perform the following operations: decoding, path planning, tool radius compensation, space transformation, speed planning, coarse interpolation operation, inverse kinematics transformation, fine interpolation operation, precision compensation and PID control.
8. The industrial PC-based multi-channel multi-axis linkage numerical control method according to claim 7, wherein a FIFO module is provided between the coarse interpolation operation and the inverse kinematics transformation in step S22.
9. The industrial PC based multi-channel multi-axis linkage numerical control method according to any one of claims 6 to 8, wherein the software configuration step further comprises:
s24, before interpolation operation of each channel, multi-channel cooperative control is performed, and waiting and switching between tasks of each channel are performed based on a set task timer and a semaphore.
10. The industrial PC-based multi-channel multi-axis linkage numerical control method according to claim 9, wherein the multi-channel cooperative control includes inter-channel synchronous control and moving axis synchronous control;
the inter-channel synchronization control includes:
s31, defining a code instruction M for waiting for identification, wherein the code instruction M comprises an address character P;
s32, when a code instruction M is detected, adding the address symbol P values in each code instruction M to obtain a judgment value, and pointing the judgment value to a channel number set needing waiting only;
the motion axis synchronization control includes:
s41, setting a driving shaft and a plurality of driven shafts synchronous with the driving shaft, setting a synchronous control step command among moving channels for the driving shaft, and transmitting the synchronous moving command to the driven shafts so as to keep the driven shafts synchronous with the driving shaft;
and S42, if the current state is in the shaft synchronization and the driving shaft and the driven shaft are in the same program segment, ignoring the movement command of the driven shaft, only executing the movement command of the driving shaft and copying the movement command of the driving shaft to the driven shaft.
CN202110809662.3A 2021-07-17 2021-07-17 Multi-channel multi-axis linkage numerical control system and method based on industrial PC Active CN113433894B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110809662.3A CN113433894B (en) 2021-07-17 2021-07-17 Multi-channel multi-axis linkage numerical control system and method based on industrial PC

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110809662.3A CN113433894B (en) 2021-07-17 2021-07-17 Multi-channel multi-axis linkage numerical control system and method based on industrial PC

Publications (2)

Publication Number Publication Date
CN113433894A true CN113433894A (en) 2021-09-24
CN113433894B CN113433894B (en) 2022-12-13

Family

ID=77760835

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110809662.3A Active CN113433894B (en) 2021-07-17 2021-07-17 Multi-channel multi-axis linkage numerical control system and method based on industrial PC

Country Status (1)

Country Link
CN (1) CN113433894B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114428484A (en) * 2021-12-24 2022-05-03 科德数控股份有限公司 Eight-channel control method for turn-milling composite five-axis machining center
CN115079641A (en) * 2022-07-18 2022-09-20 科东(广州)软件科技有限公司 Numerical control system and numerical control method
CN115113585A (en) * 2022-08-29 2022-09-27 济南邦德激光股份有限公司 Method, device and storage medium for fine interpolation based on N-order B spline
CN116500974A (en) * 2023-06-30 2023-07-28 中科航迈数控软件(深圳)有限公司 Multi-channel numerical control system, multi-channel processing method, equipment and storage medium

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09282019A (en) * 1996-02-14 1997-10-31 Mitsubishi Electric Corp Numerical controller
EP1916578A1 (en) * 2006-10-24 2008-04-30 Triphase NV A system for real-time process control
CN102478852A (en) * 2010-11-23 2012-05-30 大连兆阳软件科技有限公司 Method for controlling PLC (programmable logic controller) ports of numerical control machine system
CN103128598A (en) * 2011-11-25 2013-06-05 发那科株式会社 Motor control apparatus for synchronously controlling master axis and slave axis
CN203070045U (en) * 2013-01-18 2013-07-17 福建工程学院 Embedded numerical control motion control platform used for multi-spindle machine tool
CN103809523A (en) * 2012-11-08 2014-05-21 北京计算机技术及应用研究所 Multi-channel numerical control system and multi-channel control method thereof
CN104597817A (en) * 2015-01-12 2015-05-06 北京慧物科联科技有限公司 Parallel acquisition system of multi-channel digital sensor
CN106886198A (en) * 2015-12-15 2017-06-23 沈阳高精数控智能技术股份有限公司 A kind of multi-channel type digital control system processing progress command control system and method
CN111427310A (en) * 2020-03-31 2020-07-17 研祥智能科技股份有限公司 Industrial robot controller operation system
CN112091978A (en) * 2020-09-24 2020-12-18 哈尔滨工业大学 Real-time control system for mechanical arm
CN112147927A (en) * 2020-09-11 2020-12-29 苏州谷夫道自动化科技有限公司 Multi-axis motion control system for two-channel bus communication
CN112305997A (en) * 2020-11-02 2021-02-02 苏州浩智工业控制技术有限公司 Multi-process based control method and system of multi-channel numerical control system
CN112327759A (en) * 2020-10-21 2021-02-05 苏州谷夫道自动化科技有限公司 Method and system for synchronizing channels of multi-channel numerical control system
CN113110304A (en) * 2021-03-13 2021-07-13 无锡信捷电气股份有限公司 Multi-channel sport

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09282019A (en) * 1996-02-14 1997-10-31 Mitsubishi Electric Corp Numerical controller
EP1916578A1 (en) * 2006-10-24 2008-04-30 Triphase NV A system for real-time process control
CN102478852A (en) * 2010-11-23 2012-05-30 大连兆阳软件科技有限公司 Method for controlling PLC (programmable logic controller) ports of numerical control machine system
CN103128598A (en) * 2011-11-25 2013-06-05 发那科株式会社 Motor control apparatus for synchronously controlling master axis and slave axis
CN103809523A (en) * 2012-11-08 2014-05-21 北京计算机技术及应用研究所 Multi-channel numerical control system and multi-channel control method thereof
CN203070045U (en) * 2013-01-18 2013-07-17 福建工程学院 Embedded numerical control motion control platform used for multi-spindle machine tool
CN104597817A (en) * 2015-01-12 2015-05-06 北京慧物科联科技有限公司 Parallel acquisition system of multi-channel digital sensor
CN106886198A (en) * 2015-12-15 2017-06-23 沈阳高精数控智能技术股份有限公司 A kind of multi-channel type digital control system processing progress command control system and method
CN111427310A (en) * 2020-03-31 2020-07-17 研祥智能科技股份有限公司 Industrial robot controller operation system
CN112147927A (en) * 2020-09-11 2020-12-29 苏州谷夫道自动化科技有限公司 Multi-axis motion control system for two-channel bus communication
CN112091978A (en) * 2020-09-24 2020-12-18 哈尔滨工业大学 Real-time control system for mechanical arm
CN112327759A (en) * 2020-10-21 2021-02-05 苏州谷夫道自动化科技有限公司 Method and system for synchronizing channels of multi-channel numerical control system
CN112305997A (en) * 2020-11-02 2021-02-02 苏州浩智工业控制技术有限公司 Multi-process based control method and system of multi-channel numerical control system
CN113110304A (en) * 2021-03-13 2021-07-13 无锡信捷电气股份有限公司 Multi-channel sport

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114428484A (en) * 2021-12-24 2022-05-03 科德数控股份有限公司 Eight-channel control method for turn-milling composite five-axis machining center
CN114428484B (en) * 2021-12-24 2024-03-08 科德数控股份有限公司 Eight-channel control method for turning and milling composite five-axis machining center
CN115079641A (en) * 2022-07-18 2022-09-20 科东(广州)软件科技有限公司 Numerical control system and numerical control method
CN115113585A (en) * 2022-08-29 2022-09-27 济南邦德激光股份有限公司 Method, device and storage medium for fine interpolation based on N-order B spline
CN115113585B (en) * 2022-08-29 2022-11-11 济南邦德激光股份有限公司 Method, device and storage medium for fine interpolation based on N-order B spline
CN116500974A (en) * 2023-06-30 2023-07-28 中科航迈数控软件(深圳)有限公司 Multi-channel numerical control system, multi-channel processing method, equipment and storage medium
CN116500974B (en) * 2023-06-30 2023-09-29 中科航迈数控软件(深圳)有限公司 Multi-channel numerical control system, multi-channel processing method, equipment and computer readable storage medium

Also Published As

Publication number Publication date
CN113433894B (en) 2022-12-13

Similar Documents

Publication Publication Date Title
CN113433894B (en) Multi-channel multi-axis linkage numerical control system and method based on industrial PC
CN108942932B (en) Industrial robot control system and method based on EtherCAT bus
CN106502095B (en) A kind of cooperative control method of more industrial robots
EP1704025B1 (en) Control system, method and computer program for sychronizing several robots.
US5204942A (en) Robot control system for controlling a set of industrial robots for cooperative operation
US9342068B2 (en) Motion controller and motor control system
JP7310465B2 (en) Synchronous control device, synchronous control system, synchronous control method, and simulation device
JP2019067045A (en) Control unit
JP2010170435A (en) System and method for instructing motion control, and motion control system
CN111813052A (en) Numerical control system structure and general numerical control system
CN104796055A (en) Touch screen control and drive integrated four-axis steeping motor closed-loop control system
JP5291727B2 (en) Program conversion module and program conversion method for multi-axis synchronous machine
CN107791244A (en) Controller, operation controller, multi-axis actuation control device and drive dynamic control device
JP5009625B2 (en) Method and apparatus for operating different devices operating in conjunction
CN113433892B (en) Synchronous control method in multi-channel numerical control system
JP2007515003A5 (en)
CN116141309A (en) Robot and numerical control system coupling control method and system
CN113119105A (en) Robot multi-machine linkage control method, multi-machine linkage control equipment and control system
JP2006285885A (en) Parallel processing method of distributed motion control system and motion controller
EP4169672A1 (en) Multi-axis servo control system
CN116330263A (en) Intelligent industrial robot platform implementation method based on Codesys
JP4819515B2 (en) AC servo system having distributed movement control device providing multi-axis control for movement and control method thereof
CN113110304A (en) Multi-channel sport
CN202600433U (en) Embedded five-axis linkage control system
JPH09305213A (en) Robot controller

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant