Design and Implementation of Autonomous Vehicle System Part 2I had to split this project to facilitate the reading.Depending on what you want to read, you can go directly to the part of yourinterest. That said, hereis the Part1 of this project.Now that I have assembled the rover, as you can see in thisfigure, is time to go to calibration. In the era of IoT devices like cell phones to control the temperature of yourhome, measuring the electrical consume, displaying the rear view of your car orwhere is your home in a map view, it is very important that the device is verywell calibrated to avoid bad results with bad consequences. Hopefully, actually we have some basic procedures and nice tools that can helpus a lot in calibration scenario. Camera calibrationAccording to Wikipedia, cameracalibration is the process of determining the intrinsic and extrinsicparameters of a camera with respect to world coordinate system. In other words,camera calibration relies on collecting a set of world points whose relativecoordinates are known and which image plane coordinates are also known. Forthis process, I used the classical chessboard picture and the ROS CameraCalibrator process. Basically I printed thischessboard and used it with the following ROS command:rosrun camera_calibrationcameracalibrator.py --size 8x6 --square 0.025 image:=/my_camera/imagecamera:=/my_cameraGo to your raspberry pi installation and run the commandabove. In the ROS tool you will see something similar to figure 1 below:Figure 1 - Camera CalibrationThe tool will try to fill the 4 items: X, Y, Size and Skew.In this case, you need move the chessboard from right to left and vice-versaand move back and forth so the utility can calculate distance, size and anynecessary data to calculate the intrinsic values. These movements must berepeated until the utility ends the task of capture picture information toprocess the calibration. When the utility ends, just click the calibrate buttonand wait (it might take some minutes) until the resulting calibration valuesare displayed in the monitor. If all is ok, you dont need take care becausethe tool will automatically save all the parameters. You can find more detailedinformation about camera calibration in ROS site, here.Sensor calibrationSense HAT is the sensor I am using in this project but youcan use any other you think is good for you. You can find more details aboutSense HAT in Raspberry Pi here and somedocumentation in the GitHub repository.The Sense HAT is an add-on board for Raspberry Pi. It has an 8x8 RGB LEDmatrix, a five button joystick and includes the following sensors: Gyroscope Accelerometer Magnetometer Temperature Barometric Pressure HumidityFor this project I will be using only the magnetometer andaccelerometer sensors.Hopefully the raspbian installation provides the RTIMULib2 directory where wewill find utilities that we can use to calibrate and test sensor devices. Motor calibrationMotor calibration is also required to reduce navigationalerrors. An error from the wheel odometry can result in accumulation of errorsin the position of the robot. Inaddition, suppose if there is slip in the ground between the two wheels of 1centimeter, it can cause more errors than in the odometry case. So, it is veryimportant try to minimize all these errors as short