Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/**
* @author ETSI / STF405 / STF449
* @version $URL$
* $Id$
* @desc Module containing types and values for CAM Protocol
*
*/
module LibItsCam_TypesAndValues {
// LibCommon
import from LibCommon_BasicTypesAndValues all;
import from LibCommon_DataStrings all;
// LibIts
import from ITS_Container language "ASN.1:1997" all;
import from CAM_PDU_Descriptions language "ASN.1:1997" all;
import from DENM_PDU_Descriptions language "ASN.1:1997" all;
import from LibItsCommon_TypesAndValues {
type UtChangePosition
};
group camValues {
const float c_lowFrequencyGenerationTime := 0.5; //500 ms
const float c_specialVehicleGenerationTime := 0.5; //500 ms
const AccelerationControl c_accCtrlIdle := '0000000'B;
const AccelerationControl c_brakePedalEngaged := '0000001'B;
const AccelerationControl c_gasPedalEngaged := '0000010'B;
const AccelerationControl c_emergencyBrakeEngaged := '0000100'B;
const AccelerationControl c_collisionWarningEngaged := '0001000'B;
const AccelerationControl c_accEngaged := '0010000'B;
const AccelerationControl c_cruiseControlEngaged := '0100000'B;
const AccelerationControl c_speedLimiterEngaged := '1000000'B;
const ExteriorLights c_elAllLightsOff := '00000000'B;
const ExteriorLights c_lowBeamHeadlightsOn := '00000001'B;
const ExteriorLights c_highBeamHeadlightsOn := '00000010'B;
const ExteriorLights c_leftTurnSignalOn := '00000100'B;
const ExteriorLights c_rightTurnSignalOn := '00001000'B;
const ExteriorLights c_daytimeRunningLightsOn := '00010000'B;
const ExteriorLights c_reverseLightOn := '00100000'B;
const ExteriorLights c_fogLightOn := '01000000'B;
const ExteriorLights c_parkingLightsOn := '10000000'B;
const VehicleRole c_vehicleRole_publicTransport := publicTransport;
const VehicleRole c_vehicleRole_specialTransport := specialTransport;
const VehicleRole c_vehicleRole_dangerousGoods := dangerousGoods;
const VehicleRole c_vehicleRole_roadWork := roadWork;
const VehicleRole c_vehicleRole_rescue := rescue;
const VehicleRole c_vehicleRole_emergency := emergency;
const VehicleRole c_vehicleRole_safetyCar := safetyCar;
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
} // end group camValues
group utPrimitives {
group utCommonPrimitives {
/**
* @desc Upper Tester message to check event/status on IUT
*/
type record UtCheck { /* FIXME: change this as in DENM */
UtCamTrigger utEvent
} with {
encode (utEvent) "UpperTester"
}
/**
* @desc Upper Tester response message
*/
type boolean UtResult;
}
with {
encode "LibItsCommon"
}
/**
* @desc
* @member changeCurvature Changes the curvature.
* @member changeSpeed Changes the speed in cm/s.
* @member setAccelerationControlStatus Sets the acceleration control status.
* @member setExteriorLightsStatus Sets the exterior lights status.
* @member changeHeading Changes the heading.
* @member setDriveDirection Sets the drive direction.
* @member setStationType
* @member setVehicleRole
* @member setEmbarkationStatus
* @member setPtActivation
* @member setDangerousGoods
* @member setDangerousGoodsExt
* @member setLightBarSireneStatus
* @member changeYawRate Changes the yaw rate in offsets of 0.01 degrees per second.
* @member changePosition Changes the position in the direction of the current heading in meters.
* @member checkLdm Checks that the received CAM was provided at LDM.
*/
type union UtCamTrigger {
CurvatureValue changeCurvature,
SpeedValue changeSpeed,
AccelerationControl setAccelerationControlStatus,
ExteriorLights setExteriorLightsStatus,
HeadingValue changeHeading,
DriveDirection setDriveDirection,
YawRateValue changeYawRate,
StationType setStationType,
VehicleRole setVehicleRole,
EmbarkationStatus setEmbarkationStatus,
PtActivation setPtActivation,
DangerousGoodsBasic setDangerousGoods,
DangerousGoodsExtended setDangerousGoodsExt,
LightBarSirenInUse setLightBarSirene,
UtChangePosition changePosition, /* FIXME: obselete, to be removed */
CAM checkLdm /* FIXME: obselete, to be removed */
}
/**
* @desc Upper Tester result message of request of triggering of an event at IUT
*/
type boolean UtCamTriggerResult;
} with {
encode "UpperTester"
} // end utPrimitives
}
with {
encode "LibItsCam"
}