УДК 621.313.13
Д.С. Данилов, А.О. Рогожников
Камчатский государственный технический университет, Петропавловск-Камчатский, 683003 e-mail: [email protected]
РАЗРАБОТКА УСТРОЙСТВА ПРЕДПУСКОВОГО ЗАМЕРА УРОВНЯ СОПРОТИВЛЕНИЯ ИЗОЛЯЦИИ И АВТОМАТИЧЕСКОГО ПУСКА
ЭЛЕКТРОДВИГАТЕЛЯ
В данной статье описывается предлагаемая схема устройства для предпускового контроля сопротивления изоляции, а также автоматического ввода электродвигателя в работу при нормальном значении сопротивления в Омах. Далее описывается программный код устройства. Устройство предназначено для предупреждения выхода из строя техники и оборудования, ответственного за живучесть судна, безопасность мореплавания и безопасность экипажа. Такое устройство является недорогим относительно замены испорченных электромоторов.
Ключевые слова: устройство предпускового замера уровня сопротивления изоляции, автоматизированный пуск электродвигателя.
D.S. Danilov, A.O. Rogozhnikov
Kamchatka State Technical University, Petropavlovsk-Kamchatsky, 683003 e-mail: [email protected]
DEVELOPMENT OF DEVICE FOR PRE-START MEASUREMENT OF INSULATION RESISTANCE LEVEL AND ELECTRIC MOTOR AUTOMATIC START
The proposed device circuit for pre-start monitoring of insulation resistance, as well as automatic commissioning of the electric motor at a normal resistance value in Ohms are described. Then device program code is presented. The device is designed to prevent failure of machinery and equipment responsible for the survivabil-ity of the vessel, navigation safety and crew safety. It is more inexpensive to use such device than to replace damaged electric motors.
Key words: device for pre-start measurement of insulation resistance level, automated motor start.
Разработка и внедрение новых прорывных разработок, необходимых для создания морской, речной техники - важная государственная задача [1]. В рамках выполнения этой задачи разрабатывается устройство автоматического предпускового контроля сопротивления изоляции. Необходимость разработки устройства подтверждается экономическим расчетом и практическим исследованием других авторов [2, 3]. Для более быстрой подготовки электрического двигателя к пуску, а также предупреждения его выхода из строя по причине низкого сопротивления изоляции и избегания сильного влияния человеческого фактора [4-6], было собрано специальное устройство, автоматически выполняющее замер сопротивления, а также пуск.
На рисунке приведена схема устройства автоматического пуска с предварительным замером сопротивления изоляции. Во время зажатия кнопки К сигнал поступает на 13 цифровой пин, микроконтроллер начинает поочередно замыкать твердотельные реле R1-R3, чтобы провести замер сопротивления изоляции обмоток электродвигателя, напряжение проходит через мегаом-метр, затем через амперметр, после чего выходит очень слабый низковольтный сигнал, который микроконтроллер не способен увидеть с высокой точностью, потому перед аналоговым пином АО стоит процессорный усилитель сигнала AD620, после которого наша плата начинает регистрировать значение, полученное с обмоток электродвигателя.
Далее в самом коде программы регистрируемые значения сравниваются с установленной константой по сопротивлению (она равна 500 кОм), и в зависимости от величины значения реле на подачу питания R4-R6 либо замкнутся для замыкания цепи с трехфазным источником питания электропривода, либо м/к выведет на дисплей ошибку с подписью «Checkinsulation».
В случае ошибки необходимо пройти в помещение с измеряемым электродвигателем и проверить его состояние, лично осмотрев и разобрав. Описание кода программы:
#include <Wire.h> #include <LiquidCrystalJ2C.h> LiquidCrystalJ2C lcd(0x27,20,4); В данной строке команд подключаем библиотеки для вывода значений измерений сопротивления изоляции на жидкокристаллический дисплей и объявляем характеристики дисплея.
#define button_pin 13 #define relay_pin_1 2 #define relay_pin_2 3 #define relay_pin_3 4 #define relay_pin_4 5 #define relay_pin_5 7#define relay_pin_6 8 #define amper A0
В этой строке команд 13 пин микроконтроллера объявляется кнопкой запуска программы, за 2-4 пинами закрепляются реле для замыкания цепи измеряемых обмоток, а за 5, 7-8 пинами реле для замыкания цепи питания электродвигателя, а аналоговый пин А0 будет принимать измерения, полученные с обмоток.
int Val[100], n, SUM; int Fase1; int Fase2; int Fase3; boolean butt; unsigned long last_press; В этой строке объявляются: переменная массива для сбора значений, для получения среднего арифметического, переменные фаз 1-3, которые будут хранить в себе значение обмоток в Омах; далее используются две переменные для обозначения флажка и устранения дребезга контактов кнопки запуска соответственно.
void setup() {pinMode(button_pin, INPUT_PULLUP); pinMode(relay_pin_1, OUTPUT); pinMode(relay_pin_2, OUTPUT); pinMode(relay_pin_3, OUTPUT); pinMode(relay_pin_4, OUTPUT); pinMode(relay_pin_5, OUTPUT); pinMode(relay_pin_6, OUTPUT); lcd.backlight();}
Здесь пин кнопки запуска настраивается на прием сигнала о нажатии с подтяжкой по внутреннему сопротивлению микроконтроллера, пины 2-4 настраиваются на подачу сигнала для поочередного замыкания реле цепи, отвечающей за замер сопротивления обмоток, а пины 5, 7-8 будут одновременно замыкать реле, отвечающие за подачу 3-фазного питания на электропривод.
void loop() {butt = !digitalRead(button_pin); - данной командой 13 пин будет принимать значение с кнопки (замкнута/разомкнута).
if (butt == 1 &&millis() - last_press > 100) { last_press = millis(); digitalWrite(relay_pin_1, HIGH); Val[n] = analogRead(amper); n++; if (n>100) n = 0; SUM = 0;
В данной строке соответственно: запускается цикл if, с помощью которого ставим флажок на замыкании кнопки, который в свою очередь будет сохранять режим работы программы, далее функцией millis устраняется дребезг контактов кнопки, поскольку в течение 1*102c не будем воспринимать сигнал с кнопки, после изменения ее состояния, затем со 2 пина подается высокий сигнал (5V) на замыкание твердотельного реле, чтобы начать замер первой обмотки привода, массив Val будет хранить в себе все полученные переменные, пока они не дойдут до 100, а переменная n отвечает за подсчет каждого нового измеренного значения, условием if(n>100) ограничиваем количество переменных до ста, а следующей командой обозначаем, что отчет будет начинаться с нуля, далее переменная среднего арифметического приравнивается к нулю.
for(byte i = 0; i < 100; i++){SUM += Val[i]; Fase1 = (SUM/100 * 5) / 1024; lcd.setCursor(0,1); lcd.prmt("Обмотка 1:"); lcd.setCursor(0,11); lcd.print(Fase1); break;
В данной строке команд устанавливается условие для очередности каждого измеренного значения, далее вычисляется среднее арифметическое и затем переводится в понятное для людей значение в вольтах, затем настраивается дисплей экрана для наглядного представления значений, выводится сопротивление первой обмотки, конечной командой выходим из цикла по замеру первой обмотки.
if (lcd.print(Fase1)){digitalWrite(relay_pin_1, LOW); delay(10); digitalWrite(relay_pin_2, HIGH); if (n>100) n = 0; SUM = 0; for(byte i = 0; i < 100; i++){SUM += Val[i]; Fase2 = (SUM/100) * 5 / 1024; lcd.setCursor(1,1); lcd.print("Обмотка 1:"); lcd.setCursor(1,11);lcd.print(Fase2);break;
Здесь с самого начала запускаем условие для проверки окончания первого замера, чтобы следующей командой разомкнуть реле первой обмотки, затем подождать малое количество времени во избежание короткого замыкания из-за одновременного переключения реле, а следующей командой замыкается реле для замера второй обмотки, далее выполняется список команд, аналогичный вышеперечисленному, для получения значений и их усреднения со второй обмотки.
if (lcd.print(Fase2)){digitalWrite(relay_pin_2, LOW); delay(10); digitalWrite(relay_pin_3, HIGH); if (n>100) n = 0; SUM = 0; for(byte i = 0; i < 100; i++){SUM += Val[i]; Fase3 = (SUM/100 * 5) / 1024; lcd.setCursor(2,1); М^пйСОбмотка 1:"); lcd.setCursor(2,11); lcd.print(Fase2); break;}}}}}}
В данном цикле осуществляется замер третьей обмотки, как и в цикле с замером второй обмотки.
if (Fase1 > 0 && Fase2 > 0 && Fase3 >0){ digitalWrite(relay_pin_4, HIGH); digitalWrite(relay_pin_5, HIGH); digitalWrite(relay_pin_6, HIGH);}
В этом списке команд выполняется условие: если все три обмотки дадут сопротивление больше 500 кОм, то реле на пинах 5, 7-8 замыкаются для подачи питания на запуск привода. else {lcd.setCursor(3,0); lcd.print("Check the isolation");}
Если же сопротивление обмоток не удовлетворяет поставленному условию, то на дисплее выводится срока, информирующая о необходимости сушки электропривода либо же его детальному осмотру.
Применение автоматического предпускового контроля сопротивления изоляции позволит предупредить выход из строя ответственного электропривода, что положительно скажется на безопасности мореплавания и снижении влияния человеческого фактора [7-9].
Литература
1. Постановление Правительства Российской Федерации от 26 мая 2021 г. № 786 «О системе управления государственными программами Российской Федерации» // Собрание законодательства РФ. - 26.05.2023; в ред. от 02.08.2023.
2. Матвеев Ю.В. Контроль сопротивления изоляции судовых электроэнергетических систем с применением теории массового обслуживания. - Вестник МГТУ. - 2019. - Т. 22, № 4. - С. 496-502.
3. Белов О.А., Мясников Г.С. Внедрение комплексной защиты судовых асинхронных электроприводов // Техническая эксплуатация водного транспорта: проблемы и пути развития: Материалы Второй междунар. науч.-техн. конф. - Петропавловск-Камчатский: КамчатГТУ, 2020. -С.73-76.
4. Анализ технических отказов на рыбопромысловых судах в Дальневосточном регионе / А.Н. Соболенко, И.П. Турищев, М.В. Гомзяков, О.В. Москаленко. - Вестник АГТУ. Сер.: Морская техника и технология. - 2019. - № 3. - С. 48-55.
5. Белов О.А. Аналитический обзор факторов эффективной эксплуатации морского транспорта // Техническая эксплуатация водного транспорта: проблемы и пути развития: Материалы Междунар. науч.-техн. конф.: в 2-х частях. - Петропавловск-Камчатский: КамчатГТУ, 2019. -Ч. 1. - С. 5-9.
6. Белов О.А. Интегрированные системы технической диагностики электроустановок // Вестник Камчатского государственного технического университета. - 2013. - № 25. - С. 5-8.
7. Белов О.А. Оценка технической готовности системы с учетом влияния человеческого фактора // Вестник Камчатского государственного технического университета. - 2014.- № 30. -С.11-16.
8. Белов О.А. Техническое обеспечение морских судов как фактор эффективной и безопасной эксплуатации морского транспорта // Техническая эксплуатация водного транспорта: проблемы и пути развития: Материалы Четвертой междунар. науч.-техн. конф. (25-26 ноября 2021 г.). - Петропавловск-Камчатский: КамчатГТУ, 2022. - С. 5-9.
9. Белов О.А. Марченко А.А., Труднев С.Ю. Анализ расчетно-аналитических методов прикладных задач технической безопасности // Вестник Астраханского государственного технического университета. Серия: Морская техника и технология. - 2015. - № 4. - С. 7-15.