ItsRSUsSimulator_Pics.ttcn 11.5 KB
Newer Older
garciay's avatar
garciay committed
module ItsRSUsSimulator_Pics {
    
    // LibCommon
    import from LibCommon_BasicTypesAndValues 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 MAPEM_PDU_Descriptions language "ASN.1:1997" all;
    import from SPATEM_PDU_Descriptions language "ASN.1:1997" all;
    import from IVIM_PDU_Descriptions language "ASN.1:1997" all;
    import from SREM_PDU_Descriptions language "ASN.1:1997" all;
    import from SSEM_PDU_Descriptions language "ASN.1:1997" all;
    
    // LibItsBtp
    import from LibItsBtp_TypesAndValues all;
    import from LibItsBtp_Templates all;
    
    // LibItsGeoNetworking
    import from LibItsGeoNetworking_TypesAndValues all;
    
    // ItsRSUsSimulator
    import from ItsRSUsSimulator_TypesAndValues all;
    
    group rsuParameters {
        
        group rsu1 {
            
            /**
             * @desc RSU GN address
             */
            modulepar GN_Address PICS_RSU_GN_ADDRESS_RSU1 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                stationCountryCode    := 33,
                mid                   := 'AABBCCDDEEFF'O
            } // End of PICS_RSU_GN_ADDRESS_RSU1
            
            modulepar RsuParm PICS_RSU_1 := {
                gnAddress := PICS_RSU_GN_ADDRESS_RSU1,
                longPosVector := {
                    gnAddr        := PICS_RSU_GN_ADDRESS_RSU1,
                    timestamp_    := 0,
                    latitude      := 435517392,
                    longitude     := 103018217,
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111111,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 500
                },
                pathHistory := PICS_RSU_PATH_HISTORY_RSU1
            } // End of PICS_RSU_1
            
            /**
             * @desc Path history to approch the RSU
             */
            modulepar PathHistory PICS_RSU_PATH_HISTORY_RSU1 := {};
            
        } // End of group rsu1
        
        group rsu2 {
            // TODO To be done
        } // End of group rsu1
        
