Итак, потихоньку стала вырисовываться концепция того, что хочется получить в результате.
Так как потребности аквариумистов сильно различаются, логично делать аквариумный компьютер в виде контроллера.
Для примера, тем кто не знаком с контроллерами приведу картинки.
Контроллер состоит из основного модуля, например такого
3ccd780cb1155f0260daea75641c219f.jpg
и дополнительных модулей
86971cbd4a923577f3242ae2a5d5b6f0.jpg
5849bafc3f405.jpg
Смысл в том, что сам контроллер содержит только мозг, выполняющий программу (дополнительно к мозгам может содержать небольшое количество входо-выходов). А каждый дополнительный модуль может содержать уже что угодно - любые интерфейсы. Пользователь самы выбирает какие дополнительные модули ему нужны и покупает только нужное, таким образом не переплачиваю за ненужный ему функционал.
Дополнительные модули пристыковываются справа и слева от основного блока и их может быть по сути любое количество, если оно не ограниченно из маркетинговых соображений.
Соответственно я буду делать точно также - основной контроллер - только мозг - без каких-либо интерфейсов кроме CAN связывающего его с остальными модулями. Это будет по сути просто компактная плата с x86 процессором в корпусе. Справа и слева к нему будут цепляться произвольное количество дополнительных модулей, каждый из которых будет нести различное количество интерфейсов.
В следующих постах я буду описывать модули интерфейсов, так как основное проектирование ложится на них.
Первым будет разработан модуль на 16 входов.