Storage position identification method and device

By dividing grid areas in the target area and combining spatial position detection and force detection, the automatic assembly and maintenance of objects is achieved, and the problems of high and low manual assembly costs and low efficiency in the prior art are solved, and assembly efficiency and operation and maintenance management efficiency are improved.

CN113298876BActive Publication Date: 2025-03-04ALIBABA GROUP HOLDING LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010699074.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-07-20
Publication Date
2025-03-04
Estimated Expiration
2040-07-20

AI Technical Summary

Technical Problem

In the prior art, the assembly, replacement and maintenance of objects still need to be done manually, resulting in high labor and capital costs and it is difficult to improve assembly efficiency, especially in large data center computer rooms, the management efficiency of server hard disks is low.

Method used

A storage position recognition method is adopted to determine the target area to which the target object belongs and divide the area into grid areas, and determine the storage position of the target object according to the mapping relationship between the object and the grid area. The method includes using a target area determination unit and a grid area determination unit, combining spatial position detection and force detection to achieve precise positioning and safe plugging of the object.

Benefits of technology

It realizes automatic assembly and maintenance of objects, improves assembly efficiency, reduces labor and capital costs, and effectively manages server hard disks in large data center computer rooms, improving operation and maintenance efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113298876B_ABST
    Figure CN113298876B_ABST
Patent Text Reader

Abstract

One or more embodiments of the present specification provide a storage position identification method and device, which may include: determining a target area corresponding to a target object to which a target object belongs; dividing the target area into grid areas, and determining a target grid area corresponding to the target object based on the grid area division result and a mapping relationship between the object and the grid area, as the storage position corresponding to the target object on the target object.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of robotics technology, and in particular to a storage position identification method and device. Background Art

[0002] With the development of science and technology, more and more robots have entered people's lives and work. Using robots to replace human labor can significantly improve production and work efficiency. However, the assembly, replacement and maintenance of objects still need to be done manually, which often requires a lot of manpower and financial costs. Summary of the invention

[0003] In view of this, one or more embodiments of the present specification provide a storage location identification method and device.

[0004] Specifically, one or more embodiments of this specification provide the following technical solutions:

[0005] According to a first aspect of one or more embodiments of this specification, a storage location identification method is proposed, including:

[0006] Determine a target area corresponding to a target object to which the target object belongs;

[0007] The target area is divided into grid areas, and according to the grid area division result and the mapping relationship between the object and the grid area, a target grid area corresponding to the target object is determined as the corresponding storage position of the target object on the target object.

[0008] According to a second aspect of one or more embodiments of this specification, a storage location identification method is proposed, including:

[0009] Determine the target area corresponding to the target server to which the target hard disk belongs;

[0010] According to the grid area division result of the target area, and according to the grid area division result and the mapping relationship between the hard disk and the grid area, the target grid area corresponding to the target hard disk is determined as the corresponding storage position of the target hard disk on the target server.

[0011] According to a third aspect of one or more embodiments of this specification, a storage position identification device is provided, including:

[0012] A first target area determination unit, used to determine a target area corresponding to a target object to which the target object belongs;

[0013] The first grid area determination unit is used to perform grid area division on the target area, and determine the target grid area corresponding to the target object according to the grid area division result and the mapping relationship between the object and the grid area, so as to serve as the corresponding storage position of the target object on the target object.

[0014] According to a fourth aspect of one or more embodiments of this specification, a storage position identification device is provided, including:

[0015] A second target area determination unit, used to determine a target area corresponding to a target server to which a target hard disk belongs;

[0016] The second grid area determination unit is used to divide the target area into grid areas, and determine the target grid area corresponding to the target hard disk according to the grid area division result and the mapping relationship between the hard disk and the grid area, so as to serve as the corresponding storage position of the target hard disk on the target server.

[0017] According to a fifth aspect of this specification, an electronic device is provided. The electronic device comprises:

[0018] processor;

[0019] a memory for storing processor-executable instructions;

[0020] The processor implements the method as described in the first aspect or the second aspect by running the executable instructions.

[0021] According to a sixth aspect of the present specification, a computer-readable storage medium is provided, on which computer instructions are stored, and when the instructions are executed by a processor, the steps of the method described in the first aspect or the second aspect are implemented. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 It is a schematic diagram of a vertical cabinet provided by an exemplary embodiment of this specification.

[0023] Figure 2 It is a schematic diagram of the composition structure of a data center operation and maintenance robot provided by an exemplary embodiment of this specification.

[0024] Figure 3 It is a structural schematic diagram of a clamping device provided by an exemplary embodiment of this specification.

[0025] Figure 4 It is another structural schematic diagram of a clamping device provided by an exemplary embodiment of this specification.

[0026] Figure 5It is a schematic diagram of the composition structure of an assembly robot provided by an exemplary embodiment of this specification.

[0027] Figure 6 It is a flow chart of a storage location identification method provided by an exemplary embodiment of this specification.

[0028] Figure 7 It is a flowchart of another storage location identification method provided by an exemplary embodiment of this specification.

[0029] Figure 8 It is a schematic diagram of characteristic points in a server characteristic model provided by an exemplary embodiment of this specification.

[0030] Fig. 9 It is a schematic diagram of an image within an image acquisition area provided by an exemplary embodiment of this specification.

[0031] Fig.10 It is a schematic diagram of an image conversion process within an image acquisition area provided by an exemplary embodiment of this specification.

[0032] Fig.11 It is a schematic diagram of a grid area division result of a target area provided by an exemplary embodiment of this specification.

[0033] Fig.12 It is a schematic diagram of another grid area division result of a target area provided by an exemplary embodiment of this specification.

[0034] Fig.13 It is a schematic diagram of a target grid area of ​​an image acquisition area provided by an exemplary embodiment of this specification.

[0035] Fig.14 It is a flow chart of an object assembly method provided by an exemplary embodiment of this specification.

[0036] Fig.15 It is a flow chart of another object assembly method provided by an exemplary embodiment of this specification.

[0037] Fig.16 It is a schematic diagram of a three-dimensional coordinate system provided by an exemplary embodiment of this specification.

[0038] Fig.17 It is a structural schematic diagram of an electronic device provided by an exemplary embodiment of this specification.

[0039] Fig.18 It is a block diagram of a storage position identification device provided by an exemplary embodiment of this specification.

[0040] Fig.19It is a block diagram of another storage position identification device provided by an exemplary embodiment of this specification.

[0041] Fig. 20 It is a schematic diagram of the structure of another electronic device provided by an exemplary embodiment of this specification.

[0042] Fig.21 It is a block diagram of an object assembly device provided by an exemplary embodiment of this specification.

[0043] Fig. 22 It is a block diagram of another object assembly device provided by an exemplary embodiment of this specification.

[0044] Fig.23 It is a block diagram of another object assembly device provided by an exemplary embodiment of this specification. DETAILED DESCRIPTION

[0045] 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 implementations described in the following exemplary embodiments do not represent all implementations consistent with one or more embodiments of this specification. Instead, they are merely examples of devices and methods consistent with some aspects of one or more embodiments of this specification as detailed in the appended claims.

[0046] It should be noted that: in other embodiments, the steps of the corresponding method are not necessarily performed in the order shown and described in this specification. In some other embodiments, the steps included in the method may be more or less than those described in this specification. In addition, a single step described in this specification may be decomposed into multiple steps for description in other embodiments; and multiple steps described in this specification may be combined into a single step for description in other embodiments.

[0047] At present, the assembly of objects and corresponding storage parts still needs to be done manually, where the storage part can be a device that can accommodate objects, such as a storage slot, a storage hole, an assembly slot or a slot, etc. This specification does not limit this. For example, the object can be pulled out of the assembly slot for replacement or inserted into the assembly slot for maintenance, etc. However, this often requires a lot of manpower and financial costs, and it is difficult to improve the efficiency of object assembly operations. In particular, the replacement and maintenance of data server hard disks in large data center computer rooms still need to be done manually, and the management efficiency of server hard disks is low, which is difficult to meet the needs of data center operation and maintenance.

[0048] Among them, the data center room can contain multiple rows such as Figure 1The vertical cabinet 10, each of which contains a plurality of servers, each of which has a plurality of densely arranged hard disk slots 11, which can be arranged in an array along the horizontal direction or the vertical direction, and each of which can be corresponding to a hard disk 12, and the slot gap between the hard disk 12 and the hard disk slot 11 is relatively small, and the gap is usually about 0.5 mm. If the hard disk 12 is not aligned with the hard disk slot 11 during plugging and unplugging, it is easy to cause damage to the hard disk 12 and the hard disk slot 11, so high precision and force requirements are often required in the safe plugging and unplugging of the hard disk 12.

[0049] The clamping device, data center operation and maintenance robot and assembly robot of the exemplary embodiment of this specification are described in detail below in conjunction with the accompanying drawings. In the absence of conflict, the features of the following embodiments and implementations can complement or combine with each other.

[0050] Figure 2 FIG. 2 is a schematic diagram showing the composition structure of a data center operation and maintenance robot 20 according to an exemplary embodiment of this specification. Figure 2 As shown, the operation and maintenance robot 20 includes a walking part 202, a clamping part 204, a spatial position detection part 206, a force detection part 208, a control part 210 and a driving part 212.

[0051] The walking unit 202 can enable the operation and maintenance robot 20 to walk to a vertical cabinet including a target server, wherein the target server includes a plurality of storage units, and the target server may include a target storage unit corresponding to a target hard disk.

[0052] The clamping portion 204 enables the operation and maintenance robot 20 to clamp the target hard disk.

[0053] The spatial position detection unit 206 can be used to detect the spatial position of the storage unit on the server. The force detection unit 208 can be used to detect the force information of the target hard disk during the process of the clamping unit 204 inserting and / or removing the target hard disk from the target storage unit. Among them, the spatial position detection unit 206 can be a depth camera, and the spatial position can be defined according to the geodetic reference system. Of course, the position of the object can also be described by establishing a coordinate system. Taking the three-dimensional coordinate system as an example, the depth camera can detect the coordinate position of each point in the visual image area in the three-dimensional coordinate system. Of course, it can also be other devices that can obtain the spatial position of the storage unit on the target server. The visual image area can also be called an image acquisition area. The image acquisition area is used for description below, and this specification does not limit this. The force detection unit 208 can be a six-dimensional force sensor. The six-dimensional force sensor can measure three force components and three torque components at the same time. Of course, the force detection unit 208 can also be other devices that can measure multiple force components and torque components. This specification does not limit this.

[0054] The control unit 210 can visually locate the target storage unit according to the spatial position of the target storage unit obtained by the spatial position detection unit 206. The control unit 210 can then send an initial control signal to the drive unit 212 based on the visual positioning result, and the control unit 210 can also send an adjustment control signal and a plug-in control signal to the drive unit 210 based on the force information of the target hard disk detected by the force detection unit 208.

[0055] The driving unit 212 can move the target hard disk to the initial position of the target storage unit according to the initial control signal received from the control unit 210, and the initial position can make the positioning accuracy between the target hard disk and the target storage unit 1 to 2 mm. And the driving unit 212 can also drive the clamping unit 204 to adjust the posture of the target hard disk according to the received adjustment control signal, wherein the posture adjustment includes moving the target hard disk along the horizontal axis or moving it along the vertical axis, so that the target hard disk can be aligned with the target storage unit. Then, when the target hard disk is aligned with the target storage unit, the driving unit 212 can drive the clamping unit 204 to insert and / or remove the target hard disk from the target storage unit according to the received plug-in control signal.

[0056] The operation and maintenance robot 20 may also include a collection unit 214, which may be used to collect a barcode identifier on the target server, and the barcode identifier is used to represent the identity information of the target server, so that the operation and maintenance robot can identify the identity information of the target server by collecting the barcode identifier. The barcode identifier may be a one-dimensional barcode, a two-dimensional barcode, or a barcode graphic, for example, an EAN-13 type barcode, a UPC-A type barcode, a QR CODE type barcode, or a GS1 QR type barcode, etc. Of course, the barcode identifier may also be a three-dimensional barcode, a multi-dimensional barcode, or a digital information hologram, etc., which is not limited in this specification. For example, the collection unit may be an RGB camera, and the barcode identifier may be a two-dimensional code, then the RGB camera may identify the identity information of the server based on the collected two-dimensional code of the server, and the identity information may include the encoding information corresponding to the server or the location information of the server, etc., which is not limited in this specification.

[0057] The operation and maintenance robot 20 may further include a fill light unit 216, which may be used to provide fill light when the spatial position detection unit 206 detects the spatial position of the storage unit, and may also be used to provide fill light when the acquisition unit 214 is acquiring barcode identification. The fill light unit 216 may be a device with a reflective surface, such as a fill light plate, and this is not limited in the present specification.

[0058] The clamping portion 204 in the operation and maintenance robot 20 may include a clamping device 30, such as Figure 3and Figure 4 As shown, the clamping device may include a clamping component 40 and a force detection component 50 .

