Interpolation processing method, device, processing conveying system and storage medium
By determining the motor stroke as the real axis in the machining and conveying system and defining the conveying line body as the virtual axis, and performing preset interpolation strokes in combination with the real axis and the virtual axis, the processing efficiency and accuracy of nonlinear complex curves in the prior art is solved. Problem, more efficient interpolation processing is achieved.
Patent Information
- Application Number
- CN202311314421.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-10-10
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2043-10-10
AI Technical Summary
The prior art is difficult to efficiently process nonlinear complex curves. CNC programming relies on manual experience and is complex, and the robotic arm programming is difficult, resulting in low machining accuracy and efficiency.
By determining the motor stroke as the real axis in the machining and conveying system, defining the conveying line body as the virtual axis, obtaining the preset interpolation stroke and executing the process through the real axis and the virtual axis, the interpolation processing efficiency is improved.
It reduces the difficulty of calculation, avoids the problem of excessive number of virtual axes, and improves the efficiency and accuracy of interpolation processing.
Smart Images

Figure CN117311269B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of automated processing technology, and in particular to an interpolation processing method, device, processing and conveying system, and storage medium. Background Art
[0002] Currently, the processing of nonlinear complex curves is usually achieved through CNC machine tool programming or robotic arm programming.
[0003] Among them, CNC programming relies on manual experience and is complex to program. It is only suitable for the processing of parts such as shafts and disks, and it is difficult to achieve large-scale automation. Due to the complex routes of nonlinear curves, the programming of the robot arm is difficult and it is difficult to ensure the processing accuracy. In addition, the movement efficiency of the robot arm is low, and it takes a long time to execute a longer moving stroke, resulting in low processing efficiency. Summary of the invention
[0004] The embodiments of the present application provide an interpolation processing method, device, processing conveying system and storage medium to solve the defect that the above-mentioned related technologies cannot efficiently process nonlinear complex curves. The technical solution is as follows:
[0005] In a first aspect, an embodiment of the present application provides an interpolation processing method, which is applied to a processing and conveying system, comprising:
[0006] Determine the real axis based on each motor stroke of the actuator in the processing and conveying system, and determine the virtual axis based on each conveying line in the processing and conveying system;
[0007] Obtaining a preset interpolation stroke of a process to be executed, and obtaining a real axis and a virtual axis matching the preset interpolation stroke;
[0008] The process to be executed is executed by a conveyor line body corresponding to a virtual axis matching the preset interpolation stroke and a motor stroke corresponding to a real axis matching the preset interpolation stroke.
[0009] In an optional solution of the first aspect, the real axis is determined based on each motor stroke of the actuator in the processing and conveying system, including:
[0010] The motor ID of each motor in the actuator and the motor stroke of the motor corresponding to the motor ID are obtained, and the motor stroke of each motor corresponding to the motor ID is determined as a real axis.
[0011] In an optional solution of the first aspect, the determining of virtual axes based on each conveying line in the processing conveying system includes:
[0012] The conveyor line body ID of each conveyor line body and the conveyor line running direction of the conveyor line body corresponding to the conveyor line body ID are obtained, and the conveyor line running direction of each conveyor line body corresponding to the conveyor line body ID is determined as a virtual axis.
[0013] In an optional solution of the first aspect, after respectively determining the real axis based on each motor stroke of the actuator in the processing and conveying system and respectively determining the virtual axis based on each conveying line in the processing and conveying system, the process further includes:
[0014] Based on the position information of the actuator, a virtual axis corresponding to the conveyor line body matched with the actuator is obtained;
[0015] Acquire motion stroke information of the actuator, and acquire at least one process section mapped by the actuator on the virtual axis based on the transport stroke information;
[0016] The process interval is divided according to at least one of the process interval segments.
[0017] In an optional solution of the first aspect, after respectively determining the virtual axis based on each conveying line body in the processing conveying system, the method further includes:
[0018] If the conveyor line body has a plurality of the actuators, and the plurality of the actuators do not move in parallel in each process interval, then each process interval on the conveyor line body corresponds to the same virtual axis.
[0019] In an optional solution of the first aspect, after respectively determining the virtual axis based on each conveying line body in the processing conveying system, the method further includes:
[0020] If the conveyor line body is provided with a plurality of the actuators, and the plurality of the actuators move in parallel in each process interval, each process interval on the conveyor line body is respectively determined as a virtual axis.
[0021] In an optional solution of the first aspect, after respectively determining the virtual axis based on each conveying line body in the processing conveying system, the method further includes:
[0022] If the process interval includes a plurality of process interval segments, and the actuators in the plurality of process interval segments move in parallel, each process interval segment in the process interval is respectively determined as a virtual axis.
[0023] In an optional solution of the first aspect, after respectively determining the virtual axis based on each conveying line body in the processing conveying system, the method further includes:
[0024] For a conveyor line body connecting two adjacent process intervals along the running direction of the conveyor line, a virtual axis of the previous process interval or a virtual axis of the next process interval is allocated to the conveyor line body connecting the two adjacent process intervals.
[0025] In an optional solution of the first aspect, after obtaining the preset interpolation stroke of the process to be executed, the method further includes:
[0026] Decomposing the preset interpolation stroke into a plurality of sub-preset interpolation strokes, and outputting the number of the sub-preset interpolation strokes, and the interpolation stroke direction and interpolation stroke distance of each of the sub-preset interpolation strokes;
[0027] The sub-preset interpolation strokes are divided based on the interpolation stroke direction corresponding to each sub-preset interpolation stroke.
[0028] In an optional solution of the first aspect, the acquiring the real axis and the virtual axis matching the preset interpolation stroke includes:
[0029] At least one real axis and any one virtual axis having the same interpolation stroke direction as that corresponding to each of the sub-preset interpolation strokes within the process interval of the process to be executed are selected, and the sum of the number of virtual axes and real axes is equal to the number of the sub-preset interpolation strokes.
[0030] In an optional solution of the first aspect, the acquiring the real axis and the virtual axis matching the preset interpolation stroke includes:
[0031] Obtain the sub-preset interpolation stroke with the largest interpolation stroke distance among the sub-preset interpolation strokes in the same direction as the conveyor line running direction of the virtual axis in the process interval of the process to be executed, and allocate the sub-preset interpolation stroke with the largest interpolation stroke distance to the virtual axis.
[0032] In an optional solution of the first aspect, after acquiring the real axis and the virtual axis matching the preset interpolation stroke, the method further includes:
[0033] The mover on the conveyor body is driven to the initial position of the sub-preset interpolation stroke matched by the virtual axis; the actuator is driven to the initial position of the sub-preset interpolation stroke matched by the real axis;
[0034] The mover moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matched by the virtual axis; the actuator moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matched by the real axis.
[0035] In a second aspect, an embodiment of the present application further provides an interpolation processing device, which is applied to a processing and conveying system, comprising:
[0036] A control module, used to determine the real axis based on each motor stroke of the actuator in the processing and conveying system, and to determine the virtual axis based on each conveying line in the processing and conveying system;
[0037] An interpolation allocation module, used to obtain a preset interpolation stroke of a process to be executed, and to obtain a real axis and a virtual axis matching the preset interpolation stroke;
[0038] An execution module is used to execute the process to be executed through a conveyor line body corresponding to a virtual axis matching the preset interpolation stroke and a motor stroke corresponding to a real axis matching the preset interpolation stroke.
[0039] In a third aspect, the present application also provides a processing and conveying system, including:
[0040] The interpolation processing device as described in the second aspect of the present application;
[0041] A conveyor line body, the conveyor line body is used to drive a mover to execute the process to be executed;
[0042] An actuator is arranged beside the conveyor line body and executes the process to be executed by driving a motor.
[0043] In a fourth aspect, the present application also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method provided by the first aspect of the embodiment of the present application or any one of the implementations of the first aspect.
[0044] The beneficial effects brought about by the technical solutions provided by some embodiments of the present application include at least:
[0045] An interpolation processing method provided by an embodiment of the present application determines the motor stroke as the real axis and defines the conveyor line body as the virtual axis, thereby avoiding the problem of too many virtual axes caused by the related technology of establishing the virtual axis based on the mover, which is conducive to reducing the difficulty of calculation and improving the interpolation efficiency. By obtaining the preset interpolation stroke of the process to be executed, the preset interpolation stroke is further executed by the real axis and the virtual axis together, so that the preset interpolation stroke of the process to be executed is converted into the motor stroke corresponding to the real axis and the conveyor line body stroke corresponding to the virtual axis, thereby improving the efficiency of executing the interpolation processing process. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In order to more clearly illustrate the technical solutions in the present application or related technologies, the drawings required for use in the embodiments or related technical descriptions are briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0047] Figure 1 A schematic diagram of an application scenario of an interpolation processing method according to an embodiment of the present application;
[0048] Figure 2 A structural schematic diagram of a processing and conveying system provided in an embodiment of the present application;
[0049] Figure 3 It is a flow chart of an interpolation processing method according to an embodiment of the present application;
[0050] Figure 4 It is a flow chart of an interpolation processing method according to an embodiment of the present application;
[0051] Figure 5 It is a flow chart of an interpolation processing method according to an embodiment of the present application;
[0052] Figure 6 It is a structural schematic diagram of an interpolation processing device provided in an embodiment of the present application;
[0053] Figure 7 It is a structural schematic diagram of the processing and conveying system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0054] In order to make the purpose, technical solutions and advantages of this application clearer, the technical solutions in this application will be clearly and completely described below in conjunction with the drawings in this application. Obviously, the described embodiments are part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0055] The terms "including" and "having" and any variations thereof in the specification and claims of the present application and the above drawings are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device including a series of steps or modules is not limited to the listed steps or modules, but may optionally include steps or modules that are not listed, or may optionally include other steps or modules that are inherent to these processes, methods, products or devices.
[0056] It should be noted that the terms "first\second" involved in the present application are only used to distinguish similar objects, and do not represent a specific order for the objects. It is understandable that "first\second" can be interchanged with a specific order or sequence where permitted. It should be understood that the objects distinguished by "first\second" can be interchanged where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those described or illustrated herein.
[0057] In the related art, workpieces can be transported through a magnetically driven conveyor line, which has a fixed stator and a mover that can move on the stator. A tray is provided on the mover, and workpieces can be placed in the tray. An XY-axis robot is provided externally to process the workpiece on the mover.
[0058] However, when the external XY two-axis robot processes the workpiece, the mover stays in the process position, and the processing is performed only by the external robot. The programming difficulty of the robot is relatively high. The higher the complexity of the nonlinear curve, the more difficult it is to achieve high-precision processing. In addition, due to the limitation of the mechanical structure, the robot moves slowly, and it takes a long time to turn and move long strokes, resulting in low processing efficiency.
[0059] Based on this, the embodiment of the present application provides an interpolation processing method, which determines the motor stroke as the real axis and defines the conveyor line body as the virtual axis, thereby avoiding the problem of too many virtual axes caused by the related technology of establishing the virtual axis based on the mover, which is conducive to reducing the difficulty of calculation and improving the interpolation efficiency. By obtaining the preset interpolation stroke of the process to be executed, and further executing the preset interpolation stroke through the real axis and the virtual axis together, the preset interpolation stroke of the process to be executed is converted into the motor stroke corresponding to the real axis and the conveyor line body stroke corresponding to the virtual axis, thereby improving the efficiency of executing the interpolation processing process.
[0060] Please refer to the following Figure 1 and Figure 2 , Figure 1 A schematic diagram of an application scenario of an interpolation processing method provided by an exemplary embodiment of the present application is shown in FIG. Figure 2 Schematic diagram of a processing and conveying system provided by an exemplary embodiment of the present application, the interpolation processing method provided by the embodiment of the present application is applied to the processing and conveying system. Figure 1 As shown, the processing and conveying system includes a PLC host computer 110, a controller 120, at least one actuator 130, at least one conveying line body 140, and a plurality of movers 150; Figure 2 As shown, a plurality of stators 160 and movers 150 arranged along the conveying direction are arranged on the conveying line body 140 in the processing and conveying system. The conveying line body 140 serves as a transmission mechanism in the processing and conveying system. The movers 150 on the conveying line body 140 are magnetically coupled with the corresponding stators. A permanent magnetic array is arranged on the mover 150, and a coil is arranged on the stator 160. The coil is energized to drive the mover 150 to operate. The mover 150 is provided with a workpiece to be processed, and the actuator 130 is used to perform processing operations on the workpiece to be processed.
[0061] Specifically, the stator 160 can detect the position of the mover through a magnetic grating sensor or a grating sensor, a grating scale or a magnetic grating scale can be set on the mover 150, and a reader can be set on the stator 160. The stator 160 can read the grating scale or the magnetic grating scale through the reader to obtain the running position of the mover 150. Among them, the conveyor line body 140 can be defined as a virtual axis through the interpolation processing method provided in the embodiment of the present application. The virtual axis is a linear axis preset based on the stator arrangement, and its axis length can extend from 0 to infinity. Since the stator 160 can read the position of the mover in real time, the real-time position of the mover is reflected as its real-time coordinate position on the axis. The virtual axis only presets a station, and it drives a certain mover 150 from a certain preset station to another preset station through the stator 160. That is, the conveyor line body 140 described in the embodiment of the present application, specifically uses the coordinate axis formed by the stator 160 as a virtual axis, only obtains the real-time coordinates of the mover 150, and drives the mover 150 to run to another preset station.
[0062] For example, Figure 2 As shown, the processing and conveying system includes two conveying lines 140 , and the actuator 130 is erected above the two conveying lines 140 . The actuator 130 executes the processing technology to process the workpiece through the actuator component 131 .
[0063] The actuator 130 includes at least one actuator 131 for executing the processing technology, and the actuator 131 is driven by a corresponding motor; illustratively, the actuator 131 can be at least one of a robot, a dispensing head, a probe, a camera, a cutting knife and other components. Among them, the processing operations on the workpiece to be processed can include nonlinear complex operations such as dispensing, flying welding, flying shooting, etc., or a complex operation that is a combination of linear and nonlinear operations. For example, the actuator 131 can be a multi-axis robot that can run in at least two directions. On this basis, it can also perform nonlinear operations such as rotation. For example, Figure 2 The actuator 131 shown is a linear motor that moves in the direction indicated by the arrow.
[0064] Specifically, the PLC host computer 110 is connected to the actuator 130 and the controller 120 of the conveyor line body 140 to realize signal interaction and transmission. The PLC host computer 110 is used to control the movement of the actuator 130, and also drives the mover 150 to move through the stator 160 on the conveyor line body 140 through the controller 120, so that the process to be executed is executed through the actuator 130 and the conveyor line body 140.
[0065] The present application is described in detail below with reference to specific embodiments.
[0066] Next, combine Figure 1 and Figure 2, introduces the interpolation processing method provided by the embodiment of the present application. For details, please refer to Figure 3 , Figure 3 A schematic flow chart of an interpolation processing method provided in an embodiment of the present application is shown, and the method comprises the following steps:
[0067] S301, determining a real axis based on each motor stroke of an actuator in a processing and conveying system, and determining a virtual axis based on each conveying line in the processing and conveying system.
[0068] It can be understood that the movement of the actuator is the movement of the motor in the actuator. The motor includes a fixed part and a moving part. The motor is fixed to the actuator through the fixed part, and the movement stroke of the motor and the position of the moving part are obtained through the encoder provided inside the motor. By defining the stroke of the motor as the real axis, the position of the moving part is also defined as a point on the real axis. The position of the moving part obtained in real time by the encoder is also the position coordinate of the moving point on the real axis obtained in real time.
[0069] Specifically, the number of motors in the actuator can be obtained, and the motor ID of each motor and the motor stroke of the motor corresponding to the motor ID can be obtained, wherein the motor stroke includes the running direction of the motor and the running distance of the motor, and each motor stroke is determined as a real axis.
[0070] Optionally, each real axis is numbered, such as generating a real axis number corresponding to the ID according to the motor ID, or generating a sequence of the first real axis, the second real axis, ... the nth real axis, and binding the nth real axis to the corresponding motor ID.
[0071] It can be understood that the conveyor line body cannot be used as a real axis. Since the conveyor line body is formed by stators connected in series, with an initial stator and a terminal stator, when the mover runs one circle from the initial stator, it returns to the initial stator via the terminal stator, and the mover's stroke changes from 0 to one circle. The virtual axis can be understood as an axis with a stroke of 0 to ∞. On the one hand, the remainder of the mover's coordinates on the axis divided by the stroke value can reflect the position of the mover. On the other hand, the quotient of the mover's coordinates on the axis divided by the stroke value can reflect the actual number of circles of the mover. It should also be understood that for a real axis, when the moving parts on it move one circle and return to the starting point, their coordinates automatically return to zero, so the conveyor line body is defined as a virtual axis.
[0072] Specifically, the conveyor line body ID of each conveyor line body and the conveyor line running direction of the conveyor line body corresponding to the conveyor line body ID can be obtained, and the conveyor line running direction of the conveyor line body corresponding to each conveyor line body ID can be determined as a virtual axis.
[0073] Optionally, the number of conveyor line bodies is obtained, and the virtual axes corresponding to each conveyor line body are numbered respectively, such as generating the virtual axis number corresponding to the conveyor line body ID according to the conveyor line body ID, or generating a sequence of the first virtual axis, the second virtual axis, ... the nth virtual axis, and binding the nth virtual axis to the corresponding conveyor line body ID. The running direction of the conveyor line refers to the direction of the process flow.
[0074] S302, obtaining a preset interpolation stroke of the process to be executed, and obtaining a real axis and a virtual axis matching the preset interpolation stroke.
[0075] Specifically, after obtaining the process to be executed, the process to be executed can be interpolated according to the preset interpolation algorithm to obtain the preset interpolation stroke. It can be understood that the interpolation operation is to input the curve data to be processed (such as the starting point and end point coordinates of the straight line, the starting point, end point, center coordinates of the arc, etc.) into the numerical control system, use a certain algorithm to calculate, and send a feed instruction to the corresponding coordinate according to the calculation result, that is, the above-mentioned preset interpolation stroke. According to the given preset interpolation stroke, the processing mechanism moves a given distance in the corresponding coordinate direction determined by the preset interpolation stroke, so as to process the required contour shape of the workpiece. For different curve data to be processed of the process to be executed, the preset interpolation stroke obtained by calculation is also different.
[0076] Specifically, the corresponding real axis and the corresponding virtual axis can be matched respectively according to the preset interpolation stroke, which should include one virtual axis and at least one real axis.
[0077] It can be understood that the interpolation operation is essentially a combination of unidirectional movements of two or more real axes. The preset interpolation stroke obtained by the interpolation operation includes movement information of multiple real axes, one of which is allocated as a virtual axis and the others are allocated to real axes.
[0078] S303, executing the process to be executed through the conveyor line body corresponding to the virtual axis matching the preset interpolation stroke and the motor stroke corresponding to the real axis matching the preset interpolation stroke.
[0079] Specifically, after the preset interpolation stroke is allocated to the real axis and the virtual axis, the interpolation stroke corresponding to the real axis is executed through the motor stroke corresponding to the real axis, and the interpolation stroke corresponding to the virtual axis is executed through the conveyor line body driving mover corresponding to the virtual axis.
[0080] Exemplarily, an arc is drawn on a given workpiece by a preset interpolation program through a Y-axis linear motor L and a mover S on an X-axis conveyor line, wherein the motor stroke of the linear motor L is along the Y-axis direction, with the Y-axis as the real axis, and the mover S moves along the X-axis on the conveyor line, so the X-axis is taken as the virtual axis. A 1 / 4 arc is drawn by the linear motor L and the mover S, and the motion of drawing the arc can be decomposed into motion along the X-axis and the Y-axis, and the 1 / 4 arc is drawn by the relative motion in the X-axis direction and the Y-axis direction.
[0081] The method provided in the embodiment of the present application, by determining the motor stroke as the real axis and defining the conveyor line body as the virtual axis, can execute the preset interpolation stroke together through the real axis and the virtual axis by obtaining the preset interpolation stroke of the process to be executed, thereby converting the preset interpolation stroke of the process to be executed into the motor stroke corresponding to the real axis and the conveyor line body stroke corresponding to the virtual axis, thereby improving the processing efficiency.
[0082] The method provided in the embodiment of the present application, by determining the motor stroke as the real axis and defining the conveyor line body as the virtual axis, avoids the problem of too many virtual axes caused by the related technology of establishing the virtual axis based on the mover, which is conducive to reducing the difficulty of calculation and improving the interpolation efficiency. By obtaining the preset interpolation stroke of the process to be executed, and further executing the preset interpolation stroke together through the real axis and the virtual axis, the preset interpolation stroke of the process to be executed is converted into the motor stroke corresponding to the real axis and the conveyor line body stroke corresponding to the virtual axis, thereby improving the efficiency of executing the interpolation processing technology. By binding the motor ID to the real axis and the conveyor line body ID to the virtual axis, it is easy to identify the information of each motor and conveyor line body, and it is easy to find the corresponding actuator and conveyor line body according to the real axis and the virtual axis.
[0083] See next Figure 4 , is a flow chart of another interpolation processing method provided in an embodiment of the present application. Figure 4 As shown, after determining the real axis and the virtual axis in S301, the interpolation processing method further includes the following steps:
[0084] S401, based on the position information of the actuator, obtain a virtual axis corresponding to the conveyor line body matched with the actuator; obtain the motion stroke information of the actuator, and based on the transport stroke information, obtain at least one process interval segment mapped by the actuator on the virtual axis; divide the process interval according to at least one process interval segment.
[0085] Specifically, the position information of the actuator relative to the conveyor line body can be obtained according to the PLC host computer, so as to determine the conveyor line body where the actuator executes the process flow, that is, the conveyor line body matching the actuator, and then determine the virtual axis matching the actuator.
[0086] Specifically, the actuator is bound to the virtual axis, and the motion stroke information of the actuator can be understood as the range of motion of the actuator in a given process flow. The motion stroke information of the actuator is mapped to the bound virtual axis, and the corresponding process flow interval segment can be obtained. For example, in a given process flow, the coordinates of the range of motion of the actuator are [Xa, Xa'], and the single-turn stroke corresponding to the conveyor line body is C, then the stroke of the virtual axis is nXC, and the first process interval segment obtained by mapping the motion stroke information of the actuator to the bound virtual axis is [Xa+nXC, Xa'+nXC].
[0087] Specifically, there may be multiple process intervals corresponding to one process interval on a conveyor line. It can be understood that the actuator can be set at different initial positions as needed, and the actuator has a movable range. For example, the coordinates of the movable range of the actuator are [Xb, Xb'], and the second process interval obtained on the virtual axis is [Xb+nXC, Xb'+nXC].
[0088] Specifically, a set of multiple process interval segments is obtained, that is, a process interval; for example, the first process interval segment is obtained as [Xa+nXC, Xa'+nXC], and the second process interval segment is obtained as [Xb+nXC, Xb'+nXC]. The process interval can be max{first process interval segment, second process interval segment, first process interval segment+second process interval segment}. Multiple process interval segments may have overlapping areas and may be the same or contain each other. The collection of each process interval segment is taken as a process interval.
[0089] It can be understood that one or more actuators can be set on a conveyor line body. The multiple actuators can be the same type of actuators or different types of actuators. Depending on the set process flow, the multiple actuators can move in parallel or move one after another in a given order.
[0090] If there are multiple actuators on the conveyor line, and multiple actuators do not move in parallel in each process interval, it includes:
[0091] S402, each process zone on the conveyor line corresponds to the same virtual axis.
[0092] Specifically, the actuators in each process section on the same conveyor line execute processes in sequence, and therefore, there is no need to divide different virtual axes for different process sections.
[0093] If there are multiple actuators on the conveyor line, and multiple actuators move in parallel in each process interval, it includes:
[0094] S403, determining each process zone on the conveyor line as a virtual axis.
[0095] Specifically, the actuators on each process section on the same conveyor line execute the process synchronously. In order to realize the separate control of different process sections, different virtual axes are respectively divided for different process sections.
[0096] Optionally, if multiple process intervals in one process interval overlap, the following situations may be included:
[0097] (1) The processes of multiple process sections are executed sequentially, and the same virtual axis is defined for different process sections;
[0098] (2) The processes of multiple process sections are executed synchronously, and a virtual axis is determined according to each process section.
[0099] Optionally, for a conveyor line body connecting two adjacent process intervals along the running direction of the conveyor line body, a virtual axis of the previous process interval or a virtual axis of the next process interval is allocated to the conveyor line body connecting the two adjacent process intervals.
[0100] Specifically, a conveyor line can be provided with multiple different process zones, with transition sections between the multiple process zones. The transition sections are only used to drive the mover to transport the workpiece. Therefore, the transition section does not involve the process and is only designed for the drive of the mover and the transportation of the workpiece. Therefore, there is no need to set up an additional virtual axis for the transition section, and the virtual axis of the previous process zone or the next process zone can be used.
[0101] Optionally, if only one actuator is provided on the conveyor line body, only one virtual axis is provided for the conveyor line body and the transport section.
[0102] Furthermore, after defining the virtual axis, the stator position is acquired in real time through the stator sensor, and the stator position is mapped on the virtual axis, thereby achieving real-time positioning and control of the stator.
[0103] The embodiment of the present application sets virtual axes, each virtual axis corresponds to a process interval. When the number of process intervals is one, only a single virtual axis needs to be set to achieve the mapping of the mover position, that is, the mover located in the process interval performs interpolation motion, and the mover located outside the process interval moves normally. Even if the position of the process interval may change, since the mover performs non-parallel interpolation motion, the interpolation motion of the mover at different positions can be achieved by adjusting the control program at different positions of the virtual axis. When the number of process intervals is multiple, if the actuator does not perform parallel motion, it is only necessary to define the same virtual axis for each process interval. If multiple actuators move in parallel, virtual axes are defined separately according to each process interval, and the number of virtual axes added is small. At the same time, each process interval corresponds to an independent virtual axis, thereby improving computing efficiency.
[0104] See next Figure 5 , which is a flow chart of an interpolation processing method provided in an embodiment of the present application. Figure 5 As shown, after obtaining the preset interpolation stroke of the process to be executed in S202, the interpolation processing method may include the following steps:
[0105] S501, decomposing a preset interpolation stroke into a plurality of sub-preset interpolation strokes, outputting the number of sub-preset interpolation strokes, and the interpolation stroke direction and interpolation stroke distance of each sub-preset interpolation stroke; and dividing the sub-preset interpolation strokes based on the interpolation stroke direction corresponding to each sub-preset interpolation stroke.
[0106] Specifically, the preset interpolation stroke is decomposed into multiple sub-preset interpolation strokes according to the interpolation operation, each sub-preset interpolation stroke includes an interpolation stroke direction and an interpolation stroke distance, and according to the interpolation stroke direction of each sub-preset interpolation stroke, each sub-preset interpolation stroke is divided into a first sub-preset interpolation stroke, a second sub-preset interpolation stroke...the nth sub-preset interpolation stroke.
[0107] S502, selecting at least one real axis and any one virtual axis with the same interpolation stroke direction as that corresponding to each sub-preset interpolation stroke within the process interval of the process to be executed, wherein the sum of the number of virtual axes and real axes is equal to the number of sub-preset interpolation strokes.
[0108] Optionally, the sub-preset interpolation stroke with the largest interpolation stroke distance among the sub-preset interpolation strokes in the same direction as the conveyor line running direction of the virtual axis in the process interval of the process to be executed is obtained, and the sub-preset interpolation stroke with the largest interpolation stroke distance is allocated to the virtual axis.
[0109] Preferably, the mover on the conveyor body is driven to the initial position of the sub-preset interpolation stroke matched by the virtual axis; the actuator is driven to the initial position of the sub-preset interpolation stroke matched by the real axis. The mover on the conveyor body moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matched by the virtual axis; the actuator moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matched by the real axis.
[0110] In the embodiment of the present application, the interpolation stroke direction of the sub-preset interpolation stroke is matched with the real axis and the virtual axis respectively, thereby ensuring that each sub-preset interpolation program corresponds to a real axis or a virtual axis, and converting the complex stroke of the process curve into multiple simple sub-preset interpolation strokes, which can effectively simplify the motion trajectory of the actuator and the mover. After the sub-preset interpolation program is assigned to the real axis and the virtual axis, the actuator and the mover are driven to the process initial position defined by the sub-preset interpolation stroke, and the actuator and the mover are reset first, and then the process flow is executed, which is conducive to reducing process errors and improving processing accuracy.
[0111] In another embodiment provided by the present application, S302 further includes:
[0112] Obtain the preset interpolation stroke of the process to be executed, and match the preset interpolation stroke with the corresponding real axis or virtual axis through the host computer PLC.
[0113] It can be understood that a single mover on the conveyor line body can be regarded as a servo axis, and the servo axis corresponding to the mover can periodically receive external commands and move according to the input position instructions.
[0114] Optionally, the virtual axis corresponding to the conveyor line body and the servo axes corresponding to each mover on the conveyor line body can be regarded as an axis group. The upper computer PLC can issue control instructions to the same axis group, and the position instructions of the virtual axis can be periodically sent to the servo axis corresponding to the mover, thereby completing the interpolation motion.
[0115] For example, taking circular interpolation motion as an example, the curve of the process to be executed is divided into multiple sub-strokes along the X-axis and the Y-axis, and the sub-strokes along the X-axis and the Y-axis are allocated by the host computer PLC, and the corresponding sub-preset interpolation strokes are allocated to the real axis and the virtual axis. That is, the host computer PLC allocates the preset interpolation strokes into program A and program B, and program A and program B correspond to the X-axis motion and the Y-axis motion respectively, and program A is allocated to the motor stroke corresponding to the real axis, and program B is allocated to the conveyor line body corresponding to the virtual axis, and then allocated to the servo axis of the mover in the axis group corresponding to the virtual axis; the real axis obtains and executes program A through the motor encoder, and the virtual axis obtains and executes program B through the controller.
[0116] In the embodiment of the present application, by defining the virtual axis and the servo axis as an axis group, the control instructions are issued to the same axis group through the host computer PLC, thereby ensuring the consistency of the host computer PLC clock and improving the processing accuracy; by allocating the interpolation program through the host computer PLC, the computing power of the host computer PLC is fully utilized, and a variety of interpolation algorithms can be supported, which can improve the diversity of processes adapted to the conveying system.
[0117] The following are device embodiments of the present application, which can be used to execute the method embodiments of the present application. For details not disclosed in the device embodiments of the present application, please refer to the method embodiments of the present application.
[0118] See next Figure 6 , is a schematic diagram of the structure of an interpolation processing device provided by an exemplary embodiment of the present application. The device can be implemented as all or part of a terminal through software, hardware, or a combination of both. The interpolation processing device 6 in the embodiment of the present application includes a control module 61, an interpolation allocation module 62, and an execution module 63, wherein:
[0119] A control module 61, for determining a real axis based on each motor stroke of an actuator in the processing and conveying system, and for determining a virtual axis based on each conveying line in the processing and conveying system;
[0120] An interpolation allocation module 62 is used to obtain a preset interpolation stroke of a process to be executed, and obtain a real axis and a virtual axis matching the preset interpolation stroke;
[0121] The execution module 63 is used to execute the process to be executed through the conveyor line body corresponding to the virtual axis matching the preset interpolation stroke and the motor stroke corresponding to the real axis matching the preset interpolation stroke.
[0122] Specifically, the control module 61 is further used to obtain the motor ID of each motor in the actuator and the motor stroke of the motor corresponding to the motor ID, and determine the motor stroke of each motor corresponding to the motor ID as a real axis.
[0123] Specifically, the control module 61 is also used to obtain the conveyor line body ID of each conveyor line body and the conveyor line running direction of the conveyor line body corresponding to the conveyor line body ID, and determine the conveyor line running direction of each conveyor line body corresponding to the conveyor line body ID as a virtual axis.
[0124] Specifically, the control module 61 is also used to obtain a virtual axis corresponding to a conveyor line body matching the actuator based on the position information of the actuator; obtain the motion stroke information of the actuator, and obtain at least one process interval segment mapped by the actuator on the virtual axis based on the transport stroke information; and divide the process interval according to at least one of the process interval segments.
[0125] Optionally, if the conveyor line has a plurality of the actuators, and the plurality of actuators do not move in parallel in each process interval, the control module 61 corresponds each process interval on the conveyor line to the same virtual axis.
[0126] Optionally, if the conveyor line body has a plurality of the actuators, and the plurality of actuators move in parallel in each process interval, the control module 61 determines each process interval on the conveyor line body as a virtual axis.
[0127] Optionally, if the process interval includes a plurality of process interval segments, and the actuators in the plurality of process interval segments move in parallel, the control module 61 determines each process interval segment in the process interval as a virtual axis.
[0128] Optionally, for a conveyor line connecting two adjacent process intervals along the running direction of the conveyor line, the control module 61 allocates a virtual axis of the previous process interval or a virtual axis of the next process interval to the conveyor line connecting the two adjacent process intervals.
[0129] Specifically, the interpolation allocation module 62 is further used to decompose the preset interpolation stroke into a plurality of sub-preset interpolation strokes, and output the number of the sub-preset interpolation strokes, and the interpolation stroke direction and interpolation stroke distance of each of the sub-preset interpolation strokes;
[0130] The sub-preset interpolation strokes are divided based on the interpolation stroke direction corresponding to each sub-preset interpolation stroke.
[0131] Specifically, the interpolation allocation module 62 is also used to select at least one real axis and any one virtual axis with the same interpolation stroke direction as each sub-preset interpolation stroke within the process interval of the process to be executed, and the sum of the number of virtual axes and real axes is equal to the number of sub-preset interpolation strokes.
[0132] Optionally, the interpolation allocation module 62 is also used to obtain the sub-preset interpolation stroke with the largest interpolation stroke distance among the sub-preset interpolation strokes with the same running direction as the conveyor line body of the virtual axis in the process interval of the process to be executed, and allocate the sub-preset interpolation stroke with the largest interpolation stroke distance to the virtual axis.
[0133] Preferably, the execution module 63 is also used to drive the mover on the conveyor line body to the initial position of the sub-preset interpolation stroke matching the virtual axis; drive the actuator to the initial position of the sub-preset interpolation stroke matching the real axis; the mover moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matching the virtual axis; the actuator moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matching the real axis.
[0134] Please refer to the following Figure 7 The present application also provides a processing and conveying system, including:
[0135] The interpolation processing device provided in the embodiment of the present application;
[0136] A conveyor line body, the conveyor line body is used to drive a mover to execute the process to be executed;
[0137] An actuator is arranged beside the conveyor line body and executes the process to be executed by driving a motor.
[0138] Specifically, the interpolation processing device determines the real axis based on each motor stroke of the actuator in the processing and conveying system, and the interpolation processing device determines the virtual axis based on each conveying line in the processing and conveying system;
[0139] The interpolation processing device obtains a preset interpolation stroke of the process to be executed, and obtains a real axis and a virtual axis matching the preset interpolation stroke;
[0140] The interpolation processing device executes the process to be executed through the conveyor line body corresponding to the virtual axis matching the preset interpolation stroke and the motor stroke corresponding to the real axis matching the preset interpolation stroke.
[0141] Specifically, the interpolation processing device obtains each motor stroke of the actuator through the PLC host computer, obtains information on the conveyor line through the controller, controls the actuator through the PLC host computer, and controls the conveyor line through the controller to drive the mover to move.
[0142] The embodiment of the present application also provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the steps of the method of any of the above embodiments are implemented. The computer-readable storage medium may include, but is not limited to, any type of disk, including a floppy disk, an optical disk, a DVD, a CD-ROM, a micro drive, and a magneto-optical disk, a ROM, a RAM, an EPROM, an EEPROM, a DRAM, a VRAM, a flash memory device, a magnetic card or an optical card, a nanosystem (including a molecular memory IC), or any type of medium or device suitable for storing instructions and / or data.
[0143] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware. Based on this understanding, the above technical solution can be essentially or in other words, the part that contributes to the relevant technology can be embodied in the form of a software product, which can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiment.
[0144] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. An interpolation processing method, applied to a processing and conveying system, characterized in that: include: Determine the real axis based on each motor stroke of the actuator in the processing and conveying system, and determine the virtual axis based on each conveying line in the processing and conveying system; Obtaining a preset interpolation stroke of a process to be executed, and obtaining a real axis and a virtual axis matching the preset interpolation stroke; The process to be executed is executed by a conveyor line body corresponding to a virtual axis matching the preset interpolation stroke and a motor stroke corresponding to a real axis matching the preset interpolation stroke.
2. The interpolation processing method according to claim 1, characterized in that: The real axis is determined based on each motor stroke of the actuator in the processing and conveying system, including: The motor ID of each motor in the actuator and the motor stroke of the motor corresponding to the motor ID are obtained, and the motor stroke of each motor corresponding to the motor ID is determined as a real axis.
3. The interpolation processing method according to claim 1, characterized in that: The step of respectively determining virtual axes based on each conveying line in the processing and conveying system comprises: The conveyor line body ID of each conveyor line body and the conveyor line running direction of the conveyor line body corresponding to the conveyor line body ID are obtained, and the conveyor line running direction of each conveyor line body corresponding to the conveyor line body ID is determined as a virtual axis.
4. The interpolation processing method according to claim 1, characterized in that: After respectively determining the real axis based on each motor stroke of the actuator in the processing and conveying system and respectively determining the virtual axis based on each conveying line in the processing and conveying system, the method further includes: Based on the position information of the actuator, a virtual axis corresponding to the conveyor line body matched with the actuator is obtained; Acquire motion stroke information of the actuator, and acquire at least one process interval segment mapped by the actuator on the virtual axis based on the motion stroke information; The process interval is divided according to at least one of the process interval segments.
5. The interpolation processing method according to claim 4, characterized in that: After the virtual axes are determined based on each conveying line in the processing and conveying system, the method further includes: If the conveyor line body has a plurality of the actuators, and the plurality of the actuators do not move in parallel in each process interval, then each process interval on the conveyor line body corresponds to the same virtual axis.
6. The interpolation processing method according to claim 4, characterized in that: After the virtual axes are determined based on each conveying line in the processing and conveying system, the method further includes: If the conveyor line body is provided with a plurality of the actuators, and the plurality of the actuators move in parallel in each process interval, each process interval on the conveyor line body is respectively determined as a virtual axis.
7. The interpolation processing method according to claim 6, characterized in that: After the virtual axes are determined based on each conveying line in the processing and conveying system, the method further includes: If the process interval includes a plurality of process interval segments, and the actuators in the plurality of process interval segments move in parallel, each process interval segment in the process interval is respectively determined as a virtual axis.
8. The interpolation processing method according to claim 4, characterized in that: After the virtual axes are determined based on each conveying line in the processing and conveying system, the method further includes: For a conveyor line body connecting two adjacent process intervals along the running direction of the conveyor line body, a virtual axis of the previous process interval or a virtual axis of the next process interval is allocated to the conveyor line body connecting the two adjacent process intervals.
9. The interpolation processing method according to claim 1, characterized in that: After obtaining the preset interpolation stroke of the process to be executed, the method further includes: Decomposing the preset interpolation stroke into a plurality of sub-preset interpolation strokes, and outputting the number of the sub-preset interpolation strokes, and the interpolation stroke direction and interpolation stroke distance of each of the sub-preset interpolation strokes; The sub-preset interpolation strokes are divided based on the interpolation stroke direction corresponding to each of the sub-preset interpolation strokes.
10. The interpolation processing method according to claim 9, characterized in that: The step of acquiring a real axis and a virtual axis matching the preset interpolation stroke includes: At least one real axis and any one virtual axis having the same interpolation stroke direction as that corresponding to each of the sub-preset interpolation strokes within the process interval of the process to be executed are selected, and the sum of the number of virtual axes and real axes is equal to the number of the sub-preset interpolation strokes.
11. The interpolation processing method according to claim 9, characterized in that: The step of acquiring a real axis and a virtual axis matching the preset interpolation stroke includes: Obtain the sub-preset interpolation stroke with the largest interpolation stroke distance among the sub-preset interpolation strokes in the same direction as the conveyor line running direction of the virtual axis in the process interval of the process to be executed, and allocate the sub-preset interpolation stroke with the largest interpolation stroke distance to the virtual axis.
12. The interpolation processing method according to claim 10, characterized in that: After acquiring the real axis and the virtual axis matching the preset interpolation stroke, the method further includes: The mover on the conveyor body is driven to the initial position of the sub-preset interpolation stroke matched by the virtual axis; the actuator is driven to the initial position of the sub-preset interpolation stroke matched by the real axis; The mover moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matched by the virtual axis; the actuator moves based on the interpolation stroke direction and interpolation stroke distance of the sub-preset interpolation stroke matched by the real axis.
13. An interpolation processing device, applied to a processing and conveying system, characterized in that: include: A control module, used to determine the real axis based on each motor stroke of the actuator in the processing and conveying system, and to determine the virtual axis based on each conveying line in the processing and conveying system; An interpolation allocation module, used to obtain a preset interpolation stroke of a process to be executed, and to obtain a real axis and a virtual axis matching the preset interpolation stroke; An execution module is used to execute the process to be executed through a conveyor line body corresponding to a virtual axis matching the preset interpolation stroke and a motor stroke corresponding to a real axis matching the preset interpolation stroke.
14. A processing and conveying system, characterized in that: include: The interpolation processing device as claimed in claim 13; A conveyor line body, the conveyor line body is used to drive a mover to execute the process to be executed; An actuator is arranged beside the conveyor line body and executes the process to be executed by driving a motor.
15. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 12 are implemented.
Citation Information
Patent Citations
Numerical control device
CN104603702A
A linear transmission system and a control device thereof, and a multi-mover cooperative control system
CN109217767A