Skip to main content
Version: 2.6

General Driver Diagnostics

Task Processor Cycle Time Monitoring

Each driver which has one or more Taskprocessor configured, supports the option to monitor its queue cycle times. To enable the monitoring, define a group with the name "Diagnostics" right below the driver node.

Example of a device configuration with enabled diagnostics (see UHAL Plugins for the rest of your device implementation):

{
"Id": "9c16f2bd-f454-4d4e-b1c3-9664377771a9",
"Name": "MyDevice",
"DriverId": "f25f68f9-c720-4dd9-8a28-957c84aaa98c",
"Address": "",
"Groups": [
{
"Id": "0e120cac-25e1-48ca-a91a-2487549d9064",
"Name": "Diagnostics",
"Properties": [],
"DataNodes": [],
"ConstantNodes": [],
"Commands": [],
"Groups": []
}
],
...
}

Below the diagnostic group following structure is provided:

NOTE

The diagnostic structure can be accessed by different PeSeL plugins, such as OPC-UA Server.

INFORMATION

Some queues are system usable only. Others depend on the used plugin. In common the Low, Medium and High Priority Processing Queue can be used by every driver.

The queue names refer to following operations:

QueueDescriptionSystem onlyQueue TypeMulticycleUseExecutionCircular execution support
Realtime"Realtime" operationNoNoneNoDriver specificEvery cycleNo
SynchronSynchron operationsNoFIFOYesDriver specificEvery cycleNo
TransferSynchron operationsYesFIFOYesDriver specificEvery cycleNo
HighHigh priority synchron operationsNoFIFOYesConfiguration specificEvery cycleYes
MediumMedium priority synchron operationsNoFIFOYesConfiguration specificEvery 2nd cycleYes
LowLow priority synchron operationsNoFIFOYesConfiguration specificEvery 4th cycleYes
CleanupCleanup operationsYesNoneNoDriver specificEvery cycleNo
CustomCustom operationsNoNoneNoDriver specificEvery cycleNo
MonitoringMonitoring operationsYesNoneNoDriver specificEvery cycleNo
ReportingReporting operationsYesNoneNoDriver specificEvery cycleNo
CompleteComplete time for all operationsYesNoneNoNot configurableNoneNo

Every Queue has an item 'CycleTime' as a diagnostics value. Its Unit is Milliseconds (ms). For Queues which are not configuration specific, no interactions can be made from outside. It is either non configurable or depends on the driver implementation. Configuration specific means, the execution times (CycleTime) depends on the configured workload and the scheduling properties.