Как я создал приборную панель датчика в реальном времени, чтобы исправить спиральные недостатки Ambaflex

Как я создал приборную панель датчика в реальном времени, чтобы исправить спиральные недостатки Ambaflex

1 августа 2025 г.

Спиральные конвейеры Ambaflex используются по всем объектам для вертикально транспортных продуктов между уровнями. Они компактные, экономичные и необходимые для эффективного потока материала в зданиях высокой плотности.

Каждая спираль использует два датчика близости, которые помогают определить, вращается ли цепь. Один датчик расположен в верхней части спирали вблизи точки разряда-он обнаруживает отражающий металлический кусок, известный как «полумесяца». Второй датчик установлен внизу и обнаруживает меньшую опорную вкладку, называемую «цепным маркером», прикрепленным к вращающемуся валу.

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

Когда сигналы смущены - или оба огня одновременно - ПЛК может пометить разлом «сломанной цепи», которая останавливает спираль и создает нарушение вниз по течению.

Еще одна спираль просто ошибалась - снова сломана цепь. Элементы управления, можете ли вы поднять тенденцию?

Если вы находитесь в промышленном обслуживании, вы слышали это раньше.

Спиральные конвейеры Ambaflexвезде в современных объектах. Они надежны - пока они этого не делают. И когда они сломаются, устранение неполадок становится игрой в догадки.

Почему? Потому что техники не могут видетьЧто видели датчики, ведущие к ошибкеПолем Нет истории. Нет тенденций. Просто предположения.

Поэтому я построил что -то, что исправляет это - и экономит кучу времени.

Проблема: нет истории датчиков

Когда спиральный конвейер бросает разлову цепи, первый вопрос всегда: что именно произошло за несколько секунд, прежде чем он остановился?

К сожалению, встроенные светодиоды на датчиках близости показывают только текущее состояние-не то, что произошло несколько секунд назад. Даже для инженеров управления с доступом к ПЛК трудно реконструировать прошлое поведение без живой тенденции или историка.

Отсутствие видимости превращает каждую цепную ошибку в догадки. Когда техники не могут его разрешить, команду управления часто вызываются - иногда более часа - просто выяснить, что пошло не так. Без визуальной временной шкалы даже незначительные проблемы с датчиками потребляют ценное инженерное время.

Решение: решающаяся панель с живой трендом для каждой кровати

Я построил на основе питонаАмбафлекс Близовая панель панелиЭто показывает в режиме реального времени и историческое поведение обоих датчиков-житьПолем

Он подключается непосредственно кStudio 5000 Plcsс помощьюpycomm3, опросы, датчики близости теги каждые 20 мс и хранят до10 минутданных в памяти.

Ключевые функции:

  • Обновления в реальном времени каждые 20 мс
  • Кнопка паузы показывает замороженную тенденцию за последние 10 секунд
  • Прокручиваемая история (1 - второе окно с ползунком)
  • Прямое соединение PLC - историк или HMI не требуется
  • Встроенный просмотрщик readme (PDF Help Docs)
  • Построен полностью вTkinter + matplotlib + pycomm3

Как это работает

Приложение непрерывно опрашивает теги датчика близости, используя фоновый поток для максимальной отзывчивости. Он буферирует временные метки и логические значения в памяти и разгадывает их в режиме реального времени, используяmatplotlibПолем

Пользователи могут:

  • Выберите любую кровать из структурированного списка (сгруппировано по ПЛК/шкафу)
  • Приостановите график для анализа тенденции и поведения датчика
  • Прокрутите назад во времени, используя горизонтальный ползунок
  • Посмотреть специфическое для сайта PDF-руководство, встроенное в пользовательский интерфейс

Весь пользовательский интерфейс работает внутри одного.pyили.exeфайл. Легкий вес. Быстрый. Нет лицензирования.

Как я его построил

Подключение к ПЛК - почемуpycomm3

Я начал с вопроса:Какой самый быстрый способ извлечь данные из PLC Studio 5000 в Python?

Я рассмотрелpylogixно выбралpycomm3Потому что он обрабатывает несколько чтения за один сеанс и поддерживает чистую резьбу.

Фрагмент кода - основной цикл опроса:

from pycomm3 import LogixDriver import time 
def poll_tags(plc_ip, tags): 
  with LogixDriver(plc_ip) as plc: 
    while True: values = plc.read(*tags) 
      queue.put((time.time(), values)) 
      time.sleep(0.02) # 20ms polling

Поддерживать отзывчивый пользовательский интерфейс - потоки на помощь

Ранние версии мгновенно заморозили, потому что основной петлей Tkinter и PLC считывает контроль.

Решение:Запустите опрос PLC в фоновой потокеи выдвините данные в основной поток пользовательского интерфейса через очередь.

