Traceability Report for EV3Control_sil_sil_ec

Table of Contents

  1. Eliminated / Virtual Blocks
  2. Traceable Simulink Blocks / Stateflow Objects / MATLAB Functions

Eliminated / Virtual Blocks

Block NameComment
<S1>/sensorBusRaw

Inport

<S1>/EmergencyStopSwitch

Virtual SubSystem

<S1>/Model_Info

Masked SubSystem

<S1>/SensorDataPreprocessing

Virtual SubSystem

<S1>/VehicleManager

Virtual SubSystem

<S1>/posGlobal

Outport

<S1>/steeringAngleCmdRad

Outport

<S1>/actuatorBusOut

Outport

<S1>/VehicleStates

Outport

<S2>/VehicleStates

Inport

<S2>/actuatorBus

Inport

<S2>/Bus Selector

BusSelector

<S2>/Bus Selector1

BusSelector

<S2>/Bus Selector2

BusSelector

<S2>/Model_Info

Masked SubSystem

<S2>/actuatorBusOut

Outport

<S3>/EmptySubsystem

Empty SubSystem

<S4>/sensorBusRaw

Inport

<S4>/Bus Creator

BusCreator

<S4>/Bus Selector

BusSelector

<S4>/Model_Info

Masked SubSystem

<S4>/sensorBus

Outport

<S5>/sensorBus

Inport

<S5>/Bus Selector

BusSelector

<S5>/Bus Selector1

BusSelector

<S5>/GyroInitialization

Virtual SubSystem

<S5>/ManageVehicleStates

Virtual SubSystem

<S5>/Model_Info

Masked SubSystem

<S5>/VehicleControl

Virtual SubSystem

<S5>/VehicleStates

Outport

<S5>/actuatorBus

Outport

<S5>/posGlobal

Outport

<S5>/steeringAngleCmdRad

Outport

<S6>/EmptySubsystem

Empty SubSystem

<S7>/EmptySubsystem

Empty SubSystem

<S8>/gyroAngleRad

Inport

<S8>/Model_Info

Masked SubSystem

<S8>/gyroReady

Outport

<S9>/gyroReady

Inport

<S9>/remoteCtrlCmd

Inport

<S9>/emergencyStopObstacle

Inport

<S9>/HoldAfterTouch

Virtual SubSystem

<S9>/Model_Info

Masked SubSystem

<S9>/VehicleStates

Outport

<S9>/gear

Outport

<S9>/autopilot

Outport

<S10>/EmptySubsystem

Empty SubSystem

<S11>/VehicleStates

Inport

<S11>/gear

Inport

<S11>/autopilot

Inport

<S11>/obstacleDetected

Inport

<S11>/sensorBus

Inport

<S11>/Bus Creator

BusCreator

<S11>/Bus Selector3

BusSelector

<S11>/Bus Selector5

BusSelector

<S11>/HornControl

Virtual SubSystem

<S11>/Model_Info

Masked SubSystem

<S11>/SteeringControl

Virtual SubSystem

<S11>/VelocityControl

Virtual SubSystem

<S11>/actuatorBus

Outport

<S11>/posGlobal

Outport

<S11>/steeringAngleCmdRad

Outport

<S12>/EmptySubsystem

Empty SubSystem

<S14>/remoteCtrlCmd

Inport

<S14>/Model_Info

Masked SubSystem

<S14>/remoteControl

Outport

<S15>/EmptySubsystem

Empty SubSystem

<S16>/EmptySubsystem

Empty SubSystem

<S17>/obstacleDetected

Inport

<S17>/Model_Info

Masked SubSystem

<S17>/speaker

Outport

<S18>/EmptySubsystem

Empty SubSystem

<S19>/obstacleDetected

Inport

<S19>/EmergencyStop

Inport

<S19>/VehicleIdle

Inport

<S19>/VehicleControlOff

Inport

<S19>/Model_Info

Masked SubSystem

<S19>/statusLight

Outport

<S20>/sensorBus

Inport

<S20>/autopilot

Inport

<S20>/posGlobal

Inport

<S20>/obstacleDetected

Inport

<S20>/Bus Selector2

BusSelector

<S20>/Model_Info

Masked SubSystem

<S20>/steeringMotor

Outport

<S20>/steeringAngleCmdRad

Outport

<S21>/VehicleControlOn

Inport

<S21>/gear

Inport

