Using the Canary Simulator
How does it Work
The user creates Witness reports using the supplied forms within the simulator. When the user sends the message it is processed by the selected plugin and is converted into the appropriate protocol. This converted report is then sent to the third party system over the specified communication link (typically Ethernet).
Be aware that the message forms may not directly represent the data which you expect via the selected protocol. This is because the forms represent the Witness report fields and properties however the agreed format and terminology for each protocol may differ.
Introduction to the Application
When opened, you will be presented with the simulator's main window.
Main Window
- Main Toolbar
- ICD Plugins - List of available plugins that can be selected and used by the simulator. A plugin must be selected before the simulator can be used.
- Start - Starts the simulator and initialises the network logic.
- Stop - Stops the simulator and disconnects any active clients.
- Messages - This menu provides a link to all the system messages that can be sent from the simulator.
- Clear Alarm - Clears the selected alarm from the Active Alarms list and sends the appropriate clear alarm message.
- Dismiss Alarm - Dismisses the selected alarm in the Active Alarms list. Dismissing an alarm should not be confused with acknowledging an alarm. This option simulates the dismiss function available to operators in the Witness software. This is a temporary state where both audio and visual alerts are suspended for a fixed period of time. Assuming the alarm is still active, these alerts are re-initialised after the timeout period has expired.
- Log Messages - This saves the current log to a text file. By default the log file is saved in the same folder as the simulator application file.
- Active Alarm List - this displays any alarms that have been created in the simulator using the Alarm Report message. Alarm entries are automatically created when an alarm report is sent. They are removed using the Clear Alarm button, which also sends out a Clear Alarm Report.
- Sensor List - this displays 5 example sensors / radars. These are created by default when the simulator is first used. They can be changed by directly editing the simulator configuration file but this is not recommend. You can edit the sensor properties by double clicking on an entry in the list.
- Activity Log - this displays a log of all activity and events. If you are unsure on what the application is doing or what has recently happened then you should refer to this log.
- Main Status Bar.
- Version - displays the current version of the software.
- Selected Plugin - displays the selected plugin that the simulator is using.
Selecting a Plugin
Before you start using the simulator you must select the plugin you wish to use. The application ships with three plugins:
- ICD-001 - Navtech's own communication protocol.
- ICD-002 - Navtech / Nicander communication protocol.
- ICD-100 - US Military communication protocol.
Once you select the required plugin the status bar and the activity log will reflect your selection.
Using the Simulator
Once you have selected a plugin, select Start to initialise the simulator.
You are now ready to start sending messages.
Sending a Highways Alarm Report
To send an alarm report:
- Ensure the configuration for your selected plugin supports the sending of alarms. For example, ICD-001 does not permit the sending of alarms until the option is switched on.
- Select the highways alarm report.
- Complete the alarm details, including a suitable description.
- When complete, select the Send button. The message will be sent but the alarm report form will remain open, so you can easily repeat the message if required.
- Either adjust the details and send another message or select Cancel to close the dialog.
Sending a Health Alarm Report
To send a health alarm report:
- Select the Health Alarm Report from the Messages menu.
- Enter a suitable description.
- Select the health alarm source. For sensor related health alerts, ensure you select Radar.
- Select the sensor, if applicable, which is the source of the health alarm. You can select from the pre-configured radar.
- Select the alarm type.
- Select Send to transmit the health alarm.
- Either adjust the setting and send another alarm or select Cancel to close the dialog.
Sending a Track Report
- Ensure the configuration for the selected plugin is setup correctly to send tracks.
- Select the Track Report from the Message menu.
Complete the track details, including position, speed and direction.
For the geo-coordinates, you can enter which every format of latitude, longitude or x, y and you like. The simulator will not perform any translation on these values, it will simply transfer the entered values directly through to the output protocol.
- Select one or more active alarms. If you have created any alarms that are still active then you can "attach" them to the track. This simulates a track which is responsible for creating or contributing to one or more alarms.
- Select Send to transmit the report.
Either adjust the report criteria and send again or select Cancel to close the dialog.
When sending tracks using the buffered mode, the tracks will continue to be sent for as long as the track is in the buffer. You can clear the buffer to prevent the buffered tracks being sent by selecting Clear Track Buffer.
Sending a Camera Report
- Select the Camera Report from the Messages menu.
Select the appropriate Move Source.
Note that you can only set the track Id and unique Id if you select Track as your Move Source. A default GUID will be generated for the unique Id when you select Track but you can overwrite this with a pre-defined GUID if required.
- Enter the report details as required.
- Select Send to transmit the message.
- Either adjust the details and send another message or select Cancel to close the dialog.
Managing Alarms
When an alarm report is sent, it will appear in the alarm list. If you send multiple alarms then you will see an entry for each one transmitted. The alarm list includes some basic information about the alarm, including the date and time it was created and the alarm description. Typically an alarm will remain in the list until you manually clear it.
Acknowledging Alarms
This is done by the external system. Although alarms can be acknowledged in Witness, the simulator does not support this. It assume the acknowledgement message will come in from the external 3rd party system. When an alarm is acknowledged you will see the Acknowledge status change from False to True.
Dismissing Alarms
Alarm dismissal is not supported in all the protocols. To dismiss an alarm:
- Select the required alarm from the alarm list.
- Select the Dismiss Alarm button. You will be prompted whether you want to dismiss the alarm for 1 minute.
- Select OK to continue.
- A new alarm report will be transmitted with the new dismissed state.
- The alarm will remain in the list however the text will turn red to indicate it is in a dismissed state.
- After a minute the simulator will automatically send a re-activating alarm message and clear the dismiss state.
- Once the dismiss state has been cleared the text in the alarm list will return to black.
Clearing Alarms
To simulate an alarm being cleared:
- Select the required alarm from the alarm list.
Select the Clear Alarm button.
A Clear Alarm Report will be sent to the 3rd party system and the alarm will be cleared from the alarm list.
Be aware that certain protocols, i.e. ICD-002, support a send-response pattern for alarms, which means that the 3rd party must reply with an alarm accept message after receiving the alarm from the simulator. If this accept message is never received then a clear message will not be sent because it was never considered to have been activated correctly. However the clear action will still remove the alarm from the list.
Updating Radar Status
To send radar status updates you need to adjust the sensor properties on the sensors list.
To edit a sensors properties:
- Ensure the configuration for the selected plugin is setup correctly to send status reports.
- Select the sensor to change.
- Double click on the selected sensor line in the list. This will open a properties dialog.
- Change the settings as required.
- Select Update when complete.
- Depending on the design of the protocol, the system will either send an immediate status update or will send a report on the next scheduled report.
- Select Cancel when finished.
Protocol Specific Notes
Configuring the ICD-001 Plugin
To change the settings for the ICD-001:
- Close the Simulator.
- Find the file ICD001Interface.xml file. This can be found in the same folder as the Simulator.
- Open the file in a suitable text editor (we recommend Notepad++).
- Adjust the settings as required. See the documentation for details on the ICD-001 configuration options.
- Save the file and restart the Simulator.
Sending ICD-002 Alarm Reports
Because the alarm report message form is based on the standard Witness settings, it may not be immediately obvious what settings to use to send ICD-002 alarms.
In ICD-002, only the following priorities are recongnised:
- Low
- Medium
- High
The only alarm type supported is:
- Alarm
The following table provides the equivalent settings for each ICD-002 alarm type:
ICD-002 Alarm | Simulator Settings | Notes |
---|---|---|
1. Slow Vehicle | Sub Type: Slow Classification: N/A | Highways Alarm |
2. Stopped Vehicle | Sub Type: Stopped Classification: N/A | Highways Alarm |
3. Reversing Vehicle | Sub Type: Reversing Classification: N/A | Highways Alarm |
4. Person in the Road | Sub Type: Default Classification: Person | Highways Alarm |
5. Debris in the Road | Sub Type: Debris Classification: Debris | Highways Alarm |
6. Queue End | Sub Type: Queue Classification: N/A | Highways Alarm |
7. Not connected | Health Type: PingTime Health Source: Radar | Health Alarm |
8. Low Packet Rate | Health Type: PacketRate Health Source: Radar | Health Alarm |
9. Low / High Temperature | Health Type: Temperature Health Source: Radar | Health Alarm |
10. Low / High Rotation Speed | Health Type: Rotation Health Source: Radar | Health Alarm |
Related information
-
ICD-001 Track Filter Command (Witness 4.0)
-
ICD-001 Acknowledge Alarm Command (Witness 4.0)
-
ICD-001 Request Status Command (Witness 4.0)
-
ICD-001 Detection Command (Witness 4.0)
-
ICD-001 Update Entity Command (Witness 4.0)
-
ICD-001 System Profile Command (Witness 4.0)
-
Navtech ICD-001 Protocol (Witness 3.0)
-
ICD-001 External Trigger Command (Witness 4.0)
-
ICD-001 Plugin (Witness 4.0)
-
ICD-001 Command Reply (Witness 4.0)
-
ICD-001 Camera Command (Witness 4.0)
-
ICD-001 Track Command (Witness 4.0)
-
ICD-001 Tracker Command (Witness 4.0)
-
ICD-001 Commands (Witness 4.0)
-
ICD-001 Change Log (Witness 4.0)