Про 860 регистров - это все же не верная информация, я в своих проектах передаю на верх по 5 Кб (т.е. если в регистрах, то 2,5 тыс., но у меня все же это Кб, так как все по dword) и все работает.
Но, если Вы передаете 1 бит с помощью регистра, то оптимизировать проект разумеется надо.
Привожу пример такой конфигурации в картинках.
На картинка видно, что проект содержит 2 Modbus Slave.
В первом слейве 981 dword (т.е. в регистрах 1962).
Во втором слейве 303 dword (т.е. 606 регистров).
Конфигурация при этом 146 Кб, если ее вычислять по указанному выше способу.
И все работает и грузится.
Читайте тему на форуме о размере конфигурации (то что выше). Там Филоненко говорит о каких-то блоках по 100 Кб.
В общем тут нужно методом проб, но как факт конфигурация может быть большой!
Замечу также, что я разумеется не указываю имена переменным в конфигурации, а навожу на конфигурацию структуру данных, поэтому в конфигурации ничего, кроме "голых" элементов.
Где-то на форуме я это описывал, но уже сам не смог найти где, поэтому коротко повторю.
Я создаю структуры для нужных мне элементов.
Например.
Struct Valve
Command : word;
State : word;
Mode : word;
Alarm : word;
end_struct
И общую структуру, которая включает в себя эти структуры.
Struct PanelData
Valve1 : Valve;
Valve2 : Valve;
Valve3 : Valve;
и т.д.
end_struct
Затем объявляю (обычно в глобальных данных) данную структуру следующим образом:
PanelData AT %QD7.1.0 : PanelData;
где %QD7.1.0 - адрес первого 4х байтового элемента в нужном мне Модбас слейве.
ВСЕ!
Далее, если в Valve1.Alarm := 1, она появляется в нужном месте в области передачи в слейв.
Желательно в панели тоже использовать средства "наведения", чтобы в панели самому не считать номер получившегося регистра.
Но не на всех панелях это работает, поэтому этот метод не всегда хорош.
Но в любом случае, можно структуры внутренние (в моем примере Valve) огранизовать так, чтобы они были кратны чему-то, тогда можно их элементы легко рассчитывать по номеру "клапана" и элемента в нем. Ну, и тогда даже если в панели нет средств "наведения", то рассчитать номер регистра можно, без особых сложностей.