Trong các công viên lớn hay trong các hội chợ triển lãm ngoài trời, hội hoa xuân, nhà hàng bên bờ sông hay bến tàu…Các nơi này không thể thiếu các dãy đèn màu nhấp nháy, làm tăng vẽ mỹ lệ hấp dẫn cho khách đến dạo chơi. Trước đây các dãy đèn này được điều khiển bởi các khóa điện lá kim, đặt nằm chung quanh các đĩa lồi lõm, nó được đóng mở theo các bánh cam kéo quay bởi một motor AC, chổ lồi sẽ có tác dụng đóng mạch làm sáng đèn và chổ lõm sẽ có tác dụng làm hở mạch để tắt đèn. Cách điều khiển cơ học này có nhiều khuyết điểm, do có ma sát nên độ bền kém, thay đổi chậm, ít kiểu nhấp nháy, phát ra tia lữa tạo xung nhiễu mạnh,…Ngày nay, người thợ điện tử nào cũng đều biết có thể dùng TRIAC làm khóa điện bán dẫn đóng mở các dãy đèn vài ngàn Watt một cách nhẹ nhàng, do không dùng nguyên lý cơ học nên độ bền cao, gọn nhẹ, không phát tia lữa điện nên ít gây nhiễu vô tuyến, và có thể tạo nhịp tắt mở nhanh hơn quán tính của đèn. Hiện nay trên thị trường cũng đã có bán hộp điều khiển 6 dãy đèn bóng 220V dùng 6 TRIAC với quy trình điều khiển tắt mở dùng một vài ic logic dời bit họ 74xx. Kiểu mạch này còn đơn điệu, có kiểu dáng nhấp nháy không đa dạng. Cách hay nhất là chúng ta dùng một ic lập trình như AT89C51, hay ít chân hơn với AT89C2051 đề lập trình, tạo ra nhiều nhiều kiểu dáng nhấp nháy lạ mắt, cấu trúc mạch không những còn gọn hơn, mà còn ít tốn kém hơn nữa, dễ thay đổi chương trình, dễ bảo trì. Ở đây, tôi ngồi nhớ lại các kinh nghiệm đã làm và sẽ viết lại các cách thức dùng ic lập trình AT89C51, cho kết hợp với nhiều TRIAC để làm các dãy đèn màu trang trí cho các hội hoa xuân, cho xe hoa, cho các công viên lớn và nhất là cho các cuộc triển lãm được tổ chức ở ngoài trời. Tôi nghĩ bài viết sẽ có ích với các Bạn thợ điện tử có làm thêm công việc trang trí đèn quảng cáo.
Trước hết hãy nói đến cách tạo ra các dãy đèn màu
1. Tìm hiểu tác dụng đóng mở của transistor và SCR
Hình vẽ cho thấy chúng ta dùng các transistor NPN và PNP làm các khóa điện đóng mở dòng cấp cho bóng đèn bằng mức volt cao thấp đặt trên chân B.
Trong mạch: Với transistor NPN, bóng đèn đặt trên chân C, transistor sẽ dẫn điện khi chân B được cấp mức volt cao, cao hơn chân B. Với transistor PNP thì transistor sẽ dẫn điện khi mức volt chân B xuống thấp, thấp hơn chân E. Transistor chỉ là loại khóa điện đơn hướng, dòng qua tải chỉ chảy theo một chiều, transistor là khóa điện không có tính tự giữ, sự tắt mở của bóng đèn trên chân C thay đổi theo mức volt thấp cao trên chân B.
Chúng ta xem các transistor loại hai mối nối BJT có cấu trúc tương đương với 2 diode, Bạn xem hình, do vậy đo kiểm tra các transistor là đo kiểm tra tính thuận nghịch của 2 diode. Nếu cả 2 diode đều tốt là transistor tốt.
SCR cũng là một khóa điện bán dẫn đóng mở theo mức áp trên cực cổng Gate, và SCR cũng là một khóa điện đơn hướng nhưng có tính tự giữ. Người ta có thể dùng 2 transistor hỗ bổ ráp đẳng hiệu như một SCR.
Hình vẽ cho thấy, cách dùng 2 transistor ráp thành một SCR, Bạn thấy dòng IB của Q2 sẽ là dòng IC của Q1 và dòng IB của Q1 là dòng IC của Q2. Nên khi Q2 ngưng dẫn, nó không cấp dòng IB cho Q1, và khi Q1 ngưng dẫn nói cũng sẽ không cấp dòng IB cho Q2. Điều này cho thấy khi Q2 tắt, Q1 cũng tắt và khi Q2 dẫn thì Q1 cũng dẫn, do vậy nó có thể dùng như một khóa điện đơn hướng có tính tự giữ như SCR.
Nguyên lý làm việc của SCR như sau:
Hình vẽ cho thấy, khi cực cổng (tức chân B của Q2) không được cấp mức volt mòi, áp dương, Q2 tắt thì Q1 cũng tắt và đèn LP1 không sáng. Nếu cực cổng được cấp mức áp dương, Q2 sẽ dẫn điện, dòng IC của Q2 lại chính là dòng IB của Q1, Q1 dẫn sẽ cấp lại dòng IB cho Q2 và giữ cho Q2 luôn ở trạng thái bão hòa dù cho lúc này không còn mức áp mòi trên chân B của Q2 nữa. Q3 cũng có cách làm việc tương tự.
Trong mạch, các điện trở R1, R2 (10K) duǹg để tăng độ ổn định nhiệt. Chúng at cũng có thể lấy chân B của transistor Q1 làm cực cổng, tuy nhiên cực cổng này ḱch chạy với mức volt thấp. Tóm lại khi đèn đã sáng thì nó sẽ luôn sáng do tính tự giữ. Muốn tắt đèn chúng ta phải làm tắt SCR, như cho ngắt nguồn hay cho nốt tắt ngang SCR.
Cách đo kiểm tra các SCR: Bạn dùng một Ohm kế, lấy thang đo Rx1 để có dòng chảy trên dây đo lớn. Khi đặt dây đỏ trên chân K (cho bơm dòng vào chân K) và dây đen trên chân Anode (cho hút dòng ra trên chân A), kim sẽ không lên vì không có dòng chảy qua SCR. Bây giờ “tìm cách” cho chân cổng G chạm nhẹ vào chân Anode, kim sẽ lên, SCR đã vào trạng thái dẫn điện, và lúc này cho bỏ chân cổng ra khỏi chân Anode, kim vẫn tiếp tục lên, do khi SCR đã dẫn điện nó có tính tự giữ nên tiếp tục dẫn điện.
Tôi dùng 4 hình ghép lại tạo hình động trên, dùng hình này để Bạn thấy hoạt động của các SCR khác với các transistor. Hình động này có 4 trình tự:
Trình tự 1: Khi S1 đóng kín, và S2 ở mức áp thấp 0V, lúc này transistor Q1 tắt và SCR Q2 cũng tắt nên các đèn LP1, LP2 đều không sáng.
Trình tự 2: Khi S1 đóng kín, S2 chuyển lên mức áp cao, lúc này chân B của transistor Q1 có phân cực, Q1 dẫn đèn LP1 sáng, lúc này cực cổng của SCR Q2 được cấp mức áp mòi, Q2 dẫn và đèn LP2 sáng.
Trình tự 3: Khi S1 đóng kín, S2 trở lại mức áp thấp 0V, lúc này chân B của Q1 mất áp phân cực, Q1 tắt và đèn LP1 tắt. Chân cổng của SCR Q2 cũng mất mức áp mòi, nhưng do có tính tự giữ nên Q2 vẫn ở trạng thái dẫn điện, và đèn LP2 vẫn sáng.
Trình tự 4: Lúc này S1 cho hở mạch, S2 ở mức áp thấp, và khi S1 trở lại đóng kín mạch, lúc này cả Q1 và Q2 đều tắt nên cả LP1, LP2 đều không sáng.
2. Sự khác biệt giữa SCR và TRIAC
* Qua phần trên chúng ta thấy SCR là một khóa điện bán dẫn, mở bằng mức áp mòi trên cực cổng và nó có tính tự giữ. Nhưng SCR là một khóa điện đơn hướng.
* TRIAC có cấu trúc tương đương như hai SCR ghép như hình vẽ, nên TRIAC cũng là khóa điện bán dẫn, cũng có tính tự giữ, nhưng TRIAC là khóa điện song hướng, hai chiều, dòng điện có thể chảy qua TRIAC theo cả hai chiều.Cách đo kiểm tra TRIAC, cũng làm giống như cách đo của SCR, trong cách đo TRIAC, khi Bạn đảo chiều TRIAC, và cho kích cực cổng, nó cũng sẽ vào trạng thái dẫn điện, trong khi đó thì SCR lạ không dẫn điện.
Trong bước 1: Dây đen của Ohm kế trên chân MT2, dây đỏ trên chân MT1, kim không lên, cho chân Gate chạm nhẹ vào chân MT2, kim lên, lúc này để hở chân Gate kim vẫn lên vì có tính tự giữ.
Trong bước 2: Đảo ngược TRIAC, dây đỏ của Ohm kế trên chân MT2, dây đen trên chân MT1, cho chân Gate chạm nhẹ vào chân MT1, kim lên, lúc này để hở chân gate kim vẫn lên vì có tính tự giữ.
TRIAC có 4 cách dùng, Bạn xem hình sau:
3. Dùng PSpice tìm hiểu nguyên lý làm việc của TRIAC:
Trong hình này, chúng ta dùng TRIAC 2N6342, trên chân MT2 cho gắn các dãy dây đèn, các đèn thường là các bóng 5W cho mắc song song và nối thẳng vào đường nguồn 220V. Vậy khi TRIAC dẫn điện nó sẽ cấp dòng cho các dãy đèn sáng. Mạch dùng các điện trở tụ điện R4 – C2 và R5 - C1 để tạo điện áp mòi cực cổng Gate để kích mở TRIAC. Tùy theo góc mở lớn hay nhỏ mà lượng điện cấp cho các dãy đèn nhiều hay ít, chúng ta điều chỉnh các điện trở trong mạch có thể làm thay đổi mức sáng của các dãy đèn. Để hiểu rõ loại mạch này hơn, chúng ta sẽ dùng đến phần mềm PSpice để phân tích mạch.
Trước hết trong trang vẽ của Capture CIS của OrCAD, chúng ta vào các thư viện của PSpice để lấy ra linh kiện và vẽ sơ đồ mạch điện như hình vẽ.
Điều khiển các dãy đèn màu với ic AT89C51
TRIAC và bit đóng mở của ic AT89C51. Sơ đồ mạch điện dùng một cảng của ic lập trình AT89C51 để điều khiển 8 dãy đèn màu.
Sơ đồ mạch điện cho thấy, chúng ta thiết kế một bộ với 8 dãy đèn dùng cho một cảng của ic lập trình AT89C51. Để tạo tính cách ly giữa bo điều khiển và bo đèn chúng ta dùng cách truyền tín hiệu qua opto, trên mỗi đường dùng một Led chỉ thị để xác định trạng thái làm việc của dãy đèn. Toàn phần ráp trên một bo mạch, nó có thể kết nối với các cảng của các ic lập trình, như AT89C2051, AT89C51…
Phân tích mạch:
Mạch điện cho thấy: Trên bo đèn do chúng ta dùng mạch kích thích ráp với các transistor pnp và npn nên phải ráp thêm một mạch nguồn nuôi nhỏ để có áp DC cấp nguồn cho các mạch điện này. Nguồn gồm một biến áp T1, dùng để hạ áp AC và dùng 4 diode nắn dòng để đổi dòng điện xoay chiều ra dạng dòng điện dạng xung một chiều, cho dòng điện nạp vào một tụ hóa lớn C16=2200µF để có mức áp DC ổn định. Ở đây đặt một Led chỉ thị và một điện trở hạn dòng R47=1K.
Mạch thúc với quang transistor có trong các opto ISO4, khi quang transistor bị chiếu sáng, nó sẽ dẫn điện, dòng điện chảy ra trên chân C, kích dẫn 1 transistor pnp Q10, trong mạch chúng ta hạn dòng chân B với điện trở R20=10K, cũng dùng điện trở R19=10K để tăng độ ổn định nhiệt. Khi transistor pnp Q10 dẫn điện, nó kích dẫn transistor npn Q11, và khi transistor Q11 dẫn điện, dòng điện chảy ra trên chân C sẽ làm sáng Led chỉ thị và cấp dòng cho cực cổng và kích dẫn TRIAC Q12, điện trở R23=100 dùng để hạn dòng cực cổng. Ở đây cũng dùng điện trở hạn dòng chân B với R22=2.2K và dùng điện trở R21=5.6K để tăng hệ số ổn định nhiệt.
Tóm lại, mạch làm việc như sau: Khi chân ra của một cảng xuất bit 0, mức áp thấp sẽ làm sáng Led trong opto, quang transistor bị kích thích, nó dẫn điện và kích dẫn các transistor pnp, npn và kích dẫn TRIAC, TRIAC cấp dòng làm sáng dãy đèn màu gắn trên chân MT2. Nếu ic lập trình xuất bit 1 với mức volt cao, sẽ không có dòng cấp cho Led trong opto, Led tắt, TRIAC không được cấp dòng kích thích ở cực cổng nó sẽ làm tắt dãy đèn màu trên chân MT2.
Dùng hình động để cho thấy nguyên lý hoạt động của mạch.
* Khi ic lập trình xuất bit 0, Led trong opto sáng, các transistor Q4, Q5 dẫn điện, cực cổng của TRIAC được cấp dòng mòi, TRIAC dẫn điện vả cấp dòng làm sáng các dãy đèn trên chân MT2.
* Khi ic lập trình xuất bit 1, Led trong opto tắt, các transistor Q4, Q5 ngưng dẫn, cực cổng của TRIAC không được cấp dòng mòi, TRIAC không dẫn điện và làm tắt các dãy đèn trên chân MT2.
Mạch điện cơ bản chạy ic AT89C51.
Muốn dùng ic lập trình AT89C51 để điều khiển các dãy đèn, Bạn hãy ráp các phần mạch cơ bản như hình trên:
* Dùng đường nguồn 5V có độ ổn định tốt cấp cho ic. Chân 20 cho nối masse, chân 40 cho nối với nguồn 5V.
* Trên chân số 9 gắn tụ 10µF và điện trở 8.2K tạo chức năng reset mỗi khi bo được cấp điện.
* Trên chân 18, 19 gắn thạch anh định tần, ở đây dùng thạch anh 12MHz, vậy chu kỳ lệnh là 1µs, gắn 2 tụ nhỏ 33pF bù nhiệt ổn tần.
* Trên chân 31 cho lên mức áp 5V để khai báo là chỉ dùng bộ nhớ trong.
* Trên cảng p0 dùng thanh 8 điện trở 10Kx8 cho treo áp để ổn định mức bit 1 đối với cảng này.
Với các mạch điện như trên, ic lập trình AT89C51 sẽ sẳn sàng chạy các câu lệnh mà Bạn đã cho nạp vào bộ nhớ EEPROM của nó. Các bit cho xuất nhập trên 4 cảng, loại cảng 8 bit, đó là cảng p0, p1, p2, p3.
Bây giờ công việc còn lại của chúng ta là viết các chương trình nguồn dùng để điều khiển các dãy đèn màu làm việc thẳng với đường nguồn nhà đèn 220V.
Viết các chương trình nguồn.
Chúng ta biết để làm sáng một dãy đèn thì dùng bit 0 và để tắt một dãy đèn thì dùng bit 1. Do vậy chúng ta có thể chọn bit trên các đường ra bằng câu lệnh set bit (setb) hay clear bit (clr). Cũng có thể dùng lệnh move (mov) để mỗi câu lệnh cùng lúc tác động vào 8 bit.
Phần 1: hãy viết chương trình nguồn ở cấp độ đơn giản trực quan.
DOWNLOAD:
Ghi nhận:
Trong chương trình nguồn này, chúng ta chủ yếu dùng câu lệnh mov để đặt 8 bit cho xuất ra trên cảng p1. Ứng với bit 0 là dãy đèn sáng và bit 1 là dãy đèn sẽ tắt. Dùng đoạn chương trình làm trể để có nhịp nhấp nháy rõ nét. Các kiểu nhấp nháy viết thành các chương trình con cho đặt tên nhãn là kiểu 1, kiểu 2, kiểu 3, kiểu 4…, và khi muốn dùng kiểu nhấp nháy nào thì dùng câu lệnh call để gọi ra. Qua các câu lệnh trên Bạn thấy dùng ic lập trình để định kiểu nhấp nháy của các dãy đèn cực kỳ đơn giản. Phải không?
Đoạn chương trình này Bạn có thể viết trong trang văn bản của trình MIDE-51, viết xong, Bạn đặt cho nó một cái tên với họ là .asm, rồi gõ phím F9 để cho dịch các câu lệnh ra dạng mã viết ở dạng hệ thập lục phân, các mã lệnh này đặt trong file có họ là .hex. Bây giờ Bạn dùng hộp nạp ROM, cho nạp các câu mã lệnh này vào nằm trong bộ nhớ EEPROM của ic AT89C51, thế là xong chuyện, bây giờ cho gắn ic AT89C51 vào bo thực hành, Bạn sẽ thấy các Led chỉ thị trên bo nhấp nháy theo đúng các câu lệnh mà Bạn đã soạn. Và nếu gắn các dãy đèn vào bo Bạn sẽ thấy cả một trời sao nhấp nháy đúng theo ý muốn của Bạn. Thích không?
Hình này cho thấy chương trình nguồn đã được viết trong trang văn bản của M-IDE for MSC51 và sau đó cho dịch ra file .hex để cho nạp các câu mã lệnh vào bộ nhớ trong của ic AT89C51.
Phần 2: Dùng bảng để tạo ra các dạng nhấp nháy cho các dãy đèn.
Trong đoạn chương trình nguồn này chúng ta tạo dạng nhấp nháy của các dãy đèn bằng cách đặt các bit 0 vào các đoạn mã tạo ra trong bảng, và dùng câu lệnh movc a, @a+dptr để lấy các đoạn mã này xuất ra trên các cảng tùy chọn để tắt mở đèn theo thiết kế của Bạn.
DOWNLOAD:
Trong cách viết này, Bạn dễ dàng định hình cho các kiểu nhấp nháy của các dãy đèn, trước hết hãy tạo bảng mã, mỗi mã 8 bit, sau đó định kiểu nhấp nháy, muốn dãy đèn nào sáng thì đặt bit 0, muốn tắt thì đặt bit 1. Sau cùng đếm xem trong bảng có bao nhiêu mẫu mã để khai báo số lần lấy mã cho xuất ra trên các cảng.
Sau khi đã có chương trình nguồn, cho dịch ra các dòng mã hệ thập lục phân, nạp các dòng mã này vào nằm trong bộ nhớ ROM của các ic lập trình là xong chuyện. Đơn giản quá phải không?