Есть стенд. На стенде проводятся испытания неких деталей. Суть испытания в том, что большой и сильный гидравлический поршень тягает туда-сюда испытуемую деталь. Попутно с тензодатчика снимается сила растяжения/сжатия и записывется положение поршня. Потом из этих данных строятся красивые графики.
Движением поршня управляет хардварный модуль, висящий на одном из COM портов ПК. С ПК мы говорим модулю с какой силой/амплитудой/скоростью тягать деталь. Этот же модуль пишет данные о силе/положении поршня.
К другому COM порту по RS485 подключены несколько контроллеров ввода-вывода (Тупейшие железяки с кучей реле и дискретных входов), датчики температуры и т.д.
К контроллерам ввода-вывода подключена куча всяких датчиков, клапанов, кнопок, педалей и сигнальных ламп.
Вся логика работы стенда реализована (должна быть реализована) в программе на ПК. Т. е. вплоть до: “Включить насос, подождать пока появиться давление, открыит клапан... сработал такой-то датчик - включить такой-то клапан... юзер нажал педаль - сделать чего-то еще ... и т.д.”
Внимание, вопрос: Где почитаь / подглядеть / у кого спросить как (с точки зрения архитектуры) пишутся такие программы? Как это все граматно спроэктировать? Где можно посмотреть на реализацию подобных систем?
Я четко себе представляю как опросить датчик, открыть клапан или получить и обработать данн.ые. Но я не могу понять как это все увязать в единое целое.