Thiết kế hệ thống điều khiển xa bật tắt thiết bị dân dụng

94 62 1
Thiết kế hệ thống điều khiển xa bật tắt thiết bị dân dụng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

VIỆN ĐẠI HỌC MỞ HÀ NỘI KHOA SAU ĐẠI HỌC  LUẬN VĂN TỐT NGHIỆP THIẾT KẾ HỆ THỐNG ĐIỀU KHỂN XA BẬT TẮT THIẾT BỊ DÂN DỤNG Giảng Viên Hướng Dẫn: TS Nguyễn Hoàng Dũng Người thực hiện: Nguyễn Hồng Thao Lớp: KTVT – ĐT8 Hà Nội 2017 LỜI CẢM ƠN Lời đầu tiên, em xin gửi lời biết ơn sâu sắc đến TS Nguyễn Hồng Dũng Người tận tình hướng dẫn, bảo, giúp đỡ em sốt trình làm luận văn Em xin gửi lời cảm ơn đến thầy cô giảng dạy thầy cô Khoa đào tạo sau Đại học truyền đạt kiến thức giúp đỡ em suốt trình học Và cuối em xin gửi lời cảm ơn tới đồng nghiệp, gia đình bạn bè người ủng hộ, động viên tạo điều kiện giúp đỡ em có kết ngày hơm Tác giả luận văn Nguyễn Hồng Thao LỜI CAM ĐOAN Tơi cam đoan cơng trình nghiên cứu riêng Các số liệu, kết nên luận văn trung thực chưa cơng bố bất kz cơng trình khác Tác giả luận văn Nguyễn Hồng Thao LỜI NÓI ĐẦU Thế giới đà phát triển mạnh mẽ, khoa học công nghệ, kĩ thuật phát triển Đời sống người dân nâng cao dẫn đến nhu cầu sở hữu sử dụng thiết bị công nghệ ngày nhiều Ứng dụng công nghệ tăng theo Những thiết bị công nghệ giúp người không cần phải động tay trực tiếp mà điều khiển thiết bị hay khơng cần phải tận nhà để giải hay bị kẻ trộm đột nhập Những việc khoa học viễn thơng, điện tử ngày khơng chuyện khó mục tiêu hướng tới người điều khiển thiết bị đơn mà tích hợp nhiều chức truyền thơng, đa phương tiện vào thiết bị điện Chính vậy, tác giả chọn đề tài tốt nghiệp: “Thiết kế hệ thống điều khiển từ xa bật tắt thiết bị dân dụng ” Luận văn gồm chương:  Chương 1: Cơ sở lý thuyết chung  Chương 2: Thiết kế hệ thống  Chương 3: Kết mô Xin chân thành cảm ơn TS Nguyễn Hồng Dũng nhiệt tình hướng dẫn, chỉnh sửa, tạo hội cho bọn hoàn thành luận văn thời gian ngắn Học viên thực MỤC LỤC LỜI NÓI ĐẦU MỤC LỤC TÓM TẮT LUẬN VĂN .5 DANH MỤC HÌNH DANH MỤC BẢNG BIỂU DANH MỤC TỪ VIẾT TẮT MỞ ĐẦU 12 Đặt vấn đề 12 Phạm vi nghiên cứu 13 Mục tiêu đề tài .13 Phương pháp nghiên cứu .13 CHƯƠNG 1: CƠ SỞ LÝ THUYẾT CHUNG 14 1.1 Giới thiệu vi xử lý trung tâm NUC140VE3CN 14 1.1.1 Vi điều khiển gì? 14 1.1.2 Đặc trưng dòng vi điều khiển MCU 32 bit lõi ARM Cortex-M0 14 1.1.3 Vi điều khiển MCU 32 bit lõi ARM Cortex-M0 hãng Nuvoton .15 1.1.4 Giới thiệu vi điều khiển Numicro NUC140 hãng Novoton 16 1.1.5 Công cụ hỗ trợ lập trình phát triển vi điều khiển 32 bit ARM Cortex – M0 hãng Nuvoton .15 1.1.6 Hệ thống quản lý vi điều khiển Numicro Nuc140 .15 1.2 Module SIM800C số tập lệnh AT sử dụng cho ứng dụng GSM 17 1.2.1 Bật/Tắt ứng dụng SIM800C 22 1.2.2 Tắt ứng dụng GSM module SIM800C 23 1.2.3 Sử dụng lệnh AT để tắt ứng dụng GSM: 24 1.2.4 Truyền thông nối tiếp với SIM800C .24 1.2.5 Sử dụng ứng dụng GSM cho dịch vụ gửi tin nhắn gọi 27 1.3 Giới thiệu tập lệnh AT dùng cho SMS 28 1.3.1 Giới thiệu 28 1.3.2 Sử dụng ứng dụng GSM cho dịch vụ gửi tin nhắn gọi: .30 1.3.3 Các thuật ngữ 30 1.3.4 Khởi tạo cho ứng dụng GSM: .30 1.3.5 Nhận gọi 35 1.3.6 Thiết lập gọi 36 1.3.7 Đọc tin nhắn: 38 1.3.8 Gửi tin nhắn 39 1.4 Giao tiếp UART 40 1.5 Kết luận chương 42 CHƯƠNG 2: THIẾT KẾ HỆ THỐNG .43 2.1 Sơ đồ khối chức khối 43 2.2 Tổng quan phần mền thiết kế mạch Altium Designer 44 2.2.1 Tổng quan 44 2.2.2 Khởi tạo Project Altium 47 2.3 Tổng quan phần mềm lập trình vi điều khiển Keil C 53 2.4 Chức khối lựa chọn giải pháp cho khối 54 2.4.1 Khối nguồn 54 2.4.2 Khối truyền thông .55 2.4.3 Khối ngoại vi 55 2.4.4 Khối chấp hành 56 2.4.5 Khối xử lý trung tâm 56 2.5 Sơ đồ chi tiết khối 56 2.5.1 Khối xử lý trung tâm 56 2.5.2 Khối nguồn 57 2.5.3 Khối chấp hành 58 2.5.4 Khối chân nạp ISP 60 2.5.5 Khối chân nạp ICP 61 2.5.6 Khối giao tiếp với SIM 800C 61 2.5.6 Khối ngoại vi 63 2.5.7 Khối tạo dao đông 64 2.5.8 Khối Reset 65 2.6 Sơ đồ nguyên lý toàn mạch .67 2.7 Mạch in sau layout máy tính 68 2.8 Mạch 3D 71 2.9 Kết luận chương 71 CHƯƠNG 3: KẾT QUẢ VÀ ĐÁNH GIÁ 72 3.1 Sản phẩm hoàn thiện 72 3.2 Kết đánh giá 76 3.2.1 Kết thực nghiệm 76 3.2.2 Đánh giá 77 3.3 Kết luận chương 77 KẾT LUẬN .78 TÀI LIỆU THAM KHẢO 79 PHỤ LỤC 80 TĨM TẮT LUẬN VĂN Nội dung luận văn thiết kế hệ thống điều khiển thiết bị từ xa bật tắt thiết bị dân dụng GSM Hệ thống trang bị vi xử lý trung tâm vi điều khiển NUC140VE3CN có lõi ARM Cortex M0 có đặc tính tiết kiệm lượng, hệ thống cho phép điều khiển thiết bị dân dụng nơi có sóng điện thoại, điều khiển thiết bị cho phép mở rộng lên nhiều thiết bị Thiết bị kết nối điều khiển thông qua việc gửi tin nhắn gọi điện tới số điện thoại sử dụng Module SIM800C tích hợp vào mạch DANH MỤC HÌNH Hình 1 Biểu đồ phân loại dòng vi điều khiển 32-bit lõi ARM Cortex-M0 16 Hình Chuỗi mã lựa chọn cho vi điều khiển dòng NuMicroNUC140 .19 Hình Cấu hình chân dòng NuMicroNUC140 LQFP 100-chân 19 Hình Sơ đồ khối nguồn Numicro NUC140 16 Hình Module SIM800C mini 17 Hình Anten thu phát GSM 18 Hình Sơ đồ chân SIM800C .19 Hình Chuẩn giao tiếp SIM800C 25 Hình Kết nối SIM card chân 26 Hình 10 Chuyển từ chế độ bình thường sang chế độ nghỉ 31 Hình 11 Đưa module trở trạng thái hoạt động 31 Hình 12 Khởi tạo cấu hình mặc định cho module SIM800 32 Hình 13 Khởi tạo module SIM800C 34 Hình 14 Nhận gọi 35 Hình 15 Thiết lập gọi 36 Hình 16 Đọc tin nhắn từ vùng nhớ SIM 38 Hình 17 Gửi tin nhắn 39 Hình Sơ đồ khối hệ thống 43 Hình 2 Giao diện Thiết kế sơ đồ nguyên lý Altium Designer .45 Hình Tạo dự án Altium Designer 47 Hình Chọn đường dẫn lưu Project 48 Hình Tạo sơ đồ nguyên lý Altium Designer .49 Hình Tạo sơ đồ mạch in Altium Designer 50 Hình Tạo thư viện nguyên lý Altium Designer 51 Hình Tạo thư viện chân linh kiện Altium Designer 52 Hình Project đầy đủ file cần thiết Altium Designer 53 Hình 10 Phần mềm Keil C lập trình cho STM32F103C8T6 54 Hình 11 Sơ đồ nguyên lý toàn mạch 67 Hình 12 Hình dạng mặt TOP 68 Hình 13 Hình dạng mặt BOTTOM .69 Hình 14 Hình layout tồn mạch .70 Hình 15 Hình ảnh mạch 3D 71 Hình Sản phẩm sau hoàn thiện .72 Hình Sản phẩm cắm thêm Module SIM800C 73 Hình 3 Kiểm tra thử tính điều khiển từ xa qua sóng GSM 74 Hình Điều khiển thiết bị tin nhắn gửi từ điện thoại 75 CHƯƠNG 3: KẾT QUẢ VÀ ĐÁNH GIÁ 3.1 Sản phẩm hồn thiện Hình Sản phẩm sau hồn thiện 72 Hình Sản phẩm cắm thêm Module SIM800C 73 Hình 3 Kiểm tra thử tính điều khiển từ xa qua sóng GSM 74 Hình Điều khiển thiết bị tin nhắn gửi từ điện thoại 75 - Để điều khiển thiết bị từ xa, cần phải gửi tin nhắn tới số điện thoại SIM gắn mạch: Với trường hợp sử dụng số điện thoại: 0169 251 5041 - Cú pháp nhắn tin là:  ON1 : Bật thiết bị  ON2 : Bật thiết bị  ON3 : Bật thiết bị  OFF1: Tắt thiết bị  OFF2: Tắt thiết bị  OFF3: Tắt thiết bị - Ví dụ muốn bật thiết bị soạn tin với cú pháp: “ON1” gửi “0169 251 5041” 3.2 Kết đánh giá 3.2.1 Kết thực nghiệm - Cho sản phẩm cấp nguồn liên tục ngày, kiểm tra kết thời điểm khác với thiết bị lần bật tắt - Thời gian kiểm nghiệm từ 17h00 ngày 01/ 12/ 2017 đến 18h00 ngày 03/ 12/ 2017 - Bảng kết test sản phẩm Bảng Test lần lúc 18h00 ngày 01/12/2017 Bật TB1 Tắt TB1 Bật TB2 Tắt TB2 Bật TB3 Tắt TB3 Lần 1(LT) ON1 OFF1 ON2 OFF2 ON3 OFF3 Trạng thái thiết bị ON OFF ON OFF ON OFF Lần 2(LT) ON1 OFF1 ON2 OFF2 ON3 OFF3 Trạng thái thiết bị ON OFF ON OFF ON OFF Bảng Test lần lúc 8h00 ngày 02/12/2017 Bật TB1 Tắt TB1 Bật TB2 Tắt TB2 Bật TB3 Tắt TB3 Lần 1(LT) ON1 OFF1 ON2 76 OFF2 ON3 OFF3 Trạng thái thiết bị ON OFF ON OFF ON OFF Lần 2(LT) ON1 OFF1 ON2 OFF2 ON3 OFF3 Trạng thái thiết bị ON OFF ON OFF ON OFF Bảng 3 Test lần lúc 18h00 ngày 02/12/2017 Bật TB1 Tắt TB1 Bật TB2 Tắt TB2 Bật TB3 Tắt TB3 Lần 1(LT) ON1 OFF1 ON2 OFF2 ON3 OFF3 Trạng thái thiết bị ON OFF ON OFF ON OFF Lần 2(LT) ON1 OFF1 ON2 OFF2 ON3 OFF3 Trạng thái thiết bị ON OFF ON OFF ON OFF 3.2.2 Đánh giá - Sản phẩm chạy ổn định, xác 3.3 Kết luận chương - Chương đưa kết trình nghiên cứu phát triển mạch điều khiển thiết bị dân dụng nhà qua sóng GSM - Trải qua việc đánh giá kết sản phẩm thời gian ngắn hoạt động liên tục thấy sẩn phẩm chạy ổn định, xác 77 KẾT LUẬN Qua nghiên cứu chế tạo phát triển thực đề tài tiếp thu nhiều kinh nghiệm thức tế hữu ích Đã hồn thành đề tài “Thiết kế hệ thống điều khiển từ xa bật tắt thiết bị dân dụng” Với việc hoàn thành đề tài, giúp tác giả kiểm nghiệm lý thuyết mạch điện tử, vi điều khiển mạng GSM ứng dụng thực tế chúng Sản phẩm sau hồn thành cho phép người dùng điều khiển thiết bị từ xa qua sóng GSM Tuy nhiên sản phẩm nhiều khuyết điểm : - Phần cứng chưa tối ưu kích thước - Chưa có phản hồi từ vi điều khiển gửi tới điện thoại bật tắt thiết bị - Bảo mật chưa tốt  Hướng mở rộng Đề tài nhiều khả mở dụng ứng dụng như: - Thiết kế app để điều khiển thiết bị Smartphone để tiện lợi - Mở rộng ứng dụng sang điều khiển thiết bị thông minh cho nhà (Smart Home) Với đề tài nghiên cứu phát triển với GSM, tác giả tiếp tục nghiên cứu phát triển để hoàn thiện hệ thống Xin cám ơn thầy Nguyễn Hồng Dũng tận tình giúp đỡ q trình hoàn thành luận văn 78 TÀI LIỆU THAM KHẢO [1] Chủ yếu tham khảo mạch thiết bị thực tế Tham khảo tích góp nhu cầu người dùng [2] Hồ Trung Mỹ, Vi xử lý, Nhà xuất đại học quốc gia T.p Hồ Chí Minh, 2006 [3] Hướng dẫn sử dụng Module Sim800C, http://mlab.vn/14884-huong-dan-sudung-module-sim800c.html truy nhập cuối ngày 28/11/2017 [4] NuMicro NUC130_140 Technical Reference Manual EN V2.02.pdf truy nhập cuối ngày 26/11/2017 [5] https://en.wikipedia.org, truy nhập cuối ngày 02/12/2017 79 PHỤ LỤC #include #include #include #include #include #include #include #include #include #include #define #define #define #define #define "DrvGPIO.h" "DrvSYS.h" "DrvUART.h" "DrvADC.h" "Seven_Segment.h" "ScanKey.h" "LCD_Driver.h" SIM_UART UART1 SIM_UART_PORT UART_PORT1 COM_UART UART0 COM_UART_PORT UART_PORT0 RX_BUFF_MAX 50 uint8_t rxBuff[RX_BUFF_MAX]; volatile uint8_t rxIndex = 0; uint8_t rxComment[RX_BUFF_MAX]; uint8_t rxMessage[RX_BUFF_MAX]; uint8_t tempMessage[RX_BUFF_MAX]; uint8_t lenghComment = 0; volatile uint8_t status = 0; uint8_t a[] = {'c'}; _Bool isRxCRLF = FALSE; _Bool isMessage = FALSE; unsigned char x[50] = ""; unsigned int _x = 0, _y = 0; unsigned char phoneNumber[15]; unsigned char symbol[1] = {0x22}; char lstPhoneNumber[10][15]; uint8_t countLst = 0; char *address; void sendGETHTTP(uint16_t, uint16_t); char httpGetNhietDo[90]; char httpGetNongDo[90]; void void void void void void void void char void updateRxComment(void); connectTCP(uint16_t,uint16_t); UART_INT_HANDLE(uint32_t); UART1_INT_HANDLE(uint32_t); ModuleSim_Init(void); sendMessage(char *phoneNumber, char *message); callNumber(char *phoneNumber); convertToPhone(unsigned char *phone); *int2str(uint16_t val); sendData(uint16_t nhietDo, uint16_t nongdoGas); 80 void printInt(uint32_t val){ int i = 5; while(val>0){ Show_Word(3,i ,(val%10)+'0'); val = val/10; } } void UART_INT_HANDLE(uint32_t status){ if(status & DRVUART_RDAINT){ uint8_t bInChar[1]={0xFF}; while(SIM_UART->ISR.RDA_IF==1){ DrvUART_Read(SIM_UART_PORT,bInChar,1); show_seven_segment(1,_y++%10); DrvUART_Write(COM_UART_PORT,bInChar,1); if(bInChar[0] == '\r' || bInChar[0] == '\n') { if(bInChar[0] == '\r'){ updateRxComment(); isRxCRLF = TRUE; } rxIndex = 0; } else { rxBuff[rxIndex] = bInChar[0]; rxIndex++; } } } } void UART1_INT_HANDLE(uint32_t status){ if(status & DRVUART_RDAINT){ uint8_t bInChar[1]={0xFF}; while(COM_UART->ISR.RDA_IF==1){ DrvUART_Read(COM_UART_PORT,bInChar,1); show_seven_segment(0,_y++%10); } } } int main(){ unsigned char i=0; unsigned char command[50]=""; STR_UART_T sParam0, sParam; UNLOCKREG(); DrvSYS_SetOscCtrl(E_SYS_XTL12M, 1); DrvSYS_Delay(5000); DrvSYS_SelectHCLKSource(0); LOCKREG(); DrvSYS_Delay(50000); 81 OpenKeyPad(); for(i=0;i

Ngày đăng: 25/04/2020, 14:22

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan