Each year we define a list of recommended platforms for developing Digilent Contest projects. Since we address all students, we have chosen beginner boards, so everybody can have a chance to develop a cool project.
But most of the time, they exceed our expectations and they prove they can insert our products into interesting and rather complex projects. One good example is the Cycling Assistance System Using FPGA project, which is implemented on a Basys 3 board, and its functionalities include object detection in the back of the bicycle, brake recognition, change of direction signalization, speed identification, and communication with a mobile phone application.
The hardware project is written in VHDL, and is divided into 4 major parts: signalization system, phone communication, navigation system, and servo control. Phone communication is divided into 3 parts: receive GPS data, read data from the 3 sonars, and send data to Bluetooth.
Digilent Products Required
Digilent Basys 3 board
3 Pmod MAXSONAR
The system’s design is logically divided to meet the major requirements:
- The components which send relevant information to the user were the following assembled: the sonars, the GPS, and the Bluetooth.
- The servos which are an addition which enhances the functionality.
- The external system comprising the buttons and lights for signalization
- The independent braking system.
In the pictures below, the project assembly can be seen:
The top-level block is divided into four parts and is implemented in behavioral VHDL:
The phone application is designed to receive data from the Bluetooth. The information sent from the system is: the 5 messages from the GPS, and the 3 ranges from the sonars.
The messages from the GPS have the following structure:
The GPVTG message is parsed, in order to extract the speed in km/hr, which is the 8th data provided.
From the 3 sonars, their range data is represented using colors. Green means that objects are at a safe distance – greater than 2m, yellow means that there are close items – between 1 and 2 m, and red represents a very close, probably dangerous, proximity – less than 1m.
Engineering Resources Used
Materials used for the mechanical part:
a plastic box
a metallic support
1 iron nail
a metal wire that is easy to bend
a metallic support
a thick needle
small L profiled metallic support
Materials and hardware for the electrical part:
3 X Servo motors
a fixed output linear regulator (LM7805)
a battery of 9 V
9V battery connectors
a solder board
a portable smartphone battery charger
telephone holder for bicycle
Final look of the project in the pictures is below. It’s amazing what you can do with a Basys 3 and a lunch box, plus a couple of sensors and a smart phone!