Tải bản đầy đủ (.pdf) (91 trang)

Xây dựng hệ thống thu thập dữ liệu môi trường từ xa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.08 MB, 91 trang )

TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ───────

ĐỒ ÁN

TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN

HỆ THỐNG THU THẬP DỮ LIỆU
MÔI TRƢỜNG TỪ XA

Sinh viên thực hiện : Bùi Đức Kiên
Lớp KTMT – K51
Giáo viên hƣớng dẫn: ThS Dƣ Thanh Bình

HÀ NỘI 06 - 2011


PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Thông tin về sinh viên
Họ và tên sinh viên: Bùi Đức Kiên
Điện thoại liên lạc: 01253538296
Email:
Lớp: Kỹ thuật máy tính.
Hệ đào tạo: Đại học chính qui
Đồ án tốt nghiệp đƣợc thực hiện tại: Đại học Bách khoa Hà Nội
Thời gian làm ĐATN: Từ ngày 20/2/2011 đến 26/05/2011
2. Mục đích nội dung của ĐATN
Xây dựng Hệ thống thu thập dữ liệu môi trƣờng từ xa.
3. Các nhiệm vụ cụ thể của ĐATN


- Phân tích thiết kế hệ thống thu thập dữ liệu môi trƣờng.
- Xây dựng phần cứng.
- Xây dựng phần mềm quản lý.
4. Lời cam đoan của sinh viên:
Tôi – Bùi Đức Kiên - cam kết ĐATN là công trình nghiên cứu của bản thân tôi dƣới sự hƣớng
dẫn của Thạc sĩ Dư Thanh Bình.
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳ công
trình nào khác.
Hà Nội, ngày tháng năm
Tác giả ĐATN

Bùi Đức Kiên
5. Xác nhận của giáo viên hƣớng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo vệ:
Hà Nội, ngày tháng năm
Giáo viên hƣớng dẫn

ThS. Dư Thanh Bình.

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

1


LỜI CẢM ƠN
Trƣớc tiên tôi xin gửi lời cám ơn chân thành sâu sắc tới các thầy cô giáo trong
trƣờng Đại học Bách Khoa Hà Nội nói chung và các thầy cô giáo trong viện Công nghệ
thông tin và truyền thông, bộ môn Kỹ thuật máy tính nói riêng đã tận tình giảng dạy,
truyền đạt cho tôi những kiến thức, kinh nghiệm quý báu trong suốt thời gian qua.
Đặc biệt tôi xin gửi lời cảm ơn đến thầy Dƣ Thanh Bình, thầy đã tận tình giúp
đỡ, trực tiếp chỉ bảo, hƣớng dẫn tôi trong suốt quá trình làm đồ án tốt nghiệp. Trong

thời gian làm việc với thầy, tôi không ngừng tiếp thu thêm nhiều kiến thức bổ ích mà
còn học tập đƣợc tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, hiệu quả,
đây là những điều rất cần thiết cho tôi trong quá trình học tập và công tác sau này.
Đồng thời xin chân thành cảm ơn trƣờng Đại học Bách khoa Hà Nội và các
thầy, cô giáo phụ trách Phòng thì nghiệm - Thƣ viện điện tử đã tạo mọi điều kiện về cơ
sở vật chất giúp tôi có một môi trƣờng tốt để thực hiện và hoàn thành đề tài này.
Sau cùng xin gửi lời cảm ơn chân thành tới gia đình, bạn bè đã động viên, đóng
góp ý kiến và giúp đỡ trong quá trình học tâp, nghiên cứu và hoàn thành đồ án tốt
nghiệp.

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

2


TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP
Đề tài này đƣợc thực hiện nhằm xây dựng một hệ thống có thể thu thập các số liệu về
môi trƣờng. Nhằm cung cấp số liệu cho công tác nghiên cứu, dự báo thời tiết, thiên tai, cho
quốc phòng, dân sinh…
Hệ thống thu thập các số liệu về môi trƣờng: Nhiệt đô, áp suất khí quyển, mực nƣớc,
lƣơng nƣớc, nhiệt độ trong nƣớc, loại mây, độ cao chân mây, các loại bức xạ … nhờ các các
thiết bị đo, hoặc các hệ thống cảm biến chuyên dụng. Nghiên cứu và xây dựng đƣợc một hệ
thống phần cứng tích hợp đƣợc các cảm biến
Sau khi xây dựng đƣợc phần cứng tích hợp các cảm biến thì các dữ liệu đo đƣợc sẽ
đƣợc hệ thống chuyển về một trung tâm. Tại trung tâm, dữ liệu đƣợc lƣu trữ, cụ thể đƣợc lƣu
trữ vào cơ sở dữ liệu và lƣu trữ tại máy chủ (server). Tại sever thực hiện xây dựng một phần
mềm đảm bảm thu nhận đƣợc đầy đủ thông tin từ thiết bị phần cứng gửi về.
Khi các ngành, bộ, các bộ phận khác cần dữ liệu về môi trƣờng có thể truy cập vào
máy chủ để lấy các thông tin cần thiết phục vụ cho các công việc cụ thể của riêng mình.
Ngƣời quản trị hệ thống có thể giám sát toàn bộ hệ thống thu thập số liệu qua giao diện

ngƣời dùng, hoặc thông qua phần mềm quản trị.
Các mục tiêu của đồ án tốt nghiệp:



Tìm hiểu tổng quan về hệ thống thu thập dữ liệu từ xa qua GPRS.
Nghiên cứu và đƣa ra giải pháp để sử dụng công nghệ GSM/GPRS
o Thiết kế hệ thống phần cứng đáp ứng yêu cầu truyền dữ liệu liên tục, ổn
định.
o Phát triển hệ thống quản lý trên PC.

