xmlautomationconfigurationsequenceg-code

Is there a human readable machine control file format


I am looking for a generic machine control file format to interface with a device. The device consists of various valves, pump, and heaters, and is running embedded C. I would like to be able to control the sequence these devices activate in a 'script' that is defined by a file. It would be nice if the format also supported loops or conditional statements, and it would be advantageous if a non-technical user could understand and write the script file. The file will be parsed by the machine's firmware.

Something like the below to repeat the instructions 5 times:

LOOP, 5
    VALVE, ON, 100ms
    HEATER, ON, 200degrees
    PAUSE, 60s
    VALVE, OFF
END

Is there such a format? Or would I be better off implementing my own? A quick look has shown that GCode can support looping in more recent versions, but it is not very human readable.


Solution

  • Before inventing your own solution, you might want to consider using a scripting language, such as Lua or Tcl. These are implemented in C, the core library of the language is (from memory) quite compact, and they provide a C API for extending the language with new functionality.