        modulepar RsuParmList PICS_RSU_PARAMS := {
            PICS_RSU_1
            // TODO To be done
        } // End of PICS_RSU_PARAMS
        
    } // End of group rsuParameters 
    
    group camParams {
        
        group camCommonParams {
            
            modulepar BtpPortId PICS_CAM_BTP_DESTINATION_PORT := 2001;
            
            modulepar BtpPortId PICS_CAM_BTP_SOURCE_PORT := 0;
            
        } // End of group camCommonParams
        
    } // End of group rsuParameters 
    
    group denmEvents {
        
        group denmCommonParams {
            
            modulepar BtpPortId PICS_DENM_BTP_DESTINATION_PORT := 2002;
            
            modulepar BtpPortId PICS_DENM_BTP_SOURCE_PORT := 0;
            
            modulepar PosConfidenceEllipse PICS_DENM_POSITION_CONFIDENCE_ELLIPSE := {
                semiMajorConfidence   := SemiAxisLength_oneCentimeter_,
                semiMinorConfidence   := SemiAxisLength_oneCentimeter_,
                semiMajorOrientation  := HeadingValue_wgs84North_
            } // End of PICS_DENM_POSITION_CONFIDENCE_ELLIPSE
            
            modulepar Altitude PICS_DENM_ALTITUDE := {
                altitudeValue := AltitudeValue_referenceEllipsoidSurface_,
                altitudeConfidence := unavailable
            } // End of PICS_DENM_ALTITUDE
            
        } // End of group denmCommonParams
        
        group denmZone1 {
            
            modulepar DenmParm PICS_Z1_D1_EP := {
                eventPosition   := {
                    latitude                    := 435517392,
                    longitude                   := 103018217,
                    positionConfidenceEllipse   := PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                    altitude                    := PICS_DENM_ALTITUDE
                },
                causeCodeType   := CauseCodeType_roadworks_,
                eventHistory    := {
                    {
                        eventPosition := {
                            deltaLatitude                   := -3295,
                            deltaLongitude                  := -2347,
                            deltaAltitude                   := 0
                        },
                        eventDeltaTime                      := omit,
                        informationQuality                  := 0
                    },
                    {
                        eventPosition := {
                            deltaLatitude                   := -719,
                            deltaLongitude                  := -7055,
                            deltaAltitude                   := 0
                        },
                        eventDeltaTime                      := omit,
                        informationQuality                  := 0
                    }
                }
            } // End of PICS_Z1_D1_EP
            
            modulepar DenmParm PICS_Z1_D2_EP := {
                eventPosition := {
                    latitude := 435517392,
                    longitude := 103018217,
                    positionConfidenceEllipse := PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                    altitude := PICS_DENM_ALTITUDE
                },
                causeCodeType   := CauseCodeType_roadworks_,
                eventHistory    := {
                    {
                        eventPosition := {
                            deltaLatitude                   := -3295,
                            deltaLongitude                  := -2347,
                            deltaAltitude                   := 0
                        },
                        eventDeltaTime                      := omit,
                        informationQuality                  := 0
                    },
                    {
                        eventPosition := {
                            deltaLatitude                   := -719,
                            deltaLongitude                  := -7055,
                            deltaAltitude                   := 0
                        },
                        eventDeltaTime                      := omit,
                        informationQuality                  := 0
                    }
                }
            } // End of PICS_Z1_D2_EP
            
            modulepar DenmParm PICS_Z1_D3_EP := {
                eventPosition := {
                    latitude := 435517392,
                    longitude := 103018217,
                    positionConfidenceEllipse := PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                    altitude := PICS_DENM_ALTITUDE
                },
                causeCodeType   := CauseCodeType_roadworks_,
                eventHistory    := {
                    {
                        eventPosition := {
                            deltaLatitude                   := -3295,
                            deltaLongitude                  := -2347,
                            deltaAltitude                   := 0
                        },
                        eventDeltaTime                      := omit,
                        informationQuality                  := 0
                    },
                    {
                        eventPosition := {
                            deltaLatitude                   := -719,
                            deltaLongitude                  := -7055,
                            deltaAltitude                   := 0
                        },
                        eventDeltaTime                      := omit,
                        informationQuality                  := 0
                    }
                }
            } // End of PICS_Z1_D3_EP
            
        } // End of group denmZone1 
        
        group denmZone2 {
            // TODO To be done
        } // End of group denmZone2
        
        group denmUseCase1 {
            
            modulepar DenmEventsParmsUseCase PICS_DENM_PARMS_UC1_RWW := {
                PICS_Z1_D1_EP,
                PICS_Z1_D2_EP,
                PICS_Z1_D3_EP
            } // End of PICS_DENM_PARMS_UC1_RWW
            
        } // End of group denmUseCase1 
        
        group denmUseCase2 {
            // TODO To be done
        } // End of group denmUseCase2 
            
        modulepar DenmEventsParmsUseCaseRsu PICS_DENM_EVENTS_RSU := {
            PICS_DENM_PARMS_UC1_RWW
        } // End of PICS_DENM_EVENTS_RSU
        
    } // End of group denmEvents 
    
    group mapemEvents {
        
        group mapemCommonParams {
            
            modulepar BtpPortId PICS_MAPEM_BTP_DESTINATION_PORT := 2003;
            
            modulepar BtpPortId PICS_MAPEM_BTP_SOURCE_PORT := 0;
            
            modulepar BtpPortId PICS_SPATEM_BTP_DESTINATION_PORT := 2004;
            
            modulepar BtpPortId PICS_SPATEM_BTP_SOURCE_PORT := 0;
            
        } // End of group mapemCommonParams
        
        group mapemZone1 {
            // TODO To be done
        } // End of group mapemZone1 
        
        group mapemZone2 {
            // TODO To be done
        } // End of group mapemZone2 
        
        group mapemUseCase1 {
            // TODO To be done
        } // End of group mapemUseCase1 
        
        group mapemUseCase2 {
            // TODO To be done
        } // End of group mapemUseCase2 
            
    } // End of group mapemEvents 
    
    group ivimEvents {
        
        group ivimCommonParams {
            
            modulepar BtpPortId PICS_IVIM_BTP_DESTINATION_PORT := 2005;
            
            modulepar BtpPortId PICS_IVIM_BTP_SOURCE_PORT := 0;
            
        } // End of group ivimCommonParams
        
        group ivimZone1 {
            // TODO To be done
        } // End of group ivimZone1 
        
        group ivimZone2 {
            // TODO To be done
        } // End of group ivimZone2 
        
        group ivimUseCase1 {
            // TODO To be done
        } // End of group ivimUseCase1 
        
        group ivimUseCase2 {
            // TODO To be done
        } // End of group ivimUseCase2 
            
    } // End of group ivimEvents 
    
    group generationFrequencies {
        
        modulepar boolean PICS_GENERATE_CAM := true;
        
        modulepar boolean PICS_GENERATE_DENM := true;
        
        modulepar boolean PICS_GENERATE_IVIM := true;
        
        modulepar boolean PICS_GENERATE_MAPEM_SPATEM := true;
        
        modulepar boolean PICS_GENERATE_SSEM := true;
        
garciay's avatar
garciay committed
        /**
         * @desc CAM frequency timer
         */
        modulepar float PICS_CAM_FREQUENY       := 0.1;
        
        /**
         * @desc DENM frequency timer
         */
        modulepar float PICS_DENM_FREQUENY      := 0.1;
        
        /**
         * @desc MAPEM frequency timer
         */
        modulepar float PICS_MAPEM_FREQUENY     := 0.1;
        
        /**
         * @desc SPATEMM frequency timer
         */
        modulepar float PICS_SPATEM_FREQUENY    := 5.0;
        
        /**
         * @desc IVIM frequency timer
         */
        modulepar float PICS_IVIM_FREQUENY      := 1.0;
        
    } // End of group generationFrequencies 
    
} // End of module ItsRSUsSimulator_Pics