Omron FINS

Память ПЛК Omron по FINS прямо в чате

Подключите ПЛК Omron по FINS к ИИ-агенту: области DM, CIO и рабочие биты через шлюз на объекте. Агент сведёт смену по часам и посчитает циклы и простои.

Как агент работает с Omron FINS

Данные читает шлюз: программа, которая ставится службой на компьютер или сервер в сети объекта и ходит к ПЛК по FINS/TCP или FINS/UDP, порт 9600. В подключении указываются адрес ПЛК со схемой tcp:// или udp:// и карта тегов: по строке на тег путь, адрес CX-Programmer и тип, например D100 real или CIO10.03 bool. Наружу шлюз отправляет данные только исходящим соединением.

По TCP узлы FINS шлюз и ПЛК согласуют рукопожатием, по UDP их задают поля подключения. Теги одной области, стоящие не дальше 8 слов друг от друга, читаются одним запросом, до 253 слов: это ниже предела любого найденного ПЛК и ниже порога, после которого CP1L делит ответ на два кадра и ждёт 200 мс. Широкие значения Omron хранит младшим словом вперёд, а первый символ строки в старшем байте слова; для одной строки карты порядок можно переопределить.

Драйвер только читает: из команд FINS он посылает одно чтение области памяти. Сам протокол режима только для чтения не имеет: порт FINS принимает запись в память и остановку ЦП от любого, кто до него достаёт, поэтому чтение через шлюз не закрывает порт. Тег, чей диапазон ПЛК отказался читать, помечается плохим с кодом завершения, остальные читаются дальше.

Текущий банк EM не читается: его смысл меняется вместе с программой, поэтому банк называется явно, например E0_100. Таймер и счётчик читаются двумя способами: флаг завершения как bool и текущее значение в кодировке, которую задаёт ПЛК. Если связь с облаком рвётся, данные копятся на диске шлюза и приходят после восстановления.

Сценарии интеграции

Что сейчас на линии

Агент найдёт теги по пути, например line1/oven, и покажет текущие значения из DM, CIO и рабочих областей со временем отсчёта и пометкой, свежие ли они.

Сводка за смену

Агент возьмёт историю температуры или давления за смену и по часам покажет минимум, максимум, среднее и последнее значение.

Циклы и простои

Агент заберёт сырые отсчёты бита работы, например CIO10.03, за неделю и посчитает число циклов, время работы и простоя.

Задача на выход за порог

Агент заведёт задачу, которая запустится, когда значение тега выйдет за порог и продержится заданное время, а не на каждый отсчёт за порогом.

Теги, которые ПЛК не читает

Агент назовёт теги с отказом ПЛК и кодом завершения FINS, например 1103 (адрес за концом области) или 1101 (нет такой области).

Пропуски в данных

Агент покажет промежутки истории без отсчётов и скажет, на связи ли шлюз объекта сейчас.

Примеры: Omron FINS

Omron FINS
Реальные чаты: выберите вопрос
Сколько циклов сделала печь на этой неделе?

412 циклов, работа 61 ч, простой 23 ч.

  • Меньше всего циклов в четверг: 38 против 60 в среднем
  • Самый длинный простой: 4 ч 20 мин в ночь на пятницу

Считаю по биту работы CIO10.03 из ПЛК, каждый фронт включения как один цикл.

Открыть в чате

Как подключить

Перед подключением

  • ПЛК Omron CS, CJ, CP, NJ или NX с Ethernet и включённым FINS
  • Порт 9600 по TCP или UDP открыт между ПЛК и компьютером шлюза
  • Для UDP: номера узлов FINS шлюза и ПЛК
  • Для NJ/NX: переменные размещены в памяти CJ AT-спецификацией
  • Компьютер в сети объекта для службы шлюза
  • Адреса тегов из CX-Programmer или Sysmac Studio
  • Сервер пускает только известные адреса? Разрешите подключения с 158.160.205.91 и 87.228.27.163.
  1. 1

    На NJ/NX задайте переменным AT

    Переменные NJ/NX по FINS недоступны. В Sysmac Studio разместите каждую в памяти CJ AT-спецификацией, например %W0.00, и читайте по этому адресу.

  2. 2

    На NX включите FINS в Sysmac Studio

    Если FINS отмечен как не используемый или включён Packet Filter, ПЛК не отвечает вовсе, и шлюз видит только таймаут. NX1P2 отвечает только по UDP.

  3. 3

    Для UDP запишите узлы FINS

    Узел ПЛК обязателен, узел шлюза обычно последний октет его адреса. Если ПЛК отвечает только на порт FINS (статическая таблица узлов), задайте локальный порт 9600.

  4. 4

    Разрешите адрес шлюза в защите IP

    Если в Ethernet-модуле включена защита по IP-адресу, добавьте адрес компьютера шлюза. Без этого рукопожатие FINS/TCP отклоняется с ошибкой 0x22.

  5. 5

    Пропустите порт 9600 до шлюза

    FINS работает по TCP или UDP на порту 9600. Сеть между компьютером шлюза и ПЛК должна пропускать выбранный транспорт.

Частые вопросы

Заведите шлюз во вкладке «Шлюзы» и поставьте его службой на компьютер в сети объекта. В подключении укажите адрес ПЛК, например tcp://10.0.12.5:9600, и карту тегов: по строке путь, адрес CX-Programmer и тип. Для udp:// задайте ещё узлы FINS шлюза и ПЛК. Подключение назначается шлюзу, и он начинает опрос.

Теги из карты: области CIO, рабочая, удерживаемая, вспомогательная, DM, банки EM, таймеры и счётчики. Для каждого тега агент читает текущее значение со временем отсчёта, историю интервалами и сырые отсчёты.

Нет. Из команд FINS драйвер посылает только чтение области памяти, записи и управления режимом ЦП в нём нет. Учтите, что сам порт FINS запись не запрещает: её не посылает только шлюз.

По TCP узлы назначаются рукопожатием, и узел шлюза можно не задавать. UDP нужен, когда ПЛК TCP не принимает, например NX1P2: тогда узел ПЛК и узел шлюза обязательны, а при статической таблице узлов ещё и локальный порт 9600. Если рукопожатие TCP отклонено, шлюз называет код и что проверить: занятые соединения, повтор узла или защиту по IP.

Категория
Оборудование
Подключение
По API-ключу

Подключите Omron FINS

Подключение занимает пару минут, данные остаются в ваших системах.

Подключить