Từ những số liệu đã tính toán cũng nhƣ kế thừa ta tiến hành lắp đặt PNLMT lên trên trụ số 4 (Hình 3.9), đấu nối dây xuống vị trí hộp điện của trụ đèn.
Hình 3. 8:
ĐồthịđiệnápkhôngtảitheothờigiancủatấmPin vớigócnghiêngthayđổi
a) b)
Hình 3. 9: Lắp đặt Pin năng lượng Mặt Trời
3.4. THIẾT KẾ BỘ ĐIỀU KHIỂN CHO HỆ THỐNG
Mục này sẽ trình bày cụ thể từng bƣớc ứng dụng kiến thức điện tử để thiết kế và lập trình bộ điều khiển, với mục đích kiểm soát, điều khiển hoạt động của toàn bộ hệ thống trụ đèn: bật/tắt đèn, thu thập, quản lý dữ liệu,… Ngoài ra, bộ điều khiển còn đƣợc thiết kế để phục vụ quá trình theo dõi hệ thống, phục vụ nghiên cứu và đào tạo cho sinh viên khóa sau chuyên ngành Điện tử.
3.4.1. Xác định chức năng của bộ điều khiển
3.4.1.1. Chức năng điều khiển hệ thống
Bộ điều khiển sẽ đƣợc thiết kế để đảm nhiệm chức năng: Tự động bật đèn khi trời tối, tắt đèn khi trời sáng.
Tự động ngắt tải khi Acu cạn điện, đồng thời chuyển tải qua sử dụng nguồn điện dự phòng (nguồn dự bị), tức là sử dụng bộ nguồn AC – DC 12VDC/30A để nuôi tải cho đến khi Acu đƣợc nạp điện đầy trở lại (sang ngày hôm sau).
3.4.1.2. Chức năng phục vụ nghiên cứu và đào tạo
Ngoài chức năng chính đƣợc nêu ra ở Mục 3.4.1.1 thì bộ điều khiển còn đƣợc thiết kế và lập trình để phục vụ công tác theo dõi, đánh giá sự phù hợp và ổn định của hệ thống, phục vụ công tác nghiên cứu, đào tạo cho sinh viên khóa sau:
Hiển thị thời gian thực: ngày/tháng/năm, giờ/phút/giây. Đọc, hiển thị điện áp hiện tại của Acu và Solar (PNLMT).
Ghi lại thời gian (ngày/tháng/năm, giờ/phút) và giá trị điện áp của Acu trƣớc khi bật đèn (khi trời tối), ghi lại thời gian và giá trị điện áp Acu sau khi tắt đèn (khi trời đã sáng). Có đƣợc 2 giá trị điện áp trên ta sẽ đánh giá đƣợc chất lƣợng và tình trạng làm việc của toàn bộ hệ thống. Cụ thể:
o Với giá trị điện áp Acu trƣớc khi bật đèn ta sẽ biết đƣợc Acu có đƣợc nạp đầy sau một ngày hay không, nếu không thì ta cũng sẽ tính đƣợc mất bao lâu
để nạp đầy Acu, đèn đƣợc bật vào lúc nào (vào lúc nào trong ngày đó thì trời tối) (dựa vào giá trị thời gian).
o Với giá trị điện áp Acu sau khi tắt đèn so sánh với giá trị điện áp trƣớc khi bật đèn, ta sẽ biết đƣợc tải đã sử dụng hết bao nhiêu dung lƣợng của Acu. Dựa vào giá trị thời gian chúng ta sẽ tính đƣợc khoản thời gian Acu nuôi đƣợc tải, nếu nhƣ Acu cạn trƣớc khi tắt đèn. Nhƣ vậy, chúng ta sẽ đánh giá đƣợc sự đáp ứng của Solar với Acu và sự đáp ứng của Acu với tải, suy ra đƣợc cấu hình tối ƣu nhất cho hệt thống. Cho dù kết nối với bất kỳ hệ thống nào với cấu hình ra sao, tải nhiều hay ít ta vẫn chọn cho hệ thống đó một cấu hình phù hợp nhất.
Việc ghi chép lại dữ liệu theo dõi hệ thống không chỉ một ngày, mà sẽ lƣu trữ 7 ngày, sang ngày thứ 8 dữ liệu sẽ đƣợc ghi đè lên ngày thứ nhất. Nhƣ vậy, ta không cần phải ngày nào cũng truy cập hệ thống để ghi chép lại số liệu, chỉ cần 1 tuần ghi chép một lần là đủ.
Cho phép truy cập vào cơ sở dữ liệu của hệ thống để theo dõi tình trạng hệ thống. Cho phép xóa toàn bộ dữ liệu đã lƣu trữ (xóa dữ liệu của 7 ngày), hoặc bộ điều khiển sẽ hƣớng dẫn chi tiết truy cập để chọn ngày muốn xóa dữ liệu.
Một chức năng quan trọng không kém nữa là: không mất dữ liệu khi mất điện, tự động khôi phục dữ liệu khi có điện trở lại.
Từ những chức năng trên ta rút ra kết luận: chỉ cần sử dụng bộ điều khiển trên, thì cho dù trƣớc đó chúng ta không tính toán đƣợc hay tính toán không chính xác hệ thống thì chúng ta vẫn có thể có đƣợc những số liệu chính xác để quyết định thiết kế lại cấu hình hệ thống của mình sau đó cho phù hợp.
3.4.2. Thiết kế phần cứng cho bộ điều khiển
Sơ đồ nguyên lý và mạch in của bộ điều khiển đƣợc thiết kế trên phần mềm Protues 7.8, file mạch in đầu ra lƣu duwois dạng PDF.
3.4.2.1. Sơ đồ nguyên lý bộ điều khiển
Bộ điều khiển sẽ gồm 2 bộ phận là: bộ phận xử lý trung tâm (vi điều khiển) và bộ phận chấp hành.
Sơ đồ nguyên lý bộ phận xử lý trung tâmHình 3.10:
Bộ xử lý trung tâm gồm có 5 khối:
- Khối 1: Nguồn ổn áp 7805 - 5V/500mA dùng nuôi toàn bộ linh kiện của bộ xử lý.
- Khối 2: Chíp Atmega16 đƣợc lập trình để xử lý chức năng của toàn bộ hệ thống. 2
3 1
5
4
- Khối 3: IC thời gian thực DS1307 (Real time clock), chạy thời gian thực cho hệ
thống.
- Khối 4: Khối phân áp nhận tín hiệu điện áp từ Acu và Solar đƣa vào cho vi xử lý
Atmega16 (phải thông qua khối này để bảo vệ IC).
- Khối 5: Khối cách ly tầng công suất (IC 4N35: một loại opto quang), có nhiệm
vụ bảo vệ khối xử lý trung tâm khỏi sự tác động của khối công suất chấp hành (vì khối chấp hành vận hành với dòng rất lớn), truyền tín hiệu điều khiển từ vi xử lý đến khối chấp hành.
Sơ đồ nguyên lý bộ phận chấp hànhHình 3.11:
1
2
Bộ phận chấp hành gồm có 2 khối:
- Khối 1: gồm 5 rơ-le mắc song song (để tăng khả năng đáp ứng tải), 1 rơ-le điều
khiển 5 rơ-le còn lại, có nhiệm vụ nhận tín hiệu điều khiển từ bộ xử lý trung tâm để bật/mở đèn; chuyển mạch để đèn sử dụng 1 trong 2 nguồn điện là Acu và AC – DC 12V/30A (do bộ xử lý trung tâm quyết định và đƣa ra lệnh điều khiển).
- Khối 2: gồm 2 rơ-le mắc song song đƣợc điều khiển bởi một rơ-le phía trƣớc, có
chức năng nhận tín hiệu điều khiến từ bộ xử lý, đóng/ngắt nguồn AC – DC 12/30A (với mục đích không để điện AC 220V thƣờng trực trong bộ nguồn gây tổn hao và nguy hiểm).
Ngoài 2 khối điều khiển và chấp hành ở trên thì bộ điều khiển còn có các thiết bị I/O tức là bàn phím để thao tác trên cơ sở dữ liệu và LCD để hiển thị dữ liệu.
Mạch in bộ phận xử lý trung tâm:
Mạch in bộ phận chấp hành:
3.4.2.3. Thi công phần cứng bộ điều khiển
Sau khi có đƣợc sơ đồ nguyên lý và mạch in bộ điều khiển, ta sẽ thi công lắp đặt mạch thực.
Dƣới Hình 3.14 là hình ảnh của bộ điều khiển sau khi thi công dùng để test (chạy thử chức năng hay chạy demo), mạch chính thức sẽ đƣợc lắp ráp theo chuẩn công nghiêp sẽ trình bày ở phần sau.
3.4.3. Lập trình chức năng cho bộ điều khiển
3.4.3.1. Giới thiệu về Chíp Atmega16
AVR[3] là họ vi điều khiển 8 bit theo công nghệ mới, với những tính năng rất mạnh đƣợc tích hợp trong chip của hãng Atmel theo công nghệ RISC, nó mạnh ngang hàng với các họ vi điều khiển 8 bit khác nhƣ PIC, Pisoc.Do ra đời muộn hơn nên họ vi điều khiển AVR có nhiều tính năng mới đáp ứng tối đa nhu cầu của ngƣời sử dụng, so với họ 8051 89xx sẽ có độ ổn định, khả năng tích hợp, sự mềm dẻo trong việc lập trình và rất tiện lợi.
Atmelga16 có đầy đủ tính năng của họ AVR, về giá thành so với các loại khác thì giá thành là vừa phải khi nghiên cứu và làm các công việc ứng dụng tới vi điều khiển. Tínhnăng:
- Bộ nhớ 16K(flash), 512 byte (EEPROM), 1 K (SRAM), tốc độ 16Mhz. - Đóng vỏ 40 chân , trong đó có 32 chân vào ra dữ liệu chia làm 4 PORT A,B,C,D.
a) b)
Hình 3. 14: Bộ điều khiển sau khi thi công
- Giao diện I2C. - Có 8 kênh ADC 10 bit. - Một bộ so sánh analog, 4 kênh PWM.
- Bộ timer/counter 8 bit, 1 bộ timer/counter1 16 bit. - Bộ truyền nhận UART lập trình đƣợc.
Còn một số chức năng khác (có thể thảm khảo trong DataSheet của nhà sản xuất).
3.4.3.2. Giới thiệu về phần mềm lập trình cho Avr – Codevision
CodeVisionAVR[3] – là một môi trƣờng phát triển tích hợp phần mềm cho vi điều khiển Atmel AVR. Nó cung cấp sự hỗ trợ rộng rãi cho các thiết bị AVR và tạo ra một đoạn mã nhỏ gọn và hiệu quả.
CodeVisionAVR bao gồm các thành phần sau: - Trình biên dịch ngôn ngữ C cho AVR;
- Trình biên dịch hợp ngữ cho AVR;
- Chức năng CodeWizardAVRlà công cụ cho phép khởi tạo thiết bị ngoại vi, mà không cần quan tâm đến việc nhớ lệnh khai báo;
- Module giao tiếp với debug board STK-500; - Module tƣơng tác với các lập trình viên; - Terminal.
CodeVisionAVR cho tập tin đầu ra là:
- HEX, BIN hoặc tập tin ROM để nạp vào thiết bị thông qua lập trình; - COFF – file có chứa thông tin cho trình gỡ lỗi;
- OBJ – file.
3.4.4. Chƣơng trình viết cho bộ điều khiển
Trích một phần code của chƣơng trình: Date : 2/5/2014
Author : Nguyen Quang Hai
Company : Khoa Dien - Dien Tu, DHNT Comments: DO AN TOT NGHIEP
Chip type : ATmega32 Program type : Application
AVR Core Clock frequency: 8.000000 MHz Memory model : Small
External RAM size : 0 Data Stack size : 512
*****************************************************/ ……….. //khai bao bien luu du lieu khi mat dien
eeprom long luudatangaymo[7][5] = { 0}; // luu tru 7 ngay, 4 gia tri la 2 so cho ngay va 2 so cho thang
eeprom long luudatagiomo[7][5] = {0}; // luu tru 7 ngay, 4 gia tri: gio va phut eeprom long luudatadienapmo[7][5]= {0};
eeprom long luudatangaytat[7][5]={0}; // luu tru 7 ngay, 4 gia tri la 2 so cho ngay va 2 so cho thang
eeprom long luudatadienaptat[7][5]={0};
eeprom int luungaythu; //luu lai ngay hien tai
eeprom int luutrudaluudulieu = 0; // tin hieu bao da mat dien truoc do va cho phep lay lai du lieu
……….. //khai bao bien ma tran luu tru du lieu
//---truoc khi bat den----
long datangaymo[7][5]; // luu tru 7 ngay, 4 gia tri la 2 so cho ngay va 2 so cho thang long datagiomo[7][5]; // luu tru 7 ngay, 4 gia tri: gio va phut
long datadienapmo[7][5]; // luu tru 7 ngay, 4 so dien ap //---truoc khi tat den----
long datangaytat[7][5]; // luu tru 7 ngay, 4 gia tri la 2 so cho ngay va 2 so cho thang long datagiotat[7][5]; // luu tru 7 ngay, 4 gia tri: gio va phut
long datadienaptat[7][5]; // luu tru 7 ngay, 4 so dien ap
……….. void hienthigio() //hien thi gio len LCD
{
rtc_get_time (&gio, &phut, &giay); lcd_gotoxy (0,1);
lcd_putchar (' '); lcd_chuyendoi(gio); lcd_putchar (':'); lcd_chuyendoi(phut);
lcd_putchar (':'); lcd_chuyendoi(giay); }
void hienthingay() //hien thi ngay len LCD {
rtc_get_date (&ngay, &thang, &nam); lcd_gotoxy (9,1); lcd_putchar (' '); lcd_chuyendoi(ngay); lcd_putchar ('/'); lcd_chuyendoi(thang); lcd_putchar ('/'); lcd_chuyendoi(nam); lcd_putchar (' '); } ……… if( SLdauvao < 300 && kiemtradaduocluumo == 0)
// khi dien ap solar nho hon 3V bat den
{
delay_ms(500);
kiemtradaduocluumo = 1; ngaythu = ngaythu + 1;
if (ngaythu == 8) {ngaythu = 1;}
savedatamo(); //luu du lieu truoc khi bat den
{
nguonDC = 0; // cat nguon DC tai = 0; // gat tai qua acu
}
if (sosanh < 1100) //khi acu can điện {
tai = 1; // gat tai qua DC
nguonDC = 1; // dong nguon DC }
}
if (sosanh < 1100) //khi dien ap acu can
{
if (SLdauvao < 300) //neu la ban dem
{ tai = 1; // gat tai qua nguon DC
nguonDC = 1; // dong nguon DC
if( modaduocluu == 1 && kiemtradaduocluutat == 0)
// neu Acu can dien tien hanh ghi lai thoi diem nay
{
kiemtradaduocluutat = 1;
if(kiemtradaduocluumo == 1) {savedatatat();}
// neu du lieu gio mo cua ngay duoc luu thi moi luu gio tat
}
Sau khi viết xong code cho bộ điều khiển ta tiến hành dich ra file .hex và nạp file này cho Atmega16 bằng phần mềm AVR studio 4thông qua mạch nạp STK500 có bán trên thì trƣờng.Sau đó cho bộ điều khiển hoạt động để kiểm tra chức năng và sữa lỗi.
3.4.5. Thi công bộ điều khiển
Sau quá trình chạy thử bộ điều khiển, kiểm tra đầy đủ chức năng và sữa lỗi. Bộ điều khiển đã đƣợc hoàn thiện về cả phần cứng và chƣơng trình, đáp ứng đầy đủ chức năng và chất lƣợng nhƣ đã đề ra, ta tiến hành chuẩn hóa công nghiệp phần cứng của bộ điều khiển để thể hiện tính chuyên nghiệp trong dựán, Hình 3.15, Hình 3.16.
Thi công phần cứng:
Hình 3. 15: Phần cứng Bộ điều khiển
a) Mặt trước c) Mặt trước sau khi lắp ráp linh kiện
b) Mặt sau d) Mặt sau sau khi hàn linh kiện
a) b)
Đóng vỏ hộp cho Bộ điều khiển:
Để bảo vệ, tạo tính thẩm mỹ cho sản phẩm và dễ dàng lắp đặt ta cần đóng vỏ cho Bộ điều khiển.
a) b)
c) d)
Hình 3. 16: Phần cứng bộ chấp hành theo chuẩn công nghiệp
a) Mặt trước c) Mặt trước sau khi ráp linh kiện
b) Mặt sau d) Mặt sau sau khi hàn linh kiện
3.5. ĐÓNG VỎ MẠCH ỔN ÁP ĐIỀU TIẾT XUNG
Ở công đoạn chạy thử ta đã đề cập và lắp đặt mạch ổn áp điều tiết xung cho các trụ đèn để chiếu sáng. Ở phần này ta sẽ tiến hành đóng vỏ cho mạch ổn áp này để đâu nối cố định vào bản điện của trụ đèn (ngay vị trí hộp đèn) để bảo vệ mạch và đảm bảo yêu cầu kỹ thuật, Hình 3.18.
3.6. KẾT NỐI HOÀN THIỆN TOÀN BỘ HỆ THỐNG
Sau khi chuẩn hóa tất cả các thiết bị và phần cứng, ta tiến hành kết nối chúng lại với nhau thành một hệ thống thống nhất, bao gồm: Solar, Acu, nguồn AC-DC 12V, bộ sạc, Bộ điều khiển, bộ ổn áp điều tiết xung, tải (các trụ đèn). Cấu trúc kết nối toàn bộ hệ thống theo sơ đồ khối Hình 3.19.
Khi kết nối cần tuân thủ theo thứ tự: kết nối các thành phần sử dụng điện một chiều (DC) trƣớc nhƣ Solar, bộ sạc; sau đó kết nối bộ nguồn AC - DC (chƣa đóng nguồn AC), kết nối tải, đấu nguồn Acu sau cùng theo đúng nhãn đã ghi trên Bộ chấp hành và đóng nguồn AC.
a) b)
Hình 3. 18: Đóng vỏ hộp cho mạch ổn áp điều tiết xung
a) Mạch ổn áp điều tiết xung
Khi đã hoàn thành khâu kết nối các thành phần của hệ thống ta tiến hành chạy giả lập để kiểm tra hệ thống và bộ điều khiển có hoạt động đúng ý đồ đã lập trình hay không. Công việc cuối cùng là đóng mạch toàn bộ để hệ thống làm việc chính thức, dƣới đây là một số hình ảnh về trạng thái hoạt động, cấu trúc kết nối các bộ phận bên trong tủ điện và vị trí lắp đặt tủ điện.
Do kích thƣớc của Acu 200Ah khá lớn nên chúng ta sẽ dành cho mỗi Acu một tầng để lắp đặt (Hình 3.20 b), ở trên cùng là bảng điện; chúng ta lắp đặt và kết nối trên bảng điện gồm có bộ điều khiển nguồn AC-DC 12V và bộ sạc Acu 20A.
Dây điện dùng để kết nối sẽ đƣợc bấm đầu cốt, bọc gen cách điện để dễ dàng kết kết nối vào một Domino chung cho các đầu vào ra, đồng thời đảm bảo an toàn về điện và thẩm mỹ. LCD Tải Tín hiệu từ Solar Tín hiệu từ Acu IC DS1307 Vi điều khiển Bàn phím Nguồn 5V Bộ chấp hành Acu Nguồn DC12V AC~220V
Hình 3. 19: Sơ đồ khối Bộ điều khiển và kết nối các thiết bị của hệ thống
Hình 3. 20: Cấu trúc kết nối bên trong tủ điện
a) Thông tin kiểm soát và hiển thị của bộ điều khiển
b) Toàn cảnh cấu trúc kết nối bên trong tủ điện
Vào buổi tối đầu tiên khi hệ thống đƣợc đƣa vào làm việc chính thức chúng ta sẽ theo dõi quá trình làm việc của nó và có đƣợc những số liệu lƣu trữ đầu tiên nhƣ
Hình 3.22.
b) a)
Hình 3. 21: Toàn cảnh nơi lắp đặt tủ điện
a) Mặt trước tủ điện
Hình 3.22 a) ta thấy điện áp tấm PNLMT (sau kí hiệu SL) đã xuống mức rất thấp 3.3V, sau khi điện áp tấm pin xuống dƣới 3V hệ thống sẽ tự động bật đèn. Hình 3.22 b) là số liệu mà hệ thống thu thập đƣợc trƣớc khi bật đèn là: tình trạng điện áp Acu là 12.84V, đèn đƣợc bật vào lúc 18h24 (thang 24h) ngày 11/6.
a)
b)
Hình 3. 22: Tình trạng hoạt động của hệ thống trong buổi tối đầu tiên được đưa vào hoạt động chính thức
a) Trước giờ bật đèn
3.7. KẾT QUẢ ĐẠT ĐƢỢC
Trải qua một thời gian dài kể từ khi bắt đầu khởi công dự an đến khi lắp đặt hoàn thiện và vận hành toàn bộ hệ thống của công trình đèn chiếu sáng đƣờng nội bộ từ cổng trƣớng đến Nhà A8, ta đã thu đƣợc những kết quả nhất định:
- Móng trụ và trụ đèn đƣợc thiết kế đảm bảo chất lƣợng đúng nhƣ bản thiết kế trƣớc đây của hệ thống cũ (vì hệ thống cũ đã vận hành vài chục năm, điều đó chứng tỏ chất lƣợng của bản thiết kế).
- Quá trình kiểm tra, lựa chọn loại đèn Led đƣợc tiến hành kỹ lƣỡng đã đảm bảo đƣợc độ bền của Led.
- Cấu hình hệ thống Solar – Acu –Led đƣợc thiết kế phù hợp với nhau và phù hợp