1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂY DỰNG HỆ THÓNG ĐIÈU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH

52 1 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 52
Dung lượng 1,69 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 XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH Người hướng dẫn : PGS.TS TRẦN CÔNG HÙNG Người thực : VÕ QUANG TRUNG Lớp : 09040002 Khố THÀNH PHỐ HỒ CHÍ MINH, NĂM 2014 : 13 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 XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH Người hướng dẫn : PGS.TS TRẦN CÔNG HÙNG Người thực : VÕ QUANG TRUNG Lớp : 09040002 Khố THÀNH PHỐ HỒ CHÍ MINH, NĂM 2014 : 13 LỜI CẢM ƠN  Lời em xin gửi lời cảm ơn chân thành tới thầy hướng dẫn thực tập tốt nghiệp em, thầy Trần Công Hùng tạo điều kiện, động viên giúp đỡ em q trình hồn thành tập Trong suốt trình thực tập tốt nghiệp bận rộn công việc thầy giành nhiều thời gian tâm huyết việc hướng dẫn em Thầy cung cấp cho em nhiều hiểu biết ý tưởng để hoàn thành kỳ tốt nghiệp Xin chân thành cảm ơn thầy cô Khoa Điện Tử -Tử anh chị hướng dẫn tận tình giúp đỡ truyền đạt kiến thức để em hồn thành luận văn Cảm ơn tất bạn khóa nhiệt tình chia sẻ kinh nghiệm kiến thức quý báo giúp em hoàn thành tốt luận văn tốt nghiệp Mặc dù em cố gắng hồn thành luận văn với tất nỗ lực em , luận văn chắn không tránh khỏi thiếu sót Em kính mong q thầy tận tình bảo Cuối em xin gửi đến quý thầy cô lời chúc sức khỏe lời cảm ơn chân thành nhất! TP Hồ Chí Minh, ngày 15 tháng 12 năm 2014 Sinh viên Võ Quang Trung 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 hướng dẫn khoa học thầy PGS.TS Trần Công Hùng 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 15 tháng 12 năm 2014 Sinh Viên Võ Quang Trung ĐỒ ÁN TỐT NGHIỆP 5/44 XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 6/44 XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 7/44 LỊCH TRÌNH LÀM ĐỒ ÁN TỐT NGHIỆ XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 1/44 MỤC LỤC DANH MỤC HÌNH VẼ DANH MỤC CÁC TỪ VIẾT TẮT CHƯƠNG I : GIỚI THIỆU ĐỀ TÀI 1.1 Giới thiệu đề tài: 1.2 Phương pháp mơ điều khiển đèn đường 1.2.1 Giới thiệu trung tâm điều khiển đô thị 1.2.2 Các hệ thống chiếu sáng công cộng áp dụng Việt Nam CHƯƠNG II : LÝ THUYẾT LaunchPad 2.1 2.1.1 Giới thiệu 2.1.2 Những hàm dùng : 10 2.2 BH1750 12 2.3 Module Sim900A 13 2.3.1 Giới thiệu Sim900A 13 2.3.2 Thông số kỹ thuật: 14 2.3.3 Chân kết nối: 14 2.3.4 Các bước cấu hình Module sim dùng GPRS 15 2.4 Relay: 18 2.5 Phần mềm: 19 CHƯƠNG III : THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG 22 3.1 Thiết kế: 22 3.2 Sơ đồ khối: 23 3.3 Khối Client: 23 3.3.1 Sơ đồ dây Client: 26 3.3.2 Code cho Client: 26 Khối server (web): 37 3.4 3.4.1 Qui trình hoạt động web 38 3.4.2 Trang chủ: 39 3.4.3 Thông tin hệ thống 40 3.4.4 Mơ hình hệ thống 42 3.4.5 Thiết bị 43 CHƯƠNG IV : KẾT LUẬN 44 XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 2/44 TÀI LIỆU THAM KHẢO 45 XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 3/44 DANH MỤC HÌNH VẼ Hình 2.1 : Tiva C series TM4C123G Hình 2.2 : Sơ đồ khối Tiva C Series LaunchPad Hình 2.1 : BH1750 Hình 2.2 : Module Sim 900A Hình 2.3 : Sơ đồ chân Module Sim900A Hình 2.4 : Module Relay Hình 2.5 : Hình Mơ hình hệ thống Hình 3.1: Mơ hình client-server Hình 3.2 : Mơ hình hoạt động Client Hình 3.3 : Sơ đồ nối dây cho Client Hình 3.4: Sơ đồ hoạt động Web Hình 3.5 : Trang chủ Hình 3.6 : Thơng tin hệ thống Hình 3.7 : Khi đăng nhập Hình 3.8 : Mơ hình hệ thống Hình 3.9: Thiết bị XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 31/44 I2CMasterSlaveAddrSet(I2C0_BASE,ADDRESS, true); // START condition followed by RECEIVE (master goes to // the Master Receive state) datasheet/1024 ACK I2CMasterControl(I2C0_BASE, I2C_MASTER_CMD_BURST_RECEIVE_START); // while(I2CMasterBusy(I2C0_BASE)) { UARTCharPut(UART0_BASE, 'i'); } SysCtlDelay(180*ms); pucData[0] = (char)I2CMasterDataGet(I2C0_BASE); // RECEIVE followed by STOP condition (master goes to // Idle state) datasheet/1024 NAK I2CMasterControl(I2C0_BASE, I2C_MASTER_CMD_BURST_RECEIVE_FINISH); while(I2CMasterBusy(I2C0_BASE)) { // UARTCharPut(UART0_BASE, 'l'); } pucData[1] = I2CMasterDataGet(I2C0_BASE); ////////////////////////////////////////////////////////////////////////////////////////// UARTCharPut(UART0_BASE, 'B'); UARTCharPut(UART0_BASE, 'H'); UARTCharPut(UART0_BASE, '1'); UARTCharPut(UART0_BASE, '7'); UARTCharPut(UART0_BASE, '5'); UARTCharPut(UART0_BASE, '0'); UARTCharPut(UART0_BASE, ':'); UARTCharPut(UART0_BASE, ' '); int sumHigh,sumLow; sumHigh=sumLow=0; UARTSendS("\r\nHigh Byte= "); mask=0x80; for(k=7;k>=0;k ) { if((mask&pucData[0])==0) UARTCharPut(UART0_BASE,'0'); XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 32/44 else { UARTCharPut(UART0_BASE,'1'); sumHigh=sumHigh+pow(2,k+8); } mask=mask>>1; } UARTSendS("\r\nLow Byte= "); mask=0x80; for(k=7;k>=0;k ) { if((mask&pucData[1])==0) UARTCharPut(UART0_BASE,'0'); else { UARTCharPut(UART0_BASE,'1'); sumLow=sumLow+pow(2,k); } mask=mask>>1; } UARTSendS("\r\nKet qua do= "); unsigned char result[100]; inttostring((sumHigh+sumLow)/1.2,result); UARTSendS(result); UARTSendS(" lux "); UARTCharPut(UART0_BASE, ' \r'); UARTCharPut(UART0_BASE, '\n'); SysCtlDelay(2000*ms); } } 3.3.2.2 Module sim 900A: Vì module sim900A trao đổi liệu qua giao thức Uart nên ta phải khai báo lập trình Uart để MCU giao tiếp với module sim900A Bước 1: cấu hình UART hàm InitUART() Bước 2: bật module sim900A Sim900on(void) XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 33/44 Bước 3: có liệu cường độ ánh sáng từ BH1750 ta gửi liệu qua module sim900A hàm connect(), sau module sim kết nối với server truyền liệu Bước 4: Khi truyền liệu lên server xong server trả lại lệnh điều khiển thiết bị thông qua module sim900A, module sim900A gửi lại vi điều khiển Tiva thông qua Uart intterupt uart UARTIntHandler() void InitUART() { SysCtlPeripheralEnable(SYSCTL_PERIPH_UART2); // mở chức UART2 SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); // mở port GPIO cho port D // chân PD6 chức khác nên ta phải tắt chức HWREG(GPIO_PORTD_BASE + GPIO_O_LOCK) = GPIO_LOCK_KEY; HWREG(GPIO_PORTD_BASE + GPIO_O_CR) = 0X80; //mở chức uart cho chân D6, D7 GPIOPinConfigure(GPIO_PD6_U2RX); GPIOPinConfigure(GPIO_PD7_U2TX); GPIOPinTypeUART(GPIO_PORTD_BASE, GPIO_PIN_6 | GPIO_PIN_7); // cấu hình chân PD6 Receive, PD7 transmit UARTConfigSetExpClk(UART2_BASE, 9600,(UART_CONFIG_WLEN_8 | UART_CONFIG_PAR_NONE)); SysCtlClockGet(), UART_CONFIG_STOP_ONE | IntMasterEnable(); UARTEnable(UART2_BASE); // mở chức interrupt cho UART2 IntEnable(INT_UART2); UARTIntEnable(UART2_BASE, UART_INT_RX | UART_INT_RT); } void UARTSendS(unsigned char*s) { while(*s!='\0') { UARTCharPut(UART2_BASE,*s); // gửi ký tự chuỗi qua module sim900 s++; } } void UARTIntHandler(void) XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN ĐÈN ĐƯỜNG THÔNG MINH SVTH:VÕ QUANG TRUNG ĐỒ ÁN TỐT NGHIỆP 34/44 // hàm xử lý ngắt có tín hiệu trả UART2 { unsigned long ulStatus; ulStatus = UARTIntStatus(UART2_BASE,true); UARTIntClear(UART2_BASE, ulStatus); while(UARTCharsAvail(UART2_BASE)) { if(i2>=buffersize) i2=0;// khong nhan du lieu nua else //move the chars received to buffer check[] { check[i2] = UARTCharGet(UART2_BASE); if(check[i2]=='+') isPlus=1; i2++; } } //turn off the blue led GPIOPinWrite(GPIO_PORTF_BASE,BLUE_LED,0); // } void clear_check(void) // hàm xóa tồn liệu mảng check[] { int i; for (i=0;i

Ngày đăng: 30/10/2022, 20:16

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w