Field Programmable Gate Array Controlled Autonomous Car

Open Access
Author:
Crain, Austin Taylor
Area of Honors:
Electrical Engineering
Degree:
Bachelor of Science
Document Type:
Thesis
Thesis Supervisors:
  • Hal Scholz, Thesis Supervisor
  • Jeffrey Scott Mayer, Honors Advisor
Keywords:
  • Field Programmable Gate Array
Abstract:
As industries, such as the auto-industry, continue to add computer aided control to their products, more and more is required from the hardware that is embedded in their products. New designs must work faster and handle more situations which require more processing power. Currently, the preferred method of computer aided control utilizes microprocessors. While this method is effective to handle simple situations, more complicated situations that require parallel processing are becoming a reality. One of the possible alternatives to using microprocessors to handle parallel processing is a Field Programmable Gate Array (FPGA). An FPGA is an integrated circuit made up of a collection of logic gates. An FPGA is programmable in the sense that the logic gates it contains can be programmatically wired together to create a system that responds to inputs predictably. The logic gates can be wired together using a dataflow language, such as Verilog. Since logic gates are independently connected to each other, they can operate in parallel. This enables FPGAs to operate in parallel. The goal of this project is to build an autonomous FPGA controlled car. The car would have Ultrasonic Distance Sensors to gather input about the surroundings. The data would be forwarded from the distance sensors to the FPGA. The FPGA would then use the data obtained from the distance sensors to make decisions about how to move the car. The FPGA moves the car using an H-bridge connected to a drive motor and a steering motor. The main focus of this project is the algorithms used to decide which directions to go and their effectiveness.