|
|
Paper: |
A Turing-Influenced Sub-System for Instrument Control |
Volume: |
351, Astronomical Data Analysis Software and Systems XV |
Page: |
149 |
Authors: |
Shortridge, K. |
Abstract: |
It is often natural to think of instrument control systems as ‘state machines’ that respond to external events by moving between a set of well-defined states. This paper describes a general-purpose subsystem driven by state table definitions read from text files. Because the overall logic of the program is embodied in a text table, rather than in procedural code, it is easy to see exactly how the program will respond, and — importantly — it is possible to verify that the response of the program to a given event has been considered for all the possible states of the program. By adding arithmetic expressions and conditional tests to the ‘language’ used to define the state table, something with a passing resemblance to a Turing machine is created. The flexibility of the system is illustrated here by an example state table that implements a prime number generator. The object-oriented design of the basic state table code makes it easy to define new operations that can appear in the state table ‘language’, and so meet the needs of different instruments. |
|
|
|
|