|
#1 |
Member
Join Date: Jun 2017 Location: Sahuarita Posts: 19 |
Siemens s7-1200 periodic «IO device failure» Hi All! I reviewed the diagnostic buffer and it appears I am receiving several errors each time this occurs. Some of the errors are Error: IO device failure — Timeout in RPC application Error: IO device failure — Data transfer fault (no frame received) Error: IO device failure — IO device not found I have attached the log below as well as a screen shot of the network view. I sure would appreciate any insight you folks might have!! Respectfully, |
|
|
|
#2 |
Lifetime Supporting Member
Join Date: Jun 2013 Location: MI Posts: 2,907 |
Are you getting any kinds of errors from the MB_Client block? Profinet errors shouldn’t affect Modbus TCP communication unless A) it is a PLC error or B) it is a physical network error. It’s almost never an internal PLC error, and if it is you need to talk to the Siemens tech support. My guess is that you have a bad network cable out in the system, which is causing an error every so often, possibly based on vibration or something. |
|
|
|
#3 |
Member
Join Date: Jun 2017 Location: Sahuarita Posts: 19 |
Siemens s7-1200 periodic «IO device failure» mk42, I totally agree that a Profinet error should not affect the Modbus TCP. However, reviewing the diagnostic buffer online this morning I found that every event logged was from the module named «fill station»(Profinet). Which is completely unrelated to the Mettler Toledo scale on «Tank C», other than both devices use the same ethernet switch. I decided to ping the IP address associated with the «fill station» while simultaneously pinging the IP address assigned to the Mettler Toledo. I had a 5% loss on the fill station IP which explains the diagnostic buffer log entries. Now this is where it gets weird, with the MB_client instruction in the «frozen» state I had 0% loss on the Mettler IP address. To make a long story short, I found a seperate switch that was connecting the fill station to the main ethernet switch. I replaced the switch and I haven’t had an diagnostic buffer error nor has the MB_CLIENT instruction froze since… I am not sure if I fixed anything lol. Has anyone ever ran across a situation where one networked device negatively affected another one? Is there some kind of underlying network interconnection between devices I am not aware of happening in the network layers. Shane |
|
|
|
#4 |
Lifetime Supporting Member
Join Date: Jun 2013 Location: MI Posts: 2,907 |
I’m going to pretend your signature never happened, so i can keep helping you with a clear conscience Quote:
Originally Posted by Shane.platt Has anyone ever ran across a situation where one networked device negatively affected another one? Is there some kind of underlying network interconnection between devices I am not aware of happening in the network layers. Oh god, this happens all the time, even though it theoretically isn’t supposed to. I’d have to see a general network layout to comment on the specific of your fix, but at the least yes, it is possible that swapping a switch might have fixed the problem. While the MB_Client is frozen, are you trying to reset the connection? or are you just coming back later and resetting things manually? |
|
|
|
#5 |
Member
Join Date: Jun 2017 Location: Sahuarita Posts: 19 |
Sorry I was pulled off this issue for awhile, but i am back on it. So it appears swapping out the switch did solve one issue, unfortunately not the issue with the MB_Client block. Quote:
Originally Posted by mk42 While the MB_Client is frozen, are you trying to reset the connection? or are you just coming back later and resetting things manually? I have some logic in place to reset the issue automatically, but it doesn’t always work. I have attached a screen shot of the Modbus_CLient Block as well as the automatic reset logic.(I didn’t write that for the record). Even with the reset logic, I am still manually going into the block and either toggling the disconnect bit, resetting the «ModbusErrors».TankAErrorCTR = 0 or in the worst cases stopping and starting the plc again. Ok ok no more Go Blue. Go Sparty??? |
|
|
|
#6 |
Member
Join Date: Jan 2006 Location: Finland Posts: 1,859 |
Are you quering all tanks same time (6x Modbus TCP querys same time)? Thinking that it is possible that you use all communication resources of 1200 and modbus won’t work if there isn’t free resource for last TCP. Check at online view how many communication resources are used and how many is possible on your PLC. |
|
|
|
#7 |
Member
Join Date: Jun 2017 Location: Sahuarita Posts: 19 |
Lare, Quote:
Originally Posted by Lare Are you quering all tanks same time (6x Modbus TCP querys same time)? I will check, but I am pretty sure we are quering all the tanks every scan. Quote:
Originally Posted by Lare Thinking that it is possible that you use all communication resources of 1200 and modbus won’t work if there isn’t free resource for last TCP. This sounds promising, but I am not quite sure what you mean? Sorry I am not well versed in networking. Quote:
Originally Posted by Lare Check at online view how many communication resources are used and how many is possible on your PLC. Could you elaborate on where in the online view I could look at the resources? |
|
|
|
#8 |
Member
Join Date: Jan 2006 Location: Finland Posts: 1,859 |
Quote:
Originally Posted by Shane.platt Lare, I will check, but I am pretty sure we are quering all the tanks every scan. I thinkt that this leads to error. You should make new query (request) only if previous query is done or error. (Usually there is some time pulsing on reguest input.) If you query new request before previous answer from slave, you get busy error from block (8200). 1200 have 8 (it depends of CPU type, so check manual) open TCP connection resources, so you can’t have more that that querys enables simultanously. All over that is abonded before sending and you get error. (Connection resources are showed under CPU properties) https://support.industry.siemens.com…=0&pageSize=10 Also look this thread and post 31 by ASF. http://www.plctalk.net/qanda/showthr…t=93134&page=3
Last edited by Lare; July 21st, 2020 at 05:18 PM.
|
|
|
|
#9 |
Lifetime Supporting Member + Moderator
Join Date: Feb 2003 Location: ᚴᚬᛒᛅᚾᚼᚬᚠᚾ Posts: 15,726 |
The IO Device errors refers to some problem in the Profinet system. How is the system physically connected ? You can either use Profinet rated switches, or you can connect the system by daisychaining so that non-Profinet data does not pass via the Profinet data.
__________________ |
|
|
|
#10 |
Lifetime Supporting Member + Moderator
Join Date: Feb 2003 Location: ᚴᚬᛒᛅᚾᚼᚬᚠᚾ Posts: 15,726 |
If the Profinet IO Errors persists, then you can try to setup the Profinet system by topology. The advantage is that it will give you better diagnostics, possibly telling you exactly which port or which cable is affected. Dont know if S7-1200 actually supports Profinet Topology. Would like to know.
__________________ |
|
|
-
САМ
- Дилетант
- Сообщения: 17
- Зарегистрирован: 20 фев 2017, 19:05
Диагностика MODBUS
Добрый день.
Подскажите кто в курсе как в S7 1200 реализуется диагностика MODBUS-соединения!
Сконфигурировал в проекте функцию MB_MASTER. Диагностика MODBUS с принудительным стартом от синхроимпульсов 50 мс. Все отлично работает, но если отрубить слейв (выключить ему питание), MB_MASTER просто пишет нули в буфер, а на его выходе ERROR не появляется единица, STATUS тоже ноль, как будто ничего не случилось. Хотя запросы то идут, а ответа на них нет! Как получить реакцию программы на отпадание слейва??
-
Михайло
- Администратор
- Сообщения: 4068
- Зарегистрирован: 19 сен 2012, 19:16
Re: Диагностика MODBUS
Сообщение
Михайло » 24 фев 2017, 06:11
Есть такой STATUS:
80C8 Slave timeout. Check the baud rate, parity and the connectors on the slave.
В Modbus_Comm_Load есть такая настройка, по умолчанию 0:
CABLE-BREAK USINT 0 Activate cable break detection: 0 — not activated, 1 — activated
Попробуй ее. Сам я CABLE-BREAK не нашел, есть BRK_DET.
Еще есть настройка BLOCKED_PROC_TIMEOUT в Modbus_Master, по умолчанию 3 секунды.
-
САМ
- Дилетант
- Сообщения: 17
- Зарегистрирован: 20 фев 2017, 19:05
Re: Диагностика MODBUS
Сообщение
САМ » 24 фев 2017, 10:39
Михайло, где там приведенные Вами настройки? Нет там такого.
Вот скан сразу после выключения слейва — никакой реакции ни на «эррорах», ни в «статусах» обеих функций! А самое противное, что даже выход не обнуляется, последняя принятая посылка тупо замораживается.
-
Михайло
- Администратор
- Сообщения: 4068
- Зарегистрирован: 19 сен 2012, 19:16
Re: Диагностика MODBUS
Сообщение
Михайло » 24 фев 2017, 10:45
Откройте датаблок Modbus_Comm_Load_DB в System blocks.
Возможно Вам следует изменить подход в управлении входом REQ, подайте на него не импульсный сигнал 50 мс, а инверсию выхода BUSY этого же блока. Так будет правильнее! Запросы будут производиться только в том случае и сразу, как только блок перестает быть занятым. В этом случае, мне кажется, блок отследит таймаут 3 секунды.
Импульсный сигнал мешает сделать это, постоянно возобновляя запросы.
-
САМ
- Дилетант
- Сообщения: 17
- Зарегистрирован: 20 фев 2017, 19:05
Re: Диагностика MODBUS
Сообщение
САМ » 24 фев 2017, 11:55
Михайло писал(а):… подайте на него не импульсный сигнал 50 мс, а инверсию выхода BUSY этого же блока. Так будет правильнее! Запросы будут производиться только в том случае и сразу, как только блок перестает быть занятым. В этом случае, мне кажется, блок отследит таймаут 3 секунды.
Импульсный сигнал мешает сделать это, постоянно возобновляя запросы.
Пробовал сделать как Вы советовали. Ничего не меняется. Прям интересно стало! В мануале прямо не говорится о функции диагностики, но в описании слов STATUS для блока MB_MASTER четко указан случай:
80C9 Инструкция Modbus_Master привела к таймауту по одной из следующих причин:
· Инструкция ожидает ответа от модуля, который используется для коммуникаций.
а у меня нули…
Пока что склонен думать что что-то у меня с прошивкой, потому как были прецеденты — случается что в онлайн отказывается переходить из-за «несоответствия проекта и периферии», а пару раз вообще зависал ПОРТАЛ так что только CTRL+ALT+DEL его хотя бы закрыть приходилось…
-
САМ
- Дилетант
- Сообщения: 17
- Зарегистрирован: 20 фев 2017, 19:05
Re: Диагностика MODBUS
Сообщение
САМ » 24 фев 2017, 13:28
Пока что выкрутился не совсем изящным, но вполне работоспособным методом:
В конце процедуры вставил счетчик синхроимпульсов 50 мс, который при этом сбрасывается выходом DONE MB_Master.
При этом, пока все работает нормально, счетчик постоянно сбрасывается.
Если отрубить слейв, сигнал DONE тоже перестанет появляться. Счетчик начинает расти. За счетчиком я установил компоратор, где сравниваю его с порогом 50. И тогда примерно через 3 сек после замолкания слейва у меня на выходе компоратора появляется долгожданная единица сигнала ошибки!
После возобновления ответов от слейва счетчик опять начинает обнуляться и сигнал ошибки пропадает. В принципе — то что надо!
При обслуживании систем и машин диагностика играет немаловажную роль. Обычно диагностика необходима в случае, если неисправность или какая-то другая проблема приводит к остановке работы оборудования или к его неправильному функционированию. Ошибка должна быть легко обнаружена, оценена и исправлена.
Один из способов диагностики состояния оборудования – это индикаторные светодиоды. Все аппаратные компоненты, например, CPU, интерфейсные модули и т.д. отображают информацию о режиме их работы, а также о внутренних или внешних ошибках с помощью своих LED-индикаторов. Диагностика с помощью LED-индикаторов — это базовый инструмент для локализации ошибки. В приведенной ниже таблице показаны примеры расположения LED-индикаторов на различных модулях.
Таблица 1. LED-индикаторы модулей.
CPU 1516-3 PN/DP
|
|
DI 32x24VDC HF |
|
|
1 |
Индикатор RUN/STOP (двухцветный: зеленый/ желтый) |
Индикатор RUN (двухцветный: зеленый/ желтый) |
Индикатор RUN (одноцветный: зеленый) |
Индикатор RUN (одноцветный: зеленый) |
2 |
Индикатор ERROR (одноцветный: красный) |
Индикатор ERROR (одноцветный: красный) |
Индикатор ERROR (одноцветный: красный) |
Индикатор ERROR (одноцветный: красный) |
3 |
Индикатор MAINT (одноцветный: желтый) |
Индикатор MAINT (одноцветный: желтый) |
Без функции |
Индикатор MAINT (одноцветный: желтый) |
4 |
Индикатор X1 P1 (двухцветный: зеленый/ желтый) |
Индикатор X1 P1 (одноцветный: зеленый) |
Индикатор СHx (двухцветный: зеленый/ красный) |
|
5 |
Индикатор X1 P2 (двухцветный: зеленый/ желтый) |
Индикатор X1 P2 (одноцветный: зеленый) |
||
6 |
Индикатор X2 P1 (двухцветный: зеленый/ желтый) |
Что может обозначать тот или иной индикатор?
Индикаторные светодиоды S7-1500 ЦПУ
Индикаторные светодиоды S7-1500 ЦПУ подразделяются на световой индикатор RUN/ STOP, световую индикацию ошибки, световой индикатор MAINT.
В зависимости от цвета, индикаторы S7-1500 CPU могут сообщать следующее:
ЦПУ находится в режиме RUN | ||||
ЦПУ запускается (переход из режима STOP в RUN) | ||||
ЦПУ в режиме STOP | ||||
Сброс ЦПУ или обновление операционной системы |
2.
Световая индикация ошибки
Программная ошибка, наличие системной диагностической неисправности |
3.
Световой индикатор MAINT
Запрос на обслуживание периферийного модуля. Также этот индикатор может говорить о том, что активирован режим Force |
||||
Обновление операционной системы успешно завершено |
LED-индикация контроллера
Световой индикатор RUN/ STOP |
Световая индикация ошибки |
Световой индикатор MAINT |
Значение |
Нет индикации |
Нет индикации |
Нет индикации |
Отсутствует или недостаточно питания на процессоре |
Нет индикации |
Мигает красный |
Нет индикации |
Произошла ошибка |
Горит зеленый |
Нет индикации |
Нет индикации |
ЦПУ в режиме RUN |
Горит зеленый |
Мигает красный |
Нет индикации |
Имеется диагностическое сообщение |
Горит зеленый |
Нет индикации |
Горит желтый |
Требуется техническое обслуживание оборудования. Поврежденное оборудование должно быть исправлено или заменено в ближайшее время. |
Режим форсирования активен |
|||
Пауза в работе по протоколу PROFIenergy |
|||
Горит зеленый |
Нет индикации |
Мигает желтый |
Требуется техническое обслуживание оборудования. Поврежденное оборудование должно быть исправлено или заменено согласно регламенту. |
Ошибка конфигурации |
|||
Горит желтый |
Нет индикации |
Мигает желтый |
Обновление ПО успешно завершено |
Горит желтый |
Нет индикации |
Нет индикации |
ЦПУ в режиме STOP |
Горит желтый |
Мигает красный |
Мигает желтый |
Ошибка карты памяти |
ЦПУ неисправен |
|||
Мигает желтый |
Нет индикации |
Нет индикации |
ЦПУ выполняет внутренние действия во время режима STOP, например, запуск после остановки |
Происходит загрузка пользовательской программы с карты памяти |
|||
Мигает желтый/ зеленый |
Нет индикации |
Нет индикации |
Запуск (ЦПУ переходит из режима RUN в режим STOP) |
Мигает желтый/ зеленый |
Мигает красный |
Мигает желтый |
ЦПУ в процессе загрузки |
Тестовое мигание светодиодов в процессе запуска, установки модуля |
|||
Тестовое мигание светодиодов |
Индикаторные светодиоды модулей центральной периферии
Индикаторные светодиоды модулей центральной периферии S7-1500 подразделяются на световой индикатор RUN/ STOP, световую индикацию ошибки, световые каналы.
Индикаторы модулей могут обозначать следующее:
Модуль готов |
||||
Модуль запущен, но не заданы необходимые параметры |
2. Световая индикация ошибки
Ошибка модуля или наличие диагностической проблемы |
3. Состояние канала
Наличие ошибки канала, например, обрыв провода, короткое замыкание… |
||||
DI/DO «1» — состояние канала AI/AO – параметры канала настроены правильно |
Следующий порядок индикации модуля: |
|
может обозначать, что данный модуль неисправен. |
LED-индикация модулей центральной периферии
Световой индикатор RUN |
Световая индикация ошибки |
Значение |
Меры по устранению неисправности |
Нет индикации |
Нет индикации |
Отсутствует или слишком низкое напряжение на внутренней шине контроллера |
• Включите ЦПУ и/или модули питания. • Убедитесь, что вставлены разъемы U. • Проверьте, не подключено ли слишком много модулей. |
Мигает зеленый |
Нет индикации |
Запуск модуля. Мигание будет продолжаться до тех пор, пока не будет установлено правильное назначение параметров. |
|
Горит зеленый |
Нет индикации |
Модуль настроен |
|
Горит зеленый |
Мигает красный |
Ошибка модуля. (Хотя бы одна ошибка в одном канале, например, обрыв провода) |
Проведите диагностику и устраните ошибку. |
Мигает зеленый |
Мигает красный |
Неисправный модуль |
Требуется замена модуля |
6ES75121DK010AB0 |
SIMATIC DP, ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР CPU 1512SP-1 PN ДЛЯ ET 200SP, РАБОЧАЯ ПАМЯТЬ 200 КБ ДЛЯ ПРОГРАММЫ И 1 МБ ДЛЯ ДАННЫХ, 1 ИНТЕРФЕЙС — PROFINET IRT С 3Х-ПОРТОВЫМ КОММУТАТОРОМ, 48 НС НА БИТОВУЮ ОПЕРАЦИЮ, НЕОБХОДИМА КАРТА ПАМЯТИ SIMATIC MC, ДЛЯ ПОРТОВ 1 И 2 НЕОБХОДИМ СЕТЕВОЙ АДАПТЕР BA |
|||
6ES75131AL010AB0 |
SIMATIC S7-1500, ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР CPU 1513-1 PN, РАБОЧАЯ ПАМЯТЬ 300 КБ ДЛЯ ПРОГРАММЫ И 1,5 МБ ДЛЯ ДАННЫХ, 1 ИНТЕРФЕЙС — PROFINET IRT С 2Х-ПОРТОВЫМ КОММУТАТОРОМ, ПРОИЗВОДИТЕЛЬНОСТЬ 40 НС НА БИТОВУЮ ОПЕРАЦИЮ, НЕОБХОДИМА КАРТА ПАМЯТИ SIMATIC MC |
|||
6ES75152AM010AB0 |
SIMATIC S7-1500, ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР CPU 1515-2 PN, CENTRAL PROCESSING UNIT WITH WORKING MEMORY 500 KB FOR PROGRAM AND 3 MB FOR DATA, 1. INTERFACE: PROFINET IRT WITH 2 PORT SWITCH, 2. INTERFACE: ETHERNET, 30 NS BIT-PERFORMANCE, SIMATIC MEMORY CARD NECESSARY |
|||
6ES75152FM010AB0 |
SIMATIC S7-1500, ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР CPU 1515F-2 PN, РАБОЧАЯ ПАМЯТЬ 750 КБ ДЛЯ ПРОГРАММЫ И 3 МБ ДЛЯ ДАННЫХ, 1 ИНТЕРФЕЙС — PROFINET IRT С 2Х-ПОРТОВЫМ КОММУТАТОРОМ, 2 ИНТЕРФЕЙС — ETHERNET. ПРОИЗВОДИТЕЛЬНОСТЬ 30 НС НА БИТОВУЮ ОПЕРАЦИЮ, НЕОБХОДИМА КАРТА ПАМЯТИ SIMATIC MC |
|||
6ES75163FN010AB0 |
SIMATIC S7-1500, ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР CPU 1516F-3 PN/DP, РАБОЧАЯ ПАМЯТЬ 1,5 МБ ДЛЯ ПРОГРАММЫ И 5 МБ ДЛЯ ДАННЫХ, 1 ИНТЕРФЕЙС — PROFINET IRT С 2Х-ПОРТОВЫМ КОММУТАТОРОМ, 2 ИНТЕРФЕЙС — ETHERNET, 3 ИНТЕРФЕЙС — PROFIBUS. ПРОИЗВОДИТЕЛЬНОСТЬ 10 НС НА БИТОВУЮ ОПЕРАЦИЮ, НЕОБХОДИМА КАРТА ПАМЯТИ SIMATIC MC |
Индикаторные светодиоды S7-1200 ЦПУ
Световой индикатор RUN/ STOP |
Световая индикация ошибки |
Световой индикатор MAINT |
Значение |
Нет индикации |
Нет индикации |
Нет индикации |
Отсутствует или недостаточно питания на процессоре |
Мигает оранжевый/ зеленый |
Нет индикации |
Нет индикации |
Запуск, самодиагностика, обновление прошивки |
Горит оранжевый |
Нет индикации |
Нет индикации |
ЦПУ в режиме STOP |
Горит зеленый |
Нет индикации |
Нет индикации |
ЦПУ в режиме RUN |
Горит оранжевый |
Нет индикации |
Мигает желтый |
Необходимо извлечь карту памяти |
Горит зеленый/ оранжевый |
Мигает красный |
Нет индикации |
Ошибка |
Горит оранжевый |
Горит красный |
Нет индикации |
Неисправность аппаратуры |
Горит зеленый/ оранжевый |
Нет индикации |
Горит оранжевый |
Требуется техническое обслуживание оборудования |
Мигает оранжевый/ зеленый |
Мигает красный |
Мигает оранжевый |
Тестирование светодиода или в CPU повреждена программа ПЗУ |
6ES72111AE400XB0 | SIMATIC S7-1200, КОМПАКТНОЕ ЦПУ CPU 1211C DC/DC/DC, ВСТРОЕННЫЕ ВХОДЫ/ВЫХОДЫ: 6 DI =24 В; 4 DO =24 В; 2 AI =0 — 10 В, БЛОК ПИТАНИЯ: =20.4 — 28.8 В, ПАМЯТЬ ПРОГРАММЫ/ДАННЫХ: 30 КБ |
|||
6ES72121AE400XB0 | SIMATIC S7-1200, КОМПАКТНОЕ ЦПУ CPU 1212C DC/DC/DC, ВСТРОЕННЫЕ ВХОДЫ/ВЫХОДЫ: 8 DI =24 В; 6 DO =24 В; 2 AI =0 — 10 В, БЛОК ПИТАНИЯ: =20.4 — 28.8 В, ПАМЯТЬ ПРОГРАММЫ/ДАННЫХ: 50 КБ |
|||
6ES72141AG400XB0 | SIMATIC S7-1200, КОМПАКТНОЕ ЦПУ CPU 1214C DC/DC/DC, ВСТРОЕННЫЕ ВХОДЫ/ВЫХОДЫ: 14 DI =24 В; 10 DO =24 В; 2 AI =0 — 10 В, БЛОК ПИТАНИЯ: =20.4 — 28.8 В, ПАМЯТЬ ПРОГРАММЫ/ДАННЫХ: 75 КБ |
|||
6ES72151AG400XB0 | SIMATIC S7-1200, КОМПАКТНОЕ ЦПУ 1215C, DC/DC/DC, 2 ПОРТА PROFINET, ВСТРОЕННЫЕ ВХОДЫ/ВЫХОДЫ: 14 DI =24 В, 10 DO =24 В/0,5 A, 2 AI =0-10 В, 2 AO 0-20 МА, НАПРЯЖЕНИЕ ПИТАНИЯ: =20,4 — 28,8 В, ПАМЯТЬ ПРОГРАММЫ/ДАННЫХ: 100 КБ |
|||
6ES72171AG400XB0 | SIMATIC S7-1200, КОМПАКТНОЕ ЦПУ CPU 1217C, DC/DC/DC, 2 ПОРТА PROFINET, ВСТРОЕННЫЕ ВХОДЫ/ВЫХОДЫ: 14 DI (10 DI =24В / 4 DI =5В ДИФ.); 10 DQ (6 DQ =24В; 0,5A / 4 DQ =5В ДИФ.); 2 AI =0-10 В; 2 AQ 0-20 МА, НАПРЯЖЕНИЕ ПИТАНИЯ: =20,4 — 28,8 В, ПАМЯТЬ ПРОГРАММЫ/ДАННЫХ: 125 КБ |