Показать сообщение отдельно
Старый 20.04.2009, 16:40   #13
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 159
Благодарил(а): 15 раз(а)
Поблагодарили: 665 раз(а) в 607 сообщениях
По умолчанию Ответ: Панель Magelis XBT GT 2110

Цитата:
Сообщение от vladun
По адресам: интересно каким образом введенные адреса (см картинку 2) переменных превратились в контроллере в указанные вами ?
Посмотрел глазами в логе.



Цитата:
Сообщение от vladun
Подчеркну, что отключая порт контроллера и подключая панель через 7561 к компьютеру с симулятором ModSim, я вижу чтение точно из тех адресов, которые указаны в таблице рис 2., а именно: Input Status = 14336, Holding Register = 41984, Input Register = 40960.
Карту памяти прикладываю.

Судя по всему, вам нужно указать адрес не 14336, а 114337.

Соответственно и другие: 40960 -> 440961, 41984 -> 341985.

Ну и молиться, чтобы драйвер панели скушал шестизначные логические адреса.

Второй вариант: убрать флажок "Старая карта" и поставить нулевые базовые смещения. Затем задать адреса в панели, помня, что 0хххх - это койлы, 1хххх - инпут статусы, 3ххх - холдинги и 4ххх - инпут регистры. Ко всем адресам нужно прибавлять единицу, т.е. холдинг с адресом 0000h это логический адрес 30001.


В эмуляторе у вас работает потому, что эмулятор и панель используют одинаковый тип адресации, имеющий мало общего с реальными адресами протокола. Правда это не проливает свет на ту левятину, которая у вас получилась в логе.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 20.04.2009 в 16:51
Arsie вне форума   Ответить с цитированием