Просмотр полной версии : Подключение ПЛК73 и частотного преобразоватля по RS-485
Евгений56849
28.02.2025, 18:23
Добрый день! Скажу сразу, в программировании ПЛК73 я на "Вы" и с поклоном. Необходимо подключить ПЛК73 к частотному преобразователю через RS-485 и передавать команды на преобразователь через Modbus. Читал инструкции, смотрел видео по подключению других ПЛК через RS-485, но это не сильно помогло, так как конфигурации ПЛК разные и последовательность подключения отличается. Подскажите пожалуйста, как решить поставленную задачу? Что почитать? Может сможет кто-то по шагам рассказать как это делается, буду очень признателен!
В ПЛК63/73 мастер только через библиотеки.
Примеры должны быть на сайте.
Евгений56849
28.02.2025, 18:36
В ПЛК63/73 мастер только через библиотеки.
Примеры должны быть на сайте.
Я знаю что есть библиотеки для подключения к частотному преобразователю "овен", но мой таковым не является. Или существуют универсальные библиотеки для подключения большинства преобразователей?
Modbus мастер имеется ввиду, в принципе мастер на этих ПЛК только через либы. Конфигурация на этих ПЛК только для слейва.
kondor3000
28.02.2025, 19:11
Я знаю что есть библиотеки для подключения к частотному преобразователю "овен", но мой таковым не является. Или существуют универсальные библиотеки для подключения большинства преобразователей?
Через биб-ку ПЛК как мастер подключается к любому прибору, главное правильно указать параметры сети, слейв адрес прибора и адреса регистров.
Тут почти все ссылки, что вам нужны, берите пример по Модбас на языке ST https://owen.ru/forum/showthread.php?t=39524&p=438047&viewfull=1#post438047
И даже почти готовый проект https://owen.ru/forum/showthread.php?t=39524&p=443204&viewfull=1#post443204
Евгений56849
07.03.2025, 17:19
Попробовал использовать материалы из ваших ссылок. Экспериментировал с программой записи по Modbus, но не смог разобраться с таким моментом: в программе поочередно устанавливаются значения для передачи
0: (* функция 06 - запись параметра типа Int в прибор с адресом 2 в регистр 0*)
send1_modbus(
Enable:=enabl , (* разрешение работы блока *)
Mode:=MB_RTU , (*режим передачи*)
DevAddr:=2 , (*адрес*)
RegAddr:=06 , (*регистр*)
Value:=0001, (*значение переменной, которое надо передать*)
ComHandle:= Settings.Port, (*номер сом-порта*)
TimeOut:=TimeOut , (*таймаут T#50ms*)
Complete=>cmpl , (* скопировать признак завершения операции *)
Exception=>err ); (* скопировать регистр ошибок *)
Но в руководстве по эксплуатации частотного преобразователя указана следующая форма обращения к нему по modbus rtu:
Режим RTU
Команда, отправленная в инвертор:
01 03 21 00 00 01 8Е 36 , где
01 - адрес инвертора
03 - команда чтения
21 00 - адрес параметра
00 01 - количество данных
8Е 36 - контроль CRC
Подскажите пожалуйста, в случае использования данной библиотеки каким образом осуществляется указание данных параметров для передачи их на ПЧ?
kondor3000
07.03.2025, 17:46
Если вы читаете, то и берите блок для чтения, адреса регистров и адрес слейва вы можете задать прямо в блоке. Начните с чтения 82347 из примера
Адрес регистра переводится из HEX в DEC калькулятором (в режиме программист) 2100 -это 8448.
01 - адрес инвертора и 03 - команда чтения так и останутся 1 и 3
Если адреса подряд, например 8448, 8449, 8450, то можно считать сразу 3 регистра (и более), поставив кол-во регистров 3 (и более).
Если записываете, блок для записи. Чтение и запись надо разнести по шагам CASE.
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot