c) Về vi điều khiển PIC 16F887A
2.6. Xây dựng hệ đo thông số môi trường đa tín hiệu
2.6.1. Mạch mô phỏng của hệ đo:
Tín hiệu từ các khối cơ bản (khối nhiệt độ, khối độ ẩm, khối CO2, khối âm thanh, khối thời gian được đưa vào VI ĐIỀU KHIỂN xử lý và hiển thị LCD hoặc truyền qua UART. Sơ đồ khối được mô tả trên hình 2.22
- Với khối độ ẩm: Như đã trình bày ở trên, VI ĐIỀU KHIỂN sẽ gửi lệnh đọc dữ liệu nhiệt độ độ ẩm từ sensor DHT11, dữ liệu được truyền về VI ĐIỀU KHIỂN dưới định dạng số và VI ĐIỀU KHIỂN chỉ làm thêm một nhiệm vụ nữa là tách nhiệt độ và độ ẩm riêng ra, sau đó thực hiện phép toán để đưa kết quả độ ẩm sẽ hiển thị hoặc sẽ truyền vào máy tính vào một mảng dữ liệu đệm.
- Với khối nhiệt độ, VI ĐIỀU KHIỂN thực hiện giao tiếp một dây với IC DS18B20 để lấy giá trị nhiệt độ dưới định dạng số, sau khi nhận được dữ liệu này, VI ĐIỀU KHIỂN sẽ thực hiện phân tích và đưa kết quả vào một mảng dữ liệu đệm.
30 - Với khối âm thanh, tín hiệu âm thanh sau khi qua bộ khuếch đại sẽ được đưa trực tiếp vào một chân ADC của VI ĐIỀU KHIỂN. VI ĐIỀU KHIỂN có nhiệm vụ thực hiện ADC tín hiệu này ra dạng số sau đó phân tích và đưa kết quả cường độ âm thanh vào mảng dữ liệu đệm.
- Với khối CO2, tín hiệu sau khi ra khỏi bộ khuếch đại sẽ được đưa vào một chân ADC của VI ĐIỀU KHIỂN. VI ĐIỀU KHIỂN có nhiệm vụ thực hiện ADC tín hiệu này ra dạng số sau đó phân tích và đưa kết quả cường độ âm thanh vào mảng dữ liệu đệm.
- Với khối thời gian: VI ĐIỀU KHIỂN thực hiện giao tiếp một dây với IC thời gian thực DS1307, dữ liệu trả về chính là thời gian thực dưới dạng số, VI ĐIỀU KHIỂN thực hiện nhiệm vụ lưu trữ dữ liệu này và mảng dữ liệu đệm.
Sau khi đã thu thập đầy đủ thông tin dữ liệu, tùy thuộc vào tùy chọn ban đầu của người sử dụng mà VI ĐIỀU KHIỂN sẽ quyết định xuất dữ liệu ra LCD hoặc đẩy qua giao tiếp UART lên máy tính.
31 2.6.2. Xây dựng thuật toán cho hệ đo:
a) Chương trình đọc số liệu và hiển thị lên LCD
32 CHƯƠNG 3:KẾT QUẢ THỰC NGHIỆM
3.1 Kết quả xây dựng hệ đo
Trên cơ sở đối tượng nghiên cứu và phương pháp nghiên cứu nêu trên, kết hợp kết quả mô phỏng của mạch đo các thông số môi trường (Hình 2.22), em đã tiến hành ghép nối và xây dựng mạch đo thực tế. Hình ảnh của hệ đo thực tế như sau:
Hình 3.1: Hình ảnh hệ thống thu thập số
33
Hình 3.3: Hình ảnh truyền dữ liệu đo theo UART vào máy tính.
3.2. Kết quả số liệu thu thập từ hệ đo.
Hệ được đặt và thực hiện đo đạc các thông số môi trường trong điều kiện thông thường tại phòng thí nghiệm; các số liệu đo được so sánh đồng thời với các thiết đo chuyên dụng.
Sau khi thiết lập các cài đặt để kết nối hệ thống với máy tính, các số liệu được truyền và lưu dưới dạng file text (.txt). Các số liệu được hệ thống ghi nhận và lưu dưới dạng .txt như sau:
34
Hình 3.5: Số liệu hiển thị qua phần mềm Herquese
Kết quả thu thập số liệu cho thấy: - Nhiệt độ môi trường: 280C; - Độ ẩm không khí: 59%;
- Cường độ âm: Từ 48 đến 52dB;
- Nồng độ khí CO2 trong không khí: Từ 424 đến 456 ppm.
Thực hiện khỏa sát hệ đo ở các khoảng thời gian đo khác nhau và thời điểm lấy mẫu khác nhau trong ngày, cho thấy:
- Hệ có tính ổn định cao;
- Các thông số như nhiệt độ và độ ẩm ít biến đổi do trong điều kiện đo ít có biến động về nhiệt độ và độ ẩm;
- Các thông số cường độ âm và nồng độ khí CO2 biến đổi khá nhanh theo biến đổi của môi trường và tần suất lấy mẫu.
Kết quả số liệu thu thập được so sánh đồng thời với các kết quả đo từ thiết bị đo chuyên dụng đặt cùng vị trí đo và đều cho kết quả khá tương đồng với sai số nhỏ. 3.3. Kết quả đưa số liệu lên Lan Server.
Từ các số liệu thu thập được, em tiến hành đưa trực tiếp lên Server mạng cục bộ để những máy tính khác khi ở cùng mạng cục bộ có thể truy cập vào dữ liệu này
35 để đọc, ghi và thay đổi nội dung. Giao diện của hệ thống quản lý số liệu môi trường qua Lan Server như sau:
Hình 3.6: Giao diện của hệ thống quản lý số liệu môi trường qua Lan Server
Để truy cập vào hệ dữ liệu này, em cài đặt quyền quản trị và quyền khách. Với quyền người quản trị, tất cả dữ liệu sẽ được thể hiện nhưng với quyền khách, chỉ có 5 dữ liệu cuối cùng được hiển thị. Giao diện của kết quả đo được truy cập từ máy tính trung cùng mạng cục bộ (Hình 3.7).
36 3.4. Các khả năng ứng dụng trong thực tiễn
Mục tiêu của Luận văn có tính ứng dụng trong thực tế lớn, đặc biệt trong công tác đo đạc, quan trắc các số liệu môi trường phục vụ việc nghiên cứu môi trường, ứng dụng trong nông nghiệp và trong thiết kế mô hình nhà thông minh (Smart Home). Với ưu điển gọn nhẹ, tiết kiệm năng lượng, độ tin cậy đáp ứng yêu cầu đo đạc và giá trình hạ so với các thiết bị ngoại nhập nhưng các tính năng tương đương, Hệ đo các thông số môi trường đa tín hiêu nêu trên có khả năng ứng dụng rộng rãi trong các lĩnh vực đo và giám sát các thông số của môi trường; phát triển để kết hợp với hệ thông điều chỉnh điều kiện môi trường để đạt được các điều kiện môi trường mong muốn.
3.5. Tiềm năng, mở rộng và nâng cấp hệ thông
a) Tiềm năng:
Hệ cho phép kết nối số lượng lớn các cảm biến để có thể đáp ứng các nhu cầu đo đạccác thông số cụ thể mà người dùng muốn khảo sát. Đặc biệt đối ghép nối cảm biến đo nhiệt độ là nối 1 dây, do vậy có thể đo đồng thời nhiệt độ tại nhiều địa điểm khác nhau, cho phép thu thập, khiểm sát nhiệt độ của nhiều đối tượng đo cùng lúc.
Ngoài ra hệ thống có thể kết nối thêm các cảm biến khác như cảm biến đo cường độ sáng, đo lưu lượng gió, hướng gió,… theo nhu cầu của người sử dụng. Hệ thống rất có tiềm năng để áp dụng trong thực tế.
b) Mở rộng, nâng cấp hệ thống:
Để có thể nâng cấp, giúp cho hệ thống gọn nhẹ, có tính cơ động cao, hệ thống có thể ghép nối thêm 02 Module Ethernet và GSM để có thể trực tiếp truyền dữ liệu đo lên Webserver và đến người kiểm soát mà không cần ghép nối với máy tính. Khi
37 đó hệ thống sẽ hoạt động và kết nối độc lập, phù hợp với những vị trí khảo sát khó thiết lập máy tính, đường truyền,…
Đối với phần Webserver có thể nâng cấp, bổ sung thêm các tính năng cho phép hiển thị số liệu đo thông qua đồ thị để thuận tiên cho việc theo dõi; bổ sung các tính năng quản trị dữ liệu, tìm kiếm dữ liệu; nâng cấp giao diện người dùng.
Bổ sung thêm các Module nguồn sử dụng năng lượng mặt trời để hệ thống có thể hoạt động độc lập, nâng cao tính cơ động cho hệ thống.
38 KẾT LUẬN
Trong quá trình làm luận văn, hệ đo thông số môi trường đa tín hiệu đã được xây dựng thành công với các chức năng cơ bản như lưu trữ, truyền dữ liệu và thay đổi cấu hình qua Internet, hiển thị dữ liệu dưới dạng Web Server, cụ thể là:
- Ghép nối, thực hiện đo thành công các thông số cơ bản của môi trường, bao gồm: Nhiệt độ, độ ẩm không khí, cường độ âm và nông độ khí CO2 trong không khí.
- Kết quả số liệu thu thập được so sánh đồng thời với các kết quả đo từ thiết bị đo chuyên dụng đặt cùng vị trí đo và đều cho kết quả khá tương đồng với sai số nhỏ.
- Giao diện web để hiển thị thông tin đơn giản và cho phép theo dõi, thiết lập từ xa.
- Hiện nay hệ thống mới chỉ có thể đo và thu thập được thông tin về nhiệt độ và độ ẩm. Để đánh giá hết về các yếu tố môi trường ta cần thêm các thông tin khác như hướng gió, tốc độ gió, mực nước, áp suất, … Do đó, hệ thống cần được bổ sung thêm các module cảm biến tương ứng để đo thêm các thông tin khác.
- Để đảm bảo đo được trong thời gian dài thì vấn đề năng lượng là một trong những yếu tố quan trọng nhất. Do đó, cũng cần phải có những cải tiến để có thêm các chế độ tiết kiệm năng lượng để giảm năng lượng hao phí hoặc là kết hợp sử dụng nguồn năng lượng mặt trời.
- Hiện nay các thông tin đo được chỉ được lưu trữ trên 1 file, Webserver còn đơn giản và chưa có các tiền xử lý như tính trung bình, giá trị cao nhất và thấp nhất, cảnh báo... Để dễ dàng trong xử lý số liệu ta có thể tạo số liệu thành một cơ sở dữ liệu để thuận tiện cho người sử dụng. Tuy nhiên, để làm được điều này thì Web server cũng cần phải nâng cấp.
- Ngoài ra, hiện nay hệ thống chỉ truyền tín hiệu qua hệ thống Internet có dây thông qua ghép nối với máy tính nên khi sử dụng ở các khu vực không có đường truyền internet là không khả thi. Trong thời gian sắp tới, em hi vọng có thể cải tiến hệ
39 thống để có thể sử dụng mạng internet không dây GPRS, 3G,… để phục vụ cho các địa điểm đo không có đường truyền internet.
- Tóm lại, tuy hệ thống còn có một số hạn chế nhưng đã đáp ứng được những chức năng cơ bản nhất của một hệ thu thập các thông số môi trường và có khả năng truyền dữ liệu và điều khiển từ xa qua mạng.
40 TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] Phan Minh Tân, Nguyễn Xuân Hoàng, Bùi Thị Thanh Quyên; Nghiên cứu thiết kế và chế tạo thiết bị đo nhiệt độ, độ ẩm và điểm sương THDP-1 sử dụng công nghệ PSOC.
[2] Trần Quang Vinh, Phạm Mạnh Thắng, Phùng Mạnh Dương; Mạng thông tin điều khiển trong hệ thống tự động hóa tòa nhà; Tạp chí khoa học khoa học tự
nhiên và công nghệ - Đại học Quốc gia Hà Nội, Số 26 (2010) trang 129-140. [3] Vũ Ngọc Ha, Luận văn thạc sỹ “Xây dựng hệ thống đo đạc, thu thập và xử lý
tín hiệu số các thông số môi trường từ xa qua mạng Ethernet trên nền Linux nhúng”, bộ môn Vật lý Vô tuyến, khoa Vật lý, Trường đại học Khoa học tự
nhiên – Đại học Quốc gia Hà Nội – 2013. Tiếng Anh
[4] Coopmans, C; YangQuan Chen; A general-purpose low-cost compact spatial-
temporal data logger and its applications, AUTOTESTCON, 2008, IEEE
Conferences 2008 , Page(s): 64 - 68
[5] Edstrom, U.; Skonevik, J.; Backlund, T.; Karlsson, J.S.; A flexible measurement
system for physiological signals in mobile health care, Engineering in Medicine and Biology Society, 2005. IEEE-EMBS 2005. 27th
Annual International Conference 2005 , Page(s): 2161 - 2162
[6] Hayes, J.; Crowley, K.; Diamond, D.; Simultaneous Web-based real-time
temperature monitoring using multiple wireless sensor networks, Sensors, 2005 IEEE Conferences, 2005
[7] Hernández camacho , laura e. Muñoz hernández; Virtual distributed supervision and control for an automated greenhousejorge.
41 [8] H. Mirinefad, Sh sadati;Design and simulation of rutomated system for
greenhouse using Labview; American-Eurasian J.agric&environ. Sci, 3(2):
279-284, 2008.
[9] Hsueh-Chun Lin; Yiao-Chiang Kan; Yao-Ming Hong; The Comprehensive
Gateway Model for Diverse Environmental Monitoring Upon Wireless Sensor Network, Sensors Journal, IEEEVolume: 11, Issue: 5, 2011, Page(s): 1293 –
1303.
[10] Ipsuwan, Y., Chow Mo-Yuen. Control Methodologies in networked control system, 2003, Control Engineering Practice
[11] Prabhudesai, R.G.; Joseph, A.; Agarwadekar, Y.; Mehra, P.; Kumar, K.V.;
Luis, R.; Integrated Coastal Observation Network (ICON) for real-time monitoring of sea-level, sea-state, and surface-meteorological data, OCEANS
2010, IEEE 2010 , Page(s): 1 - 9
[12] Ku, K.K.K.; Bradbeer, R.; Hodgson, P.; Lam, K.; Lam Yeung; A low-cost, three-dimensional and real-time marine environment monitoring system, Data buoy with connection to the internet, OCEANS 2008 - MTS/IEEE Kobe
Techno-Ocean 2008 , Page(s): 1 – 5.
[13] Shi-feng yang and daudi s. Simbeye ollege of electronic information and
automation, tianjin university of science and technology; computerized greenhouse environmental Monitoring and control system based on Labwindows/cvi; journal of computers, vol. 8, no. 2, february 2013.
[14] Segars, S., “The ARM9 Family – High Performance Microprocessors for Embedded Applications,” Proceedings of the International Conference on
Computer Design: VLSI in Computers and Processors, pp. 230 - 235, 5th October, 1998.
42 PHỤ LỤC:
Code Một Số Hàm Sử Dụng Trong Luận Văn
void InitTimer0() { OPTION_REG = 0x85; TMR0 = 22; INTCON = 0xA0; } char DHT_Return() { DHT_Dir = 0; DHT_Data = 1; Delay_us(60); DHT_Data = 0; Delay_ms(25); DHT_Data = 1; DHT_Dir = 1; Delay_us(60); if(DHT_Data) return 0; else while(!DHT_Data); Delay_us(60);
43 if(!DHT_Data)
return 0; else while(DHT_Data);
for(i=0; i<5; i++) { for(ii=0;ii<8;ii++) { while(!DHT_Data); Delay_us(50); if(DHT_Data) { sbuff[i] |= (1<<(7-ii)); while(DHT_Data); } } }
checksum = sbuff[0] + sbuff[1] + sbuff[2] + sbuff[3]; if( checksum != sbuff[4] )
return 0;
else if( checksum == sbuff[4] ) return 1;
44 void DHT_Conversion() { temp[0] = (sbuff[2]&0x7E)/10 + 48; temp[1] = (sbuff[2]&0x7E)%10 + 48; temp[3] = sbuff[3]%10 + 48; humid[0] = (sbuff[0]/10)%10 + 48; humid[1] = sbuff[0]%10 + 48; humid[3] = sbuff[1]%10 + 48; } void Main_Init() { ANSEL = 0b00001110; ANSELH = 0b00000000; ADCON0 = 0b00000101; //ADCON1 = 0b10110010; C1ON_bit = 0; C2ON_bit = 0; //TRISA.B0 = 1; TRISA.B1 = 1; TRISA.B2 = 1; TRISA.B3 = 1; TRISD.B0 = 1; TRISD.B1 = 1;
45 }
Hàm vòng lặp vô cùng trong hàm main while(1) { if(!conn) { Delay_ms(50); if(!conn) { if(rs232) { rs232 = 0; Lcd_Cmd(_LCD_TURN_ON);
Lcd_Cmd(_LCD_CLEAR); // Clear display Lcd_Cmd(_LCD_CURSOR_OFF); } else if(!rs232) { rs232 = 1; Lcd_Cmd(_LCD_TURN_OFF); } } Delay_ms(1000); } if(!stime) {
46 Delay_ms(50); if(!stime && rs232) config_time(); } rtc_Get(); rtc_Transform();
sbuff[0] = sbuff[1] = sbuff[2] = sbuff[3] = sbuff[4] = sbuff[5] = 0; if(DHT_Return()) DHT_Conversion(); if(!rs232) { Lcd_Out(1,2,temp); Lcd_Out(1,10,humid); ADCresult = ADC_Read(1); ADCtoVolt = (long)ADCresult*4000; ADCtoVolt = ADCtoVolt/1023;
volt[0] = ADCtoVolt/1000+48; // Extract volts (thousands of millivolts)
Lcd_Chr(2,1,volt[0]); // Write result in ASCII format Lcd_Chr_CP(volt[1]);
volt[2] = (ADCtoVolt/100)%10+48; // Extract hundreds of millivolts
47 volt[3] = (ADCtoVolt/10)%10+48; // Extract tens of millivolts Lcd_Chr_CP(volt[3]); // Write result in ASCII format
volt[4] = ADCtoVolt%10+48; // Extract digits for millivolts Lcd_Chr_CP(volt[4]); // Write result in ASCII format
Lcd_Out(1,2,temp); Lcd_Out(1,10,humid); } else if(rs232) { UART1_Write_Text(thoi_gian);space(); UART1_Write_Text(ngay_thang);newline(); UART1_Write_Text(temp);space(); UART1_Write_Text(humid);newline(); } }