(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)

128 1 0
(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)

Đ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

(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)(Đồ án tốt nghiệp) Thiết kế và thi công hệ thống đo và cảnh báo nồng độ các thông số môi trường( CO, CO2, bụi và UV)

BỘ GIÁO DỤC & ĐÀO TẠO TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH - HCMUTE ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐO VÀ CẢNH BÁO NỒNG ĐỘ CÁC THÔNG SỐ MÔI TRƢỜNG (CO, CO2, BỤI VÀ UV) GVHD: KS Hà A Thồi SVTH: Huỳnh Thị Mỹ Diệu 16141124 Đinh Thị Thanh Tuyền 16141331 Tp Hồ Chí Minh – 01/2021 LỜI CAM ĐOAN Đề tài nhóm em tự thực dựa vào số tài liệu trước khơng chép từ tài liệu hay cơng trình có trước Người thực đề tài Huỳnh Thị Mỹ Diệu Đinh Thị Thanh Tuyền LỜI CẢM ƠN Lời chúng em xin gửi lời cảm ơn sâu sắc thầy cô giáo Bộ môn Điện Tử Cơng nghiệp - Y Sinh nói riêng thầy Khoa Điện - Điện tử nói chung giúp đỡ, nhiệt tình bảo chúng em kiến thức liên quan tới lĩnh vực nghiên cứu đề tài, kiến thức sâu rộng bổ ích mà thầy truyền dạy cho chúng em suốt thời gian học tập trường Xin gửi lời cảm ơn chân thành đến giảng viên hướng dẫn KS Hà A Thồi tận tình hướng dẫn, giúp đỡ, cung cấp tài liệu kiến thức quan trọng tạo điều kiện thuận lợi cho chúng em suốt q trình thực đề tài Chúng em gửi lời cảm ơn tới ba mẹ người thân đồng hành, chia sẻ động viên tinh thần vật chất suốt trình thực đề tài Chúng em gửi lời cảm ơn tới bạn ngành CNKT Điện tử - Truyền thông K16 trao đổi chia sẻ kiến thức kinh nghiệm quý báu suốt trình thực đề tài Xin chân thành cảm ơn! Ngƣời thực đề tài Huỳnh Thị Mỹ Diệu Đinh Thị Thanh Tuyền TÓM TẮT Xã hội ngày đại người quan tâm đến vấn đề sức khỏe Vì vậy, nhu cầu sử dụng ứng dụng thơng báo mức độ ô nhiễm cho người dùng ngày cao Có nhiều loại cảm biến đo thơng số mơi trường thị trường, nhiên khơng có nhiều nghiên cứu hệ thống đo tích hợp loại khí gây ô nhiễm thông báo cho người dùng Hiện xu hướng sử dụng dòng vi điều khiển để điều khiển thiết bị STM32, PIC, Arduino, … phát triển cách mạnh mẽ Nhờ mà việc điều khiển hệ thống trở lên thuận tiện dễ dàng nhiều Nội dung đề tài áp dụng kiến thức học vi điều khiển để thiết kế hệ thống đo nồng độ cảnh báo mức độ nguy hiểm chất khơng khí, cụ thể CO, CO2, bụi UV Hệ thống gồm mạch điện tử kết nối với cảm biến điều khiển điều khiển trung tâm STM32F103C8T6 Khi phát chất CO, CO2, bụi UV, vi điều khiển tiến hành xử lý đưa liệu lên web thông qua SIM808 Thông số nồng độ chất hiển thị trang web, giúp người dùng dễ dàng đọc thơng số có biện pháp để hạn chế tác hại chất nồng độ vượt ngưỡng cho phép Thời gian xử lý liệu vi điều khiển nhanh nên người dùng liên tục cập nhập mức độ ảnh hưởng chất môi trường MỤC LỤC MỤC LỤC Chương 1.1 ĐẶT VẤN ĐỀ .1 1.2 MỤC TIÊU 1.3 NỘI DUNG NGHIÊN CỨU 1.4 GIỚI HẠN .2 1.5 BỐ CỤC Chương 2.1 GIỚI THIỆU PHẦN CỨNG 2.1.1 Khí CO 2.1.1.1 Tổng quan CO .4 2.1.1.2 Cách nhận biết 2.1.1.3 Cảm biến MQ - 2.1.2 Bụi 2.1.2.1 Tổng quan bụi 2.1.2.2 Cách nhận biết 2.1.2.3 Cảm biến GP2Y1010AU0F .9 2.1.3 Tia UV 12 2.1.3.1 Tổng quan UV 12 2.1.3.2 Cách nhận biết 13 2.1.3.3 Cảm biến ML8511 13 2.1.4 Khí CO2 .16 2.1.4.1 Tổng quan CO2 16 2.1.4.2 Cách nhận biết 17 2.1.4.3 Cảm biến hồng ngoại CO2 17 2.1.5 Module SIM808 19 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH MỤC LỤC 2.1.5.1 Tổng quan Module SIM808 19 2.1.5.2 Sơ đồ chân 19 2.1.5.3 Thông số kỹ thuật 22 2.1.5.4 Nguyên lý hoạt động 23 2.1.6 Vi điều khiển STM32F103C8T6 23 2.2 CHUẨN GIAO TIẾP UART 27 Chương .29 3.1 GIỚI THIỆU .29 3.2 TÍNH TỐN VÀ THIẾT KẾ HỆ THỐNG 29 3.2.1 Thiết kế sơ đồ khối hệ thống 29 3.2.2 Tính tốn thiết kế mạch 30 3.2.2.1 Tính tốn thiết kế khối cảm biến .30 3.2.2.2 Thiết kế khối định vị - gửi liệu 40 3.2.3 Sơ đồ nguyên lý toàn mạch 44 3.2.4 Thiết kế khối nguồn 45 Chương .56 4.1 GIỚI THIỆU .56 4.2 THI CÔNG HỆ THỐNG 56 4.2.1 Thi công bo mạch 56 4.2.2 Lắp ráp kiểm tra 60 a Lắp ráp kiểm tra nguồn 60 b Lắp ráp kiểm tra vi điều khiển STM32F103C8T6 60 c Lắp ráp kiểm tra khối cảm biến .60 d Lắp ráp kiểm tra SIM808 60 e Mạch sau kết nối linh kiện .60 4.3 ĐÓNG GÓI VÀ THI CƠNG MƠ HÌNH 61 4.3.1 Đóng gói điều khiển .61 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH MỤC LỤC 4.3.2 Thi cơng mơ hình 62 4.4 LẬP TRÌNH HỆ THỐNG 63 4.4.1 Lưu đồ giải thuật .63 4.4.1.1 Chương trình .63 4.4.1.2 Chương trình 64 4.4.2 Phần mềm STM32CUBEMX VÀ KEIL C 74 4.4.2.1 Giới thiệu phần mềm 74 4.4.2.1 Các thao tác với phần mềm STM32CubeMX Keil 75 4.4.3 Phần mềm SUBLIME TEXT 79 4.4.3.1 Giới thiệu phần mềm 79 4.4.3.2 Các thao tác với phần mềm 79 4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG 82 Chương .84 5.1 GIỚI THIỆU .84 5.2 KẾT QUẢ ĐẠT ĐƯỢC .84 5.3 KẾT QUẢ CHẠY HỆ THỐNG 84 5.4 NHẬN XÉT-ĐÁNH GIÁ 85 Chương .87 6.1 KẾT LUẬN 87 6.2 HƯỚNG PHÁT TRIỂN 87 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH LIỆT KÊ BẢNG LIỆT KÊ BẢNG Bảng Thông số kỹ thuật MQ7 Bảng 2 Sơ đồ chân MQ7 .7 Bảng Thông số kỹ thuật GP2Y101AU0F Bảng Kết nối chân cảm biến GP2Y1010AU0F 10 Bảng Quan hệ giá trị điện áp nồng độ bụi 12 Bảng Thông số kỹ thuật ML8511 .14 Bảng Kết nối chân ML8511 .15 Bảng Thông số kỹ thuật 17 Bảng Kết nối chân cảm biến .18 Bảng 10 Chức chân module SIM808 20 Bảng 11 Thông số kỹ thuật 22 Bảng Bảng tọa độ điểm khí CO 33 Bảng Dòng điện điện áp làm việc linh kiện 45 Bảng 3 Thông số kỹ thuật IC LM2596 46 Bảng Bảng lựa chọn giá trị tụ Cout 48 Bảng Thông số kỹ thuật IC LM2596 – ADJ 51 Bảng Bảng giá trị Cout .52 Bảng Thông số kỹ thuật LM1117 .54 Bảng Danh sách linh kiện 56 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH LIỆT KÊ HÌNH VẼ LIỆT KÊ HÌNH VẼ Hình Sơ đồ mạch đo thông số điện áp cảm biến MQ7 Hình 2 Đường cong đặc tính độ nhạy cảm biến MQ7 với số khí gas Hình Đồ thị biểu diễn phụ thuộc cảm biến MQ7 với nhiệt độ độ ẩm Hình Cảm biến MQ7 Hình Tín hiệu ngõ RL Hình Sơ đồ chân cảm biến GP2Y1010AU0F .9 Hình Cấu trúc bên cảm biến GP2Y1010AU0F 10 Hình Thời gian lấy mẫu xung đầu .11 Hình Mối tương quan điện áp đầu với mật độ bụi 12 Hình 10 Sơ đồ chân cảm biến ML8511 .14 Hình 11 Mối quan hệ điện áp mức độ tia UV 15 Hình 12 Cấu trúc chân cảm biến 18 Hình 13 Module SIM808 .19 Hình 14 Sơ đồ chân module SIM808 19 Hình 15 Kiến trúc vi xử lý ARM 23 Hình 16 STM32F103C8T6 24 Hình 17 Cấu trúc chân I/O .26 Hình 18 Kết nối UART 28 Hình 19 Khung truyền giao tiếp UART 28 Hình Sơ đồ khối hệ thống đo cảnh báo thơng số mơi trường……………29 Hình Sơ đồ ngun lý cảm biến MQ7 .30 Hình 3 Đồ thị đường cong đặc tính cảm biến MQ .32 Hình Cơng cụ WebPlotDigitizer .33 Hình Đồ thị mối tương quan điện áp mức độ tia cực tím 36 Hình Đồ thị mối tương quan điện áp nồng độ CO2 37 Hình Sơ đồ nguyên lý kết nối STM32F1 với cảm biến MQ7 38 Hình Sơ đồ nguyên lý kết nối STM32F1 với cảm biến GP2Y1010AU0F 39 Hình Cấu tạo bên cảm biến GP2Y1010AU0F 39 Hình 10 Sơ đồ kết nối STM32F1 với cảm biến ML8511 .40 Hình 11 Sơ đồ nguyên lý khối định vị - kết nối liệu .41 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH LIỆT KÊ HÌNH VẼ Hình 12 Sơ đồ kết nối chân VBAT .41 Hình 13 ON/OFF module dùng transistor 42 Hình 14 Sơ đồ kết nối chân TXD RXD 42 Hình 15 Sơ đồ kết nối chân STATUS NETLIGHT 43 Hình 16 Sơ đồ kết nối SIM Card 43 Hình 17 Sơ đồ nguyên lý toàn mạch 44 Hình 18 Adapter 12V – 3A 46 Hình 19 IC LM2596 – 5V 46 Hình 20 Sơ đồ nguyên lý mạch hạ áp 5V 47 Hình 21 Lựa chọn giá trị cuộn cảm 47 Hình 22 Lựa chọn giá trị Cin .49 Hình 23 Sơ đồ kết nối chân ON/OFF 49 Hình 24 Sơ đồ nguyên lý mạch hạ áp 5V hoàn chỉnh 50 Hình 25 IC LM2596 – ADJ 50 Hình 26 Sơ đồ nguyên lý mạch hạ áp 4.1V 51 Hình 27 Lựa chọn giá trị cuộn cảm 52 Hình 28 Sơ đồ nguyên lý mạch hạ áp 4.1V hoàn chỉnh 53 Hình 29 LM1117 54 Hình 30 Sơ đồ nguyên lý mạch hạ áp 3.3V hoàn chỉnh 54 Hình 31 Sơ đồ nguyên lý khối nguồn 55 Hình Mặt mạch PCB 58 Hình Mặt mạch PCB 59 Hình Sơ đồ bố trí linh kiện .59 Hình 4 Mặt mạch sau lắp ráp hàn linh kiện 60 Hình Mặt mạch sau lắp ráp hàn linh kiện .61 Hình KW - 121 61 Hình Mạch sau đóng gói 62 Hình Lưu đồ điều khiển hệ thống đo cảnh báo thông số môi trường 63 Hình Lưu đồ chương trình ngắt UART .64 Hình 10 Lưu đồ SIM_init() 65 Hình 11 Lưu đồ TinhToanGiaTriCamBien() .66 Hình 12 Lưu đồ Get_GPS_Control() 67 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH PHỤ LỤC void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { if(huart->Instance == USART2) { HAL_UART_Receive_IT(&huart2,(uint8_t*)buffer2,sizeof(buffer2)); } } /* USER CODE END */ /** * @brief This function is executed in case of error occurrence * @retval None */ void Error_Handler(void) { /* USER CODE BEGIN Error_Handler_Debug */ /* User can add his own implementation to report the HAL error return state */ disable_irq(); while (1) { } /* USER CODE END Error_Handler_Debug */ } #ifdef USE_FULL_ASSERT /** * @brief Reports the name of the source file and the source line number * where the assert_param error has occurred * @param file: pointer to the source file name * @param line: assert_param error line source number * @retval None */ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC void assert_failed(uint8_t *file, uint32_t line) { /* USER CODE BEGIN */ /* User can add his own implementation to report the file name and line number, ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ /* USER CODE END */ } #endif /* USE_FULL_ASSERT */ /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ Code debugControl #include "debugControl.h" extern extern extern extern extern extern extern uint8_t uint8_t uint8_t uint8_t uint8_t uint8_t uint8_t debug_string; debug; SIM_active; GPRS_active; HTTP_active; enable_GPS; getVDD; extern char status[50]; extern char buffer2[500]; extern extern extern extern uint16_t uint16_t uint16_t uint16_t timer1_ms; timer1_min; debugging_PreTimer; debuggingTime; void DebuggingSystem(void) { if(debug) { /*Debugging the system*/ SIM808_init(); /*Set the debugging duration, if an error occured, the duration/2*/ if(!GPRS_active||!SIM_active) debuggingTime = 1; //minutes else debuggingTime = 2; //minutes debug = 0; // debugging_PreTimer = timer1_ms; debugging_PreTimer = timer1_min; } } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC void SIM808_init(void) { if(debug_string) strcpy(status,"Check SIM"); else strcpy(status,"Debugging "); SIM_active = Check_SIM_activated(); if(debug_string) strcpy(status,"Check GPRS"); GPRS_active = Check_GPRS_connection(); if(debug_string) strcpy(status,"Check HTTP"); HTTP_active = Check_HTTP_Service(); if(SIM_active&&GPRS_active&&HTTP_active) { /*If everything run smoothly our work is done*/ /*Last check for GPS activation, and HTTP_PARA*/ if(enable_GPS) { if(!Check_GPS_activated()) { if(debug_string) { strcpy(status,"Enable GPS"); HAL_Delay(2000); } Send_Command_SIM(GPS_On,OK,1000,1); } } else { if(Check_GPS_activated()) Send_Command_SIM(GPS_Off,OK,1000,1); } Send_Command_SIM(HTTP_TERM,OK,1000,1); Init_HTTP(); strcpy(status,"System OK 1!"); return; } /*If SIM have a problem*/ if(!SIM_active) { if(!getVDD) { strcpy(status,"ERROR:VDD=0"); return; } Start_SIM(); } /*If couldnt connected to GPRS*/ if(!GPRS_active) { if(!Send_Command_SIM("AT+CPIN?\r\n",OK,1000,1)) { strcpy(status,"Check SIM card connection"); HAL_Delay(2000); Reset_SIM(); HAL_Delay(8000); } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC Activate_GPRS(); } /*Check again*/ SIM_active = Check_SIM_activated(); GPRS_active = Check_GPRS_connection(); HTTP_active = Check_HTTP_Service(); if(SIM_active) { if(GPRS_active) { Send_Command_SIM(HTTP_TERM,OK,1000,1); if(Init_HTTP()) { HTTP_active = 1; if(debug_string) { strcpy(status,"HTTP init succeed"); HAL_Delay(2000); } } else { HTTP_active = 0; if(debug_string) { strcpy(status,"HTTP fail"); HAL_Delay(2000); } } strcpy(status,"System OK 2!"); } else strcpy(status,"ERROR:GPRS offline"); if(enable_GPS) { if(!Check_GPS_activated()) { if(debug_string) { strcpy(status,"Enable GPS"); HAL_Delay(2000); } Send_Command_SIM(GPS_On,OK,1000,1); } } else { if(Check_GPS_activated()) Send_Command_SIM(GPS_Off,OK,1000,1); } } else { SIM_active = 0; GPRS_active = 0; HTTP_active = 0; strcpy(status,"ERROR:SIM808 offline"); } } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC Code SIM808 #include "SIM808.h" #include "string.h" #include "stdio.h" /*EXTERN FROM MAIN*/ extern UART_HandleTypeDef huart2; extern char buffer2[500]; extern char status[50]; extern char debug_string; extern uint8_t debug; extern uint8_t postData; extern uint8_t getData; extern uint8_t getGPS; extern uint8_t getSMS; char lengh[100]; void Power_On(void) { HAL_GPIO_WritePin(GPIOA, GPIO_PIN_15, GPIO_PIN_SET); // RST_SIM muc HAL_GPIO_WritePin(CS_SIM_GPIO_Port,CS_SIM_Pin,GPIO_PIN_SET); if(debug_string) strcpy(status,"Power on"); HAL_Delay(2000); HAL_GPIO_WritePin(CS_SIM_GPIO_Port,CS_SIM_Pin,GPIO_PIN_RESET); } void Power_Off(void) { HAL_GPIO_WritePin(CS_SIM_GPIO_Port,CS_SIM_Pin,GPIO_PIN_SET); if(debug_string) { strcpy(status,"Power off"); HAL_Delay(2000); } HAL_GPIO_WritePin(CS_SIM_GPIO_Port,CS_SIM_Pin,GPIO_PIN_RESET); } void Reset_SIM(void) { HAL_GPIO_WritePin(RST_SIM_GPIO_Port,RST_SIM_Pin,GPIO_PIN_RESET); if(debug_string) strcpy(status,"Reset SIM"); HAL_Delay(100); HAL_GPIO_WritePin(RST_SIM_GPIO_Port,RST_SIM_Pin,GPIO_PIN_SET); } uint8_t Send_Command_SIM(char* command,char* responce,uint32_t timeout,uint8_t clear_buffer) { uint32_t time; uint8_t length; length=strlen(command); time=timeout; if(HAL_UART_Transmit(&huart2,(uint8_t*)command,length,500) != HAL_OK) return 0; while(strstr(buffer2,(const char*)responce)==NULL) { BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC if(time==0) { if(clear_buffer) Clear_Buffer2(); return 0; } time ; HAL_Delay(1); } if(clear_buffer) Clear_Buffer2(); return 1; } uint8_t Check_SIM_activated(void) { if(Send_Command_SIM(AT,OK,1000,1)) return 1; else if(Send_Command_SIM(AT,"ERROR",1000,1)) return 1; return 0; } uint8_t Check_GPS_activated(void) { if(Send_Command_SIM(GPS_Query,"+CGNSPWR: 1",1000,1)) return 1; else return 0; } void Start_SIM(void) { Power_On(); HAL_Delay(8000); if(debug_string) strcpy(status,"Send ATE0"); Send_Command_SIM(ATE0,OK,1000,1); } uint8_t Check_GPRS_connection(void) { if(Send_Command_SIM(SAPBR4,"+SAPBR: 1,1,",2000,1)) { HAL_Delay(800); Clear_Buffer2(); return 1; } else return 0; } void Activate_GPRS(void) { if(debug_string) strcpy(status,"Set connection type is GPRS"); if(!Send_Command_SIM(SAPBR1,OK,1000,1)) { /*If the system take too long to reconnect,*/ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC /*meanning something has went wrong, Its no point for waiting*/ /*return the Function*/ HAL_Delay(1000); if(!Send_Command_SIM(SAPBR1,OK,1000,1)) return; } if(debug_string) strcpy(status,"Set APN"); if(!Send_Command_SIM(SAPBR2,OK,1000,1)) { HAL_Delay(1000); if(!Send_Command_SIM(SAPBR2,OK,1000,1)) return; } if(debug_string) strcpy(status,"Set USER"); if(!Send_Command_SIM(SAPBR2_1,OK,1000,1)) { HAL_Delay(1000); if(!Send_Command_SIM(SAPBR2_1,OK,1000,1)) return; } if(debug_string) strcpy(status,"Set PWD"); if(!Send_Command_SIM(SAPBR2_2,OK,1000,1)) { HAL_Delay(1000); if(!Send_Command_SIM(SAPBR2_2,OK,1000,1)) return; } if(debug_string) strcpy(status,"Enable GPRS"); if(!Send_Command_SIM(SAPBR3,OK,1300,1)) { HAL_Delay(1000); if(!Send_Command_SIM(SAPBR3,OK,1300,1)) return; } if(debug_string) strcpy(status,"Get IP"); if(!Send_Command_SIM(SAPBR4,OK,1300,1)) { HAL_Delay(1000); if(!Send_Command_SIM(SAPBR4,OK,1300,1)) return; } if(debug_string) strcpy(status,"Define PDP"); if(!Send_Command_SIM(CGDCONT,OK,1000,1)) { HAL_Delay(1000); if(!Send_Command_SIM(CGDCONT,OK,1000,1)) return; } if(debug_string) strcpy(status,"Attach to GPRS"); if(!Send_Command_SIM(GPRS_ATTACH,OK,1000,1)) { HAL_Delay(1000); if(!Send_Command_SIM(GPRS_ATTACH,OK,1000,1)) return; BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC } } uint8_t Init_HTTP(void) { if(debug_string) strcpy(status,"Setup HTTP"); Send_Command_SIM(HTTP_INIT,OK,1000,1); HAL_Delay(500); Send_Command_SIM(HTTPSSL_ON,OK,1000,1); HAL_Delay(500); if(debug_string) strcpy(status,"Set HTTP_PARA1"); Send_Command_SIM(HTTP_PARA1,OK,1000,1); HAL_Delay(500); if(debug_string) strcpy(status,"Set HTTP_PARA2"); Send_Command_SIM(HTTP_PARA2,OK,1000,1); HAL_Delay(500); if(Send_Command_SIM(QUERY_HTTPINIT,OK,1000,1)) { HAL_Delay(500); return 1; } else { HAL_Delay(500); return 0; } } uint8_t Check_HTTP_Service(void) { if(Send_Command_SIM(QUERY_HTTPINIT,OK,1000,1)) return 1; else return 0; } uint8_t Post_HTTP_Data(char *data, char* HTTP_PARA3) { if(debug_string) strcpy(status,"Set HTTP_PARA1"); Send_Command_SIM(HTTP_PARA1,OK,1000,1); if(debug_string) strcpy(status,"Set HTTP_PARA2"); Send_Command_SIM(HTTP_PARA2,OK,1000,1); if(debug_string) strcpy(status,"Set HTTP_PARA3"); if(!Send_Command_SIM(HTTP_PARA3,OK,1000,1)) return 0; if(debug_string) strcpy(status,"DOWNLOAD DATA"); sprintf(lengh,"AT+HTTPDATA=%d,%d\r\n",strlen(data),10000); Send_Command_SIM(lengh,"DOWNLOAD",1000,1); Send_Command_SIM(data,"OK",1000,1); if(debug_string) strcpy(status,"POST DATA"); if(!Send_Command_SIM(HTTP_POST,"+HTTPACTION: 1,20",3500,1)) return 0; return 1; BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC } void Clear_Buffer2(void) { unsigned short _size = sizeof(buffer2); huart2.RxXferCount = _size; huart2.pRxBuffPtr=(uint8_t *)&buffer2[0]; memset(buffer2,0,_size); } Code timerControl #include "timerControl.h" extern uint16_t timer1_ms; extern uint16_t timer1_min; extern uint16_t debugging_PreTimer; extern extern extern extern extern extern extern extern uint16_t debuggingTime; uint16_t GetGPS_PreTimer; uint16_t PostData_PreTimer; uint16_t Sensor_PreTimer; uint8_t debug; uint8_t postData; uint8_t getGPS; uint8_t flagSensor; // Other void updateTimer() { if(timer1_Check(&timer1_min,&debugging_PreTimer,debuggingTime)) debug = 1; /*Control the time GET GPS data*/ if(timer1_Check(&timer1_ms,&GetGPS_PreTimer,5000)) getGPS = 1; /*Control the time POST data*/ if(timer1_Check(&timer1_ms,&PostData_PreTimer,5000)) postData = 1; // Other } uint8_t timer1_Check(uint16_t *timer1_,uint16_t *timer1_previous,uint16_t duration_time) { if(*timer1_ > *timer1_previous) { if(*timer1_ - *timer1_previous >= duration_time) return 1; } if(*timer1_ < *timer1_previous) { if((60000 - (*timer1_previous - *timer1_)) >= duration_time) return 1; } return 0; } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC Diệu Tuyền Thông số môi
  • CO
  • CO2
  • DoBui
  • UV
  • KinhDo
  • ViDo
