PC817 là một optoisolator bao gồm một diode hồng ngoại và phototransistor. Trong các mạch điện, chúng tôi chủ yếu sử dụng các bộ lọc để loại bỏ tiếng ồn.
Mạch dựa trên tụ điện và điện trở luôn loại bỏ tạp âm từ tín hiệu đến nhưng giá trị của tụ điện và điện trở luôn phụ thuộc vào tín hiệu đến.
Mạch này chỉ áp dụng khi tín hiệu đến có một số thông tin hoặc dữ liệu khi chúng ta chỉ cần chuyển tiếp tín hiệu từ phần này sang phần khác nhưng tín hiệu có nhiễu, thì chúng ta có thể sử dụng kết hợp giữa người gửi và nhận IR.
Trong mạch IC photoisolator PC817, IR nhận tín hiệu nhiễu dưới dạng nguồn từ mạch này và chuyển nó đến phần kia thông qua tín hiệu IR. Phần còn lại nhận tín hiệu sau đó thực hiện theo thiết kế của mạch.
PC817 bao gồm một diot phát quang LED và điện trở quang. Chúng được ghép nối với nhau về mặt quang học.
Tín hiệu điện chuyển giữa đầu vào và đầu ra một cách quang học mà không có bất kỳ kết nối vật lý nào giữa cả hai bên.
Mạch IR có thể được thiết kế bằng tay nhưng chúng tôi có một vi mạch tích hợp kích thước nhỏ và được thiết kế sẵn hoàn toàn được gọi là PC817 Optocoupler. PC817 Optocoupler có kích thước nhỏ và có nhiều gói.
Nó có thể được kết nối trực tiếp với bất kỳ thiết bị một chiều điện áp thấp hoặc bộ vi điều khiển nào.
Các điện áp đầu vào sẽ có tác động như nhau từ mọi phía trên optocoupler, nó sẽ chỉ chuyển tín hiệu đến bộ thu và sau đó bộ thu sẽ đưa ra tín hiệu logic như đầu ra.
Optocoupler có nhiều công dụng do kích thước nhỏ và gọn như một thao tác điều khiển.
Sơ đồ cấu hình chân và giải thích chức năng của mỗi chân. Trong sơ đồ sơ đồ chân này của PC817, pin1 và pin2 là các phần của phía đầu vào và pin3 - pin4 là các chân đầu ra.
INPUT | ||
ANODE | PIN 1 | Chân 1 là chân cực dương của đầu vào IR trong Optocoupler. Nó sẽ cung cấp tín hiệu đầu vào logic cho IR bên trong. |
CATHODE | PIN 2 | Chân 2 là chân cực âm của IR trong bộ ghép quang. Nó sẽ cung cấp cho IR để tạo điểm chung với mạch và nguồn điện. |
OUTPUT | ||
COLLECTOR | PIN 3 | Chân 3 là chân đầu ra của bộ thu IR bên trong của optocoupler. Nó sẽ đưa ra đầu ra logic bằng cách nhận tín hiệu IR. |
EMITTER | PIN 4 | Chân 4 là chân nối đất cho bộ thu IR. Nó sẽ được sử dụng để làm điểm chung với Nguồn điện và mạch điện. |
Hoạt động của PC817 rất đơn giản nhưng để sử dụng nó với các thiết bị khác nhau đi kèm với các thông số kỹ thuật.
Bộ ghép quang ở đầu vào yêu cầu dòng điện giới hạn một điện trở nhưng ở đầu ra, chúng ta sẽ cần kết nối chân đầu ra logic với chân nguồn.
Bất cứ khi nào tín hiệu IR sẽ được tạo ra tại thời điểm đó trạng thái logic sẽ được thay đổi từ 1 đến 0, do sự thay đổi trong dòng điện.
Mạch hoàn toàn đơn giản nhưng điện trở sẽ bảo vệ nó ở đầu vào ở điện áp CAO.
Optocoupler chỉ là một mạch kích thước nhỏ của máy thu và người gửi hồng ngoại nhưng trong trường hợp tạo ra nó với bên ngoài bằng cách sử dụng máy gửi và máy thu IR gây ra nhiều vấn đề.
Đầu tiên, mạch được làm thủ công có kích thước lớn hơn, sau đó trong trường hợp có thiết bị nhận IR, bộ gửi IR của bộ ghép hoặc bộ thu tự động có thể bị ảnh hưởng bởi các tín hiệu IR khác.
Optocoupler được làm thủ công có mức điện áp hoạt động điện áp thấp so với PC817 này.
Optocoupler có nhiều công dụng nhưng do lĩnh vực IOT ngày càng gia tăng từ năm 2012 nên optocoupler ngày càng được sử dụng nhiều hơn trong cuộc sống hàng ngày để điều khiển các thiết bị.
Trong IoT, đặc biệt là tự động hóa gia đình hoặc điều khiển tải nặng, chúng ta cần kiểm soát tải AC bằng tác động của sự thay đổi tần số.
Để làm như vậy, chúng ta sẽ cần một dấu thập không. Dấu thập không là phương pháp mà chúng ta nhận được sự thay đổi tín hiệu tần số của điện áp xoay chiều.
Sự thay đổi điện áp cho khả năng điều khiển AC. Tải AC được kiểm soát thêm bởi một số TRIACS.
Các tính năng cơ bản của optocoupler ở đây là cung cấp sự thay đổi trong xung tần số. Bộ ghép quang được kết nối với bộ chỉnh lưu thông qua điện trở CAO watt và bộ chỉnh lưu đang chuyển đổi AC CAO thành DC CAO và điện trở đang giảm điện áp DC.
Điện áp DC đi ra từ điện trở có điện áp thấp hơn nhưng nó có nhiễu không hiệu quả để sử dụng làm tín hiệu. Để chuyển đổi nó thành tín hiệu thích hợp, chúng tôi sử dụng optocoupler.
Bộ ghép quang tạo ra cùng một loại xung đơn cho dù tín hiệu có nhiễu bao nhiêu. Xung đơn này được sử dụng để phát hiện các sự kiện thay đổi tần số được gọi là giao nhau không.
Dấu chéo không này cho phép vi điều khiển điều khiển tải xoay chiều CAO bằng vi điều khiển đơn giản.
Ví dụ về bộ điều chỉnh ánh sáng AC 220V với PC817
Để sử dụng bộ điều chỉnh độ sáng, chúng ta sẽ cần sử dụng bộ vi điều khiển. Ở đây chúng tôi sẽ mô tả một phương pháp để điều khiển bộ điều chỉnh độ sáng bằng Arduino.
Chân không chéo sẽ được sử dụng ở chân ngắt và bất kỳ chân kỹ thuật số nào cũng có thể được sử dụng để điều khiển tín hiệu.
Dưới đây là trong hình ảnh, chúng tôi mô tả các chân cho IR và bộ điều chỉnh độ sáng nhưng các chân này không cụ thể. Để điều khiển bộ điều chỉnh độ sáng bằng Arduino, mã sau sẽ được sử dụng:
#include <TimerOne.h> volatile int i = 0; // Variable to use as a counter volatile boolean zero_cross = 0; // Boolean to store a "switch" to tell us if we have crossed zero int AC_pin = 3; // Output to Opto Triac int dim = 128; // Dimming level (0-128) 0 = on, 128 = 0ff int freqStep = 77; // This is the delay-per-brightness step in microseconds. int a = 0; int pin = 13; int data = 0; void setup() { Serial.begin(9600); pinMode(AC_pin, OUTPUT); // Set the Triac pin as output attachInterrupt(0, zero_cross_detect, RISING); // Attach an Interupt to Pin 2 (interupt 0) for Zero Cross Detection Timer1.initialize(freqStep); // Initialize TimerOne library for the freq we need Timer1.attachInterrupt(dim_check2, freqStep); } void zero_cross_detect() { zero_cross = true; // set the boolean to true to tell our dimming function that a zero cross has occured i = 0; digitalWrite(AC_pin, LOW); } // Turn on the TRIAC at the appropriate time void dim_check2() { if (zero_cross == true) { if (i >= dim) { digitalWrite(AC_pin, HIGH); // turn on light i = 0; // reset time step counter zero_cross = false; // reset zero cross detection } else { i++; // increment time step counter } } } void loop() { if (Serial.available()) { a++; if (a == 1) data = Serial.read(); if (a == 2) { pin = Serial.read(); a = 0; dim = data; } } }
Đoạn mã trên mô tả cách có thể sử dụng zero-cross với Arduino và cách Arduino có thể điều khiển điện áp cao. Mã chỉ dành cho một bộ điều chỉnh độ sáng để tạo ra nó cho nhiều bộ điều chỉnh độ sáng, mã sẽ yêu cầu một số sửa đổi.
https://www.youtube.com/watch?v=RcG2YG8D7tI
Anh em có thể chưa biết: