Account Options>

  1. Soham Desai
Speed Control using DE 0 nano FPGA board Updated 4 minutes ago
More
 Share

DE0 Nano

Speed Control using DE 0 nano FPGA board

Group Members:

Tushar Desai
Soham Desai

Final Project made as a part of the course ECE 4180 at Georgia Tech


Description :
    In mission critical vehicles such as Moon Rovers, it is important to maintain the speed of the bot over the features of terrain. Out o control speed may lead to permanent irreversible damage.
    Our project proposes a FPGA based approach to control the speed of the bot. The ALTERA DE0 NANO FPGA Board has an on board accelerometer with 3-axis sensing. Using Verilog and VHDL code, we were able to take the readings from the accelerometer and generate a PWM signal to drive the motors. So when the sensor senses an uphill climb, the PWM power is increased and the bot goes faster. During downhill motion the speed of motor is cut down so that the bot does not crash. 

We also were successful in using the y-axis accelerometer values for protection to cars or bikes during untripped roll-overs which may occur when the vehicle tries to go around a corner too quickly. The centripetal tire friction and the inertia result in a torque which causes the vehicle to tip over. As a demonstration we decreased the speed of the vehicle gradually as soon as a reading is recorded for the y-axis by the accelerometer.http://en.wikipedia.org/wiki/Rollover
Project Requirements:        


Items :                                               
  1. DE0 Nano FPGA Board    60 $   Available Here
  2. Magician Chasis    14 $    Available here
  3. 9 V Batteries    2 $       
  4. Dual H-Bridge IC    3 $    Available Here
and a Laptop or PC to program the DE0- Nano !


Coding Guide:

The PWM is produced as follows:

Two variables are maintained ' pwm_counter ' and 'pwm_ramp'. The counter increments at every rising clock edge and its range is fixed as per the frequency required. The pwm_ramp sets the pulse width of the output signal. Its used as a threshold, when the pwm_counter is below pwm_ramp assign output '1' else assign output '0'. A look up table might be used to map the pwm_ramp with the accelerometer values.

The files .jic and .sof attached in the files page can be directly used to program the DE0 nano in order to reproduce the project.
Subpages (1): files