A PolySync runtime consists of one or more hosts, with at least one PolySync node. Nodes can be defined within the SDF Configurator, which creates a configuration for each runtime node and saves it to the PolySync System Design File (SDF).
Once defined, nodes are spawned using the PolySync Manager, or by referencing the node ID.
Adding a node using the PolySync SDF Configurator is a simple operation. First we need to start the SDF Configurator.
While adding a node to the SDF you need to select the host tab that the new hardware device or sensor is connected to. In this example there is only one host defined in the SDF, Replay Host, with the interface address set to AUTO.
In the bottom left corner of the screen you will find "Add Binary Node" and "Add Sensor Node" buttons. Click on the desired node type. All changes made in the SDF Configurator are saved automatically.
- Binary Node: pure software application
- Sensor Node: software application that connects to a sensor or other hardware device
Starting PolySync Nodes
Nodes defined in the SDF are typically spawned by the PolySync Manager.
The PolySync Manager is bound to the local host, and each PolySync ECU uses The Manager to spawn nodes and manage the wall clock. The PolySync Manager can only spawn nodes that are defined on the local host (designated by the PolySync IP address).
Once a node is defined it can be run by itself or along with any subset of nodes defined in the SDF.
To spawn a single node we must first know the node ID located in the upper-right corner of the SDF Configurator. We will use the node ID as an argument to the PolySync Dynamic Driver node.
$ polysync-dynamic-driver -n 11 -o
If you want to start all enabled nodes defined in the SDF use the PolySync Manager.
$ polysync-manager -n
Output data from all nodes is published to the PolySync Bus for all applications to access. All PolySync logs are printed to the file /var/log/syslog on Ubuntu and most Linux systems.
Printing help message from the polysync-dynamic-driver
Each PolySync supported sensor interface has a '-h' help flag which will print all known information and indicate which parameter fields are required before starting the node.
Running the command below will print all parameters supported by this dynamic driver interface. This includes the parameter table, command line argument flags and output message types produced.
$ polysync-dynamic-driver -n 11 -h