Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 88 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
88
Dung lượng
2,74 MB
Nội dung
TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA ĐIỆN – ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN VÀ GIÁM SÁT THIẾT BỊ BẰNG MÁY TÍNH THƠNG QUA SMS Người hướng dẫn: ThS TRẦN CÔNG THỊNH Người thực hiện: NGUYỄN HỮU CẦN Lớp : 10040002 Khoá : 14 THÀNH PHỐ HỒ CHÍ MINH, NĂM 2015 LỜI CẢM ƠN Em xin chân thành cảm ơn đến tồn thể q thầy Khoa Điện – Điện tử, người tạo điều kiện cho em có hội nghiên cứu tìm hiểu sâu rộng lĩnh vực điện tử, đặc biệt thầy Trần Cơng Thịnh tận tình hướng dẫn giúp đỡ em thời gian thực đề tài Đồng thời em xin gửi lời cảm ơn tới gia đình bạn bè giúp đỡ em thời gian thực đề tài Có giúp đỡ nhiệt tình, cộng với cố gắng thân nên em hoàn thành đề tài cách tốt khả Với hiểu biết hạn chế thời gian thực đề tài hạn chế nên đề tài không tránh khỏi thiếu sót Rất cảm ơn góp ý quý thầy cô bạn bè để đề tài hồn thiện TP Hồ Chí Minh, ngày tháng năm Tác giả (ký tên ghi rõ họ tên) i CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƯỜNG ĐẠI HỌC TƠN ĐỨC THẮNG Tơi xin cam đoan cơng trình nghiên cứu riêng tơi hướng dẫn khoa học …………………………………………; Các nội dung nghiên cứu, kết đề tài trung thực chưa cơng bố hình thức trước Những số liệu bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá tác giả thu thập từ nguồn khác có ghi rõ phần tài liệu tham khảo Ngoài ra, luận văn sử dụng số nhận xét, đánh số liệu tác giả khác, quan tổ chức khác có trích dẫn thích nguồn gốc Nếu phát có gian lận tơi xin hồn tồn chịu trách nhiệm nội dung luận văn Trường đại học Tôn Đức Thắng không liên quan đến vi phạm tác quyền, quyền gây q trình thực (nếu có) TP Hồ Chí Minh, ngày tháng năm Tác giả (ký tên ghi rõ họ tên) ii iii iv MỤC LỤC DANH MỤC CÁC HÌNH ẢNH IX DANH MỤC CÁC BẢNG BIỂU XI DANH MỤC CÁC TỪ VIẾT TẮT XII CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN VÀ GIÁM SÁT THIẾT BỊ BẰNG MÁY TÍNH THƠNG QUA SMS 1.1 Đặt vấn đề cho đề tài 1.2 Ý nghĩa đề tài 1.3 Mục đích đạt được, đối tượng nghiêm cứu đề tài CHƯƠNG 2: CÁC LINH KIỆN ĐIỆN TỬ, MODULE CHỨC NĂNG ĐƯỢC SỬ DỤNG TRONG ĐỀ TÀI 2.1 Vi điều khiển 16F877A 2.1.1 PIC gì? 2.1.2 Tổ chức phần cứng PIC 16F877A 2.1.3 Tính PIC 16F877A 2.1.4 Sơ đồ tổ chức, tính chân vi điều khiển PIC 16F877A 2.1.5 Tổ chức nhớ PIC 16F877A 10 2.1.5.1 Bộ nhớ liệu 10 2.1.5.2 Bộ nhớ chương trình 11 2.1.6 Xuất nhập I/O PORT vi điều khiển PIC 16F877A 12 2.1.6.1 Thanh ghi quy định tín hiệu xử lí chân vi điều khiển tín hiệu số hay tín hiệu tương tự 12 2.1.6.2 Chức ghi TRIS 12 2.1.6.3 Chức ghi PORT 13 2.1.6.4 Thanh ghi hỗ trợ điện trở kéo xuống PORTB 13 v 2.1.6.5 Ngắt chân RB0 PORTB 14 2.1.6.6 Ngắt on-change PORTB 15 2.1.6.7 Bảng so sánh ngắt INT ngắt on-change 16 2.1.7 Timer 17 2.1.7.1 Timer gì? 17 2.1.7.2 Nguyên tắc hoạt động Timer 17 2.1.7.3 Timer 17 2.1.7.4 Các ghi khởi tạo Timer 18 2.1.7.5 Công thức định thời Timer 19 2.1.7.6 Ngắt Timer 19 2.1.8 ADC 20 2.1.8.1 Tín hiệu tương tự tín hiệu số 20 2.1.8.2 Các ghi điều khiển hoạt động chuyển đổi ADC 22 2.2 LCD 16x02 24 2.2.1 Giới thiệu LCD 16x02 24 2.2.2 Sơ đồ chân LCD 16x02 24 2.2.3 Ý nghĩa hoạt động chân LCD 16x02 25 2.3 Relay 27 2.3.1 Giới thiệu Relay 27 2.3.2 Điều khiển Relay DC 28 2.4 Cảm biến đo nhiệt độ LM35 29 2.4.1 Giới thiệu cảm biến đo nhiệt độ LM35 29 2.4.2 Tính tốn nhiệt độ đầu cảm biến đo nhiệt độ LM35 30 2.5 Triac 30 2.5.1 Giới thiệu Triac 30 2.5.2 Đặc tính V-I Triac 32 2.6 IC cách ly quang 32 vi 2.6.1 OPTO PC817 32 2.6.2 MOC 3021 33 2.7 Module cảm biến mưa 34 2.7.1 Thông số kỹ thuật 34 2.7.2 Sử dụng 34 2.8 Module cảm biến ánh sáng 34 2.9 Module SIM 900A 35 2.9.1 Giới thiệu GSM Module Sim 900A 35 2.9.2 Đặc điểm kỹ thuật Module SIM 900A 36 2.9.3 Cấu tạo SIM 900A 36 2.9.4 Tập lệnh AT 37 2.9.4.1 Giới thiệu tập lệnh AT 40 2.9.4.2 Các tập lệnh AT thường dùng 42 2.10 Khối USB to UART 42 2.10.1 Thông số kỹ thuật 42 2.10.2 IC FT232RL 43 CHƯƠNG 3: MẠNG GSM VÀ DỊCH VỤ SMS 43 3.1 Mạng GSM 46 3.1.1 Giới thiệu mạng GSM 46 3.1.2 Cấu trúc mạng GSM 47 3.1.3 Băng tần mạng GSM 48 3.2 Dịch vụ SMS 49 3.2.1 Giới thiệu dịch vụ SMS 49 3.2.2 Ưu điểm nhược điểm tin nhắn SMS 51 3.2.2.1 Ưu điểm 51 3.2.2.2 Nhược điểm 51 vii CHƯƠNG 4: THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN VÀ GIÁM SÁT THIẾT BỊ BẰNG MÁY TÍNH THƠNG QUA SMS 52 4.1 Sơ đồ khối hệ thống 52 4.1.1 Khối cung cấp nguồn 52 4.1.2 Khối điều khiển 53 4.1.3 Khối xử lý 53 4.1.4 Khối công suất 54 4.2 Sơ đồ nguyên lý hệ thống 54 4.3 Giao diện đăng nhập điều khiển máy tính 57 4.4 Sơ đồ thuật toán 58 4.4.1 Sơ đồ thuật tốn mơ tả gửi nhận tin nhắn khối xử lý 58 4.4.2 Sơ đồ thuật tốn mơ tả điều khiển quạt đèn khối xử lý 59 4.4.3 Sơ đồ thuật tốn mơ tả điều khiển ấm nước khối xử lý 60 4.4.4 Sơ đồ thuật toán điều khiển từ giao diện khối điều khiển 61 CHƯƠNG 5: KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 62 5.1 Kết 62 5.2 Hướng phát triển đề tài 64 TÀI LIỆU THAM KHẢO 65 PHỤ LỤC 66 viii DANH MỤC CÁC HÌNH ẢNH Hình 2.1 Cấu tạo kiến trúc Von Neumann Havard Hình 2.2 Sơ đồ tổ chức chân PIC 16F877A Hình 2.3 Sơ đồ chân PIC 16F877A Hình 2.4 Tổ chức nhớ liệu 10 Hình 2.5 Tổ chức nhớ chương trình 11 Hình 2.6 Mơ hình Ngắt ngồi RB0 14 Hình 2.7 Sơ đồ ngắt on-change 15 Hình 2.8 Bảng so sánh ngắt ngắt on-change 16 Hình 2.9 Sơ đồ khối Timer PIC 16F877A 17 Hình 2.10 Sơ đồ khối Timer Watchdog Timer PIC 16F877A 18 Hình 2.11.Thời gian hoạt động Timer 0( bit) 19 Hình 2.12 Cơng thức định thời Timer 0( bit) 19 Hình 2.13 Sơ đồ ngắt Timer 20 Hình 2.14 Đồ thị tín hiệu tương tự tín hiệu số 20 Hình 2.15 Bộ ADC tích hợp sẵn bên vi điều khiển 21 Hình 2.16 Đồ thị chuyển đổi ADC bit 21 Hình 2.17 Hình dạng thực tế LCD 16x02 24 Hình 2.18 Sơ đồ chân LCD 16x02 25 Hình 2.19 Hiển thị LCD 16x02 25 Hình 2.20 Cấu tạo bên hình dạng thật Relay 27 Hình 2.21 Sơ đồ mạch điều khiển Relay 28 Hình 2.22 Hình ảnh thực tế chân tín hiệu LM35 29 Hình 2.23 Hình ảnh thực tế, sơ đồ bố trí chân Triac 30 Hình 2.24 Cấu tạo Triac 31 ix ĐỒ ÁN TỐT NGHIỆP Trang 61/75 4.4.4 Sơ đồ thuật toán điều khiển từ giao diện khối điều khiển Hình 4.11 Sơ đồ thuật tốn mơ tả điều khiển từ giao diện Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 62/75 CHƯƠNG KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 5.1 Kết - Sau thời gian nghiêm cứu, thi công thực đề tài, với hướng dẫn tận tình thầy ThS Trần Cơng Thịnh nỗ lực thân, đề tài hoàn thành thời gian quy định đạt yêu cầu đề bắt đầu đề tài thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS - Các khối mạch nghiêm cứu thực hiện: khối vi điều khiển, khối Relay, khối Triac, module SIM 900A - Viết giao diện điều khiển máy tính C# Visual Studio 2010 viết code xử lý tin nhắn để điều khiển thiết bị ngôn ngữ C CCS - Các chức nghiêm cứu lập trình thực : + Từ giao diện máy tính, gửi lệnh điều khiển bật hay tắt quạt điện đến khối xử lý để thực thi + Từ giao diện máy tính, gửi lệnh điều khiển bật hay tắt bóng đèn điện đến khối xử lý để thực thi Nhận tin nhắn đèn khơng sáng trả hiển thị tình trạng tắt giao diện máy tính bóng đèn điện không sáng dựa vào cảm biến ánh sáng + Từ giao diện máy tính, gửi lệnh điều khiển bật hay tắt ấm đun nước Thêm vào thiết lập nhiệt độ đun giới hạn nhằm mục đích mở rộng khả đun nước với nhiệt độ linh hoạt cho nhu cầu khác + Từ khối vi điều khiển, bất ngờ trời mưa hay tạnh mưa khối vi điều khiển tự động gửi tin nhắn báo mưa hay khơng mưa hiển thị tình trạng lên giao diện máy tính + Có thê kiểm tra tình trạng hoạt động thiết bị hay thời tiết nơi đạt thiết bị cảm biến mưa LCD 16x2 Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 63/75 + Ngồi việc điều khiển, giám sát giao diện máy tính, đề tài điều khiển nhận tin nhắn phản hồi tình trạng thiết bị dựa vào điện thoại di động Hình 5.1 Khối mạch xử lý Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 64/75 Hình 5.2 Khối mạch Triac Relay 5.2 Hướng phát triển đề tài - Ngoài việc điều khiển đèn, quạt ấm nước, báo mưa, đề tài mở rộng điều khiển thêm thiết bị khác không giới hạn : + Kiểm tra, điều khiển đóng ngắt bếp ga có cố rị rỉ gas dựa vào cảm biến báo rị rỉ gas + Thơng báo kịp thời cố cháy nổ thiết bị đóng ngắt nguồn điện dựa vào cảm biến khói + Kết hợp cảm biến mưa cảm biến nhiệt độ, độ ẩm để đo dự báo xác thời tiết mưa, mưa nhẹ, mưa to, tạnh mưa, nắng nhẹ, nắng to, mát mẻ - Có thể sử dụng GPRS để điều khiển giám sát thiết bị thay sử dụng tin nhắn chẳng may cách điều khiển bị nghẽn - Trên module SIM 900A có Micro Speaker, sử dụng nghe gọi phịng trường hợp khẩn cấp Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 65/75 TÀI LIỆU THAM KHẢO Tiếng Việt: [1] Trần Xuân Trường, hướng dẫn sử dụng CCS lập trình ngơn ngữ C cho vi điều khiển PIC Microchip [2] Phạm Thanh Đàm, Giáo trình thơng tin di động, Học viện cơng nghệ bưu viễn thơng sở Hồ Chí Minh [3] Nguyễn Đình Phú (2006), Giáo trình vi xử lý, ĐH Sư Phạm Kỹ Thuật Thành phố Hồ Chí Minh Các website tham khảo: http://www.datasheet.com http:// www.alldatasheet.com http://banlinhkien.vn/mcu/ http:// at-sky.com.vn/ http:// gsm.vn/ http:// payitforward.edu.vn/ http:// dientuvietnam.net/ Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 66/75 PHỤ LỤC Code khối xử lý điều khiển bóng đèn #include #device *=16 adc=10 #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #use delay(clock=20000000) #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7) #include #include ///thu vien chua cac ham atoi itoa #include int8 bien,dem; int old,new,old1,new1,old2,new2; char buffer[80], buffer_size[80];; int8 sms_mode=false,i=0,j=0,p=0,p1=0,p2=0; char string1[5], c1, xbuff, c=0x00; unsigned int8 x,t,m,set;////kieu int8 gia tri toi da 127 #bit RB0=0x06.0 #bit RB1=0x06.1 #bit RB2=0x06.2 #bit RB3=0x06.3 #bit RB4=0x06.4 #bit RB5=0x06.5 #bit RD0=0x08.0 int8 str[20]; Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 67/75 int8 k=0; void mua(); void muakhongLCD(); void den(); void denkhongLCD(); void am(); void amkhongLCD(); void quat(); #int_RDA RDA_isr() { c=getc(); if(c=='+'){c1=c; xbuff=0;} if(c=='.'&& c1=='+'){sms_mode=true;} if(xbuff>=buffer_size){xbuff=0;} else{buffer[xbuff++]=c;} return 0; } void main() { output_b(0x11); set_tris_b(0x11); enable_interrupts(INT_RDA); //cho phep ngat uart enable_interrupts(GLOBAL); //cho phep ngat toan cuc LCD_Init(); delay_ms(10); setup_ADC(ADC_CLOCK_INTERNAL); Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 68/75 setup_ADC_ports(AN0);//chon kenh ADC set_ADC_channel(0); delay_ms(1000); LCD_Gotoxy(0,0); sprintf(str," Dieu khien TB"); LCD_Puts(str); LCD_Gotoxy(0,1); sprintf(str," thong qua SMS"); LCD_Puts(str); delay_ms(2000); LCD_Clear(); old=input(PIN_B0); while(true) { bien=read_adc(); bien=bien/2.3; if(input(PIN_B5)==0) k=k+1; delay_ms(100); if(k==0) ///gia tri o menu k=0; { mua(); amkhongLCD(); denkhongLCD(); delay_ms(100); } if(k==1) ///gia tri o menu k=1; { Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 69/75 LCD_Clear(); am(); muakhongLCD(); denkhongLCD(); delay_ms(100); } if(k==2) { den(); muakhongLCD(); amkhongLCD(); delay_ms(100); } if(k==3) { quat(); denkhongLCD(); muakhongLCD(); amkhongLCD(); delay_ms(100); } //chong rung phim if(k>3)///gia tri o menu k>2; { mua(); /// phai set o day gia tri mua va den den();/// vi neu khong co gia tri thi se bi phim ve k==1 k=0; Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thông qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 70/75 delay_ms(200); } if(sms_mode==true) { delay_ms(1000); LCD_Clear(); LCD_Gotoxy(0,0); sprintf(str,"Message received "); LCD_Puts(str); LCD_Gotoxy(0,1); sprintf(str," Processing"); LCD_Puts(str); delay_ms(500); LCD_Clear(); delay_ms(500); if(buffer[1]=='a'&&buffer[2]=='b') { LCD_Gotoxy(0,0); sprintf(str," Dang mo"); LCD_Puts(str); LCD_Gotoxy(0,1); sprintf(str," bong den dien"); LCD_Puts(str); output_high(PIN_B1); output_high(PIN_D0); delay_ms(1000); LCD_Clear(); Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 71/75 if(input(PIN_B4)==1) { LCD_Gotoxy(0,1); sprintf(str," Bong den bi loi"); LCD_Puts(str); printf("AT+CMGS=\"01222347415\""); delay_ms(500); putc(13); delay_ms(1000); printf("tat"); delay_ms(1000); putc(26); delay_ms(500); sms_mode=false; } sms_mode=false; } else if(buffer[1]=='e'&&buffer[2]=='f') { LCD_Gotoxy(1,0); sprintf(str," Dang tat"); LCD_Puts(str); LCD_Gotoxy(1,1); sprintf(str," bong den dien"); LCD_Puts(str); output_low(PIN_B1); output_low(PIN_D0); Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 72/75 delay_ms(1000); sms_mode=false; } sms_mode=false; }}} Code C# giao diện điều khiển, hiễn thị trạng thái mưa điều khiển đèn using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; using System.IO.Ports; using System.Xml; namespace LUANVAN { public partial class Form2 : Form { string s1 = "tat"; string s2 = "mua"; string s3 = "het"; string s4 = "sang"; string s5 = "soi"; SerialPort P = new SerialPort(); string InputData = String.Empty; Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 73/75 delegate void SetTextCallback(string text); public Form2() { InitializeComponent(); P.ReadTimeout = 1000; P.DataReceived += new SerialDataReceivedEventHandler(DataReceive); } private void DataReceive(object obj, SerialDataReceivedEventArgs e) { InputData = P.ReadExisting(); if (InputData != String.Empty) { SetText(InputData); }} private void SetText(string text) { if (this.txtkq.InvokeRequired) { SetTextCallback d = new SetTextCallback(SetText); this.Invoke(d, new object[] { text }); } else this.txtkq.Text += text; } private void Form2_Load(object sender, EventArgs e) { P.PortName = "COM23"; P.BaudRate = 9600; Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 74/75 P.DataBits = 8; P.Parity = Parity.None; P.StopBits = StopBits.One; P.Open(); Image image = Image.FromFile(tb_image1.Text); pictureBox2.Image = image; Image image1 = Image.FromFile(tb_image3.Text); pictureBox4.Image = image1; Image image2 = Image.FromFile(tb_image5.Text); pictureBox3.Image = image2; } private void txtkhoidong_Click(object sender, EventArgs e) { P.Write("AT+CMGS=\"01226780371\""); P.Write(new string(new char[] { (char)13 }, 0, 1)); } private void txtden1_Click(object sender, EventArgs e) { P.Write("+ab."); P.Write(new string(new char[] { (char)26 }, 0, 1)); txtkq.Text = ""; txttt1.Text = "Mo"; Image image = Image.FromFile(tb_image.Text); pictureBox2.Image = image; } private void txttden1_Click(object sender, EventArgs e) { Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thơng qua SMS SVTH: Nguyễn Hữu Cần ĐỒ ÁN TỐT NGHIỆP Trang 75/75 P.Write("+ef."); P.Write(new string(new char[] { (char)26 }, 0, 1)); txtkq.Text = ""; txttt1.Text = "Tat"; Image image = Image.FromFile(tb_image1.Text); pictureBox2.Image = image; } private void txtkq_TextChanged(object sender, EventArgs e) { if (txtkq.Text.IndexOf(s1) >= 0) { txttt1.Text = "Tat"; Image image = Image.FromFile(tb_image1.Text); pictureBox2.Image = image; txtkq.Text = ""; } if (txtkq.Text.IndexOf(s2) >= 0) { txttt4.Text = "Mua"; Image image = Image.FromFile(tb_image2.Text); pictureBox4.Image = image; txtkq.Text = ""; } if (txtkq.Text.IndexOf(s3) >= 0) { txttt4.Text = "Het Mua"; Image image = Image.FromFile(tb_image3.Text); pictureBox4.Image = image; txtkq.Text = ""; }}} Thiết kế hệ thống điều khiển giám sát thiết bị máy tính thông qua SMS SVTH: Nguyễn Hữu Cần