Просмотр полной версии : Диагностика устройства на шине RS485
Добрый день!
В моем проекте СПК110 подключен по RS485 к 3-м модулям 32ДН и одному 8Р. Подключаю не через драйверы Овен а через Modbus_Master_com. Подскажите, где можно найти диагностику.
Мне необходимо знать, какое устройство отвалилось (например - нет питания), если такое произошло.
Евгений Кислов
14.04.2016, 16:01
Добрый день!
В моем проекте СПК110 подключен по RS485 к 3-м модулям 32ДН и одному 8Р. Подключаю не через драйверы Овен а через Modbus_Master_com. Подскажите, где можно найти диагностику.
Мне необходимо знать, какое устройство отвалилось (например - нет питания), если такое произошло.
Можно вот так, например:
23897
Дальше по теме возник новый вопрос.
У меня задача - однозначно отделить случайный сбой от "полного финиша". В CDS 2.3 я вел посдсчет сбоев, при превышении порога выводил состояние ошибки. Запуск общения по RS485 производил по триггеру.
Здесь не понятно, как ведет себя переменная .xError при восстановлении связи.
Если запускать общение по триггеру, как узнать, что обмен состоялся - для разрешения начала обмена со следующим модулем?
Может есть готовые решения?
Евгений Кислов
16.04.2016, 09:35
Дальше по теме возник новый вопрос.
У меня задача - однозначно отделить случайный сбой от "полного финиша". В CDS 2.3 я вел посдсчет сбоев, при превышении порога выводил состояние ошибки. Запуск общения по RS485 производил по триггеру.
Здесь не понятно, как ведет себя переменная .xError при восстановлении связи.
Если запускать общение по триггеру, как узнать, что обмен состоялся - для разрешения начала обмена со следующим модулем?
Может есть готовые решения?
Мастер в случае отсутствия ответа делает несколько попыток обращения к слэйву, если ответ все же придет, то xError должна сброситься.
У вас есть четкая уверенность, что необходима именно такая реализация? Потому что в случае конфигурирования Modbus средствами CODESYS, по идее, пользователь не должен брать на себя такие вопросы. Modbus Master не будет вечно стучаться к погибшему слэйву, а спустя пару попыток перейдет к следующему - это готовый компонент, не подразумевающий дополнительной обвязки.
Требования заказчика - наличие самодиагностики системы. В случае отказа одного из модулей я должен его определить и дать сообщение оператору.
Евгений Кислов
16.04.2016, 12:06
Требования заказчика - наличие самодиагностики системы. В случае отказа одного из модулей я должен его определить и дать сообщение оператору.
Тогда, может, контролировать xError по таймеру? Если в течение, например, минуты он находится в TRUE, тогда генерируем сообщение для оператора об отказе модуля.
Я тоже подумал об этом. Наверное, так и сделаю.
Проверил диагностику системы в лаборатории. Пока все работает как планировалось. Время контроля по таймеру - 4 секунды.
Евгений Кислов
27.05.2016, 07:18
А можно поподробнее, как войти в окошко справа, не найду такого у себя.
Окошко справа - это просто код программы на языке ST. Достаточно вбить там имя Modbus компонента из дерева проекта (которое слева) и поставить точку - появится выпадающий список переменных компонента. В редакторе CFC все будет аналогично.
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot