Skip to content

Commit

Permalink
Merge pull request #136 from GAIA-X4PLC-AAD/automotive_simulator
Browse files Browse the repository at this point in the history
Automotive Simulator
  • Loading branch information
telina authored Feb 11, 2025
2 parents 57215c0 + 4478a4f commit ca486a2
Show file tree
Hide file tree
Showing 5 changed files with 219 additions and 0 deletions.
3 changes: 3 additions & 0 deletions CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@
# simulated-sensor directory (Rhea)
/simulated-sensor @telina

# automotive-simulator directory (Rhea)
/automotive-simulator @telina

# leakage-test directory (Selcan AND Robert Or Lena)
/leakage-test @selcan-k
/leakage-test @robertschubert @lenasauermann
Expand Down
19 changes: 19 additions & 0 deletions automotive-simulator/VARIABLES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Variables of SHACL Files in this folder

## Prefixes

- automotive-simulator: <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/automotive-simulator/>
- simulated-sensor: <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/simulated-sensor/>

## List of SHACL Properties

| Shape | Property prefix | Property | MinCount | MaxCount | Description | Datatype/NodeKind | Filename |
| --- | --- | --- | --- | --- | --- | --- | --- |
| AutomotiveSimulatorShape | automotive-simulator | general | 1 | 1 | general object with properties for description and data | | automotive-simulator_shacl.ttl |
| AutomotiveSimulatorShape | automotive-simulator | simulatorMake | 1 | 1 | Make/Type of automotive simulator | <http://www.w3.org/2001/XMLSchema#string> | automotive-simulator_shacl.ttl |
| AutomotiveSimulatorShape | automotive-simulator | softwareVersion | 1 | 1 | Sofware version of the simulator | <http://www.w3.org/2001/XMLSchema#string> | automotive-simulator_shacl.ttl |
| AutomotiveSimulatorShape | automotive-simulator | sensorFailureFlag | 1 | 1 | If true, the simulator supports the simulation of sensor failures | <http://www.w3.org/2001/XMLSchema#boolean> | automotive-simulator_shacl.ttl |
| AutomotiveSimulatorShape | automotive-simulator | sensorAttackFlag | 1 | 1 | If true, the simulator supports the simulation of sensor attacks | <http://www.w3.org/2001/XMLSchema#boolean> | automotive-simulator_shacl.ttl |
| AutomotiveSimulatorShape | automotive-simulator | scenarioDefinition | 0 | | Description language for defining driving scenarios supported by the simulator | <http://www.w3.org/2001/XMLSchema#string> | automotive-simulator_shacl.ttl |
| AutomotiveSimulatorShape | automotive-simulator | interface | 0 | | Communcation interface provided by the simulator to communicate with different assets (e.g. agents/vehicle implementations) | <http://www.w3.org/2001/XMLSchema#string> | automotive-simulator_shacl.ttl |
| AutomotiveSimulatorShape | simulated-sensor | simulatedSensor | 0 | | Type and kinds of sensors that are natively included in the simulator | | automotive-simulator_shacl.ttl |
81 changes: 81 additions & 0 deletions automotive-simulator/automotive-simulator_instance.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
"@context": {
"general": "https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/general/",
"simulated-sensor": "https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/simulated-sensor/",
"automotive-simulator": "https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/automotive-simulator/",
"sh": "http://www.w3.org/ns/shacl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"skos": "http://www.w3.org/2004/02/skos/core#"
},
"@id": "TBD",
"@type": "automotive-simulator:AutomotiveSimulator",
"automotive-simulator:general": {
"@type": "general:General",
"general:description": {
"@type": "general:Description",
"general:name": {
"@value": "Sensor failure and attack simulation with a modified CARLA simulator",
"@type": "xsd:string"
},
"general:description": {
"@value": "An extension of the CARLA simulator by various degradation models for perceptionsensors that cover effects of internal failures, external failures and security attacks. Delivered as two docker files (preqrequiste and carla.docker)",
"@type": "xsd:string"
}
},
"general:data": {
"@type": "general:Data",
"general:size": {
"@value": 0.0004845,
"@type": "xsd:float"
}
},
"general:data": {
"@type": "general:Data",
"general:size": {
"@value": 0.001348,
"@type": "xsd:float"
}
}
},
"automotive-simulator:simulatorMake": "CARLA",
"automotive-simulator:softwareVersion": "0.9.15",
"automotive-simulator:sensorFailureFlag": true,
"automotive-simulator:sensorAttackFlag": true,
"automotive-simulator:scenarioDefinition": "ASAM openSCENARIO 2.x",
"automotive-simulator:scenarioDefinition": "ASAM openSCENARIO 1.x",
"automotive-simulator:scenarioDefinition": "scenic",
"automotive-simulator:interface": "ROS1",
"automotive-simulator:interface": "ROS2",
"automotive-simulator:interface": "TCP",
"simulated-sensor:SimulatedSensor": {
"simulated-sensor:sensorIdentifier": "sensor.other.radar",
"simulated-sensor:sensorType": {
"@type": "simulated-sensor:Radar"
}
},
"simulated-sensor:SimulatedSensor": {
"simulated-sensor:sensorIdentifier": "sensor.other.lidar",
"simulated-sensor:sensorType": {
"@type": "simulated-sensor:Lidar"
}
},
"simulated-sensor:SimulatedSensor": {
"simulated-sensor:sensorIdentifier": "sensor.camera.rgb",
"simulated-sensor:sensorType": {
"@type": "simulated-sensor:Camera",
"simulated-sensor:rgbFlag": true,
"simulated-sensor:3dflag": false,
"simulated-sensor:depthFlag": false
}
},
"simulated-sensor:SimulatedSensor": {
"simulated-sensor:sensorIdentifier": "sensor.camera.depth",
"simulated-sensor:sensorType": {
"@type": "simulated-sensor:Camera",
"simulated-sensor:rgbFlag": false,
"simulated-sensor:3dflag": false,
"simulated-sensor:depthFlag": true
}
}
}
21 changes: 21 additions & 0 deletions automotive-simulator/automotive-simulator_ontology.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix gax-core: <https://w3id.org/gaia-x/core#> .
@prefix gx: <https://registry.lab.gaia-x.eu/development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix automotive-simulator: <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/automotive-simulator/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix openlabel: <https://openlabel.asam.net/V1-0-0/ontologies/> .