<S21>/Model_Info

Masked SubSystem

<S21>/driveMotor

Outport

<S22>/frequency

Reusable Function(S23)

<S22>/volume

Reusable Function(S23)

<S22>/Bus Creator

Reusable Function(S23)

<S22>/Model_Info

Reusable Function(S23)

<S23>/frequency

Inport

<S23>/volume

Inport

<S23>/Bus Creator

BusCreator

<S23>/Model_Info

Masked SubSystem

<S24>/EmptySubsystem

Empty SubSystem

<S25>/EmptySubsystem

Reusable Function(S23)

<S26>/EmptySubsystem

Empty SubSystem

<S27>/EmptySubsystem

Empty SubSystem

<S28>/ctrlOffLight

Inport

<S28>/Model_Info

Masked SubSystem

<S29>/statusLightDefault

Inport

<S29>/Model_Info

Masked SubSystem

<S30>/stopLight

Inport

<S30>/Model_Info

Masked SubSystem

<S31>/idleLight

Inport

<S31>/Model_Info

Masked SubSystem

<S32>/detLight

Inport

<S32>/Model_Info

Masked SubSystem

<S33>/EmptySubsystem

Empty SubSystem

<S34>/EmptySubsystem

Empty SubSystem

<S35>/EmptySubsystem

Empty SubSystem

<S36>/EmptySubsystem

Empty SubSystem

<S37>/EmptySubsystem

Empty SubSystem

<S38>/obstacleDetected

Inport

<S38>/posGlobal

Inport

<S38>/sensorBus

Inport

<S38>/EstimatedSteeringAngle

Virtual SubSystem

<S38>/Model_Info

Masked SubSystem

<S38>/PathFollower

Virtual SubSystem

<S38>/PathPlanner

Virtual SubSystem

<S38>/SteeringMotorControllerSimple

Virtual SubSystem

<S39>/remoteCtrlCmd

Inport

<S39>/Model_Info

Masked SubSystem

<S40>/EmptySubsystem

Empty SubSystem

<S41>/sensorBus

Inport

<S41>/Bus Selector2

BusSelector

<S41>/Model_Info

Masked SubSystem

<S41>/estimSteerAngleRad

Outport

<S42>/EmptySubsystem

Empty SubSystem

<S43>/sensorBus

Inport

<S43>/posGlobal

Inport

<S43>/goalPointGlobal

Inport

<S43>/Bus Selector2

BusSelector

<S43>/FollowTheCarrotAlgorithm

Eliminated by code generation optimization

<S43>/Model_Info

Masked SubSystem

<S43>/RotationMatrix

Virtual SubSystem

<S43>/steeringAngleCmdRad

Outport

<S44>/posGlobal

Inport

<S44>/obstacleDetected

Inport

<S44>/GetNextGoalPointGlobal

Virtual SubSystem

<S44>/Model_Info

Masked SubSystem

<S44>/ShiftNextGoalPointGlobal

Virtual SubSystem

<S44>/goalPointGlobal

Outport

<S45>/estimSteerAngleRad

Inport

<S45>/steeringAngleCmdRad

Inport

<S45>/Model_Info

Masked SubSystem

<S45>/steeringMotor

Outport

<S46>/EmptySubsystem

Empty SubSystem

<S47>/rotationMatrix

Inport

<S47>/posGlobal

Inport

<S47>/goalPointGlobal

Inport

<S47>/gyroAngleRad

Inport

<S47>/Action Port

ActionPort

<S47>/ComputeSteeringNecessarySteeringAngle

Virtual SubSystem

<S47>/GetGoalPointLocal

Virtual SubSystem

<S47>/Model_Info

Masked SubSystem

<S48>/EmptySubsystem

Empty SubSystem

<S49>/Model_Info

Masked SubSystem

<S50>/rotationMatrix

Inport

<S50>/posGlobal

Inport

<S50>/goalPointGlobal

Inport

<S50>/ComputeSteeringNecessarySteeringAngle

Virtual SubSystem

<S50>/GetGoalPointLocal

Virtual SubSystem

<S50>/Model_Info

Masked SubSystem

<S51>/gyroAngleRad

Inport

<S51>/Model_Info

Masked SubSystem

<S51>/rotationMatrix

Outport

<S52>/deltaHeadingRad

Inport

<S52>/targetHeadingRad

Inport

<S52>/Ground_1

Ground

<S52>/Model_Info

Masked SubSystem

<S52>/Terminator_1

Terminator

<S52>/Terminator_2

Terminator

<S52>/steeringAngleCmd

Outport

<S53>/rotationMatrix

Inport

<S53>/posGlobal

Inport

<S53>/goalPointGlobal

Inport

<S53>/gyroAngleRad

Inport

<S53>/FollowTheCarrotAlgorithm

Eliminated by code generation optimization

<S53>/Model_Info

Masked SubSystem

<S53>/deltaHeadingRad

Outport

<S53>/targetHeadingRad

Outport

<S54>/EmptySubsystem

Empty SubSystem

<S55>/EmptySubsystem

Empty SubSystem

<S57>/EmptySubsystem

Empty SubSystem

<S58>/EmptySubsystem

Empty SubSystem

<S59>/goalPointLocal

Inport

<S59>/Model_Info

Masked SubSystem

<S59>/Selector

Selector

<S59>/steeringAngleCmd

Outport

<S60>/rotationMatrix

Inport

<S60>/posGlobal

Inport

<S60>/goalPointGlobal

Inport

<S60>/Model_Info

Masked SubSystem

<S60>/goalPointLocal

Outport

<S61>/EmptySubsystem

Empty SubSystem

<S62>/EmptySubsystem

Empty SubSystem

<S63>/EmptySubsystem

Empty SubSystem

<S66>/EmptySubsystem

Empty SubSystem

<S67>/posGlobal

Inport

<S67>/Model_Info

Masked SubSystem

<S67>/goalPointGlobal

Outport

<S68>/EmptySubsystem

Empty SubSystem

<S69>/goalPointGlobalOrig

Inport

<S69>/obstacleDetected

Inport

<S69>/Model_Info

Masked SubSystem

<S69>/goalPointGlobal

Outport

<S71>/EmptySubsystem

Empty SubSystem

<S72>/goalPointGlobalOrig

Inport

<S72>/Model_Info

Masked SubSystem

<S72>/Mux

Mux

<S72>/Selector

Selector

<S72>/Selector1

Selector

<S73>/EmptySubsystem

Empty SubSystem

<S74>/goalPointGlobalOrig

Inport

<S74>/Model_Info

Masked SubSystem

<S75>/EmptySubsystem

Empty SubSystem

<S76>/EmptySubsystem

Empty SubSystem

<S77>/Model_Info

Masked SubSystem

<S78>/Model_Info

Masked SubSystem

<S79>/EmptySubsystem

Empty SubSystem

<S80>/Model_Info

Masked SubSystem

<S81>/EmptySubsystem

Empty SubSystem

<S82>/EmptySubsystem

Empty SubSystem

<S83>/EmptySubsystem

Empty SubSystem

<S84>/EmptySubsystem

Empty SubSystem

<S85>/Model_Info

Masked SubSystem

<S86>/Model_Info

Masked SubSystem

<S87>/Model_Info

Masked SubSystem

<S88>/EmptySubsystem

Empty SubSystem

<S89>/EmptySubsystem

Empty SubSystem

<S90>/EmptySubsystem

Empty SubSystem

<S91>/gear

Inport

<S91>/Compare_To_Zero

Masked SubSystem

<S91>/Model_Info

Masked SubSystem

<S92>/EmptySubsystem

Empty SubSystem

<S93>/Model_Info

Masked SubSystem

<S94>/u

Inport

<S94>/y

Outport

<S95>/EmptySubsystem

Empty SubSystem

<S96>/EmptySubsystem

Empty SubSystem

Traceable Simulink Blocks / Stateflow Objects / MATLAB Functions

Subsystem: Frame_EV3C_ec/EV3Control_sil_sil_ec

No traceable objects in this Subsystem.

Subsystem: Frame_EV3C_ec/EV3Control_sil_sil_ec/Model_Info

No traceable objects in this Subsystem.

Subsystem: Frame_EV3C_ec/EV3Control_sil_sil_ec/EmergencyStopSwitch/Model_Info

No traceable objects in this Subsystem.

Subsystem: Frame_EV3C_ec/EV3Control_sil_sil_ec/SensorDataPreprocessing/Model_Info

No traceable objects in this Subsystem.

Subsystem: Frame_EV3C_ec/EV3Control_sil_sil_ec/VehicleManager/Model_Info

No traceable objects in this Subsystem.

