Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 109 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
109
Dung lượng
3,19 MB
Nội dung
LỜI CAM ĐOAN Tôi xin cam đoan công trình nghiên cứu riêng tơi Các kết nêu luận văn trung thực chưa công bố cơng trình nghiên cứu khác Tơi xin cam đoan rằng, thơng tin trích dẫn luận văn rõ nguồn gốc Hải Phòng, ngày 11 tháng 03 năm 2016 LỜI CẢM ƠN Để thực hiên đề tài này, tác giả xin chân thành cảm ơn Thầy Nguyễn Trọng Đức tận tình hướng dẫn, bảo, kinh nghiệm quý báu hỗ trợ phương tiện vật tư suốt trình tìm hiểu, nghiên cứu đề tài Đồng thời tác giả xin cảm ơn thầy cô Viện đào tạo sau đại học – Trường Đại học Hằng Hải Việt Nam tạo điều kiện thuận lợi, cung cấp sở vật chất tốt suốt trình học tậm nghiên cứu khoa học Tác giả xin gửi lời cảm ơn đến thầy cô Khoa Công nghệ thông tin – Trường Đại học Hằng Hải tạo điều kiện, cung cấp kiến thức cần thiết để tác giả có điều kiện đủ kiến thức để thực trình nghiên cứu Ngoài ra, tác giả xin cám ơn thành viên lớp, đồng nghiệp công ty có ý kiến đóng góp, bổ sung, giúp nhóm hồn thành tốt đề tài! MỤC LỤC LỜI CAM ĐOAN .i LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC CHỮ VIẾT TẮT VÁ KÝ HIỆU .v DANH MỤC BẢNG vi DANH MỤC HÌNH vii MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN CHƯƠNG 2: HỆ THỐNG ĐỊNH VỊ VÀ ỨNG DỤNG GIÁM SÁT, QUẢN LÝ PHƯƠNG TIỆN GIAO THÔNG 10 2.1 Hệ thống định vị toàn cầu GPS 10 2.2 Nguyên lý định vị vệ tinh GPS 12 2.3 Giao thức dành cho máy thu GPS .16 2.3.1 Giới thiệu chuẩn NMEA 16 2.3.2 Ghép nối phần Cứng theo chuẩn NMEA 17 2.3.3 Các đoạn mã theo chuẩn NMEA 18 2.3.4 Giải mã số đoạn mã xác định vị trí 20 CHƯƠNG 3: HỆ ĐIỀU HÀNH 22 3.1 Hệ điều hành UNIX 22 3.1.1 Lịch sử phát triển 22 3.1.2 Hai dòng UNIX: System V AT&T, Novell Berkeley Software Distribution (BSD) Đại học Berkeley 22 3.2 Hệ điều hành LINUX 24 3.2.1 Lịch sử phát triển 24 3.2.2 Lợi ích sử dụng Linux 26 3.2.3 Một số hạn chế tồn Linux 28 3.2.4 Các phiên Linux 29 3.2.5 Hệ thống tiến trình (process) Linux .31 3.2.6 Hệ thống tập tin Linux 35 3.2.7 Kết nối mạng thông qua TCP/IP 38 CHƯƠNG 4: PYTHON RASPBERRY 43 4.1 Ngơn ngữ lập trình Python 43 4.1.1 Giới thiệu Python 43 4.1.2 Lịch sử phát triển Python 43 4.1.3 Đặc điểm Python: 45 4.1.4 Các phiên khác Python: 50 4.2 Máy tính nhúng Raspberry Pi 52 4.2.1 Giới thiệu Board Raspberry Pi .52 4.2.2 Cấu hình RPi 53 4.2.3 Ứng dụng RPi .54 4.2.4 Kết nối Raspberry Pi 55 4.2.5 Các hệ điều hành cho Raspberry Pi: 56 CHƯƠNG 5: THIẾT KẾ CHẾ TẠO THIẾT BỊ GIÁM SÁT HÀNH TRÌNH TRỰC TUYẾN 58 5.1 Thiết kế chế tạo thử nghiệm mạch điện 58 5.2 Sơ đồ khối 59 5.3 Thiết kế thiết bị 59 5.4 Lựa chọn linh kiện 62 5.5 Thiết kế chi tiết mạch điện 68 CHƯƠNG 6: XÂY DỰNG PHẦN MỀM CHO THIẾT BỊ GIÁM SÁT HÀNH TRÌNH 69 6.1 Phần mềm GPSD 69 6.2 Giao thức kết nối thiết bị với máy chủ 70 6.3 Xây dựng sở liệu SQLite 71 6.4 Xây dựng module chương trình 72 KẾT LUẬN 78 TÀI LIỆU THAM KHẢO .79 PHỤ LỤC 1: SƠ ĐỒ MẠCH ĐIỆN 80 PHỤ LỤC 2: DANH SÁCH LINH KIỆN .84 PHỤ LỤC 3: HÌNH ẢNH KẾT QUẢ THỰC TẾ 85 PHỤ LỤC 4: CẤU HÌNH SERVER VÀ RASPBERRY .90 DANH MỤC CHỮ VIẾT TẮT VÁ KÝ HIỆU Chữ viết tắt GPRS GPS GLONASS GNSS GCC GGSN MT SMS TE RMC Giải thích General Packet Radio Service Global Positioning System Russian GLOlal NAVigation Satellite System Global Navigation Satellite System Ground-based Control Complex Gateway GPRS Support Node Mobile Terminal Short Message Service Terminal Equipment Recommended Minimum data for gps DANH MỤC BẢNG Bảng - Các phiên hệ điều hành Linux 30 Bảng - Một số lệnh thao tác với thư mục tập tin Linux 38 Bảng - Hệ thống từ khóa Python 45 Bảng - Các phiên Raspberry Pi 54 Bảng - Thông số kỹ thuật module GPS L70 63 Bảng - Dữ liệu tin hành trình .71 Bảng - Dữ liệu tin tốc độ 71 Bảng - Cấu trúc sở liệu PITRACKER 72 Bảng - Module ADC 73 Bảng 10 - Module SQLiteDB 73 Bảng 11 - Module kết nối truyền liệu .74 Bảng 12 - Module đọc liệu GPS từ GPSD .76 Bảng 13 - Module phần mềm cho thiết bị 77 DANH MỤC HÌN Hình - Số liệu tai nạn giao thơng 2014-2015 Hình - Tỷ lệ vụ tai nạn giao thông Hình - Mơ hình hoạt động Hình - Cấu trúc hệ thống định vị vệ tinh GPS 10 Hình - Hệ GPS hệ tọa độ địa tâm 13 Hình - Cách định vị GPS không gian 15 Hình - Các phiên Unix 24 Hình - Cây thư mục Linux 35 Hình - Board Raspberry Pi 52 Hình 10 - Những thông số sơ lược Raspberry Pi B v2 53 Hình 11 - Raspberry Pi thiết bị kết nối với 55 Hình 12 - Sơ đồ chân GPIO board RPi 56 Hình 13 - Sơ đồ khối 59 Hình 14 - Cấu trúc Chip GPS .60 Hình 15 - Sơ đồ khối module GPS L70 .64 Hình 16 - Sơ đồ khối IC GL850G 65 Hình 17 - Sơ đồ khối IC MCP300x .66 Hình 18 - Sơ đồ ngun lý mạch đo tín hiệu tương tự 80 Hình 19 - Sơ đồ nguyên lý mạch thu thập tín hiệu số 80 Hình 20 - Sơ đồ nguyên lý mạch USB Hub 81 Hình 21 - Sơ đồ nguyên lý mạch thu tín hiệu GPS .81 Hình 22 - Sơ đồ nguyên lý mạch nguồn 82 Hình 23 - Sơ đồ chân Raspberry Pi .82 Hình 24 - Mạch in PCB lớp top 83 Hình 25 - Mạch in PCB lớp bottom .83 MỞ ĐẦU Cùng với phát triển ngành công nghiệp điện tử, năm gần hệ thống định vị dẫn đường ngày sử dụng rộng rãi giới Việt nam Và năm tới hứa hẹn tăng trưởng với mục đích ứng dụng cơng nghệ để đảm bảo an tồn giao thơng tuyến quốc lộ Để chủ động việc ứng dụng công nghệ này, việc nắm vững chất công nghệ khía cạnh lý thuyết thực tiễn đóng vai trò vơ quan trọng Trên sở tơi xin đề xuất triển khai đề tài luận văn thạc sĩ “NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO THIẾT BỊ ĐỊNH VỊ PHỤC VỤ QUẢN LÝ, GIÁM SÁT PHƯƠNG TIỆN GIAO THƠNG” với mục tiêu sau: Xây dựng công nghệ chế tạo thiết bị trợ giúp giám sát, quản lý phương tiện giao thông đường bộ, đường sắt sở ứng dụng công nghệ đại định vị vệ tinh, vi điện tử phù hợp với điều kiện Việt Nam Chế tạo sản phẩm ứng dụng công nghệ định vị chất lượng cao, phù hợp với tiêu chuẩn tương đương giới, mang tính cạnh tranh cao, có khả xuất sang nước khu vực Đối tượng nghiên cứu phạm vi nghiên cứu gồm: Hệ điều hành Linux Ngôn ngữ lập trình Python Máy tính nhúng RaspberryPi Chip GPS thu tín hiệu tính tốn tọa độ, tốc độ thời gian Các thiết bị giám sát hành trình kiểm sốt tốc độ ứng dụng giao thơng đường đường sắt Tính cấp thiết đề tài: Hiện ứng dụng công nghệ định vị đề sử dụng thiết bị nhập ngoại định hướng sản xuất theo tiêu kỹ thuật cứng nhiều trường hợp chưa phù hợp với điều kiện đặc thù Việt nam, thiết bị nhập dạng nguyên khó can thiệp có nhu cầu đồng thời giá thành cao có tính khơng dùng đến Người sử dụng không nắm chất nguyên lý định vị công nghệ GPS dẫn đến số trường hợp sử dụng không mục tiêu đối tượng Quan trọng hơn, từ 06/2009 tập đồn Bưu viễn thơng Việt Nam – VNPT thức triển khai hệ dịch vụ định vị VNPTTracking Đây dịch vụ giá trị gia tăng có tiềm phát triển lớn nhiên trình triển khai dịch vụ (đặc biệt phần thiết bị định vị) gặp số trở ngại cần giải sau: Các tính thiết bị ngày đòi hỏi nâng cấp, dung lượng nhớ chương trình cần nhiều hơn, IC dòng 8bits khơng đáp ứng u cầu đề Các dòng thiết bị chủ yếu chạy mạng 2,5G – sử dụng GPRS để truyền liệu số yêu cầu truyền liệu với tốc độ cao thực Trong q trình phát triển dòng thiết bị (VNT102, VNT918, VNT918s) cần nhiều thời gian cấu trúc xử lý trung tâm khác tập lệnh, sơ đồ chân, cơng cụ phát triển … Khó tận dụng module xây dựng tảng trước Chính lý trên, mục tiêu nội dung đề đề tài cần thiết đáp ứng yêu cầu đề Ý nghĩa thực tiễn đề tài: 87 88 89 PHỤ LỤC 4: CẤU HÌNH SERVER VÀ RASPBERRY COMM SẺRVER a Thông số hostname: comm user: sonkt pass: *********** b Cấu hình card mạng: auto eth0 iface eth0 inet static address 192.168.1.20 netmask 255.255.255.0 gateway 192.168.1.1 broadcast 192.168.1.255 network 192.168.1.0 dns-nameservers 8.8.8.8 c Cài đặt socat sudo apt-get install socat d Cài đặt MySQL-Python 90 sudo apt-get install python-pip sudo apt-get install python-dev libmysqlclient-dev sudo pip install MySQL-python 91 MYSQL SERVER a Thông số hostname: mysql user: sonkt pass: *********** b Cấu hình card mạng: auto eth0 iface eth0 inet static address 192.168.1.30 netmask 255.255.255.0 gateway 192.168.1.1 broadcast 192.168.1.255 network 192.168.1.0 dns-nameservers 8.8.8.8 c Cài đặt MySQL sudo apt-get install mysql-server (https://help.ubuntu.com/lts/serverguide/mysql.html) d Cấu hình MySQL user: root 92 pass: 1234@qaz cd /etc/mysql/ sudo nano my.cnf Thay đổi: “bind-address = 127.0.0.1” thành “bind-address = 0.0.0.0” sudo service mysql restart mysql -u root -p mysql> use mysql mysql> GRANT ALL ON *.* to root@'192.168.1.20' IDENTIFIED BY '1234@qaz'; mysql> FLUSH PRIVILEGES; (http://www.thegeekstuff.com/2010/08/allow-mysql-client-connection/) 93 AMQP SERVER a Thông số hostname: amqp user: sonkt pass: *********** b Cấu hình card mạng: auto eth0 iface eth0 inet static address 192.168.1.40 netmask 255.255.255.0 gateway 192.168.1.1 broadcast 192.168.1.255 network 192.168.1.0 dns-nameservers 8.8.8.8 c Cài đặt Rabbitmq # install erlang sudo apt-get install erlang -y sudo apt-get install erlang-nox -y # get deb package echo deb http://www.rabbitmq.com/debian/ testing main | sudo tee /etc/apt/sources.list 94 # add key wget http://www.rabbitmq.com/rabbitmq-signing-key-public.asc sudo apt-key add rabbitmq-signing-key-public.asc # install server sudo apt-get update sudo apt-get install rabbitmq-server -y sudo service rabbitmq-server start sudo service rabbitmq-server status sudo rabbitmq-plugins enable rabbitmq_management sudo rabbitmqctl add_user admin 1234@qaz sudo rabbitmqctl set_user_tags admin administrator sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" sudo rabbitmqctl delete_user guest sudo service rabbitmq-server restart # add rule, restart service sudo iptables -A INPUT -p tcp dport 15672 -m state state NEW,ESTABLISHED -j ACCEPT sudo service ufw restart # verify port is listening netstat -tulpn tcp 0 0.0.0.0:15672 0.0.0.0:* LISTEN - (http://jessesnet.com/development-notes/2014/ubuntu-rabbitmq-install/) 95 TRACKER – RASPBERRY PI a Thông số hostname: raspberry user: pi pass: raspberry b Cấu hình card mạng: auto eth0 iface eth0 inet static address 192.168.2.66 netmask 255.255.255.0 gateway 192.168.2.1 nameservers 8.8.8.8 c Cập nhật phần mềm: sudo apt-get upgrade sudo apt-get update d Cài đặt phần mềm cần thiết: #Cài đặt pip sudo apt-get install python-pip 96 #Cài đặt pycrypto sudo apt-get install python-crypto #Kiểm tra cổng usb lsusb udevadm info -q path -n /dev/ttyXXX dmesg | grep ttyXXX #Cấu hình cổng usb sudo nano /etc/udev/rules.d/usb2com.rules SUBSYSTEM=="tty", KERNEL=="ttyUSB*", KERNELS=="1-1.2.1:1.0", SYMLINK+="usb2com_3g1" SUBSYSTEM=="tty", KERNEL=="ttyUSB*", KERNELS=="1-1.2.1:1.1", SYMLINK+="usb2com_3g2" SUBSYSTEM=="tty", KERNEL=="ttyUSB*", KERNELS=="1-1.2.1:1.2", SYMLINK+="usb2com_3g3" SUBSYSTEM=="tty", KERNEL=="ttyUSB*", KERNELS=="1-1.2.2:1.0", SYMLINK+="usb2com_gps" SUBSYSTEM=="tty", KERNEL=="ttyUSB*", KERNELS=="1-1.2.2:1.1", SYMLINK+="usb2com_extra" #Cài đặt gpsd sudo apt-get install gpsd gpsd-clients python-gps #Cấu hình gpsd sudo nano /etc/default/gpsd # Default settings for gpsd # Please not edit this file directly - use `dpkg-reconfigure gpsd' to 97 # change the options START_DAEMON="true" GPSD_OPTIONS="-b" DEVICES="/dev/usb2com_gps" USBAUTO="false" GPSD_SOCKET="/var/run/gpsd.sock" #Kiểm tra gpsd cgps –s #Cài đặt wvdial sudo apt-get install wvdial #Cấu hình wvdial sudoedit /etc/wvdial.conf [Dialer Defaults] New PPPD = yes Dial Command = ATDT Dial Attempts = Modem = /dev/usb2com_3g1 Modem Type = Analog Modem ISDN = Baud = 460800 Username = "mms" Password = "mms" Init1 = ATH Init2 = AT+CGDCONT=1,"IP","m3-world" Phone = *99# Stupid Mode = Check Def Route = yes Auto Reconnect = yes 98 [Dialer vinafone] Init2 = AT+CGDCONT=1,"IP","m3-world" [Dialer mobifone] Init2 = AT+CGDCONT=1,"IP","m-wap" [Dialer viettel] Init2 = AT+CGDCONT=1,"IP","v-internet" #Cài đặt card mạng cho wvdial sudo nano /etc/network/interfaces # start 3G connection auto ppp0 iface ppp0 inet wvdial provider vinafone #Tạo file kiểm tra kết nối 3G nano check-wan-status.sh #!/bin/sh # # Restart network interfaces # if ppp0 3G connection is down PING="/bin/ping -q -c1 -W 10 -I ppp0" HOST=8.8.8.8 ${PING} ${HOST} if [ $? -ne ]; then echo "3G (ppp0) network connection is down! Attempting reconnection." 99 /sbin/ifdown force ppp0 sleep 10 /sbin/ifup force ppp0 sleep 10 fi #Thêm quyền thực thi cho file check-wan-status.sh sudo chmod +x check-wan-status.sh #Đặt lịch tự động kiểm tra phút lần sudo crontab –e */2 * * * * /home/pi/check-wan-status.sh #Add route sudo nano /etc/ppp/peers/wvdial noauth name wvdial usepeerdns defaultroute replacedefaultroute 100 ... sĩ “NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO THIẾT BỊ ĐỊNH VỊ PHỤC VỤ QUẢN LÝ, GIÁM SÁT PHƯƠNG TIỆN GIAO THƠNG” với mục tiêu sau: Xây dựng công nghệ chế tạo thiết bị trợ giúp giám sát, quản lý phương tiện. .. sử dụng thiết bị giám sát hành trình để quản lý theo dõi phương tiện có khả giám sát trạng thái hoạt động đường phương tiện lái xe, từ định đảm bảo an tồn giao thơng Hiện nay, phương tiện với... 2: HỆ THỐNG ĐỊNH VỊ VÀ ỨNG DỤNG GIÁM SÁT, QUẢN LÝ PHƯƠNG TIỆN GIAO THÔNG 10 2.1 Hệ thống định vị toàn cầu GPS 10 2.2 Nguyên lý định vị vệ tinh GPS 12 2.3 Giao thức dành