DATE: 2021/10/06

Real Stuff | Identification Column of SEER Intelligent: Identification of Pallet Identification

Welcome to the second technical feature article of the identification column: Pallet identification! The full text will explain in detail the technical points of pallet identification. The article is long, so please read it patiently.

Before reading, if you have any questions about the pallet, you can click here to learn about the pallet. Note: Trays in the text also refer to pallets.

Ⅰ. Application

In factory warehouses, the use of automatic forklifts for cargo handling is a very common application scenario. Usually, cargo needs to be handled and transported with the help of pallets. At the same time, most factory environments cannot set mechanical limits to ensure the consistency of pallet placement. Therefore, AMR needs to detect the accurate position of the tray with visual aid when it carries out the tray forking and accurately forks the pallet through AMR position adjustment.

Ⅱ. Camera configuration and calibration

2.1 Camera network configuration

The company chooses the model of PERCIPIO camera FM851-RI, which is mainly used for forklift AMR for pallet identification. Its principle is to use binocular structured light to obtain the 3D point cloud of the object and detect and locate it through the special shape and structure of the pallet. Usually, install the camera in the middle of the prongs of the forklift.

1. Open "Roboshop Pro", click [Others], select [Camera Network Configuration]



2. The opened interface



3. After confirming that the camera has been connected via Ethernet, click the refresh button (blue icon in the upper right corner)



4. Modify the address in the IP to the required address, usually, the camera is configured as "192.168.192.xxx", then press the [OK] button



5. If "Update Success" appears, it means the modification is successful and the operation ends.



2.2 Calibration of external parameters of the camera

For the camera installed on the ground forklift or forklift for QR code recognition function and pallet identification function, you can refer to the following to calibrate the camera. First, you need to calibrate the bracket. [The design drawing of the calibration bracket can be downloaded from the following link: https://ecm.seer-group.com/outpublish.html?code=Bd52f510677024763b9f7b6d169c80f6f&lang=zh-cn#view (Password: 8145CBEC)]

The bracket installation is shown in the figure below:



The bracket must be tightly fitted with the fork prongs of the ground pallet truck to ensure that the bracket is perpendicular to the ground, and the bracket is also perpendicular to the shelf legs. Next, two QR codes need to be pasted on the bracket. **The QR code with ID=0 needs to be pasted on the left and the QR code with ID=1 on the right**.

Configure each parameter as shown in the figure above in the parameter configuration:

**Tag_Height: The height of the center of the QR code from the ground**

**Tag_disFromCenter: The distance in the X direction from the QR code to the mileage center**

**Tag_Size: The size of the QR code**

**disBetweenTag: The distance between the centers of two QR codes**



After the configuration of each parameter is completed, then confirm that "3Dcamera" is not checked under the camera type in the model file, as shown below:



Then after saving the push, you can select the brand camera for calibration in other options. After the calibration is successful, the calibration parameters of the camera installation position can be output.

At the same time, after the calibration is completed, you can go through the homepage, robot files, select the "robokit cameraData" folder in roboshop, and enter the "jpg" file that can be named starting with "tag". Download the file to see the calibration result, as shown in the following figure:



In the resulting graph, you can see that the identified tag on the left is ID=0, and the tag on the right is ID=1, indicating that the identification is successful.

Ⅲ. The configuration and forking and picking of identified files

3.1 The explanation of parameter configuration of identified files

When using the pallet identification function, you need to configure the identification file, which can be seen in the Roboshop identification file option, select the "pallet", and then modify the relevant parameters in the properties window.



By default, only pallets with left and right symmetry can be identified, that is, the size of the middle hole is the same. Before using the pallet identification function, you need to configure the pallet related parameters in the identification file option, which are:

pallet_width: the width of pallet

pallet_height: the height of pallet

pocket_width: the width of the middle hole

pocket_height: the height of the middle hole

pocket_spacing: the width of the middle leg

The height of the pallet refers to the height of the support columns of the pallet, excluding the height of the objects connected between the support columns. The thickness of the pallet (the height of the pallet minus the height of the middle hole) should be greater than 3cm. If it is less than 3cm, the pallet may not be identified.

As shown below:



3.2 The requirements and instructions of related parameter configuration of pallet placement

When the pallet is placed, the deviation angle of the coordinate system between the pallet and the robot is generally less than 20° (α in the figure below), and the horizontal deviation is less than 30cm in the dis in the figure (b) below. The distance between the pallet and the camera is generally greater than 1m and less than 3m. As shown below:



3.3 Instruction of forklift motion parameters for pallet identification

Parameter configuration:

RecQRCode_AheadDist: the unit is m, preposition distance for identification planning

RecQRCode_BackLength: the unit is m, postposition distance for identification planning(The distance is roughly the distance between the mileage center of the forklift and the in-position switch on the fork. If this value is too large, it will cause the cargo DI to trigger an error in advance. If the value is too small, it will cause the ground forklift to not trigger the in-position DI error after the point. )

RecQRCode_PathSpeed: the unit is m/s, travel speed of the identification path

RecOnePathRatio: the unit is radian, a single path tangent threshold generated after identification

Graphic illustration:




3.4 Instructions for identification operation



After completing the configuration of the above identification files, it is only necessary to configure the identification model file. That is the "pallet" file, in the attribute of the front point corresponding to the pallet point. Next, configure the execution action:



Select the AP point where the pallet is located, execute the action, and then execute the action of "Load" as shown in the figure above. After successful identification, the robot will go to the AP point to fork the pallet.