Что такое нулевая защита: Что такое нулевая защита электродвигателя?

Содержание

Nothing found for %25D0%25Bc%25D0%25B0%25D0%25Ba%25D1%2581%25D0%25B8%25D0%25Bc%25D0%25B0%25D0%25Bb%25D1%258C%25D0%25Bd%25D0%25B0%25D1%258F %25D1%2582%25D0%25Be%25D0%25Ba%25D0%25Be%25D0%25B2%25D0%25B0%25D1%258F %25D0%25B7%25D0%25B0%25D1%2589%25D0%25B8%25D1%2582%25D0%25B0 2




















Инструктаж машиниста подъемных установок


View More


Модульные контакторы


View More


защита электродвигателя


View More


Как выбрать сечение провода


View More


Стабилизатор напряжения


View More


Переменный ток.

Откуда берется синусоида?


View More


как читать электрические схемы


View More


как правильно читать электронные схемы


View More


определение начала и конца фазных обмоток асинхронного электродвигателя


View More


тепловая защита электродвигателя


View More


Прибор для выверки соосности валов


View More


Электрические двигатели


View More


Как рассчитать сечение кабеля


View More


Тепловое реле для защиты двигателей


View More


Тепловое реле РТТ32П


View More


Контактор МК4-10


View More


Динамическое торможение


View More


Подключение двигателя 380 на 220


View More


Редуктор 1/1


View More


Редуктор


View More


зануление и заземление ч3.


View More


зануление и заземление ч2.


View More


Зануление и заземление ч1.


View More

Страницы

  • 2Ц-3,5х1,8 Экзаменационные билеты. Механизм перестановки барабанов. Назначение и устройство.
  • 2Ц6х2,8 Замена тормозных колодок, описание работ ПОР
  • Search Results
  • Автоматизация подъемных установок
  • Аппаратура управления пневмоприводом тормоза
  • Аппаратура управления подъемными установками. Контакторно-релейная аппаратура (КРА)
  • Асинхронный двигатель
  • Б.1.2.Максимальная токовая защита. Что такое “0” защита эл. двигателя. Релейная защита.
  • Б2.2Реле утечки
  • Баковые масляные выключатели
  • Библия релейной защиты и автоматики
  • Билеты машинисту п/у
    • Аппарат задания и контроля типа АЗК-1:какие функции он выполняет.
    • Асинхронный электродвигатель. Принцип работы. Динамическое торможение.
    • Б.1.1Классификация подъемных установок: по назначению, по типу.
      • Пульт машиниста: назначение, аппараты и приборы на пульте. Контрольноизмерительная аппаратура.
        • Что проверяет машинист при приеме смены.
    • Блокировки на п/у. Защиты на п/у.
    • Движение бадей в стволе
    • Документация на п/у.
    • Редукторы. Назначение. Сочленение с двигателем. Чем проверить уровень масла в редукторе. Соединительные муфты. Тахогенератор.
    • Требования предъявляемые к прицепным устройствам.
      • Бадьи и требования к ним.
    • Указатель глубины, назначение его элементов.
    • Что такое концевая нагрузка.
  • Блокировка нулевого положения командоконтроллера подъемного двигателя
  • Блокировка от залипания ускоряющих контакторов
  • Блокировка от чрезмерного износа тормозных колодок ВИК
  • Блокировка положения рукоятки рабочего тормоза
  • Вентиляционный журнал
  • Вентиляционный надзор
  • Взрывные работы в подземных выработках
  • Виды инструктажей
  • Во время замены канатов рассоединив барабаны нужно или нет отключать АЗК
  • Водоотлив
  • Вопрос-Ответ БАРНО электродвигателя
  • Вскрытие участков с потушенными пожарами
  • Высоковольтные реверсоры
  • Генераторы и двигатели постоянного тока
  • Гидропривод тормоза. Допустимый уровень масла. Давления масла
  • Гидропривод тормоза. Допустимый уровень масла. Допустимое давление масла.
  • Двухфазные схемы максимальной токовой защиты
  • Действия машиниста в аварийной ситуации
  • Действия машиниста в ремонтное время
  • Действия машиниста подъема во время аварийной остановки подъемного двигателя во время выдачи груза и людей
  • Демпфер рабочего тормоза подъемных машин НКМЗ
  • Диаграммма скорости при предохранительном торможения
  • Допускаемые зазоры между максимально выступающими частями подъемных сосудов, крепью и расстрелами в стволах вертикальных шахт
  • Допустимые потери давления при подключении РДУ к воздушной сети
  • Допустимые скорости движения ПС по вертикальным и наклонным выработкам
  • Доставка взрывчатых материалов на подземных работах
  • Доставка ВМ к местам работы
  • ЕПБ
    • Горные выработки
  • ЕПБ при взрывных работах
  • ЕПБ. Инструкция по составлению планов ликвидации аварий
  • ЕПБ. Инструкция по составлению паспортов крепления и управления кровлей подземных горных выработок
  • Журнал записи лиц, не сдавших светильники по окончании смены
  • Журнал записи результатов осмотра крепи и состояния выработок
  • Журнал записи результатов осмотра подъемной установки
  • Журнал записи результатов осмотра подъемных канатов и их расхода
  • Журнал записи результатов осмотра состояния стволов шахт
  • Журнал регистрации ознакомления рабочих с запасными выходами
  • Журнал учета работы вентилятора
  • Задайте вопрос
  • Заземление
  • Замыкание витков обмотки
  • Запас прочности каната
  • Защита кабелей, электродвигателей и трансформаторов
  • Защита минимального напряжения
  • Защита от переподъема, назначение концевых выключателей. Как проверить защиту от переподъема.Что такое высота переподъема,место установки концевых выключателей.
  • Защита от провисания струны и напуска каната
  • Защита электродвигателей
  • Защита электродвигателей напряжением ниже1000в
  • Защита электродвигателей от замыканий одной фазы на землю
  • Защита электродвигателей от коротких замыканий между фазами
  • Защита электродвигателей от перегрузки
  • Защитные средства и требования предъявляемые к ним
  • Изготовление боевиков, зажигательных и контрольных трубок
  • Измерение и регулировка воздушного зазора
  • Измерение сопротивления постоянному току обмоток
  • Инструкция о порядке хранения, использования и учета взрывчатых материалов
  • Инструкция по ОТ для стволовой
  • Инструкция по отбору проб рудничного воздуха
  • Инструкция по охране труда для машиниста подъемной машины
  • Инструкция по проверке действия реверсивных устройств вентиляторных установок
  • Инструкция по производству сварочных и газопламенных работ в подземных выработках и надшахтных зданиях
  • Инструкция по противопожарной охране шахт
  • Инструкция по составлению вентиляционных планов
  • Инструкция по устройству, осмотру и измерению сопротивления шахтных заземлений
  • Исполнительный механизм тормоза, материал тормозных колодок
  • Исполнительный механизм тормоза, материал тормозных колодок. Защита от износа колодок ВИК
  • Исполнительный огран тормоза 2Ц-3,5х1,8
  • Исполнительный орган тормоза с пружинным приводом
  • Испытание тормозных устройств
  • Испытания рудничных канатов
  • Испытания тормозных устройств подземных подъемных установок
  • Как осуществляется проверка тормозной системы и защитных устройств
  • Как откорректировать подъемную установку 2Ц-4х1.8 НКМЗ
  • Как тушить возгорание электродвигателей “Типовая инструкция по эксплуатации электродвигателей”
  • Камеры для электрических машин и подстанций
  • Канаты и прицепные устройства для спуска и подъема людей и грузов в вертикальных и наклонных выработках
  • Канаты. Техническая информация
  • Комплектация пожарных щитов
  • Контакторы переменного тока
  • Контакторы постоянного тока
  • Контроль за состоянием рудничной атмосферы и контрольно-измерительная аппаратура.
  • Контрольно-измерительная аппаратура
  • Короткое замыкание между витками на токосъемных кольцах
  • Кто имеет право давать распоряжения на переключения устройств
  • Литература
  • Максимальная токовая защита линий
  • максимальная токовая защита с блокировкой минимального напряжения
  • Малообъемные масляные выключатели
  • Масляные выключатели до 10 кВ
  • Машины постоянного тока
  • Мгновенная токовая отсечка
  • Медицинская помощь
  • Мероприятия по ликвидации аварий в начальной стадии
  • Меры безопасности при обслуживании механического оборудования п/у
  • Методика наладки схемы автоматизации. Устройства программирования скорости.
  • Надзор за канатами
  • Надзор и контроль за электрооборудованием
  • Назначение аварийного подъема
  • Назначение блокировки контроля давления в пневмосистеме
  • Назначение и принцип действия пружинно-грузового привода тормоза
  • Назначение и проверка защиты контроля давления
  • Назначение и проверка защиты от исчезновения возбуждения подъемного двигателя
  • Назначение и устройство жидкостного реостата
  • Назначение рабочего и предохранительного тормоза
  • Назначение устройство и принцип действия дуговой блокировки
  • Назначение, устройство, принцип действия регулятора давления РДУ
  • Наладка автоматизированных подъемных установок
  • Наладка комплекта электрооборудования для управления подземными подъемными машинами и лебедками
  • Наладка электродинамического торможения
  • Напочвенные дороги с канатным тяговым ограном ДКНЛ1
  • Неисправности в релейно-контакторных схемах управления подъемных установок
  • Неисправности концевых выключателей
  • Неисправности тормозных устройств шахтных п/у
  • Неполадки асинхронных трехфазных электродвигателей
  • Неполадки обмотки
  • Неполадки подшипников
  • Неполадки ротора (электродвигатель с короткозамкнутым ротором)
  • Неселективные отсечки
  • Обо мне
  • Общая оценка и область применения максимальной токовой защиты
  • Общее устройство ПУ с разрезным барабаном
  • Общее устройствои техническая характеристика двухбарабанной и однобарабанной ПМ
  • Общие правила проветривания подземных выработок
  • Общие санитарные правила
  • Обязанности главного инженера рудоуправления
  • Обязанности главного механика шахты
  • Обязанности главного энергетика шахты
  • Обязанности горного диспетчера
  • Обязанности заместителя или помощника главного инженера шахты
  • Обязанности командира ВГСЧ
  • Обязанности машиниста подъема при эксплуатации П/У и текущем ремонте
  • Обязанности начальника ПВС
  • Обязанности начальника участка, помощника начальника, сменного горного мастера
  • Обязанности начальника шахты
  • Обязанности ответственного руководителя работ по ликвидации аварий
  • Обязанности прочих лиц, участвующих в ликвидации аварии
  • Ограничитель скорости ОСЭРП
  • Ознакомление с планом ликвидации аварий и проверка знаний
  • Освещение лампами, питаемыми от электрической сети
  • Основные узлы и детали подъемной машины
  • Особенности наладки подземных подъемных установок
  • Отсечки с выдержкой времени
  • Охрана труда в электроустановках
    • Назначение роторных сопротивлений.
    • Основные и дополнительные средства защиты в электроустановках до 1000 В. и выше 1000 В.
    • Правила пользованием огнетушителем.
  • Первая помощь пострадавшим
  • Первая помощь при отравлении газами в шахте
  • Передвижение и перевозка людей и грузов по наклонным и вертикальным выработкам.
  • Перекос фаз. Причины возникновения, устранение, защита.
  • Перечень работ при ревизии редуктора РМ-850 со вскрытием крышек и заменой масла
  • Персонал для производства взрывных работ и для работ, связанных с хранением взрывчатых материалов
  • Персонал для руководства взрывными работами
  • Пневматический привод тормоза ПМ (НКМЗ, ЛКУ)
  • Поведение максимальной защиты при двойных замыканиях на землю
  • Повреждения, возникающие из-за неправильно установленных деталей трансмиссии или неточного выравнивания электродвигателя
  • Подъемные машины и лебедки
  • Порядок допуска взрывчатых материалов к применению
  • Порядок и меры безопасности при работах по техническому обслуживанию вертикальных стволов.
  • Порядок приема, отпуска и учета взрывчатых материалов
  • Правила обращения с взрывчатыми материалами
  • Правила спуска и подъема ВМ по вертикальному стволу
  • Правила спуска и подъема людей
  • Предупреждение и тушение рудничных пожаров
  • Предупреждение падения людей и предметов в горные выработки
  • Привод тормоза. Источники каких сил используются в тормозных приводах.
  • Приводы к разъединителям
  • Принцип работы системы Г-Д (генератор двигатель)
  • Принцип схемы тормозной системы ПМ
  • Принципиальная схема цепи защиты КПМ
  • Прицепные устройства подъемных сосудов
  • Причины износа тормозов,муфт включения
  • Проверка блокировок наличия тока Дт.
  • Проверка правильности включения обмоток. Асинхронные и синхронные двигатели.
  • Проверка соосности валов
  • Проверка сопротивления изоляции
  • Проветривание подготовительных выработок
  • Прокладка гибких резиновых кабелей
  • Прокладка кабелей в выработках с уклоном более 45 градусов
  • Прокладка кабелей в горизонтальных и наклонных выработках
  • Профилактика профзаболеваний
  • Пружинно-гидравлический привод тормоза
  • Пружинно-гидравлический привод тормоза, источники каких сил используются в тормозных приводах
  • Пульт управления подземной подъемной машиной ППМ-3
  • Пуск ПД в режиме ручного управления
  • Работа аварийной кнопки и аварийного ключа
  • Разлом вала
  • Разъединители
  • Ревизия и наладка маслосмазки
  • Ревизия и наладка подшипников качения
  • Ревизия и наладка подшипников скольжения валов
  • Ревизия и наладка редуктора
  • Ревизия и наладка соединительных муфт
  • Ревизия и наладка тормоза с пружинно-гидравлическим приводом
  • Ревизия и наладка щеточного аппарата, коллектора и контактных колец
  • Ревизия и наладка электрической части подъемных установок. Распределительные устройства (ру)
  • Ревизия канатоведущих шкивов
  • Ревизия механических указателей глубины
  • Ревизия рычажно-шарнирного механизма
  • Ревизия тормозного обода
  • Ревизия тормозных колодок
  • Ревизия цилиндрических барабанов
  • Ревизия, наладка и испытание шахтных подъемных установок
  • Регулировка исполнительного органа тормоза
  • Реле времени
  • Релейная защита
  • Ремонтная стволовая сигнализация
  • Рудничный воздух
  • Рудничный транспорт и подъем
  • Руководство по техническому обслуживанию и ремонту шахтных подъемных установок
  • Ручные способы искусственного дыхания
  • Самоспасатели
  • Санитарно-бытовые помещения
  • Сбои в работе токосъемных колец ротора
  • Сигнальные приборы стволовой сигнализации
  • Силовые трансформаторы
  • Синхронный двигатель
  • Система защит и блокировок на подъемной установке.
  • Совершенствование аппаратуры управления малыми шахтными подъемными машинами и лебедками
  • Соединение кабелей
  • Составление плана ликвидации аварии
  • Способы электрического торможения асинхронного двигателя
  • Справочное пособие машинисту
  • Стационарные подъемные машины и установки
  • Сушка электрических машин
  • Сушка, измельчение, просеивание и наполнение оболочек взрывчатыми веществами
  • Схема разгона двигателя с РТУ и восемью реле ускорений
  • Схема разгона двигателя с РТУ и двумя реле ускорения
  • Схема разгона двигателя с трехобмоточными реле
  • Схема РОС повышенной надежности
  • Схема РОС повышенной надежности
  • Схема трехфазной защиты с зависимой характеристикой
  • Схема трехфазной защиты с независимой выдержкой времени
  • Схемы руководств оборудования по подъемам
  • Телефонная связь и сигнализация
  • Тиристорные выпрямители для динамического торможения асинхронных подъемных машин
  • Ток срабатывания защиты
  • Токовые реле
  • Тормозные устройства, требования предъявляемые к ним.
  • Транспортирование ВМ на территории постоянных складов
  • Трансформаторы напряжения (ТН)
  • Трансформаторы тока (ТТ)
  • Трансформаторы, принцип действия,где на ПМ применяются
  • Требования безопасности по применению электродинамического торможения
  • Требования предъявляемые к переносным заземлениям. Порядок наложения и снятия.
  • Требования предъявляемые к подъемным сосудам
  • Требования предъявляемые к сосудам работающим под давлением сжатого воздуха
  • Тушение подземных пожаров
  • Угол девиации каната
  • Указательные реле
  • Уничтожение взрывчатых материалов
  • Уравновешивающие канаты П/У и требования к ним
  • Установка эластичных прокладок между фрикционными накладками и тормозными балками
  • Устройства избирательного предохранительного торможения и ограничителя тормозного момента
  • Устройства с силовыми магнитными усилителями
  • Устройство сигнализации и блокировки ляд на проходческой подъемной установке
  • Устройство, основанное на гидравлическом подпоре золотника крана предохранительного торможения
  • Устройство, основанное на задержке отключения тормозного магнита
  • Устройство, принцип действия ПД. Схема подключения его в сеть
  • Формы журналов Журнал регистрации инструктирования рабочих
  • Характерные неисправности электродвигателей и их устранение
  • Хранение взрывчатых материалов на местах работ в подземных выработках
  • Центровка вертикального электродвигателя с механизмом
  • Цепи защиты подъемной машины и требования предъявляемые к ним
  • Чем отличается командоаппарат от командоконтроллера
  • Что такое частичное и полное снятие напряжения
  • Шахтные воды, питьевое водоснабжение и ассенизация
  • Шахтные подъемные машины
  • Экзаменационные вопросы машиниста п/у
  • Электрические машины и аппараты
  • Электрические машины и схемы управления
  • Электрические машины.
  • Электрические проводки
  • Электрический ограничитель скорости типа РОС, принцип работы, назначение, ежесменная проверка ЭОС-3.
    • Б.2.1Что входит в понятие стволовая сигнализация, виды сигнализации.
    • Параметры электродвигателя
  • Электрогидравлические системы HR7K/B и HR9K/B
  • Электродинамическое торможение. Устройство с генератором постоянного тока
  • Электромагнитные промежуточные реле
  • Электромагнитные реле
  • Электропневматические регуляторы давления РДБВ
  • Электропривод
  • Электроустановки
  • Элементы BE 100 и BE 200 для дискового Тормоза
  • ЭОС-3

Статьи по разделам

  • Рубрики: Uncategorized
    • Доброго времени суток !

3D FlipBook

  • Рудничные подъемные установки
  • Справочник механика
  • Dräger X-am® 5000 (MQG 0010)
  • Маркшейдерские работы при установке и эксплуатации шахтного подъемного оборудования
  • Редукторы РМ паспорт
  • Единые нормы времени и расценки
  • Единые нормы выработки дополнение к УКНВ
  • Единые нормы выработки для шахт
  • Проверочный расчет тормоза шахтной подъемной машины
  • Технологическая инструкция по дефектоскопии деталей тормозных устройств подъемных машин
  • Тормозные устройства справочник
  • Инструкция по эксплуатации стальных канатов
  • Инструкция по эксплуатации стальных канатов в шахтных стволах
  • МОНТАЖ И РЕМОНТ ГОРНЫХ МАШИН И ЭЛЕКТРООБОРУДОВАНИЯ
  • Горнопроходческие машины и комплексы
  • Техническое обслуживание подъемных сосудов
  • Должностная инструкция — Машинист подъемной машины первой группы подъемов
  • Должностная инструкция — Машинист подъемной машины второй группы подъемов
  • Должностная инструкция — Машинист подъемной машины 4-го разряда
  • Должностная инструкция — Машинист подъемной машины 3-го разряда
  • Цепь защиты подъемного двигателя
  • ОПЕРАТИВНЫЕ ПЕРЕКЛЮЧЕНИЯ В ЭЛЕКТРОУСТАНОВКАХ ПРАВИЛА ВЫПОЛНЕНИЯ
  • ПРАВИЛА безопасности в угольных шахтах
  • Шахтный подъем
  • Шахтные подъемные установки
  • Средства защиты применяемые в ЭУ
  • Программа обучения по электробезопасности
  • Билеты Электробезопасность
  • 68 вопросов по ПТБЭУП и ПУЭ
  • 68 вопросов по ПТБЭУП и ПУЭ
  • Погрузка и подъем
  • Силовые трансформаторы
  • Машины постоянного тока
  • Синхронный двигатель
  • Асинхронный двигатель
  • Канаты. Техническая информация
  • Электрические машины и схемы управления
  • Шахтные подъемные машины
  • Руководство по техническому обслуживанию шахтных п/у
  • Библия релейной защиты и автоматики
  • Электропривод
  • Электрогидравлические системы
  • Напочвенные дороги с канатным тяговым органом ДКНЛ1, ДКНУ1, ДКНУ2
  • Требования предъявляемые к сосудам работающим под давлением сжатого воздуха
  • Стационарные подъемные машины и установки
  • Справочное пособие машинисту
  • Погрузка и подъем

Горная ЭлектроМеханика


Виды защит в цепях управления и силовых цепях приводных электродвигателей

 

Краткое описание: максимально-токовая защита, от перегрузки, путевая защита, защита от включения во время ремонта, от несанкционированного доступа, минимально-токовая, от перекоса фаз и перенапряжений, нулевая защита

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

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

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

Разумеется, полностью исключить подобные печальные ситуации невозможно, но некоторые меры защиты для цепей управления электроприводов вполне эффективны и применяются широко. Рассмотрим все эти виды защит максимально подробно.

Максимально-токовая защита электропривода

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

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

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

Защита от перегрузки двигателя

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

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

Часто такую защиту называют «тепловой», поскольку ее срабатывание зависит от температуры, но это не совсем верно. По степени нагрева аппаратура делает вывод о нагрузке двигателя, поэтому название «защита от перегрузки» является более правильным.

Путевая защита

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

Поэтому в месте приближения к границе рабочей зоны устанавливается концевой выключатель путевой защиты. Особенность его состоит в том, что отключает он не привод в целом, а только одно из направлений. Второе направление работы привода остается включенным, чтобы имелась возможность возврата в рабочую зону.

Защита от включения во время ремонта и обслуживания

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

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

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

Нулевая защита

В работе электропривода возможна ситуация, когда электрическое питание пропадает непосредственно во время работы. Тогда есть вероятность, что привод будет оставлен электротехнологическим персоналом во включенном состоянии. А в момент, когда электроэнергия вновь будет подана, вполне возможно, ситуация в корне изменится, и включение привода может оказаться опасным, хотя бы потому, что никого не будет рядом.

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

