В этом проекте мы будем сопрягать реле с микроконтроллером PIC PIC16F877A. Реле - это механическое устройство для управления включением или выключением высоковольтных и сильноточных приборов с более низких уровней напряжения. Реле обеспечивает изоляцию между двумя уровнями напряжения и обычно используется для управления приборами переменного тока. В электронике доступны различные типы реле, от механических до твердотельных. В этом проекте мы будем использовать механическое реле.
В этом проекте мы будем делать следующие вещи:
- Мы создадим интерфейс переключателя для ввода от пользователя.
- Управляйте лампочкой 220 В переменного тока с помощью реле 5 В.
- Для управления реле мы будем использовать транзистор BC547 NPN, а транзистор будет управляться от PIC16F877A. Светодиод уведомит реле о состоянии ВКЛ или ВЫКЛ.
Если вы плохо знакомы с микроконтроллером PIC, начните с раздела «Начало работы с микроконтроллером PIC».
Требуемый компонент:
- PIC16F877A
- Кристалл 20 МГц
- 2 шт 33pF керамические
- 3 шт. Резистора 4,7 кОм
- Резистор 1к
- 1 светодиод
- BC547 Транзистор
- 1N4007 Диод
- 5V кубическое реле
- Лампочка переменного тока
- Макетная плата
- Провода для соединения деталей.
- Адаптер 5 В или любой источник питания 5 В с допустимым током не менее 200 мА.
Реле и его работа:
Реле работает так же, как и обычный переключатель. В механических реле используется временный магнит, сделанный из электромагнитной катушки. Когда мы обеспечиваем достаточный ток через эту катушку, она включается и тянет за руку. Благодаря этому цепь, подключенная к реле, может быть замкнута или разомкнута. Вход и выход не имеют электрических соединений и поэтому изолируют вход и выход. Узнайте больше о реле и его конструкциях здесь.
Реле можно найти в различных диапазонах напряжения, таких как 5 В, 6 В, 12 В, 18 В и т. Д. В этом проекте мы будем использовать реле 5 В, так как наше рабочее напряжение здесь составляет 5 Вольт. Это 5V кубических реле способны переключатель 7A нагрузки при 24 или 10A нагрузки при 110VAC. Однако вместо этой огромной нагрузки мы будем использовать лампочку 220 В переменного тока и переключать ее с помощью реле.
Это реле 5V, которое мы используем в этом проекте. Номинальный ток четко указан для двух уровней напряжения: 10 А при 120 В переменного тока и 7 А при 240 В переменного тока. Нам нужно подключить нагрузку на реле меньше указанного номинала.
Это реле имеет 5 контактов. Если мы увидим распиновку, мы увидим -
L1 и L2, по выводам на внутренних электромагнитных катушках. Мы должны контролировать эти два контакта для включения реле « ON » или « OFF ». Следующие три контакта - POLE, NO и NC. Полюс соединен с внутренней металлической пластиной, которая меняет свое соединение при включении реле. В нормальном состоянии ПОЛЮС закорочен с NC. NC означает нормально подключенный. Когда реле включается, полюс меняет свое положение и соединяется с NO. НЕТ означает нормально открытый.
В нашей схеме мы выполнили релейное соединение с транзистором и диодом. Реле с транзистором и диодом доступно на рынке как релейный модуль, поэтому, когда вы используете релейный модуль, вам не нужно подключать его схему драйвера (транзистор и диод).
Реле используется во всех проектах домашней автоматизации для управления бытовой техникой переменного тока.
Принципиальная электрическая схема:
Полная схема подключения реле к микроконтроллеру PIC приведена ниже:
В приведенном выше схематическом PIC16F877A используется, где на порт B светодиод и транзистор подключен, который дополнительно управляется с помощью переключателя TAC в БВУ. R1 обеспечивают ток смещения для транзистора. R2 - это понижающий резистор, используемый через тактильный переключатель. Когда переключатель не нажат, будет выдан логический 0. 1N4007 является зажим диод, используемый для электромагнитной катушки реле. Когда реле выключится, есть вероятность скачков высокого напряжения.и диод подавит это. Транзистор необходим для управления реле, поскольку он требует тока более 50 мА, который микроконтроллер не может обеспечить. Мы также можем использовать ULN2003 вместо транзистора, это более разумный выбор, если для приложения требуется более двух или трех реле, проверьте схему модуля реле. Светодиод через порт RB2 уведомит « реле включено ».
Окончательная схема будет выглядеть так:
Вы можете научиться управлять реле с помощью Arduino здесь, и если вы действительно заинтересованы в реле, проверьте все схемы реле здесь.
Пояснение к коду:
В начале файла main.c мы добавили строки конфигурации для pic16F877A, а также определили имена контактов в PORTB.
Как всегда, сначала нам нужно установить биты конфигурации в микроконтроллере pic, определить некоторые макросы, включая библиотеки и частоту кристалла. Вы можете проверить все эти коды в полном коде, приведенном в конце. Мы сделали RB0 в качестве входа. К этому выводу подключен переключатель.
#включают
После этого мы вызвали функцию system_init (), в которой мы инициализировали направление вывода, а также настроили состояние выводов по умолчанию.
В функции system_init () мы увидим
недействительным system_init (недействительным) { TRISBbits.TRISB0 = 1; // Установка Sw в качестве входных данных TRISBbits.TRISB1 = 0; // установка светодиода в качестве вывода TRISBbits.TRISB2 = 0; // установка вывода реле как выхода LED = 0; РЕЛЕ = 0; }
В основной функции мы постоянно проверяем нажатие переключателя, если мы обнаруживаем нажатие переключателя, обнаруживая высокий логический уровень на RB0; мы ждем некоторое время и смотрим, нажат ли переключатель по-прежнему или нет, если переключатель все еще нажат, мы инвертируем состояние контакта РЕЛЕ и светодиода.
недействительный основной (недействительный) { system_init (); // Система готовится while (1) { if (SW == 1) {// нажата кнопка __delay_ms (50); // задержка дребезга if (SW == 1) {// переключатель все еще нажат LED =! LED; // инвертируем статус вывода. РЕЛЕ =! РЕЛЕ; } } } возврат; }
Полный код и демонстрационное видео для этого интерфейса реле приведены ниже.