[0059] The clamping assembly 40 may include a clamping body 401 and a clamping jaw 402. Figure 3 and Figure 4 As shown, the clamping jaw 402 and the force detection assembly 50 can be located at both ends of the clamping body 401. The clamping jaw 402 can include a plurality of motion assemblies, and the number of motion assemblies can be set according to actual needs, which is not limited in this specification. Figure 3 and Figure 4 The clamping jaw 402 shown includes two moving components. Each moving component may include a proximal phalanx 406, a terminal phalanx 407, a connecting rod group and a driving cylinder 404. The clamping jaw body 401, the proximal phalanx 406 and the terminal phalanx 407 are hinged in sequence. The two ends of the driving cylinder 404 may be hinged to the clamping jaw body 401 and the terminal phalanx 407, respectively. The connecting rod group may include a crank 403 and a connecting rod 405, and one end of the crank 403 may be hinged to the hinge axis between the clamping jaw body 401 and the proximal phalanx 406, and the other end of the crank 403 may be hinged to the connecting rod 405, and the two ends of the connecting rod 405 are hinged to the crank 403 and the terminal phalanx 407, respectively. The hinge axis between the terminal phalanx 407 and the proximal phalanx 406, the hinge axis between the terminal phalanx 407 and the connecting rod 405, and the hinge axis between the terminal phalanx 407 and the driving cylinder 404 can be sequentially distributed along the same straight line and parallel to each other. The above-mentioned structure of the clamping jaw 402 can make the moving component have independent movement ability and flexible movement, so that it is convenient to implement various grasping actions.

[0060] A flexible contact piece 408 may be provided on one side surface of the terminal phalanx 407 that contacts the object, wherein the flexible contact piece 408 may be made of an elastic material such as rubber, elastic plastic, etc., thereby avoiding damage to the surface of the object during the contact between the terminal phalanx 407 and the object and better protecting the integrity of the object.

[0061] The clamping assembly 40 can be used to clamp the target object, and the force detection assembly 50 can be used to insert and / or remove the target object in the clamping assembly 40. Figure 1During the process of the target storage section shown in the figure, the force information of the target object is detected, and the force detection component 50 can also send the detected force information to the controller electrically connected to the force detection component 50, then the controller can control the posture adjustment of the clamping component 40 according to the received force information, for example, drive the clamping device to move along the horizontal axis or the vertical axis, so that the target object can be aligned with the corresponding target storage section, so that the target object can be safely inserted and / or pulled out of the target storage section, and the safety of the target object and the target storage section can be guaranteed. Among them, the clamping component 40 can be moved or adjusted relative to the clamping device 30, or the clamping component 40 can be integrated with the clamping device 30, and the clamping component 40 is driven to move by the movement or posture adjustment of the clamping device 30, which is not limited in this specification.

[0062] In one embodiment, the clamping device 30 may further include a spatial position detection component, which may be used to detect the spatial position of the storage portion and may send the spatial position to a controller electrically connected to the spatial position detection component. The controller may then visually locate the target storage portion based on the spatial position so that the target object may be moved to the initial position of the target storage portion. The spatial position detection component may be as follows: Figure 3 The depth camera 60 shown can collect the distance between each point in the image collection area and the camera. Of course, it can also be other devices that can obtain the spatial position of the storage part, such as ultrasonic positioning equipment, infrared positioning equipment, etc., which are not limited in this specification. Among them, when the spatial position detection component is a depth camera, the positioning accuracy between the target object and the target storage part can be adjusted to 1 to 2 mm according to the spatial position information of the storage part detected by the depth camera.

[0063] In one embodiment, the controller can be used to perform posture adjustment control on the clamping device 30 or visual positioning on the storage portion, and the controller can be located on the clamping device 30, or the controller can also be located on the robot body of the assembly robot to which the clamping device 30 belongs. This is not limited in this specification.

[0064] In one embodiment, the clamping device 30 may further include a driving component, which may drive the clamping device to move to adjust the position of the target object. For example, the driving component may drive the clamping device to move along a horizontal axis or a vertical axis, and the driving component may also drive the clamping device to open and close, thereby achieving the capture and placement of the target object.

[0065] In one embodiment, the clamping device 30 may include a collection component, which can be used to collect a barcode mark on the target device corresponding to the target storage portion. The barcode mark can be used to represent the identity information of the target device. Therefore, the identity information of the target device can be identified by collecting the barcode mark, thereby facilitating the identity confirmation of the target device. The barcode mark can be a one-dimensional barcode, a two-dimensional barcode, or a barcode graphic, for example, an EAN-13 type barcode, a UPC-A type barcode, a QR CODE type barcode, or a GS1 QR type barcode, etc. Of course, the barcode mark can also be a three-dimensional barcode, a multi-dimensional barcode, or a digital information hologram, etc., which is not limited in this specification. For example, the barcode mark on the target device can be a two-dimensional barcode, and the collection component can be such as Figure 3 The RGB camera 70 shown in the figure can scan the two-dimensional barcode on the target device through the RGB camera 70 to obtain the identity information of the target device and confirm the identity of the target device. The identity information may include the coding information corresponding to the target device or the location information of the target device, etc., which is not limited in this specification.

[0066] In one embodiment, the clamping device 30 may further include a fill light component, wherein the fill light component may be as follows: Figure 3 The fill light plate 80 shown in the figure can provide fill light when the acquisition component acquires the target bar code identification, for example, it can provide fill light when the RGB camera 70 acquires the two-dimensional code information. Of course, the fill light plate 80 can also provide fill light when the spatial position detection component detects the spatial position of the target storage part, for example, it can provide fill light when the depth camera 60 detects the spatial position information of the target storage part, thereby ensuring the brightness requirements during the shooting or acquisition process.

[0067] In one embodiment, if Figure 3 The depth camera 60, the RGB camera 70 and the fill light plate 80 are all connected to the clamping device 30 through the camera mounting plate 90. Figure 3 As shown, the camera mounting plate 90 can be installed between the force detection component 50 and the clamp body 401. At this time, if the components installed on the camera mounting plate, such as the depth camera 60, the RGB camera 70, etc., collide abnormally with other objects, the force detection component 50 can detect abnormal forces and torques, thereby reminding relevant personnel to pay attention to abnormal situations and handle abnormal situations in a timely manner. Of course, the camera mounting plate can also be set between the force detection component 50 and the robot body of the assembly robot to which the clamping device belongs, and this specification does not limit this.

[0068] In one embodiment, the clamping device 30 may further include a mounting assembly, which can mount the clamping device to a robot body of an assembly robot to which the clamping device belongs, wherein the mounting assembly may be as follows: Figure 3 The connecting plate 100 shown. The force detection component 50 can be arranged between the clamping component 40 and the mounting component, so that the force detection component 50 can detect the force information of the clamping component 40. Then, when working, driven by the mounting component, the clamping component 40, the force detection component 50 and the camera mounting plate 90 can move synchronously with the mounting component.

[0069] The following description will be made by taking the example of inserting and / or removing the target hard disk into and from the target slot by the clamping device. Of course, the object clamped by the clamping device in this specification can be not only a hard disk but also other objects that need to be assembled, such as a battery cell, a filter, etc., and this specification does not limit this.

[0070] In one embodiment, the working process of the clamping device inserting the target hard disk into the target slot can be: the motion component of the clamping claw of the clamping device can grab the target hard disk by opening and closing, and according to the visual positioning result of the spatial position detection component, move the target hard disk to the initial position at the target slot, that is, move the target hard disk to the vicinity of the target slot, and then the clamping device can contact the end of the target hard disk with the open end of the target slot, so that the target hard disk can slowly enter the target slot. If the target hard disk is not aligned with the target slot, the target hard disk and the target slot will act on the force, and the force can be transmitted to the force detection component through the motion component. The force detection component can obtain the force and the corresponding torque. For example, the force detection component can be a six-dimensional force sensor, and the six-dimensional force sensor transmits it to the corresponding controller. Then the controller can fine-tune the posture of the clamping device according to the force information, for example, it can drive the clamping device to move along the horizontal axis, along the vertical axis, or along a preset direction, so that the target hard disk can be aligned with the target slot until no force occurs between the target hard disk and the target slot, and the target hard disk can be safely inserted, thereby effectively avoiding rigid collision between the hard disk and the corresponding slot and damage.

[0071] In one embodiment, the working process of the clamping device pulling the target hard disk out of the target slot can be: the clamping device can move the motion component of the clamping claw to the initial position of the target slot according to the visual positioning result of the spatial position detection component, that is, move the motion component to the vicinity of the target slot, and then control the motion component of the clamping claw to touch the bayonet switch corresponding to the target hard disk, so that the bayonet is opened. Subsequently, the motion component can be moved to the vicinity of the target hard disk and opened, so that the end of the target hard disk can be clamped when the motion component is closed, wherein the motion component performs compliance position adjustment according to the force information detected by the force detection component during the process of clamping the target hard disk. After the motion component clamps the target hard disk, the clamping device can slowly retreat to perform the extraction action, and during the extraction process, the force control of the extraction direction can be performed according to the force information fed back by the force detection component, so that the target hard disk can be guaranteed to be free of force in any direction other than the extraction direction, so that the target hard disk can be slowly withdrawn from the target slot, and the extraction of the target hard disk can be successfully completed.

[0072] Figure 5 is a schematic diagram of the composition structure of an assembly robot shown in an exemplary embodiment of this specification, such as Figure 5 The assembly robot includes a robot body and a clamping device. The assembly robot can be used to insert and / or remove a target object from a corresponding target storage portion. The target object can be not only a server hard disk but also other objects that need to be assembled, such as battery cells, filters, etc., which are not limited in this specification. The robot body of the assembly robot may include a walking part, a clamping part, a spatial position detection part, a force detection part, a control part and a driving part. The clamping device in the assembly robot, the walking part, the clamping part, the spatial position detection part, the force detection part, the control part and the driving part included in the robot body are similar to the above-mentioned embodiments. The implementation details involved can refer to the above-mentioned embodiments, so they will not be repeated below.

[0073] It can be seen from the above technical scheme that the force detection component in the clamping device in this specification can detect the force information of the target object when the clamping device inserts and / or removes the target object from the target storage part. The force information is used by the controller to adjust the posture of the clamping device so that the target object is aligned with the target storage part. The posture of the clamping device can be adjusted in real time according to the force information, and the clamping device can be accurately positioned, thereby achieving safe insertion and removal of the target object and avoiding damage to the target object and the target storage part during the assembly process. At the same time, the motion component of the clamping device includes proximal phalanges and terminal phalanges, which can make the motion component have independent motion ability and make the motion component more flexible, thereby facilitating the realization of various grasping actions.

[0074] Figure 6This is a flow chart of a storage location identification method shown in this specification. Figure 6 As shown, the method can be applied to assembly equipment (such as Figure 5 The assembly robot shown in the figure, etc., and the control logic is realized by the control unit or other control device contained in the robot); the method may include the following steps:

[0075] Step 602: determine a target area corresponding to the target object to which the target object belongs.

[0076] In one embodiment, the assembly robot may recognize the image within the image acquisition area, thereby determining the target area corresponding to the target object to which the target object belongs.

[0077] In one embodiment, the assembly robot can adjust the image acquisition area of ​​the visual camera, wherein the visual camera can transmit the image projected onto the sensor through the lens to a machine device that can be stored, analyzed or displayed, for example, the visual camera can be a CCD (Charge Coupled Device camera, charge coupled) camera, CMOS (Complementary Metal Oxide Semiconductor, complementary metal oxide) semiconductor camera, etc., which is not limited in this specification. The assembly robot can adjust the target device to which the target object belongs to the preset position of the image acquisition area, wherein the preset position can be any position of the image acquisition area set according to actual needs, such as the central position, top position, end position or a position in the upper left of the image acquisition area, etc., which is not limited in this specification. In addition, the target object can be a server hard disk, battery sheet or filter sheet that needs to be assembled, etc. The target object can be assembled in the target object or unloaded from the corresponding storage position in the target object, which is not limited in this specification.

[0078] In one embodiment, the assembly robot can sequentially identify the barcode identification corresponding to each object in the image acquisition area. The barcode identification can be a one-dimensional barcode, a two-dimensional barcode, or a barcode graphic, for example, an EAN-13 type barcode, a UPC-A type barcode, a QR CODE type barcode, or a GS1 QR type barcode, etc. Of course, the barcode identification can also be a three-dimensional barcode, a multi-dimensional barcode, or a digital information hologram, etc., which is not limited in this specification.

[0079] When the recognition result of a certain barcode identifier can match the preset description information of the target object, the barcode identifier can be determined as the target barcode identifier corresponding to the target object. The preset description information may include a name, a number, a location description information, etc. The location description information may include a specific text description such as the 4th device in the 3rd row of the 5th machine room, or a pre-stored specific coordinate position, or a coordinate position set composed of multiple specific coordinate positions, etc., which is not limited in this specification.

[0080] In one embodiment, the assembly robot can obtain the position of the target barcode identifier, wherein the position of the target barcode identifier can be included in the recognition result of the target barcode identifier, or the assembly robot can perform visual positioning based on the determined target barcode identifier to determine the position of the target barcode identifier, or the assembly robot can search for the position of the target barcode identifier from a preset barcode identifier position record table based on information such as the target barcode identifier number included in the recognition result of the target barcode identifier. This is not limited in the present specification.

[0081] In one embodiment, the assembly robot can determine the position of the target object corresponding to the target barcode identifier based on the relative position relationship between the predefined barcode identifier and the object, so as to adjust the image acquisition area of ​​the visual camera and adjust the target object to a preset position in the image acquisition area.

[0082] In one embodiment, before adjusting the image acquisition area of ​​the visual camera, the assembly robot may first align the visual camera so that the plane of the visual camera lens is parallel to the plane of the target object. The assembly robot may determine the target object feature plane according to the RANSAC (Random Sample Consensus) algorithm, and complete the camera alignment according to the target object feature plane equation. The RANSAC algorithm may calculate the mathematical model parameters of the data and obtain valid sample data based on a set of sample data sets containing abnormal data. Of course, other algorithms may also be used to determine the target object feature plane, which is not limited in this specification.

[0083] Step 604, grid area division is performed on the target area, and according to the grid area division result and the mapping relationship between the object and the grid area, the target grid area corresponding to the target object is determined as the corresponding storage position of the target object on the target object.

[0084] In one embodiment, the assembly robot can divide the target area into grid areas. The assembly robot can then determine the target grid area corresponding to the target object based on the grid area division results and the mapping relationship between each object and the grid area, and can use the target grid area as the corresponding storage position of the target object on the target object, that is, the target object can be assembled to the corresponding storage position.

[0085] In one embodiment, the assembly robot can directly identify the center point of the object in the image acquisition area. The assembly robot can be pre-set with feature information of the center point of the object, and then the assembly robot can identify the center point of the object in the image acquisition area based on the feature information. The feature information of the center point of the object may include an indicator light of the center point of the object or an infrared signal emitted from the center point of the object, etc., which is not limited in this specification.

[0086] In one embodiment, the assembly robot can match the feature points of the image in the image acquisition area according to the object feature model, so as to determine at least one group of object feature points. Then, the assembly robot can determine the object center point corresponding to each group of object feature points according to the relative position relationship between the object feature point and the object center point. The object feature model can be pre-trained by the assembly robot or sent to the assembly robot by other equipment different from the assembly robot, which is not limited in this specification. The relative position relationship between the object feature point and the object center point can be recorded in the object feature model or in the assembly robot, which is not limited in this specification. Among them, the relative position relationship between the object feature point and the object center point can include the position and distance of a certain object feature point relative to the object center point, such as the object feature point at the left side x1 mm in the horizontal direction of the object center point, etc. The relative position relationship can also include the coordinate position of the object feature point and the corresponding object center point in the same coordinate system, etc., which is not limited in this specification. Among them, the object feature point can be a single pixel point in the image, or it can also be a region composed of multiple pixels, etc., which is not limited in this specification.

[0087] In one embodiment, a corresponding object feature point threshold may be pre-set, and each group of object feature points is converted into a corresponding object center point only when the number of any group of object feature points is not less than the object feature point threshold; and when the number of any group of object feature points is less than the object feature point threshold, it indicates that the matching process of the group of object feature points may have equipment abnormality or environmental abnormality, resulting in insufficient number of object feature points, and thus the group of object feature points is not converted into the corresponding object center point, thereby avoiding increasing the error of the position of the object center point. Alternatively, when the number of any group of object feature points is less than the object feature point threshold, the assembly robot may also move accordingly according to the received instruction to adjust the image in the image acquisition area of ​​the visual camera until the number of object feature points is not less than the object feature point threshold. For example, the object feature point threshold may be set to 80% of the number of object feature points contained in the object feature model, etc.

[0088] In one embodiment, the assembly robot can compare the identified center points of each object with a preset position, and can determine the object center point whose position matches the preset position as the target center point corresponding to the target object. For example, the object center point whose position is consistent with the preset position can be determined as the target center point, or the object center point whose position is closest to the preset position can be determined as the target center point, etc.

[0089] In one embodiment, when a corresponding object center point can be determined according to any group of object feature points, the object center point whose position matches the preset position can be determined as the target center point corresponding to the target object.

[0090] In one embodiment, when multiple object center points can be determined based on any group of object feature points, the assembly robot can cluster the multiple object center points obtained, so as to obtain corresponding cluster centers. When the preset position is the central position of the image acquisition area, the assembly robot can determine the cluster center point closest to the central position as the target center point corresponding to the target object. Among them, a density peak clustering algorithm can be used to cluster multiple object center points. Of course, the clustering algorithm can also be a k-means clustering algorithm or a mean shift clustering algorithm, which is not limited in this specification. The density peak clustering algorithm is an algorithm for clustering based on density, which uses high-density areas as the basis for judgment. Compared with traditional methods, it is suitable for processing data sets of any shape, and there is no need to set the number of clusters in advance. The algorithm can automatically find the cluster center and can achieve efficient clustering of data of any shape.

[0091] In actual operation, the positions of the matched object feature points may have certain deviations. Then, according to the relative position relationship between the object feature points and the object center points, the determined object center points may also have certain deviations, so that the number of object center points corresponding to each group of object feature points can be multiple, and the assembly robot can cluster these object center points. Alternatively, the assembly robot can use different object feature models to perform multiple feature point matches on the images in the image acquisition area. Then, the object feature points obtained in each match are different, so the number of determined object center points can be multiple, and the assembly robot can cluster these object center points.

[0092] In one embodiment, the object feature model may include pre-acquired feature point description information, wherein the feature point description information may include pixel values ​​corresponding to the feature points or pixel values ​​in the area corresponding to the feature points, pixel value rules, etc. Then the assembly robot may match the feature point description information included in the object feature model with the image actually collected in the image collection area, thereby determining the corresponding object feature points in the actually collected image.

[0093] Among them, the object feature model may only include feature point description information of the object edge area, then the assembly robot can match the feature point description information of the object edge area contained in the object feature model with the actually collected image, so as to determine the feature points corresponding to the object edge area in the actually collected image, thereby significantly reducing the amount of calculation in the matching process and improving the matching efficiency. At the same time, it can reduce the amount of data and the amount of calculation in the object feature model training process, and improve the training efficiency of the object feature model.

[0094] In one embodiment, the assembly robot may first divide the image in the image acquisition area into edge area images and non-edge area images through a pre-trained edge feature model. The object feature model may only contain feature point description information of the edge area of ​​the object, and then the assembly robot may match the feature point description information contained in the object feature model with the edge area image in the image acquisition area, so as to determine the feature points corresponding to the edge area of ​​the object in the image in the image acquisition area.

[0095] Wherein, the above-mentioned edge feature model can be a neural network model, and the training process of the edge feature model is as follows: an object edge sample image and an object non-edge sample image can be input, wherein the object edge sample image is marked with "object edge", and the object non-edge image is marked with "non-object edge". In addition, the server can compare the predicted recognition result for the sample image output by the edge feature model with the actual recognition result marked on the sample image, namely "object edge" and "non-object edge", so that the corresponding parameters in the edge feature model can be adjusted according to the difference information between the predicted recognition result and the actual recognition result, so that the edge feature model can more accurately recognize the edge area and non-edge area. The edge feature model can be a convolutional neural network (CNN) model, a recurrent neural network (RNN) model, or a generative adversarial network (GAN) model or other types of neural network models, which are not limited in this specification.

[0096] In one embodiment, the object feature model can be a neural network model, and the training process of the object feature model is as follows: an object sample image can be input, wherein the object sample image is annotated with distinguishing feature information of corresponding object feature points, for example, each object sample image is annotated with "feature point No. 1", "feature point No. 2" and "feature point No. 3", etc.

[0097] Then, the image actually collected in the image acquisition area is input into the trained object feature model, and at least one group of object feature points can be output. For example, each group of object feature points can include "feature point No. 1", "feature point No. 2" or "feature point No. 3", etc. And according to the relative position relationship between each object feature point and the object center point recorded in the object feature model, the object center point corresponding to each group of object feature points is determined. The object feature model can be a convolutional neural network (CNN) model, a recurrent neural network (RNN) model or a generative adversarial network (GAN) model or other types of neural network models, which are not limited in this specification.

[0098] In one embodiment, the target area corresponding to the target center point can be determined based on the relative position relationship between the object center point and the object area. For example, the object area can be set as a rectangular area with side lengths of 200 mm and 100 mm, and the object center point is the geometric center point of the object area. Then, the corresponding target area can be delineated based on the target center point and the size information of the target object.

[0099] In one embodiment, the assembly robot can match the feature points of the image in the target area according to the object feature model, so as to determine at least one group of object feature points. Then, the assembly robot can determine the object center point corresponding to each group of object feature points according to the relative position relationship between the object feature point and the object center point. The relative position relationship between the object feature point and the object center point can be recorded in the object feature model, or can be recorded in the assembly robot, and this specification does not limit this. Among them, the relative position relationship between the object feature point and the object center point can include the orientation and distance of a certain object feature point relative to the object center point, such as the object feature point at the left side of the object center point in the horizontal direction x2 mm, etc., and the relative position relationship can also include the coordinate position of the object feature point and the corresponding object center point in the same coordinate system, etc., and this specification does not limit this. Of course, the object feature point can be a single pixel point in the image, or it can also be an area composed of multiple pixels, etc., and this specification does not limit this.

[0100] In one embodiment, a corresponding object feature point threshold can be set in advance, and each group of object feature points is converted into a corresponding object center point only when the number of any group of object feature points is not less than the object feature point threshold; and when the number of any group of object feature points is less than the object feature point threshold, it indicates that there may be equipment abnormality or environmental abnormality in the matching process of the group of object feature points, resulting in an insufficient number of object feature points, and thus the group of object feature points is not converted into the corresponding object center point, thereby avoiding increasing the error in the position of the object center point.

[0101] In one embodiment, the object feature model may include feature point description information of pre-acquired object feature points, or the object feature model may also be a neural network model. The training and matching process of the object feature model is similar to the training and matching process of the above-mentioned object feature model. The implementation details involved can also refer to the above records and will not be repeated here.

[0102] In one embodiment, when a corresponding object center point can be determined according to any set of object feature points, the target area can be divided into corresponding grid areas according to the relative position relationship between the object center point and the grid areas.

[0103] In one embodiment, when multiple object center points can be determined based on any set of object feature points, the assembly robot can cluster the multiple object center points, thereby obtaining corresponding cluster centers. The assembly robot can determine the cluster center point whose position matches the preset object arrangement direction as the object center point corresponding to each set of object feature points, wherein the object arrangement direction can include at least one of the following: horizontal direction, vertical direction. For example, if the object arrangement direction is arranged in a straight line along the horizontal direction, then the cluster center closest to the arrangement in a straight line along the horizontal direction is selected as the object center point, etc. If the object arrangement direction is arranged in a straight line along the horizontal direction and in a straight line along the vertical direction, then the cluster center closest to the arrangement in a straight line along the horizontal direction and in a straight line along the vertical direction can be selected as the object center point, etc.

[0104] In actual operation, the positions of the matched object feature points may have certain deviations. Then, according to the relative position relationship between the object feature points and the object center points, the determined object center points may also have certain deviations, so that the number of object center points corresponding to each group of object feature points may be multiple, and the assembly robot can cluster these object center points. Alternatively, the assembly robot can use different object feature models to match the feature points of the images in the image acquisition area. Then, the object feature points obtained in each match are different, so the number of determined object center points may be multiple, and the assembly robot can cluster these object center points.

[0105] The assembly robot can divide the target area into grid areas according to the relative position relationship between the center point of the object and the grid area. For example, the grid area can be pre-set as a rectangular area with side lengths of 100 mm and 20 mm, and then the corresponding grid area can be delineated according to the size information of the center point of the object and the grid area.

[0106] In one embodiment, the assembly robot can match feature points of an image in a target area according to an array feature model, thereby determining at least one set of object feature points. Then, the assembly robot can divide the target area into grid areas according to a standard grid array defined in the array feature model, thereby generating a target grid array, wherein the positions corresponding to the array feature points in the target grid array are consistent with the positions corresponding to the array feature points in the standard grid array.

[0107] In one embodiment, a corresponding array feature point threshold may be pre-set, and each group of array feature points is converted into a corresponding array center point only when the number of any group of array feature points is not less than the array feature point threshold; and when the number of any group of array feature points is less than the array feature point threshold, it indicates that there may be equipment abnormality or environmental abnormality in the matching process of the group of array feature points, resulting in an insufficient number of array feature points, and thus the group of array feature points is not converted into the corresponding array center point, thereby avoiding increasing the error in the position of the array center point.

[0108] In one embodiment, the array feature model may include feature point description information of pre-acquired array feature points, or the array feature model may also be a neural network model. The training and matching process of the array feature model is similar to the training and matching process of the above-mentioned object feature model. The implementation details involved can also refer to the above records and will not be repeated here.