Chart: Frame_EV3C_ec/EV3Control_sil_sil_ec/VehicleManager/ManageVehicleStates/Chart

Object NameCode Location
State 'EmergencyStop' <S13>:34EV3Control_sil_sil_ec.c:250, 252, 254, 256, 257, 258, 259, 263, 268, 270, 271, 272, 273, 277, 278, 285, 286, 290, 389, 390, 391, 393, 395, 398
State 'VehicleControlOff' <S13>:3EV3Control_sil_sil_ec.c:237, 238, 239, 241, 243, 246, 257, 258, 259, 261, 263, 296, 298, 300, 302, 303, 304, 305, 309, 310, 317, 318, 322, 326, 329, 330, 332, 333, 334, 335, 339, 362, 363, 364, 366, 368, 371
State 'VehicleControlOn' <S13>:5EV3Control_sil_sil_ec.c:271, 272, 273, 275, 277, 278, 285, 286, 290, 303, 304, 305, 307, 309, 310, 317, 318, 322, 347, 349, 351, 352, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 368, 371, 375, 376, 378, 379, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 395, 398, 399, 400, 401, 405, 407, 408, 409, 414, 418, 419, 420, 424, 427, 431, 434, 435, 436, 437, 438, 439, 440, 444, 447, 448, 449, 452, 454, 455, 456, 457, 461, 466, 468, 469, 470, 471, 475, 490, 491, 492, 494, 496, 497, 504, 505, 509
State 'ControlledDrive' <S13>:45EV3Control_sil_sil_ec.c:352, 379, 401, 403, 405, 407, 408, 409, 414, 418, 419, 420, 424, 438, 439, 440, 442, 444, 447
State 'ManualDrive' <S13>:37EV3Control_sil_sil_ec.c:277, 278, 280, 283, 285, 286, 290, 309, 310, 312, 315, 317, 318, 322, 354, 355, 356, 357, 358, 359, 360, 381, 382, 383, 384, 385, 386, 387, 408, 409, 411, 414, 416, 418, 419, 420, 424, 427, 429, 431, 433, 434, 435, 436, 437, 438, 439, 440, 444, 447, 448, 449, 452, 454, 455, 456, 457, 461, 466, 468, 469, 470, 471, 475, 496, 497, 499, 502, 504, 505, 509
State 'FWD' <S13>:62EV3Control_sil_sil_ec.c:285, 286, 288, 290, 317, 318, 320, 322, 355, 382, 418, 419, 420, 422, 424, 434, 450, 452, 454, 455, 456, 457, 461, 469, 470, 471, 473, 475, 504, 505, 507, 509
State 'REV' <S13>:63EV3Control_sil_sil_ec.c:356, 357, 358, 383, 384, 385, 435, 436, 437, 455, 456, 457, 459, 461, 464, 466, 468, 469, 470, 471, 475
State 'VehicleIdle' <S13>:29EV3Control_sil_sil_ec.c:333, 334, 335, 337, 339, 483, 485, 487, 489, 490, 491, 492, 496, 497, 504, 505, 509
Transition <S13>:4EV3Control_sil_sil_ec.c:236, 237, 238, 239, 243, 246
Transition <S13>:8EV3Control_sil_sil_ec.c:331, 332, 333, 334, 335, 339
Transition <S13>:31EV3Control_sil_sil_ec.c:488, 489, 490, 491, 492, 496, 497, 504, 505, 509
Transition <S13>:50EV3Control_sil_sil_ec.c:301, 302, 303, 304, 305, 309, 310, 317, 318, 322
Transition <S13>:9EV3Control_sil_sil_ec.c:350, 352, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 368, 371
Transition <S13>:21EV3Control_sil_sil_ec.c:377, 379, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 395, 398
Transition <S13>:56EV3Control_sil_sil_ec.c:269, 270, 271, 272, 273, 277, 278, 285, 286, 290
Transition <S13>:35EV3Control_sil_sil_ec.c:255, 256, 257, 258, 259, 263
Transition <S13>:47EV3Control_sil_sil_ec.c:276, 277, 278, 285, 286, 290, 308, 309, 310, 317, 318, 322, 495, 496, 497, 504, 505, 509
Transition <S13>:51EV3Control_sil_sil_ec.c:432, 434, 435, 436, 437, 438, 439, 440, 444, 447
Transition <S13>:52EV3Control_sil_sil_ec.c:406, 407, 408, 409, 414, 418, 419, 420, 424
Transition <S13>:61EV3Control_sil_sil_ec.c:284, 285, 286, 290, 316, 317, 318, 322, 417, 418, 419, 420, 424, 503, 504, 505, 509
Transition <S13>:64EV3Control_sil_sil_ec.c:453, 454, 455, 456, 457, 461
Transition <S13>:60EV3Control_sil_sil_ec.c:467, 468, 469, 470, 471, 475

