A multi-manipulator collaborative multi-level distribution processing method and system
By obtaining real-time position data and object position data of parallel robot conveyor belts, combining visual system and kinematic analysis, multiple robot control instructions are generated, and the real-time, robustness and portability of parallel robot objects are solved. Problem, improving the grab accuracy and production efficiency.
Patent Information
- Application Number
- CN202410961311.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-18
- Publication Date
- 2024-12-20
- Estimated Expiration
- 2044-07-18
AI Technical Summary
Existing parallel robots have poor real-time, robustness and portability in object sorting, resulting in low productivity and economic losses.
By obtaining real-time position data of conveyor belts and object position data, combining visual system and kinematic analysis, multi-manipulator control instructions are generated to realize real-time tracking of objects and multi-level allocation processing.
It improves object grabbing accuracy and production efficiency, shortens production cycle, and enhances system stability and portability.
Smart Images

Figure CN118493410B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of intelligent control technology, and in particular to a multi-manipulator collaborative multi-level distribution processing method and system. Background Art
[0002] In recent years, with the rapid development of technologies such as artificial intelligence, 5G, industrial Internet, and sensors, robotics has also developed rapidly and well. Parallel robots have broken through the limitations of serial robots and, with their advantages in speed, precision, and rigidity, their applications in food, medicine, electronics, daily chemicals, and other fields have been continuously expanded.
[0003] In industrial production, the failure to ensure the real-time grasping of objects will cause material leakage or grasping delays, affecting the speed of the production line and causing economic losses. In actual production, the environment is complex and changeable, and the stability of the control system in complex environments should be guaranteed as much as possible. The portability of a system determines the breadth of the control system's application field. However, the existing object sorting methods currently operated by parallel robots have poor real-time, robustness, and portability. Summary of the invention
[0004] In view of this, the purpose of the present invention is to provide a multi-manipulator collaborative multi-level distribution processing method and system to solve the problems of poor real-time, robustness and portability of the existing object sorting method operated by parallel robots in the prior art.
[0005] According to a first aspect of an embodiment of the present invention, a multi-manipulator collaborative multi-level allocation processing method is provided, comprising:
[0006] Get real-time conveyor belt position data and conveyor belt speed while the conveyor belt is running;
[0007] Determine the conveyor belt position data when the trigger signal is triggered according to the real-time conveyor belt position data;
[0008] When the trigger signal is triggered, the position data of the object on the conveyor belt is obtained;
[0009] Determining the real-time position data of the object on the conveyor belt according to the object position data and the conveyor belt speed;
[0010] Acquire user configuration data, and generate control instructions for multiple manipulators according to the user configuration data;
[0011] According to the real-time position data of the object on the conveyor belt and the control instruction, multiple manipulators are controlled to grab the object.
[0012] Preferably, the step of obtaining real-time conveyor belt position data and conveyor belt speed during the operation of the conveyor belt comprises:
[0013] Obtain a code value processed by an encoder pre-installed on a conveyor belt drive shaft;
[0014] The resolution is calculated based on the code value, and the real-time conveyor belt position data and conveyor belt speed during the operation of the conveyor belt are obtained based on the resolution.
[0015] Preferably, obtaining the position data of the object on the conveyor belt includes:
[0016] Acquire a photographic image obtained by a camera pre-installed above the conveyor belt when a trigger signal is triggered;
[0017] Obtaining position data of the object in a position coordinate system under the camera vision according to the photographed image;
[0018] According to the pre-stored relationship between the position coordinate system under the camera vision and the world coordinate system, the object position data of the object in the world coordinate system is obtained.
[0019] Preferably, the method further comprises:
[0020] After acquiring a plurality of photographic images, determining whether objects in the plurality of photographic images are the same object according to the conveyor belt speed;
[0021] If so, a set of position data of the object is retained, and the remaining sets of position data of the object are discarded.
[0022] Preferably, the method further comprises:
[0023] After acquiring the photographic image, determining whether there is a stacked material object in the photographic image;
[0024] If so, multiple manipulators are controlled to grab the stacked objects according to pre-configured stacking processing instructions.
[0025] Preferably, generating a plurality of control instructions for manipulators according to the user configuration data includes:
[0026] Allocate the grasping ratio of each robot according to the pre-divided data in the user configuration data;
[0027] A control instruction for each manipulator is generated according to the grasping ratio.
[0028] Preferably, the method further comprises:
[0029] Sort the object positions according to the real-time position data of each object;
[0030] Determine the priority grasping condition of each manipulator according to the condition control data in the user configuration data;
[0031] According to the priority grasping conditions and the object position sorting, control instructions for each manipulator are generated.
[0032] Preferably, the method further comprises:
[0033] When controlling the manipulator to grasp, determining whether the object exceeds the grasping limit of the manipulator;
[0034] If so, an out-of-bounds diversion instruction is generated to enable the remaining manipulators behind the manipulator to grab the material.
[0035] According to a second aspect of an embodiment of the present invention, there is provided a multi-manipulator collaborative system, comprising:
[0036] processors, encoders, cameras, and multiple manipulators;
[0037] The encoder is installed on the conveyor belt drive shaft, and the camera is installed above the conveyor belt;
[0038] The processor obtains the real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running through the code value obtained by the encoder;
[0039] When a trigger signal is triggered, conveyor belt position data is obtained according to the real-time conveyor belt position data, and at the same time, the processor obtains object position data on the conveyor belt through the camera;
[0040] The processor obtains the real-time position data of the object on the conveyor belt according to the object position data and the conveyor belt speed; obtains the user configuration data, and generates control instructions for multiple manipulators according to the user configuration data;
[0041] The manipulator grabs the object according to the real-time position data of the object on the conveyor belt and the control instruction.
[0042] The technical solution provided by the embodiments of the present invention may have the following beneficial effects:
[0043] It is understandable that the technical solution shown in the present invention can obtain the real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running; obtain the conveyor belt position data when the trigger signal is triggered based on the real-time conveyor belt position data; when the trigger signal is triggered, obtain the object position data on the conveyor belt; obtain the real-time position data of the object on the conveyor belt based on the object position data and the conveyor belt speed; obtain user configuration data, and generate control instructions for multiple manipulators based on the user configuration data; control multiple manipulators to grasp objects based on the real-time position data and control instructions of the object on the conveyor belt. It is understandable that the technical solution shown in the present invention combines the visual system on the basis of kinematic analysis and trajectory planning, and can quickly track objects in real time, realize multi-level allocation of objects, improve grasping accuracy, and thus further improve production efficiency and shorten production cycle.
[0044] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0046] Figure 1 is a schematic diagram of steps of a multi-manipulator collaborative multi-stage allocation processing method according to an exemplary embodiment;
[0047] Figure 2 is a schematic diagram of a parallel robot working according to an exemplary embodiment;
[0048] Figure 3 is a flowchart of obtaining object position data according to an exemplary embodiment;
[0049] Figure 4 is a flowchart of the overall design of a program according to an exemplary embodiment;
[0050] Figure 5 is a schematic diagram of a filtering error situation according to an exemplary embodiment;
[0051] Figure 6 is a schematic diagram showing a stacking situation of objects according to an exemplary embodiment;
[0052] Figure 7 is a schematic diagram of error time according to an exemplary embodiment;
[0053] Figure 8 is a schematic diagram of object allocation according to an exemplary embodiment;
[0054] Fig. 9is a simplified diagram of sorting an object pool according to an exemplary embodiment. DETAILED DESCRIPTION
[0055] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Instead, they are merely examples of devices and methods consistent with some aspects of the present invention as detailed in the appended claims.
[0056] With the rapid development of the manufacturing industry, people's requirements for automation are gradually increasing, and traditional methods are constantly challenged, especially in food packaging, placement and packing. The object grabbing and packing process is simple to operate and has high repetitiveness. The cost of manual completion is too high, and it is very easy to have insufficient or wrong loading. In order to avoid these problems, industrial robots usually design a complete object system processing flow to complete the grabbing and packing process at high speed and precision.
[0057] The first embodiment of the present invention is as follows:
[0058] Figure 1 is a schematic diagram of the steps of a multi-manipulator collaborative multi-level allocation processing method according to an exemplary embodiment, see Figure 1 , a multi-manipulator collaborative multi-level allocation processing method is provided, comprising:
[0059] Step S11, obtaining real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running;
[0060] Step S12, obtaining the conveyor belt position data when the trigger signal is triggered according to the real-time conveyor belt position data;
[0061] Step S13: when the trigger signal is triggered, obtain the position data of the object on the conveyor belt;
[0062] Step S14, obtaining the real-time position data of the object on the conveyor belt according to the object position data and the conveyor belt speed;
[0063] Step S15, obtaining user configuration data, and generating control instructions for multiple manipulators according to the user configuration data;
[0064] Step S16: Control multiple manipulators to grab the objects according to the real-time position data of the objects on the conveyor belt and the control instructions.
[0065] It can be understood that the technical solution shown in this embodiment relates to a multi-manipulator collaborative multi-level distribution processing method and system, which can obtain the real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running; obtain the conveyor belt position data when the trigger signal is triggered based on the real-time conveyor belt position data; when the trigger signal is triggered, obtain the object position data on the conveyor belt; obtain the real-time position data of the object on the conveyor belt based on the object position data and the conveyor belt speed; obtain user configuration data, and generate control instructions for multiple manipulators based on the user configuration data; control multiple manipulators to grab objects based on the real-time position data and control instructions of the object on the conveyor belt. It can be understood that the technical solution shown in this embodiment, based on kinematic analysis and trajectory planning, combines the visual system to quickly track objects in real time, realize multi-level distribution of objects, improve the grabbing accuracy, thereby further improving production efficiency and shortening the production cycle.
[0066] In practice, the sorting system based on parallel robots mainly includes: industrial control computers, industrial cameras, image acquisition cards, motion controllers, grippers and parallel robots, etc. The entire system adopts a two-layer control structure; the upper computer is based on the industrial computer, which collects object images through cameras and uses image processing technology to locate and track food and automatically grade it.
[0067] Figure 2 is a schematic diagram of a parallel robot operation according to an exemplary embodiment. Figure 2 In the video, the conveyor belt transports objects from the left to the right. The squares on the conveyor belt represent individual objects. Figure 2 The conveyor belt is divided into an identification area, a working area and a waiting area. A camera is installed above the identification area, an encoder is installed on the conveyor belt drive shaft, and a parallel robot (manipulator) is installed on one side of the working area. The parallel robot (manipulator) is driven by an external rotation / movement pair and is a parallel robot (also called a parallel manipulator) with a parallelogram branch chain. The drive device can be arranged on a static platform (frame), and the slave arm is mostly made of lightweight thin rods. Therefore, the end moving platform can obtain a very high movement speed and acceleration, which is particularly suitable for sorting, handling, grabbing and placing of materials on high-speed logistics production lines.
[0068] Regarding the process of obtaining the position data of objects on the conveyor belt, such as Figure 3 shown.
[0069] It should be noted that if the above method is applied to Figure 2 In the system shown in FIG. 1 , in step S11, obtaining the real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running includes:
[0070] Obtain a code value processed by an encoder pre-installed on a conveyor belt drive shaft;
[0071] The resolution is calculated based on the code value, and the real-time conveyor belt position data and conveyor belt speed during the operation of the conveyor belt are obtained based on the resolution.
[0072] In specific practice, Figure 3 On the left side, the code value is obtained through the processing of the encoder, and then the resolution is calculated based on the code value. The real-time conveyor belt position data during the operation can be obtained through the resolution. In actual applications, when the conveyor belt moves a certain distance to the right, it will drive the encoder to rotate, so that the encoder generates a code value, which can then be processed through this principle to obtain the corresponding data.
[0073] When the trigger signal is triggered, while the camera is taking pictures, the conveyor belt position data at the time of taking pictures can be obtained according to the real-time conveyor belt position data. It can be understood that the trigger signal is triggered periodically.
[0074] After obtaining the conveyor belt position data and the conveyor belt data when taking pictures, the movement of the conveyor belt can be inferred. By combining it with the initial position of the object, the movement trajectory of the object can be obtained.
[0075] It should be noted that if the above method is applied to Figure 2 The system shown in FIG. 1A , in step S13 , obtains the position data of the object on the conveyor belt, including:
[0076] Acquire a photographic image obtained by a camera pre-installed above the conveyor belt when a trigger signal is triggered;
[0077] Obtaining position data of the object in a position coordinate system under the camera vision according to the photographed image;
[0078] According to the pre-stored relationship between the position coordinate system under the camera vision and the world coordinate system, the object position data of the object in the world coordinate system is obtained.
[0079] In specific practice, Figure 3 On the right side, whenever a trigger signal is triggered, the camera will take a picture to obtain a photographic image. In the captured image, if there is an object on the conveyor belt, the controller can obtain the position data of the object in the position coordinate system under the camera vision according to the photographic image, and then convert the coordinate system, and obtain the object position data in the world coordinate system according to the pre-stored relationship between the position coordinate system under the camera vision and the world coordinate system. In this way, the spatial data of the object can be obtained. By combining the conveyor belt speed representing the time data with the spatial data, the actual motion trajectory of the object can be obtained.
[0080] Figure 4is a flowchart of the overall design of the program according to an exemplary embodiment, see Figure 4 , in the entire operation process, it also includes functions such as filtering errors, object quantity calculation, stacking material screening, workload pre-diversion and position sorting.
[0081] It should be noted that the method described above also includes a filtering error function:
[0082] After acquiring a plurality of photographic images, determining whether objects in the plurality of photographic images are the same object according to the conveyor belt speed;
[0083] If so, a set of position data of the object is retained, and the remaining sets of position data of the object are discarded.
[0084] In practice, as the object moves on the conveyor belt and the camera takes pictures at a certain periodic frequency, the following may occur: Figure 5 The situation shown, Figure 5 The situation shown is: the object moves on the conveyor belt, and the position of the object in the first photo taken by the camera is as follows Figure 5 The second photo taken by the camera shows the object as shown in the square on the left side of the conveyor belt. Figure 5 As shown in the square on the right side of the conveyor belt, it can be seen that the object is photographed twice. If error screening is not performed, the same object will be regarded as two objects in the same position, affecting the subsequent grasping efficiency of the robot. Therefore, it is determined whether the objects in the multiple photographed images are the same object based on the conveyor belt speed. If so, one set of position data of the object is retained, and the remaining sets of position data of the object are discarded.
[0085] Preferably, the object quantity calculation operation is that the controller sequentially calculates the number of all objects that pass by according to the photographs obtained.
[0086] It should be noted that the method described above also includes a stacking material screening function:
[0087] After acquiring the photographic image, determining whether there is a stacked material object in the photographic image;
[0088] If so, multiple manipulators are controlled to grab the stacked objects according to pre-configured stacking processing instructions.
[0089] In actual practice, the stacking of objects is shown in Figure 6 As shown in the figure, if stacking occurs, since the manipulator can only grab one object at a time, it is necessary to control multiple manipulators to grab the stacked objects according to the pre-configured stacking processing instructions. In actual applications, since stacking is relatively rare, in order to ensure that the manipulator does not fail, the manipulator can be set not to handle the stacking. The manipulator can also be set to grab only one object in the stack each time.
[0090] On the other hand, the error Figure 7 FIG. 1 is a schematic diagram of error time according to an exemplary embodiment. In actual applications, there is a time difference in processing object information from object recognition to sending state information. These time differences will cause deviations in the calculation of position information in the actual object information. Figure 7 In the figure, t1 represents the communication time after the object is recognized, and t2 represents the time when the robot control device receives the object information. The reason for this communication error is that it takes a certain amount of time for the device to send and process. This error will affect the grasping accuracy of the robot arm and needs to be processed accordingly.
[0091] It should be noted that it also includes the workload pre-distribution function:
[0092] In step S15, if the workload pre-diversion function is used, a plurality of control instructions for manipulators are generated according to the user configuration data, including:
[0093] Allocate the grasping ratio of each robot according to the pre-divided data in the user configuration data;
[0094] A control instruction for each manipulator is generated according to the grasping ratio.
[0095] In practical applications, see Figure 8 ,When objects are diverted, different diversion types can be selected according to ,requirements, including proportional diversion, diversion by maximum capacity and diversion by group.
[0096] If proportional diversion is used, the number of objects can be grabbed according to the set ratio based on the number of objects on the conveyor belt. For example, there are 100 materials at the front end, and two manipulators are sorting and grabbing on the conveyor belt. The user sets the sorting ratio of the first manipulator to 40% and the second manipulator to 60%. In this case, the first manipulator grabs 40 objects and the second manipulator grabs 60 objects.
[0097] If the maximum capacity is used, the robot will grab the object at its maximum capacity according to its grabbing speed. If the maximum capacity is set to allocate the first robot, the robot will grab the material according to its maximum grabbing capacity. Objects that cannot be grabbed will be allocated to the second robot for grabbing. If there are 100 materials at the front end and the maximum grabbing capacity of the No. 1 robot is 80, the remaining 20 will be diverted to the No. 2 robot for processing.
[0098] If the flow is divided into groups, the objects can be grouped according to the rules and a part of each group of objects can be grabbed. The object information transmitted by the system can include the object number (for example, by color or number), and the manipulator can allocate and grab according to the object number. For example, there are two objects numbered 1 and 2. Material No. 1 is allocated to machine No. 1 for grabbing, and material No. 2 is allocated to machine No. 2. Then machine No. 1 only grabs object No. 1, and machine No. 2 only grabs object No. 2.
[0099] It should be noted that the method described also includes a position sorting function, and can control the manipulator to give priority to grabbing certain materials:
[0100] Sort the object positions according to the real-time position data of each object;
[0101] Determine the priority grasping condition of each manipulator according to the condition control data in the user configuration data;
[0102] According to the priority grasping conditions and the object position sorting, control instructions for each manipulator are generated.
[0103] In specific practice, the object grabbing sorting can also be configured by the user according to the needs. This embodiment sets three sorting cases. Assume that the conveyor belt stops at this moment. Fig. 9 ,exist Fig. 9 The time sequence of entering the object pool is: t1, t2, t3, t4, t5, t6.
[0104] In the first case, only the first one to enter is captured, regardless of whether it is in the working area or not. The capture order is: t1, t2 (t3 has not entered the working area, so the capture is suspended).
[0105] This type of situation is for grasping situations that rely on camera recognition order, that is, no matter how far or near the object is relative to the robot, the grasping order of the material must be consistent with the position of the information sent by the vision (for example, if there are assembly process requirements for objects 1, 2, 3, 4, the grasping order must be guaranteed to be 1, 2, 3, 4).
[0106] In the second case, the first one to enter the working area is captured. The capture order is: t1, t2, t4.
[0107] This type of situation is suitable for situations where there are requirements for the order of the workspace, that is, regardless of the physical distance of the object from the robot, only the objects that can be processed first in the workspace are grasped first. In the case of unconventional work areas (such as inclined surfaces), the efficiency is relatively high.
[0108] In the third case, only the frontmost object is grasped. The grasping order is: t2, t1, t4.
[0109] This type of situation is suitable for situations where there is no requirement for the order in which objects are grasped. Objects are sorted according to their relative distance from the manipulator, and objects closest to the manipulator are grasped first. This ensures that the robot's grasping efficiency is the highest.
[0110] It should be noted that the method described above further includes:
[0111] When controlling the manipulator to grasp, determining whether the object exceeds the grasping limit of the manipulator;
[0112] If so, an out-of-bounds diversion instruction is generated to enable the remaining manipulators behind the manipulator to grab the material.
[0113] In actual practice, if the first robot receives an instruction to grab a certain material, but it is beyond the working area of the first robot, in order to allow the subsequent robot to continue to complete the grabbing work, it needs to be diverted again so that the second robot can grab the object.
[0114] The second embodiment of the present invention is as follows:
[0115] According to a second aspect of an embodiment of the present invention, there is provided a multi-manipulator collaborative system, comprising:
[0116] processors, encoders, cameras, and multiple manipulators;
[0117] The encoder is installed on the conveyor belt drive shaft, and the camera is installed above the conveyor belt;
[0118] The processor obtains the real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running through the code value obtained by the encoder;
[0119] When a trigger signal is triggered, conveyor belt position data is obtained according to the real-time conveyor belt position data, and at the same time, the processor obtains object position data on the conveyor belt through the camera;
[0120] The processor obtains the real-time position data of the object on the conveyor belt according to the object position data and the conveyor belt speed; obtains the user configuration data, and generates control instructions for multiple manipulators according to the user configuration data;
[0121] The manipulator grabs the object according to the real-time position data of the object on the conveyor belt and the control instruction.
[0122] It is understandable that the technical solution shown in this embodiment can obtain the real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running; obtain the conveyor belt position data when the trigger signal is triggered based on the real-time conveyor belt position data; when the trigger signal is triggered, obtain the object position data on the conveyor belt; obtain the real-time position data of the object on the conveyor belt based on the object position data and the conveyor belt speed; obtain user configuration data, and generate control instructions for multiple manipulators based on the user configuration data; control multiple manipulators to grasp objects based on the real-time position data and control instructions of the object on the conveyor belt. It is understandable that the technical solution shown in the present invention combines the visual system on the basis of kinematic analysis and trajectory planning, and can quickly track objects in real time, realize multi-level allocation of objects, improve grasping accuracy, and thus further improve production efficiency and shorten production cycle.
[0123] It can be understood that the same or similar parts of the above embodiments can be referenced to each other, and the contents not described in detail in some embodiments can refer to the same or similar contents in other embodiments.
[0124] It should be noted that, in the description of the present invention, the terms "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or implying relative importance. In addition, in the description of the present invention, unless otherwise specified, the meaning of "plurality" refers to at least two.
[0125] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention belong.
[0126] It should be understood that the various parts of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above-mentioned embodiments, multiple steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or a combination thereof: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0127] A person skilled in the art may understand that all or part of the steps in the method for implementing the above-mentioned embodiment may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiment.
[0128] In addition, each functional unit in each embodiment of the present invention may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.
[0129] The storage medium mentioned above can be a read-only memory, a magnetic disk or an optical disk, etc.
[0130] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "examples", "specific examples", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.
[0131] Although the embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present invention. A person skilled in the art may change, modify, replace and vary the above embodiments within the scope of the present invention.
Claims
1. A multi-manipulator collaborative multi-level allocation processing method, characterized in that: include: Get real-time conveyor belt position data and conveyor belt speed while the conveyor belt is running; Determine the conveyor belt position data when the trigger signal is triggered according to the real-time conveyor belt position data; When the trigger signal is triggered, the position data of the object on the conveyor belt is obtained; Determining the real-time position data of the object on the conveyor belt according to the object position data and the conveyor belt speed; Acquire user configuration data, and generate control instructions for multiple manipulators according to the user configuration data; Controlling multiple manipulators to grab the objects according to the real-time position data of the objects on the conveyor belt and the control instructions; Obtaining the position data of the object on the conveyor belt, including: obtaining a photographic image obtained by a camera pre-installed above the conveyor belt when a trigger signal is triggered; obtaining the position data of the object in the position coordinate system under the camera vision according to the photographic image; obtaining the object position data of the object in the world coordinate system according to the pre-stored relationship between the position coordinate system under the camera vision and the world coordinate system; After acquiring the photographed image, determining whether there is a stacked material object in the photographed image; if so, controlling multiple manipulators to grab the stacked material object according to a pre-configured stacking processing instruction; Generating control instructions for multiple manipulators according to the user configuration data includes: allocating a grasping ratio for each manipulator according to the pre-divided data in the user configuration data; generating control instructions for each manipulator according to the grasping ratio; Sort the positions of the objects according to the real-time position data of each object; derive the priority grasping condition of each manipulator according to the conditional control data in the user configuration data; generate the control instructions of each manipulator according to the priority grasping condition and the object position sorting; When controlling the manipulator to grasp, it is determined whether the object exceeds the grasping limit of the manipulator; if so, an out-of-bounds diversion instruction is generated to enable the remaining manipulators behind the manipulator to grasp the material.
2. The method according to claim 1, characterized in that The method of obtaining real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running includes: Obtain a code value processed by an encoder pre-installed on a conveyor belt drive shaft; The resolution is calculated based on the code value, and the real-time conveyor belt position data and conveyor belt speed during the operation of the conveyor belt are obtained based on the resolution.
3. The method according to claim 1, characterized in that Also includes: After acquiring a plurality of photographic images, determining whether objects in the plurality of photographic images are the same object according to the conveyor belt speed; If so, a set of position data of the object is retained, and the remaining sets of position data of the object are discarded.
4. A multi-manipulator collaborative system, characterized in that: include: processors, encoders, cameras, and multiple manipulators; The encoder is installed on the conveyor belt drive shaft, and the camera is installed above the conveyor belt; The processor obtains the real-time conveyor belt position data and conveyor belt speed when the conveyor belt is running through the code value obtained by the encoder; When a trigger signal is triggered, conveyor belt position data is obtained according to the real-time conveyor belt position data, and at the same time, the processor obtains object position data on the conveyor belt through the camera; The processor obtains the real-time position data of the object on the conveyor belt according to the object position data and the conveyor belt speed; Acquire user configuration data, and generate control instructions for multiple manipulators according to the user configuration data; The manipulator grabs the object according to the real-time position data of the object on the conveyor belt and the control instruction; Obtaining the position data of the object on the conveyor belt, including: obtaining a photographic image obtained by a camera pre-installed above the conveyor belt when a trigger signal is triggered; obtaining the position data of the object in the position coordinate system under the camera vision according to the photographic image; obtaining the object position data of the object in the world coordinate system according to the pre-stored relationship between the position coordinate system under the camera vision and the world coordinate system; After acquiring the photographed image, determining whether there is a stacked material object in the photographed image; if so, controlling multiple manipulators to grab the stacked material object according to a pre-configured stacking processing instruction; Generating control instructions for multiple manipulators according to the user configuration data includes: allocating a grasping ratio for each manipulator according to the pre-divided data in the user configuration data; generating control instructions for each manipulator according to the grasping ratio; Sort the positions of the objects according to the real-time position data of each object; derive the priority grasping condition of each manipulator according to the conditional control data in the user configuration data; generate the control instructions of each manipulator according to the priority grasping condition and the object position sorting; When controlling the manipulator to grasp, it is determined whether the object exceeds the grasping limit of the manipulator; if so, an out-of-bounds diversion instruction is generated to enable the remaining manipulators behind the manipulator to grasp the material.