[0109] In one embodiment, when the first grid area division result of the target area is obtained according to the object feature model and the second grid area division result of the target area is obtained according to the array feature model, the assembly robot can calculate the homography matrix between the first grid area division result and the second grid area division result. The assembly robot can correct the grid area division result of the target area according to the homography matrix, and the corrected grid area division result can be used to determine the target grid area corresponding to the target object. Compared with the first grid area division result and the second grid area division result of the target area, the corrected grid area division result is more accurate, more conducive to determining the target grid area corresponding to the target object, and can improve the accuracy of subsequent visual positioning of the target grid area. Among them, the homography matrix refers to a matrix in the field of computer vision that represents any two images of the same plane in the space through homography. The homography matrix can usually be applied to image correction, image stitching or camera pose estimation. Of course, other methods can also be used to correct the grid area division result of the target area, which is not limited in this specification.

[0110] In one embodiment, the assembly robot may perform visual positioning on the target grid area, and thus may assemble the target object to a corresponding storage position according to the visual positioning result, or unload the target object from the storage position corresponding to the target grid area.

[0111] Of course, the assembly robot can use a depth camera to visually locate the target grid area. The assembly robot can also use infrared positioning technology, ultrasonic positioning technology or binocular camera spatial positioning technology to locate the target grid area, and this manual does not limit this.

[0112] Figure 7 This is a flow chart of a storage location identification method shown in this specification. Figure 7 As shown, the method can be applied to assembly equipment (such as Figure 5 The assembly robot shown in the figure, and the control logic is realized by the control unit or other control device contained in the robot); the target object is described as a server hard disk; the method may include the following steps:

[0113] Step 702, receiving indication information.

[0114] In this embodiment, the assembly robot can move according to the received instruction information. The instruction information includes inserting the target hard disk into the storage position corresponding to the number X001 in the F04 server of the cabinet No. 03 in the No. 5 computer room. That is, the target server corresponding to the target hard disk is numbered F04, and the corresponding storage position is numbered X001.

[0115] Step 704, perform preliminary adjustment on the visual camera.

[0116] Step 706, adjusting the image acquisition area of ​​the visual camera.

[0117] In this embodiment, the assembly robot can move to the front of the No. 03 cabinet in the No. 5 computer room according to the instruction information, and the assembly robot can first align the visual camera so that the plane of the visual camera lens is parallel to the server plane in the server cabinet. The assembly robot can determine the server feature plane according to the RANSAC (Random Sample Consensus) algorithm and complete the camera alignment according to the server feature plane equation.

[0118] In this embodiment, it is assumed that each server has a corresponding QR code identifier, and the relative position relationship between the QR code identifier and the corresponding server is that the QR code identifier is on the left side of the server, the center point of the QR code identifier and the center point of the corresponding server are on the same horizontal line, and the center point of the QR code identifier is 260 mm away from the center point of the corresponding server, wherein the recognition result of the QR code identifier includes the server number.

[0119] Then the visual camera in the assembly robot can sequentially collect the QR code identifiers corresponding to each server device in the image collection area, and identify the collected QR code identifiers. When the recognition result of the QR code identifier is consistent with the number of the target server, the QR code identifier can be determined to be the target QR code identifier corresponding to the target server. The assembly robot can obtain the coordinate position of the collected target QR code identifier, and based on the above relative position relationship between the QR code identifier and the server, the approximate position of the target server can be determined, and the image collection area of ​​the visual camera can be adjusted according to the approximate position of the target server to adjust the target server to the central position of the image collection area.

[0120] Step 708: Generate a server feature model.

[0121] In this embodiment, the server feature model can be generated by training the server feature model. The training process of the service feature model is as follows: a server edge sample image corresponding to the server edge area is cut out from each server sample image, and a corresponding feature point is marked in each server edge sample image. The server feature model is trained using multiple server edge sample images to obtain the following: Figure 8 The server feature points in the server feature model shown in the figure include four server feature points, namely feature point 81, feature point 82, feature point 83 and feature point 84, wherein feature point 81 is an indicator light area at the edge of the server comprising multiple pixel points, feature point 82 is a switch area at the edge of the server comprising multiple pixel points, and feature point 83 and feature point 84 are both single pixel points.

[0122] In this embodiment, a plurality of server edge sample images are used to train the server feature model. During the training process, it is only necessary to mark feature points on the server edge sample images, and there is no need to mark feature points on the entire server image. This can greatly reduce the amount of data required during the training process and the amount of calculation during the training process, and can significantly simplify the training process.

[0123] In this embodiment, it is assumed that the relative position relationship between the above four feature points recorded in the server feature point model and the corresponding server center point is as follows:

[0124] The distance between the feature point 81 and the server center point in the x-axis direction is between -x3 and -x4, and the distance between the feature point 81 and the server center point in the y-axis direction is between +y1 and +y2;

[0125] The distance between the feature point 82 and the server center point in the x-axis direction is between -x5 and -x6, and the distance between the feature point 82 and the server center point in the y-axis direction is between +y3 and +y4;

[0126] The distance between feature point 83 and the server center point in the x-axis direction is +x7, and the distance between feature point 83 and the server center point in the y-axis direction is -y5;

[0127] The distance between the feature point 84 and the server center point in the x-axis direction is +x8, and the distance between the feature point 84 and the server center point in the y-axis direction is +y6.

[0128] Step 710: perform feature point matching on the image according to the server feature model.

[0129] Step 712, converting the server feature point into the server center point.

[0130] In this embodiment, the server feature model can be matched with the image in the image acquisition area Pic of the visual camera for feature points. Assuming that the image acquisition area contains images corresponding to three servers, such as Fig. 9 Three groups of server feature points within the image acquisition area Pic are shown, wherein the first group of server feature points includes feature point 911, feature point 912, feature point 913 and feature point 914, the second group of server feature points includes feature point 921, feature point 922, feature point 923 and feature point 924, and the third group of server feature points includes feature point 931, feature point 932, feature point 933 and feature point 934.

[0131] The assembly robot can determine the server center point corresponding to each group of server feature points based on the relative position relationship between the server feature points and the server center point recorded in the above server feature model, such as Fig. 9 shown.

[0132] In this embodiment, when there are multiple server center points determined based on the first group of server feature points, the assembly robot can use the density peak clustering algorithm to cluster the multiple server center points corresponding to the first group of server feature points to obtain the corresponding cluster center point c, wherein the number of cluster center points obtained may be one or more. The server center point a is determined based on the second group of server feature points, and the server center point b is determined based on the third group of server feature points. Of course, the assembly robot can also cluster the server center points determined by the server feature points of all three groups. At this time, the cluster center point corresponding to the second group of server center points is still the server center point a, and the cluster center point corresponding to the third group of server center points is still the server center point b. This is not limited in this specification.

[0133] The assembly robot compares the acquired cluster center point c, server center point a and server center point b with the central position, and determines the server center point a closest to the central position as the target center point of the target server, and obtains the position of the target center point.

[0134] Step 714, determine the target area.

[0135] In this embodiment, according to the relative position relationship between the server center point and the server area, the target area 92 corresponding to the target center point, i.e., the server center point a, can be determined. Assuming that the server end surface is a rectangular area with a length of 420 mm and a width of 100 mm, then the target area 92 corresponding to the target server can be delineated in combination with the target center point position and the server end surface size.

[0136] Of course, the server area 91 corresponding to the cluster center c and the server area 93 corresponding to the server center point b can be determined based on the relative position relationship between the cluster center point c, the server center point b and the server area, and this is not limited in this specification.

[0137] Step 716, generating a hard disk feature model.

[0138] In this embodiment, a hard disk feature model can be generated by training the hard disk feature model. The training process of the hard disk feature model is as follows: corresponding hard disk feature points are marked in multiple hard disk sample images, and these hard disk sample images may only contain images of a single hard disk. The hard disk feature point may be a switch area containing multiple pixels or an indicator light area containing multiple pixels, etc. The hard disk feature point may also be a single pixel. In addition, the hard disk feature point may include feature points of the entire hard disk end surface or may only include feature points of the edge area of ​​the hard disk end surface. This is not limited in this specification. The training and generation process of the hard disk feature model is similar to the process of the server feature model in step 708 above, and will not be repeated here.

[0139] In this embodiment, the hard disk feature model may record the relative position relationship between the hard disk feature points included in the hard disk feature model and the corresponding hard disk center point.

[0140] Step 718, matching feature points of the target area according to the hard disk feature model.

[0141] Step 720, convert the hard disk feature point into the hard disk center point.

[0142] Step 722, dividing the target area into grid areas.

[0143] In this embodiment, the hard disk feature model can be matched with the image in the above-mentioned target area 92 for feature point matching. Assuming that the target area 92 contains a total of 12 hard disks, these hard disks are installed in corresponding slots, and assuming that a total of 12 groups of hard disk feature points are determined, among which the slots are the corresponding storage positions of the hard disks.

[0144] In this embodiment, the assembly robot can determine the hard disk center point corresponding to each group of hard disk feature points according to the relative position relationship between the hard disk feature points and the hard disk center point recorded in the hard disk feature model.

[0145] In this embodiment, when the number of hard disk center points determined according to any group of hard disk feature points is multiple or when the determined hard disk center points do not conform to the preset hard disk arrangement direction, the assembly robot can cluster the multiple hard disk center points corresponding to the group of hard disk feature points using a density peak clustering algorithm to obtain corresponding cluster center points. The assembly robot can determine the cluster center point whose position among the cluster center points matches the preset hard disk arrangement direction as the hard disk center point corresponding to each group of hard disk feature points. Among them, the assembly robot can use the RANSAC algorithm and / or the least squares method to fit the obtained cluster center, that is, to match the position of each cluster center point with the preset hard disk arrangement direction. Of course, other algorithms can also be used to fit the cluster center so that the hard disk center point matches the preset hard disk arrangement direction, and this specification does not limit this.

[0146] Assuming that the preset hard disk arrangement direction is to be arranged in a straight line along the horizontal direction, the center point closest to the horizontal straight line arrangement is selected as the hard disk center point. Fig.10 Take d′11, d′12, d′13 and d′14 as an example, the hard disk center points determined according to the hard disk feature model are "d′11", "d′12", "d′13" and "d′14", and the dotted line L is the preset hard disk arrangement direction. The assembly robot fits the obtained center points according to the RANSAC algorithm and / or the least squares method, and obtains the following: Fig.10 The hard disk center points "d11", "d12", "d13" and "d14" are shown, and the target area 92 is divided into grid areas according to the hard disk center points obtained after fitting.

[0147] In this embodiment, the grid area corresponding to the center point of the hard disk can be determined based on the relative position relationship between the center point of the hard disk and the grid area. Fig.11 As shown, assuming that the hard disk end surface size is a rectangular area with a length of 100 mm and a width of 30 mm, then combined with the position of each hard disk center point d and the hard disk end surface size, the target area 92 can be grid-divided to obtain the first grid area division result A.

[0148] Step 724, generating an array feature model.

[0149] In this embodiment, the array feature model can be generated by training the array feature model. The training process of the array feature model is as follows: the array sample images corresponding to the hard disk array area are respectively cut out from the multiple server sample images, and the corresponding array feature points are marked in each array sample image. The array feature point can be a switch area containing multiple pixels or an indicator light area containing multiple pixels, etc. The array feature point can also be a single pixel. And a part of the array feature points can be consistent with the above-mentioned server feature points and hard disk feature points. The training and generation process of the array feature model is similar to the process of the server feature model in the above-mentioned step 708, and will not be repeated here.

[0150] Step 726, dividing the target area into grid areas.

[0151] In this embodiment, the assembly robot can perform grid area division on the target area 92 according to the standard grid array defined in the array model to generate a second grid area division result B, such as Fig.12 As shown, the positions corresponding to the array feature points in the standard grid array are consistent with the positions in the second grid area division result B.

[0152] Step 728, determine the homography matrix.

[0153] In this embodiment, the server can obtain the first grid area division result A based on the hard disk feature model, and the server can also obtain the second grid area division result B based on the array feature model. The server can calculate the homography matrix between the first grid area division result A and the second grid area division result B. Then the server can correct the grid area division result of the target area 92 according to the homography matrix to obtain the corrected grid area division result C.

[0154] Step 730, visually locate the target grid area.

[0155] In this embodiment, the server can be based on the predefined storage position sequence in the target server, wherein the hard disk sequence in the target server can be the numbers corresponding to the storage positions in the target server, then the target grid area corresponding to the storage position number X001 can be determined from the corrected grid area division result C, such as Fig.13 The assembly robot can use the depth camera to perform visual positioning on the target grid area, so as to insert and / or remove the target hard disk from the storage position according to the visual positioning result.

[0156] It can be seen from the above technical scheme that in this specification, by adjusting the target object to a preset position within the image acquisition area, and determining the target area corresponding to the target object based on the identified object center point, thereby determining the target grid area corresponding to the target object, the target object can be assembled to the storage position corresponding to the target grid area or unloaded from the storage position corresponding to the target grid area, the assembly robot can be accurately moved to the corresponding target object and positioned to the grid area corresponding to the target object, the assembly robot can accurately perform assembly or unloading operations on the target object, thereby improving the assembly efficiency of the target object.

[0157] Fig.14 This is a flow chart of an object assembly method shown in this specification. Fig.14 As shown, the method can be applied to assembly equipment (such as Figure 5 The assembly robot shown in the figure, etc., and the control logic is realized by the control unit or other control device contained in the robot); the method may include the following steps:

[0158] Step 1402 , visually locate the target storage portion, and move the target object to an initial position at the target storage portion according to the visual positioning result.

[0159] In one embodiment, the assembly robot can perform visual positioning on the target storage part, and move the target object to the initial position corresponding to the target storage part according to the result of the visual positioning, so that the target object is pre-aligned with the target storage part. The target object can be an object that needs to be assembled, such as a server hard disk, a battery sheet, and a filter sheet, and the target storage part can be a device that can accommodate the target object, such as a storage slot, a storage hole, an assembly slot, or a slot, etc., which is not limited in this specification. For example, the assembly robot can perform visual positioning on the target storage part according to the spatial position of the target storage part detected by the depth camera, so that the assembly robot can move the target object to the initial position at the target storage part according to the visual positioning result, wherein the accuracy of the visual positioning of the depth camera is 1-2 mm, that is, the assembly robot can adjust the alignment accuracy between the target object and the target storage part to 1-2 mm according to the depth camera. Among them, the depth camera can be a depth camera based on active projection structured light, a passive binocular camera, and a depth camera based on light flight time, etc., which is not limited in this specification.

[0160] In one embodiment, the assembly robot may perform initial positioning on the target storage portion, and move the target object to an initial position corresponding to the target storage portion according to the result of the initial positioning. The assembly robot may perform initial positioning by using infrared positioning technology, ultrasonic positioning technology, or binocular camera spatial positioning technology, etc., which is not limited in this specification.

[0161] Step 1404 , in the process of inserting the target object from the initial position into the target receiving portion, obtaining force information of the target object.

[0162] In one embodiment, during the process of inserting the target object from the initial position into the target receiving portion, the force detection unit in the assembly robot can obtain the force information of the target object. The force information can include information such as the contact force between the target object and the target receiving portion and the torque corresponding to the contact force, which is not limited in this specification.

[0163] Step 1406: adjust the posture of the target object according to the force information, so that the target object is aligned and inserted into the target receiving portion.

[0164] In one embodiment, the assembly robot can adjust the posture of the target object based on the force information obtained, and the posture adjustment may include moving the target object along the adjustment direction by a corresponding adjustment distance, wherein the adjustment direction may include along the horizontal axis, the vertical axis, or a pre-set direction, etc., which is not limited in this specification.

[0165] In one embodiment, when the contact force of the target object is not less than the contact force threshold or the applied torque is not less than the torque threshold, it indicates that the target object is not aligned with the target storage portion, and the assembly robot can move the target object along the adjustment direction by a corresponding adjustment distance. When the contact force is less than the contact force threshold and the applied torque is less than the torque threshold, it indicates that the target object has been aligned with the target storage portion, and then there will be no violent collision between the target object and the target storage portion, and the contact force and applied torque are both within a safe range, and the assembly robot can insert the target object into the target storage portion for a fixed distance, wherein the fixed distance can be set according to actual needs.

[0166] In one embodiment, the assembly robot may also pre-establish a coordinate system. For example, to facilitate subsequent calculations, the assembly robot may pre-establish a three-dimensional coordinate system, and adjust a plane coordinate system composed of vertical coordinates and horizontal coordinates of the three-dimensional coordinate system to be parallel to the front surface of the target device to which the target storage portion belongs. Of course, a multi-dimensional coordinate system may also be established according to actual needs, and this description does not limit this.

[0167] In one embodiment, when the contact force of the target object is not less than the contact force threshold or the applied torque is not less than the torque threshold, the assembly robot can input the acquired contact force and applied torque into a preset zero torque point calculation formula to obtain the zero torque point position of the target object. The assembly robot also pre-sets the clamping part to clamp at a preset position of the target object, so that the assembly robot can also directly calculate the position of the geometric center point of the target object at this time.

[0168] In one embodiment, the assembly robot may compare the zero moment point position and the center point position of the target object, and when the offset distance between the zero moment point position and the center point position of the target object in the adjustment direction is not less than an offset threshold, the target object may be moved according to the zero moment point position; when the offset distance between the zero moment point position and the center point position of the target object in the adjustment direction is less than the offset threshold, the assembly robot does not need to move the target object along the adjustment direction.

[0169] In one embodiment, the assembly robot can obtain the target component of the contact force of the target object in the adjustment direction, and when the target component is not less than a component threshold, the assembly robot can move the target object according to the target force component; when the target component is less than the component threshold, the assembly robot does not need to move the target object along the adjustment direction according to the target force component.

[0170] In one embodiment, the assembly robot can obtain the offset distance between the zero moment point position and the center point position in the adjustment direction and the target component force of the contact force of the target object in the adjustment direction, and the assembly robot can also determine the torque movement direction of the target object based on the relative relationship between the zero moment point position and the center point position, for example, the torque movement direction can be the direction from the center point position of the target object to the zero moment point position. The assembly robot can also determine the component force movement direction of the target object based on the target component force, for example, the component force movement direction can be the direction pointed by the target component force. In the case where the torque movement direction matches the component force movement direction, that is, the torque movement direction is consistent with the component force movement direction, the assembly robot can move the target object according to the zero moment point position; in the case where the torque movement direction does not match the component force movement direction, that is, the torque movement direction is inconsistent with the component force movement direction, then the assembly robot can move the target object according to the target component force.

[0171] In one embodiment, when the assembly robot moves the target object according to the zero moment point position, the adjustment distance corresponding to the target object is the offset distance between the zero moment point position and the center point position in the adjustment direction, and the adjustment direction can be the direction from the center point position of the target object to the zero moment point position.

[0172] In one embodiment, when the assembly robot moves the target object according to the target force component, the assembly robot can determine the adjustment distance corresponding to the target force component according to the mapping relationship between the force component and the adjustment distance, and the adjustment distance is the adjustment distance, and the adjustment direction can be the direction of the target force component.

[0173] In one embodiment, the adjustment direction can be along the axial direction of the coordinate system established above, wherein the adjustment direction can include at least one of the following: the positive direction along the horizontal axis, the negative direction along the horizontal axis, the positive direction along the vertical axis, the negative direction along the vertical axis, etc.

[0174] In one embodiment, if the offset distances of the zero moment point position and the center point position of the target object in any adjustment direction are both less than the offset threshold and the target component force of the contact force in any adjustment direction is less than the component force threshold, the assembly robot still cannot successfully insert the target object into the corresponding target storage portion, indicating that an abnormal situation exists at this time. Then the assembly robot can also make a tentative adjustment to the target object according to the preset adjustment direction of the target object and the preset adjustment distance corresponding to the preset adjustment direction, and continue to insert the tentatively adjusted target object into the target storage portion, and can obtain the force information of the target object, and re-determine whether to continue to adjust the posture of the target object according to the force information, until the target object is successfully inserted into the corresponding target storage portion, wherein the preset adjustment direction can be set according to actual needs, and the corresponding preset adjustment distance can also be set according to actual needs, which is not limited in this specification. For example, the assembly robot can first move the target object by 0.1 mm in the positive direction of the horizontal axis, and then slowly insert the target object into the target storage portion. At this time, the force information of the target object can be obtained, and as mentioned above, it is determined whether to adjust the posture of the target object based on the force information. Assuming that at this time, the force information of the target object is still that the offset distance of the zero moment point position corresponding to the target object and the center point position of the target object in any adjustment direction is less than the offset threshold and the target component force of the contact force in any adjustment direction is less than the component force threshold, but the target object still cannot be inserted into the target storage portion, then the assembly robot can move the target object by 0.1 mm in the negative direction of the vertical axis, and continue to try to slowly insert the target object into the target storage portion, and obtain the force information of the object, and as mentioned above, it is determined whether to adjust the posture of the target object based on the force information, until the target object can be successfully inserted into the target storage portion.

[0175] In one embodiment, the assembly robot can also detect the depth of the target object inserted into the target storage section, and when the depth is not less than a depth threshold, the assembly robot can stop adjusting the posture of the target object according to the force information. That is to say, when the assembly robot detects that the depth of the target object inserted into the target storage section is greater than the depth threshold, it indicates that the target object has been accurately positioned and can be successfully inserted into the corresponding target storage section, and the subsequent insertion process of the target object can use the corresponding target storage section as a guide reference. The assembly robot can detect the depth of the target object inserted into the target storage section after each posture adjustment of the target object, or the assembly robot can detect the depth of the target object inserted into the target storage section according to a preset time period, etc., and this is not limited in this specification.

[0176] Of course, in the technical solution of this specification, the target object can be a server hard disk, and the corresponding target storage part can be a slot of the server hard disk, etc. The process of assembling the server hard disk is similar to the above embodiment, and the implementation details involved can also refer to the above embodiment, so they will not be repeated below.

[0177] For ease of understanding, the technical solution of this specification is further described below in conjunction with the accompanying drawings. Fig.15 , Fig.15 This is a flowchart of an object assembly method provided by an exemplary embodiment of this specification. The target object is a server hard disk for exemplary description. The method is applied to an assembly device (such as Figure 5 The assembly robot shown in the figure, etc., and the control logic is realized by the control unit or other control device contained in the robot); the method may include the following steps:

[0178] Step 1502, visually locate the target slot on the server.

[0179] In this embodiment, the assembly robot can visually locate the target assembly slot according to the spatial position information of the target slot detected by the depth camera, and then the assembly robot can drive the clamping part to move the target hard disk to the initial position of the target slot according to the visual positioning result, wherein the accuracy of the visual positioning by the depth camera is 1-2 mm, and then the assembly robot can adjust the alignment accuracy between the target hard disk and the target slot to 1-2 mm. The gap range of the relative position between the target hard disk and the target slot is required to be no more than 0.5 mm, so only when the gap range between the target hard disk and the target slot is less than 0.5 mm, can it be indicated that the target hard disk has been aligned with the target slot, the target hard disk can be smoothly inserted into the target slot, and no violent collision will occur between the target hard disk and the target slot.

[0180] Step 1504, move the target hard disk along the axial direction of the target slot by a fixed distance.

[0181] Step 1506, detecting force information.

[0182] In this embodiment, when the target hard disk is in the initial position, the assembly robot can drive the clamping component to slowly move the target hard disk along the axial direction of the target slot for a fixed distance to approach the target slot, so that the target hard disk can gradually approach and insert into the target slot. Assuming that the force detection part in the assembly robot is a six-dimensional force sensor, the six-dimensional force sensor can detect the force information of the target hard disk during each slow movement of the fixed distance, and the force information includes the contact force F and the corresponding torque M between the target hard disk and the target slot. Among them, the size of the fixed distance can be set according to the actual situation of the target hard disk and the target slot, and this specification does not limit this.

[0183] In this embodiment, the target hard disk is slowly and continuously brought closer to the target slot, so that no violent collision occurs between the target hard disk and the target slot, and the contact force between the target hard disk and the target slot is always within a safe range. There is a safe force limit between the target hard disk and the target slot, and the speed at which the target hard disk is slowly inserted into the target slot needs to be adjusted accordingly according to the safe force limit to ensure that the contact force F and the torque M between the target hard disk and the target slot are within a safe range, thereby ensuring that neither the target hard disk nor the target slot is damaged.

[0184] Step 1508, determining whether the contact force is less than a contact force threshold and determining whether the applied torque is less than a torque threshold.

[0185] In this embodiment, the assembly robot can determine whether the contact force F in the detected force information is less than a preset contact force threshold and whether the applied torque M is less than a torque threshold. The contact force threshold and the torque threshold can be preset in the assembly robot or can be sent to the assembly robot by other devices, and this specification does not limit this.

[0186] If the contact force F in the detected force information is less than the contact force threshold and the applied torque M is less than the torque threshold, it can indicate that the target hard disk has been aligned with the target slot, that is, the target hard disk can smoothly enter the target slot and no contact force or only a slight contact force is generated between the target hard disk and the target slot, for example, the outer surface of the target hard disk rubs against the inner surface of the target slot, etc., and then go to step 1516.

[0187] If the contact force F in the detected force information is not less than the contact force threshold or the applied torque M is not less than the torque threshold, it may indicate that the target hard disk is not aligned with the target slot, that is, the outer surface of the target hard disk and the inner surface of the target slot generate a large contact force, and the assembly robot needs to adjust the target hard disk along the adjustment direction by a corresponding adjustment distance and proceed to step 1510.

[0188] Step 1510, determine the zero moment point position and the center point position.

[0189] In this embodiment, the assembly robot can pre-establish a three-dimensional coordinate system, such as Fig.16 The xyz axis is taken as the horizontal axis, the y axis is the vertical axis, and the z axis is the axis along the target slot. Then the adjustment direction of the target hard disk may include the positive direction along the horizontal axis, the negative direction along the horizontal axis, the positive direction along the vertical axis, or the negative direction along the vertical axis. Of course, the direction of the coordinate system can also be set according to actual needs, and this specification does not limit this.

[0190] In this embodiment, the assembly robot can input the acquired contact force F, action moment M and the coordinate information of the center of mass of the target hard disk in the coordinate system into the preset zero moment point calculation formula, thereby calculating the zero moment point position (X1, Y1, Z1) of the target hard disk. And assuming that the assembly robot is pre-set to clamp the target hard disk at the center of the two side elevations each time, and the assembly robot has pre-acquired the size information of the target hard disk, i.e., the length, width and height of the target hard disk, then the assembly robot can also calculate the geometric center point position (X2, Y2, Z2) of the target hard disk at this time.

[0191] Step 1512, obtaining the horizontal axial force component and the vertical axial force component of the target hard disk.

[0192] In this embodiment, the assembly robot can also obtain the component forces Fx, Fy and Fz of the target hard disk in the x-axis, y-axis and z-axis directions respectively according to the obtained contact force F.

[0193] Step 1514, adjusting the target hard disk according to the horizontal axial position and the vertical axial position.

[0194] In this embodiment, the assembly robot can obtain the zero torque point position of the target hard disk and the offset distance of the center point position of the target hard disk in the horizontal axis, i.e. (X1-X2), and assuming that the offset threshold is 0.5mm, i.e. 0.5 millimeters, the assembly robot can also obtain the component force Fx of the target hard disk in the horizontal axis, assuming that the component force threshold in the horizontal axis is 2N, i.e. 2 Newtons.

[0195] In this embodiment, if the absolute value of the offset distance (X1-X2) of the target hard disk is not less than 0.5 mm or Fx is not less than 2 Newtons, it can be indicated that the position of the target hard disk in the horizontal axis is incorrect. The assembly robot first slowly retracts the target hard disk along the axis of the target slot by the above-mentioned fixed distance, and then the assembly robot adjusts the position of the target hard disk in the horizontal axis.

[0196] The assembly robot can determine the torque movement direction of the target object according to the relative relationship between the zero torque point position and the center point position, and determine the component force movement direction of the target object according to the target component force Fx, and when the torque movement direction matches the component force movement direction, the target hard disk is moved according to the zero torque point position; when the torque movement direction does not match the component force movement direction, the target hard disk is moved according to the target component force.

[0197] For example, if the offset distance (X1-X2) is -0.8mm, it can be determined that the target hard disk needs to be moved in the negative direction of the horizontal axis, that is, the torque movement direction is in the negative direction of the horizontal axis. If the component force Fx on the horizontal axis is also in the negative direction of the horizontal axis, that is, the component force movement direction is in the negative direction of the horizontal axis. Then it can be determined that the torque movement direction is consistent with the component force movement direction, and the assembly robot can move the target object in the negative direction of the horizontal axis by -0.8mm according to the position of the zero torque point.

[0198] If the offset distance (X1-X2) is +0.8mm, it can be determined that the target hard disk needs to move along the positive direction of the horizontal axis, that is, the torque movement direction is along the positive direction of the horizontal axis. If the target component force Fx on the horizontal axis is along the negative direction of the horizontal axis, that is, the component force movement direction is along the negative direction of the horizontal axis. Then it can be determined that the torque movement direction is inconsistent with the component force movement direction, and the assembly robot can move the target hard disk according to the target component force Fx. Among them, the mapping relationship between the target component force and the moving distance can be maintained in the assembly robot in advance. For example, when Fx is +1N, the target hard disk is moved 0.1mm along the positive direction of the horizontal axis; when Fx is +2N, the target hard disk is moved 0.2mm along the positive direction of the horizontal axis; when Fx is -1N, the target hard disk is moved 0.1mm along the negative direction of the horizontal axis, etc. Assuming that the target component force Fx is -1N at this time, the assembly robot can determine that the target hard disk is moved 0.1mm along the negative direction of the horizontal axis according to the corresponding mapping relationship.

[0199] In this embodiment, when the moving direction of the torque is consistent with the moving direction of the component force, it can be shown that the calculated zero torque point position has high accuracy and reliability, and the assembly robot can move the target hard disk according to the zero torque point position so that the target hard disk is close to the correct position of the target hard disk on the horizontal axis. When the moving direction of the torque is inconsistent with the moving direction of the component force, it can be shown that there is a large error in the calculated zero torque point position, and the assembly robot can move the target hard disk according to the target component force so that the target hard disk is closer to the correct position of the target hard disk on the horizontal axis.

[0200] In this embodiment, if the absolute value of the offset distance (X1-X2) is less than the offset threshold of 0.5 mm and Fx is less than the component force threshold of 2N, it can be indicated that the position of the target hard disk in the horizontal axis is correct, and the target hard disk does not need to be adjusted in the horizontal axis, so the assembly robot does not need to move the target hard disk in the horizontal axis.

[0201] In this embodiment, the assembly robot can obtain the zero torque point position of the target hard disk and the offset distance (Y1-Y2) of the center point position of the target hard disk in the vertical axis, assuming that the offset threshold is 0.5mm, i.e. 0.5 millimeters. The assembly robot can also obtain the component force Fy of the target hard disk in the vertical axis, assuming that the component force threshold in the horizontal axis is 2N, i.e. 2 Newtons.

[0202] If the absolute value of the offset distance (Y1-Y2) is not less than 0.5mm or Fy is not less than 2N, it indicates that the position of the target hard disk in the vertical axis is incorrect. The assembly robot first slowly retracts the target hard disk along the axis of the target slot by the above-mentioned fixed distance, and then the assembly robot adjusts the position of the target hard disk in the vertical axis. The position adjustment process is similar to the adjustment process of the target hard disk in the horizontal axis. The implementation details involved can also refer to the above-mentioned adjustment process of the target hard disk in the horizontal axis, which will not be repeated here.

[0203] If the absolute value of the offset distance (Y1-Y2) is less than 0.5mm and Fy is less than 2N, it means that the target hard disk is in the correct vertical position and does not need to be adjusted. Therefore, the assembly robot does not need to move the target hard disk in the vertical position.

[0204] In this embodiment, after the target hard disk is moved along the horizontal axis and / or after the target hard disk is moved along the vertical axis, the process proceeds to step 1504 .

[0205] Step 1516, determining whether the depth of the target hard disk inserted into the target slot reaches a depth threshold.

[0206] In this embodiment, when the contact force F in the detected force information is less than the contact force threshold and the applied torque M is less than the torque threshold, the assembly robot can also detect the depth of the target hard disk inserted into the target slot, and when it is detected that the depth of the target hard disk inserted into the target slot is less than the depth threshold, the assembly robot can adjust the posture of the target hard disk; when the depth is not less than the depth threshold H, the assembly robot can stop adjusting the posture of the target hard disk according to the force information and proceed to step 1518.

[0207] Step 1518, insert the target hard disk along the axial direction of the target slot.

[0208] When the assembly robot detects that the depth of the target hard disk inserted into the target slot is greater than the depth threshold H, it indicates that the target hard disk has been accurately positioned and can be successfully inserted into the corresponding target slot. The subsequent insertion process of the target hard disk can directly use the corresponding target slot as a guide reference without the need to adjust the posture of the target hard disk.

[0209] In this embodiment, when the offset distances of the zero moment point position and the center point position of the target hard disk in any adjustment direction are less than the offset threshold and the target component force of the contact force in any adjustment direction are less than the component force threshold, the assembly robot still cannot successfully insert the target hard disk into the corresponding target slot, indicating that an abnormality exists in the target hard disk or an abnormality exists between the target hard disk and the target slot. Then the assembly robot can also make a tentative adjustment to the target hard disk according to the preset adjustment direction of the target hard disk and the preset adjustment distance corresponding to the preset adjustment direction, and continue to insert the tentatively adjusted target hard disk into the target slot, obtain the force information of the target hard disk, and adjust the posture of the target hard disk according to the force information until the target hard disk can be successfully inserted into the corresponding target slot, wherein the preset adjustment direction can be set according to actual needs, and the corresponding preset adjustment distance can also be set according to actual needs. For example, the assembly robot can move the target hard disk by 0.1 mm in the positive direction of the horizontal axis, and then continue to slowly insert the target hard disk into the target slot. If the target hard disk still cannot be inserted into the target slot and the force information of the target hard disk is that the offset distance of the zero moment point position corresponding to the target hard disk and the center point position of the target hard disk in any adjustment direction is less than the offset threshold and the target component force of the contact force in any adjustment direction is less than the component force threshold, then the previous adjustment action is rotated 90 degrees clockwise to obtain a new adjustment direction, and the new adjustment direction is the negative direction along the vertical axis. The assembly robot can move the target hard disk by 0.1 mm in the negative direction of the vertical axis, and then continue to slowly insert the target hard disk into the target slot, obtain the force information of the target hard disk, and adjust the posture of the target hard disk according to the force information, and continue to perform spiral search in this way until the target hard disk can be successfully inserted into the corresponding target slot. Of course, the previous adjustment action can also be rotated counterclockwise by a preset angle to obtain a new adjustment direction for trial, etc., and this specification does not limit this.

[0210] It can be seen from the above technical scheme that in this specification, the force information of the target object during the process of inserting it into the target slot from the initial position is detected, and the posture of the target object is adjusted according to the force information so that the target object is aligned and inserted into the target storage portion. This can ensure that the target object is safely and accurately inserted into the target storage portion, and can avoid damage caused by collision between the target object and the target storage portion. In addition, the target object can be fully automatically inserted and removed through an assembly robot, which can improve the assembly efficiency of the target object and reduce the cost of assembling the target object.

[0211] Fig.17 FIG. 1 shows a schematic diagram of the structure of an electronic device according to an exemplary embodiment of the present specification. Fig.17At the hardware level, the electronic device includes a processor 1702, an internal bus 1704, a network interface 1706, a memory 1708, and a non-volatile memory 1710, and may also include hardware required for other services. The processor 1702 reads the corresponding computer program from the non-volatile memory 1710 into the memory 1708 and then runs it, forming a storage location identification device at the logical level. Of course, in addition to the software implementation, this specification does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc., that is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0212] Please refer to Fig.18 In a software implementation, the storage location identification device may include a first target area determination unit 1802 and a first grid area determination unit 1804. Wherein:

[0213] A first target region determining unit 1802 is used to determine a target region corresponding to a target object to which a target object belongs;

[0214] The first grid area determination unit 1804 is used to divide the target area into grid areas, and determine the target grid area corresponding to the target object according to the grid area division result and the mapping relationship between the object and the grid area, so as to serve as the corresponding storage position of the target object on the target object.

[0215] Optionally, the first target area determining unit 1802 is specifically configured to:

[0216] Identifying a target center point corresponding to the target area in the collected visual image area;

[0217] The object area corresponding to the target center point is determined as the target area corresponding to the target object.

[0218] Optionally, the first target area determining unit 1802 is specifically configured to:

[0219] Adjusting the target object to a preset position of the visual image area;

[0220] An object center point in the visual image area is identified, and an object center point in the visual image area whose position matches the preset position is determined as a target center point corresponding to the target object.

[0221] Optionally, the first target area determining unit 1802 is specifically configured to:

[0222] Identify the barcode identifiers corresponding to the respective objects in the visual image area in sequence to determine the target barcode identifier corresponding to the target object, wherein the identification result of the target barcode identifier matches the preset description information of the target object;

[0223] According to the position of the target barcode identifier in the visual image area and the relative position relationship between the target barcode identifier and the target object, the target object is adjusted to the preset position in the visual image area.

[0224] Optionally, the first target area determining unit 1802 is specifically configured to:

[0225] Performing feature point matching on the image within the visual image area according to the object feature model to determine at least one set of object feature points;

[0226] According to the relative position relationship between the object feature points and the object center point, the object center point corresponding to each group of object feature points is determined.

[0227] Optionally, the object feature model is used to identify feature points in an edge region of an object.

[0228] Optionally, the preset position includes a central position of the visual image area; the first target area determination unit 1802 is specifically configured to:

[0229] In the case where a plurality of object center points are determined according to any group of object feature points, clustering the plurality of object center points to obtain corresponding cluster center points;

[0230] The cluster center point closest to the central position is determined as the target center point corresponding to the target object.

[0231] Optionally, the first grid area determining unit 1804 is specifically configured to:

[0232] Performing feature point matching on the image within the target area according to the object feature model to determine at least one set of object feature points;

[0233] According to the relative position relationship between the object feature points and the object center point, determine the object center point corresponding to each group of object feature points;

[0234] The target area is divided into grid areas according to the relative position relationship between the center point of the object and the grid area.

[0235] Optionally, the first grid area determining unit 1804 is specifically configured to:

[0236] When a plurality of object center points are determined according to any set of object feature points, clustering the plurality of object center points to obtain corresponding cluster center points;

[0237] The cluster center point whose position matches the preset object arrangement direction is determined as the object center point corresponding to each group of object feature points.

[0238] Optionally, the object arrangement direction includes at least one of the following: a horizontal direction and a vertical direction.

[0239] Optionally, the first grid area determining unit 1804 is specifically configured to:

[0240] Performing feature point matching on the image within the target area according to the array feature model to determine at least one set of array feature points;

[0241] The target area is divided into grid areas according to the standard grid array defined in the array feature model to generate a target grid array; wherein the positions corresponding to the array feature points in the target grid array are consistent with the positions corresponding to the standard grid array.

[0242] Optionally, also include:

[0243] A first calculation unit 1806 is used to calculate a homography matrix between the first grid area division result and the second grid area division result when a first grid area division result of the target area is obtained according to the object feature model and a second grid area division result of the target area is obtained according to the array feature model;

[0244] The first correction unit 1808 is used to correct the grid area division result of the target area according to the homography matrix, and the corrected grid area division result is used to determine the target grid area corresponding to the target object.

[0245] Optionally, also include:

[0246] The first visual positioning unit 1810 is used to perform visual positioning on the target grid area, so as to assemble the target object to the storage position corresponding to the target grid area according to the visual positioning result, or unload the target object from the storage position corresponding to the target grid area.

[0247] Please refer to Fig.19 In a software implementation, the storage location identification device may include a second target area determination unit 1902 and a second grid area determination unit 1904. Wherein:

[0248] The second target area determination unit 1902 is used to determine the target area corresponding to the target server to which the target object belongs;

[0249] The second grid area determination unit 1904 is used to divide the target area into grid areas, and determine the target grid area corresponding to the target hard disk according to the grid area division result and the mapping relationship between the hard disk and the grid area, so as to serve as the corresponding storage location of the target hard disk on the target server.

[0250] Optionally, the second target area determining unit 1902 is specifically configured to:

[0251] Identifying a target center point corresponding to the target area in the collected visual image area;

[0252] The object area corresponding to the target center point is determined as the target area corresponding to the target object.

[0253] Optionally, the second target area determining unit 1902 is specifically configured to:

[0254] Adjusting the target object to a preset position of the visual image area;

[0255] An object center point in the visual image area is identified, and an object center point in the visual image area whose position matches the preset position is determined as a target center point corresponding to the target object.

[0256] Optionally, the second target area determining unit 1902 is specifically configured to:

[0257] sequentially identifying the barcode identifiers corresponding to the servers in the visual image area to determine the target barcode identifier corresponding to the target server, wherein the identification result of the target barcode identifier matches the preset description information of the target server;

[0258] According to the position of the target barcode identifier in the visual image area and the relative position relationship between the target barcode identifier and the target server, the target server is adjusted to the preset position in the visual image area.

[0259] Optionally, the second target area determining unit 1902 is specifically configured to:

[0260] Performing feature point matching on the image in the visual image area according to the server feature model to determine at least one set of server feature points;

[0261] According to the relative position relationship between the server feature points and the server center point, the server center point corresponding to each group of server feature points is determined.

[0262] Optionally, the server feature model is used to identify feature points of a server edge area.

[0263] Optionally, the preset position includes a central position of the visual image area; the second target area determination unit 1902 is specifically configured to:

[0264] When a plurality of server center points are determined according to any group of server feature points, clustering the plurality of server center points to obtain corresponding cluster center points;

[0265] The cluster center point closest to the central position is determined as the target center point corresponding to the target server.

[0266] Optionally, the second grid area determining unit 1904 is specifically configured to:

[0267] Performing feature point matching on the image within the target area according to the hard disk feature model to determine at least one set of hard disk feature points;

[0268] According to the relative position relationship between the hard disk feature points and the hard disk center point, determine the hard disk center point corresponding to each group of hard disk feature points;

[0269] The target area is divided into grid areas according to the relative position relationship between the center point of the hard disk and the grid areas.

[0270] Optionally, the second grid area determining unit 1904 is specifically configured to:

[0271] When a plurality of hard disk center points are determined according to any set of hard disk feature points, clustering the plurality of hard disk center points to obtain corresponding cluster center points;

[0272] The cluster center point whose position matches the preset hard disk arrangement direction is determined as the hard disk center point corresponding to each group of hard disk feature points.

[0273] Optionally, the hard disk arrangement direction includes at least one of the following: horizontal direction and vertical direction.

[0274] Optionally, the second grid area determining unit 1904 is specifically configured to:

[0275] Performing feature point matching on the image within the target area according to the array feature model to determine at least one set of array feature points;

[0276] The target area is divided into grid areas according to the standard grid array defined in the array feature model to generate a target grid array; wherein the positions corresponding to the array feature points in the target grid array are consistent with the positions corresponding to the standard grid array.

[0277] Optionally, also include:

[0278] A second calculation unit 1906 is used to calculate a homography matrix between the first grid area division result and the second grid area division result when a first grid area division result of the target area is obtained according to the hard disk feature model and a second grid area division result of the target area is obtained according to the array feature model;

[0279] The second correction unit 1908 is used to correct the grid area division result of the target area according to the homography matrix, and the corrected grid area division result is used to determine the target grid area corresponding to the target hard disk.

[0280] Optionally, also include:

[0281] The second visual positioning unit 1910 is used to visually locate the target grid area so as to assemble the target hard disk to the storage position corresponding to the target grid area according to the visual positioning result, or to unload the target hard disk from the storage position corresponding to the target grid area.

[0282] Fig. 20 FIG. 1 shows a schematic diagram of the structure of an electronic device according to an exemplary embodiment of the present specification. Fig. 20 At the hardware level, the electronic device includes a processor 2002, an internal bus 2004, a network interface 2006, a memory 2008, and a non-volatile memory 2010, and may also include hardware required for other services. The processor 2002 reads the corresponding computer program from the non-volatile memory 2010 into the memory 2008 and then runs it, forming an object assembly device at the logical level. Of course, in addition to the software implementation, this specification does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0283] Please refer to Fig.21 In a software implementation, the object assembly device may include a first positioning unit 2102, a first acquisition unit 2104, and a first adjustment unit 2106. Wherein:

[0284] The first positioning unit 2102 is used to visually locate the target storage portion and move the target object to an initial position at the target storage portion according to the visual positioning result;

[0285] A first acquisition unit 2104 is used to acquire force information of the target object during the process of inserting the target object from the initial position into the target receiving portion;

[0286] The first adjustment unit 2106 is used to adjust the posture of the target object according to the force information, so that the target object is aligned and inserted into the target receiving portion.

[0287] Optionally, the force information includes a contact force between the target object and the target receiving portion and a torque corresponding to the contact force.

[0288] Optionally, the first adjusting unit 2106 is specifically configured to:

[0289] When the contact force is not less than a contact force threshold or the applied torque is not less than a torque threshold, moving the target object along the adjustment direction by a corresponding adjustment distance;

[0290] Optionally, also include:

[0291] The first insertion unit 2108 is configured to insert the target object into the target receiving portion when the contact force is smaller than the contact force threshold and the applied torque is smaller than the torque threshold.

[0292] Optionally, the first adjusting unit 2106 is specifically configured to:

[0293] Obtaining an offset distance between a zero moment point position corresponding to the target object and a center point position of the target object in an adjustment direction, and moving the target object according to the zero moment point position when the offset distance is not less than an offset threshold; or

[0294] acquiring a target force component of the contact force in the adjustment direction, and moving the target object according to the target force component when the target force component is not less than a force component threshold; or

[0295] When the offset distance is not less than the offset threshold or the target force component is not less than the force component threshold, if the torque movement direction of the target object determined according to the relative relationship between the zero moment point position and the center point position matches the force component movement direction of the target object determined according to the target force component, the target object is moved according to the zero moment point position; if the torque movement direction does not match the force component movement direction, the target object is moved according to the target force component.

[0296] Optionally, the first adjusting unit 2106 is specifically configured to:

[0297] In the case where the target object is moved according to the zero moment point position, the adjustment distance is the offset distance, and the adjustment direction is the direction from the center point position of the target object to the zero moment point position;

[0298] When the target object is moved according to the target force component, the adjustment distance is the adjustment distance corresponding to the target force component determined according to the mapping relationship between the force component and the adjustment distance, and the adjustment direction is the direction of the target force component.

[0299] Optionally, the adjustment direction includes at least one of the following: a positive direction along the horizontal axis, a negative direction along the horizontal axis, a positive direction along the vertical axis, and a negative direction along the vertical axis.

[0300] Optionally, also include:

[0301] When the offset distances of the zero moment point position corresponding to the target object and the center point position of the target object in any adjustment direction are both smaller than the offset threshold and the target force component of the contact force in any adjustment direction is smaller than the force component threshold, if the target object cannot be successfully inserted into the target receiving portion, the target object is tentatively adjusted according to a preset adjustment direction corresponding to the target object and a preset adjustment distance corresponding to the preset adjustment direction;

[0302] The target object after the tentative adjustment is further inserted into the target receiving portion, and force information of the target object is obtained, and the posture of the target object is adjusted according to the force information until the target object is successfully inserted into the target receiving portion.

[0303] Optionally, also include:

[0304] A first detection unit 2112, used to detect the depth of the target object inserted into the target receiving portion;

[0305] The first stopping unit 2114 is configured to stop adjusting the posture of the target object according to the force information when the depth is not less than a depth threshold.

[0306] Please refer to Fig. 22 In a software implementation, the object assembly device may include a second positioning unit 2202, a second acquisition unit 2204, and a second adjustment unit 2206. Wherein:

[0307] The second positioning unit 2202 is used to initially position the target storage portion and move the target object to an initial position at the target storage portion according to the initial positioning result;

[0308] A second acquisition unit 2204 is used to acquire force information of the target object during the process of inserting the target object from the initial position into the target receiving portion;

[0309] The second adjustment unit 2206 is used to adjust the posture of the target object according to the force information, so that the target object is aligned and inserted into the target receiving portion.

[0310] Optionally, the force information includes a contact force between the target object and the target receiving portion and a torque corresponding to the contact force.

[0311] Optionally, the second adjusting unit 2206 is specifically configured to:

[0312] When the contact force is not less than a contact force threshold or the applied torque is not less than a torque threshold, moving the target object along the adjustment direction by a corresponding adjustment distance;

[0313] Optionally, also include:

[0314] The second insertion unit 2208 is used to insert the target object into the target receiving portion when the contact force is smaller than the contact force threshold and the applied torque is smaller than the torque threshold.

[0315] Optionally, the second adjusting unit 2206 is specifically configured to:

[0316] Obtaining an offset distance between a zero moment point position corresponding to the target object and a center point position of the target object in an adjustment direction, and moving the target object according to the zero moment point position when the offset distance is not less than an offset threshold; or

[0317] acquiring a target force component of the contact force in the adjustment direction, and moving the target object according to the target force component when the target force component is not less than a force component threshold; or

[0318] When the offset distance is not less than the offset threshold or the target force component is not less than the force component threshold, if the torque movement direction of the target object determined according to the relative relationship between the zero moment point position and the center point position matches the force component movement direction of the target object determined according to the target force component, the target object is moved according to the zero moment point position; if the torque movement direction does not match the force component movement direction, the target object is moved according to the target force component.

[0319] Optionally, the second adjusting unit 2206 is specifically configured to:

[0320] In the case where the target object is moved according to the zero moment point position, the adjustment distance is the offset distance, and the adjustment direction is the direction from the center point position of the target object to the zero moment point position;

[0321] When the target object is moved according to the target force component, the adjustment distance is the adjustment distance corresponding to the target force component determined according to the mapping relationship between the force component and the adjustment distance, and the adjustment direction is the direction of the target force component.

[0322] Optionally, the adjustment direction includes at least one of the following: a positive direction along the horizontal axis, a negative direction along the horizontal axis, a positive direction along the vertical axis, and a negative direction along the vertical axis.

[0323] Optionally, also include:

[0324] A second trial adjustment unit 2210 is used for, if the target object cannot be successfully inserted into the target receiving portion, trial adjustment of the target object according to a preset adjustment direction corresponding to the target object and a preset adjustment distance corresponding to the preset adjustment direction, when the offset distances of the zero moment point position corresponding to the target object and the center point position of the target object in any adjustment direction are both smaller than an offset threshold and the target force component of the contact force in any adjustment direction is smaller than a force component threshold;

[0325] The target object after the tentative adjustment is further inserted into the target receiving portion, and force information of the target object is obtained, and the posture of the target object is adjusted according to the force information until the target object is successfully inserted into the target receiving portion.

[0326] Optionally, also include:

[0327] A second detection unit 2212 is used to detect the depth of the target object inserted into the target receiving portion;

[0328] The second stopping unit 2214 is configured to stop adjusting the posture of the target object according to the force information when the depth is not less than a depth threshold.

[0329] Please refer to Fig.23 In a software implementation, the hard disk assembly device may include a third positioning unit 2302, a third obtaining unit 2304, and a third adjusting unit 2306. Wherein:

[0330] The third positioning unit 2302 is used to visually locate the target storage section on the server and move the target hard disk to an initial position at the target storage section according to the visual positioning result;

[0331] The third acquisition unit 2304 is used to detect the force information of the target hard disk when it is inserted into the target storage portion from the initial position;

[0332] The third adjustment unit 2306 is used to adjust the posture of the target hard disk according to the force information, so that the target hard disk is aligned and inserted into the target storage portion.

[0333] Optionally, the force information includes a contact force between the target hard disk and the target receiving portion and a torque corresponding to the contact force.

[0334] Optionally, the third adjustment unit 2306 is specifically configured to:

[0335] When the contact force is not less than a contact force threshold or the applied torque is not less than a torque threshold, moving the target hard disk along the adjustment direction by a corresponding adjustment distance;

[0336] Optionally, also include:

[0337] The third inserting unit 2308 is configured to insert the target hard disk into the target receiving portion when the contact force is smaller than the contact force threshold and the applied torque is smaller than the torque threshold.

[0338] Optionally, the third adjustment unit 2306 is specifically configured to:

[0339] Obtaining an offset distance between a zero moment point position corresponding to the target hard disk and a center point position of the target hard disk in an adjustment direction, and moving the target hard disk according to the zero moment point position when the offset distance is not less than an offset threshold; or

[0340] Obtaining a target component force of the contact force in the adjustment direction, and moving the target hard disk according to the target component force when the target component force is not less than a component force threshold; or

[0341] When the offset distance is not less than the offset threshold or the target component force is not less than the component force threshold, if the torque movement direction of the target hard disk determined according to the relative relationship between the zero moment point position and the center point position matches the component force movement direction of the target hard disk determined according to the target component force, the target hard disk is moved according to the zero moment point position; if the torque movement direction does not match the component force movement direction, the target hard disk is moved according to the target force component.

[0342] Optionally, the third adjustment unit 2306 is specifically configured to:

[0343] In the case where the target hard disk is moved according to the zero moment point position, the adjustment distance is the offset distance, and the adjustment direction is the direction from the center point position of the target hard disk to the zero moment point position;

[0344] When the target hard disk is moved according to the target force component, the adjustment distance is the adjustment distance corresponding to the target force component determined according to the mapping relationship between the force component and the adjustment distance, and the adjustment direction is the direction of the target force component.

[0345] Optionally, the adjustment direction includes at least one of the following: a positive direction along the horizontal axis, a negative direction along the horizontal axis, a positive direction along the vertical axis, and a negative direction along the vertical axis.

[0346] Optionally, also include:

[0347] A third trial adjustment unit 2310 is used for, if the target hard disk cannot be successfully inserted into the target storage portion, tentatively adjusting the target hard disk according to a preset adjustment direction corresponding to the target hard disk and a preset adjustment distance corresponding to the preset adjustment direction, when the offset distances of the zero moment point position corresponding to the target hard disk and the center point position of the target hard disk in any adjustment direction are both smaller than the offset threshold and the target component force of the contact force in any adjustment direction is smaller than the component force threshold;

[0348] The target object after the tentative adjustment is further inserted into the target storage portion, and the force information of the target object is obtained, and the posture of the target object is adjusted according to the force information until the target hard disk is successfully inserted into the target storage portion.

[0349] Optionally, also include:

[0350] The third detection unit 2312 is used to detect the depth of the target hard disk inserted into the target storage portion;

[0351] The third stopping unit 2314 is used to stop adjusting the posture of the target hard disk according to the force information when the depth is not less than the depth threshold, and continue to insert the target hard disk into the target slot according to the direction indicated by the target slot.

[0352] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer, which may be in the form of a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email transceiver, a game console, a tablet computer, a wearable device or a combination of any of these devices.

[0353] In a typical configuration, a computer includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0354] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0355] Computer-readable media include permanent and non-permanent, removable and non-removable media that can be used to store information by any method or technology. Information can be 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 disc (DVD) or other optical storage, magnetic cassettes, disk storage, quantum memory, graphene-based storage media or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include temporary computer-readable media (transitory media), such as modulated data signals and carrier waves.

[0356] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0357] The above is a description of a specific embodiment of the specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0358] The terms used in one or more embodiments of this specification are only for the purpose of describing specific embodiments, and are not intended to limit one or more embodiments of this specification. The singular forms of "a", "said" and "the" used in one or more embodiments of this specification and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0359] It should be understood that although the terms first, second, third, etc. may be used to describe various information in one or more embodiments of this specification, these information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of one or more embodiments of this specification, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

[0360] The above description is merely a preferred embodiment of one or more embodiments of the present specification and is not intended to limit one or more embodiments of the present specification. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of one or more embodiments of the present specification shall be included in the scope of protection of one or more embodiments of the present specification.

Claims

1. A storage position identification method, characterized in that: Applied to assembly equipment, including: Determine a target area corresponding to a target object to which the target object belongs; Divide the target area into grid areas, and determine the target grid area corresponding to the target object according to the grid area division result and the mapping relationship between the object and the grid area, so as to serve as the corresponding storage position of the target object on the target object, and the assembly device is used to assemble the target object to the corresponding storage position, or unload the target object from the corresponding storage position; The grid area division result is obtained by the following method: According to the object feature model, feature point matching is performed on the image in the target area to determine at least one group of object feature points; according to the relative position relationship between the object feature points and the object center point, the object center point corresponding to each group of object feature points is determined; according to the relative position relationship between the object center point and the grid area, the target area is divided into grid areas; or, Feature point matching is performed on the image within the target area according to the array feature model to determine at least one group of array feature points; the target area is divided into grid areas according to the standard grid array defined in the array feature model to generate a target grid array; wherein the corresponding positions of the array feature points in the target grid array are consistent with the corresponding positions in the standard grid array.

2. The method according to claim 1, characterized in that The step of determining a target area corresponding to a target object to which the target object belongs includes: Identifying a target center point corresponding to the target area in the collected visual image area; The object area corresponding to the target center point is determined as the target area corresponding to the target object.

3. The method according to claim 2, characterized in that The identifying the target center point corresponding to the target area in the collected visual image area includes: Adjusting the target object to a preset position of the visual image area; An object center point in the visual image area is identified, and an object center point in the visual image area whose position matches the preset position is determined as a target center point corresponding to the target object.

4. The method according to claim 3, characterized in that The step of adjusting the target object to a preset position in the visual image area includes: Identify the barcode identifiers corresponding to the respective objects in the visual image area in sequence to determine the target barcode identifier corresponding to the target object, wherein the identification result of the target barcode identifier matches the preset description information of the target object; According to the position of the target barcode identifier in the visual image area and the relative position relationship between the target barcode identifier and the target object, the target object is adjusted to the preset position in the visual image area.

5. The method according to claim 3, characterized in that: Identifying a center point of an object in the visual image region includes: Performing feature point matching on the image within the visual image area according to the object feature model to determine at least one set of object feature points; According to the relative position relationship between the object feature points and the object center point, the object center point corresponding to each group of object feature points is determined.

6. The method according to claim 5, characterized in that The object feature model is used to identify feature points in the edge area of ​​the object.

7. The method according to claim 5, characterized in that The preset position includes a central position of the visual image area; and determining an object center point in the visual image area that matches the preset position as a target center point corresponding to the target object includes: In the case where a plurality of object center points are determined according to any group of object feature points, clustering the plurality of object center points to obtain corresponding cluster center points; The cluster center point closest to the central position is determined as the target center point corresponding to the target object.

8. The method according to claim 1, characterized in that The determining of the object center point corresponding to each group of object feature points includes: When a plurality of object center points are determined according to any set of object feature points, clustering the plurality of object center points to obtain corresponding cluster center points; The cluster center point whose position matches the preset object arrangement direction is determined as the object center point corresponding to each group of object feature points.

9. The method according to claim 8, characterized in that The object arrangement direction includes at least one of the following: a horizontal direction and a vertical direction.

10. The method according to claim 1, characterized in that Also includes: In a case where a first grid area division result of the target area is obtained according to the object feature model and a second grid area division result of the target area is obtained according to the array feature model, calculating a homography matrix between the first grid area division result and the second grid area division result; The grid area division result of the target area is corrected according to the homography matrix, and the corrected grid area division result is used to determine the target grid area corresponding to the target object.

11. The method according to claim 1, characterized in that: Also includes: The target grid area is visually positioned, so as to assemble the target object to a storage position corresponding to the target grid area or unload the target object from the storage position corresponding to the target grid area according to the visual positioning result.

12. A storage position identification method, characterized in that: Applied to assembly equipment, including: Determine the target area corresponding to the target server to which the target hard disk belongs; Divide the target area into grid areas, and determine the target grid area corresponding to the target hard disk according to the grid area division result and the mapping relationship between the hard disk and the grid area, so as to serve as the corresponding storage position of the target hard disk on the target server, and the assembly device is used to assemble the target hard disk to the corresponding storage position, or unload the target hard disk from the corresponding storage position; The grid area division result is obtained by the following method: According to the hard disk feature model, feature point matching is performed on the image in the target area to determine at least one group of hard disk feature points; according to the relative position relationship between the hard disk feature points and the hard disk center point, the hard disk center point corresponding to each group of hard disk feature points is determined; according to the relative position relationship between the hard disk center point and the grid area, the target area is divided into grid areas; or The image in the target area is matched with feature points according to the array feature model to determine at least one group of array feature points; the target area is divided into grid areas according to the standard grid array defined in the array feature model to generate a target grid array; wherein the corresponding positions of the array feature points in the target grid array are consistent with the positions in the standard grid array.

13. The method according to claim 12, characterized in that The step of determining a target area corresponding to a target server to which the target hard disk belongs includes: Identifying a target center point corresponding to the target area in the collected visual image area; The server area corresponding to the target center point is determined as the target area corresponding to the target server.

14. The method according to claim 13, characterized in that The identifying the target center point corresponding to the target area in the collected visual image area includes: Adjusting the target server to a preset position of the visual image area; A server center point in the visual image area is identified, and a server center point whose position in the visual image area matches the preset position is determined as a target center point corresponding to the target server.

15. The method according to claim 14, characterized in that Identifying a server center point within the visual image area includes: Performing feature point matching on the image in the visual image area according to the server feature model to determine at least one set of server feature points; According to the relative position relationship between the server feature points and the server center point, the server center point corresponding to each group of server feature points is determined.

16. A storage position recognition device, characterized in that: Applied to assembly equipment, including: A first target area determination unit, used to determine a target area corresponding to a target object to which the target object belongs; a first grid area determination unit, configured to divide the target area into grid areas, and determine a target grid area corresponding to the target object according to the grid area division result and a mapping relationship between the object and the grid area, so as to serve as a corresponding storage position of the target object on the target object, and the assembly device is configured to assemble the target object to the corresponding storage position, or unload the target object from the corresponding storage position; The grid area division result is obtained by the following method: According to the object feature model, feature point matching is performed on the image in the target area to determine at least one group of object feature points; according to the relative position relationship between the object feature points and the object center point, the object center point corresponding to each group of object feature points is determined; according to the relative position relationship between the object center point and the grid area, the target area is divided into grid areas; or, Feature point matching is performed on the image within the target area according to the array feature model to determine at least one group of array feature points; the target area is divided into grid areas according to the standard grid array defined in the array feature model to generate a target grid array; wherein the corresponding positions of the array feature points in the target grid array are consistent with the corresponding positions in the standard grid array.

17. A storage position recognition device, characterized in that: Applied to assembly equipment, including: A second target area determination unit, used to determine a target area corresponding to a target server to which a target hard disk belongs; A second grid area determination unit is used to divide the target area into grid areas, and determine the target grid area corresponding to the target hard disk according to the grid area division result and the mapping relationship between the hard disk and the grid area, so as to serve as the corresponding storage position of the target hard disk on the target server, and the assembly device is used to assemble the target hard disk to the corresponding storage position, or unload the target hard disk from the corresponding storage position; The grid area division result is obtained by the following method: According to the hard disk feature model, feature point matching is performed on the image in the target area to determine at least one group of hard disk feature points; according to the relative position relationship between the hard disk feature points and the hard disk center point, the hard disk center point corresponding to each group of hard disk feature points is determined; according to the relative position relationship between the hard disk center point and the grid area, the target area is divided into grid areas; or The image in the target area is matched with feature points according to the array feature model to determine at least one group of array feature points; the target area is divided into grid areas according to the standard grid array defined in the array feature model to generate a target grid array; wherein the corresponding positions of the array feature points in the target grid array are consistent with the positions in the standard grid array.

18. An electronic device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor implements the method according to any one of claims 1 to 15 by running the executable instructions.

19. A computer-readable storage medium having computer instructions stored thereon, characterized in that: When the instruction is executed by a processor, the steps of the method according to any one of claims 1 to 15 are implemented.

Citation Information

Patent Citations

  • Clamping device, data center operation and maintenance robot and assembly robot

    CN113290570A

  • Object assembling method and device

    CN113298877A