todatul, спасибо за верное направление!!!
вообщем с экранами моя проблема решается так:

т.е. на поле проекта вытаскивается один Modbus Slave RTU, а номер станции (контроллера) прописан в регистре, который соответственно можно менять... по событию макросом подставляю нужный адрес - все ок
однако это еще не все мои проблемы: мне бы разобраться как с помощью макросов считывать значение Modbus переменной... не могу дать ладу как корректно прописать ее адрес.. в мануале такая схемка:

а сама стандартная функция чтения записи идет вот так:
Read,Write Local address function:
int ReadLocal( const char *type, int addr, int nRegs, void *buf, int flag );
int WriteLocal( const char *type, int addr, int nRegs, void *buf , int flag );
Parameter: type is the string of "LW","LB" etc;
address is the Operation address ;
nRegs is the length of read or write ;
buf is the buffer which store the reading or writing data;
flag is 0,then codetype is BIN,is 1 then codetype is BCD;
return value : 1 ,Operation success
0, Operation fail.
как мне считать переменную, например из контроллера с адресом 10, адрес переменной 10h? подскажите пожалуйста