Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 65 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
65
Dung lượng
5,67 MB
Nội dung
TRƯỜNG ĐẠI HỌC VINH KHOA ĐIỆN TỬ VIỄN THÔNGĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI: THIẾTKẾ,CHẾTẠOHỆTHỐNGGIÁMSÁTNHIỆTĐỘTỪXATHÔNGQUAMẠNGDỮLIỆUGPRS Giảng viên hướng dẫn: ThS Lê Văn Chương Sinh viên thực hiện : Hoàng Bảo Như Lớp : 52K - ĐTTT Mã số sinh viên : 1151089228 NGHỆ AN - 2016 LỜI CẢM ƠN Sau trình học tập rèn luyện khoa Điện tử - Viễn thông trường Đại học Vinh em trang bị kiến thức bản, kỹ thực tế để hoàn thành tốt đồ án tốt nghiệp Em xin chân thành cảm ơn thầy cô giáo khoa Điện tử Viễn thông trường Đại học Vinh quan tâm hướng dẫn truyền đạt kiến thức quý báu kinh nghiệm cho em suốt thời gian học trường nói chung đồ án tốt nghiệp nói riêng Qua em xin chân thành cảm ơn ThS Lê Văn Chương hướng dẫn tận tình để giúp em hoàn thành đồ án tốt nghiệp Trong suốt thời gian làm đồ án em cố gắng hoàn thành không tránh khỏi sai sót, em mong nhận đóng góp ý kiến quý thầy cô bạn để đồ án em có tính thiết thực Cuối em xin chúc thầy, cô giáo sức khỏe, nhiều thành công nghiệp trồng người Em xin chân thành cảm ơn MỤC LỤC LỜI CẢM ƠN MỤC LỤC MỞ ĐẦU DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ DANH MỤC BẢNG BIỂU TRONG BÁO CÁO Hình 1.1 Base Station Controller – Bộ điều khiển trạm gốc 16 1.2.2 Kiến trúc GPRS 20 1.2.3 Nguyên tắc hoạt động GPRS 25 CHƯƠNG II : GIAO THỨC TCP/IP 27 2.1 GIỚI THIỆU VỀ GIAO THỨC TCP/IP 27 2.1.1 Lịch sử .27 2.1.2 Khái niệm giao thức TCP/IP .29 2.2 TỔNG QUÁT VỀ GIAO THỨC TCP/IP .29 Hình 2.1 Các tầng giao thức TCP/IP 29 2.2.2 Giao thức điều khiển truyền liệu TCP 34 Hình 2.4 Cổng truy nhập dịch vụ TCP 34 Bảng 2.1 Một số cổng TCP phổ biến 36 Bảng 2.2 Dạng thức segment TCP 37 CHƯƠNG III : THIẾTKẾ,CHẾTẠOHỆTHỐNGGIÁMSÁTNHIỆTĐỘTỪXATHÔNGQUAMẠNGDỮLIỆUGPRS 39 3.1 YÊU CẦU THIẾT KẾ 39 3.2 SƠ ĐỒ KHỐI 39 Hình 3.1 Sơ đồ tổng quan hệthống 39 3.3 THIẾT KẾ CÁC KHỐI CHỨC NĂNG .39 3.3.1 Giới thiệu Module Sim900 39 3.3.2 Khối vi điều khiển 47 Hình 3.11 Sơ đồ chân PIC 16F887 47 3.3.3 Khối cảm biến DS18B20 50 Hình 3.13 Sơ đồ chân DS18B20 50 Hình 3.14 Sơ đồ khối DS18B20 .51 Hình 3.15 Bộ nhớ DS18B20 51 Hình 3.16 Kết nối vi điều khiển cảm biến 53 3.4 THIẾT KẾ PHẦN MỀM 53 Hình 3.17 Lưu đồ thuật toán 54 3.5 THIẾT KẾ THI CÔNG 55 Hình 3.18 Module Sim900 55 Hình 3.19 Mạch vi điều khiển 55 Hình 3.20 Kết nối mạch lại với 55 Hình 3.21 Giao diện trang web 56 KẾT LUẬN 57 TÀI LIỆU THAM KHẢO .58 PHỤ LỤC 59 TÓM TẮT ĐỒ ÁN Đồ án nghiên cứu lập trình cho vi điều khiển giao tiếp với cảm biến, vi điều khiển giao tiếp với module Sim900A để gửi liệu lên trang web Để đạt được mục đích ta sâu vào tìm hiểu kiến thức Module Sim900A, cảm biến nhiệtđộ DS18B20, vi điều khiển PIC16F887,… Nắm vững cách viết chương trình, đề hướng phát triển để đề tài hoàn thiện ABSTRACT The thesis researches programming for microcontrollers communicate with sensors, microcontrollers communicate with the module Sim900A to send data to the website To achive that goal, we go into learn the basics of Module Sim900A, Temperature sensor DS18B20, Microcontrollers PIC16F887,… Mastering how to write programs, proposed the development direction to more completed thesis MỞ ĐẦU Hiện với phát triển kinh tế - xã hội, vấn đề an toàn cháy nổ quan tâm lớn từxã hội Các hệthốnggiám sát,cảnh báo đời Một số giámsát cảnh báo nhiệtđộ người quan tâm cao Vì nhiệtđộ tăng ảnh hưởng tới yếu tố khác thiên nhiên ảnh hưởng trực tiếp tới người Bên cạnh việc thu thập thông tin cảnh báo quamạng quan tâm rộng rãi Với phương pháp này, thu thập liệutừ khu vực hay đối tượng mà không cần phải tác động trực tiếp Sự bùng nổ Internet tạo môi trường thuận lợi cho việc truy cập thu thập liệu Việc thu thập thông tin cảnh báo toán thiết thực, vận dụng linh hoạt kiến thức ứng dụng nhiều thực tế Đây chủ đề mẻ nhiều công ty, tòa nhà áp dụng để nâng cao tính an toàn cho người cải xã hội Chính lý nên định chọn đề tài “ Thiếtkế,chếtạohệthốnggiámsátnhiệtđộtừxathôngquamạngliệu GPRS” Đây toán nhỏ, giúp chúng em có nhìn khái quát toán, tạo sở tiền đề cho tìm tòi phát triển hướng cao nghiên cứu công nghệ Nội dung đồ án trình bày chương Chương 1: Tổng quan hệthống GSM GPRS Chương 2: Giao thức TCP/IP Chương 3: Thiếtkế,chếtạohệthốnggiámsátnhiệtđộtừxathôngquamạngliệuGPRS Mặc dù có nhiều cố gắng nhiên t hời gian có hạn điều kiện thực hạn chế không tránh khỏ sai sót trình bày phần thể hiện, mong thầy cô bạn góp ý bổ sung thêm Em xin chân thành cảm ơn! Nghệ An, tháng 05 năm 2016 Sinh viên thực Hoàng Bảo Như DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1.1 Base Station Controller – Bộ điều khiển trạm gốc Error: Reference source not found Hình 1.2 Cấu trúc mạngGPRS Error: Reference source not found Hình 1.3 Các khối mạngGPRS Error: Reference source not found Hình 2.1 Các tầng giao thức TCP/IP Hình 2.2 Cấu trúc lớp địa IP Error: Reference source not found Error: Reference source not found Hình 2.3 Dạng thức gói tin IPError: Reference source not found Hình 2.4 Cổng truy nhập dịch vụ TCP Error: Reference source not found Hình 3.1 Sơ đồ tổng quan hệthống Error: Reference source not found Hình 3.2 Module SIM900 Error: Reference source not found Hình 3.3 Khối nguồn Error: Reference source not found Hình 3.4 Khối Sim900A Error: Reference source not found Hình 3.5 Khối UART Error: Reference source not found Hình 3.6 Khối Microphone Hình 3.7 Khối Speaker Error: Reference source not found Error: Reference source not found Hình 3.8 Sơ đồ chân SIM900 Error: Reference source not found Hình 3.9 Sơ đồthiết kế Breakout Module SIM900 Error: Reference source not found Hình 3.10 Cấu hình mặc định cho SIM900 Error: Reference source not found Hình 3.11 Sơ đồ chân PIC 16F887 Error: Reference source not found Hình 3.12 Cấu trúc bên PIC 16F887 Error: Reference source not found Hình 3.13 Sơ đồ chân DS18B20 Error: Reference source not found Hình 3.14 Sơ đồ khối DS18B20 Error: Reference source not found Hình 3.15 Bộ nhớ DS18B20 Error: Reference source not found Hình 3.16 Kết nối vi điều khiển cảm biến Hình 3.17 Lưu đồ thuật toán Error: Reference source not found Error: Reference source not found Hình 3.18 Module Sim900 Error: Reference source not found Hình 3.19 Mạch vi điều khiển Error: Reference source not found Hình 3.20 Kết nối mạch lại với Error: Reference source not found Hình 3.21 Giao diện trang web Error: Reference source not found DANH MỤC BẢNG BIỂU TRONG BÁO CÁO Bảng 1.1 Tốc độliệu truyền GPRS Error: Reference source not found Bảng 1.2 Tốc độ kênh truyền GPRS Error: Reference source not found Bảng 2.1 Một số cổng TCP phổ biến Error: Reference source not found Bảng 2.2 Dạng thức segment TCP Error: Reference source not found CÁC TỪ VIẾT TẮT SỬ DỤNG TRONG BÁO CÁO Từ viết tắt Tiếng Anh Tiếng Việt GSM Global System for Mobile communication Hệthống truyền thông di động toàn cầu TDMA Time Division Mutiple Access Đa truy cập phân chia theo thời gian FDMA Frequence Division Mutiple Access Đa truy cập phân chia theo tần số ETSI European Telecommunication Standards Institude Viện tiêu chuẩn viễn thông Châu Âu BSC Base Station Controller Bộ điều khiển trạm gốc BSS Base Station System Hệthống trạm gốc HLR Home Location Register Thanh ghi định vị thường trú VLR Visitor Location Register Thanh ghi định vị tạm trú GPRS General Packet Radio Service Dịch vụ vô tuyến gói tổng hợp SMSC Short Message Service Centre Dịch vụ tin ngắn SGSN Serving GPRS Support Node Nút phục vụ thuê bao GPRS GGSN Gateway GPRS Support Node Nút định tuyến GPRS TCP/IP Transmission Control Protocol/Internet Protocol Giao thức Điều Khiển Truyền Thông/Giao thức Internet ICMP Internet control message protocol Giao thức điều khiển thông điệp Internet IGMP Internet group management protocol Giao thức quản lý nhóm Internet 10 Hình 3.14 Sơ đồ khối DS18B20 • Mã 64 bit ROM: Mỗi cảm biến nhiệt DS18B20 có dãy mã 64 bit lưu trữ nhớ ROM khắc kĩ thuật laze bit đầu mã định danh họ dây, mã DS18B20 28h 48 bit mã xuất xưởng nhất, nghĩa cảm biến DS18B20 có mã bit cuối có ý nghĩa byte mã kiểm tra CRC (cyclic redundancy check), byte tính toán từ 56 bit dãy mã ROM • Bộ nhớ SCRATCHPAD: Bộ nhớ DS18B20 bao gồm ghi bit Hình 3.15 Bộ nhớ DS18B20 Giải thích: 51 Byte chứa LSB, MSB ghi nhiệtđộ Byte đọc Byte 2, 3: cập nhật ghi TH TL, lưu giá trị nhiệtđộ ngưỡng Byte 4: chứa liệu ghi cấu hình hoạt động DS18B20 (Configuration Register) Byte 5, không sử dụng Byte 8: ghi đọc chứa mã kiểm tra CRC từ byte đến byte Dữliệu byte 2,3,4 ghi thôngqua lệnh Write Scratchpad [4Eh] liệu truyền đến DS18B20 với bit LSB byte 2, sau ghi liệu đọc lại thôngqua lệnh Read Scratchpad [BEh] đọc Scratchpad bit LSB byte gửi trước tất byte đọc, ghi byte 2,3 Để chuyển giá trị TH TL từ nhớ vào EEPROM cần gửi 52 lệnh Copy Scratchpad [48h] đến DS18B20 Và liệutừ EEPROM chuyển vào ghi TH, TL thôngqua lệnh Recall E2 [B8h] 3.3.3.3 Phương thức giao tiếp Việc trao đổi liệu VĐK DS18B20 thôngqua bước: • Bước 1: Khởi tạo xung reset nhận tin hiệu từ DS18B20 Quá trình khởi tạo bao gồm xung reset VĐK gửi đến DS18B20, sau xung presence từ DS18B20 gửi đến VĐK, để báo hiệu cho VĐK biết diện DS18B20, trình hoạt động trao đỏi liệu bắt đầu • Bước 2: Lệnh điều khiển ROM Các lệnh làm việc với mã 64 bit ROM, lệnh phát sau trình khởi tạo Lệnh cho phép VĐK biết có thiết bị thiết bị loại bus • Bước 3: Lệnh chức DS18B20 Sau VĐK định địa thiết bị cần giao tiếp thôngqua lệnh ROM, VĐK gửi lệnh điều khiển hoạt động DS18B20 Những lệnh cho phép VĐK ghi đọc liệutừ nhớ Scratchpad DS18B20, bắt đầu trình chuyển đổi nhiệtđộ xác định chếđộ cấp nguồn Kết nối với VĐK đấu mạch cảm biến: Hình 3.16 Kết nối vi điều khiển cảm biến 3.4 THIẾT KẾ PHẦN MỀM Lưu đồ thuật toán 53 Hình 3.17 Lưu đồ thuật toán 54 3.5 THIẾT KẾ THI CÔNG Mạch thực tế Hình 3.18 Module Sim900 Hình 3.19 Mạch vi điều khiển Hình 3.20 Kết nối mạch lại với 55 Web server đề tài sử dụng trang web thingspeak.com Hình 3.21 Giao diện trang web Kết quả: thiếtkế,chếtạo thành công hệthốnggiámsátnhiệtđộtừxathôngquamạngliệuGPRSHệthống thu thập liệunhiệtđộtự động gửi lên Web Server Từgiámsát đánh không cần đến trực tiếp đối tượng cần đo 56 KẾT LUẬN Đề tài kết nghiên cứu thiết kế chếtạohệthốnggiámsátnhiệtđộtừxathôngquamạngliệuGPRS đạt kết sau: + Kiến thức tập lệnh PIC16F887 để giao tiếp với Module Sim900A xây dựng chương trình để kết nối, gửi liệu lên Web Server + Hiểu cấu trúc Module Sim900A, PIC16F887 cảm biến nhiệtđộ DS18B20 + Thiết kế chếtạo thành công hệthốnggiámsátnhiệtđộtừxathôngquamạngliệuGPRS + Các kết thực tế đáp ứng yêu cầu đặt trước thiết kế Hạn chế đề tài + Hệthống đơn giản chưa tích hợp nhiều tính cảnh báo, điều khiển thiết bị,… + Giao diện Web Server đơn giản Hướng phát triển đề tài Qua đề tài này, em đạt số kết định Tuy nhiên để đáp ứng nhu cầu thực tế thiết kế phát triển thêm hướng như: + Cảnh báo nhiệtđộqua SMS + Bật tắt thiết bị cần thiếtnhiệtđộ vượt mức độ cho phép + Có thể sử dụng thêm nhiều loại cảm biến khác, chẳng hạn cảm biến độ ẩm không khí để đođộ ẩm không khí, hệthống báo cháy tự động,… để ứng dụng vào đề tài 57 TÀI LIỆU THAM KHẢO [1] Văn Thế Minh, Kĩ thuật vi xử lý, Nhà xuất giáo dục, 1997 [2] Mischa Schwartz, Mobile Wireless Communications, Columbia University, New York, 2013 [3] Ngô Đình Phú, Giáo trình Vi xử lý, Khoa Điện – Điện tử, trường đại học Sư phạm Kĩ Thuật, 2004 [4] Các website: http://codientu.org/, truy cập lần cuối vào ngày 11/5/2016 https://vi.wikipedia.org, truy cập lần cuối vào ngày 9/5/2016 http://www.alldatasheet.com/, truy cập lần cuối vào ngày 10/5/2016 http://www.microchip.com/, truy cập lần cuối vào ngày 12/5/2016 http://www.simcom.eu/, truy cập lần cuối vào ngày 08/5/2016 http://www.picvietnam.com/, truy cập lần cuối vào ngày 10/5/2016 58 PHỤ LỤC *Chương trình #include #device *=16 adc=10 #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,NOLVP, NOCPD, NOWRT #use delay(clock=20000000) #include #include "1_day.c" #include "DS18B20.c" #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8) float temperature; // void main() { LCD_Init(); // Khoi tao cho ngat ngoai===================================== enable_interrupts (INT_EXT); ext_int_edge(H_TO_L); enable_interrupts (GLOBAL); //Khoi taoche cho bo ADC===================================== LCD_Cmd(0x01); printf(LCD_Char,"nhiet do"); delay_ms(5000); while(true) { temperature=ds18b20_read(); LCD_Cmd(0xC4); Printf(LCD_Char,"TEMP: %3.1f",temperature); LCD_Char(223); 59 LCD_Char("C"); delay_ms(5000); printf("AT+CIPSTART="); putc(34);printf("TCP"); putc(34); printf(","); putc(34);printf("184.106.153.149"); putc(34);printf(",80"); putc(13);putc(10); LCD_Cmd(0x01); printf(LCD_Char,"AT+CIPSTART"); delay_ms(5000); LCD_Cmd(0x01); printf("AT+CIPSEND"); putc(13);putc(10); LCD_Cmd(0x01); printf(LCD_Char,"AT+CIPSEND"); delay_ms(5000); LCD_Cmd(0x01); printf(LCD_Char,"SEND "); LCD_Data(0x01); printf("GET /update?key=M5VCLAK68RKSYHGU&field1="); printf("%3.1f",temperature); putc(13);putc(10); putc(26); delay_ms(5000); LCD_Cmd(0x01); printf(LCD_Char,"CLOSE"); } } //The End======================================= 60 *Thư viện LCD //#define lcd_light PIN_D0 #define lcd_RS PIN_D1 #define lcd_RW PIN_D2 #define lcd_E PIN_D3 #define lcd_B1 PIN_D4 #define lcd_B2 PIN_D5 #define lcd_B3 PIN_D6 #define lcd_B4 PIN_D7 #use delay(clock=20000000) //====================Cac ham dung ngoai thu vien============== #separate void LCD_Init(); // khai bao LCD #separate void LCD_Position(int x); // Di chuyen vi tri tro #separate void LCD_Char(int x); // Hien Thi bien Char #separate void LCD_Cmd(int x); // Gui lenh len LCD #separate void LCD_Pulse(); #separate void LCD_CGRAM(); //=========================Chuong trinh======================== #separate void LCD_Data (int x) { output_bit(lcd_B1, x & 0x01); output_bit(lcd_B2, x & 0x02); output_bit(lcd_B3, x & 0x04); output_bit(lcd_B4, x & 0x08); } #separate void LCD_Pulse() { 61 output_high(lcd_E); delay_us ( 3); // was 10 output_low(lcd_E); delay_us ( 150); // was } #separate void LCD_Position(int x) { LCD_Data(Swap(x) | 0x08); LCD_Pulse(); LCD_Data(Swap(x)); LCD_Pulse(); } #separate void LCD_Cmd (int x) { LCD_Data(Swap(x)); LCD_Pulse(); LCD_Data(Swap(x)); LCD_Pulse(); if (x == 0x01) delay_us(2000); } #separate void LCD_Char (int x) { output_high(lcd_RS); LCD_Data(Swap(x)); LCD_Pulse(); LCD_Data(Swap(x)); LCD_Pulse(); output_low(lcd_RS); 62 } #separate void LCD_Init () { // output_high(lcd_open); LCD_Data(0x00); delay_ms(20); //cho cho VDD len >> 15ms output_low (lcd_RS); //mac dinh la viet lenh output_low (lcd_RW); //mac dinh la LCD nhan lenh LCD_Data(0x03); //che bit LCD_Pulse(); LCD_Pulse(); LCD_Pulse(); LCD_Data(0x02); //xoa man hinh LCD_Pulse(); LCD_Cmd(0x2c); LCD_Cmd(0x0c); //bat hien thi tat tro LCD_Cmd(0x06); //tang tro LCD_Cmd(0x01); //xoa man hinh hien thi } *Thư viện PIC16F887 #byte INDF = 0x00 #byte TMR0 = 0x01 #byte PCL = 0x02 #byte STATUS= 0x03 #byte FSR = 0x04 #byte PORTA = 0x05 #byte PORTB = 0x06 #byte PORTC = 0x07 #byte PORTD = 0x08 #byte PORTE = 0x09 63 #byte PCLATH= 0x0A #byte INTCON= 0x0B #byte PIR1 = 0x0C #byte PIR2 = 0x0D #byte TMR1L = 0x0E #byte TMR1H = 0x0F #byte T1CON = 0x10 #byte TMR2 = 0x11 #byte T2CON = 0x12 #byte SSPBUF= 0x13 #byte SSPCON= 0x14 #byte CCPR1L= 0x15 #byte CCPR1H= 0x16 #byte CCP1CON=0x17 #byte RSCTA = 0x18 #byte TXREG = 0x19 #byte RCREG = 0x1A *Thư viện DS18B20 #ifndef DS18B20_C #define DS18B20_C #include "1_day.c" float ds18b20_read(); void ds18b20_configure(int8 TH, int8 TL, int8 config); float ds18b20_read() { int8 busy=0, temp1, temp2; signed int16 temp3; float result; onewire_reset(); onewire_write(0xCC); onewire_write(0x44); while(busy == 0) 64 busy = onewire_read(); onewire_reset(); onewire_write(0xCC); onewire_write(0xBE); temp1 = onewire_read(); temp2 = onewire_read(); temp3 = make16(temp2, temp1); //result = (float) temp3 / 2.0; result = (float) temp3 / 16.0; delay_ms(200); // return(result); } void ds18b20_configure(int8 TH, int8 TL, int8 config) { onewire_reset(); onewire_write(0xCC); onewire_write(0x4E); onewire_write(TH); onewire_write(TL); onewire_write(config); } #endif / 65 ... công nghệ Nội dung đồ án trình bày chương Chương 1: Tổng quan hệ thống GSM GPRS Chương 2: Giao thức TCP/IP Chương 3: Thiết kế, chế tạo hệ thống giám sát nhiệt độ từ xa thông qua mạng liệu GPRS. .. Chính lý nên định chọn đề tài “ Thiết kế, chế tạo hệ thống giám sát nhiệt độ từ xa thông qua mạng liệu GPRS Đây toán nhỏ, giúp chúng em có nhìn khái quát toán, tạo sở tiền đề cho tìm tòi phát... HỆ THỐNG GIÁM SÁT NHIỆT ĐỘ TỪ XA THÔNG QUA MẠNG DỮ LIỆU GPRS 39 3.1 YÊU CẦU THIẾT KẾ 39 3.2 SƠ ĐỒ KHỐI 39 Hình 3.1 Sơ đồ tổng quan hệ thống 39 3.3 THIẾT KẾ