"description":"A human-readable name or label for this machine configuration."
}
},
"id":{
"default":null,
"rules":{
"type":"string",
"nullable":true,
"description":"A unique identifier for this configuration. If not provided, defaults to null."
}
},
"unit":{
"default":"m3/h",
"rules":{
"type":"string",
"description":"The default measurement unit for this configuration (e.g., 'meters', 'seconds', 'unitless')."
}
},
"logging":{
"logLevel":{
"default":"info",
"rules":{
"type":"enum",
"values":[
{
"value":"debug",
"description":"Log messages are printed for debugging purposes."
},
{
"value":"info",
"description":"Informational messages are printed."
},
{
"value":"warn",
"description":"Warning messages are printed."
},
{
"value":"error",
"description":"Error messages are printed."
}
]
}
},
"enabled":{
"default":true,
"rules":{
"type":"boolean",
"description":"Indicates whether logging is active. If true, log messages will be generated."
}
}
}
},
"functionality":{
"softwareType":{
"default":"machine",
"rules":{
"type":"string",
"description":"Specified software type for this configuration."
}
},
"role":{
"default":"RotationalDeviceController",
"rules":{
"type":"string",
"description":"Indicates the role this configuration plays within the system."
}
},
"positionVsParent":{
"default":"atEquipment",
"rules":{
"type":"enum",
"values":[
{
"value":"atEquipment",
"description":"The node is connected at the equipment level and is responsible for controlling or monitoring the equipment as a whole."
},
{
"value":"upstream",
"description":"The node is connected in a downstream position, indicating it is responsible for monitoring or controlling processes that occur after the equipment's operation, such as product flow or output."
},
{
"value":"downstream",
"description":"The node is connected in an upstream position, indicating it is responsible for monitoring or controlling processes that occur before the equipment's operation, such as input flow or supply."
}
],
"description":"Defines the position of the measurement relative to its parent equipment or system."
}
}
},
"asset":{
"uuid":{
"default":null,
"rules":{
"type":"string",
"nullable":true,
"description":"A universally unique identifier for this asset. May be null if not assigned."
"description":"The accuracy of the machine or sensor, typically as a percentage or absolute value."
}
},
"machineCurve":{
"default":{
"nq":{
"1":{
"x":[
1,
2,
3,
4,
5
],
"y":[
10,
20,
30,
40,
50
]
}
},
"np":{
"1":{
"x":[
1,
2,
3,
4,
5
],
"y":[
10,
20,
30,
40,
50
]
}
}
},
"rules":{
"type":"machineCurve",
"description":"All machine curves must have a 'nq' and 'np' curve. nq stands for the flow curve, np stands for the power curve. Together they form the efficiency curve."
}
}
},
"mode":{
"current":{
"default":"auto",
"rules":{
"type":"enum",
"values":[
{
"value":"auto",
"description":"Machine accepts setpoints from a parent controller and runs autonomously."
},
{
"value":"virtualControl",
"description":"Controlled via GUI setpoints; ignores parent commands."
},
{
"value":"fysicalControl",
"description":"Controlled via physical buttons or switches; ignores external automated commands."
}
],
"description":"The operational mode of the machine."