Tìm hiểu và đánh giá chung về khó khăn, tính khả thi, hiệu quả cũng nhƣ nhu cầu và
ứng dụng của hệ thống ở Việt Nam và trên thế giới.

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

3


PHÂN CÔNG CÔNG VIỆC

Phần làm chung
Bùi Đức Kiên + Nguyễn Chí Thắng

Phần làm riêng
Bùi Đức Kiên

 Nghiên cứu lý thuyết:
 Thiết kế mạch
o Module GSM/GPRS

 Thiết kế Firmware
o Vi Điều khiển Atmega128
o MS SQL Sever, C#, Codevison
 Thiết kế mạch nguyên lý
 Thiết kế dữ liệu.
 Viết báo cáo – Slide.

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

4


DANH SÁCH NHỮNG TỪ VIẾT TẮT
Từ viết tắt

Giải thích

ADSL

Asymmetric Digital Subscriber Line

BSC

Base Station Center

CSDL

Cơ Sở Dữ Liệu

GGSN


Gateway GPRS Support Node

GPRS

General Packet Radio Service

HDD

Hard Disk Driver

IP

Internet Protocol

ISP

Internet Service Provider
Mobile Terminal - Thiết bị đầu cuối mạng (trong trƣờng
hợp này 1 Node điểm đo)

MT
OSI

Open Systems Interconnection Reference Model

PDU

Protocol Data Unit


PPP

Point-to-point Protocol

RAM

Random Access Memory

RISC

Reduced Instructions Set Computer

ROM

Read Only Memory

SGSN

Serving GPRS Support Node

SMS

Short Message Services

SQL

Structured Query Language

TCP


UDP

Transmission Control Protocol
Terminal Equipment.
Thiết bị đầu cuối (Server).
Universal Synchronous Asynchronous Receiver
Transmitter
User Datagram Protocol

VPN

Virtual Private Network

WAN

Wide Area Network

TE
UASRT

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

5


DANH MỤC CÁC HÌNH ẢNH
Figure 1: Mô hình tổng quan hệ thống ........................................................................... 13
Figure 2:Mô hình tổng quan thiết các Modul phần cứng. .............................................. 14
Figure 3:Mô hình tổng quan thiết các Modul phần mềm ............................................... 15
Figure 4: Mô hình Server ............................................................................................... 15

Figure 5: Mô hình 1 điểm đo.......................................................................................... 16
Figure 6: Kit Atmega16L ............................................................................................... 17
Figure 7: Kit Pic ............................................................................................................. 17
Figure 8: Kit ARM9 ....................................................................................................... 17
Figure 9: Kit SIM548 ..................................................................................................... 18
Figure 10: Wavecom Module......................................................................................... 18
Figure 11: Kit Freescale ................................................................................................. 18
Figure 12: Cấu trúc GPRS đƣợc phát triển dựa trên mạng GSM .................................. 20
Figure 13: Cấu trúc các lớp địa chỉ IP ............................................................................ 23
Figure 14: Dạng thức của gói tin IP ............................................................................... 24
Figure 15: Cổng truy nhập dịch vụ TCP ........................................................................ 24
Figure 16: Cấu trúc chung của gói dữ liệu ..................................................................... 29
Figure 17: Cấu trúc phần dữ liệu gửi về ........................................................................ 30
Figure 18: Cấu trúc dữ liệu của 1 cảm biến ................................................................... 30
Figure 19: Mô hình quan hệ cơ sở dữ liệu ..................................................................... 32
Figure 20: Sơ đồ chân Atmega128 ................................................................................. 35
Figure 21: Bản đồ bộ nhớ chƣơng trình Atmega128 ..................................................... 41
Figure 22: Bản đồ bộ nhó SRAM Atmega128 ............................................................... 42
Figure 23: Thanh ghi địa chỉ EEPROM ......................................................................... 43
Figure 24: Thanh ghi dữ liệu EEPROM ........................................................................ 43
Figure 25: Thanh ghi điều khiển EEPROM ................................................................... 43
Figure 26: Cấu hình chân của DS18B20 ........................................................................ 48
Figure 27: Sơ đồ khối của DS18B20 ............................................................................. 49
Figure 28: Thanh ghi nhiệt độ ........................................................................................ 50
Figure 29: Cấp nguồn ký sinh cho DS18B20 trong quá trình biến đổi A/D .................. 52
Figure 30: Cấp nguồn cho DS18B20 với nguồn ngoài .................................................. 52
Figure 31: Mã ROM 64-bit ............................................................................................ 53
Figure 32: Bản đồ nhớ của DS18B20 ............................................................................ 53
Figure 33: Thanh ghi cấu hình ....................................................................................... 54
Figure 34: Cấu hình phân giải đo nhiệt .......................................................................... 54

Figure 35: Cấu hình phần cứng ...................................................................................... 55
Figure 36: 64-bit của mã ROM ...................................................................................... 56
Figure 37: Giao diện DXP.............................................................................................. 59
Figure 38: Tạo thƣ viện trong DXP ............................................................................... 60
Figure 39: Thêm thƣ viện schematic và pcb .................................................................. 60
Figure 40: Vẽ linh kiện trong schematic ........................................................................ 61
Figure 41: Vẽ linh kiện trong PCB ................................................................................ 61
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

6


Figure 42: Add thƣ viện pcb vào schematic................................................................... 62
Figure 43: Khối nguồn ................................................................................................... 63
Figure 44: Khối thạch anh ngoài .................................................................................... 63
Figure 45: Khối vi điều khiển ........................................................................................ 64
Figure 46: Atmega128 thực tế........................................................................................ 65
Figure 47: Khối SIMCOM300CZ .................................................................................. 65
Figure 48: Sim300CZ và Conector thực tế .................................................................... 66
Figure 49: Khối đèn báo tín hiệu.................................................................................... 66
Figure 50: Sơ đồ Sim-Holder ......................................................................................... 67
Figure 51: SimHolder thực tế ......................................................................................... 67
Figure 52: Sơ đồ Schematic mạch.................................................................................. 68
Figure 53: Sơ đồ mạch in ............................................................................................... 69
Figure 54: Mạch hoàn thành .......................................................................................... 70
Figure 55: Thao tác truyền nhận dữ liệu với AT Command .......................................... 70
Figure 56: Sơ đồ khối Server và các điểm truy cập. ...................................................... 75
Figure 57: Lƣu đồ thuật toán đăng nhập hệ thống. ........................................................ 76
Figure 58: Lƣu đồ thuật toán kết nối .............................................................................. 77
Figure 59: Lƣu đồ thuật toán cập nhật dữ liệu ............................................................... 78

Figure 60: Giao diện Form Main ................................................................................... 79
Figure 61: Kiểm tra địa chỉ IP Internet Server ............................................................... 80
Figure 62: Cấu hình mở cổng cho Modem ADSL. ........................................................ 80
Figure 63: Server ở trạng thái truyền nhận dữ liệu thành công ..................................... 81
Figure 64: Giao diện form Đăng nhập ........................................................................... 81
Figure 65: Giao diện Form Thống kê chi tiết điểm đo................................................... 82
Figure 66: Giao diện Form Chọn thông tin in báo cáo .................................................. 82
Figure 67: Tạo Socket bằng Thread. .............................................................................. 89

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

7


DANH MỤC BẢNG
Table 1: Phƣơng án vi điều khiển .................................................................................. 19
Table 2:Bảng liệt kê một vài cổng TCP phổ biến .......................................................... 25
Table 3: Cú pháp lệnh AT .............................................................................................. 27
Table 4: Bảng Tài khoản ................................................................................................ 31
Table 5: Bảng Loại cảm biến ......................................................................................... 31
Table 6: Bảng Điểm đo .................................................................................................. 31
Table 7: Bảng Nhiệt độ .................................................................................................. 31
Table 8: Bảng Áp Suất ................................................................................................... 32
Table 9: Port A ............................................................................................................... 36
Table 10: Port B ............................................................................................................. 37
Table 11: Port C ............................................................................................................. 37
Table 12: Port D ............................................................................................................. 38
Table 13: Port E ............................................................................................................. 38
Table 14: Port F .............................................................................................................. 39
Table 15: Port G ............................................................................................................. 40

Table 16: Dung lƣợng SRAM ........................................................................................ 41
Table 17: Đặc điểm SIMCOM300CZ ............................................................................ 48
Table 18: Mô tả các chân của DS18B20 ........................................................................ 49
Table 19: Quan hệ Nhiệt độ/Dữ liệu .............................................................................. 51
Table 20: Thông tin tìm kiếm bit ................................................................................... 57
Table 21: Dãy tìm kiếm 1-Dây....................................................................................... 57
Table 22: Hƣớng chọn lộ trình ....................................................................................... 58
Table 23: Giải thích lệnh AT Command ........................................................................ 72
Table 24: So sánh TCP – UPD ...................................................................................... 74
Table 25: Bảng giao tiếp trong mạng ............................................................................. 86
Table 26: Các phƣơng thức dùng trong Thread ............................................................. 87
Table 27: Các thuộc tính dùng trong Thread ................................................................. 88

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

8


MỤC LỤC
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ........................................................ 1
LỜI CẢM ƠN .................................................................................................................. 2
TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP ............................................................. 3
PHÂN CÔNG CÔNG VIỆC ............................................................................................ 4
DANH SÁCH NHỮNG TỪ VIẾT TẮT ......................................................................... 5
DANH MỤC CÁC HÌNH ẢNH ...................................................................................... 6
DANH MỤC BẢNG ........................................................................................................ 8
MỤC LỤC ........................................................................................................................ 9
PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƢỚNG GIẢI PHÁP ......................................... 12
CHƢƠNG 1: ĐẶT VẤN ĐỀ ..................................................................................... 12
1.Về phƣơng diện khí tƣợng thủy văn ................................................................... 12

2.Về phƣơng diện con ngƣời và sản xuất ............................................................... 12
3.Vấn đề đặt ra ....................................................................................................... 12
CHƢƠNG 2: Ý TƢỞNG THIẾT KẾ ........................................................................ 13
1.Tổng quan hệ thống ............................................................................................. 13
2.Vấn đề liên quan và phƣơng án lựa chọn ............................................................ 15
2.1 Thiết kế đầu cuối .......................................................................................... 15
2.2 Thiết kế một điểm thu thập .......................................................................... 16
CHƢƠNG 3: CƠ SỞ LÝ THUYẾT .......................................................................... 20
1. Sơ lƣợc về GPRS................................................................................................ 20
1.1 Mô hình hệ thống thu thập dữ liệu qua mạng GPRS ................................... 21
2. Giao thức TCP/IP ............................................................................................... 22
2.1 Tổng quát ..................................................................................................... 22
2.2 Giao thức IP ................................................................................................. 22
2.3 Giao thức điều khiển truyền dữ liệu TCP .................................................... 24
3. Tập lệnh AT Command ...................................................................................... 25
3.1 Cú pháp của lệnh AT.................................................................................... 26
3.2 Thực thi lệnh AT .......................................................................................... 27
4. Microsoft SQL Server ........................................................................................ 27
PHẦN 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG ................................................... 29
CHƢƠNG 1: THIẾT KẾ DỮ LIỆU .......................................................................... 29
1. Phía Client .......................................................................................................... 29
2.Phía Server .......................................................................................................... 30
2.1 Cơ sở dữ liệu ................................................................................................ 30
2.2 Các bảng dữ liệu ........................................................................................... 30
2.3 Mô hình quan hệ........................................................................................... 32
2.4 Nhận, bóc tách và lƣu trữ dữ liệu trên Server .............................................. 33
CHƢƠNG 2: THIẾT KẾ PHẦN CỨNG (CLIENT) ................................................. 34
1. Giới thiệu tổng quát về vi điều khiển Atemega 128 .......................................... 34
1.1 Sơ đồ chân của Atmega128 .......................................................................... 35
1.1.1 Port A (PA7…0) ..................................................................................... 36

1.1.2 Port B (PB7…0) ..................................................................................... 36
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

9


1.1.3 Port C (PC7…0) ..................................................................................... 37
1.1.4 Port D (PD7…0) ..................................................................................... 37
1.1.5 Port E (PE7…0)...................................................................................... 38
1.1.6 Port F(PF7…0) ....................................................................................... 39
1.1.7 Port G(PG4…0) ...................................................................................... 39
1.2 Bộ nhớ AVR Atmega128 ............................................................................. 40
1.2.1 EEPROM Data Memory – bộ nhớ dữ liệu EEPROM ............................ 42
1.2.2 Thanh ghi địa chỉ EEPROM – EEARH và EEARL............................... 42
1.2.3 Thanh ghi dữ liệu EEPROM – EEDR .................................................... 43
1.2.4 Thanh ghi điều khiển EEPROM – EECR .............................................. 43
1.3 USART ........................................................................................................ 44
1.4 Bộ chuyển đổi ADC ................................................................................... 45
2. Giới thiệu chung về Simcom 300CZ – Simcard Holder .................................... 45
2.1 Sim300CZ .................................................................................................... 45
3. Cảm biến nhiệt độ .............................................................................................. 48
3.1 Cấu hình chân ............................................................................................... 48
3.2 Tổng quan về DS18B20 ............................................................................... 49
3.3 Hoạt động đo nhiệt độ .................................................................................. 50
3.4 Cấp nguồn cho DS18B20 ............................................................................. 51
3.5 Mã ROM 64-bit ............................................................................................ 52
3.6 Bộ nhớ .......................................................................................................... 53
3.7 Thanh ghi cấu hình ....................................................................................... 54
3.8 Hệ thống bus 1-Dây ..................................................................................... 54
3.9 Cấu hình phần cứng...................................................................................... 54

3.10 Thuật toán Search ROM............................................................................. 55
4. Thiết kế phần cứng chi tiết ................................................................................. 58
4.1 Giao diện DXP ............................................................................................. 58
4.2 Hƣớng dân xây dựng thƣ viện cho DXP ...................................................... 59
4.3 Chi tiết các khối: .......................................................................................... 62
4.3.1 Khối nguồn ............................................................................................. 62
4.3.2 Khối tạo xung cho ate ............................................................................. 63
4.3.4 Khối vi điều khiển .................................................................................. 64
4.3.5 Khối sim300 ........................................................................................... 65
4.3.6 Khối đèn báo .......................................................................................... 66
4.3.7 Sơ đồ simholder ...................................................................................... 66
4.3.8 Sơ đồ toàn mạch ..................................................................................... 68
4.3.9 Sơ đồ mạch in ......................................................................................... 69
4.3.9 Mạch đã hoàn thành ............................................................................... 69
4.4 Thao tác tập lệnh AT Command để truyền nhận dữ liệu qua GPRS. .......... 70
CHƢƠNG 3: THIẾT KẾ PHẦN MỀM (SERVER) .................................................. 73
1. GPRS TCP server và các chức năng cơ bản ...................................................... 73
1.1 Tổng quát về GPRS Server .......................................................................... 73
1.2. Chức năng của Server ................................................................................. 74
1.3. Các tính năng chính của Server ................................................................... 74
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

10


1.4. Sơ đồ khối ................................................................................................... 74
1.5. Lựa chọn thiết bị và phƣơng án cho Server ............................................... 75
2. Sơ đồ thuật toán.................................................................................................. 76
2.1 Lƣu đồ Đăng nhập hệ thống ......................................................................... 76
2.2 Lƣu đồ Kết nối Client – Server .................................................................... 77

2.3 Lƣu đồ Cập nhật dữ liệu sau kết nối thành công.......................................... 78
3. Làm việc với GPRS Server ................................................................................ 79
3.1 Giao diện chính của Server .......................................................................... 79
3.2 Giao diện đăng nhập..................................................................................... 81
3.3 Giao diện thống kê chi tiết điểm đo ............................................................. 82
3.4 Giao diện chọn in báo cáo ........................................................................... 82
PHẦN 3: KẾT LUẬN .................................................................................................... 83
PHỤ LỤC ....................................................................................................................... 84
1. Socket ..................................................................................................................... 84
2. Giới thiệu về NameSpace System.Net và System.Net.Sockets ............................. 85
2.1 Lớp IPAdress.................................................................................................... 85
2.2 Lớp IPEndPoint ................................................................................................ 85
2.3 Lớp DNS .......................................................................................................... 86
2.4 NameSpace System.Net.Sockets ...................................................................... 86
3. Threading ............................................................................................................... 86
3.1 Một số khái niệm .............................................................................................. 86
3.2 Sử dụng Thread trong các chƣơng trình .Net ................................................... 87
3.2.1 Một số phƣơng thức thƣờng dùng ............................................................. 87
3.2.2 Một số thuộc tính thƣờng dùng. ............................................................... 88
3.2.3 Tạo một tuyến trong C# ............................................................................ 88
3.2.4 Sử dụng Thread trong các chƣơng trình Server ........................................ 88
TÀI LIỆU THAM KHẢO .............................................................................................. 90

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

