Commit 92db0ad6 authored by garciay's avatar garciay
Browse files

First CAM validation (HITACHI stack)

parent b822d6f9
Loading
Loading
Loading
Loading
+20 −20
Original line number Diff line number Diff line
@@ -106,8 +106,8 @@ module LibItsCam_Templates {
             * @desc Change the position in the direction of the current heading
             * @param p_offset Offset to the current position in meter
             */
            template (value) UtCamTrigger m_changePosition(integer p_offset) := {
                changePosition := p_offset
            template (value) UtCamTrigger m_changePosition(UtChangePosition p_changePosition) := {
                changePosition := p_changePosition
            }
            
            /**
@@ -131,15 +131,15 @@ module LibItsCam_Templates {
            latitude := f_integer2Latitude(f_getTsLatitude()),
            longitude := f_integer2Longitude(f_getTsLongitude()),
            positionConfidenceEllipse := {
                semiMajorConfidence   := SemiAxisLength_oneCentimeter_,
                semiMinorConfidence   := SemiAxisLength_oneCentimeter_,
                semiMajorConfidence   := c_semiAxisLengthOneCentimeter,
                semiMinorConfidence   := c_semiAxisLengthOneCentimeter,
                semiMajorOrientation  := {
                    headingValue := HeadingValue_wgs84North_,
                    headingValue := c_headingValue_wgs84North,
                    headingConfidence := 10
                }
            },
            altitude := {
                altitudeValue := AltitudeValue_seaLevel_,
                altitudeValue := c_altitudeValue_seaLevel,
                altitudeConfidence := unavailable
            }
        }
@@ -482,13 +482,13 @@ module LibItsCam_Templates {
                generationDeltaTime := p_generationTime,
                camParameters := {
                    basicContainer := {
                        stationType := StationType_passengerCar_,
                        stationType := c_stationType_passengerCar,
                        referencePosition := p_referencePosition
                    },
                    highFrequencyContainer := {
                        basicVehicleContainerHighFrequency := {
                            heading := {
                                headingValue := HeadingValue_wgs84North_, //0
                                headingValue := c_headingValue_wgs84North, //0
                                headingConfidence := 10
                            },
                            speed := {
@@ -502,16 +502,16 @@ module LibItsCam_Templates {
                            },
                            vehicleWidth := 21,
                            longitudinalAcceleration := {
                                longitudinalAccelerationValue := LongitudinalAccelerationValue_unavailable_,
                                longitudinalAccelerationConfidence := AccelerationConfidence_unavailable_
                                longitudinalAccelerationValue := c_longitudinalAccelerationValue_unavailable,
                                longitudinalAccelerationConfidence := c_accelerationConfidence_unavailable
                            },
                            curvature := {
                                curvatureValue := CurvatureValue_straight_,
                                curvatureValue := c_curvatureValue_straight,
                                curvatureConfidence := unavailable
                            },
                            curvatureCalculationMode := yawRateUsed,
                            yawRate := {
                                yawRateValue := YawRateValue_straight_,
                                yawRateValue := c_yawRateValue_straight,
                                yawRateConfidence := unavailable
                            },
                            accelerationControl := omit,
@@ -525,7 +525,7 @@ module LibItsCam_Templates {
                    lowFrequencyContainer := {
                        basicVehicleContainerLowFrequency := {
                            vehicleRole := default_,
                            exteriorLights := ExteriorLights_daytimeRunningLightsOn_,
                            exteriorLights := c_exteriorLights_daytimeRunningLightsOn,
                            pathHistory := {}
                        }
                    },
+119 −83
Original line number Diff line number Diff line
@@ -15,6 +15,9 @@ module LibItsCam_TypesAndValues {
    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 {
        
@@ -22,8 +25,23 @@ module LibItsCam_TypesAndValues {
        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; 
      
    } // end group camValues

@@ -36,6 +54,8 @@ module LibItsCam_TypesAndValues {
             */    
            type record UtCheck { /* FIXME: change this as in DENM */
                UtCamTrigger utEvent
            } with {
                encode (utEvent) "UpperTester"
            }
            
            /**
@@ -55,6 +75,13 @@ module LibItsCam_TypesAndValues {
         * @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.
@@ -67,7 +94,14 @@ module LibItsCam_TypesAndValues {
            HeadingValue changeHeading,
            DriveDirection setDriveDirection,
            YawRateValue changeYawRate,
            integer changePosition, /* FIXME: use UtChangePosition */
            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 */
        }

@@ -76,6 +110,8 @@ module LibItsCam_TypesAndValues {
         */        
        type boolean UtCamTriggerResult;
        
    } with {
            encode "UpperTester"
    } // end utPrimitives
}
with {