Защита от несанкционированного доступа и включения привода

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

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

Защита от неправильной фазировки и перенапряжения

Неправильная фазировка, исчезновение одной из фаз, низкое или чрезмерно высокое линейное напряжение, перекос фаз – все эти явления отрицательно сказываются на работе привода и могут вывести из строя электродвигатель. Реализовать же защиту от этого совсем не сложно – достаточно ввести в цепь катушки главного контактора блок-контакты реле контроля фаз. Фазные клеммы этого реле должны быть подключены параллельно силовой цепи двигателя.

Минимально-токовая защита

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

Известно, что при обрыве цепи возбуждения у таких двигателей резко снижается крутящий момент, скорость снижается до нуля, а для якорной цепи наступает режим короткого замыкания. Разумеется, все это заканчивается серьезной неисправностью двигателя.

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

Защитите свой код от исключений NullPointerException с помощью аннотаций Spring Null-Safety Annotations

Исключения NullPointerException (часто сокращаемые как «NPE») — это кошмар для каждого Java-программиста.

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

Поскольку NullPointerException является исключением во время выполнения, было бы трудно выяснить такие случаи во время компиляции кода. В системе типов Java нет способа быстро устранить опасные ссылки на нулевые объекты.

К счастью, Spring Framework предлагает некоторые аннотации для решения именно этой проблемы.
В этой статье мы узнаем, как использовать эти аннотации для написания нулевого безопасного кода с использованием Spring Boot.

Пример кода

Эта статья сопровождается примером рабочего кода на GitHub.

Аннотации Null-Safety в Spring

В базовом пакете org.springframework.lang Spring есть 4 таких аннотации:

  • @NonNull ,
  • @NonNullFields ,
  • @Nullable и
  • @NonNullApi .

Популярные IDE, такие как Eclipse и IntelliJ IDEA, могут понимать эти аннотации. Они могут предупреждать разработчиков о потенциальных проблемах во время компиляции.

В этом руководстве мы будем использовать IntelliJ IDEA. Давайте узнаем больше с некоторыми примерами кода.

Для создания базового проекта мы можем использовать Spring Initializr. Стартер Spring Boot — это все, что нам нужно, не нужно добавлять никаких дополнительных зависимостей.

Конфигурация IDE

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

IntelliJ

Для IntelliJ мы можем активировать проверку аннотаций в разделе «Сборка, выполнение, развертывание -> Компилятор»:

Eclipse

Для Eclipse мы можем найти настройки в разделе «Java -> Компилятор -> Ошибки/предупреждения»:

Пример кода

Давайте воспользуемся простым классом Employee , чтобы понять аннотации:

 package io.reflectoring.nullsafety;
// импорт
класс Сотрудник {
  Идентификатор строки;
  Имя строки;
  Дата присоединения к локальной дате;
  Строка pastEmployment;
  // стандартный конструктор, геттеры, сеттеры
}
 

@NonNull

В основном поле id (в классе Employee ) будет ненулевым значением. Таким образом, чтобы избежать любого потенциального NullPointerException , мы можем пометить это поле как @NonNull :

 class Employee {
  @NonNull
  Идентификатор строки;
  //. ..
}
 

Теперь, если мы случайно попытаемся установить значение id как null в любом месте кода, IDE покажет предупреждение компиляции:

The @NonNull аннотацию можно использовать на уровне метода, параметра или поля.

В этот момент вы можете подумать: «А что, если класс имеет более одного ненулевого поля?». Не будет ли слишком многословно, если нам придется добавить аннотацию @NonNull перед каждым из них?

Мы можем решить эту проблему, используя аннотацию @NonNullFields .

Вот краткое описание @NonNull :

Аннотированный элемент Эффект
поле Показывает предупреждение, когда поле пустое
параметр Показывает предупреждение, когда параметр имеет значение null
метод Показывает предупреждение, когда метод возвращает null
упаковка Неприменимо

@NonNullFields

Давайте создадим файл package-info. java , чтобы применить проверки ненулевых полей на уровне пакета. Этот файл будет содержать имя корневого пакета с @NonNullFields аннотация:

 @NonNullFields
пакет io.reflectoring.nullsafety;
импортировать org.springframework.lang.NonNullFields;
 

Теперь, , нам больше не нужно аннотировать поля аннотацией @NonNull . Потому что по умолчанию все поля классов в этом пакете теперь считаются ненулевыми. И мы по-прежнему увидим то же предупреждение, что и раньше:

Еще один момент, на который следует обратить внимание, это то, что если есть какие-либо неинициализированные поля, мы увидим предупреждение об их инициализации:

Вот краткое описание @NonNullFields :

Аннотированный элемент Эффект
поле Неприменимо
параметр Неприменимо
метод Неприменимо
упаковка Показывает предупреждение, если какое-либо из полей для примененного пакета пусто

@NonNullApi

К настоящему моменту вы, возможно, заметили еще одно требование, т. е. иметь аналогичные проверки для параметров метода или возвращаемых значений. Здесь нам на помощь придет @NonNullApi .

Подобно @NonNullFields , мы можем использовать файл package-info.java и добавить аннотацию @NonNullApi для предполагаемого пакета:

 @NonNullApi
пакет io.reflectoring.nullsafety;
импортировать org.springframework.lang.NonNullApi;
 

Теперь, если мы напишем код, в котором метод возвращает null:

 package io.reflectoring.nullsafety;
// импорт
класс Сотрудник {
  Строка getPastEmployment() {
    вернуть ноль;
  }
  //...
}
 

Мы видим, что IDE теперь предупреждает нас о ненулевом возвращаемом значении:

Вот краткое описание @NonNullApi :

Аннотированный элемент Эффект
поле Неприменимо
параметр Неприменимо
метод Неприменимо
упаковка Показывает предупреждение, если какой-либо из параметров или возвращаемых значений имеет значение NULL для примененного пакета

@Nullable

Но вот загвоздка. Могут быть сценарии, в которых конкретное поле может быть нулевым (независимо от того, насколько сильно мы хотим этого избежать).

Например, 9Поле 0003 pastEmployment может иметь значение NULL в классе Employee (для тех, кто ранее не работал). Но согласно нашим проверкам безопасности, IDE считает, что это невозможно.

Мы можем выразить свое намерение, используя аннотацию @Nullable на поле. Это сообщит IDE, что в некоторых случаях поле может быть пустым, поэтому нет необходимости вызывать тревогу. Как предлагает JavaDoc:

Может использоваться вместе с @NonNullApi или @NonNullFields , чтобы переопределить семантику по умолчанию, не допускающую значение NULL, на значение, допускающее значение NULL.

