Добрый день! Есть 12 весовых контроллеров. Опрос этих контроллеров идет по ModbusRTU, чтением входного регистра по адресу 0 функцией Rin_Float(4). К каждому контроллеру по отдельности все опрашивается отлично. Частота пересчета канала 1 цикл CALC. Время пересчета узла - 0,5сек. Если я создаю 12 каналов Rin_Float(4)в источниках/приемниках, которые отличаются только адресом(от 1 до 12), создаю по drag&drop-ом 12 каналов float, то при запуске профайлера я вижу данные только в нечетных каналах (1,3,5 и.т.д), в четных каналах одни нули, хотя данные там должны быть. Не подскажете куда смотреть? Com-порт, настройки TM6 или может преобразователь USb-Com? Такое ощущение, что проблема достаточно простая, но у меня, похоже не хватает опыта, для ее решения. Преобразователь ADAM-5461, скорость - 9600.
Posted by Nico (Участник № / Member № 5342) on :
debug=200 - отладка по COM порту и файл профайлера смотреть
Posted by ZemskovM (Участник № / Member № 5938) on :
т.е. на каждом четном запросе происходит таймаут. Задача была сделать задержку между опросами, поэтому полез в документацию смотреть настройки com-порта. И нашел там параметр rs-передача, который по умолчанию 0. Я поставил 10 (я так думаю, что это 10мс задержка между запросами) и все заработало! Наверное это какая то особенность этих весовых контроллеров или конкретного преобразователя Adam, теперь уже неважно. Хотя если кто знает в чем была причина, может поделится.
Posted by Nico (Участник № / Member № 5342) on :