Implementation:

We have a tank, which is controlled by RF signals. We mount a compass and a micro-controller on top of the tank. The tank moves in an open area. We use the compass to measure the tank’s turning angle. There are two RF antennas that will be used. We use one RF antenna, which is built in the remote control unit of the tank, to control the tank and the other one to communicate the data between the micro-controller and the XSV-300 board.  The XSV-300 board communicates with the PC through the parallel port. Figure 1 below shows all the interactions between the mentioned components.

 

 

Figure 1. High-level components’ interaction

 

We broke the project into the following stages:

We will open the remote control unit and study how the levers control motion. After understanding how the remote control unit works, we will attempt to substitute the mechanical levers on it with an electronic switch controlled by the XSV-300. A given forward movement command to Etank will contain the distance that Etank should move. For that, we will be able to move the tank forward and pivot-turn it. We will have to control how much the tank moves forward based on the speed of the tank (which is constant). The distance the tank moves is based on the amount of time we give it to perform the movement, which corresponds to the distance given in the command. Using simple algebra to manipulate distance and speed on the XSV-300 board we can deduce a time period in which Etank should complete its movement.

We start by connecting the compass to the micro-controller and read the angle data off it. Once we are able to receive accurate data from the compass, we will mount it on top of Etank. The micro-controller will pack the data into an RF message and send the data to the XSV-300 board through the RF connection. The XSV-300 board will unpack the message and process the data. The XSV-300 board will replace the existing angle with the newly received angle every time it receives a message. When we give a turning command with a specific angle, the XSV-300 board will combine the latest data received from the compass with the command angle and determine the new turning angle. The tank will turn until the angle data received by the XSV-300 board matches the calculated angle within an acceptable range of error.

We use two RF antennas. The first is the remote control unit that comes with the tank. It controls the Etank’s motion and turning. The second is the RF antenna that we use to send angle data from the micro-controller to the XSV-300 board.

The application will get the input command from a graphical interface and send the command to the XSV-300 board through a parallel port. The XSV-300 board will process the command and control the tank accordingly.