This is an old revision of the document!
settings_template.xml shows an example for creating a system structure. The whole program will depends on this information to creat the bassis structure of the system and to tell the program in which mode it should operate and how the data should be sent.
at start, the first thing the program will do, is scanning the XML file to bring the informations needed for the system. in case of any error in the xml file, the program will stops and give at the Terminal or in the loggerFile an error message, which shows in which place the data has not been entered correctly. The program will continue to process the data, only if the xml file has been correctly created.
here is more informations about the xml file : the program will works in tow main threads (SamplingThread and ProcessingThread), the operation mode for these threads will be defined as follows
<SamplingThread-type> : here will be given in which mode the data Source will sample the Data. there is the following options : { ETHERCAT , MODBUS , CLIENT , DUMMY , ADAS } if the Client Mode has been entered, this thread will try to connect to a server to bring the data(as a Source) and send it to the ProcessingThread to be worked.
if the Dummy Mode has been entered, the program will generate dummy data for testing purpose.
<ProcessingThread-type> : here will be given in which mode the data will be processed. there is the following options : { SERVER , CSV , MQTT } if the server Mode has been entered: a new thread will be created to work as server and the ProcessingThread will use this server to send the data to a client.
if the CSV Mode has been entered: the processed data will be written in a CSV file.
if the MQTT Mode has been entered: the processed data will be sent in form of json structure to a mosquito server.
for MQTT Configurations, the user should configure the fields which start with MQTT.
you can add as many modules as you want to the system, and as many terminals as you want to the module. for adding a new I/O module to the system, make sure to a add it like in the template. each terminal in the modules can be described with different characters, which help to describe the hardware connected to it.