******************
******************
Последний раз редактировалось LordN; 13.09.2012 в 12:17. Причина: дубль
Это стандарт ModBus.
Так 0 адрес устройствам не задают.
Команда с адресом 0 воспринимается ВСЕМИ устройствами.
А вот значение и адрес регистра совпадают только у одинаковых устройств.
BETEP где-то надыбал.Групповая передача ведомым устройствам с адресами
250 (FAh) от 01 до 09
251 (FBh) от 10 до 19
252 (FCh) от 20 до 29
253 (FDh) от 30 до 39
254 (FEh) от 40 до 247
естественно эти адреса и нулевой только для команд записи (05h, 06h, 0Fh, 10h).
Но вот поддерживают ли это индикаторы - вопрос.
В ModBus есть адрес устройства, адрес регистра, команда на запись. Данные, которые по этой команде записываются.
Команду с адресом 0 будут слушать все устройства.
Но потом каждое устройство разбирает посылку.
Попытаю источник.это спецификация модбаса?
Так если речь идет только о записи, всем индикаторам можно дать один ненулевой адрес. Пульнул. Залег. Переждал взрывную волну и дальшу пуляй.
в каждом индикаторе д.б. свое значение. один адрес не катит.
Произошел какой-то вынос мозга. Судя по РЭ - адрес можно менять. Какого ж тогда ?
А широкое вещание там есть, но с какой-то примочкой типа дополнительного кодирования пар {адрес,данные} в самих широковещательных данных.
В связи с этим вопрос (РЭ стр 26-28)
Почему 1000 - "по умолчанию" и где ее менять ? Имеет ли к этому отношение регистр №16 (модбас) ?
Почему 8 байт - "в данном случае" ? Чем 4 хуже, или 861 ? Ведь в примере нужно было всего 4 символа записать. Ведь даже выбран тип переменной - 3. Этож string[4]. Чего уж тут непонятного.
Автор, по-видимому, имел ясное понимание сути, но в момент изложения на бумаге его кто-то щекотал.
Добрый день.
Попытаюсь разъяснить.
to LordN
Ваша конкретная схема будет работать. Т.к. для модулей ввода/вывода МХ, адрес 0 - не широковещательный (255-широковещательный).
Что касается СМИ2 и РЭ.
Там действительно есть примочка. Примочка заключается в записи на несколько приборов разных значений, но в стандартной кодировке Modbus.
Т.е. При записи по широковещательному адресу в регистры, начиная с 1000 (адреса регистра) приборы начинают искать значения для себя. Все другие приборы, которые поддерживают широковещательеный адрес также пытаются прописать в себя эти значения. Но если у них регистров с таким адресом нет, то они игнорируют посылку. Собственно адрес регистра 1000 - можно изменять (Ad.dr (16)).
Дальше: "Почему 8 байт".
В приборе для каждого параметра предусмотрен свой регистр. Поэтому в процессе вычлинения из широковещательной посылки прибор укладывает, все что к нему относится в эти регистры, после чего отображает...
Не. Ну все-таки щекотали. И продолжают щекотать.
Видел Addr. Чуйствую - не то.Собственно адрес регистра 1000 - можно изменять (Ad.dr(16)).
Видел Ad.Ad (16). Теплее. Но ! Почему там по умолчанию - 65 (шестьдесят пять) в таблице ?
Это имеет какое-то отношение к "1000 по умолчанию" ? (см. стр 27, первый абзац)
Ну здесь вроде как начинает прояснятся.
Нет. Я спрашивал :Дальше: "Почему 8 байт".
Почему 8 байт - "в данном случае" (стр 27. 2й абзац)
Чем определяются другие случаи ? Когда будет 11 байт ?
PЭ прям с сайта.
PS
Для ОВЕН - да.Т.к. для модулей ввода/вывода МХ, адрес 0 - не широковещательный (255-широковещательный).
Но для Модбас широкий - 0. Посмотрел РЭ МУ110-8И, стр. 58. На железе - не пробывал.
Последний раз редактировалось Валенок; 14.09.2012 в 14:11.