PDA

Просмотр полной версии : СП315-Р и МВ210-202 - проблема индикации



Anth
18.04.2019, 13:02
Панель используется в проекте для индикации состояния и положения автоматов в системе распределения. СП315-Р опрашивает 6 блоков МВ210-202 по сети ethernet. Блоки имеют адреса в сети: 11, 12, 21, 22, 31, 32, 41. Панелью опрашиваются 51-е адреса (состояния входов) приборов, далее в зависимости от полученных данных изменяется состояние интерактивной мнемосхемы на панели.

Проблемы в следующем:
1. На двух разных экранах панели одни и те же индикаторы не работают. Например, на "экран 2" (см. Screenshot_1) опрос модуля по адресу 11 работает, на "экран 3" в том же проекте (см. Screenshot_2) уже нет! Пробовал и по одному модулю в сети держать и по нескольку - результат тот же. Настройки сети прилагаю.

2. После прошивки через USB панелиСП315-Р второй раз прошить панель без предварительного кратковременного съема питания не получается - программа конфигуратор виснет.

Евгений Кислов
18.04.2019, 13:11
Добрый день.

1. Сложно что-то сказать, не видя проекта.

Но скорее всего дело в том, что на одном экране вы опрашиваете оба регистра битовой маски, на второй - только один.
Модуль не может отдать часть входов - он отдает их только все разом.
В настройках элементов, которые обращаются к 4x51 - поставьте тип DWORD.

2. Перед загрузкой проекта требуется переподключить USB кабель на стороне панели или ПК.

Anth
18.04.2019, 13:24
Добрый день! Спасибо за быстрый ответ.

Высылаю тестовые проект P1_t.txp (с которого сделаны скрины).

Евгений Кислов
18.04.2019, 13:40
Как уже написал выше - в настройках элементов, которые обращаются к 4x51 - поставьте тип DWORD.

42348

Anth
18.04.2019, 13:44
"Но скорее всего дело в том, что на одном экране вы опрашиваете оба регистра битовой маски, на второй - только один.
Модуль не может отдать часть входов - он отдает их только все разом.
В настройках элементов, которые обращаются к 4x51 - поставьте тип DWORD."

Т.е. битовые индикаторы по отдельности (без цифрового дисплея регистра) не работают?

Евгений Кислов
18.04.2019, 13:52
"Но скорее всего дело в том, что на одном экране вы опрашиваете оба регистра битовой маски, на второй - только один.
Модуль не может отдать часть входов - он отдает их только все разом.
В настройках элементов, которые обращаются к 4x51 - поставьте тип DWORD."

Т.е. битовые индикаторы по отдельности (без цифрового дисплея регистра) не работают?

Работают. Но и в них надо ставить тип DWORD.

Anth
18.04.2019, 13:55
Проверил следующие варианты:
1. Установил DWORD на "экране 3". При первом переходе - не заработал, заработал только после посещения "экрана 2" (где все работало).
2. Добавил создал "экран 4" с 16-ю индикаторами и цифровых дисплеем с переменной DWORD - индикаторы не работают, дисплей не показывает, "экран 3", "экран 2" - работают.
3. Скопировал единственный рабочий "экран 2", создал экран 5 с 16 индикаторами - все заработало. Добавил на этот экран индикаторы для визуализации устройства с адресом 12 - перестало работать.

Anth
18.04.2019, 13:58
Где в свойствах индикатора DWORD?

Anth
18.04.2019, 14:16
По отдельности битовые индикаторы так и не работают.

Евгений Кислов
18.04.2019, 16:44
Да, насчет DWORD в индикаторах я несколько ошибся.
Оптимальный вариант мне представляется таким:

1. Копировать данные с модуля в регистры панели (элемент Функциональная область, действие Копировать регистр, 4x51 ---> PSW300, DWORD).
2. На визуализации к индикаторам привязывать биты регистров панели: PSW300.0, PSW300.1 .... PSW301.0, PSW301.1, ...).

PSW300 - как пример регистра панели.

Anth
19.04.2019, 10:05
Спасибо за ответ.
Решил проблему примерно также, только с применением макросов и команды read. Разделение на регистры производится при помощи Hiword и Lowword.

Евгений Кислов
19.04.2019, 11:04
Рад, что все получилось.