Skip to content
Snippets Groups Projects
Commit 976df6ca authored by FrankR's avatar FrankR
Browse files

many additions, some adjustments to SimpleScene.proto

parent f5fc4fb6
No related branches found
No related tags found
No related merge requests found
...@@ -9,41 +9,78 @@ message IposConfig { ...@@ -9,41 +9,78 @@ message IposConfig {
message IposObjectConfig { message IposObjectConfig {
string id = 1; // unique for each object, but there may be multiple positioning sensors for that object string id = 1; // unique for each object, but there may be multiple positioning sensors for that object
string sensorId = 2; // unique (each sensor localizes a single object) string sensorId = 2; // unique (each sensor localizes a single object)
string type = 3; // CeTI will send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER string agentType = 3; // CeTI will send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER
string sensorType = 4; // BLUETOOTH, UWB, NFC, RFID, IMU...
} }
message IposPositionUpdate { message IposPositionUpdate {
repeated IposObject object = 1; repeated IposObject object = 1;
} }
message IposExitNotification {
repeated IposObject object = 1;
}
message IposObject { message IposObject {
string id = 1; // unique for each object, but there may be multiple sensors string id = 1; // unique for each object, but there may be multiple sensors
string sensorId = 2; //unique string sensorId = 2; //unique
string type = 3; // Applications may send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER string type = 3; // Applications may send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER
IposRelativePosition position = 4; IposPosition position = 4;
IposSimpleOrientation orientation = 5; IposSimpleOrientation orientation = 5;
string lastPosUpdate = 6; // https://en.wikipedia.org/wiki/ISO_8601 string lastPosUpdate = 6; // https://en.wikipedia.org/wiki/ISO_8601
} }
message IposFrame { message IposFrameConfig {
string id = 1; // unique for every frame, used for relative coordinates string id = 1; // unique for every frame, used for relative coordinates
IposSpace space = 2; // cube defining the extension, might be (0,0,0) IposSpace space = 2; // cube defining the extension, might be (0,0,0)
IposPosition position = 3; // centre of the "frame" cube, absolute IposPosition position = 3; // centre of the "frame" cube
float delta = 4; // min. Position to trigger a position update }
message RefSystem {
string id = 1;
IposPosition position = 2; // position of origin of RefSystem. May be relative or absolute
}
message IposMonitoringRequest {
string frameId = 1;
float delta = 2; // min. change in position to trigger a position update
float updateFrequency = 3; // defines how many times per second a PositionUpdateEvent is sent
repeated string type = 4; // object-types to be observed; CeTI will send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER
repeated string id = 5; // object-ids to be observed
string fusionStrategy = 6; // e.g., "accuracy" for accuracy-optimized monitoring if multiple positions sensors per agent
bool exit_notification = 7; // IPos will notify receiver when object has left the frame
repeated string properties = 8; // properties that shall be monitored: position or id or type
string requestorId = 9; // a requestor is, e.g., the OSM-App; FW requires this info to contact the requestor using a certain communication protocol.
string requestorProtocol = 10; // communication protocol, e.g., "mqtt"; Assumption: requestor = receiver
} }
// relative coordinates message IposMonitoringResponse {
message IposRelativePosition { string frameId = 1;
string IposFrame_id = 1; string monitoringTaskId = 2;
IposPosition pos = 2; string error = 3;
}
message IposMonitoringUpdateRequest {
string monitoringTaskId = 1;
IposMonitoringRequest monitoringRequest = 2; // setting delta and updateFrequency to -1 cancels the monitoring task
} }
// relative coordinates
message IposPosition { message IposPosition {
string refSystemId = 1; // e.g., "WGS84" if absolute position, "ROOT" for testcases or if specific absolute position is actually irrelevant
IposPoint3D point = 2;
float accuracy = 3; // object is with 95% probability within x metres of this point (gaussian distribution)
}
message IposPoint3D {
float x = 1; // pos in x direction in m float x = 1; // pos in x direction in m
float y = 2; // pos in y direction in m float y = 2; // pos in y direction in m
float z = 3; // pos in z direction in m (up) float z = 3; // pos in z direction in m (up)
float accuracy = 4; // object is with 95% probability within x metres of this point (gaussian distribution) }
message POI { // point-of-interest
string description = 1; // e.g., "tag"
map<string, string> data = 2; // e.g., "id" -> tag-id; "type" -> "nfc"
IposPosition position = 3;
} }
message IposSpace { message IposSpace {
...@@ -58,3 +95,8 @@ message IposSimpleOrientation { ...@@ -58,3 +95,8 @@ message IposSimpleOrientation {
float z = 3; // there is no orientation float z = 3; // there is no orientation
float w = 4; // available float w = 4; // available
} }
message SensorRegistrationRequest {
IposObjectConfig objectConfig = 1; // depending on sensorTyp a type-specific information will be sent
}
// note: Beacon-positions are POIs and should be sent to sensor after registration. Bluetooth/UWB sensor need to know a reference system id. All Beacon-position sent to the Bluetooth/UWB sensor should have the same reference system id
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment