SIEMENS, DF&PD

Предыдущее посещение: Пн янв 18, 2016 0:59 Текущее время: Пн янв 18, 2016 0:59

Часовой пояс: UTC + 3 часа




 [ Сообщений: 37 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: CM 1241 Modbus RTU не подключается
СообщениеДобавлено: Вт окт 08, 2013 17:46 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
здравствуйте!
Имеется CM 1241 rs485, в режиме master. Распиновку взял такую:
Изображение
Использую только 3 и 8 контакты (А и В).
На СМ 1241 горит индикатор Тх.
По Modbus RTU не получается считать и записать данные. Скорость, четность и др. параметры установлены верно на обоих устройствах.
Изображение
Изображение
и еще несколько ветвей, которые отличаются адресами, и значение MODE в некоторых стоит 0.
Менял и адреса и длину - ничего не помогло.
Значения статусов присваивает нулевые.
В чем ошибка?
На сименс перешел недавно, надеюсь на вашу помощь =)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт окт 08, 2013 19:29 
Не в сети
Известный Писатель

Зарегистрирован: Вс ноя 29, 2009 23:52
Сообщения: 197
Откуда: Казань
Сам не использовал Modbus Master, только Slave.

Навскидку:
1) Адрес modbus должен быть больше 0. Wiki: "Адрес 0 используется для широковещательной передачи"

2) Пропишите Done и Error переменной tmp чтобы в online посмотреть их значения.

3) Запустите на компьютере программу ModScan и посмотрите уходят ли пакеты от контроллера.

4) второе устройство не компьютер? точно с RS485, а не RS232?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 09, 2013 7:09 
Не в сети
Известный Писатель

Зарегистрирован: Ср дек 26, 2012 15:40
Сообщения: 143
Насколько я понимаю, индикатор Тх не должен гореть постоянно, а только моргать во время приема. Проверьте правильность подключения линии. Замечание насчет RS-232, озвученное выше, вполне актуально. Может быть ошибка в подключении А и В.
И еще: на входе Req должен быть фронт импульса. Установка там железного TRUE не даст блоку запускаться или запустит один раз в момент старта контроллера.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 09, 2013 15:06 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Вс янв 29, 2006 10:01
Сообщения: 1818
Откуда: Портал razrab.ru
А еще терминальные резисторы на концах линии...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 09, 2013 15:51 
Не в сети
Известный Писатель

Зарегистрирован: Ср дек 26, 2012 15:40
Сообщения: 143
Михайло писал(а):
А еще терминальные резисторы на концах линии...

Кстати мне в практике ни разу не понадобились ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 09, 2013 22:18 
Не в сети
Писатель со стажем

Зарегистрирован: Вт мар 24, 2009 14:05
Сообщения: 565
Откуда: украина
процессор заткнется, лучше начать с примеров:
https://support.automation.siemens.com/ ... rch%2Easpx
Думаю остальное перепишешь и все заработает


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 10, 2013 13:44 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
maratin писал(а):
1) Адрес modbus должен быть больше 0. Wiki: "Адрес 0 используется для широковещательной передачи"

ставил разные адреса. (естественно адреса менял и у слейва тоже).
ноль как раз и оставил из соображений, что команда широковещательная, т.е., если я правильно думаю, передает на все устройства в этой сети.
maratin писал(а):

2) Пропишите Done и Error переменной tmp чтобы в online посмотреть их значения.

Error стоит в нуле, done очень быстро меняет значения...

maratin писал(а):
4) второе устройство не компьютер? точно с RS485, а не RS232?

второе устройство - плк овен с 485. (первое что под руку попалось, просто хочу изучить модбас на сименсе)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 10, 2013 13:46 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
Михайло писал(а):
А еще терминальные резисторы на концах линии...

а причем тут терминаторы?
у меня скорость 9600 всего, и мне пока больше не нужно. и кабель на км я тянуть не собираюсь.. буквально 0.5-2м и устройств не более 5


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 10, 2013 15:59 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Вс янв 29, 2006 10:01
Сообщения: 1818
Откуда: Портал razrab.ru
Ходят слухи, что терминаторы не нужны... ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 10, 2013 17:26 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
Михайло писал(а):
Ходят слухи, что терминаторы не нужны... ))

нужны или нет зависит от скорости передачи, длины кабеля и количества устройств.
при скорости в 9600 и меньше их ставить вообще нельзя


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 10, 2013 17:33 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
еще раз выставил все параметры.
адрес rtu везде поставил 1
теперь индикаторы Rx Tx не горят вообще.
статусу возвращается значение 8200. "Port is busy processing a send request".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 10, 2013 18:26 
Не в сети
Известный Писатель