Подобно NonNull аннотация Nullable может применяться к методу, параметру или уровню поля.

Теперь мы можем пометить поле pastEmployment как допускающее значение NULL:

 package io. reflectoring.nullsafety;
// импорт
класс Сотрудник {
  @Обнуляемый
  Строка pastEmployment;
  @Nullable String getPastEmployment() {
    вернуть прошлую занятость;
  }
  //...
}
 

Вот краткое описание @Nullable :

Аннотированный элемент Эффект
поле Указывает, что поле может быть пустым
параметр Указывает, что параметр может иметь значение null
метод Указывает, что метод может возвращать null
упаковка Неприменимо

Автоматические проверки сборки

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

SpotBugs (реинкарнация известного, но заброшенного проекта FindBugs) предлагает подключаемый модуль Maven/Gradle, который может обнаруживать запахи кода из-за возможности обнуления. Давайте посмотрим, как мы можем его использовать.

Для проекта Maven нам нужно обновить pom.xml для добавления подключаемого модуля SpotBugs Maven:

 
  com.github.spotbugs
  spotbugs-maven-плагин
  <версия>4.5.2.0
  <зависимости>
    
    <зависимость>
      com.github.spotbugs
      местные ошибки
      <версия>4.5.3
    
  

 

После построения проекта мы можем использовать следующие цели из этого плагина:

  • цель Spotbugs анализирует целевой проект.
  • цель check запускает цель spotbugs и приводит к сбою сборки, если она находит какие-либо ошибки.

Если вы используете Gradle вместо Maven, вы можете настроить подключаемый модуль SpotBugs Gradle в файле build. gradle :

 зависимости {
  SpotbugsPlugins 'com.h4xstream.findsecbugs:findsecbugs-plugin:1.11.0'
}
жуки {
  версия инструмента = '4.5.3'
}
 

После обновления проекта мы можем запустить проверку с помощью команды gradle check .

SpotBugs предоставляет несколько правил для обозначения потенциальных проблем путем обработки аннотации @NonNull во время сборки Maven. Вы можете просмотреть подробный список описаний ошибок.

Например, если какой-либо из методов с аннотацией @NonNull случайно возвращает значение null, то проверка SpotBugs завершится с ошибкой, подобной этой:

 [ОШИБКА] Высокий: io.reflectoring.nullsafety.Employee.getJoiningDate () может возвращать значение null, но объявляется @Nonnull [io.reflectoring.nullsafety.Employee] в Employee.java: [строка 36] NP_NONNULL_RETURN_VIOLATION
 

Заключение

Эти аннотации действительно являются благом для программистов Java, поскольку они уменьшают вероятность возникновения NullPointerException во время выполнения. Однако имейте в виду, что это не гарантирует полной нулевой безопасности.

Kotlin использует эти аннотации, чтобы сделать вывод об обнулении Spring API.

Надеюсь, теперь вы готовы писать нуль-безопасный код в Spring Boot!

Нулевая безопасность | Документация Kotlin

Типы, допускающие значение NULL, и ненулевые типы

Система типов Kotlin направлена ​​на устранение опасности нулевых ссылок, также известной как «Ошибка на миллиард долларов».

Одна из наиболее распространенных ошибок во многих языках программирования, включая Java, заключается в том, что доступ к члену нулевой ссылки приведет к исключению нулевой ссылки. В Java это будет эквивалентно NullPointerException или сокращенно NPE .

Единственные возможные причины NPE в Котлине:

  • Явный вызов throw NullPointerException() .

  • Использование !! оператор, описанный ниже.

  • Несоответствие данных в отношении инициализации, например, когда:

    • Неинициализированный этот , доступный в конструкторе, передается и где-то используется («утечка этого »).

    • Конструктор суперкласса вызывает открытый член, реализация которого в производном классе использует неинициализированное состояние.

  • Взаимодействие Java:

    • Попытки доступа к элементу null ссылки типа платформы;

    • Проблемы с нулевым значением при использовании универсальных типов для взаимодействия Java. Например, фрагмент кода Java может добавить null в Kotlin MutableList , поэтому для работы с ним требуется MutableList .

    • Другие проблемы, вызванные внешним кодом Java.

В Kotlin система типов различает ссылки, которые могут содержать null (ссылки, допускающие значение NULL), и ссылки, которые не могут содержать (ссылки, отличные от NULL). Например, обычная переменная типа String не может содержать null :

fun main() {
// начало выборки
var a: String = «abc» // Обычная инициализация означает ненулевое значение по умолчанию
a = null // ошибка компиляции
//конец выборки
}

Чтобы разрешить пустые значения, вы можете объявить переменную как строку, допускающую значение null, написав Строка? :

весело main() {
// начало выборки
вар б: Строка? = «abc» // может быть установлено значение null
b = ноль // хорошо
печать (б)
//конец выборки
}

Теперь, если вы вызываете метод или обращаетесь к свойству a , это гарантированно не вызовет NPE, поэтому вы можете смело сказать:

