All the modules are integrated and synthesized using Xilinx project navigator and support tools. The synthesized VHDL source code is placed and routed. Finally, a bit file is created. This bit file is programmed into the Xilinx XC2S300E-6PQ208 FPGA and interfaced with the input and output devices. Table 5 shows the synthesis report of the controller. The motor has been tested for various terrain and various gears conditions. Here, initially, the system is in neutral gear, smooth terrain type, with the available battery status, no acceleration and braking. To start the system, choose 1st gear and the motor runs at the minimum speed. Then proceed by changing the gear for increasing the speed. The vehicle can switch over from one terrain to another terrain by setting the terrain thumb wheel switch position appropriately. Similarly moving the switch position also carries out gear switching. The module has been checked for various input conditions. Some of the cases are listed below.
Table 5 : Synthesis report of the controller
|Drive||Specification of the Xilinx XC2S300E FPGA||Used by this design|
|Number of CLBs used||1536||757|
|Number 4 input LUT s||6144||2648|
|Number of IOBs||142||39|
|Number of gates used for design||300000||24585|
When Terrain is Sm, SOC is H, AA – nil, BR – nil, gear is 4th and speed is F then the output duty cycle is 100% and PWM signal generated for this output is given to the motor. The feedback from the motor is measured through CRO as shown in figure 8. From the figure, it is inferred that it took 28ms to complete one revolution. Now in this condition, the motor is running at the speed of 2127rpm.
When the input parameters Terrain is R, SOC is H, AA – M, BR – nil, gear is 3rd and speed is M then the output duty cycle is 65% and PWM signal generated for this output is given to the motor. The feedback from the motor is measured through CRO as shown in figure 9. From the figure, it is inferred that it took 41.4ms to complete one revolution. Now in this condition, the motor is running at the speed of 1450rpm. By using this controller, the motor has been controlled to go at the maximum speed of 2127rpm for smooth terrain, 1725rpm for rough terrain, 1345rpm for uphill terrain and 1161rpm for downhill terrain.
CONCLUSIONS AND FUTURE WORKS
The real time implementation of the fuzzy logic controller for the various driving conditions and terrains has been achieved on a Xinlinx Spartan 2E FPGA using VHDL. This controller has been implemented for four different types of terrains. The implementation of this controller for the fuzzy module along with other blocks such as ADC and LCD in the closed-loop control system of a DC motor is performed. Further progress in the controller is, in the development of controller for battery monitoring that could alarm the state of charge (SOC) and time of recharge.