Зарегистрирован: Nov 01, 2011 Сообщения: 34 Рейтинг: +0/-0
Добавлено: Вт 17 Янв, 2012 11:09:02 Заголовок сообщения: Основы работы с ModBus RTU
Доброго времени суток, уже пару дней колупаюсь с модулем Modbus RTU (ProSoft MVI69-MCM) в Logix5000. Имеется пара частотников к насосам для управления.
Изучаю мануал с сайта прософта, встроил в проект скаченную оттуда инструкцию, настроил модуль в конфигурации железа. Теперь не могу понять что с этим делать, в документации написано что вся информация полученная и передаваемая находится в пользовательских типах данных, и описано в каких, приведен список доступных стандартных функций по модбас. Но т.к. опыта подобной работы нет, это представляет для меня некоторую проблему. Поэтому вопрос, есть например в документации на частотник такой параметр:
адрес 0x0002, что это- «Напряжение на входе», «чтение», результат 1-440 в, 0-220 в.»
Как мне осуществить запрос? На языке структурного текста например
Фирменная программа конфигуратор ПроСофта PCB, как понял, поможет если есть сам модуль, а модуля под рукой нет. Спасибо.
На сайте производителя есть учебное видео, где всё подробно показано и рассказано.
Последовательность действий для модуля MVI69-MCM:
1. Скачать утилиту для добавления профиля модуля в систему MVI69 Add-On Profile
1.1. Распаковать скачанный архив Pro_AOP69.zip с утилитой и запустить её.
2. Скачать файл с дополнительной инструкцией управления модулем MVI69MCM_AddOn_Rung_v1_7.L5X
3. Создать в разделе оборудования Вашего проекта RSLogix5k модуль связи MVI69-MCM.
При этом появится раздел MCM-массив типов пользовательских переменных, связанный с установленным модулем.
4. В программе добавить команду управления модулем, сославшись на скачанный в п.2 файл MVI69MCM_AddOn_Rung_v1_7.L5X
После этого в базе тэгов контроллера появится массив тэгов для работы с модулем. Вот с этими-то тэгами из базы контроллера нам и предстоит работать дальше в соответствии с описанием.
На помощь придут программы из архива примеров.
Вот с этими-то тэгами из базы контроллера нам и предстоит работать дальше в соответствии с описанием.
На помощь придут программы из архива примеров.
В том то и дело что застрял на последнем этапе, не понятно как с помощью этих тэгов сформировать запрос. Всю информацию скачал и изучал, вроде неплохо, но с банальными примерами там туго,подразумевается что чел сам должен знать как после всех этих манипуляций начать работать с модулем.
Грубо говоря, в общем случае надо:
1. Записать конфигурацию по каждому из каналов связи (тип физ.интерфейса, скорость и параметры обмена, режим мастер или слэйв, модбас-адрес модуля в сети и другие...) в управляющие тэги модуля;
2. Прочитать тэги состояния модуля и убедится, что он работоспособен;
3. Если модуль будет слэйвом, то создать массив тэгов с соответствующими модбас-адресами регистров, а если мастером, то массив тэгов, куда будем помещать результаты запроса;
4. Если модуль слэйвом, то читаем состояние модуля и при положительных результатах обрабатываем значения в назначенном массиве регистров, а при ошибке - ошибку и обрабатываем. Когда канал модуля назначен в сети мастером, то в соответствующие тэги вписываем адрес устройства, адрес регистра, номер модбас-функции, и где брать/куда класть (при функциях записи/чтения) и, после чего читаем состояние модуля и обрабатываем результаты (данные или ошибку)
Вообще, за нас всё это может сделать расширенная команда - её для того и придумали - надо только задать в массиве тэгов команды все указанные параметры.
Задал параметры - вызвал расширенную команду - убедился в успешном её выполнении - использовал результаты или обработал ошибку.
Вот и вся премудрость.
Зарегистрирован: Nov 01, 2011 Сообщения: 34 Рейтинг: +0/-0
Добавлено: Вт 20 Мар, 2012 20:24:58 Заголовок сообщения:
Там в итоге вместо расширенной команды используется утилита от prosoft, все параметры modbus и адреса задаются там. Надо только потом прогрузить из в модуль.Удобно.
Доброго времени суток.
Выполнил все рекомендации, обмен пошел, данные то-же, только одна проблема: Данные идут совершенно не те которые на Slave ( в качестве Slave стоит контроллер Аргоси). Не сталкивались ли с такой проблемой??? Может кто-то уже делал связь по RS485 протоколу с этим самым Аргоси???
И второй момент, так и не понял как считать с 1 порта значения устройств с одинаковыми регистрами, но разными modbus адресами??? Они у меня начинают просто писаться в одни и те-же ячейки, или надо делать пересылку по опросам в другие ячейки???
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
Smart Solutions VDT GmbH | Friedrich-List-Allee 38, D-41844 Wegberg-Wildenrath, Germany Tel.: +49 2432 933 57 83 | e-Mail: office@vdt-solutions.de Все товарные знаки и торговые марки являются собственностью их владельцев.
При использовании материалов сайта ссылка на данный сайт обязательна. Открытие страницы: 0.126 секунды