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

Блокирующие и неблокирующие сокеты

До сих пор в этой главе вы видели, что select() может быть
используется для определения доступности данных для чтения из сокета.
Однако бывают случаи, когда полезно иметь возможность вызывать
send(), recv(), connect(), accept() и т. д. без необходимости
дождитесь результата.

Допустим, вы пишете веб-браузер.
Вы пытаетесь подключиться к веб-серверу, но сервер не
отвечает. Когда пользователь нажимает (или щелкает) кнопку остановки,
вы хотите, чтобы API connect() прекратил попытки подключения.

С тем, что вы уже узнали, это невозможно. Когда
вы вызываете функцию connect(), ваша программа не восстанавливает
управления до тех пор, пока либо соединение не будет установлено, либо ошибка
имеет место.

Решение этой проблемы называется «неблокирующий
сокетов».

По умолчанию сокеты TCP находятся в «блокирующем» режиме.
например, когда вы вызываете recv() для чтения из потока, управление
не возвращается в вашу программу до тех пор, пока хотя бы один байт
данные считываются с удаленного сайта. Этот процесс ожидания
появление данных называется «блокировкой». То же самое
true для API write(), API connect() и т. д. Когда вы
запустить их, соединение «блокируется» до тех пор, пока операция не будет
полный.

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

Если вы вызовете «recv()» в неблокирующем режиме, он вернет
любые данные, которые система имеет в своем буфере чтения для этого
разъем. Но он не будет ждать этих данных. Если буфер чтения
пуст, система немедленно вернется из recv()
говоря: «Операция будет
Блок!»».

То же самое относится и к API send(). Когда вы вызываете send(),
он помещает данные в буфер, и когда они считываются
удаленный сайт, он удаляется из буфера. Если буфер когда-либо
становится «полным», система вернет ошибку «Операция
Блокировал бы» при следующей попытке записи в него.

Неблокирующие сокеты имеют аналогичный эффект на accept()
API. Когда вы вызываете accept(), а клиента еще нет
подключившись к вам, он вернет «Операция будет заблокирована», чтобы
сказать вам, что он не может завершить accept() без
жду…

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

Возвращаясь к примеру с «веб-браузером», если поставить
сокет, который подключался к веб-серверу в
неблокирующий режим, вы можете вызвать connect(), распечатать
сообщение о том, что «подключение к хосту www. floofy.com…», затем
может быть, сделать что-то еще, и они вернутся, чтобы подключиться()
опять таки. Если connect() работает во второй раз, вы можете напечатать
«Хозяин связался, жду ответа…», а затем начните звонить
отправить() и получить(). Если connect() все еще ожидает выполнения, вы
может проверить, нажал ли пользователь кнопку «отмена»,
и если это так, вызовите close(), чтобы прекратить попытки подключения.

Неблокирующие сокеты также можно использовать в сочетании с
API выбора(). На самом деле, если вы достигнете точки, в которой вы
на самом деле ХОЧУ ждать данных на сокете, который был
ранее помеченный как «неблокирующий», вы можете имитировать
блокируя recv(), просто вызвав сначала select(), а затем
прием().

Режим «неблокирующий» устанавливается изменением одного из
«флаги» сокета. Флаги представляют собой серию битов, каждый из которых
представляющие различные возможности сокета. Итак, чтобы
для включения неблокирующего режима требуется три шага:

  1. Вызов API fcntl() для получения сокета
    текущие настройки флага дескриптора в локальный
    переменная.

  2. В нашей локальной переменной установите O_NONBLOCK
    (неблокирующий) флаг включен. (осторожно, конечно, не
    вмешиваться в другие флаги)

  3. Вызовите API fcntl(), чтобы установить флаги для
    дескриптор значения в нашей локальной переменной.

Как подключить шнур питания электрической плиты

По

Тимоти Тиле

Тимоти Тиле

Тимоти Тиле является местным электриком № 176 IBEW с более чем 30-летним опытом работы в жилых, коммерческих и промышленных электросетях. Он имеет степень младшего специалиста в области электроники и прошел четырехлетнее обучение. Он писал для The Spruce о проектах электропроводки и домашней установки более восьми лет.

Узнайте больше о The Spruce’s
Редакционный процесс

Обновлено 02.07.22

Факт проверен

Джессика Врубель

Факт проверен
Джессика Врубель

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

Узнайте больше о The Spruce’s
Редакционный процесс

Ель / Кевин Норрис

Обзор проекта

Электрическая плита представляет собой отдельно стоящую единицу, состоящую из духовки и варочной панели. Это 240-вольтовое устройство обычно подключается к розетке диапазона, которая питается от 40-амперной или 50-амперной цепи, предназначенной только для диапазона. Шнуры более старых моделей (до 1996 г.) имели шнуры с тремя контактами для подключения к розеткам с тремя разъемами, а новые модели имеют четыре контакта для розеток с четырьмя разъемами. Вы можете использовать любой тип шнура, в зависимости от типа вашей розетки.

Шаги установки трехжильного и четырехжильного шнура аналогичны, но имеют некоторые ключевые отличия. Диапазоны, разводимые для трехжильных шнуров, могут иметь только три клеммы для проводки: одну нейтральную и две «горячих» присоединения. Если есть заземляющий винт, он должен быть электрически соединен с нейтральной клеммой металлической полосой или проводом. Это соединение заземляет корпус прибора через нулевой провод шнура.

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

Смотреть сейчас: Как подключить шнур питания к электрической плите

Предупреждение

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

Оборудование/инструменты

  • Крестовая отвертка или гаечный ключ
  • Плоскогубцы с шипами и канавками (по желанию)

Материалы

  • 40- или 50-амперный шнур для электроплиты, сертифицированный UL
  • Зажим для разгрузки от натяжения, подходящий по размеру к шнуру диапазона

Ель / Кевин Норрис

  1. Снимите крышку соединения проводов

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

    Ель / Кевин Норрис

  2. Изменить заземление, если необходимо

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

    При необходимости измените соединение «земля-нейтраль» в зависимости от типа кабеля, который вы устанавливаете:

    Для четырехжильного шнура :

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

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

    Для трехжильного шнура :

    Если нет винта заземления, никаких изменений не требуется.

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

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

    Ель / Кевин Норрис

  3. Подсоедините шнур с четырьмя контактами (только четырехконтактный)

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

    Наконечник

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

    Ель / Кевин Норрис

  4. Подсоедините трехжильный шнур (только трехжильный)

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

    Ель / Кевин Норрис

  5. Установите зажим для снятия натяжения

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

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

    Ель / Кевин Норрис

  6. Установите на место крышку

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

    Ель / Кевин Норрис

Источники статьи

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