Project 1 (Mini Project on Vehicle Direction Detection
AIM:To create a Simulink model of Vehicle Direction Detection as per the Requirement data.
Requirement - 1:
- Steering wheel input as yaw rate (Signal name: SteeringWheel_
YawDegreeInput) is the input for this system. - This is compared against 3 angular values, one each for left turn, right turn & straight drive (Calibration Values: Right_Turn_
AngularLimit, Left_Turn_AngularLimit, Straight_Drive_Steering_Angle) to say which specific direction the steering wheel is turning towards. - Use switch blocks to compare & develop this requirement. Keep this requirement in a subsystem & output of this requirement is a local signal (Signal Name: Vehicle_Turn_Status).
Requirement – 2:
- Keep this requirement as a separate subsystem. Inputs to this requirement are local signal from requirement 1 (Signal Name: Vehicle_Turn_Status) & an input signal from camera (Signal Name: CameraInput_RoadSign), which confirms the occurrence of a road sign.
- Signal Vehicle_Turn_Status is compared against calibration values (Calibration Values: RightTurn_RoadSign, LeftTurn_RoadSign, Straight_RoadSign), if each of them is found equal, then each of the three corresponding output is compared against the camera input signal,
- Using a logical operator block, only one among them is finally given as output signal (Signal Name: Vehicle_Direction_
Indicator).
Signals & Calibration Data List:
|
Signal / Calibration Name |
Signal Type |
Data Type |
Dimension |
Min |
Max |
Initial Value |
Units |
|
SteeringWheel_YawDegreeInput |
Input |
Int16 |
1 |
-180 |
180 |
- |
Deg |
|
CameraInput_RoadSign |
Input |
Boolean |
1 |
0 |
1 |
- |
- |
|
Vehicle_Turn_Status |
Local |
Int16 |
1 |
-180 |
180 |
- |
Deg |
|
Right_Turn_AngularLimit |
Calibration |
Int16 |
[1 1] |
-180 |
180 |
30 |
Deg |
|
Left_Turn_AngularLimit |
Calibration |
Int16 |
[1 1] |
-180 |
180 |
-120 |
Deg |
|
Straight_Drive_Steering_Angle |
Calibration |
Int16 |
[1 1] |
-180 |
180 |
0 |
Deg |
|
RightTurn_RoadSign |
Calibration |
Int16 |
[1 1] |
-180 |
180 |
30 |
|
|
LeftTurn_RoadSign |
Calibration |
Int16 |
[1 1] |
-180 |
180 |
-120 |
|
|
Straight_RoadSign |
Calibration |
Int16 |
[1 1] |
-180 |
180 |
0 |
|
|
Vehicle_Direction_Indicator |
Output |
Boolean |
1 |
0 |
1 |
- |
- |
SLDD File:

Simulink Model:

Vehicle Direction Detection:

Requirement 1:

Requirement 2:

Blocks used:
- Input Blocks: To provide the input signals
- Output Blocks: To send the output signals
- Constant Blocks: To define the calibration values
- Logical operator Blocks: OR blocks are used to compare and the road signs with camera input and to get the boolean output.
- Switch Blocks: To compare the input with the calibration values.
- Mux Block: To combile the signals
- Display Block: To display the results
Procedure:
- The logic for Requirement_1 is as follows: If the input is> = 30 (because the default value is 30), the vehicle will turn right. Otherwise, if the input is non-zero (~ = 0), the vehicle will turn left. Otherwise stright_drive (if the input is null).
- The input yaw rate is given to the central port of the switch and the threshold is 30. If the input is greater than the threshold, the switch will be in the true state (Right_Turn_AngularLimit), otherwise it will be in the false state.
- On the second switch, the threshold is zero. If the threshold is non-zero, the switch expects a true state (Left_Turn_AngularLimit), otherwise it assumes a false state (Sitight_Drive Steering_Angle). This output from the second switch is passed to the first switch as a false state. Also, the output of Requirement_1 is "Vehicle_Turn_Status".
- The logic of Requirement_2 is to compare the Vehicle_Turn_Status (requirement_1 output) with the RoadSign and the input signal from the camera to get the direction of the vehicle.
- After comparing with "Vehicle_Turn_Status", if each is found to be equal, each of the three corresponding outputs is compared with the camera input signal and the "logical OR" block is used to get the true case, of which Only one of is retrieved.
- The'Mux'block is used as output.And the final output of the Vehicle_Detection model specifies the Vehicle_Direction indicator.
- Next, it is defined to add SLDD_file to the model and load the calibration values and input / output values. Running the
simulation determines the direction of the vehicle.
Model Advisor:

Result:
After running the
simulation, you can clearly see that the vehicle is moving in a straight line.
Conclusion:
Self-driving cars are made up of various Advanced Driver Assistance Systems (ADAS) features. Vehicle direction detection is one of the vehicle's functions.
Therefore, a Simulink model for vehicle direction detection was created according to the requirements data.