11


PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƢỚNG GIẢI PHÁP
CHƢƠNG 1: ĐẶT VẤN ĐỀ

1.Về phƣơng diện khí tƣợng thủy văn
Trong những năm gần đây do sự tác động của con ngƣời khí hậu đã có những
thay đổi vô cùng to lớn: hiệu ứng nhà kính, các cơn bão cƣờng độ cực mạnh, sóng
thần, động đất, lũ lụt …Những thảm họa này ngày càng đƣợc đề cập tới nhiều hơn trên
các bản tin thời sự, dự báo thời tiết, với mức độ và mật độ rất khó lƣờng. Chúng đã
gây cho “hành tinh xanh” của chúng ta những tốn thất kinh hoàng về mạng sống của
con ngƣời và thiệt hại cho nền kinh tế toàn cầu.

2.Về phƣơng diện con ngƣời và sản xuất
Con ngƣời là nhân tố chính trong việc lao và sản xuất ra của cải vật chất cho xã
hội hiện nay, vì vậy nhân tố con ngƣời luôn phải đƣợc chú trọng và đƣợc tạo mọi điều
kiện thuận lợi nhất để có điều kiện phát triển. Bên cạnh đó, các sản phẩm làm ra cũng
cần đƣợc bảo quản trong một điều kiện nhất định và phù hợp để có đƣợc chất lƣợng tốt
nhất phục vụ nhu cầu sống của chúng ta.
Hiện nay trong các nhà máy hay trong các kho bãi lƣu trữ của các khu công
nghiệp hoặc xí nghiêp sản xuất còn đang rất thô sơ, điều kiện về môi trƣờng chƣa đƣợc
quản lý và theo dõi cẩn thận vì vậy gây ra rất nhiều tổn thất về mặt sức khỏe con ngƣời
cũng nhƣ chất lƣợng sản phẩm sau xuất kho.

3.Vấn đề đặt ra
Một thực tế mà chúng ta có thể nhận thấy khi nhìn vào những con số thiệt hại do
thiên tai gây ra, đây là những tổn thật vô cùng to lớn. Bên cạnh đó việc cung cấp một
môi trƣờng làm việc đảm bảo sức khỏe cho con ngƣời và theo dõi kho bãi lƣu trữ sả n
phẩm đầu ra sau một quá trình sản xuất để đạt tiêu chuẩn là vô cùng cần thiết. Yêu cầu
cấp thiết là phải có một hệ thống đo đạc chính xác các số liệu về môi trƣờng, từ các số
liệu thu thập đƣợc, chúng ta sẽ có thể tính toán, nghiên cứu đƣa ra các dự báo đúng
nhất, điều chỉnh nhanh và sớm nhất để có thể giảm đƣợc những tác hại do môi trƣờng
và thiên tai gây ra. Ngoài ra ta còn có thể cung cấp các số liệu đó cho các nghành khác:
nhƣ xây dựng, quốc phòng, an ninh…


Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

12


CHƢƠNG 2: Ý TƢỞNG THIẾT KẾ
1.Tổng quan hệ thống

Figure 1: Mô hình tổng quan hệ thống

Xây dựng một hệ thống có khả năng thu thập tính toán xử lý thông tin các dữ
liệu môi trƣờng nhằm hộ trợ tốt hơn cho nghiên cứu cũng nhƣ dự báo trƣớc các thảm
họa, phục vụ cho các hoạt động điều tra cơ bản và dự báo khí tƣợng, thủy văn, quan
trắc môi trƣờng không khí và nƣớc. Nhằm phục vụ công tác phòng chống thiên tai,
phát triển kinh tế - xã hội và đảm bảo an ninh, quốc phòng trong phạm vi cả nƣớc.
Hệ thống này giúp cho việc thu thập dữ liệu thuận tiện dễ dàng nhanh chóng.
Giải pháp sử dụng các công nghệ hiện đại nhƣ điện tử, viễn thông, điều khiển tự động
phù hợp với đặc thù của địa hình cần đo đạc các dữ liệu mội trƣờng nhằm tăng tính
hiệu quả quá trình thực hiện.
Hệ thống thu thập dữ liệu môi trƣờng từ xa là tập hợp các thiết bị phần cứng
(Client) và phần mềm (Server).
Phần cứng phải đáp ứng các yêu cầu thiết kế nhƣ sau:
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

13


 Phần cứng có khả năng đo đạc các thông số của môi trƣờng ở các vị trí khác
nhau.
 Có thế gửi các dữ liệu đã đo đạc tính toán về trung tâm (Sever).

 Đáp ứng đƣợc các yêu cầu về tốc độ truyền dữ liệu, giá thành, độ chính xác.

Figure 2:Mô hình tổng quan thiết các Modul phần cứng.

Để tƣơng thích với phần cứng đã thiết kế thì bên trung tâm phải xây dựng một
phần mềm đồng nhất để nhận đƣợc các dữ liệu mà phần cứng gửi về. Phần mềm cần
đáp ứng một số yêu cầu sau:
 Quản lý nhiều vị trí điểm đo khác nhau.
 Cập nhật đƣợc thông số dữ liệu đƣợc liên tục từ các điểm đo gửi về.
 Giao diện thân thiện, dễ dàng xử dụng,
 Thống kê, báo cáo theo thời gian và địa điểm từ các dữ liệu nhận đƣợc.
 Đảm bảo tính thống nhất, đồng bộ về dữ liệu đo đạc với Client.

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

14


Figure 3:Mô hình tổng quan thiết các Modul phần mềm

2.Vấn đề liên quan và phƣơng án lựa chọn
2.1 Thiết kế đầu cuối

Figure 4: Mô hình Server

Do đặc thù của mô hình thu thập dữ liệu là ở khoảng cách xa nên phƣơng thức
truyền dữ liệu tất yếu đƣợc sử dụng không dây.
Yêu cầu bên sever cần môt máy tính có kết nối với internet qua một model
ADSL tốc độ truyền dữ liệu có thế khoảng 1kb/s. Theo tính toán dữ liệu thì có thế
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính


15


truyền tối qua là dữ liệu của 22 cảm biến trong một làn truyền dữ liệu, thông tin của 22
cảm biến này chiếm 2+22x7 bytes = 157 bytes tốc độ 1kb/s là phù hợp, có thể dùng các
gói có tốc độ truyền dữ liệu cao hơn.
Máy tính cần một địa chỉ IP tĩnh để các thiết bị thu thập dữ liệu có thể gửi đến
đƣợc sever.
Dịch vụ IP tĩnh thì các nhà cung cấp mạng có thể cung cấp cho chúng ta, giá
thành cho dịch vụ này khoảng 500k đến 700k vnd trên một tháng, ngoài ra cũng có
dùng mạng ảo VPN để sử dụng IP tĩnh của sever của công ty đã sẵn có.
Máy tính sever không yêu cầu cao về cấu hình chỉ cần những máy tính cá khả
năng truy cập đƣợc mạng, nhƣng về phần cơ sở dữ liệu do việc thu thập dữ liệu là
thƣờng xuyên và liên tục nên khối lƣợng dữ liệu lƣu trữ lại là tƣơng đối lớn. Trung
bình khoảng 20s thì dữ liệu gủi về và có khoảng 10 cảm biến thì dữ liệu lƣu trữ khoảng
1k. Vậy trong 1 ngày dữ liệu lƣu trữ mất 4MB. 1 năm 1460MB = 1.426G.

2.2 Thiết kế một điểm thu thập

Figure 5: Mô hình 1 điểm đo

Tại một điểm thu thập dữ liệu thì ta có một số phƣơng án lựa chọn giải pháp về
thiết kế phần cứng
Giải pháp thứ 1: ta có thể mua sẵn một modul có sẵn các tính năng có theo yều
của mình. Ƣu điểm của phƣơng án này không phải làm phần cứng chỉ cần viết phần
mềm để hoạt động. Nhƣợc điểm: chi phí giá thành của sản phần sẽ lớn, sẽ có nhiều
phần ta không cần sử dụng trong modul này, đặc biệt ta không thể can thiệp sâu đƣợc
vào phần cứng.
Giải pháp thứ 2: sử dụng nhiều module nối ghép với nhau ở đây ta sử dụng 2

module vi điều khiển và module GPRS dùng mạng GSM.
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

16


Đối với module CU thì trên thị trƣờng có những kit chuyên dụng để làm việc
với các cảm biến nhƣ:dòng kit cho atmegaxx , dòng kit cho chip pic, dòng chip AVR


Figure 6: Kit Atmega16L

Figure 7: Kit Pic

Figure 8: Kit ARM9
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

17


Sử dụng các kit này có độ tin cậy cao hỗ trợ tốt. Nhứng với những kit này thì
chúng ta cũng không thế sử dụng hết các chức năng của kit gây ra việc lãng phí trong
việc sử dụng.
Đối với module GPRS trên thị trƣờng hiện nay cũng có nhiều hãng tung ra các
sản phẩm mới về các module truyền nhận GPRS nhƣ simcom , wavecom, chip simen,
freescale …

Figure 9: Kit SIM548

Figure 10: Wavecom Module


Figure 11: Kit Freescale

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

18


Giải pháp thứ 3: thiết kế từ đầu đƣa ra một module hoàn chỉnh chỉ sủ dụng phù
hợp cho hệ thống này. Giải pháp này là tối ƣu nhất hoàn chỉnh cho hệ thống nhƣng về
mặt công nghệ và khả năng thì không cho phép thực hiện.
Trong 3 phƣơng án đề ra thì chúng em lựa chọn giải pháp thứ 2 xây dựng một
phần cứng gồm hai module chính và vi điều khiển hoặc hơn và một module GPRS.
Module về vi điều khiển.

Tốc độ xử lý
Bộ nhớ

Thanh ghi
Cổng giao tiếp
Cổng ADC
USART

Atmega128L
16Mhz
128k (Flash)

Arm lpc2378
up to 72 MHz.
512 kB


Pic 16F877
20 MHz
Up to 8K x 14
words of Flash
Program Memory,
Địa chỉ, dữ liệu, Địa chỉ, dữ liệu, Địa chỉ, dữ liệu,
điều khiển
điều khiển
điều khiển
A, B, C, E, F, G
A,B,C,D,E
F(8 chân)
8
8
2
4
1
Table 1: Phƣơng án vi điều khiển

Ở đây lựa chọn vi điều khiển atmega128L có 8 chân ADC và có 2 cổng Com
cho phép giao tiếp với máy tính và có thể kết nối với một boad khác qua cổng Com.
Module GPRS:
Trong các hãng hỗ trợ module GPRS truyền dữ liệu Simcom , wavecom, chip
simen, freescale … chúng em lựa chọn module GPRS của Simcom giá thành vừa phải,
dễ dàng sử dụng giao tiếp với các vi điều khiển.
Để hai module trên hoạt động tốt và ổn định cần cung cấp một nguồn chuẩn cho
cả hai module trên. Tính đến cả hai phƣơng án sử dụng nguồn điện lƣới 220V, và sử
dụng pin phòng trƣờng hợp nếu nhƣ bị mất điện.


Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

19


