Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
3,05 MB
Nội dung
ĐỒ ÁN ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN – ĐIỆN TỬ BÁO CÁO ĐỒ ÁN ĐỀ TÀI: GỬI TIN NHẮN LÊN WEB SERVER THÔNG QUA GPRS VÀ PHÂN LOẠI Giảng viên: TS Võ Quế Sơn Vũ Sĩ Hưng 41201528 TP Hồ Chí Minh ngày 03 tháng 12 năm 2015 ĐỒ ÁN MỤC LỤC ĐỒ ÁN I CƠ SỞ LÝ THUYẾT: SƠ LƯỢC VỀ GPRS: General Packet Radio Service (GPRS) dịch vụ vơ tuyến gói tổng hợp phát triển tảng công nghệ thông tin di động tồn cầu GSM Cơng nghệ GPRS hay biết đến với mạng di động hệ 2.5G (trong GSM đc xem mạng 2G) GPRS cung cấp liệu tốc độ từ 56 đến 114 kbps Dịch vụ GPRS cung cấp: - Dịch vụ tin nhắn đa phương tiện (MMS) - Push to Talk - Ứng dụng Internet dành cho Thiết bị thông minh (WAP) GPRS dùng sóng mang SMS Nếu SMS GPRS dùng, tốc độ truyền tải SMS đạt đến 30 tin nhắn SMS phút Tốc độ nhanh nhiều so với SMS thông thường GSM, tốc độ truyền tải khoảng đến 10 tin SMS phút TẬP LỆNH AT: Tập lệnh AT (Attention command) tập lệnh chuẩn hỗ trợ hầu hết thiết bị di động điện thoại di động, GSM modem mà có hỗ trợ gửi nhận tin nhắn tin nhắn dạng SMS (Short Message Service) điều khiển gọi Ví dụ số lệnh AT như: AT+CMGS, AT+ CMGL, TỔNG QUAN VỀ ASP.NET: Tên đầy đủ ASP.NET Active Server Pages.NET (.NET NET framework) công nghệ phát triển ứng dụng web, hệ ASP Một số thành phần quan trọng dự án ASP.NET : Default.aspx: nơi thiết kế giao diện cho website, có chế độ design (cho phép sửa chữa nội dung web cách trực quan), source (hiện thị mã nguồn html, người dùng soạn thảo trực tiếp lên thẻ html), split (cho phép xem trang web đồng thời chế độ trên) Default.aspx.cs: chứa mã nguồn viết C# Global.asax: sử dụng tập tin để khai báo biến toàn cục phản ứng với kiện toàn cục ĐỒ ÁN Web.config: tập tin dạng XML chứa cấu hình cho ứng dụng ASP.NET bao gồm cấu hình an ninh, quản lý trạng thái, quản lý nhớ, TỔNG QUAN VỀ DỰ ÁN: Khi gửi tin nhắn số điện thoại SIM điện thoại đặt module SIM900 tin nhắn giữ lại Nhấn SW1 kit TIVA để tiến hành gửi chuỗi liệu tin nhắn vừa gửi đến SIM lên server web vào file Text.txt Sau file Text dựa vào cú pháp tin nhắn mà phân loại vào ô hiển thị phù hợp UART GPRS ĐỒ ÁN II CÁC THÀNH PHẦN CỦA DỰ ÁN: MODULE SIM900: Các tính bật SIM900: SIM900 hoạt động băng tần 900 1800MHz Đế Sim Card tích hợp board Tích hợp nguồn xung 3A, với chế độ nguồn 3.3V/4V/4.5V ĐỒ ÁN Tích hợp ngõ Speaker, MIC Header RS232, ADC, VRTC, I2C, PWM Kích thước nhỏ gọn 47mm x 34.29 mm GSM Module Sim900 sản phẩm AT-COM phát triển nhằm giúp người sử dụng khai thác tính Sim900 cách dễ dàng Board hỗ trợ đầy ngõ Module Sim900 ( RS232, Audio, ADC, VRTC, PWM, I2C ) Dễ kết nối kết nối với dòng vi điều khiển PIC, AVR, ARM, Arduino để phát triển ứng dụng điều khiển, giám sát qua môi trường mạng GSM, GPRS Ngõ RS232 UART giúp giao tiếp máy tính lập trình cho Module Sim900 thơng qua tập lệnh AT COMMAND Tập lệnh AT COMMAND cho việc gửi liệu lên web server thông qua GPRS: AT+CGATT? [Kiểm tra GPRS có kích hoạt hay chưa] [Phản hồi "+CGATT: 1" GPRS kích hoạt] AT+CIPSHUT [Đóng IP] [Phản hồi: "SHUT OK"] AT+CIPSTATUS [Kiểm tra IP khởi tạo hay chưa] [Phản hồi: "STATE: IP INITIAL"] AT+CIPMUX=0 [Cài đặt chế độ kết nối] [Phản hồi: "OK" cài đặt thành công] AT+CGDCONT=1,"IP","m-wap"; [Phản hồi "OK", xác nhận lệnh "AT+CGDCONT?"] AT+CSTT="m-wap","mms","mms"; [Phản hồi:"OK"] AT+CIICR [Kết nối đến nhà cung cấp dịch vụ, vài giây] [Phản hồi: "OK"] AT+CIFSR [Lấy địa IP cuả module] [Phản hồi: "IP address" đăng ký cho module] AT+CIPSTART="TCP","trandaolong.somee.com","80" [Bắt đầu kết nối, TCP, tên miền, port] ĐỒ ÁN [Phản hồi: "OK" sau "CONNECT OK"] AT+CIPSEND [Yêu cầu gửi liệu] [Phản hồi lại ký tự “>” để xác nhận bạn gửi liệu] GET http://www.vusihung.somee.com/Default.asp?Data=123456 [Sau gửi byte 0x0A(Ctrl+Enter) 0x1A(Ctrl+Z) để tiến hành gửi liệu] [Module xác nhận phản hồi: "SEND OK"] AT+CIPSHUT [Ngắt kết nối tại] [Phản hồi: "SHUT OK"] Những đoạn lệnh AT gửi từ chip ARM Cortex M4 thông qua UART cho module Sim900 KIT TM4C123G LAUNCHPAD: Tiva Lauchpad phiên nâng cấp kit Stellaris Lauchpad ngừng sản xuất, có giá thành thấp tiêu hao lượng, ĐỒ ÁN sản xuất tập đoàn Texas Instruments Tiva lauchpad mang đầy đủ tính kit Stellaris Lauchpad đồng thời nâng cấp thêm số ngoại vi sửa lỗi có phiên Stellaris Lauchpad cũ Ta dùng Kit để đọc chuỗi liệu từ module SIM900 truyền lên web server thông qua GPRS Code cho Kit sau: #include "inc/hw_ints.h" #include #include #include "inc/hw_memmap.h" #include "driverlib/pin_map.h" #include "inc/hw_types.h" #include "driverlib/sysctl.h" #include "driverlib/gpio.h" #include "utils/uartstdio.h" #include "driverlib/uart.h" #include "driverlib/interrupt.h" #include "driverlib/pin_map.h" int sms[8000]; int i=0; int a=0; int b=0; //======================================================= ====================// void UART1IntHandler(void) { unsigned long ulStatus; ulStatus = UARTIntStatus(UART1_BASE, true); //get interrupt status UARTIntClear(UART1_BASE, ulStatus); //clear the asserted interrupts while(UARTCharsAvail(UART1_BASE)) { sms[i]=UARTCharGet(UART1_BASE); sms[] //luu chuoi tin nhan vao mang if((((sms[i])=='D')&&((sms[i-1])=='S')&&((sms[i-2])=='U')&&((sms[i-3])=='C'))) { a=1; //Neu dung la tin nhan ta se cho a=1 } i++; } } //======================================================= ================================================= void ConfigureUARTB(void) { SysCtlPeripheralEnable(SYSCTL_PERIPH_UART1); GPIOPinConfigure(GPIO_PB0_U1RX); GPIOPinConfigure(GPIO_PB1_U1TX); GPIOPinTypeUART(GPIO_PORTB_BASE, GPIO_PIN_0 | GPIO_PIN_1); UARTClockSourceSet(UART1_BASE, UART_CLOCK_PIOSC); UARTStdioConfig(1, 115200, 16000000);//baurate 115200 } //======================================================= ================================================== ĐỒ ÁN int main(void) { SysCtlClockSet(SYSCTL_SYSDIV_2_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ| SYSCTL_OSC_MAIN);//tan so 80Mhz SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1); ConfigureUARTB(); //Goi chuong trinh IntMasterEnable(); //enable processor interrupts IntEnable(INT_UART1); //enable the UART interrupt UARTIntEnable(UART1_BASE, UART_INT_RX | UART_INT_RT); UARTprintf("AT\n"); SysCtlDelay(SysCtlClockGet()/3); UARTCharPut(UART1_BASE, 26); while(1) { /* Bien a dung de kiem soat gui hay khong gui tin nhan len sever Neu ki tu gui ve co chua CUSD thi chinh la tin nhan Nhan duoc tin nhan ta se cho a=1 de cho phep gui tin nhan len sever */ if(a==1) { a=0; GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1,0x02); // Bat led bao hieu dang gui SysCtlDelay(SysCtlClockGet()/15); //Delay 0,2s UARTprintf("AT+CIPSHUT\n"); //Ngat ket noi trc ket noi SysCtlDelay(SysCtlClockGet()/15); //Delay 0,2s UARTprintf("AT+CIPSTART=\"TCP\",\"www.vusihung.somee.com\",\"80\"\n"); //Ket noi toi sever SysCtlDelay(SysCtlClockGet()/3); //Delay 1s UARTprintf("AT+CIPSEND\n"); //Gui voi noi dung: //Noi dung gui di for (b=0; b Do an 1 canhgiua { margin-left:auto; margin-right:auto; } #form1 { height: 565px; } 10 ĐỒ ÁN 11 ĐỒ ÁN UNIVERSITY OF TECHNOLOGY b) Mã nguồn C# cho tương tác client server (trong file Default.aspx.cs): using using using using using using using System; System.Collections.Generic; System.Linq; System.Web; System.Web.UI; System.Web.UI.WebControls; System.IO; public partial class _Default : System.Web.UI.Page { // Khởi tạo hàm readFile private int readFile(string file) { try { StreamReader reader = new StreamReader(file); string content = reader.ReadLine(); reader.Close(); return int.Parse(content); } catch { return 1; } } // Khởi tạo chức cho nút nhấn A01 trang web 12 ĐỒ ÁN protected void Button1_Click(object sender, EventArgs e) { int DATA; string pathfile = Server.MapPath(Request.ApplicationPath + "\\Text.txt"); DATA = readFile(pathfile); Label2.Text = DATA.ToString(); } // Khởi tạo chức cho nút nhấn DELETE REPORT trang web protected void Button2_Click(object sender, EventArgs e) { string pathfile = Server.MapPath(Request.ApplicationPath + "\\Report.txt"); StreamWriter stream = new StreamWriter(pathfile,false); stream.Write(""); stream.Close(); } } c) Mã nguồn cho kiện toàn cục (trong file Global.asax): Sub Application_BeginRequest(ByVal Sender as Object, ByVal E as EventArgs) Dim data_string, file_System, file_path, file, report_path, report, report_system data_string = Request.QueryString("Data") if data_string "" then file_System = CreateObject("Scripting.FileSystemObject") report_system = CreateObject("Scripting.FileSystemObject") report_path = Server.MapPath("Report.txt") file_path = Server.MapPath("Text.txt") 'Xóa nội dung file Text.txt Dim stream As New IO.StreamWriter(file_path, False) stream.Write("") stream.Close() 'Ghi data_string vào file Text.txt file = file_System.OpenTextFile(file_path, 8, True) file.WriteLine(data_string) file.Close() file = Nothing file_System = Nothing End If End Sub Cách triển khai ứng dụng ASP.net somee.com: Để đăng ký web hosting NET miễn phí vào trang http://somee.com/ Trong mục FREE NET HOSTING chọn Learn More hình 13 ĐỒ ÁN Trong trang Click vào Order now hình bên để vào trang đăng ký Điền đầy đủ thông tin đăng ký Yêu cầu Email phải xác để xác minh tài khoản Mục Zip/Postal code nhập 70000 TP HCM, 14 ĐỒ ÁN mục: Primary phone, Secondary phone, Fax number khơng cần nhập Sau click Register new user and continue Trong trang Check vào bên Sau Click Continue Ở trang Chúng ta thiết lập thông tin bạn tên website mục Site name; Operating system chọn Windows server 2008 R2, ASP.NET verson chọn 4.0 Site tile Site Description bạn tự đặt Sau click vào Create website Như ta tạo xong host cho web site Bây ta tiến hành up web lên host Mở project website viết Visual Studio, chuột phải vào thư mục chứa web site chọn Publish website Sau tới thư mục chứa tất file publish zip lại thành file có zip Tiến hành upload file lên web hình sau: Bây ta tiến hành đính kèm sở liệu với host Click vào mục Attach database Tại mục From backup location chọn tên website sau chọn thư mục chứa database Sau chọn file database Cuối click Attach Có bảng thơng báo chọn Ok Bây việc cuối cấu hình lại file web.config Để chỉnh sửa lại file web.config ta quay trở lại mục File Manager Tìm tới file web.config chọn Edit text Thay chuỗi connectionString dấu ngoặc kép chuỗi connection string lấy cấu hình MS SQL host: 15 ĐỒ ÁN Bây vào website mà tạo với tên miền có somee.comkhi đăng ký host cấp sẵn Ở đăng ký với tên miền http://vusihung.somee.com/ III KẾT QUẢ THỰC HIỆN: Đây trang web sau khởi tạo với mục : Gửi tin nhắn vào số điện thoại gán module SIM 900 với cú pháp sau : A01_[ nội dung ] A02_[ nội dung ] A03_[ nội dung ] A04_[ nội dung ] Kết quả: 16 ĐỒ ÁN Với tin nhắn A01_[ Học bù sáng t3 ] Sau đăng nhập vào trang web, nhấn nút A01 để nhận thông tin IV TÀI LIỆU THAM KHẢO: TM4C123G_LaunchPad_Workshop_Workbook http://vsblogs.wordpress.com/2013/11/28/tcp-connection-over-gprsusing-sim900-and-at-commands/ http://thanhcuong.wordpress.com/2011/09/13/tri%E1%BB%83n-khaim%E1%BB%99t-%E1%BB%A9ng-d%E1%BB%A5ng-asp-net-trnhost-mi%E1%BB%85n-phi-deploying-a-asp-net-application-in-freeweb-hosting/ 17 ... module SIM900 tin nhắn giữ lại Nhấn SW1 kit TIVA để tiến hành gửi chuỗi liệu tin nhắn vừa gửi đến SIM lên server web vào file Text.txt Sau file Text dựa vào cú pháp tin nhắn mà phân loại vào ô hiển... qua môi trường mạng GSM, GPRS Ngõ RS232 UART giúp giao tiếp máy tính lập trình cho Module Sim900 thơng qua tập lệnh AT COMMAND Tập lệnh AT COMMAND cho việc gửi liệu lên web server thông qua GPRS: ... Sau click vào Create website Như ta tạo xong host cho web site Bây ta tiến hành up web lên host Mở project website viết Visual Studio, chuột phải vào thư mục chứa web site chọn Publish website