Из потока импорта потока из очереди импорта очереди

queue = Queue()
def start_polling(): 
  t = Thread(target=poll_tags, args=("10.153.249.123", ["U425200_Prox", "U425201_Prox"])) 
  t.daemon = True t.start()

Заговор в реальном времени-борьба с Matplotlib

Matplotlib не построен для 50 FPS -графика - сначала график отставал на 5 секунд позади реальных сигналов.

Исправляет:

  • Ограниченный буфер до 10 минут(Не устанавливайте тысячи очков одновременно).
  • Использовалblit()Для более быстрых перерисовки вместо полного обновления холста.

Результат: плавная прокрутка,<200 мс задержкиМежду PLC чтение и обновление экрана.

Функции паузы и прокрутки

Техники должны былиЗаморозить графикПри устранении неполадок - поэтому я добавилКнопка паузыЭто останавливает обновления и показывает последние 10 секунд замороженных.

Тогда я построилгоризонтальный ползунокЧтобы прокрутить 60 секунд.

Это означало управлениедва буфера:

  • Активный буфер(Живой поток)
  • Архивный буфер(закручиваемая история)

def pause_graph(): 
  global paused paused = not paused if paused: print("Graph frozen – showing last 10 seconds") else: print("Graph resumed")

Уроки из первой попытки: Я не прибил его с первой попытки. Мой первый прототип попытался опросить с интервалом 5 мс, и ПЛК начал мгновенно выходить на работу. Затем я попытался запустить все в главной теме Tkinter, которая заморозила твердое время. Эти ранние неудачи заставили меня переосмыслить мой подход: продолжайте напротив легкого веса и продвигайте тяжелую работу в фоновые нити.

От датчика на график: как работают корректировки

Дискона помогает техникамВыравнивание датчика тонкой настройкиПолем Основываясь на встроенном направляющем PDF, правильно выравниваемый датчик показывает зеленый маркер (нижний датчик)центрировано между двумя синими импульсами(Лучшая полумесяца). Этот визуальный сигнал помогает устранить разломы цепи, вызванные смещением датчика.

Вращение маркера по часовой стрелке задерживает зеленый импульс; против часовой стрелки продвигается. Если предупреждение о сломанной цепи происходит, в то время как оба маркера запускаются вместе, регулировка положения датчика, как указано на графике, исправляет проблему. Нет необходимости в расчетах степени - просто визуальная ссылка с использованием тенденции.

Как этот инструмент поддерживает рабочую силу

Современная автоматизация должнарасширение возможностейЛюди, которые продолжают его бежать, не перегружают их. Этот инструмент делает именно это.

Перед приборной панелью, устранение неисправностей спиральной цепи, означало проб и ошибок. Технические специалисты должны были слепо приспособиться датчики, часто переразившиеся к контролю за поддержкой. Это создало стресс, неопределенность и время простоя, особенно во время пиковых операций.

Теперь команды Frontline могут мгновенно увидеть, что случилось. Живая временная шкала придает им ясность и контроль, снижая зависимость от технического инженера и быстрее восстановить поток. Новые специалисты могут визуально изучать логику выравнивания - нет догадок, никаких руководств, доступа к ПЛК не требуется.

А для команды управления? Это освобождает их от повторяющихся устранения неполадок, позволяя им сосредоточиться на улучшениях более высокого уровня по всему объекту.

Этот инструмент:

  • Экономит контроль времени команды
  • Снижает стресс для техников
  • Ускоряет обучение для новых сотрудников
  • Помогает предотвратить простоя от простых проблем с датчиками

Почему это важно - и настоящая рентабельность

Допустим, вы управляете 3 зданиями. Каждый имеет 10 спиралей Ambaflex. И каждая спираль бросает только одну разбитую разлома цепи в месяц:

10 спиралей × 12 месяцев × 3 здания = 360 разломов/год

Стоимость рабочей силы:

  • 1 час элементы управления = 40 долларов США
  • 1 часовой техник = 30 долларов США
  • Всего = 70 долл. США/неисправность → 360 × 70 долл. США = 25 200 долл. США в год

Стоимость времени простоя:Предположим всего 2 минуты сбоев на событие в8000 долларов/мин = 16 000 долл. США за неисправность × 360 недостатков = 5,76 млн. Долл. США в год

Даже если эта приборная панель предотвращает просто15% ошибок, ты смотришь на867 000 долларов в год- от простого инструмента, который не стоит ничего, кроме времени разработки.

Последние мысли

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

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

Полный код и заметки доступны на GitHub - с множеством комментариев, чтобы другие инженеры могли следовать или адаптировать его для своих собственных сайтов


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE