Speaker
Description
“vd” (virtual device) is a software, written in Go, designed to accelerate the integration of devices into the EPICS (Experimental Physics and Industrial Control System). The “vd” helps when the real device is not available and one wants to start developing IOC following the delivered documentation.
The ”vd” tool can simulate devices that communicate using stream-based communication, i.e., those that can be integrated using StreamDevice. Creating a simulator doesn't require programming; communication is described in a configuration file. Compared with the existing solutions, it focuses on the communication layer rather than the device’s underlying physics. Currently, the tool supports only one type of communication (stream-based) but support for the next type of protocols (like Modbus or byte-oriented communication) is under development.
The vd's architecture allows it to function as a library for creating advanced simulations, making it a versatile tool for testing and validating device communication within EPICS. Additionally, it can be seamlessly integrated into CI (Continuous Integration) pipelines, facilitating automated testing and validation of device communication. This integration ultimately enhances the overall quality of the control system.