PDA

Просмотр полной версии : Ошибка при настройке modbus slave "Шина не запущена"



shiko
25.07.2013, 14:52
9434
Согласно предложенному примеру по настройке modbusTCP slave в codesys v3 проделал все действия.
Однако возникает сообщение: "Шина не запущена", которое на рисунке выделено красным.

Вообще идея такая:
Создать эмулятор ПЛК с modbusSlave и соединить его с Lectus OPC.

Прочитал все инструкции по этому поводу предложенные Owen. Но по инструкции не работает.
Помогите кто делал что-то подобное???

kholonkin
06.09.2013, 09:45
в случае с 485 модбасом подобная ошибка у меня вылазила, когда адреса опрашивать пытался не те, что в приборах прописаны

Александр Приходько
07.09.2013, 03:00
Для начала советую посмотреть этот документ. В нем все очень подробно с видео расписано как настраивать.
http://www.owen.ru/forum/showthread.php?t=15674&p=117771&viewfull=1#post117771

Что касается ошибки шины, то как правило это связано с неправильной настройкой адресов или регистров.
Плюс есть такая фишка в CDS, если устройство долго не отвечает CDS его вообще исключает из опроса.

Поэтому нужно вводить дополнительный пересброс модуля.

Я делал пример для RS-485, думаю для TCP это правило тоже работает, пример смотрите тут:
http://www.owen.ru/forum/showthread.php?t=15703&p=118310&viewfull=1#post118310

GilmiyarovKR
04.06.2014, 16:42
Добрый день.
Столкнулся с похожей проблемой.
Работаю с ПЛК304 (во вкладке информация версия 3.4.0.10). Среда Codesys V3.4 SP2 Hotfix 1. Добавляю Modbus COM (версия 3.4.0.0), затем добавляю Modbus Serial Device (версия 3.4.0.0), более ранних версий в списке нет.
Все успешно компилится, без ошибок и предупреждений. Однако при загрузке программы в ПЛК вижу сообщение что "Шина не запущена".

Как быть в данной ситуации?

Трофимов Артем
05.06.2014, 12:27
Добрый день.
Столкнулся с похожей проблемой.
Работаю с ПЛК304 (во вкладке информация версия 3.4.0.10). Среда Codesys V3.4 SP2 Hotfix 1. Добавляю Modbus COM (версия 3.4.0.0), затем добавляю Modbus Serial Device (версия 3.4.0.0), более ранних версий в списке нет.
Все успешно компилится, без ошибок и предупреждений. Однако при загрузке программы в ПЛК вижу сообщение что "Шина не запущена".

Как быть в данной ситуации?

Прошивка ПЛК расчтана на то , что по последовательным портам ПЛК будет мастером, используя стандартные устройства Codesys. потому у Вас и появляется окно, что шина не запущена. к Сожалению, чтобы сделать ПЛК слэйвом по последовательному порту, придётся работать через библиотеки по работе с портом.

GilmiyarovKR
05.06.2014, 14:29
Прошивка ПЛК расчтана на то , что по последовательным портам ПЛК будет мастером, используя стандартные устройства Codesys. потому у Вас и появляется окно, что шина не запущена. к Сожалению, чтобы сделать ПЛК слэйвом по последовательному порту, придётся работать через библиотеки по работе с портом.
Благодарю за ответ

maxamin
20.05.2025, 08:13
Поискав решение в интернете, получилось реализовать так:
1. Добавляем в проект стандартное устройство (адаптер) Ethernet. Настраиваем его.

2. Подключаем библиотеку ModbusServer.

3. Добавляем подпрограмму:

// Сервер(слейв) Modbus TCP
PROGRAM MB_TCP_SLAVE
VAR
mb_server : ModbusServer;
mbPort : WORD := 502;
hReg : ARRAY[0..9] OF WORD;
iReg : ARRAY[0..24] OF WORD;
hSize : UINT:= 10;
iSize : UINT:= 25;
mbTimeout : UINT:= 0;
mbReset : BOOL;

mbBusy : BOOL;
mbError : BOOL;
clientConns : BYTE;
xTimeout : BOOL;
END_VAR

-------------------------------------

mb_server( wPort := mbPort,
pInputData := ADR(iReg),
uiInputDataSize := iSize,
pOutputData := ADR(hReg),
uiOutputDataSize := hSize,
xEnable := TRUE,
xReset := mbReset,
tTimeout := mbTimeout,
InterfaceName := "eth0", //Имя сетевого адаптера Ethernet - не обязательно
tTimeout := 0,
xbusy => mbBusy,
xError => mbError,
byClientConnections => clientConns,
xTimeout => xTimeout);


3. Адрес нашего слейв устройства для опроса = 0 или 255.