GVHD: Hà A Thồi SVTH: Huỳnh Thị Mỹ Diệu: 16141124 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC Đinh Thị Thanh Tuyền: 16141331 Chương trình lấy liệu từ firebase cảnh báo var val_CO; var val_CO2; var val_UV; var val_DoBui; var data = firebase.database().ref().child("data"); data.on('value', function (r) { r.forEach(function (item) { entry = item.val(); console.log(entry); val_CO = entry.CO; val_CO2 = entry.CO2; val_UV = entry.UV; val_DoBui = entry.DoBui; }); document.getElementById('CO').innerHTML = entry.CO+"ppm"; document.getElementById('CO2').innerHTML = entry.CO2 +"ppm" ; document.getElementById('tiaUV').innerHTML entry.UV+"mW/cm2" ; = document.getElementById('DoBui').innerHTML = entry.DoBui +"mg/m3"; document.getElementById('KinhDo').innerHTML entry.KinhDo+" " ; document.getElementById('ViDo').innerHTML "; BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP = = entry.ViDo +" PHỤ LỤC if(val_CO-0>100) playsound1(); if(val_CO2-0>400) playsound1(); if(val_UV-0>7) playsound1(); if(val_DoBui-0>0.1) playsound1(); }); //firebase.database().ref().child("/").set(null); function playsound1() { var audio = new Audio('WARNING.mp3'); audio.play(); } Chương trình xử lý màu khoảng cách đối tượng giao diện .main{ width: 550px; margin: 0px auto; border-left: 2px solid blue; border-right: 2px solid blue; border-bottom: 2px solid blue; } h1{ color: blue; text-align: center; border: 2px solid blue; margin: 0px; padding: 10px 10px; background-color: rgb(194, 255, 251); } ul li{ margin: 0px; padding: 0px; list-style: none; font-size: 30px; } notice{ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP PHỤ LỤC margin-left: 60px; } air{ padding: 0px; margin: 0px; float: left; } khi{ width: 150px; } val{ text-align: center; } value{ padding: 0px; margin: 0px; } #text1{ color: maroon; font-size: 50px; } text2{ color: maroon; font-size: 25px; margin: 30px; clear: left; } nds{ font-size: 30px; margin: 60px; } #das{ margin-left: 20px; } BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP S K L 0 ... tài ? ?Thi? ??t kế thi công hệ thống đo cảnh báo nồng độ thông số môi trƣờng (CO, CO2, bụi mịn tia UV) Hệ thống thi? ??t kế với kích thước nhỏ, dễ dàng lắp đặt vị trí để theo dõi chất lượng khơng khí Các. .. nồng độ bụi, CO2, CO tia UV 1.3 NỘI DUNG NGHIÊN CỨU Trong trình thực Đồ án tốt nghiệp với đề tài Thi? ??t kế thi công hệ thống đo cảnh báo nồng độ thông số môi trường (Bụi mịn, CO2, CO tia UV), ... TỐN VÀ THI? ??T KẾ HỆ THỐNG 29 3.2.1 Thi? ??t kế sơ đồ khối hệ thống 29 3.2.2 Tính tốn thi? ??t kế mạch 30 3.2.2.1 Tính tốn thi? ??t kế khối cảm biến .30 3.2.2.2 Thi? ??t kế khối

Ngày đăng: 15/02/2023, 10:36

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

Tài liệu liên quan