CHƢƠNG 3: CƠ SỞ LÝ THUYẾT
1. Sơ lƣợc về GPRS
Dịch vụ gói vô tuyến gói chung GPRS (General Packet Radio Service) là một
công nghệ mới nhằm cung cấp những dịch vụ gói IP đầu cuối tới đầu cuối qua mạng
GSM, cho phép triển khai và cung cấp những ứng dụng internet vô tuyến cho một số
lƣợng lớn ngƣời sử dụng dịch vụ viễn thông di động.
GPRS đƣợc phát triển dựa trên nền tảng của hệ thống mạng GSM. Giải pháp
GPRS của Ericsson đƣợc thiết kế để đẩy nhanh việc triển khai GPRS mà vẫn giữ cho
chi phí đầu vào thấp. Các khối chức năng của mạng GSM hiện nay chỉ cần đƣợc nâng
cấp phần mềm, ngoại trừ BSC (Base Station Center) phải đƣợc nâng cấp phần cứng.
Hai nút mạng mới đƣợc giới thiệu, đó là SGSN (Serving GPRS Support Node) và
GGSN (Gateway GPRS Support Node) nhằm bổ sung chức năng chuyển mạch gói bên
cạnh chức năng chuyển mạch mạch của mạng.

Figure 12: Cấu trúc GPRS đƣợc phát triển dựa trên mạng GSM

SGSN có nhiệm vụ tạo tuyến và quản lí địa chỉ IP. SGSN cùng với các đầu cuối
GPRS hình thành các kênh truyền logic cho phép việc truyền nhận các gói IP.
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

20


GGSN đóng vai trò kết nối các đầu cuối GPRS trong mạng đến các ISP
(Internet Service Provider) bên ngoài, hoặc kết nối giữa các mạng GPRS với nhau.

Các SGSN và GGSN liên kết với nhau và tạo thành một mạng IP xƣơng sống
làm nền tảng cho dịch vụ GPRS.
Một số đặc điểm của GPRS:
 Tốc độ: GPRS sử dụng phƣơng thức chuyển mạch gói. Tốc độ kết nối cao
hơn, có thể đạt tới khoảng 56-118kbps, so với mạng GSM truyền thống chỉ
là 9,6kbps. Bằng việc kết hợp các khe thời gian chuẩn GSM, tốc độ theo lý
thuyết có thể đạt tới 171,2kbps. Tuy nhiên, tốc độ 20-50kbps là khả thi hơn
trong thực tế
 Kết nối liên tục: GPRS là dịch vụ kết nối liên tục, mà không cần phải quay
số. Đây không phải là một tính năng duy nhất có ở GPRS, nhƣng sẽ không
có trở ngại nào để nó trở thành tính năng then chốt khi chuyển tiếp lên 3G.
Nó giúp cho các thiết bị tiếp nhận các dịch vụ một cách tức thời
 Các ứng dụng giá trị gia tăng mới và tốt hơn: Kết nối truyền dữ liệu tốc độ
cao và liên tục cho phép các ứng dụng internet và các dịch vụ nhƣ hội thoại
hình có thể đƣợc thực hiện trên các thiết bị di động hay chuyển tới máy PC.
 Chi phí đầu tƣ và vận hành: Các nhà cung cấp dịch vụ mạng di động không
cần phải bắt đầu từ vạch xuất phát để có thể triển khai GPRS. GPRS đƣợc
nâng cấp từ mạng GSM đã có.
 Cƣớc phí dịch vụ truyền tải dữ liệu bằng GPRS thƣờng đƣợc tính trên lƣu
lƣợng truyền tải, trong khi đó phƣơng pháp truyền thống sử dụng chuyển
mạch kênh đƣợc tính dựa trên thời gian kết nối, không phụ thuộc vào việc
ngƣời sử dụng đang truyền tải dữ liệu hay ở trạng thái nghỉ.

1.1 Mô hình hệ thống thu thập dữ liệu qua mạng GPRS
Với tính năng kết nối với các hệ thống mạng bên ngoài thông qua GGSN, GPRS
cho phép thiết lập một đƣờng truyền từ đầu cuối thuê bao mạng GSM sử dụng dịch vụ
GPRS đến một đầu cuối của các hệ thống mạng khác, qua đó cho phép thiết kế một hệ
thống thu thập dữ liệu rất linh động.
Trong các ứng dụng thông thƣờng, việc phân tích, lƣu trữ, vận hành dựa trên dữ
liệu thu thập đƣợc từ các đầu cuối mạng GPRS sẽ đƣợc thực hiện bởi một máy tính, vì

đây là các thao tác phức tạp và đòi hỏi nhiều tài nguyên. Do đó việc thiết lập một liên
kết giữa đầu cuối mạng GPRS và máy tính là cần thiết. Với lợi thế về hệ thống cơ sở

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

21


hạ tầng rộng khắp và khả năng truyền nhận dữ liệu tốc độ cao, đáng tin cậy, phƣơng án
tối ƣu là liên kết thông qua Internet.
Dữ liệu sẽ đƣợc trao đổi giữa đầu cuối thuê bao GPRS và máy tính thông qua
các gói IP, và dựa trên các protocol TCP/UDP. Tùy theo khả năng hỗ trợ của đầu cuối
thuê bao GPRS có thể sử dụng các protocol ở các lớp ứng dụng cao hơn.
Với các mô hình đơn giản, nhu cầu về xử lý dữ liệu không cao, có thể lựa chọn
các phƣơng án đơn giản hơn nhƣ:
 Sử dụng dịch vụ SMS: không cần thông qua GPRS.
 Truyền nhận dữ liệu giữa các đầu cuối GPRS: phƣơng án này hoàn toàn có