automotive-simulator: a owl:Ontology ;
rdfs:label "Ontology definition for automotive-simulator"@en ;
dcterms:contributor "Rhea C. Rinaldo (IQZ), Aaron Blickle (IQZ), Johannes Heinrich (IQZ), Elias Modrakowski (DLR)" ;
dcterms:creator "The GAIA-X 4 PLC AAD Project Team" ;
dcterms:identifier "https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/automotive-simulator/" ;
owl:versionIRI <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/blob/automotive_simulator/automotive-simulator/automotive_simulator_ontology.ttl> ;
owl:versionInfo "0.1" .

automotive-simulator:AutomotiveSimulator a owl:Class ;
rdfs:label "class definition for automotive simulators"@en ;
rdfs:comment "An implementation of an automotive simulator"@en ;
rdfs:subClassOf gx:DataResource .
95 changes: 95 additions & 0 deletions automotive-simulator/automotive-simulator_shacl.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
@prefix automotive-simulator: <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/automotive-simulator/> .
@prefix general: <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/general/> .
@prefix simulated-sensor: <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/tree/main/simulated-sensor/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

automotive-simulator:AutomotiveSimulatorShape a sh:NodeShape ;
sh:targetClass automotive-simulator:AutomotiveSimulator ;
# General shape (mandatory)
sh:property [
sh:node general:GeneralShape ;
sh:name "general object" ;
sh:path automotive-simulator:general ;
sh:maxCount 1 ;
sh:minCount 1 ;
sh:order 0 ;
sh:description "general object with properties for description and data" ;
] ;
# simulator type/make (String, mandatory)
sh:property [
skos:example "CARLA" ;
sh:path automotive-simulator:simulatorMake ;
sh:datatype xsd:string ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:name "simulator make"@en ;
sh:order 1 ;
sh:description "Make/Type of automotive simulator" ;
] ;
# software version (String, mandatory)
sh:property [
skos:example "0.9.15" ;
sh:path automotive-simulator:softwareVersion ;
sh:datatype xsd:string ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:name "software version"@en ;
sh:order 2 ;
sh:description "Sofware version of the simulator" ;
] ;
# Sensor Failure Flag (Boolean, mandatory)
sh:property [
skos:example "true" ;
sh:path automotive-simulator:sensorFailureFlag ;
sh:datatype xsd:boolean ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:name "sensor failure flag"@en ;
sh:order 3 ;
sh:description "If true, the simulator supports the simulation of sensor failures" ;
] ;
# Sensor Attack Flag (Boolean, mandatory)
sh:property [
skos:example "true" ;
sh:path automotive-simulator:sensorAttackFlag ;
sh:datatype xsd:boolean ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:name "sensor attack flag"@en ;
sh:order 5 ;
sh:description "If true, the simulator supports the simulation of sensor attacks" ;
] ;
# Open Scenario Version (List, optional)
sh:property [
skos:example "ASAM openSCENARIO 1.x" ;
sh:path automotive-simulator:scenarioDefinition ;
sh:datatype xsd:string ;
sh:in ("ASAM openSCENARIO 1.x" "ASAM openSCENARIO 2.x" "proprietary" "scenic") ;
sh:minCount 0 ;
sh:name "scenario definition"@en ;
sh:order 6 ;
sh:description "Description language for defining driving scenarios supported by the simulator" ;
] ;
# Open Scenario Version (List, optional)
sh:property [
skos:example "TCP" ;
sh:path automotive-simulator:interface ;
sh:datatype xsd:string ;
sh:in ("PythonAPI" "TCP" "UDP" "ROS1" "ROS2") ;
sh:minCount 0 ;
sh:name "interface"@en ;
sh:order 7 ;
sh:description "Communcation interface provided by the simulator to communicate with different assets (e.g. agents/vehicle implementations)" ;
] ;
# Sensor type(s) (optional, can be multiple)
sh:property [
sh:node simulated-sensor:SimulatedSensor ;
skos:example "Radar" ;
sh:path simulated-sensor:simulatedSensor ;
sh:minCount 0 ;
sh:name "simulated sensor"@en ;
sh:order 8 ;
sh:description "Type and kinds of sensors that are natively included in the simulator" ;
] .

0 comments on commit ca486a2

Please sign in to comment.