Спасибо ASDFS за краткую подводку. С моей точки зрения, с первой Пирамидой ничего делать не надо- какая есть, такая и есть. С другой стороны, у меня сейчас есть желание создать несовместимую версию, зато абсолютно ложащуюся под готовые драйверы MODBUS в SCAD'e.
А раз она несовместимая, слегка изменить идеологию, а именно ориентировать программу-оболочку (клиента) на XML-интерфейс. Это позволит этим же софтом потом брать что угодно, хоть ту же старую пирамиду и легко описывается ТЗ для программиста (клиента). А это значит, спецификация должна писаться, исходя из структуры этого XML-файла.
Итак: во главу угла ставится структура данных, которая соответствует XML -файлу описателя. Его потом можно будет скомпилировать в C-код программы или в двоичный вид для сжатого хранения в памяти контроллера.
Может быть, стоит двигаться постепенно.
- Вначале утвердить структуру данных XML.
- На ее основе нетрудно создать онлайн-компилятор с открытым кодом
и возможностью генерирования С-кода и "двоичного XML" .
- Параллельно создать оболочку. Я лично готов потратиться на это.
Главное - структурировать задачу.
- Есть клиент, работающий с XML
- Есть драйверы "MODBUS- Пирамида"
- Есть dll-ка c интерфейсом "Пирамида-XML и наоборот"
... медленно спуститься с горы и покрыть все стадо.