thể thực hiện đƣợc, tuy nhiên tốc độ dữ liệu khá thấp, và làm tăng chi phí
dịch vụ.
Với đầu cuối mạng GPRS, có nhiều sản phẩm phù hợp với yêu cầu của hệ
thống. Điển hình là các modem GSM có hỗ trợ GPRS. Thiết bị này đƣợc cung cấp bởi
nhiều hãng, nhƣ Sony Ericsson, Nokia, Wavecom, SIMCOM, … Sản phẩm của
SIMCOM (SIM300, SIM300CZ, …) đƣợc lựa chọn do các tính năng sau:
 Hỗ trợ GPRS.
 Hỗ trợ khả năng truyền nhận dữ liệu TCP/UDP.
 Giá thành thấp.
 Thiết kế phần cứng đơn giản.
 Đƣợc điều khiển bằng tập lệnh AT, cho phép điều khiển dễ dàng.

2. Giao thức TCP/IP

2.1 Tổng quát
Giao thức TCP/IP đƣợc phát triển từ mạng ARPANET và Internet và đƣợc dùng
nhƣ giao thức mạng và vận chuyển trên mạng Internet. TCP (Transmission Control
Protocol) là giao thức thuộc tầng vận chuyển và IP (Internet Protocol) là giao thức
thuộc tầng mạng của mô hình OSI. Họ giao thức TCP/IP hiện nay là giao thức đƣợc sử
dụng rộng rãi nhất để liên kết các máy tính và các mạng.
Hiện nay các máy tính của hầu hết các mạng có thể sử dụng giao thức TCP/IP
để liên kết với nhau thông qua nhiều hệ thống mạng với kỹ thuật khác nhau. Giao thức
TCP/IP thực chất là một họ giao thức cho phép các hệ thống mạng cùng làm việc với
nhau thông qua việc cung cấp phƣơng tiện truyền thông liên mạng.

2.2 Giao thức IP
Nhiệm vụ chính của giao thức IP là cung cấp khả năng kết nối các mạng con
thành liên kết mạng để truyền dữ liệu, vai trò của IP là vai trò của giao thức tầng mạng
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

22


trong mô hình OSI. Giao thức IP là một giao thức kiểu không liên kết (connectionlees)
có nghĩa là không cần có giai đoạn thiết lập liên kết trƣớc khi truyền dữ liệu.
Sơ đồ địa chỉ hóa để định danh các trạm (host) trong liên mạng đƣợc gọi là địa
chỉ IP 32 bits (32 bit IP address). Mỗi giao diện trong 1 máy có hỗ trợ giao thức IP đều
phải đƣợc gán 1 địa chỉ IP (một máy tính có thể gắn với nhiều mạng do vậy có thể có
nhiều địa chỉ IP). Địa chỉ IP gồm 2 phần: địa chỉ mạng (netid) và địa chỉ máy (hostid).
Mỗi địa chỉ IP có độ dài 32 bits đƣợc tách thành 4 vùng (mỗi vùng 1 byte), có thể biểu
thị dƣới dạng thập phân, bát phân, thập lục phân hay nhị phân. Cách viết phổ biến nhất
là dùng ký pháp thập phân có dấu chấm (dotted decimal notation) để tách các vùng.
Mục đích của địa chỉ IP là để định danh duy nhất cho một máy tính bất kỳ trên liên
mạng.

Ở đây ta xét cấu trúc của các lớp địa chỉ có thể gán đƣợc là lớp A, lớp B, lớp C.
Cấu trúc của các địa chỉ IP nhƣ sau:
 Mạng lớp A: địa chỉ mạng (netid) là 1 Byte và địa chỉ host (hostid) là 3 byte.
 Mạng lớp B: địa chỉ mạng (netid) là 2 Byte và địa chỉ host (hostid) là 2 byte.
 Mạng lớp C: địa chỉ mạng (netid) là 3 Byte và địa chỉ host (hostid) là 1 byte.
Lớp A cho phép định danh tới 126 mạng, với tối đa 16 triệu host trên mỗi mạng.
Lớp này đƣợc dùng cho các mạng có số trạm cực lớn.
Lớp B cho phép định danh tới 16384 mạng, với tối đa 65534 host trên mỗi mạng.
Lớp C cho phép định danh tới 2 triệu mạng, với tối đa 254 host trên mỗi mạng. Lớp
này đƣợc dùng cho các mạng có ít trạm.

Figure 13: Cấu trúc các lớp địa chỉ IP

Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

23


Đơn vị dữ liệu dùng trong IP đƣợc gọi là gói tin (datagram), có khuôn dạng

Figure 14: Dạng thức của gói tin IP

2.3 Giao thức điều khiển truyền dữ liệu TCP
TCP là một giao thức "có liên kết" (connection - oriented), nghĩa là cần phải
thiết lập liên kết giữa hai thực thể TCP trƣớc khi chúng trao đổi dữ liệu với nhau. Một
tiến trình ứng dụng trong một máy tính truy nhập vào các dịch vụ của giao thức TCP
thông qua một cổng (port) của TCP. Số hiệu cổng TCP đƣợc thể hiện bởi 2 bytes.

Figure 15: Cổng truy nhập dịch vụ TCP


Một cổng TCP kết hợp với địa chỉ IP tạo thành một đầu nối TCP/IP (socket) duy
nhất trong liên mạng. Dịch vụ TCP đƣợc cung cấp nhờ một liên kết logic giữa một cặp
đầu nối TCP/IP. Một đầu nối TCP/IP có thể tham gia nhiều liên kết với các đầu nối
TCP/IP ở xa khác nhau. Trƣớc khi truyền dữ liệu giữa 2 trạm cần phải thiết lập một
liên kết TCP giữa chúng và khi không còn nhu cầu truyền dữ liệu thì liên kết đó sẽ
đƣợc giải phóng.
Sinh viên thực hiện: Bùi Đức Kiên - SHSV: 2006C168 - Khóa: 51 - Lớp: Kĩ Thuật Máy Tính

24


×