Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Посмотрев видео с Вашего канала на Ютубе, о том, как опрашивать ПЛК из STM6 с использованием групповых запросов , решил повторить проект. При опросе в МРВ не чего не менялось. Проект проверял несколько раз. Пробовал создать связь и из других видео, не получилось. IP адрес указывал 127.0.0.1. Эмитатор ModSim по Modbus TCP подключается. Производил опрос программами Modbus Poll и Modbus Slave-обмен происходит. Так же работал и с виртуальными COM портами, обмен идет. Помогите пожалуйста! Я новичек в этом деле, но для дальнейшего развития, направьте меня на правильный путь. Спасибо!
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Здравствуйте! Уточните на какой видео-урок Вы ссылаетесь (название или ссылка)?
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
На Вашем сайте учебный фильм называется "Канал CALL.ChGroupReq для расширенной диагностики обмена по MODBUS TCP".
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Понятно. Указанный Вами IP-адрес обычно НЕ используют как p-адрес некоторого удаленного устройства. Рекомендую задать другой корректный адрес. ПК, с которого Вы планируете опрашивать ПЛК, должен иметь ip-ардес из той же локальной подсети.
Зачем виртуальные com-порты не ясно. Обмен ведь по TCP.
Я так понимаю, проблема с первичным подключением по ModBus TCP. Рекомендую ознакомиться предварительно с видео-уроком "Быстрое подключение к УСО по сети через MODBUS TCP" (ссылка, второе видео)Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
В уроках Вы обращаете внимание н установленные две сетевые карты! Получается через одну карту подключена Инструментальная среда МТ и имеет свой адрес, а ModSim подключен к другой карте и имеет свой адрес похожий на адрес 1ой карты? Верно?
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Данный вопрос не имеет отношения к Trace Mode.
При наличии двух сетевых карт на одном ПК, ModSim "садится" на одну из них самостоятельно.
Если есть проблемы с определением на какую сетевую карту он "сел", используйте второй ПК с одной сетевой картой и подключайтесь к нему по сети.
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Так и не получилось произвести опрос через ТМ, в чем причина не пойму. Запустил ModScan на той машине где инструментальная среда ТМ, на другой машине ModSim, подключил, опрос идет. Может что-то не настроено в ТМ!?
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Вот что пишет протокол1 (12:30:19)INF_GRAPH:scr:1:popup=0 scrref=0 trend=0.0 update=1 @12:30:19 0000 00000001[221443]Start (12:30:19)INF RTM:gh:514uh:219hh:271 after start (12:30:19)INF RTM:use(MB):pm=80(80)vm=79(79)pf=26947 after start (12:30:19)INF RTM:total use(MB):pm=2111 vm=218 after start (12:30:19)INF RTM:start time is 0.011s (12:30:19)INF RTM:mode=2(Work)e15=00 e18=00 e20=00[src4] (12:30:19)INF FLT:ModeSwitch at start e 15=0000 e 18=0000 e 20=0000 (12:30:19)INF IP:card1 addr=192.168.0.100 (12:30:19)INF IP:card0 addr=0.0.0.0 (12:30:19)INF IP:hostname is 777-ПК (12:30:12)INF RTM:gh:87 uh:14 hh:103 after load (12:30:12)INF RTM:use(MB):pm=22(22)vm=46(46)pf=2 after load (12:30:12)INF RTM:total use(MB):pm=2052vm=140 after load (12:30:12)INF RTM:available(MB):pm=3327;free(MB):pm=1274vm=1907em=0 after load@LOAD [0]0 Jan 19 2017
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Все, получилось подключиться. Из-за своей не внимательности, мозг на взрыв. Причина, запятые вместо точек в IP адресе.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Помогите пожалуйста настроить обмен ПЛК Modicon P342020 с инструментальной средой ТМ. В контроллер проект залит сторонней организацией. Через USB и программу Unity Pro слил проект на компьютер. В конфигурациях нашел ip адрес контроллера, подключаюсь сейчас через Internet TCP. Нужно в ТМ создать проект для опроса и визуализации датчиков уровней, давления, преобразователей расхода, а также 19ти щитов в которых установлены ПЛК Logo7 и ZelioLogic, объедененых в сеть Modbus RTU, и подключены к P342020.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Насколько мы понимаем из описания, контроллер опрашивает перечисленные устройства УСО по протоколу Modbus RTU, а TRACE MODE ведет обмен с этим контроллером по протоколу Modbus TCP.
Подключение ПЛК Modicon осуществляется стандартно по протоколу Modbus. У нас на сайте представлены видеоуроки по подключение устройств по этому протоколу: http://www.adastra.ru/products/drivers/modbus/ . Также есть другие видео по подключению различных устройств: https://www.youtube.com/@TRACEMODESCADAHMI многие из них подключаются по Modbus, например большинство оборудования ОВЕН. Со стороны ПЛК нужно иметь документацию с описанием поддерживаемых функций Modbus и карты регистров.
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Я очень много просмотрел информации по контроллеру, но не где не попалась карта регистров. В проекте есть переменная уровня типа INT с адресом %MW22, а в свойствах этой переменной указан еще адрес 400022. Для чтения аналогово выхода мне нужен компонент Rin_Word4. Какие настройки нужно произвести в свойствах компонента?
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Сегодня получилось опросить аналоговый вход AI датчика 4-20 мА, по каналу 22, в настройках компонента канал 0×16. В профайле ТМ, отобразилось значение 32100 при максимальном показатели датчика уровня (20мА). В пректе на аналоговом выходе AO блока уровня FB знчение 6.1534. У AO нет ни какого адреса в свойствах, и инструментальной средой ТМ опросить не возможно. Подскажите, возможно ли в ТМ преобразовать значение 32100 в реальные значения 6.1534?
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Опрашивал компонентом Rin_Word(4). Когда опрашиваю Rin_Float(4), то получается цифро-буквенное число с дефисом.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Здравствуйте. Для начала определитесь (с помощью описания опрашиваемого устройства и его карты сигналов) какой тип данных Вы считываете? Обычно, в карте сигналов указывается протокол с параметрами подключения.
Если необходимо считать целочисленное значение, то источник должен быть Word. Если вещественное - то Float.
quote:Отправитель / Originally posted by Shus-roman: ... У AO нет ни какого адреса в свойствах, и инструментальной средой ТМ опросить не возможно...
Инструментальная Среда предназначена для разработки проекта с возможностью отладки разрабатываемого проекта.
У АО должен быть адрес. Иначе как с ним работать? И как Вы наблюдаете значение на этом АО?
quote:Отправитель / Originally posted by Shus-roman: ... Подскажите, возможно ли в ТМ преобразовать значение 32100 в реальные значения 6.1534?
Trace Mode поддерживает математическую обработку. Это позволяет реализовать практически любое преобразование значения, в том числе из 32100 в 6.1534. Первым делом убедитесь, что Вы читаете необходимый modbus-регистр (функция и адрес) и в необходимом формате. Для этого можно использовать тот же ModScan (считайте тот же самый AO). В документации на опрашиваемое устройство убедитесь в необходимости провести преобразование значения параметра (или в отсутствии этой необходимости). Если преобразование необходимо провести, то, в зависимости от инструкций Производителя опрашиваемого устройства, Вы можете использовать или математическую обработку в свойствах канала float или написать небольшую программу на ST или FBD-блоках.
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Возможно сдесь отправлять фото? В режиме эмуляции UNITY, значение переменой AI с адресом %MW22, могу менять от 0 до 32767, эмитируя аналоговый датчик, соответственно в профайле МТ отображаются те же числа, то получается ТМ опрашивает правильный адрес. Подбором множителя, добился показаний реальных значений, но думаю что это не правильно. Технических данных связанных с регистрами по Mоdicon M342020 в интернете не выложено, а по примерам других ПЛК (с учетом своих минимальных знаний) многое не понятно, трудно мне дается, но есть желания познать. С опросом AI более менее разобрался, а вот с опросами DI и DO темный лес. Не могу разобраться какой указывать компонент и канал для опроса DI1-DI112 тип BOOL адрес %MW0.0-%MW7.15, а конкретно пытаюсь опросить DI93 с адресом %MW5.12. Не подскажите как настроить компонет? Можно Вам проект проект с контроллера M342020 отправить на email тех.поддержки?
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Принципиальной разницы между чтением/записью аналоговых и дискретных значений нет. Используйте необходимые функции. У нас есть видео-уроки по использованию основных modbus-функций.
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Мне удалось подключиться конфигуратором к модулям ввода/вывода контроллера Р342020. Выяснил что, 16 входов (битов) хранятся в регистре 45395. В зависимости от количества включенных входов (битов) в результате имеем десятичное число от 0 до 65535. При опросе входов в Trace Mode компонентом Rin_Word, выдает десятичный результат от 0 до 65535, другими компонентами опроса не происходит. Подскажите, как в ТМ опросить по отдельности каждый вход (бит). В Ваших видео да и в интернете, не нашел как опрашивать переменные с адресами типа %MW5.13.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Регистры не читаются побитово, см. описание протокола Modbus.
Привяжите Источник/приемник к каналу класса HEX, в его атрибутах его значение разложено по битам.
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Вот, например arOPC cerver может читать через modbus регистр 45395 по битово. В настройках указал тип данных: BOOL и ввел адрес 5.13, в результате получил при отключенном входе False, а при включенном True, так же получилось послать команду на запись 1го дискретного выхода регистра 40001 (так же хранится 16 бит) с адресом 104.0, при TRUE включилось реле и индикатор выхода. Попробую по Вашей рекомендации, но пока устраивает опрос входов в ТМ через arOPS,сразу в профайле результат 1 и 0 каждого входа и выхода, через компонент OPC.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! По Вашей рекомендации, через HEX, не получается опросить регистр побитово.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Уточните, по нашей рекомендации Вы считали регистр целиком? В атрибутах с 10 по 25 канала HEX, связанного с источником (функция Rin_Word?), есть значения? Какие?
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Вы рекомендовали привязать источник/приемник к каналу HEX. Канал Rin_Word(4)#1 класса HEX16 не может прочитать регистр 45395 по битово. Возможно мы не понимаем друг друга. В конфигураторе модуля ввода BMXDDI3725 который имеет 16 дискретных входов, есть таблица I/O Image Overviev, в ней есть вкладка Modbus image, в ней указана таблица регистров и каналов(входов) модулей.Таблица разбита на 17 столбцов: название первого Registr, во втором и до 17 стоблбца названы номера каналов(входов) от 0 до 15 бит слева на право. В сроке ниже столбца Registr указан адрес 45395, а в строке столбцов каналов указаны 0 и 1 в зависимости от того какой вход включен. Так вот эти нолики и единички, с типом данных BOOL мне нужно "выхватить" в Вашем ТМ на каждый канал от 0го до 15го. Rin_Word(4)#1 показывает десятичное число регистра 40006. Когда делаю опрос модуля Modscan, то в зависимости от количества включеных входов, то меняется результат именно в регистре 40006, а так же и в регистре 30006, чем больше включено входов тем больше число, максимум 65535. Ладно понятно, когда в контроллере каждый вход имеет свой регистр, а тут в одном регистре, 16 входов сидят.Через Rin_Byte(2), тоже не возможно опросить. Буду пробовать строить Scada в ТМ через arOPC server, по крайне мере я уже вижу в профайле все 16 входов и в каком они состоянии.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Блин, опечатка, каналы в таблице расположены с право на лево, соответственно первый вход это канал 0, 16 вход канал 15.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Все, нашел я биты в ТМ. Тип данных Rin_Word(4)#1 HEX16, в аргументах экрана, в привязках биты. Добавил аргументы и к каждому свой бит, а потом привязал к ГЭ.
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Здравствуйте! Я рад, что у Вас получилось реализовать нашу рекомендацию читать каналом HEX и смотреть значение бит c 10 по 25-ый.
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Спасибо за помощь, за отзывчивость! Еще такой вопрос! Вроде почитал на форуме про МРВ. Понял, чтоб МРВ работал без отказно, надо настроить ОС и BIOS на отключение спящих режимов устройств. Но подскажите пожалуйста, как запустить МРВ на постоянное подключение. Сейчас работает всего 1 час. В Вашем ознакомительном видео Вы говорите о работе на час, а потом перезапуск. Я аж расстроился, как же осуществлять мониторинг, с почасовым перезапуском профайла, не удобно. В инете читал, что мониторит постоянно. Что нужно сделать?
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Shus-roman
Junior Member / Новичок
Участник № / Member № 9415
отправлено / posted
Здравствуйте! Спасибо за ссылку, связался с Вашим менеджером. Где можно скачать полную библиотеку для создания графического экрана в более масштабных вариантах?
Сообщения / Posts 21 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Поясните, пожалуйста, что значит "масштабный вариант"?
Для TRACE MODE 6 библиотека со стандартными элементами после установки Инструментальной среды находится в папке <папка с установленной Инструментальной средой>/lib. Для Профессиональной версии она полная, для Базовой версии - урезанная.
Есть библиотека для ОВИК/HVAC, скачать ее можно в Личном кабинете или просто с сайта: http://www.adastra.ru/support/news/SCADA_HVAC/ . Там же есть видеоурок и инструкция по использованию библиотек.
Обращаем Ваше внимание, что библиотечные компоненты созданы на основе стандартных графических элементов TRACE MODE. Также есть возможность добавлять в проект собственные элементы (картинки, анимации, тексты и т.д.)
Сообщения / Posts 17264 | Из / From: Россия
| IP / IP: IP адрес / IP address |