# Design and Implementation of an Autonomous Charging Station for Agricultural Electrical Vehicles
## 3 Results  
The developed platform was tested under a real-world scenario. The experimental setup consisted of a garage where we parked our electrical vehicle at the Apelsvoll research station (northern Oslo, Norway). The garage has a flat surface that allows the omnidirectional ACS to move freely on its 2D plane. The AEV used for the test is a differential drive electrical tractor robot prototype produced by the Danish company AgroIntelli (Figure 11). The experimental setup was carried out the with AEV parked at a fixed position at all times. However, for each experiment, the ACS was positioned at a different (and random) pose and orientation facing the wall-plug (as long as its representative fiducial marker is in the ACS camera field-of-view). We carried out more than ten successful experiments, with only one failure that was due to an error of the pose estimation of the marker on the vehicle (the vision node crashed for unknown reasons). The parameters used during the experiments are given in Table 1:  
Figure 11: The AEV used in the experimental setup. It has a payload of a maximum of 750 kg. It is equipped with a three-point mount system similar to the one used by conventional tractors, which allows for a multi-purpose utilization. Eight 12 V batteries power the UGV. It has hydraulic actuators linked to the three-point hitch, that allow it to fold and unfold the fertilizer applicator arms that can be mounted on the back of the vehicle. The AEV runs on ROS, and can communicate via websockets with the ACS. Initially, the ACS robot arm is facing the wall plug (Figure 12a). When a _charge request received?_ condition is true (the AEV sends a charge request to the ACS through a websocket), the charging process begins. The first sequence, as explained in the decision-tree scheme (Figure 5), is to align the MP to the wall-plug (Figure 12b). Now that the ACS is aligned to the wall-plug, the next sequence _unplug cable from wall-plug_ is initiated. To this end, the first step is to align the gripper to the wall-plug reference fiducial marker (Figure 13a). When the gripper is aligned to the reference point, a socket request is sent to the robot arm processing unit to obtain the pose of the gripper in the fixed frame of the robot arm. The next step is to move the gripper to the approach point (Figure 13b). Once the gripper is at the approach point, a new command to move the gripper towards the plug at a slower velocity is sent. When the gripper is at the plug location, it closes to grab the plug (Figure 13c), then moves in the opposite direction to unplug it from the wall-plug (Figure 13d). \begin{table}
\begin{tabular}{c c c} \hline \hline
**Parameter** & **Significance** & **Values** \\ \hline \(k_{l}\) & positive linear gain & 0.5 \\ \(k_{a}\) & positive angular gain & 0.15 \\ \(d_{AEV}\) & distance to the AEV & 0.5 m \\ \(d_{wall-plug}\) & distance to the wall-plug & 0.4 m \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Experimental parameters. Figure 12: Sequence 1: aligning the ACS to the wall-plug. (**a**) Seq 1.1: The ACS at the initial position. (**b**) Seq 1.2: The ACS aligned to the wall-plug. The next sequence is to turn the gripper to face the AEV, and initiate the _plug cable to vehicle_ sequence. The first step in this sequence is to turn the robot arm towards the AEV. The gripper is then moved down because the AEV plug (Figure 4b) is located at a lower level than the wall-plug (Figure 14a). The next step is to align the MP to the AEV (Figure 14b). Once the MP is aligned to the AEV, the following steps are performed consecutively: Align the gripper to the AEV fiducial marker (Figure 14c), move the gripper to the approach point (Figure 14d), plug the cable into the AEV (Figure 14e), and finally open the gripper then move back to the waiting position (Figure 14f). It is worth noting that the height of both the wall-plug and the vehicle plug are known, and does not change no matter how the ACS or the AEV are aligned inside the garage.