A method and apparatus for air jet sorting objects
By converting the pixel coordinates of the objects to be sorted into real physical coordinates and using timestamps to convert them into time coordinates, calculating the jetting time and position, and merging the jetting data to control the jetting valve, the problems of low efficiency and inaccurate positioning in traditional bottle sorting are solved, and precise jetting sorting is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-28
- Publication Date
- 2026-03-20
AI Technical Summary
In traditional bottle sorting, material transfer efficiency is low, manual intervention is required, and air-jet sorting is inaccurate, making it impossible to achieve effective object positioning and sorting.
By determining the pixel coordinates of the objects to be sorted, converting them into real physical coordinates, using timestamps to convert them into time coordinates, calculating the jetting time and position, and merging the jetting data to control the jetting valves for sorting.
It achieves accurate object positioning and precise air jet sorting, improving sorting efficiency, reducing manpower waste, and lowering the complexity of air jet sorting.
Smart Images

Figure CN116441198B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of computers, and in particular to a method and device for jet sorting objects. BACKGROUND
[0002] In production, for the sorting of bottle bodies, the traditional bottle bodies need to be sorted and collected. However, after sorting, the traditional bottle body sorting unit mostly prevents the bottle bodies from being temporarily stored in the collection box. The full collection is transported to the packaging unit by manual operation. This process needs manual intervention for transfer, which leads to low material transfer efficiency and easy waste of manpower.
[0003] In addition, the traditional method usually uses multiple classification processes to achieve effective bottle body sorting. The use of the conveying line occupies a large sorting device, and because the bottle body positioning is not accurate, the jet is not accurate, and effective jet sorting cannot be achieved. SUMMARY
[0004] An object of the present application is to provide a method and device for jet sorting objects, which solves the problems of inaccurate positioning of objects and low sorting efficiency in the prior art.
[0005] According to one aspect of the present application, a method for jet sorting objects is provided, which comprises:
[0006] determining the real physical coordinates of all points of the outline of the object to be sorted according to the pixel coordinates of the object to be sorted;
[0007] converting the real physical coordinates of all points of the outline into time coordinates using a time stamp;
[0008] calculating the range covered by each object to be sorted on the corresponding time coordinate axis according to the real physical coordinates of all points of the outline of the object to be sorted, the speed of the conveying belt, and the position of the jet valve from the shooting position;
[0009] calculating the jet time and jet position according to the range covered on the corresponding time coordinate axis, merging the jet position and the jet time, and controlling the jet valve to jet sort according to the merged data.
[0010] Optionally, determining the real physical coordinates of all points of the outline of the object to be sorted according to the pixel coordinates of the object to be sorted comprises:
[0011] calibrating the pixel coordinates of the object to be sorted using a checkerboard calibration plate to convert them into physical coordinates;
[0012] adjusting the physical coordinates according to the direction of travel of the object to be sorted to obtain the real physical coordinates of all points of the outline of the object to be sorted.
[0013] Optionally, the physical coordinates are adjusted according to the direction of travel of the object to be sorted, comprising:
[0014] The farthest position of the camera for taking a photo of the object to be sorted is set as 0 point, and the moving direction along the conveying belt where the object to be sorted is located is adjusted as the positive direction of the horizontal axis;
[0015] The direction perpendicular to the conveying belt and away from the observer is adjusted as the positive direction of the vertical axis;
[0016] The conversion matrix is performed according to the adjusted horizontal axis and vertical axis to obtain the real physical coordinates of all points of the profile.
[0017] Optionally, the real physical coordinates of all points of the profile are converted into time coordinates using a timestamp, comprising:
[0018] The horizontal coordinate in the real physical coordinates of all points of the profile is changed into a timestamp in milliseconds;
[0019] The vertical coordinate in the real physical coordinates of all points of the profile is changed into a scalar in nozzle number.
[0020] Optionally, the range covered on the time coordinate axis corresponding to each object to be sorted is calculated according to the real physical coordinates of all points of the profile of the object to be sorted, the speed of the conveying belt, and the position from the photo taking position to the jet valve position, comprising:
[0021] The position from the photo taking position to the jet valve position is subtracted from the horizontal coordinate in the real physical coordinates of all points of the profile of the object to be sorted;
[0022] The difference is divided by the speed of the conveying belt to obtain the horizontal coordinate in the time coordinate corresponding to each object to be sorted;
[0023] The range covered on the time coordinate axis corresponding to each object to be sorted is obtained according to the horizontal coordinate in the time coordinate.
[0024] Optionally, the jet position and the jet time are merged, comprising:
[0025] The jet position and the jet time are pushed into a time axis manager, and the time axis data of each jet valve is merged using the data structure of the linked list in the time axis manager.
[0026] Optionally, before controlling the jet valve according to the merged data, comprising:
[0027] A CPU thread is started to maintain a timer, and the information of the time axis matched with the current time point in the time axis manager is obtained in milliseconds.
[0028] Optionally, the jet valve is controlled according to the merged data, comprising:
[0029] The jet valve is controlled to open according to the combined data and the time axis information matched with the current time point, and a task of closing the jet valve after a preset time is created according to the time axis information.
[0030] According to yet another aspect of the present application, there is also provided a device for jet sorting objects, the device comprising:
[0031] one or more processors; and
[0032] a memory storing computer readable instructions which, when executed, cause the processor to perform the operations of the method as described above.
[0033] According to still another aspect of the present application, there is also provided a computer readable medium having stored thereon computer readable instructions executable by a processor to implement the method as described above.
[0034] Compared with the prior art, the present application determines the real physical coordinates of all points of the outline of the object to be sorted according to the pixel coordinates of the object to be sorted; converts the real physical coordinates of all points of the outline into time coordinates using a time stamp; calculates the range covered on the corresponding time coordinate axis by each object to be sorted according to the real physical coordinates of all points of the outline of the object to be sorted, the speed of the conveying belt, and the position of the shooting position to the position of the jet valve; calculates the jet time and the jet position according to the range covered on the corresponding time coordinate axis, merges the jet position and the jet time, and controls the jet valve to jet sort according to the merged data. Thus, the object can be accurately positioned, the jet time is calculated with low positioning complexity, the jet is accurate, and the object is effectively sorted. BRIEF DESCRIPTION OF DRAWINGS
[0035] Other features, objects, and advantages of the present application will become more apparent from the following detailed description of non-limiting embodiments made with reference to the accompanying drawings:
[0036] Figure 1 Fig. 1 shows a flowchart of a method for jet sorting objects according to an aspect of the present application;
[0037] Figure 2 Fig. 3 shows an example of coordinates in a self-defined coordinate system in an embodiment of the present application;
[0038] Figure 3 Fig. 4 shows a schematic diagram of stacked objects to be sorted in an embodiment of the present application;
[0039] Figure 4 Fig. 5 shows a schematic diagram of data after merging the jet time and the jet position in an embodiment of the present application.
[0040] The same or similar reference numerals in the drawings denote the same or similar components. DETAILED DESCRIPTION
[0041] The application is described in further detail below in connection with the drawings.
[0042] In one typical configuration of the application, the terminal, the device of the service network and the trusted party each include one or more processors (e.g., a central processing unit (CPU)), input / output interfaces, network interfaces, and memory.
[0043] The memory can include non-persistent memory and / or volatile memory, such as random access memory (RAM) and / or cache memory, which can store information such as data, metadata, and / or instructions that can be used by one or more of the components of the terminal, the device of the service network and the trusted party. The memory is an example of computer readable media.
[0044] Computer readable media includes permanent and non-permanent, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible to computing devices. According to the definition herein, computer readable media does not include transitory media, such as modulated data signals and carrier waves.
[0045] Figure 1A flowchart of a method of jet sorting objects is shown according to an aspect of the present application, the method comprising: steps S11-S14, wherein in step S11, real physical coordinates of all points of a contour of a to-be-sorted object are determined according to pixel coordinates of the to-be-sorted object; in step S12, the real physical coordinates of all points of the contour are converted into time coordinates using a time stamp; in step S13, a range covered on a corresponding time coordinate axis by each to-be-sorted object is calculated according to the real physical coordinates of all points of the contour of the to-be-sorted object, a speed of a conveying belt, and a position of a photographing position to a position of a jet valve; in step S14, a jetting time and a jetting position are calculated according to the range covered on the corresponding time coordinate axis, the jetting position and the jetting time are combined, and the jet valve is controlled to jet and sort according to the combined data. Thus, the objects can be accurately jetted, delay jetting or missed jetting is prevented, and sorting of the objects is effectively realized.
[0046] In step S11, real physical coordinates of all points of a contour of a to-be-sorted object are determined according to pixel coordinates of the to-be-sorted object; in this embodiment, a rectangular photographing area is arranged in the middle of a conveying belt conveying the to-be-sorted object, a camera is arranged at the top of the photographing area, and the camera always photographs the conveying belt at a certain frequency, so that pixel coordinates of the to-be-sorted object in the photograph are obtained; the pixel coordinates are converted into coordinates in a physical coordinate system, and the coordinates in the physical coordinate system are processed to obtain the real physical coordinates of all points of the contour of the to-be-sorted object.
[0047] In an embodiment of the present application, in step S11, a checkerboard calibration board is used to calibrate the pixel coordinates of the to-be-sorted object, and the pixel coordinates are converted into physical coordinates; the physical coordinates are adjusted according to a direction in which the to-be-sorted object travels, and the real physical coordinates of all points of the contour of the to-be-sorted object are obtained. In this embodiment, the checkerboard calibration board is used to calibrate the pixel coordinates in the photograph to convert the pixel coordinates into physical coordinates, a conversion matrix is used to adjust the physical coordinate system to a coordinate system consistent with the direction in which the to-be-sorted object travels, and finally the real physical coordinates of all points of the contour of the object are obtained.
[0048] For example, the camera matrix obtained after calibration of the checkerboard is: "cameraMatrix":"[[6345.949175204907,0,1296.792423366461],\n[0,6339.718049762229,1023.244946487241],\n[0,0,1]]"; and the conversion matrix used is a distortion matrix: "distCoeffs":"[[-0.3428460924528277,6.889785255260322,0.005332275782212372,-0.003577384679192735,82.65591708797254]]".
[0049] Specifically, the farthest position that the camera can take a picture of the object to be sorted is set as 0 point, and the moving direction along the conveying belt where the object to be sorted is located is adjusted as the positive direction of the horizontal axis; the direction perpendicular to the conveying belt and away from the observer is adjusted as the positive direction of the vertical axis; the conversion matrix is performed according to the adjusted horizontal axis and vertical axis to obtain the real physical coordinates of all points of the profile. Here, the horizontal axis (x-axis) in the physical coordinates is set as: from small to large along the moving direction of the conveying belt, the moving direction can be from right to left, and the farthest position that the camera can take a picture is 0 point; the vertical axis (y-axis) is set as: the position of the observer perpendicular to the conveying belt and the conveying belt moving from right to left, the end of the conveying belt close to the observer is 0 point, and the far end is the positive direction of the y-axis.
[0050] In step S12, the real physical coordinates of all points of the profile are converted into time coordinates using a time stamp; here, the object is continuously photographed when moving on the conveying belt, and if the standard physical coordinates are always used, the coordinate values corresponding to the same object in multiple photographs will be different or have a large difference. Therefore, in the present application, the method of converting physical coordinates into custom coordinates is adopted to make the coordinate values of the same object in multiple photographs consistent. The custom coordinates are time coordinates, and the physical coordinate system is processed using a time stamp to convert into a time coordinate system.
[0051] Specifically, the horizontal coordinate in the real physical coordinates of all points of the profile is changed to a time stamp in milliseconds; the vertical coordinate in the real physical coordinates of all points of the profile is changed to a scalar in the nozzle number. Here, the horizontal axis (x axis) in the real physical coordinate system is changed to a time stamp in milliseconds, with the 0 point of the time stamp being the standard time stamp (January 1, 1970, 0:00:00:00), and the value x1 of the time stamp indicating that the point will pass the jet valve position at the tail end of the conveyor belt at x1 time; the y axis is changed to a scalar in the nozzle number, and the current coordinate is calculated to correspond to which jet nozzle by the original physical y axis of the object and the number and interval of the jet nozzles, and the serial number of the jet nozzle is the y axis coordinate. After conversion to the custom coordinates, in the results of multiple photographs taken when the object is moving, although the physical coordinates x values of the object are inconsistent, the time is also corresponding to the change, so the calculated coordinates x1 based on the time stamp are always consistent or approximately. For example, taking the physical coordinates of a point A of the object as an example, assuming that the coordinate system direction and the custom coordinate system direction are consistent, except that the x axis uses the physical length (millimeters), and the 0 point is the farthest point in the x axis direction in the camera shooting area; assuming that on March 23, 2023, 0:00:00:00 (corresponding to the time stamp in milliseconds is 1679500800000), the object is just passing through the shooting area, at this time the physical coordinates of point A are (503 mm, 202 mm), assuming that the distance from the x axis 0 point to the jet nozzle is 1000 mm (which can be measured), and assuming that the object does not deviate relative to the conveyor belt, and the conveyor belt speed is constant at 3 m / s, then the object A point will pass the jet nozzle after (1000-503) / 3≈166 milliseconds. That is, taking the custom coordinate axis x as the reference, then the x coordinate of point A is 1679500800000+166=1679500800166; assuming that the camera shooting frequency is 50 milliseconds, and assuming that the object does not deviate relative to the conveyor belt, taking the physical coordinate system as the reference, then at the next shooting (time stamp=1679500800050), the object A point has moved to the position (653 mm, 202 mm), assuming that some fixed conditions measured are consistent with the above, then it is calculated that the object A point will pass the jet nozzle after (1000-653) / 3≈116 milliseconds, then it is obtained that taking the custom coordinate axis x as the reference, the x coordinate of point A is 1679500800050+116=1679500800166, which is consistent with the result calculated above.
[0052] Step S13, according to the real physical coordinates of all points of the object to be sorted, the speed of the conveyor belt and the position of the photo to the position of the air valve, the range covered by each object to be sorted on the time coordinate axis is calculated; here, the theoretical air jet position and time are calculated, and when calculating, according to the obtained real physical coordinates of the x-axis, the speed of the conveyor belt and the position of the photo to the position of the air valve, the range of the x-axis corresponding to each object to be sorted can be calculated. Figure 2 is an example of the coordinates calculated in the custom coordinates for a photo of a bottle at an angle at a certain time (in order to better show the x coordinate, the time from timestamp = 0 is used instead of the current time), the starting point of the arrow represents the time when the air jet of the y coordinate (1-10 air jet) should start, and the end point of the arrow represents the time when the air jet of the y coordinate ends. In Figure 2 , the start time of the air jet corresponding to the No. 1 air jet (the lowermost horizontal line) is about 1370 ms, and the air jet lasts for 60 ms until 1430 ms.
[0053] In an embodiment of the present application, in step S13, the position of the photo to the position of the air valve is subtracted from the horizontal coordinate of the real physical coordinates of all points of the object to be sorted; the difference is divided by the speed of the conveyor belt to obtain the horizontal coordinate of the time coordinate corresponding to each object to be sorted; and the range covered on the corresponding time coordinate axis is obtained according to the horizontal coordinate of the time coordinate. Here, three parameters are used: the x-axis data x1, x2,... xn in the physical coordinate system of the object, the speed of the conveyor belt v, and the position d of the photo area to the air valve; the calculated x-axis is the x coordinate in the above custom coordinate system, and the calculation formula is: custom x = (d-physical x) / v; thus the x in the custom coordinate system is calculated. Through all the x values of the object profile in the custom coordinate system, the range of the x in the custom coordinate system corresponding to the object can be determined, which is used for subsequent calculation of the air jet time, and the range on the x-axis is obtained according to the maximum and minimum values on the x-axis.
[0054] Step S14, according to the range covered on the corresponding time coordinate axis, the jet time and the jet position are calculated, the jet position and the jet time are merged, and the jet valve is controlled according to the merged data to jet sort. Here, the coverage range of the object to be sorted on the time axis x axis can obtain the jet time, for example, the x range is 9-20 milliseconds, which means that the jet starts from 9 milliseconds and ends at 20 milliseconds; and the jet position is obtained according to the y axis coordinate of the object to be sorted, because the y axis is a scalar with the nozzle number as the unit, the current coordinate corresponding to which nozzle is calculated through the original physical y axis of the object and the number and interval of the nozzles, and the serial number of the nozzle is the y axis coordinate. After calculating the jet position and the jet time for different objects respectively, if the logic of the jet is "a certain object reaches the position and immediately starts blowing" and "the object has passed the nozzle and the jet valve can be closed", when there are many objects on the conveying belt, it will cause the state of the nozzle to be chaotic and the jet time calculation to be too complex; therefore, in the embodiment of the present application, the strategy of merging the jet position and the jet time in advance is adopted, after the physical theoretical jet position and the jet time are calculated, the jet position and the jet time are merged, and the jet valve is controlled according to the merged data to realize the jet sorting of the object.
[0055] Specifically, when merging the jet position and the jet time, the following method can be used: pushing the jet position and the jet time into the time axis manager, using the data structure of the linked list in the time axis manager, and merging the time axis data of each jet valve. Here, the calculated jet position and jet time are pushed into the time axis manager, which merges the time axis data of each jet valve through the data structure of the linked list. Compared with directly using an array, when a new time period is added, the time complexity is reduced from O(N) to O(1), and when invalid time periods are removed, the time complexity is reduced from O(N) to O(1). For the position of a certain nozzle, assuming that the start and end points of the x coordinates of 3 objects to be sorted are object 1: (100, 200), object 2: (300, 500), and object 3: (190, 310), first sort the start points, then merge or skip each end point, and finally synthesize a large start and end point (100, 500).
[0056] In an embodiment of the present application, when merging the time axis data of each jet valve, it is judged whether there are other time periods around each time axis to be merged, if there are, merging is performed, if not, it is judged whether the interval between the two time periods is less than a set threshold, if it is less than the threshold, merging is performed, if not, no merging is performed. As shown in FIG. 8, M and N are two stacked objects to be sorted, after passing through the time axis manager, the final data will be merged, and the jet valve will be controlled according to the merged data to jet sort. Figure 3 Figure 3 ABCD four time axis are illustrated: for the sake of simplifying the data presentation, assume that the intersection of the thick horizontal and vertical lines in the lower left corner is the origin of the coordinate system, wherein A and D have no other time periods near their time axis, so A and D remain consistent with the original data after merging, the data of A is (y: 33 jet, x range: 9-20 milliseconds (from 9 milliseconds to 20 milliseconds)), and the data of D is (y: 15 jet, x range: 13-26 milliseconds); wherein B time axis contains two time periods of objects, which are (8-14 milliseconds and 14-18 milliseconds) respectively, and finally merged into one time period, the data of which is (y: 21 jet, x range: 7-18 milliseconds); wherein C time axis contains two time periods of objects, which are (7-11 milliseconds and 12-23 milliseconds) respectively, and finally merged into one time period, the data of which is (y: 21 jet, x range: 7-23 milliseconds). It should be noted that: at this time, although the two time periods do not intersect, they are still merged, because closing and opening the jet in 1 millisecond has no positive significance for sorting, but may cause the second object to be incorrectly blown away due to operation delay, so in the embodiment of the application, a threshold is set, if the interval between the two time periods is less than the threshold, the two time periods will be merged although they do not intersect. The new data generated after merging is shown in Figure 4 The time complexity of each merging is always O(n*m), wherein n represents the number of jets, and m represents the maximum number of objects existing simultaneously in the photo area in the direction of the conveying belt movement, which will not be affected by the final number of objects, ensuring that the maximum operation time is within 1 ms (calculated at 4ghz cpu), that is: all objects can be calculated whether they should be sorted by blowing before moving to the jet.
[0057] In an embodiment of the application, before controlling the jet valve according to the merged data, a CPU thread is started to maintain a timer to obtain the information of the time axis matched with the current time point from the time axis manager in milliseconds. Here, another CPU thread is used to maintain the timer to obtain the information of the time axis matched with the current time point from the time axis manager in milliseconds. Thus, the CPU resources are avoided from being contended with other threads, and if this method is not used, the minimum timing unit of the timer will exceed 1 millisecond, which will cause the jet to be delayed or missed for some objects.
[0058] In an embodiment of the present application, the jet valve is opened according to the merged data and the information of the timeline matched at the current time point, and a task of closing the jet valve after a preset time is created according to the information of the timeline. Here, for the timelines intersecting at the current time point, each timeline (representing different jet valves respectively) matched is used to control the opening of the valve, at which time the object is blown away, and a task of closing the valve after x milliseconds is created according to the information of the timeline; the corresponding valve is closed after x milliseconds, and the object has been blown to the corresponding sorting basket. According to the y-axis of the user-defined coordinate system, it can be known from the obtained information which serial numbers of the jet valves should be controlled to open and close. The process uses a serial port protocol corresponding to the control board connected to the air valve, and through the protocol, the opening and closing of the valve with a specified number can be controlled by a PC program. A timeline has multiple time periods (used to represent the time of opening and closing the valve), and according to the current time point, an intersecting time period can be found in the timeline, which is the matched data.
[0059] In addition, the embodiment of the present application further provides a computer readable medium having computer readable instructions stored thereon, and the computer readable instructions can be executed by a processor to implement the foregoing method for jet sorting objects.
[0060] In an embodiment of the present application, a device for jet sorting objects is also provided, and the device comprises:
[0061] one or more processors; and
[0062] a memory storing computer readable instructions that, when executed, cause the processor to perform operations of the foregoing method.
[0063] For example, the computer readable instructions, when executed, cause the one or more processors to:
[0064] determine real physical coordinates of all points of the outline of the object to be sorted according to pixel coordinates of the object to be sorted;
[0065] convert the real physical coordinates of all points of the outline into time coordinates using a timestamp;
[0066] calculate a range covered on a corresponding time coordinate axis by each object to be sorted according to the real physical coordinates of all points of the outline of the object to be sorted, a speed of a conveying belt, and a position of a photographing position to a position of a jet valve;
[0067] calculate a jet time and a jet position according to the range covered on the corresponding time coordinate axis, merge the jet position and the jet time, and control the jet valve to jet sort according to the merged data.
[0068] Obviously, numerous modifications and variations of the present application are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims and their equivalents, the application can be practiced otherwise than as specifically described herein.
[0069] It is noted that the present application can be implemented in software and / or in a combination of software and hardware, e.g., using application specific integrated circuits (ASIC), a general purpose computer or any other similar hardware devices. In one embodiment, the software program of the present application is implemented by the processor so as to perform the steps or functions described hereinabove. Also, the software program of the present application (including related data structures) can be stored in a computer readable storage medium, e.g., RAM memory, magnetic or optical drive or diskette, and the like. Additionally, some of the steps or functions can be implemented in hardware, e.g., as circuitry which cooperates with the processor in performing the various steps or functions.
[0070] In addition, some of the steps or functions can be implemented in hardware, e.g., as circuitry which cooperates with the processor in performing the various steps or functions.
[0071] It will be apparent to those skilled in the art that the present application is not limited to the details of the foregoing exemplary embodiments, and that the present application can be implemented in other specific forms without departing from the spirit or essential characteristics of the present application. The present embodiments are therefore considered in all respects to be illustrative and not restrictive, the scope of the present application being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. No feature of the application is considered critical unless it is expressly stated as such. Moreover, no limitation is intended to the effect that any of the dependent claims must be realized with a combination of features of the independent claims and any of the dependent claims can be realized independently. Any reference signs in the claims should not be construed as limiting the scope of the claims. Furthermore, the words "comprise", "comprising", "include", "including" and the like are to be construed in their broadest possible sense, i.e. as meaning "including, but not limited to". First, second, etc. are used to indicate names and not to limit the sequence.
Claims
1. A method for sorting objects using air jets, characterized in that, The method includes: The actual physical coordinates of all points of the outline of the object to be sorted are determined based on the pixel coordinates of the object to be sorted. A camera is installed on the conveyor belt that transports the object to be sorted. The pixel coordinates of the object to be sorted are determined based on the photograph of the object to be sorted obtained by the camera. The actual physical coordinates of all points in the contour are converted into time coordinates using timestamps, wherein the horizontal coordinates of the actual physical coordinates of all points in the contour are changed to timestamps in milliseconds, and the vertical coordinates of the actual physical coordinates of all points in the contour are changed to scalars in jet nozzle serial numbers. Based on the actual physical coordinates of all points on the outline of the object to be sorted, the speed of the conveyor belt, and the distance from the camera position to the jet valve position, calculate the range covered on the time axis corresponding to each object to be sorted. Calculate the jetting time and jetting position based on the range covered on the corresponding time axis, merge the jetting position and jetting time, and control the corresponding jetting valve to perform jetting sorting based on the merged data.
2. The method according to claim 1, characterized in that, Determine the true physical coordinates of all points on the outline of the object to be sorted based on its pixel coordinates, including: The pixel coordinates of the objects to be sorted are calibrated using a checkerboard calibration board and converted into physical coordinates. The physical coordinates are adjusted according to the direction of travel of the object to be sorted to obtain the true physical coordinates of all points on the outline of the object to be sorted.
3. The method according to claim 2, characterized in that, Adjusting the physical coordinates according to the direction of travel of the objects to be sorted includes: Set the farthest point that the camera can capture as point 0, and adjust the direction of movement of the conveyor belt along the object to be sorted to the positive direction of the horizontal axis. Adjust the direction perpendicular to the conveyor belt and away from the observer to the positive direction of the longitudinal axis; By performing coordinate transformation according to the adjusted horizontal and vertical axes, the true physical coordinates of all points on the contour can be obtained.
4. The method according to claim 1, characterized in that, Based on the actual physical coordinates of all points on the outline of the object to be sorted, the speed of the conveyor belt, and the distance from the camera position to the jet valve, calculate the range covered on the time axis corresponding to each object to be sorted, including: Calculate the difference between the distance from the camera position to the jet valve and the x-coordinate of the actual physical coordinates of all points on the outline of the object to be sorted; The ratio of the difference to the speed of the conveyor belt is used as the x-axis of the time coordinate for each object to be sorted. The range covered on the corresponding time axis is obtained based on the horizontal coordinate in the time coordinate.
5. The method according to claim 1, characterized in that, The jet position and jet timing are combined, including: The jet position and jet time are pushed into the timeline manager, and the timeline data of each jet valve is merged using the linked list data structure in the timeline manager.
6. The method according to claim 5, characterized in that, Before controlling the jet valves based on the merged data, the following should be included: Start a CPU thread to maintain the timer and retrieve the timeline information matching the current time point from the timeline manager in milliseconds.
7. The method according to claim 6, characterized in that, The jet valves are controlled based on the merged data, including: The jet valve is opened based on the merged data and the time axis information matched to the current time point, and a task is created to close the jet valve after a preset time based on the time axis information.
8. A device for sorting objects by jet air, characterized in that, The device includes: One or more processors; and A memory storing computer-readable instructions, which, when executed, cause the processor to perform the operations of the method as described in any one of claims 1 to 7.
9. A computer-readable medium having stored thereon computer-readable instructions that can be executed by a processor to implement the method as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Automatic sorting system for household refuse
CN106000904A
Pneumatic separation coal and gangue sorting method and system
CN113680706A