MATLAB Function: Frame_EV3C_ec/EV3Control_sil_sil_ec/VehicleManager/VehicleControl/SteeringControl/AutoSteering/PathFollower/FollowTheCarrotAlgorithm/GetGoalPointLocal/FollowTheCarrotAlgorithm

ScriptCode Location
1
function [deltaHeadingRad, targetHead ...
2
   
3
   xaxisCar_g = rotMat * [1; 0];
EV3Control_sil_sil_ec.c:775
4
      
5
   vectorToGoalpoint_g = goalPointGlo ...
EV3Control_sil_sil_ec.c:776
6
   
7
   crossProd = cross([xaxisCar_g;0],  ...
EV3Control_sil_sil_ec.c:777
8
   
9
   deltaHeadingRad = acos( dot(xaxisC ...
EV3Control_sil_sil_ec.c:778
10
      * sign(crossProd(3));
EV3Control_sil_sil_ec.c:779
11
   
12
   targetHeadingRad = (gyroAngleRad + ...
EV3Control_sil_sil_ec.c:773
13
end
14

MATLAB Function: Frame_EV3C_ec/EV3Control_sil_sil_ec/VehicleManager/VehicleControl/SteeringControl/AutoSteering/PathFollower/RotationMatrix/MATLAB_Function

ScriptCode Location
1
function rotMat = rotMat(gyroAngleRad)
2
3
rotMat = [cos(gyroAngleRad) -sin(gyro ...
EV3Control_sil_sil_ec.c:540, 542, 543, 544, 545, 546, 547, 548
4
          sin(gyroAngleRad)  cos(gyro ...
EV3Control_sil_sil_ec.c:541, 542, 544

MATLAB Function: Frame_EV3C_ec/EV3Control_sil_sil_ec/VehicleManager/VehicleControl/SteeringControl/AutoSteering/PathPlanner/GetNextGoalPointGlobal/GoalPointGlobal

ScriptCode Location
1
function goalPointGlobal = goalpoint_ ...
2
3
distances = sqrt( (pathCoords(:,1) -  ...
EV3Control_sil_sil_ec.c:555, 556, 557, 558, 559, 561, 562, 563, 565
4
[~, j] = min(distances); % j equals i ...
EV3Control_sil_sil_ec.c:569, 570, 571, 573, 574, 576, 577, 578, 581, 586, 587, 589, 590, 591, 592, 593, 594, 595, 600, 607, 626
5
7
distToNext = inf;
EV3Control_sil_sil_ec.c:603, 604
8
k = j + 20;
EV3Control_sil_sil_ec.c:571, 573, 578, 586, 587, 590, 606, 607, 614, 616, 623
9
while distToNext > lookahead   
EV3Control_sil_sil_ec.c:609, 611
10
   if k > size(pathCoords,1)
EV3Control_sil_sil_ec.c:613, 614
11
      k = size(pathCoords,1);
EV3Control_sil_sil_ec.c:615, 616
12
   end   
13
   k = k - 1;
EV3Control_sil_sil_ec.c:619, 620
14
   if k <= 0
EV3Control_sil_sil_ec.c:622, 623
15
      disp(k)
EV3Control_sil_sil_ec.c:624
16
      k = j;
EV3Control_sil_sil_ec.c:625, 626
17
      break
18
   end
19
   distToNext = sqrt( (pathCoords(k,1 ...
EV3Control_sil_sil_ec.c:571, 573, 578, 586, 587, 590, 607, 614, 616, 623, 629, 630, 632, 634, 635, 636, 637
20
end
21
23
goalPointGlobal = pathCoords(k,:)';
EV3Control_sil_sil_ec.c:571, 573, 578, 586, 587, 590, 607, 614, 616, 623, 643, 654, 673, 687, 688, 689
24
goalPointGlobal = goalPointGlobal(:);
EV3Control_sil_sil_ec.c:644