Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ Last updated: 2025-08-27

<!-- START BADGE -->
<div align="center">
<img src="https://img.shields.io/badge/Total%20views-1403-limegreen" alt="Total views">
<p>Refresh Date: 2025-09-05</p>
<img src="https://img.shields.io/badge/Total%20views-1566-limegreen" alt="Total views">
<p>Refresh Date: 2025-09-09</p>
</div>
<!-- END BADGE -->
168 changes: 168 additions & 0 deletions models/robot.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
{
"@id": "dtmi:com:example:Robot;1",
"@type": "Interface",
"@context": "dtmi:dtdl:context;2",
"displayName": "Robot",
"contents": [
{
"@type": "Property",
"name": "robotId",
"schema": "string",
"description": "The unique identifier for the robot"
},
{
"@type": "Property",
"name": "model",
"schema": "string",
"description": "The model of the robot"
},
{
"@type": "Property",
"name": "manufacturer",
"schema": "string",
"description": "The manufacturer of the robot"
},
{
"@type": "Property",
"name": "batteryLevel",
"schema": "double",
"description": "The current battery level of the robot as a percentage"
},
{
"@type": "Property",
"name": "status",
"schema": {
"@type": "Enum",
"valueSchema": "string",
"enumValues": [
{
"name": "idle",
"displayName": "Idle",
"enumValue": "idle"
},
{
"name": "moving",
"displayName": "Moving",
"enumValue": "moving"
},
{
"name": "picking",
"displayName": "Picking",
"enumValue": "picking"
},
{
"name": "charging",
"displayName": "Charging",
"enumValue": "charging"
},
{
"name": "maintenance",
"displayName": "Maintenance",
"enumValue": "maintenance"
}
]
},
"description": "The current status of the robot"
},
{
"@type": "Property",
"name": "currentZone",
"schema": "string",
"description": "The ID of the zone where the robot is currently located"
},
{
"@type": "Telemetry",
"name": "position",
"schema": {
"@type": "Object",
"fields": [
{
"name": "x",
"schema": "double"
},
{
"name": "y",
"schema": "double"
},
{
"name": "z",
"schema": "double"
}
]
},
"description": "The current position of the robot in 3D space"
},
{
"@type": "Telemetry",
"name": "speed",
"schema": "double",
"description": "The current speed of the robot in meters per second"
},
{
"@type": "Command",
"name": "move",
"request": {
"name": "destination",
"schema": {
"@type": "Object",
"fields": [
{
"name": "x",
"schema": "double"
},
{
"name": "y",
"schema": "double"
},
{
"name": "z",
"schema": "double"
}
]
}
},
"response": {
"name": "response",
"schema": {
"@type": "Object",
"fields": [
{
"name": "success",
"schema": "boolean"
},
{
"name": "message",
"schema": "string"
}
]
}
},
"description": "Command to move the robot to a specific position"
},
{
"@type": "Command",
"name": "pickItem",
"request": {
"name": "itemId",
"schema": "string"
},
"response": {
"name": "response",
"schema": {
"@type": "Object",
"fields": [
{
"name": "success",
"schema": "boolean"
},
{
"name": "message",
"schema": "string"
}
]
}
},
"description": "Command to pick an item"
}
]
}
101 changes: 101 additions & 0 deletions models/sensor.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
{
"@id": "dtmi:com:example:Sensor;1",
"@type": "Interface",
"@context": "dtmi:dtdl:context;2",
"displayName": "Sensor",
"contents": [
{
"@type": "Property",
"name": "sensorId",
"schema": "string",
"description": "The unique identifier for the sensor"
},
{
"@type": "Property",
"name": "manufacturer",
"schema": "string",
"description": "The manufacturer of the sensor"
},
{
"@type": "Property",
"name": "modelNumber",
"schema": "string",
"description": "The model number of the sensor"
},
{
"@type": "Property",
"name": "sensorType",
"schema": {
"@type": "Enum",
"valueSchema": "string",
"enumValues": [
{
"name": "temperature",
"displayName": "Temperature",
"enumValue": "temperature"
},
{
"name": "humidity",
"displayName": "Humidity",
"enumValue": "humidity"
},
{
"name": "motion",
"displayName": "Motion",
"enumValue": "motion"
},
{
"name": "weight",
"displayName": "Weight",
"enumValue": "weight"
}
]
},
"description": "The type of the sensor"
},
{
"@type": "Property",
"name": "batteryLevel",
"schema": "double",
"description": "The current battery level of the sensor as a percentage"
},
{
"@type": "Property",
"name": "status",
"schema": {
"@type": "Enum",
"valueSchema": "string",
"enumValues": [
{
"name": "online",
"displayName": "Online",
"enumValue": "online"
},
{
"name": "offline",
"displayName": "Offline",
"enumValue": "offline"
},
{
"name": "maintenance",
"displayName": "Maintenance",
"enumValue": "maintenance"
}
]
},
"description": "The current status of the sensor"
},
{
"@type": "Telemetry",
"name": "reading",
"schema": "double",
"description": "The current reading from the sensor"
},
{
"@type": "Telemetry",
"name": "lastCommunication",
"schema": "dateTime",
"description": "Timestamp of the last communication from the sensor"
}
]
}
71 changes: 71 additions & 0 deletions models/shelf.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
{
"@id": "dtmi:com:example:Shelf;1",
"@type": "Interface",
"@context": "dtmi:dtdl:context;2",
"displayName": "Shelf",
"contents": [
{
"@type": "Property",
"name": "shelfId",
"schema": "string",
"description": "The unique identifier for the shelf"
},
{
"@type": "Property",
"name": "capacity",
"schema": "integer",
"description": "The maximum capacity of the shelf in number of items"
},
{
"@type": "Property",
"name": "itemCount",
"schema": "integer",
"description": "The current number of items on the shelf"
},
{
"@type": "Property",
"name": "shelfType",
"schema": {
"@type": "Enum",
"valueSchema": "string",
"enumValues": [
{
"name": "standard",
"displayName": "Standard",
"enumValue": "standard"
},
{
"name": "heavyDuty",
"displayName": "Heavy Duty",
"enumValue": "heavyDuty"
},
{
"name": "refrigerated",
"displayName": "Refrigerated",
"enumValue": "refrigerated"
}
]
},
"description": "The type of the shelf"
},
{
"@type": "Relationship",
"name": "hasSensor",
"target": "dtmi:com:example:Sensor;1",
"properties": [
{
"@type": "Property",
"name": "sensorId",
"schema": "string"
}
],
"description": "Relationship to sensors monitoring the shelf"
},
{
"@type": "Telemetry",
"name": "loadPercentage",
"schema": "double",
"description": "The current load of the shelf as a percentage of its capacity"
}
]
}
Loading