val l = a.length

Но если вы хотите получить доступ к то же свойство на b , что было бы небезопасно, и компилятор сообщает об ошибке:

val l = b.length // ошибка: переменная ‘b’ может быть нулевой

Но вам все равно нужен доступ к этому свойству, верно? Есть несколько способов сделать это.

Проверка на null в условиях

Во-первых, вы можете явно проверить, является ли b null , и обработать два параметра по отдельности:

val l = if (b != null) b.length else -1

Компилятор отслеживает информацию о выполненной вами проверке и разрешает вызов длины внутри if . Поддерживаются и более сложные условия:

весело main() {
// начало выборки
val b: Строка? = «Котлин»
если (b != null && b.length > 0) {
print(«Строка длины ${b.length}»)
} еще {
распечатать(«Пустая строка»)
}
//конец выборки
}

Обратите внимание, что это работает только там, где b является неизменяемым (это означает, что это локальная переменная, которая не изменяется между проверкой и ее использованием, или это член val , который имеет резервное поле и не может быть переопределен), потому что в противном случае могло бы случиться так, что b меняется на null после проверки.

Безопасные вызовы

Второй вариант доступа к свойству переменной, допускающей значение NULL, — использование оператора безопасного вызова ?. :

весело main() {
// начало выборки
Вал а = «Котлин»
val b: Строка? = ноль
println(b?.length)
println(a?.length) // Бесполезный безопасный вызов
//конец выборки
}

Это возвращает b.length , если b не равно null, и null в противном случае. Тип этого выражения Внутр.? .

Безопасные звонки полезны в цепочках. Например, Боб — сотрудник, который может быть назначен в отдел (или нет). Этот отдел, в свою очередь, может иметь другого сотрудника в качестве руководителя отдела. Чтобы получить имя начальника отдела Боба (если он есть), вы пишете следующее:

bob?.department?.head?.name

Такая цепочка возвращает null , если какое-либо из свойств в ней равно ноль .

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

весело main() {
// начало выборки
val listWithNulls: List = listOf(«Kotlin», null)
for (элемент в listWithNulls) {
item?.let { println(it) } // печатает Kotlin и игнорирует null
}
//конец выборки
}

Безопасный вызов также может быть размещен слева от назначения. Затем, если один из получателей в цепочке безопасных вызовов имеет значение null , присваивание пропускается, а выражение справа вообще не оценивается:

// Если `person` или `person.department` равно null , функция не вызывается:
человек?.отдел?.голова = managerPool.getManager()

Обнуляемый приемник

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

Например, функция toString() определена для получателя, допускающего значение NULL. Он возвращает строку «null» (в отличие от значения null ). Это может быть полезно в определенных ситуациях, например, запись в журнал:

val person: Person? = ноль
logger.debug(person.toString()) // Записывает «null», исключение не выдается

Если вы хотите, чтобы ваш вызов toString() возвращал строку, допускающую значение NULL, используйте оператор безопасного вызова ?. :

переменная отметка времени: мгновенно? = ноль
val isoTimestamp = timestamp?.toString() // Возвращает строку? объект, который является `null`
если (isoTimestamp == ноль) {
// Обрабатываем случай, когда временная метка была `null`
}

Оператор Элвиса

Когда у вас есть ссылка, допускающая значение NULL, b , вы можете сказать «если b не null , используйте его, иначе используйте какое-то ненулевое значение»:

val l: Int = if (b != null) b. length else -1

Вместо записи полного выражения if вы также можете выразить это с помощью оператора Элвиса ?: :

val l = b?.length ?: -1

Если выражение слева от ?: не равно null , оператор Элвиса возвращает его, в противном случае он возвращает выражение справа. Обратите внимание, что выражение в правой части оценивается, только если левая часть равна null .

Поскольку throw и return являются выражениями в Котлине, их также можно использовать в правой части оператора Elvis. Это может быть удобно, например, при проверке аргументов функции:

fun foo(node: Node): String? {
val parent = node.getParent() ?: вернуть ноль
val name = node.getName() ?: throw IllegalArgumentException(«ожидаемое имя»)
// …
}

!! оператор

Третий вариант для любителей NPE: ненулевой оператор утверждения ( !! ) преобразует любое значение в тип, отличный от null, и выдает исключение, если значение равно null . Вы можете написать б!! , и это вернет ненулевое значение b (например, String в нашем примере) или вызовет NPE, если b равно null :

val l = b!!.length

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

Безопасные слепки

Обычные приведения могут привести к ClassCastException , если объект не относится к целевому типу. Другой вариант — использовать безопасные приведения, которые возвращают null , если попытка не удалась:

val aInt: Int? = а как? Int

Коллекции типа, допускающего значение NULL

Если у вас есть коллекция элементов типа, допускающего значение NULL, и вы хотите отфильтровать ненулевые элементы, вы можете сделать это с помощью filterNotNull :

val nullableList: List = список(1, 2, ноль, 4)
val intList: List = nullableList.