СУиЗ «Лоцман+ L2» выполняет:
- защиту электродвигателей асинхронных трехфазных: защита электродвигателя от перегрузки/недогрузки по току;
- защита электродвигателя от обрыва, перекоса или неправильного чередования фаз;
- защита электродвигателя от повышения/понижения сетевого напряжения;
- защита электродвигателя от замыкания на корпус;
- защита электродвигателя и насоса от «сухого» хода.
СУиЗ соответствует климатическому исполнению У2 по ГОСТ15150-69. (У2 — эксплуатация в неотапливаемых помещениях или под навесом при температуре окружающего воздуха от минус 40°С до плюс 40°С и верхним значением относительной влажности 80% без образования конденсата.). Степень защиты СУиЗ от воды и пыли — IP 54 по ГОСТ 14254-96.
По степени защиты человека от поражения электрическим током СУиЗ относится к классу 1 по ГОСТ 12.2.007.0 -75.
Доступные режимы работы
Автоматический режим: микроконтроллер выполняет циклы налива/слива по датчикам уровня. При срабатывании защиты электродвигатель будет отключен на время, заданное пользователем и повторный запуск электродвигателя после ошибки будет осуществлен автоматически. Ручной режим: включение/выключение электродвигателя осуществляется от кнопок «Пуск»/«Стоп» и микроконтроллер выполняет циклы налива/слива по датчикам уровня. При срабатывании защиты электродвигатель будет отключен на время, заданное пользователем и повторного автоматического запуска после ошибки не произойдет, даже если емкость не будет налита до верхнего уровня. На индикаторе останется мигающая надпись с кодом ошибки. Для повторного запуска электродвигателя надо нажать кнопку «Стоп», при этом код ошибки исчезнет и МК будет ожидать нажатия кнопки «Пуск». Режим работы по датчику и таймеру: СУЗ предусмотрен для таких условий, где установка датчика верхнего уровня не представляется возможным, а использование электроконтактного манометра затруднено по каким-либо причинам. В этом случае устанавливается всего один датчик нижнего уровня, по срабатыванию которого происходит налив емкости в течение необходимого для наполнения емкости времени. Датчик верхнего уровня в этом режиме не используется.
Марки и характеристики насосов СУиЗ Лоцман+ L2
Для горизонтальной прокрутки таблицы наведите на нее курсор и используйте колесико мыши, удерживая клавишу Shift.
Марки | Рекомендуемая мощность двигателя, кВт | Масса, кг | Ток электродвигателя макс., А | Степень защиты корпуса | Габаритные размеры, мм, не более |
СУиЗ Лоцман+ L2 — 25 | 0.3…11 | 8 | 25 | IP 54 | 310х420х150 |
СУиЗ Лоцман+ L2 — 40 | 9…17 | 8 | 40 | IP 54 | 310х420х150 |
СУиЗ Лоцман+ L2 — 80 | 22…37 | 11 | 80 | IP 54 | 505х300х190 |
СУиЗ Лоцман+ L2 — 100 | 30…45 | 16 | 100 | IP 54 | 500х400х220 |
СУиЗ Лоцман+ L2 — 160 | 45…75 | 25 | 160 | IP 54 | 650х500х220 |
СУиЗ Лоцман+ L2 — 200 | 75…90 | 27 | 200 | IP 54 | 650х500х220 |
Условное обозначение
Например, СУиЗ Лоцман+ L2-25-IP54-У2 ТУ 3432-112-00217975-2011, где:
Для получения коммерческого предложения отправьте запрос через форму обратной связи. Мы свяжемся с вами для уточнения комплектации и доставки заказа.
- Лоцман+ L2 — станция управления и защиты L2
- 25 — максимальный рабочий ток подключаемого электродвигателя, А
- IP54 — степень защиты оболочки по ГОСТ 14254-96
- У2 — Климатическое исполнение и категория размещения
Дистанционная передача сигналов работы
Для дистанционной передачи сигналов на диспетчерский пульт или АСУ ТП в станции используется электромагнитное реле K2 контроллера с перекидным контактом.
Замыкание контактов реле происходит в зависимости от выбранного условия в специальном пункте установочного меню МК. Доступны следующие варианты срабатывания реле:
- работа станции;
- авария станции;
- двигатель включен/отключен;
- состояние входа «Внешнее управление»;
- состояние входа «Датчик верхнего уровня»;
- состояние входа «Датчик нижнего уровня»;
- состояние входа «Датчик сухого хода».
При необходимости, можно получить сигнал «Двигатель включен/отключен», используя дополнительный НО контакт, находящийся в контакторе.
Подробнее ознакомиться с работой станции можно в документах «Руководство по программированию L2» и «Руководство по эксплуатации Лоцман+ L2».
Применение
- для обеспечения управления, контроля и защиты насосов (погружных/центробежных), которые применяются на водоканалах, в структурах ЖКХ;
- для обеспечения контроля и управления насосов (погружных/центробежных), работающих в системах водоснабжения/водоотведения промышленных предприятий;
- в сельском хозяйстве для контроля и защиты насосов (погружных/центробежных), задействованных в системах полива сельхозугодий;
- в системах повышения давления жилых и промышленных объектов;
- на объектах теплоэнергетики для обеспечения управления, контроля и защиты насосов (погружных/центробежных), задействованных в системе обеспечения технической водой;
- автоматическое осушение дренажного приямка по датчикам уровня;
- на производственных объектах для обеспечения управления, контроля и защиты узлов и механизмов, в составе которых используются трехфазные асинхронные электродвигатели.
ЛОЦМАН: Пишем свой WorkFlow-конфигуратор. Начало
Введение
Я работаю в организации, которая начала внедрять ПО от компании АСКОН, если быть точным, то «Комплекс решений АСКОН 2013» (далее «Комплекс») + КОМПАС. Я занимаюсь администрированием этого «Комплекса». «Комплекс» имеет трехуровневую архитектуру (Клиент-Сервер приложений-Сервер БД). Ключевым продуктом «Комплекса» является ЛОЦМАН:PLM, также имеется набор утилит администрирования. Одна из утилит администрирования называется «ЛОЦМАН WorkFlow Конфигуратор» (далее WF-конфигуратор).
Рисунок 1 — ЛОЦМАН WorkFlow конфигуратор
В ходе работы были выявлены основные недостатки WF-конфигуратора:
- Нет русскоязычного поиска по ФИО, есть только по логину (причем только в виде домен\логин, кстати в «Центре управления комплексом», там где добавляются пользователи в систему, вообще нет никакого поиска…);
- При большом количестве пользователей (>1K) он стал ужасно тормозить (около 4 минут на операцию добавления пользователя).
Поскольку пользователей приходилось добавлять часто и много, пришлось придумать, как оптимизировать этот процесс. У WF-конфигуратора много функциональных возможностей, но меня пока интересовала только одна — добавление пользователей.
Чтобы исключить предполагаемые задержки, решил напрямую работать с базой, минуя «Сервер приложений». После анализа (пришлось вручную смотреть содержимое таблиц), были определены несколько таблиц (wfActors,wfDepartments,wfRoles,wfUserRoles), в которых хранятся нужные данные. В итоге процедура добавления пользователя в должность свелась к тому, что нужно добавить запись всего в 1 таблицу (wfUserRoles), которая содержит записи вида (inIdUser,inIdRole,dtStart,dtEnd):
- inIdUser — id пользователя;
- inIdRole- id роли (должность);
- dtStart — дата начала;
- dtEnd — дата окончания.
Если в полях даты начала/окончания стоит NULL, значит, срок действия пользователя в должности не ограничен.
Алгоритм действий получился следующий:
- Находим id-пользователя select * from wfActors where stDescription like ‘Фамилия%’ order by stDescription, результат — таблица с полями id-пользователя, русскоязычное имя пользователя. Запоминаем id-пользователя;
- Находим, в какое подразделения надо добавить пользователя select * from wfDepartments, результат — таблица с полями id-подразделения, название подразделения, id-родителя подразделения. Запоминаем id-подразделения;
- Находим должность в нужном подразделении select * from wfRoles where inIdDepartment = id-подразделения(из пред. шага), результат — таблица с полями id-должности, id-подразделения, название должности, запоминаем id-должности.
- теперь у нас есть id-пользователя и id-должности (в нужном подразделении), остается только добавить запись в таблицу insert into wfUserRoles values (id-пользователя, id-должности,NULL,NULL).
Даже выполняя эти SQL-запросы в Managment Studio, добавить пользователя получалось быстрее, чем через WF-конфигуратор. Затем был написан скрипт на Python, который выполнял все эти действия в консоли.
Следующий шаг — разработка GUI к этому скрипту, проанализировав какие из GUI библиотек есть для Python я выбрал PySide.
На домашнем компьютере было установлено следующее:
1) Установлено в виртуалку:
- Windows Server 2008 R2;
- MSSQL-сервер 2008 R2;
- «Комплекс» АСКОН 2013.
2) Установлено на компьютер:
- Python 3.4.1;
- модуль pypyodbc;
- модуль Pyside.
После того, как все установлено, можно приступать к разработке.
Нарисовал в QT Designer форму для приложения, сохранил в файл с расширением .ui.
В PySide есть отличный инструмент pyside-uic.exe, с помощью которого из ui-файла можно сделать файл.py. Для этого достаточно в консоли выполнить следующую команду: pyside-uic.exe file.ui -o file.py. Если указать еще аргумент -x, то этот file.py можно сразу запускать на выполнение и отобразится форма, нарисованная в Designer-е. Я об этом параметре (-х) узнал немного позже, когда уже воспользовался инструкциями с сайта zetcode.com/gui/pysidetutorial, поэтому мой код немного отличается от сгенерированного с помощью pyside-uic.exe file.ui -x -o file.py.
Вот какая форма у меня получилась:
Рисунок 2 — My WorkFlow Configurator
Использовал библиотеку pypyodbc для работы с базой данных, PySide для работы с формой.
Получилось 3 файла:
- отрисовка GUI и привязка событий с формы к различным функциям;
- класс для работы с БД
- просто текстовый файл из которого загружаются начальные настройки для формы (и сохраняются при выходе)
Для добавления пользователя в должность необходимо сначала соединиться с базой кнопка «Connect» (логин и пароль пока прописан прямо в код программы), появится дерево «Структура организации», можно развернуть элементы если у них есть вложенные (1 клик) и перейти в выбранный элемент (двойной клик), после этого выбрать должность. Найти пользователя по Фамилии (кнопка «Search»), выбрать найденного пользователя и нажать кнопку «INSERT» (должна быть выбрана должность в дереве и пользователь в поле результатов поиска).
Интересным моментом стало построение дерева, до этого момента я с этим не сталкивался. Хочется написать как-то проще, но пока так формирую список элементов.
treeItems=[] for l in sorted(list1): parent=str(l[2]) itemId=str(l[0]) descr=str(l[1]) treeItem=QtGui.QTreeWidgetItem([descr,itemId,parent]) treeItems.append(treeItem) treeItemsFin=[] i=1 for item in treeItems: for itemj in treeItems[i:]: if item.text(1)==itemj.text(2): item.insertChild(0,itemj) i+=1 treeItemsFin.append(item) self.treeWid.insertTopLevelItems(0,treeItemsFin)
Сначала из обычного списка (с элементами вида: [id-элемента,description,id-родителя]) формирую список из объектов типа QTreeWidgetItem (первый цикл), а затем из этого списка формирую другой список элементов, типа QTreeWidgetItem, но уже с вложенностью.
Пока намерено отказался от отображения уже добавленных пользователей, потому что мне кажется, что в этом проблема WF-конфигуратора АСКОН-а, у них после каждой операции обновляется все дерево и это занимает очень много времени.
В дальнейшем планирую сделать отображение пользователей только в выбранной ветке.
Пока этим приложением пользуюсь только я, но, возможно, другим администраторам пригодится… Для работы приложения необходим Python, PySide, pypyodbc установленные на компьютере администратора, в отличии от WF-конфигуратора от АСКОН, является кроссплатформенным.
Итоги
Из плюсов, поражены основные цели: + русскоязычный поиск по пользователям; + быстрое время работы.
Минусы: — не отображаются должности если они находятся в корне дерева (т.е. ни в одном из подразделений, планирую доработать); — не отображаются в дереве уже добавленные пользователи (планирую доработать); — нет функционала создания/удаления подразделения, должности (планирую доработать); — нет функционала бизнес-процессов, автоматических операций и др. что есть в WF-конфигураторе АСКОН-а (в ближайшем будущем не планирую это добавлять, поскольку этим пользуюсь не так часто и вроде нормально работает).
На этом пока все, исходники на github.com.
Список использованных источников
zetcode.com/gui/pysidetutorial deptinfo-ensip.univ-poitiers.fr/ENS/pyside-docs/index.html www.pythoncentral.io/pyside-pyqt-tutorial-using-built-in-signals-and-slots
Особенности/преимущества
- гибкая настройка режимов работы и параметров защиты;
- возможность корректировки параметров СУиЗ в процессе работы без остановки станции (например, подстроить токи защиты);
- возможность вывода на диспетчерский пульт дискретных сигналов работы станции;
- светодиодная сигнализация автоматического режима работы, состояния двигателя и уровня жидкости в емкости (по сигналам датчиков);
- учет времени работы и количества запусков электродвигателя насоса для своевременного проведения технического обслуживания;
- возможность каскадной работы нескольких станций на одну накопительную емкость или магистраль;
- дополнительный вход «Внешнее управление», позволяющий удаленно управлять станцией;
- питание цепей датчиков уровня переменным током, что позволяет значительно снизить электрохимическую коррозию электродных датчиков уровня и препятствует осаждению на них растворенных в воде солей;
- вычисление действующих значений токов и напряжений (TrueRMS) по каждой фазе и их отображение на светодиодном индикаторе;
- дополнительные режимы работы (таймеры задержки пуска, останова, аварийного отключения и пр.);
- автоматический перезапуск двигателя после аварии или прекращения электропитания станции;
- гальваническая развязка от сети всех цепей датчиков в микроконтроллере, исключающее поражение током обслуживающего персонала;
- возможность работы с различными датчиками тока: с датчиками типа Т03(Т-7) и датчиками с унифицированным токовым выходом 5А (без модификации аппаратного и программного обеспечения);
- настройка станции не требует дополнительного оборудования и доступна для обслуживания низкоквалифицированным персоналом;
- невысокая стоимость СУиЗ;
- сертифицирована для применения в странах Таможенного Союза.
Автоматический режим по датчикам уровня
В данном режиме происходит автоматическое включение/отключение двигателя насоса по дискретным датчикам давления или уровня. В зависимости от выбранной пользователем функции станции возможно автоматическое поддержание уровня воды в резервуаре или осушение дренажного приямка.
Функция «Налив»
При опускании столба жидкости ниже датчика нижнего уровня, происходит проверка состояния питающей сети, двигателя и правильности сигналов датчиков. После этого происходит включение двигателя насоса. В процессе налива постоянно ведется контроль токов и напряжений, которые должны лежать в пределах уставок, заданных в установочном меню. При выходе значений за диапазон уставок в течение заданного времени, произойдет аварийное отключение электродвигателя. На индикаторе отобразится код случившейся ошибки и время до следующего запуска двигателя. Также в процессе работы проверяется состояние входа “Внешнее управление” и состояние датчика “сухого” хода. При наполнении емкости до верхнего уровня произойдет отключение двигателя и МК перейдет к ожиданию слива.
В автоматическом режиме постоянно происходит контроль состояния контактов датчиков уровня.
Как только возникает ситуация с неправильным срабатыванием контактов датчиков (например, датчик верхнего уровня сработал раньше нижнего), начинают мигать светодиоды уровней и через 2 секунды срабатывает защита. Двигатель отключается и на индикаторе отображается мигающий код аварии. Ошибка сбросится автоматически после восстановления сигналов с датчиков.
В автоматическом режиме доступны дополнительные функции, такие как таймер аварийного отключения и таймеры задержки включения/отключения.
Таймер аварийного отключения предназначен для исключения перелива вследствие отказа одного из датчиков уровня (например, часты случаи замерзания датчиков верхнего уровня на водонапорных башнях). Задача таймера — отключить двигатель по истечении заданного в установочном меню времени (в минутах), если не сработал датчик верхнего уровня. Таймер запускается вместе с включением двигателя при наливе и обнуляется при отключении двигателя. Если датчик уровня сработал по времени раньше таймера, то таймер останавливается до следующего включения двигателя. При срабатывании таймера и истечении времени перезапуска после аварии, работа станции будет продолжена в штатном режиме, МК будет ожидать опускании уровня жидкости.
Таймеры задержки включения/отключения позволяют игнорировать ложные сигналы уровней при возможных гидроударах на длинных линиях, происходящие после включения и отключения двигателя. Команда запуска или останова двигателя будет выполнена только после стабилизации скачков давления и неизменном состоянии контактов датчиков в течение заданного пользователем времени. Также с помощью таймеров задержек возможно организовать групповой (каскадный) режим работы нескольких насосов на одну накопительную или дренажную емкость от общих датчиков уровня. Время включения/отключения каждой станции из группы настраивается в зависимости от условий работы на время до 180 секунд.
Функция «Дренаж»
Работа станции при дренаже идентична работе при наливе за исключением обратного порядка включения/ отключения двигателя при изменении уровня жидкости. При достижении жидкостью верхнего уровня произойдет запуск двигателя. После того, как уровень достигнет минимального уровня, двигатель будет остановлен, станция будет ожидать наполнения емкости до верхнего уровня. Как и при наливе, возможно использование функций задержки пуска, останова и аварийного отключения.
Функции задержки пуска и останова при дренаже аналогичные с наливом, таймер аварийного отключения включается вместе с двигателем и сбрасывается при достижении нижнего уровня.