управление из скады выходами мдвв

Стартовая страница Форумы Взаимодействие с устройствами управление из скады выходами мдвв

Просмотр 15 сообщений - с 1 по 15 (из 39 всего)
  • Автор
    Сообщения
  • #4544
    alsergeevich
    Участник

    Здравствуйте. Никак не могу понять как мне управлять из скады выходами мдвв. Настроил подключение по Modbus RTU с помощью шаблона, который мне тут предоставил Mikhail. Дальше по видео уроку создал входные каналы и каналы управления. Во входные каналы, когда производится расчёт номеров каналов, у меня попадают все каналы счётчиков номера 1001 — 1012, битовая маска выходов номер 1013 и битовая маска входов номер 1014. В каналы управления попали выходы мдвв, они имеют номера с 1001 по 1008. Ума не приложу как мне настроить так, чтобы я мог посылать в битовую маску выходов значение, чтобы управлять выходами или что и куда прописать, чтобы можно было управлять каждым выходом отдельно. Что мне надо сделать ? В видео уроке входные каналы совпадают с каналами управления. У меня же автоматически строится не логичная система каналов управления. Короче я запутался и соответственно у меня ничего не работает. В таблице все данные отображаются корректно. Объясните по шагово как мне настроить всё это дело.

    #4557
    Mikhail
    Модератор

    Добрый день!
    Для экспериментов удобнее всего работать только с Коммуникатором, пока не создавая каналов. Когда у Вас получится корректно отправлять команды из Коммуникатора, донастроить базу не сложно.
    Для отправки команд совсем не обязательно использовать битовые маски, если они явно не требуются для Вашей задачи. В том шаблоне, который я давал, прописаны команды с номерами от 1 до 8. Так вот из пользовательского интерфейса Коммуникатора отправьте стандартную команду номер 1. Если не ошибаюсь, для ОВЕН нужно посылать значение 1000 — включить и 0 — выключить, лучше уточнить в их документации.

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

    #4560
    alsergeevich
    Участник

    Завтра обязательно попробую. Но всё таки как правильно настроить каналы, чтобы я из веб-интерфейса мог отдать команду (послав 1000) на выход 1,например ? Вот этого я не понял. Просто до этого я имел дело только с Simple Scada, а там всё это делается очень просто. Меня это интересует в плане, например, я не буду создавать графический интерфейс и остановлюсь только на таблице. Вот это из видеоурока я ничего не понял. Надо было сделать пару уроков по подключению и управлению устройствами, теми же овенами. Очень не хватает этой информации. Вон в Trace Mode сделали целую серию видео на тему подключения устройств Овен.
    Ещё вопрос, где взять шаблон для ТРМ202 ?

    #4564
    alsergeevich
    Участник

    Отправляю из коммуникатора команду 1 со значением 1000 и ничего не происходит, пишет команда успешно отправлена. Тип команды стандартная. Галочка команды ТУ разрешены, стоит.Отправлял и другие номера с 1 по 8, результат 0.

    #4565
    alsergeevich
    Участник

    Из лога информация:
    14.02.2017 8:34:11 | Команда ТУ: тип=Standard, КП=101, номер=2, значение=1 000,000
    14.02.2017 8:38:38 | Команда ТУ: тип=Standard, КП=101, номер=2, значение=1 000,000
    14.02.2017 8:38:42 | Команда ТУ: тип=Standard, КП=101, номер=3, значение=1 000,000
    14.02.2017 8:38:45 | Команда ТУ: тип=Standard, КП=101, номер=4, значение=1 000,000
    14.02.2017 8:38:49 | Команда ТУ: тип=Standard, КП=101, номер=5, значение=1 000,000 14.02.2017 8:38:52 | Команда ТУ: тип=Standard, КП=101, номер=6, значение=1 000,000 14.02.2017 8:38:55 | Команда ТУ: тип=Standard, КП=101, номер=7, значение=1 000,000 14.02.2017 8:38:59 | Команда ТУ: тип=Standard, КП=101, номер=8, значение=1 000,000 14.02.2017 8:39:22 | Команда ТУ: тип=Standard, КП=101, номер=7, значение=100,000 14.02.2017 8:39:25 | Команда ТУ: тип=Standard, КП=101, номер=7, значение=0,000

    #4571
    manjey73
    Участник

    Уверены в нумерации регистров для отправки команды ?
    int16 должен передаваться без всяких формул нормально.
    Посмотрел шаблон, каналы управления не соответствуют выходам как-то.
    Согласно документации MDVV запись int16, а почему-то стоит множественная запись ?

    • Ответ изменён 9 лет, 4 месяца назад пользователем manjey73.
    #4573
    Mikhail
    Модератор

    как правильно настроить каналы, чтобы я из веб-интерфейса мог отдать команду (послав 1000) на выход 1,например ?

    На самом деле это просто. Необходимо создать канал управления в базе конфигурации и затем указать его в представлении (табличном или схеме).

    #4574
    Mikhail
    Модератор

    Самая важная информация из лога, которой не хватает, это отправляемые и принимаемые данные побайтно. Они выводятся на странице Журнал работы, файлы логов находятся в папке C:\SCADA\ScadaComm\Log

    #4576
    alsergeevich
    Участник

    Сделал такой шаблон:
    <?xml version=»1.0″ encoding=»utf-8″?>
    <DevTemplate>
    <ElemGroups>
    <ElemGroup active=»true» tableType=»HoldingRegisters» address=»50″ name=»выходы»>
    <Elem name=»out» type=»ushort» byteOrder=»01234567″ />
    </ElemGroup>
    <ElemGroup active=»true» tableType=»HoldingRegisters» address=»51″ name=»входы»>
    <Elem name=»in» type=»ushort» byteOrder=»01234567″ />
    </ElemGroup>
    </ElemGroups>
    <Cmds>
    <Cmd tableType=»HoldingRegisters» multiple=»false» address=»50″ elemCnt=»1″ cmdNum=»1″ name=»on_out» />
    </Cmds>
    </DevTemplate>
    чтобы пока видеть только битовые маски входов и выходов.
    Перезапустил коммуникатор. Входы видит нормально, значения в текущих данных тегов по входам меняются. Захожу в команды. Тип команды стандартная. Номер команды 1. Отправляю значение 1, должен сработать выход 1, но ничего не срабатывает. Пишет команда отправлена успешно и всё. Галочка команды ТУ стоит. Что ещё надо, чтобы это всё заработало ?
    Данные из логов:
    Линия 6 «myModbusTest»
    ———————-
    Состояние : цикл работы
    Действие : 14.02.2017 15:41:33 Сеанс связи с КП 61 «mymodbustest»
    Канал связи
    Тип: Serial
    Последовательный порт: COM13 (открыт)
    Пользовательские параметры
    TransMode = RTU
    Общие свойства
    Templates = Dictionary of 1 templates
    Активные КП
    1. КП 61 «mymodbustest» : норма

    При отправке команды в логе пишет следующее:
    2017-02-14 15:45:10 Команда КП 61 «mymodbustest», тип: KpModbus, адрес: 16
    Команда «on_out»
    Отправка (8): 10 06 00 32 00 01 EA 84
    Приём (5/5): 10 86 01 D3 A5
    Ошибка устройства: [01] ILLEGAL FUNCTION!
    Команда «on_out»
    Отправка (8): 10 06 00 32 00 01 EA 84
    Приём (5/5): 10 86 01 D3 A5
    Ошибка устройства: [01] ILLEGAL FUNCTION!
    Команда «on_out»
    Отправка (8): 10 06 00 32 00 01 EA 84
    Приём (5/5): 10 86 01 D3 A5
    Ошибка устройства: [01] ILLEGAL FUNCTION!
    Я так понимаю, что ему не нравится какая-то функция, вопрос какая ?

    #4579
    Mikhail
    Модератор

    1. Скопируйте отправляемые данные 10 06 00 32 00 01 EA 84 в http://modbus.rapidscada.net/
    2. Попробуйте сравнить то, что отправляет Коммуникатор, с тем что требуется контроллеру согласно документации от производителя.

    Можно сделать все необходимые настройки для Вас, но это отдельная услуга по разработке шаблона Модбас.

    Запасной вариант — использовать OPC сервер. Это проще, но по надёжности работы будет другой уровень в меньшую сторону.

    #4580
    manjey73
    Участник

    Почему-то Write Single Register вместо Holding

    и зачем писать в маску вХодов, чего там есть желание увидеть ?

    • Ответ изменён 9 лет, 4 месяца назад пользователем manjey73.
    #4582
    alsergeevich
    Участник

    Я ничего не пишу в маску входов, когда подаю сигнал на любой вход я вижу это в самой скаде типа контроля работоспособности.
    Обалдеть, скопировал 10 06 00 32 00 01 EA 84 по ссылке и вижу, что пишет не в тот адрес это первое, вместо 50 почему то пишет в 51, но ведь в шаблоне чётко указан 50 адрес, вопрос почему ? Что надо исправить в шаблоне ? Может в рапиде адреса как то считаются по другому ? Ничего не понимаю.

    #4583
    alsergeevich
    Участник

    Исправил в шаблоне адрес на 49 и теперь пишет куда надо 10 06 00 31 00 01 1A 84, но теперь вопрос как функцию записи изменить т.к вся засада в ней. Рапида использует 0х006, а в документации на мдвв написано, что запись в регистры осуществляется функцией 0х10. И ещё, получается при записи рапида увеличивает адрес на 1 поэтому в шаблоне надо указывать значение адреса — 1, с чем это связано или может я что-то не так понимаю ?

    #4584
    alsergeevich
    Участник

    Про применение ОРС. Я в принципе с ОРС и начал, но в этом случае рапида не видит у меня выходы, только входы и с MasterOPC Universal Modbus Server от Insat не хочет вообще работать.

    #4585
    alsergeevich
    Участник

    Сейчас перенастроил всё через ОРС сервер Овен. Всё настроилось, показывает что всё работает. Там где выбор ОРС сервера идёт занёс маску выходов в раздел запись данных. Номер команды сделал 3 до этого делал 1 результаты одинаковые. Тип значения System.Uint16, спецификация текущих данных Data Access 3.0. Разрешить ТУ галочка стоит. Отправляю команду со значением 1 и… опять тишина, никакой реакции.
    Информация из логов:
    2017-02-15 11:28:05 <BOOKZ><система><ACT> Получена команда из файла: тип=Standard, КП=71, номер=3

    2017-02-15 11:27:35 Инициализация линии связи 7 «opctest»
    2017-02-15 11:27:35 Запуск линии связи 7 «opctest»

    2017-02-15 11:27:35 Сеанс связи с КП 71 «opcTest», тип: KpOpc
    Соединение с OPC DA сервером установлено

    2017-02-15 11:28:05 Команда КП 71 «opcTest», тип: KpOpc

    Что тут не хватает, чтобы заработал этот мдвв как надо ?

Просмотр 15 сообщений - с 1 по 15 (из 39 всего)
  • Для ответа в этой теме необходимо авторизоваться.