0 Preface
For object handling AGV (automatic guided vehicle), guidance and positioning are the key research parts. Commonly used guidance methods include magnetic guidance [1], visual guidance [2], laser guidance [3], etc. Positioning methods include QR code positioning [4], RFID radio frequency identification positioning [5], ultrasonic positioning, etc. Among them, magnetic guidance magnetic strips are easy to lay, easy to change paths, radio frequency identification is not easy to contaminate, and has no interference with sound and light. Therefore, magnetic guidance AGVs integrating RFID technology are widely used in automated production and transportation.
Many scholars have conducted research on RFID technology in magnetic guidance. Gu Jiawei et al. [6] implemented AGV navigation by writing tag numbers and motion control parameters in electronic tags. Li Ji [7] used RFID-assisted positioning and used horizontal magnetic strips to complete vehicle turning, parking and other actions. Luo Yujia [8] fixed the AGV turning action mode and used tag information to achieve 90° and 180° turns.
Most of the above-mentioned literature writes action instructions in electronic tags. Due to the single instruction information saved, the tag utilization rate is low. When the actual path is complex, more tags need to be arranged, which is not conducive to path planning and guidance. Based on previous research, this paper aims to solve the guidance problem of AGV under complex paths and proposes a vehicle action command algorithm. Action commands are generated according to the scheduling task and saved in the vehicle control system. The tags are only used as location identification to improve the vehicle Driving flexibility.
1. Driving map modeling
1.1 Map composition
The map consists of guidance magnetic strips and Library-borrowing-machine-touch-query-intelligent-terminal-all-in-one-machine.html target='_blank'>workstations, as shown in Figure 1. The two are represented by lines and rectangles respectively. g represents the work station, the quantity is h, and it is numbered according to formula (1) (the number on the right side of the small rectangle in the figure), then the work station set can be expressed as G = {g1, g2, g3,..., gh}. l represents a line, and the number is n. It is stipulated that the horizontal and vertical line numbers should be represented by even numbers and odd numbers respectively and numbered according to formula (2) (the numbers in the circles in the figure). The line set is L={l1, l2,..., ln}.
Based on the application scenario of this article, it is stipulated that the AGV will drive backwards except when the fork moves forward when entering the work station, and it will slow down at line intersections and when entering the work station.
1.2 Electronic label layout
1.2.1 Placement of labels related to workstations
In Figure 2, pi1, pi2,..., pi7 represent the position of the electronic tag. Figure 2(a) shows the AGV going straight and entering the work station gi from the left. It is stipulated to decelerate at pi3, pi5, pi4, and pi7 respectively, change from reverse driving to forward, forward, turn right, and stop. Figure 2(b) shows the AGV retreating and turning left to exit the work station. It retreats straight, retreats and turns left, and accelerates at pi7, pi6, and pi1 respectively. The AGV's entry and exit from the right side of the workstation is similar to its entry and exit from the left side. Define pik as the k-th label (k∈{1, 2,...,7}) related to workstation gi, which is arranged as shown in Figure 2. Its composition is represented by matrix S1 as:
1.2.2 Line label layout
Place two electronic tags at both ends of each line. Sja represents the a-th label on line lj, a={1, 2, 3, 4}. It is stipulated that Sj1, Sj2, Sj3, and Sj4 are arranged sequentially on lj along the positive direction of the coordinate axis, and the line segment between Sj1 and Sj4 is the range of line lj. The vehicle executes turning instructions at Sj1 and Sj4 to enter other lines, and executes acceleration or deceleration instructions at Sj2 and Sj3 to accelerate when entering lj and decelerate when leaving lj. The labels on all lines are represented by the matrix S2 shown in Equation (4). The layout of all labels in the final map is shown in Figure 3.
2. Action instruction algorithm
First encode the tags, then determine the order of passing each tag according to the scheduling path, and finally generate action instructions based on the tag sorting.
2.1 Electronic label coding
The encoding format of the electronic tag is shown in Figure 4, where x and y represent the coordinates of the tag in the map, 'pro' represents the attribute, that is, the type of action instructions that the vehicle can perform at the label, 'line' represents the line, and 'sit' Indicates the relevant work station number. According to the driving mode of AGV on the line, the 'pro' bit of Sj1 and Sj4 is '01', which means turning, and the 'pro' bit of Sj2 and Sj3 is '02', which means acceleration and deceleration. The ‘line’ bit of Sja is the line number j, and the ‘sit’ bit is represented by zero. The 'pro' bit of the label pik is represented in Table 1 according to the way the AGV enters and exits the station. The 'line' bit is the line number where pi1 is located, and the 'sit' bit is the station number i related to it.
2.2 Path establishment and selection
Among them, w represents the path, and the number is m (m≥m0). Then the matrix composed of all paths can be expressed as W = [w1, w2,..., wm]T. ltx represents the x-th line of path wt, where wt={lt1, lt2,…, ltx,…}, t∈{1, 2,…, m}, ltx∈L, assuming the line included in the t-th path The largest number is n1, then W is an m×n1 order matrix. If the number of lines is less than n1, the insufficient part is represented by 0, and the path matrix is represented by equation (6):
2.3 Scheduling path label sorting method
For the labels on any two connected lines, the first and second lines are represented by lu and lv respectively. The labels on lu are Su1, Su2, Su3, and Su4, and the labels on lv are Sv1, Sv2, Sv3, and Sv4. r0 represents the label sequence from lu to lv. Assume that the coordinates of Su1 are (x1, y1) and the coordinates of Sv1 are (x2, y2). By comparing the two coordinates, the relative position relationship between lu and lv can be inferred:
The first case: x1》x2, y1》y2, as shown in Figure 5(a) and Figure 5(b), r0={Su4, Su3, Su2, Su1, Sv4, Sv3, Sv2, Sv1}.
The second case: x1》x2, y1》y2, if lu is an odd number, r0={Su1, Su2, Su3, Su4, Sv4, Sv3, Sv2, Sv1}, corresponding to Figure 5(c); otherwise r0={Su4 , Su3, Su2, Su1, Sv1, Sv2, Sv3, Sv4}, corresponding to Figure 5(d). In the same way, the arrangement of r0 elements in other cases can be inferred.
For the path wβ, first select the labels on each line according to Equation (4), and then arrange them in the order in which the vehicles pass through each label on the path. The steps are as follows:
(1) Consider lβ1 and lβ2 as the first and second lines respectively, and determine their positional relationship based on the coordinate relationship. Sort according to the two line label sorting rules and put the sorted results in array r1;
(2) Treat lβ2 and lβ3 as the first and second lines respectively for sorting, and add the sorting result of the lβ3 label to the array r1;
(3) Arrange the labels for the lines lβ3, lβ4, lβ4, lβ5,..., jsj3-t6-s1.gif in a manner similar to step (2).
Delete the tags in r1 that have not passed through lj1 and lj2 according to the way the AGV enters and exits the workstation. At this time, the number of elements in r1 is represented by b1.
2.4 Action instructions
The action command format is shown in Figure 6. The first 5 digits are the electronic tag code, and the 'ins' bit is the action command executed by the AGV at the tag corresponding to the first 5 digits. The code is coded according to its function, as shown in Table 2. When the AGV travels from the starting station gs to the target station ge, it travels in the order of exiting the station, traveling on the path, and entering the station. The RFID Reader continues to read the ground tag information and transmits it to the vehicle control system. Execute instructions sequentially according to conditions to complete the scheduling task. The condition is that the tag information currently read is consistent with the tag encoding bit of the instruction to be executed.
2.4.1 Exit station action command
R1 represents the set of workstation action instructions. If the AGV exits the station from the left, add '00', '01' and '05' respectively after the label coding with 'pro' bits of '09', '08' and '03' in row S of S1, otherwise Add '00', '02' and '05' respectively after encoding the tags whose 'pro' bits are '09', '08' and '07' in row S of S1, and use them as the 1st, 2nd and 3rd in R1 in sequence. action instructions.
2.4.2 Path action instructions
Determine the action instructions according to the 'pro' bit for b1 tags in r1 respectively. R2 represents the path action instruction set, and Figure 7 shows its judgment process.
2.4.3 Work station entry action command
R3 represents the set of workstation action instructions. The AGV enters the work station from the left, and adds '06', '07', and '04' respectively after the label codes of '05', '07', '06', and '09' in the 'pro' position of row e of S1. , '08'; otherwise, add '06', '07', '03', '08' respectively after the label encoding of '05', '03', '04', and '09' in the row. And sequentially as the 1st, 2nd, 3rd, and 4th instructions in R3.
3. Test results and analysis
Select stations 12, 13, 17, and 18 for testing. The label coding is shown in Figure 8. The first two digits are the x coordinate, the 3rd to 4th digits are the y coordinate, the 5th to 6th digits represent the attributes, the 7th to 8th digits are the line numbers where they are located, and the last two digits are related to it. Station number.
The vehicle action command program was written in VC++6.0, and a model car based on the ARM architecture and integrated with the RC522 radio frequency identification module was selected as the test object. Figure 9 shows the actual vehicle operation diagram after laying the guide lines and placing labels. The test shows that the vehicle can complete the dispatching task as expected. Figure 10 shows the guidance method of writing action instructions into the tag. The AGV completes actions such as acceleration and deceleration by executing the instructions in the tag. Since the internal command information of the ground tags has been determined after the placement, the vehicle can only complete a certain fixed action when passing each tag. The guidance method is relatively simple and has poor flexibility.
Select different starting stations and target stations to combine, representing different scheduling tasks. In C++6.0, the results of each operation are shown in Figure 11. The first 10 digits of each action instruction are the electronic tag codes, and the last two The bit indicates the action performed by the AGV on the tag.
The driving routes of Tasks 1 and 2 are 20→22→24, 20→22→21→18 respectively. The AGV has passed the label 4610012200. There is no instruction corresponding to this label in Task 1. The AGV does not execute any instructions here. Line 22 keeps going straight and enters line 24; the command corresponding to this label in task 2 is 461001220002, and the last two digits '02' indicate that the AGV backs up and turns right here, entering line 21 from line 22. Comparison shows: AGV only executes the instruction at the tag that meets the execution conditions of the action instruction.
The driving routes of tasks 3 and 4 are 24→21→16→14, 24→21→18 respectively. The AGVs all passed through the label 4722012100. In task 3, the AGV’s corresponding command on this label is 472201210002, and the last two digits '02' represent The AGV backs up and turns right here, and enters line 16 from line 21; the command corresponding to this label in task 4 is 472201210001, and the last two digits '01' indicate that the AGV backs up and turns left here, and enters line 18 from line 21. Comparison shows: AGV can execute different instructions at the same label when completing different tasks, increasing driving flexibility.
4 Summary
This article uses electronic tags as location identification, and action instructions are generated by algorithms according to specific tasks and Stored in the vehicle control system, so that the vehicle can execute different action instructions when passing the same electronic tag during different tasks, making up for the traditional In the navigation method, the driving route is fixed and the instructions executed at the label are single. This method solves the problem of vehicle guidance under complex paths, improves driving flexibility and label utilization, and has certain application value.
Contact: Adam
Phone: +86 18205991243
E-mail: sale1@rfid-life.com
Add: No.987,Innovation Park,Huli District,Xiamen,China