Зарегистрирован: Вс ноя 29, 2009 23:52
Сообщения: 197
Откуда: Казань
Давайте все таки определимся с адресами:
напишите какие адреса заданы master (PLC+CM), slave (Овен), в вызове Modbus драйвера.

Пропишите на вход "Req" в вызове MB_Master вместо TRUE системный маркер 0,5Hz (убедитесь что он у вас включен в Hardware).

Выложите новый PrintScreen. Выложите настройки CM.

Если есть конвертер для ПК RS485-RS232 или RS485-USB то посмотрите на ПК траффик бесплатной программой ModScan.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт окт 11, 2013 15:57 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
maratin писал(а):
Давайте все таки определимся с адресами:
Если есть конвертер для ПК RS485-RS232 или RS485-USB то посмотрите на ПК траффик бесплатной программой ModScan.

увы, на компьютере нету ком порта.
сейчас перепроверю все параметры связи и скину сюда скриншоты, еще такой вопрос возник: как у сименса указать формат передачи RTU или ASCII ?
... а все понял! там блоки разные используются, в "MB_COMM_LOAD используется RTU


Последний раз редактировалось Alex44 Пт окт 11, 2013 16:24, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт окт 11, 2013 16:12 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
maratin писал(а):
Пропишите на вход "Req" в вызове MB_Master вместо TRUE системный маркер 0,5Hz (убедитесь что он у вас включен в Hardware).

не пойму, как это сделать? это в какой вкладке посмотреть можно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт окт 11, 2013 22:54 
Не в сети
Известный Писатель

Зарегистрирован: Ср дек 26, 2012 15:40
Сообщения: 143
http://s018.radikal.ru/i507/1310/aa/6ffefa31283b.png
Меркер М200.7 будет устанавливаться на время одного цикла с частотой 0,5 Гц (каждые 2 сек).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 13, 2013 8:42 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Ср июл 07, 2010 0:27
Сообщения: 1230
Откуда: ООО Фирма "КГПА"
maratin писал(а):
Пропишите на вход "Req" в вызове MB_Master вместо TRUE системный маркер 0,5Hz (убедитесь что он у вас включен в Hardware).
А на аналогичный вход MB_COMM_LOAD - бит первого цикла.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 13, 2013 11:54 
Не в сети
Известный Писатель

Зарегистрирован: Вс ноя 29, 2009 23:52
Сообщения: 197
Откуда: Казань
Цитата:
А на аналогичный вход MB_COMM_LOAD - бит первого цикла.

Если он вызывается в OB100 то надежнее оставить TRUE.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 16, 2013 8:20 
Не в сети

Зарегистрирован: Ср сен 18, 2013 16:46
Сообщения: 5
MB_COMM_LOAD & MB_MASTER_DB вход REQ - нужно взводить на один цикл, а дальше ждать результата на выходах DONE или ERROR. Например: MB_MASTER_DB.REQ := NOT MB_MASTER_DB.BUSY.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 16, 2013 16:07 
Не в сети
Известный Писатель

Зарегистрирован: Вс ноя 29, 2009 23:52
Сообщения: 197
Откуда: Казань
А зачем перезапускать MB_COMM_LOAD?
Я на его REQ-вход подаю mxScan1 ИЛИ "сигнал перезапуска 1 раз в минуту при потере связи".

REQ MB_MASTER можно выставлять по необходимости.
Ничего страшного не будет если в первый раз при пуске ПЛК наложатся вызовы MB_COMM_LOAD и MB_MASTER.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 17, 2013 16:11 
Не в сети
Новый писатель

Зарегистрирован: Пт окт 04, 2013 10:40
Сообщения: 30
и так по порядку.
Кабель, разъем DB-9: 3-B, 8-A

ПЛК овен. модбас слейв. параметры связи:
Изображение
и тут адрес устройства
Изображение

S7-1200 настройки подключения:
Изображение
программа:
Изображение
на всякий случай разную частоту поставил на чтение и запись.
и там дальше еще пяток блоков на чтение запись.

Онлайнемся, переходим в watch table и там:
"MB_COMM_LOAD_DB".DONE Bool TRUE
"MB_MASTER_DB".DONE Bool FALSE
"MB_MASTER_DB".ERROR Bool TRUE

"MB_MASTER_DB".STATUS Hex 16#8200
и все остальные статусы прыгают: 0 потом 8200

эти переменные меняются false\ true:
"MB_COMM_LOAD_DB".ERROR Bool FALSE
"MB_MASTER_DB".REQ Bool FALSE


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 [ Сообщений: 37 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: YandexBot и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group