Skip to content
ItsRSUsSimulator_Pics.ttcn 79.4 KiB
Newer Older
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D1-T5
                            pathPosition := {
                                deltaLatitude                       := 160,
                                deltaLongitude                      := 1041,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        }
                        }
                    }; // End of PICS_Z2_D1_Tx
                    
                    modulepar DenmParm PICS_Z2_D1 := {
                        eventPosition                               := PICS_Z2_D1_EP,
                        causeCodeType                               := CauseCodeType_roadworks_,
                        eventHistory                                := PICS_Z2_D1_Hx,
                        traces                                      := PICS_Z2_D1_Tx,
                        roadWorksContainerExtended := {
                            lightBarSirenInUse                      := omit,
                            closedLanes := {
                                hardShoulderStatus                  := availableForDriving,
                                drivingLaneStatus                   := '0001'B
                            },
                            restriction                             := omit,
                            speedLimit                              := 30,
                            incidentIndication                      := omit,
                            recommendedPath                         := omit,
                            startingPointSpeedLimit := {
                                deltaLatitude                       := 0,
                                deltaLongitude                      := 0,
                                deltaAltitude                       := 0
                            },
                            trafficFlowRule                         := passToRight,
                            referenceDenms                          := omit
                        }
                    } // End of PICS_Z2_D1
                    
                } // End of group denmZone2_D1
                
                group denmZone2_D2 {
                    
                    /**
                     * @desc Z2-D2-EP/POS2
                     */
                    modulepar ReferencePosition PICS_Z2_D2_EP := {
                        latitude                                    := 435519107,                               // Z2-D2-EP/latitude
                        longitude                                   := 102993930,                               // Z2-D2-EP/longitude
                        positionConfidenceEllipse                   := PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                        altitude                                    := PICS_DENM_ALTITUDE
                    }; // End of PICS_Z2_D2_EP
                    
                    /**
                     * @desc Z2-D2-EP/EventHistory2
                     */
                    modulepar EventHistory PICS_Z2_D2_Hx := { 
                        { // Z2_D2_H1
                            eventPosition := {
                                deltaLatitude                       := -2750,
                                deltaLongitude                      := -4251,
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        },
                        { // Z2_D2_H2
                            eventPosition := {
                                deltaLatitude                       := -2936,
                                deltaLongitude                      := -3641,
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        }
                    }; // End of PICS_Z2_D2_Hx
                    
                    /**
                     * @desc Z2-D2-Traces/Trace2
                     */
                    modulepar Traces PICS_Z2_D2_Tx := {
                        {
                        { // Z2-D2-T1
                            pathPosition := {
                                deltaLatitude                       := 3699,
                                deltaLongitude                      := 5788,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D2-T2
                            pathPosition := {
                                deltaLatitude                       := 456,
                                deltaLongitude                      := 598,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D2-T3
                            pathPosition := {
                                deltaLatitude                       := 450,
                                deltaLongitude                      := 697,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D2-T4
                            pathPosition := {
                                deltaLatitude                       := 619,
                                deltaLongitude                      := 963,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D2-T5
                            pathPosition := {
                                deltaLatitude                       := 510,
                                deltaLongitude                      := 719,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        }
                        }
                    }; // End of PICS_Z2_D2_Tx
                    
                    modulepar DenmParm PICS_Z2_D2 := {
                        eventPosition                               := PICS_Z2_D2_EP,
                        causeCodeType                               := CauseCodeType_roadworks_,
                        eventHistory                                := PICS_Z2_D2_Hx,
                        traces                                      := PICS_Z2_D2_Tx,
                        roadWorksContainerExtended := {
                            lightBarSirenInUse                      := omit,
                            closedLanes := {
                                hardShoulderStatus                  := availableForDriving,
                                drivingLaneStatus                   := '0011'B
                            },
                            restriction                             := omit,
                            speedLimit                              := 30,
                            incidentIndication                      := omit,
                            recommendedPath                         := omit,
                            startingPointSpeedLimit := {
                                deltaLatitude                       := 0,
                                deltaLongitude                      := 0,
                                deltaAltitude                       := 0
                            },
                            trafficFlowRule                         := passToRight,
                            referenceDenms                          := omit
                        }
                        
                    } // End of PICS_Z2_D2
                    
                } // End of group denmZone2_D2
                
                group denmZone2_D3 {
                    
                    /**
                     * @desc Z2-D3-EP/POS3
                     */
                    modulepar ReferencePosition PICS_Z2_D3_EP := {
                        latitude                                    := 435513421,                               // Z2-D3-EP/latitude
                        longitude                                   := 102986038,                               // Z2-D3-EP/longitude
                        positionConfidenceEllipse                   := PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                        altitude                                    := PICS_DENM_ALTITUDE
                    }; // End of PICS_Z2_D3_EP
                    
                    /**
                     * @desc Z2-D3-EP/EventHistory1
                     */
                    modulepar EventHistory PICS_Z2_D3_Hx := { 
                        { // Z2_D3_H1
                            eventPosition := {
                                deltaLatitude                       := -1158,
                                deltaLongitude                      := -45,
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        },
                        { // Z2_D3_H2
                            eventPosition := {
                                deltaLatitude                       := -1299,
                                deltaLongitude                      := -819,
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        }
                    }; // End of PICS_Z2_D3_Hx
                    
                    /**
                     * @desc Z2-D3-Traces/Trace1
                     */
                    modulepar Traces PICS_Z2_D3_Tx := {
                        {
                        { // Z2-D3-T1
                            pathPosition := {
                                deltaLatitude                       := 3435,
                                deltaLongitude                      := 4483,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D3-T2
                            pathPosition := {
                                deltaLatitude                       := 626,
                                deltaLongitude                      := 863,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D3-T3
                            pathPosition := {
                                deltaLatitude                       := 500,
                                deltaLongitude                      := 541,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                        },
                        { // Z2-D3-T4
                            pathPosition := {
                                deltaLatitude                       := 564,
                                deltaLongitude                      := 841,
                                deltaAltitude                       := 0
                            },
                            pathDeltaTime                           := omit
                            }
                        }
                    }; // End of PICS_Z2_D3_Tx
                    
                    modulepar DenmParm PICS_Z2_D3 := {
                        eventPosition                               := PICS_Z2_D3_EP,
                        causeCodeType                               := CauseCodeType_roadworks_,
                        eventHistory                                := PICS_Z2_D3_Hx,
                        traces                                      := PICS_Z2_D3_Tx,
                        roadWorksContainerExtended := {
                            lightBarSirenInUse                      := omit,
                            closedLanes := {
                                hardShoulderStatus                  := closed,
                                drivingLaneStatus                   := '01'B
                            },
                            restriction                             := omit,
                            speedLimit                              := 30,
                            incidentIndication                      := omit,
                            recommendedPath                         := omit,
                            startingPointSpeedLimit := {
                                deltaLatitude                       := 0,
                                deltaLongitude                      := 0,
                                deltaAltitude                       := 0
                            },
                            trafficFlowRule                         := passToRight,
                            referenceDenms                          := omit
                        }
                        
                    } // End of PICS_Z2_D3
                    
                } // End of denmZone2_D3
                
            } // End of group denmZone2
garciay's avatar
garciay committed
            
            modulepar DenmEventsParmsUseCase PICS_DENM_PARMS_UC1_RWW := {
garciay's avatar
garciay committed
            } // 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 {
            
garciay's avatar
garciay committed
            modulepar BtpPortId PICS_MAPEM_BTP_DESTINATION_PORT  := 2003;
garciay's avatar
garciay committed
            modulepar BtpPortId PICS_MAPEM_BTP_SOURCE_PORT       := 0;
garciay's avatar
garciay committed
            
        } // End of group mapemCommonParams
        
        group mapemZone1 {
garciay's avatar
garciay committed
            
            modulepar MapemParm PICS_MAPEM_PARMS_RSU_1 := {
                intersections := {
                    { // Start of intersection #0
                        name                                := "PICS_MAPEM_PARMS_RSU_1",
                        id := {
                            region                          := 0,
                            id                              := 0
                        },
                        revision                            := 0,
                        refPoint := {
                            lat                             := 435517392,
                            long                            := 103018217,
                            elevation                       := omit,
                            regional                        := omit
                        },
                        laneWidth                           := omit,
                        speedLimits                         := omit,
                        laneSet := {
                            { // Start of Lane #1
                                laneID                      :=  1,
                                name                        := omit,
                                ingressApproach             := 1,
                                egressApproach              := 1,
                                laneAttributes := {
                                    directionalUse          := '10'B,
                                    sharedWith              := '0000000000'B,
                                    laneType := {
                                        vehicle             := '00000000'B
                                    },
                                    regional                := omit
                                },
                                maneuvers                   := omit,
                                nodeList := {
                                    nodes := {
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        },
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        }
                                    }
                                },
                                connectsTo := {
                                    {
                                        connectingLane := {
                                            lane            := 1,
                                            maneuver        := omit
                                        }, 
                                        remoteIntersection  := omit,  
                                        signalGroup         := 1,    
                                        userClass           := omit, 
                                        connectionID        := omit
                                    }
                                },
                                overlays                    := omit,
                                regional                    := omit
                            }, // End of Lane #1
                            { // Start of Lane #2
                                laneID                      :=  1,
                                name                        := omit,
                                ingressApproach             := 1,
                                egressApproach              := 2,
                                laneAttributes := {
                                    directionalUse          := '01'B,
                                    sharedWith              := '0000000000'B,
                                    laneType := {
                                        vehicle             := '00000000'B
                                    },
                                    regional                := omit
                                },
                                maneuvers                   := omit,
                                nodeList := {
                                    nodes := {
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        },
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        }
                                    }
                                },
                                connectsTo                  := omit,
                                overlays                    := omit,
                                regional                    := omit
                            } // End of Lane #1
                        }, // End of LaneSet
                        preemptPriorityData                 := omit,
                        regional                            := omit
                    } // End of intersection #0
                }, // End of field intersections
                roadSegments := omit
            } // End of PICS_MAPEM_PARMS_RSU_1
garciay's avatar
garciay committed
            
garciay's avatar
garciay committed
        } // End of group mapemZone1 
        
        group mapemZone2 {
garciay's avatar
garciay committed
            
            modulepar MapemParm PICS_MAPEM_PARMS_RSU_2 := {
                intersections := {
                    { // Start of intersection #0
                        name                                := "PICS_MAPEM_PARMS_RSU_1",
                        id := {
                            region                          := 0,
                            id                              := 0
                        },
                        revision                            := 0,
                        refPoint := {
                            lat                             := 435517392,
                            long                            := 103018217,
                            elevation                       := omit,
                            regional                        := omit
                        },
                        laneWidth                           := omit,
                        speedLimits                         := omit,
                        laneSet := {
                            { // Start of Lane #1
                                laneID                      :=  1,
                                name                        := omit,
                                ingressApproach             := 1,
                                egressApproach              := 1,
                                laneAttributes := {
                                    directionalUse          := '10'B,
                                    sharedWith              := '0000000000'B,
                                    laneType := {
                                        vehicle             := '00000000'B
                                    },
                                    regional                := omit
                                },
                                maneuvers                   := omit,
                                nodeList := {
                                    nodes := {
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        },
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        }
                                    }
                                },
                                connectsTo := {
                                    {
                                        connectingLane := {
                                            lane            := 1,
                                            maneuver        := omit
                                        }, 
                                        remoteIntersection  := omit,  
                                        signalGroup         := 1,    
                                        userClass           := omit, 
                                        connectionID        := omit
                                    }
                                },
                                overlays                    := omit,
                                regional                    := omit
                            }, // End of Lane #1
                            { // Start of Lane #2
                                laneID                      :=  1,
                                name                        := omit,
                                ingressApproach             := 1,
                                egressApproach              := 2,
                                laneAttributes := {
                                    directionalUse          := '01'B,
                                    sharedWith              := '0000000000'B,
                                    laneType := {
                                        vehicle             := '00000000'B
                                    },
                                    regional                := omit
                                },
                                maneuvers                   := omit,
                                nodeList := {
                                    nodes := {
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        },
                                        {
                                            delta := {
                                                node_XY1 := {
                                                    x       := -10,
                                                    y       := 10
                                                }
                                            },
                                            attributes      := omit
                                        }
                                    }
                                },
                                connectsTo                  := omit,
                                overlays                    := omit,
                                regional                    := omit
                            } // End of Lane #1
                        }, // End of LaneSet
                        preemptPriorityData                 := omit,
                        regional                            := omit
                    } // End of intersection #0
                }, // End of field intersections
                roadSegments := omit
            } // End of PICS_MAPEM_PARMS_RSU_2
garciay's avatar
garciay committed
            
garciay's avatar
garciay committed
        } // End of group mapemZone2 
        
        modulepar MapemParmListRsu PICS_MAPEM_PARMS_RSUs := {
garciay's avatar
garciay committed
            PICS_MAPEM_PARMS_RSU_1,
            PICS_MAPEM_PARMS_RSU_2
        } // End of PICS_MAPEM_PARMS_RSU
garciay's avatar
garciay committed
        
    } // End of group mapemEvents 
    
    group spatemEvents {
        
        group spatemCommonParams {
            
            modulepar BtpPortId PICS_SPATEM_BTP_DESTINATION_PORT := 2004;
            
            modulepar BtpPortId PICS_SPATEM_BTP_SOURCE_PORT      := 0;
            
        } // End of group spatemCommonParams
        
        group spatemZone1 {
            
            modulepar SignalGroupParm PICS_SPATEM_PARMS_SG_1_RS_1 := {
                signalGroupID                               := 1,
                intersections := {
                    {
                        name                                := "PICS_SPATEM_PARMS_SG_1_RS_1",
                        id := {
                            region                          := 0,
                            id                              := 0
                        },
                        revision                            := 0,   
                        status                              := int2bit(0, 16),
                        moy                                 := omit,
                        timeStamp                           := omit, 
                        enabledLanes                        := omit,  
                        states := {
                            {
                               movementName                 := "protected-Movement-Allowed",
                               signalGroup                  := 1, 
                               state_time_speed:= {
                                   {
                                       eventState           := protected_Movement_Allowed,
                                       timing               := omit,
                                       speeds               := omit,
                                       regional             := omit
                                   }
                               },   
                               maneuverAssistList           := omit,
                               regional                     := omit
                            },
                            {
                               movementName                 := "protected-clearance",
                               signalGroup                  := 1, 
                               state_time_speed:= {
                                   {
                                       eventState           := protected_clearance,
                                       timing               := omit,
                                       speeds               := omit,
                                       regional             := omit
                                   }
                               },   
                               maneuverAssistList           := omit,
                               regional                     := omit
                            },
                            {
                               movementName                 := "stop_Then_Proceed",
                               signalGroup                  := 1, 
                               state_time_speed:= {
                                   {
                                       eventState           := stop_Then_Proceed,
                                       timing               := omit,
                                       speeds               := omit,
                                       regional             := omit
                                   }
                               },   
                               maneuverAssistList           := omit,
                               regional                     := omit
                            }
                        },
                        maneuverAssistList                  := omit,
                        regional                            := omit
                    }
                } // End of field states
            } // End of type PICS_SPATEM_PARMS_SG_1_RS_1
            
            modulepar SignalGroupParmList PICS_SPATEM_PARMS_RSU_1 := {
                PICS_SPATEM_PARMS_SG_1_RS_1
            } // End of type PICS_SPATEM_PARMS_RSU_1
            
        }
        
        group spatemZone2 {
            
            modulepar SignalGroupParm PICS_SPATEM_PARMS_SG_1_RS_2 := {
                signalGroupID                               := 1,
                intersections := {
                    {
                        name                                := "PICS_SPATEM_PARMS_SG_1_RS_2",
                        id := {
                            region                          := 0,
                            id                              := 0
                        },
                        revision                            := 0,   
                        status                              := int2bit(0, 16),
                        moy                                 := omit,
                        timeStamp                           := omit, 
                        enabledLanes                        := omit,  
                        states := {
                            {
                               movementName                 := "stop_Then_Proceed",
                               signalGroup                  := 1, 
                               state_time_speed:= {
                                   {
                                       eventState           := stop_Then_Proceed,
                                       timing               := omit,
                                       speeds               := omit,
                                       regional             := omit
                                   }
                               },   
                               maneuverAssistList           := omit,
                               regional                     := omit
                            }
                        },
                        maneuverAssistList                  := omit,
                        regional                            := omit
                    }
                } // End of field states
            } // End of type PICS_SPATEM_PARMS_SG_1_RS_2
            
            modulepar SignalGroupParmList PICS_SPATEM_PARMS_RSU_2 := {
                PICS_SPATEM_PARMS_SG_1_RS_2
            } // End of type PICS_SPATEM_PARMS_RSU_1_RS_2
            
        }
        
        modulepar SpatemParmRsu PICS_SPATEM_PARMS_RSUs := {
            PICS_SPATEM_PARMS_RSU_1,
            PICS_SPATEM_PARMS_RSU_2
        } // End of PICS_SPATEM_PARMS_RSUs
        
    } // End of group spatemEvents
    
garciay's avatar
garciay committed
    group ivimEvents {
        
        group ivimCommonParams {
            
            modulepar BtpPortId PICS_IVIM_BTP_DESTINATION_PORT := 2006;
garciay's avatar
garciay committed
            modulepar BtpPortId PICS_IVIM_BTP_SOURCE_PORT      := 0;
garciay's avatar
garciay committed
            
        } // End of group ivimCommonParams
        
        group ivimZone1 {
            
            modulepar IvimParm PICS_IVIM_PARMS_RSU_1 := {
                provider := {
                    countryCode                                := '0000000001'B,
                    providerIdentifier                         := 13
                },
                iviIdentificationNumber                        := 12
            } // End of PICS_IVIM_PARMS_RSU_1
            
garciay's avatar
garciay committed
        } // End of group ivimZone1 
        
        group ivimZone2 {
            // TODO To be done
        } // End of group ivimZone2 
        
        modulepar IvimParmListRsu PICS_IVIM_PARMS_RSUs := {
            PICS_IVIM_PARMS_RSU_1
        } // End of PICS_IVIM_PARMS_RSUs
garciay's avatar
garciay committed
        
    } // End of group ivimEvents 
    
    group ssemEvents {
        
        group ssemCommonParams {
            
            modulepar BtpPortId PICS_SSEM_BTP_DESTINATION_PORT := 2008;
            
            modulepar BtpPortId PICS_SSEM_BTP_SOURCE_PORT      := 0;
            
        } // End of group ssemCommonParams
        
    } // End of group ssemEvents
    
    group sremEvents {
        
        group sremCommonParams {
            
            modulepar BtpPortId PICS_SREM_BTP_DESTINATION_PORT := 2007;
            
            modulepar BtpPortId PICS_SREM_BTP_SOURCE_PORT      := 0;
            
        } // End of group sremCommonParams
        
    } // End of group sremEvents
    
garciay's avatar
garciay committed
    group generationFrequencies {
        
        modulepar boolean PICS_GENERATE_CAM := true;
        
        modulepar boolean PICS_GENERATE_DENM := true;
        
        modulepar boolean PICS_GENERATE_IVIM := true;
        
garciay's avatar
garciay committed
        modulepar boolean PICS_GENERATE_MAPEM := true;
        
        modulepar boolean PICS_GENERATE_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      := int2float(PICS_DENM_REPETITION_INTERVAL) / 1000.0;
garciay's avatar
garciay committed
        
        /**
         * @desc MAPEM frequency timer
         */
        modulepar float PICS_MAPEM_FREQUENY     := 5.0;
garciay's avatar
garciay committed
        
        /**
         * @desc SPATEMM frequency timer
         */
        modulepar float PICS_SPATEM_FREQUENY    := 5.0;
garciay's avatar
garciay committed
        
        /**
         * @desc IVIM frequency timer
         */
        modulepar float PICS_IVIM_FREQUENY      := 5.0;
garciay's avatar
garciay committed
        
    } // End of group generationFrequencies 
    
} // End of module ItsRSUsSimulator_Pics