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

Xây dựng hệ thống nhắn tin nội bộ dựa trên các thiết bị thông tin không dây

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 (1.32 MB, 84 trang )



ĐẠI HỌC QUỐC GIA HÀ NỘI
KHOA CÔNG NGHỆ





Nguyễn Hoàng Hải














LUẬN VĂN THẠC SĨ


















Hà Nội - 2004
XÂY DỰNG HỆ THỐNG NHẮN TIN NỘI BỘ DỰA TRÊN CÁC
THIẾT BỊ THÔNG TIN KHÔNG DÂY



ĐẠI HỌC QUỐC GIA HÀ NỘI
KHOA CÔNG NGHỆ





Nguyễn Hoàng Hải










Chuyên ngành: Kỹ thuật vô tuyến điện tử và thông tin liên lạc

Mã số: 2.07.00


LUẬN VĂN THẠC SĨ





NGƯỜI HƯỚNG DẪN KHOA HỌC

TS. Ngô Diên Tập









Hà Nội - 2004
XÂY DỰNG HỆ THỐNG NHẮN TIN NỘI BỘ DỰA TRÊN CÁC
THIẾT BỊ THÔNG TIN KHÔNG DÂY


- 1 -
MỤC LỤC
Trang
DANH MỤC CÁC CHỮ VIẾT TẮT
3
MỞ ĐẦU

4
Chương
1
Cổng nối tiếp RS-232 và kết nối Môđem
6
1.1
Cổng nối tiếp RS-232
6
1.2
Môđem
14
1.3
Truyền thông giữa máy tính và Môđem
15
1.4
Môđem GSM Wavecom WMO2-G900
18
Chương
2
Lập trình giao tiếp với cổng RS-232
25
2.1

Truy nhập RS-232 trong Visual Basic
25
2.2
Truyền thông qua RS-232 với MSComm trong Visual Basic
25
Chương
3
Hệ thống GSM và dịch vụ nhắn tin ngắn
35
3.1
Tổng quan về dịch vụ nhắn tin ngắn trong thông tin di động
35
3.2
Giao thức SMPP và các ứng dụng nhắn tin ngắn
38
Chương
4
Các chỉ tiêu và thiết kế hệ thống
40
4.1
Các yêu cầu hệ thống
40
4.2
Thiết kế phần cứng
41
4.3
Thiết kế phần phần mềm
42
4.4
Các chỉ tiêu

43
Chương
5
Các kỹ thuật xử lý
44
5.1
Kết nối với môđem
44
5.2
Phát hiện ký tự đến bộ đệm nhận của máy tính và phân loại các
đáp ứng từ môđem
45
5.3
Phát hiện tin nhắn mới
47
5.4
Đọc tin nhắn
47
5.5
Gửi tin nhắn
50
5.6
Điều khiển luồng lệnh
51
5.7
Xác định lệnh và trả lời dịch vụ
51
- 2 -
5.8
Tính mở của dịch vụ

54
5.9
Chat
56
5.10
Thống kê
58
5.11
LOG File
60
Chương
6
Hoạt động của hệ thống và tính năng đạt được
62
6.1
Hoạt động của hệ thống
62
6.2
Môđun SMSComm
63
6.3
Môđun Admin
64
6.4
Môđun CHAT
66
6.5
Các dịch vụ cung cấp
67
6.6

Dịch vụ trợ giúp help
67
6.7
Dịch vụ CHAT
68
6.8
Tính năng paging hoặc tính năng operator sms
68
6.9
Dung lượng của hệ thống
68
NHỮNG KẾT QUẢ ĐẠT ĐƯỢC VÀ BÀN LUẬN
70
Tài liệu tham khảo
74
Phụ lục 1

75



Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 3 -
DANH MỤC CÁC CHỮ VIẾT TẮT
3G
Third Generation
BSC
Base Station Controller
BSS
Base Station Sub-system

CD
Carrier Detect
CTS
Clear To Send
DSR
Data Set Ready
DTR
Data Terminal Ready
EDGE
Enhanced Data rates for GSM Evolution
ESME
External Short Message Entities
ETSI
European Telecommunications Standards Institute
GPRS
General Packet Radio Service
GSM
Global System for Mobile communication
HLR
Home Location Register
ITU
International Telecommunication Union
MSC
Mobile Switching Center
PC
Personal Computer
RI
Ring Indication
RTS
Request To Send

SMPP
Short Massage Peer to Peer Protocol
SMS
Short Message Service
SMS MO
Mobile Originated Short Message
SMS MT
Mobile Terminated Short Message
SMSC
Short Message Center
SS7
Signalling System No.7
VLR
Visitor Location Register


Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 4 -
MỞ ĐẦU

Hiện nay nhu cầu phát triển các hệ thống ứng dụng thông tin không dây ngày
càng tăng, đặc biệt là đối với các đơn vị vừa và nhỏ, nơi mà các hệ thông tin tiện
lợi, dễ triển khai, chi phí thấp đang trở thành một nhu cầu bức thiết. Nhu cầu giao
tiếp máy-máy thay vì người-người đang ngày càng trở nên phổ biến nhằm giảm tải
cho con người, đặc biệt là trong các lĩnh vực ngân hàng, bán hàng hoặc giải đáp
thông tin (danh bạ, lịch bay, đặt chỗ trong hàng không chẳng hạn)
Cùng với sự phát triển của thông tin di động, đặc biệt là với GPRS, EDGE
hoặc 3G, con người đã và đang phát triển rất nhiều các ứng dụng dựa trên nền tảng
dữ liệu chuyển mạch gói trong thông tin di động. Tất cả những gì chúng ta có thể
làm với máy tính và internet hôm nay đã và đang được đưa vào tích hợp trong các

máy di động đầu cuối. Tuy nhiên, tại thời điểm hiện nay, GPRS đã không chứng
minh được tính ưu việt của nó và rất nhiều nhà cung cấp dịch vụ thông tin di động
đã và đang nói “không” với GPRS vì lý do đầu tư. Công nghệ EDGE và 3G vẫn còn
đang trong giai đoạn thử nghiệm và khó có khả năng trở nên phổ biến rộng rãi trước
năm 2007.
Dịch vụ nhắn tin ngắn (SMS), với tính ưu việt của mình về sự đơn giản trong
sử dụng và hiệu quả cao trong đầu tư, đã, đang và sẽ luôn là dịch vụ được chú trọng
đối với bất cứ nhà cung cấp dịch vụ thông tin di động nào. Rất nhiều các ứng dụng
trên nền tảng nhắn tin ngắn đã và đang được phát triển bởi các nhà khai thác, chẳng
hạn như dịch vụ sms-email, sms fax, logo, ring tones Tuy nhiên, đối với các cá
nhân, doanh nghiệp hay cơ quan nhỏ, việc phát triển các ứng dụng của riêng mình,
theo nhu cầu của mình độc lập với các ứng dụng được cung cấp bởi nhà khai thác,
lại là một vấn đề hoàn toàn không dễ dàng.
Một hệ thống thông tin nội bộ SMSComm xây dựng trên cơ sở nhắn tin ngắn
thông qua một môđem GSM ghép nối với máy tính là hoàn toàn có thể thực hiện
được đối với bất kỳ một cá nhân hay doanh nghiệp nào có nhu cầu mà không đòi
hỏi đầu tư quá tốn kém hoặc bất kỳ một sự cho phép nào từ phía nhà cung cấp dịch
vụ thông tin di động.
Với công nghệ hiện nay, bất kỳ máy di động đầu cuối GSM nào, cũng đều
được tích hợp với một GSM môđem, vì vậy việc tìm ra một môđem GSM là một

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 5 -
việc rất dễ dàng. Xa hơn nữa, dịch vụ nhắn tin ngắn đã trở nên rất quen thuộc đối
với tất cả mọi người và đã đang là một dịch vụ được ưa thích và sử dụng nhiều nhất
trong thông tin di động. Vì vậy, chúng tôi tin rằng, hệ thống thông tin nội bộ
SMSComm được xây dựng trong luận văn này, ngoài ý nghĩa học tập, nghiên cứu,
nó còn mang tính ứng dụng rất cao nhờ sự gần gũi của các ứng dụng mà nó mang
lại trong cuộc sống thực tiễn.
Hệ thống được thiết kế phải thoả mãn các yêu cầu sau đây:

1. Phần cứng đơn giản, quen thuộc với người dùng, dễ tìm và giá thành
thấp.
2. Có khả năng đáp ứng các tính năng sau:
Các máy điện thoại di động ở bên ngoài có thể truy cập các dịch vụ
thông qua việc nhắn tin ngắn bằng các lệnh dịch vụ.
Có khả năng mở rộng loại hình dịch vụ theo nhu cầu của người dùng.
Đây là yêu cầu rất quan trọng nhằm tạo tính mở cho ứng dụng của hệ
thống giúp cho người khai thác có thể dễ dàng tạo ra các ứng dụng riêng
của đơn vị.
Cho phép các máy tính nối mạng có khả năng gửi tin nhắn đến máy di
động và ngược lại (Chat giữa điện thoại di động và máy tính).
Có khả năng ghi lại các dữ liệu thống kê theo giờ, nhằm giúp người
quản lý hệ thống biết được hệ thống đang được sử dụng có hiệu quả
không hoặc hệ thống có khả năng đáp ứng nhu cầu không (về mặt dung
lượng).
Có khả năng ghi lại các sự cố, nếu có, nhằm giúp người quản lý phát
hiện và xử lý.
Sử dụng nhắn tin ngắn để phát triển các mục đích ứng dụng còn cho thấy
rằng sự gắn kết giữa công nghệ điện tử, công nghệ viễn thông và công nghệ thông
tin ngày càng trở nên chặt chẽ và chúng đã, đang và sẽ là những bộ phận không thể
tách rời trong đời sống hiện đại.
Xin bày tỏ lòng biết ơn sâu sắc đến thầy: Tiến sỹ Ngô Diên Tập, giảng viên
Khoa Công nghệ - Đại học Quốc gia Hà nội, người đã tận tình hướng dẫn và đưa ra
các nhận xét vô cùng quí báu trong quá trình thực hiện luận văn. Chân thành cảm ơn

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 6 -
các bạn đồng nghiệp trong văn phòng Comvik, công ty VMS đã tạo điều kiện giúp
đỡ hoàn thành bản luận văn này.


Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 7 -
1.Chƣơng 1
1.CỔNG NỐI TIẾP RS-232 VÀ KẾT NỐI MÔĐEM
Nội dung của luận văn này liên quan mật thiết đến việc lập trình ghép nối
điều khiển môđem thông qua cổng truyền thông nối tiếp RS-232, vì vậy Chuơng 1
của luận được giành để giới thiệu những hiểu biết nhất định về cổng nối tiếp RS-
232 cũng như ghép nối môđem để tiện tham khảo.
1.1 CỔNG NỐI TIẾP RS-232
1.1.1 ĐẶC TRƯNG VẬT LÝ
Các máy tính PC được sản xuất gần đây đều được trong bị với ít nhất một
cổng nối tiếp theo tiêu chuẩn RS-232. Các cổng RS-232 thường được dùng cho các
mục đích ghép nối khác nhau như môđem, máy in hoặc thiết bị đo lường. Cổng RS-
232, trong rất nhiều các ứng dụng viễn thông khác, lại được sử dụng như một giao
tiếp để quản lý và vận hành thiết bị.
Việc sử dụng giao diện nối tiếp mang lại nhiều ưu điểm, ngay cả đối với
những mạch ghép nối đơn giản, lý do là:
Khả năng chống nhiễu của các cổng nối tiếp cao hơn so với các cổng
máy in.
Thiết bị ngoại vi có thể tháo lắp ngay cả khi máy tính đang được cấp điện.
Các mạch điện đơn giản có thể nhận được điện áp nguồn nuôi qua cổng
nối tiếp.
Thông thường thì việc sử dụng cổng nối tiếp đòi hỏi chi phí nhiều hơn vì cần
biến đổi dữ liệu được truyền theo kiểu nối tiếp thành dữ liệu song song. Với các bài
toán ghép nối không phức tạp, trong đó chỉ sử dụng một vài đường dẫn vào ra thì ta
có thể sử dụng trực tiếp các đường dẫn phụ trợ có liên quan của giao diện. Tổng
cộng có đến hai đường dẫn lối ra và bốn đường dẫn lối vào, có thể được trao đổi
trực tiếp bằng các lệnh đơn giản.
Sơ đồ chân của cổng nối tiếp RS-232 được mô tả trên hình 1-1.
Hình 1-1: Sơ đồ chân cổng nối tiếp RS-232


Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 8 -
Bảng 1-1 dưới đây chỉ ra tất cả các đường dẫn được nối trên đầu nối 9 chân.
Chân
(9chân)
Lối
vào/ra
Tên gọi
Chức năng
-
-
FG, Frame
Ground
Đất vỏ máy
3
<=
TxD, Transmit
Data
Truyền dữ liệu.
2
=>
RxD, Receive
Data
Nhận dữ liệu.
7
<=
RTS, Request to
Send
Yêu cầu gửi: bộ truyền đặt

đường này lên mức hoạt
động khi sẵn sàng truyền dữ
liệu.
8
=>
CTS, Clear to
Send
Xoá để gửi: bộ nhận đặt
đường này lên mức hoạt
động để thông báo cho bộ
truyền là nó sẵn sàng nhận
dữ liệu.
6
=>
DSR, Data Set
Ready
Dữ liệu sẵn sàng: tính hoạt
động giống với CTS nhưng
được kích hoạt bởi bộ truyền
khi nó sẵn sàng nhận dữ
liệu.
5

SG, Signal
Ground
Đất của tín hiệu.
1
=>
DCD, Data
Carrier Detect

Phát hiện tín hiệu mang dữ
liệu.
4
<=
DTR, Data
Terminal Ready
Đầu cuối sẵn sàng: tính hoạt
động giống như RTS nhưng
được kích hoạt bởi bộ nhận
khi muốn truyền dữ liệu.
9
=>
RI, Ring Indicate
Báo chuông, cho biết là bộ
nhận đang nhận tín hiệu

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 9 -
rung chuông.
Bảng 1-1: Sơ đồ chân cổng nối tiếp RS-232
Việc trao đổi dữ liệu qua cổng nối tiếp trong các trường hợp thông thường
đều qua đường dẫn truyền nối tiếp TxD và đường dẫn nhận nối tiếp RxD. Tất cả các
đường dẫn còn lại có chức năng phụ trợ khi thiết lập và điều khiển phiên truyền dữ
liệu. Các đường dẫn này được gọi là các đường dẫn bắt tay bởi vì chúng được sử
dụng theo phương pháp “ký nhận” giữa các thiết bị. Ưu điểm đặc biệt của các
đường dẫn bắt tay là trạng thái của chúng có thể đặt hoặc điều khiển trực tiếp.
Đặc trưng điện của các đường dẫn lối vào và lối ra đã được chỉ rõ trong tiêu
chuẩn RS-232. Trạng thái LOW ứng với mức điện áp +12V còn trạng thái HIGH
ứng với mức điện áp -12V. Tất cả các lối ra đều có đặc tính chống chập mạch và có
thể cung cấp dòng điện từ 10mA đến 20mA. Với các lối ra này, các LED đấu vào

hoặc được các tầng đệm điều khiển trực tiếp. Giữa hai điện áp có một khoảng thời
gian trễ, nghĩa là trạng thái được đọc sẽ thay đổi, khi điện áp lối vào nằm ở ngoài
vùng này.
Thông thường thì giao diện nối tiếp được điều khiển bằng mức tín hiệu hai
cực với độ lớn bằng +12V và -12V. Do các mạch lối vào thông thường trong máy
tính PC nhận dạng một mức điện áp dưới 1V như là mức LOW, nên cổng nối tiếp
cũng được phép làm việc với mức TTL (0V/5V). Một số máy tính PC, phần lớn là
máy tính xách tay làm việc với ngưỡng chuyển mạch từ -3V đến +3V và vì thế có
thể chấp nhận các tín hiệu lối vào hai cực.
[1]

1.1.2 KHUÔN MẪU KHUNG TRUYỀN
Việc truyền dữ liệu qua cổng RS-232 được thực hiện theo kiểu không đồng
bộ, một khung dữ liệu được bắt đầu bằng bít bắt đầu và kết thúc với bit dừng. Như
chỉ ra trên hình 1-2.

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 10 -
Hình 1-2: Truyền theo kiểu không đồng bộ

Bộ truyền bắt đầu gửi một bít bắt đầu (start) để thông báo cho bộ nhận biết
một ký tự sẽ được gửi tới trong lần truyền bit tiếp sau. Bít bắt đầu này luôn luôn ở
mức 0. Tiếp theo 5, 6 hoặc 7 bit dữ liệu được gửi dưới dạng mã ASCII, rồi đến một
bit chẵn lẻ và cuối cùng là 1 hoặc 1,5 hay 2 bit dừng.
[2]

Bít chẵn lẻ
Thực chất của quá trình kiểm tra lỗi khi truyền là bổ xung thêm dữ liệu vào
dòng dữ liệu được truyền để tìm ra hoặc sửa chữa lỗi trong quá trình truyền. Chuẩn
RS-232 sử dụng một kỹ thuật đơn giản được gọi là „chẵn lẻ‟ để có khả năng phát

hiện được lỗi.
Một bít chẵn lẻ được bổ xung vào dữ liệu được truyền để cho thấy số các bít
số “1” (các bít có giá trị bằng 1) được gửi trong một khung truyền là chẵn (chẵn lẻ
chẵn) hay là lẻ (chẵn lẻ lẻ). Đây là một phương pháp đơn giản trong mã hoá lỗi và
chỉ cần đến một cổng XOR để tạo ra bit chẵn lẻ. Bít chẵn lẻ được bổ xung vào dữ
liệu được truyền bằng cách chèn nó vào một vị trí chính xác của bít trong thanh ghi
dịch sau khi đã „đếm‟ xem có bao nhiêu số „1‟ được gửi.
Một bít chẵn lẻ đơn chỉ có thể tìm ra một số lẻ các lỗi, chẳng hạn 1, 3, 5,
Nếu như có một số chẵn các bít bị mắc lỗi thì sẽ không thể phát hiện được ra lỗi.
[2]

Tốc độ baud
Một trong các tham số chính đặc trưng cho quá trình truyền dữ liệu qua cổng
nối tiếp RS-232 chính là tốc độ truyền và nhận dữ liệu. Điều đáng chú ý là cả bộ
nhận và truyền đều phải cùng hoạt động ở xấp xỉ tốc độ đó.
Trong khuôn mẫu của khung truyền dị bộ (không đồng bộ), các bít bắt đầu,
bít dừng và bít chẵn lẻ được bổ xung vào 7 bít dành cho ký tự mã ASCII. Như vậy

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 11 -
là phải cần tổng cộng là 10 bít để truyền một ký tự đơn. Với 2 bít dừng thì phải cần
đến 11 bít. Nếu giả thiết là có 10 ký tự gửi đi mỗi giây và nếu như có 11 bít đã sử
dụng cho mỗi ký tự thì tốc độ truyền thông tin là 110 bit mỗi giây (bps).
Bảng 1-2 minh hoạ mối quan hệ giữa tốc độ truyền theo bit và số các ký
được truyền đi trong mỗi giây với giả thiết là 10 bít được truyền cho mỗi ký tự. Tốc
độ bít được đo theo số các bít được truyền đi trong mỗi giây (bps).
Ngoài tốc độ bít, còn có một thuật ngữ khác được sử dụng để mô tả tốc độ
truyền là tốc độ baud. Tốc độ bít phản ánh tốc độ thực tế mà các bít được truyền,
trong khi mà tốc độ baud liên quan với tốc độ mà các phần tử mã hoá dữ liệu được
sử dụng để diễn tả các bít được truyền. Bởi vì một phần tử báo hiệu sự mã hoá một

bít, nên khi đó hai tốc độ là đồng nhất. Chỉ trong các môđem có thêm quá trình biến
đổi nên tốc độ bit mới khác tốc độ baud.
Tốc độ (bps)
Ký tự/s
110
11
300
30
600
60
1.200
120
2.400
240
4.800
480
9.600
960
19.200
1.920
56.600
5.660

Bảng 1-2: Tốc độ bps và số các ký tự được truyền trong mỗi giây.

Phân chia khoảng thời gian trên luồng bít
Truyền thông dị bộ là kiểu truyền thông với các bít bắt đầu/dừng và cả bộ
truyền lẫn bộ nhận phải được thiết lập với cùng khoảng thời gian truyền một bít hay
nói ngắn gọn hơn là khoảng thời gian bít. Một bít bắt đầu xác định vị trí bắt đầu
cuộc truyền và luôn luôn có giá trị logic thấp. Tiếp theo, bít có ý nghĩa nhỏ nhất


Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 12 -
được gửi đi, rồi đến phần còn lại của các bít ký tự mã ASCII 7 bít. Sau đấy bít chẵn
lẻ được gửi đi và kế tiếp theo là bít dừng. Khoảng thời gian thực tế để truyền mỗi
bít liên quan đến tốc độ baud và có thể được qui định bằng cách sử dụng công thức
sau:
Khoảng thời gian của mỗi bít = 1/Tốc độ baud
[2]

1.1.3 TRUYỀN THÔNG GIỮA HAI NÚT
RS-232 đã trở thành một chuẩn nhưng không phải tất cả các nhà sản xuất đều
trung thành với nó. Một số nhà sản xuất tuân thủ đầy đủ các qui định của chuẩn
RS-232, trong khi một số khác chỉ thực hiện một phần. Nguyên nhân là không phải
tất cả mọi thiết bị đều cần đến toàn bộ khả năng hoạt đông của cổng nối tiếp
RS-232. Chẳng hạn môđem cần nhiều đường dẫn điều khiển hơn là chuột khi được
đấu vào cổng nối tiếp.
Tốc độ mà dữ liệu được truyền và tốc độ mà bộ truyền và bộ nhận có thể
truyền/nhận dữ liệu sẽ quyết định có phải sử dụng đến kỹ thuật bắt tay hay không.
Bắt tay
Việc truyền dữ liệu có thể tiến hành theo ba cách: không có bắt tay
(handshaking), có bắt tay phần cứng hoặc bắt tay phần mềm. Nếu như không sử
dụng kỹ thuật bắt tay thì bộ nhận phải có khả năng đọc các ký tự nhận được trước
khi bộ truyền gửi đến một ký tự khác. Bộ nhận có thể đệm ký tự nhận được và cất
giữ ký tự này trong một vị trí ô nhớ riêng trước khi nó được đọc. Vị trí ô nhớ này
được gọi là bộ đệm nhận. Đáng chú ý là bộ nhận này chỉ có thể lưu trữ một ký tự
đơn. Nếu như nó không được làm rỗng trước khi một ký tự khác được nhận thì bất
kỳ ký tự nào trước đó cũng bị nghi đè lên. Một thí dụ về hiện tượng này được minh

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS

- 13 -
họa trong hình 1-3.
Hình 1-3: Quá trình truyền và nhận các ký tự
Trong trường hợp này bộ nhận đọc xong xuôi hai ký tự đầu tiên từ bộ đệm
nhận, nhưng nó chưa đọc ký tự thứ ba bởi vì ký tự thứ tư được truyền đã ghi đè lên
nó trong bộ đệm nhận. Nếu như điều kiện này xảy ra thì một vài dạng bắt tay phải
được sử dụng để làm dừng bộ truyền gửi ký tự trước khi bộ nhận có đủ thời gian để
xử lý các ký tự đã nhận được.
[2]

Truyền thông đơn giản không có bắt tay
Trong cách truyền thông này, người ta giả thiết rằng bộ nhận có thể đọc dữ
liệu nhận được từ bộ đệm nhận trước khi các ký tự khác tới bộ đệm nhận. Dữ liệu
được gửi từ vị trí kết nối với chân TxD của bộ truyền và được nhận ở vị trí nối với
chân RxD của bộ nhận. Hình 1-4 chỉ ra cách kết nối giữa các nút.
[2]

Hình 1-4: Kết nối ở cổng RS-232 không có phần cứng bắt tay

Bắt tay bằng phần mềm
Có hai ký tự mã ASCII cho phép bắt đầu và làm dừng các cuộc truyền dữ
liệu qua cổng nối tiếp đó là: X-ON (^S, Ctrl-S hoặc mã ASCII 11) và X-OFF (^Q,
Ctrl-Q hoặc mã ASCII 13)


TD
RD
RTS
CTS
DTR

DSR
GND
TD
RD
RTS
CTS
DTR
DSR
GND

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 14 -
Khi bộ truyền nhận được ký tự X-OFF nó làm ngừng quá trình truyền thông
cho đến khi ký tự X-ON được gửi. Kiểu bắt tay này thường được sử dụng khi bộ
truyền và bộ nhận có thể xử lý dữ liệu tương đối nhanh chóng. Thông thường, bộ
nhận cũng sẽ có một bộ đệm lớn dùng cho các ký tự gửi tới. Khi bộ đệm này đầy,
nó truyền mã ký tự X-OFF. Sau khi nó đọc từ bộ đệm, ký tự mã X-ON sẽ được
truyền (xem hình 1-5).
[2]


Hình 1-5: Bắt tay phần mềm sử dụng X-ON/X-OFF
Bắt tay phần cứng
Bắt tay phần cứng làm dừng các ký tự đến bộ đệm nhận để khỏi bị ghi đè
lên. Các đường dẫn được sử dụng đều được kích hoạt ở mức cao. Hình 1-6 cho thấy
dữ liệu được truyền giữa bộ truyền và bộ nhận diễn ra như thế nào.

Hình 1-6: Các đường dẫn bắt tay được sử dụng khi truyền dữ liệu



X-ON
Bé truyÒn
Bé nhËn
TruyÒn
d÷ liÖu
TruyÒn
d÷ liÖu
X-OFF


Kh«ng
S½n sµng nhËn?

CTS
RTS
RTS

Nót nhËn


RD
RTS
Nót truyÒn

CTS
CTS

TD
TruyÒn d÷ liÖu


Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 15 -
Khi một nút muốn truyền dữ liệu nó ấn định đường dẫn RTS ở trạng thái
hoạt động, nghĩa là ở mức cao, rồi giám sát đường dẫn CTS cho đến khi đường dẫn
này chuyển sang trạng thái hoạt động, nghĩa là cũng ở mức cao. Nếu đường dẫn
CTS ở bộ truyền giữ nguyên trạng thái không kích hoạt thì nghĩa là bộ nhận đang
bận và hiện tại không thể nhận dữ liệu. Khi bộ nhận đọc từ bộ đệm nhận, đường dẫn
RTS sẽ tự động chuyển sang trạng thái kích hoạt qua đó báo cho bộ truyền là nó
đang sẵn sàng nhận ký tự.
Việc nhận dữ liệu cũng diễn ra tương tự với việc truyền dữ liệu nhưng các
đường dẫn DSR và DTR được sử dụng chứ không phải là RTS và CTS. Khi DCE
muốn truyền dữ liệu đến DTE thì đầu vào DSR của bộ nhận sẽ chuyển sang trạng
thái kích hoạt. Nếu bộ nhận không thể nhận ký tự, nó đặt đường dẫn DTR ở trạng
thái không hoạt động. Khi đã sẵn sàng để nhận, nó sẽ đặt DTR sang trạng thái hoạt
động. Đường dẫn DTR sẽ giữ nguyên trạng thái không kích hoạt cho đến khi ký tự
được xử lý xong. Đấu nối RS-232 có bắt tay được mô tả trong hình 1-7.
[2]

Hình 1-7: Ghép nối để truyền thông có bắt tay qua cổng RS-232
1.2 MÔĐEM
Trong những năm gần đây, môđem ghép nối quen thuộc đối với nhiều người
sử dụng máy tính PC. Trong phần này, chúng tôi sẽ trình bày một số hiểu viết về
môđem.
Thuật ngữ môđem có nguồn gốc từ chữ tiếng Anh MOdulator/DEModulator,
để chỉ các bộ điều biến/giải điều biến. Các môđem cùng để nối thiết bị số với một
đường truyền mà phổ biến là đường điện thoại (để tránh hiểu nhầm khi chúng tôi
trình bày về GSM môđem ở phần sau).

DTE
TD

RD
RTS
CTS
DTR
DSR
GND
TD
RD
RTS
CTS
DTR
DSR
GND
DTE

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 16 -
Hình 1-8 mô tả vai trò của môđem và các dạng tín hiệu trên đường truyền.
Sở dĩ phải cần đến môđem vì dữ liệu được lưu trữ hoặc trao đổi trong máy tính đều
tồn tại dưới dạng số (digital), trong khi các đường truyền lại truyền dữ liệu dưới
dạng tương tự (analog). Để truyền được tín hiệu từ một máy tính đến một máy tính
ở xa - một hình thức ghép nối máy tính - ta phải biến đổi tín hiệu từ dạng số sang
dạng tương tự để đặt lên đường truyền. Môđem được ứng dụng nhiều trong các
dạng thông tin liên lạc mà chúng ta không thể kết nối cáp hay đường dây một cách
trực tiếp giữa hai đầu.
Hình 1-8: Các tín hiệu truyền qua đường điện thoại

Quá trình biến đổi tín hiệu từ dạng số sang dạng tương tự như thế được gọi là
quá trình điều biến (modulation). Quá trình biến đổi ngược lại từ tín hiệu analog thu
được thành tín hiệu số được gọi là quá trình giải điều biến (demodulation). Mỗi

môđem đều có hai chức năng điều biến và giải điều biến. Tín hiệu tương tự, mang
thông tin từ đầu gần tới đầu xa như trên hình vẽ được gọi là sóng mang (carrier).
Các môđem thông thường sử dụng các đường dây điện thoại để truyền tải tín
hiệu, trong GSM, các môđem GSM sử dụng sóng mang GSM để truyền tải tín hiệu.
Bằng sơ đồ khối, hình 1-9 cho thấy hai máy tính được nối với nhau như thế
nào khi sử dụng cổng nối tiếp RS-232 và các môđem.

M¸y vi tÝnh
RS-232
Modem
M¸y vi tÝnh
RS-232
Modem
KÕt nèi qua
®-êng ®iÖn
tho¹i

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 17 -

Hình 1-9: Truyền dữ liệu bằng môđem

Các môđem tồn tại dưới hai dạng: môđem ngoài và môđem trong.
Môđem trong được chế tạo dưới dạng một card mở rộng cắm vào rãnh mở
rộng trên bảng mạch chính (mainboard) của máy tính PC. Cách ghép nối này không
cần nguồn nuôi ngoài.
Môđem ngoài được chế tạo dưới dạng một bản mạch được đóng hộp và
được nuôi bởi nguồn nuôi ngoài. Môđem ngoài được ghép nối với máy tính thông
qua cổng RS-232 sử dụng các dây nối DB-25 hoặc DB-9.
[2]


1.3 TRUYỀN THÔNG GIỮA MÁY TÍNH VÀ MÔĐEM
Truyền thông giữa máy tính và môđem ngoài được thực hiện quan cổng nối
tiếp hay còn gọi là cổng RS-232. Cổng RS-232 sử dụng cách truyền thông dị bộ, có
khuôn mẫu dữ liệu với bít bắt đầu và bít dừng. Các ký tự được gửi từ máy tính ra
môđem (kể cả ký tự điều khiển) đều được thực hiện theo khuôn mẫu của khung dữ
liệu RS-232 như đã trình bày ở phần trước đây.
ITU đã qui định các tiêu chuẩn liên quan đến RS-232 và môđem. Có khá
nhiều chuẩn môđem đang hiện hành, tuy nhiên, các nhà sản xuất môđem hiện nay
đều có xu hướng sản xuất loại môđem có thể tương thích với tất cả các chuẩn được
đưa ra. Thí dụ một bộ fax/ môđem có thể tương thích với các chuẩn sau:

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 18 -
V.32bis (14.4 kbps)
V.22bis (2.4 kpbs)
Bell 212 (1.2 kbps)
V.17 (14.4kbps, fax)
V.27ter (4.8kbps, fax)
V.42bis (có nén dữ liệu)
MNP5 (có nén dữ liệu)

V.32 (9.6 kbps)
V.22 (1.2 kbps)
Bell 103 (300 bps)
V.29 (9.6 kbps, fax)
V.21 (300 kbps, fax)
V.42 (hiệu chỉnh lỗi)
MNP2-4 (hiệu chỉnh lỗi)



Các môđem theo tiêu chuẩn đều hỗ trợ các lệnh AT cho phép lập trình điều
khiển truyền thông của môđem. Trong ngôn ngữ AT, khi các máy tính gửi lệnh đến
môđem, các lệnh đều bắt đầu bằng hai chữ AT. Chẳng hạn „ATDT” là lệnh quay số
gọi theo kiểu đa tần. Bảng 1-3 dưới đây cho thấy một vài thí dụ về lệnh AT.
Lệnh
Mô tả tác dụng
ATDT54321
Tự động qua số gọi cho số 54321 khi sử dụng cách nhấn
phím theo kiểu đa tần.
AT S0=2
Tự động trả lời sau hai hồi chuông. Nếu S0=0 thì môđem
sẽ không trả lời.
ATH
Chấm dứt (hangup) việc kết nối đường truyền.
Bảng 1-3: Vài lệnh AT tiêu chuẩn của môđem

Mỗi lệnh được kết thúc bởi một ký tự trở về đầu dòng (ký tự mã ASCII là 13
trong hệ thập phân). Một lệnh không có ký tự trở về đầu dòng sẽ bị bỏ qua sau một
thời gian trễ nhất định. Nhiều lệnh có thể được đặt trên một dòng và nếu cần thiết
có thể đưa vào dấu trống (space) cho dễ đọc.
Mỗi môđem có thể chấp nhận hai trạng thái, trạng thái bình thường và trạng
thái lệnh. Trong trạng thái bình thường, môđem truyền và/hoặc nhận các ký tự từ
máy tính. Trong trạng thái lệnh, các ký tự được gửi tới môđem là các lệnh. Mỗi lần
dịch xong một lệnh, môđem lai trở lại trang thái bình thường.
[2]


Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 19 -

Sau khi nhận được lệnh AT, môđem đáp ứng lại bằng một mã trả lại. Các mã
trả lại có thể dưới dạng text hoặc con số (digit) tuỳ thuộc vào lệnh cài đặt. Ví dụ về
một vài mã gửi trả lại được cho trong bảng 1-4 dưới đây:
Thông báo
Digit
Diễn giải
OK
0
Lệnh thực hiện không có lỗi
CONNECT
1
Đã kết nối được
RING
2
Có cuộc gọi đến
NO CARRIER
3
Không có sóng mang
ERROR
4
Lệnh không hợp lệ
CONNECT 1200
5
Kết nối được với một môđem tốc độ 1200 bps
Bảng 1-4: Một số mã gửi trả lại của môđem tiêu chuẩn

Nếu kết nối được với một môđem ở xa thì môđem sẽ trả lại một báo hiệu sự
kết nối chẳng hạn CONNECT 1200. Khi đó dữ liệu có thể được truyền giữa các
môđem ở tốc độ đã được chỉ định.Khi máy tính muốn chấm dứt cuộc kết nối, nó sẽ
gửi tới môđem ba ký tự “+++”. Khi đó, môđem sẽ đáp ứng lại bằng OK và chờ lệnh

ATH từ máy chủ. Khi đó môđem sẽ trả lại một đáp ứng là OK vào thời điểm mà
cuộc kết nối được loại bỏ. Một bộ đầy đủ các lệnh AT, cú pháp và các thanh ghi của
môđem có thể được trong các tài liệu chuyên sâu về môđem.
Cáp nối môđem
Các cáp nối môđem thường được nhà sản xuất cung cấp kèm theo môđem.
Một kiểu nối điển hình môđem với máy tính được trình bày trong hình dưới đây.
[2]



Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 20 -
Hình 1-10: Đấu nối giữa môđem và Máy tính
1.4 MÔĐEM GSM WAVECOM WMO2-G900
1.4.1 GIỚI THIỆU CHUNG
Môđem Wavecom WMO2-G900 được thiết kế như một thiết bị đầu cuối
không dây GSM hỗ trợ các dịch vụ thoại, fax, truyền dữ liệu và nhắn tin ngắn trong
GSM900. Môđem WMO2-G900 được thiết kế như một môđem ngoài và có thể kết
nối với máy tính thông qua cổng RS-232.
Giao diện RS-232 của môđem WMO2-G900 được đặt mặc định ở chế độ tự
điều chỉnh tốc độ baud (từ 2400 bps đến 19200bps), 8 bit dữ liệu, không sử dụng
chẵn lẻ, 1 bít dừng và bắt tay phần cứng RTS/CTS.
[3]

Môđem WMO2-G900 được sử dụng rất nhiều trong các thiết bị lặp sóng
GSM (repeater) để làm thiết bị đầu cuối để vận hành và giám sát từ xa. Môđem
WMO2 được mô tả trong hình 1-11 dưới đây.

TD
RD

RTS
CTS
DTR
DSR
GND
TD
RD
RTS
CTS
DTR
DSR
GND

DTE
DCE

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 21 -
Hình 1-11: Môđem GSM WMO2-G900

Môđem WMO2-G900 được nuôi bằng nguồn nuôi DC chỉ ra trong bảng dưới đây:
Nguồn
Tối thiểu
Tiêu chuẩn
Tối đa
Nguồn vào
5V
13.5V
32V
Dòng vào đỉnh với nguồn 5V



2.5V
Dòng vào trung bình với nguồn 5V
trong chế độ kết nối


450mA
Dòng vào trung bình với nguồn 5V
trong chế độ chờ.


35mA
Bảng 1-5: Nguồn nuôi môđem WMO2-G900
Các đặc trưng kỹ thuật của môđem được trình bày trong bảng 1-6 dưới đây:
Chuẩn
Theo chuẩn GSM Pha 2, Class 4 (2W)
Giao diện
Giao diện nối tiêp RS-232V.24/V.28 với tính năng tự điều
chỉnh tốc độ baud.
Hỗ trợ các lệnh AT tiêu chuẩn theo V.25ter và GSM 07.05
& 07.07
SMS
Hỗ trợ các dịch vụ nhắn tin ngắn, nhắn tin quảng bá theo
GSM 07.05
Data
Không đồng bộ 2400, 4800 và 9600bps, trong suốt và không
trong suốt.
FAX
2400/4800/7200/9600 bps

Thoại
FR và EFR

Bảng 1-6: Đặc trưng kỹ thuật của môđem WMO2-G900

Như vậy ngoài việc hỗ trợ các lệnh AT như đối với các môđem thông thường
theo tiêu chuẩn V.25ter, môđem WMO2 còn hỗ trợ các lệnh AT đối với các đầu
cuối GSM theo tiêu chuẩn các khuyến nghị GSM tương ứng. Chẳng hạn, môđem
WMO2-G900 có thể hỗ trợ các lệnh kiểm tra chất lượng và cường độ tín hiệu bằng
lệnh AT+CSQ như sau:

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 22 -
AT+CSQ:<rssi>,<ber>
Trong đó:
<rssi> nhận các giá trị sau:
0: -113dBm hoặc thấp hơn
1: -111dBm
2 30: -109 đến -53dBm
31: -53dBm hoặc lớn hơn
<ber> nhận các giá trị sau:
0 đến 7 tương ứng với RXQUAL theo khuyến nghị GSM 05.08
Lệnh AT+CSQ có thể được thực hiện ngay cả trong khi môđem không được cài thẻ
SIM card.
[4]

1.4.2 GIAO TIẾP LỆNH AT
Giao diện lệnh AT của môđem WMO2-G900 đặt nền tảng trên giao thức
Hayes giữa TE và ME. Các lệnh AT được sử dụng để quản lý các dịch vụ thoại,
truyền số liệu, fax, gửi và nhận tin nhắn SMS.

Cú pháp lệnh (Command Syntax)
Có ba kiểu lệnh:
Lệnh đặt (Set command): sử dụng ký tự “=”. Có thể gán giá trị cho một
tham số.
Lệnh đọc (Read command): sử dụng ký tự “?”. Có thể đọc giá trị hiện
tại của một tham số.
Lệnh kiểm tra (Test command): sử dụng chuỗi ký tự “=?”. Có thể dùng
để kiểm tra một tham số xem có được hỗ trợ bởi môđem hay không và
cũng để kiểm tra giá trị của tham số đó.
Ví dụ:
AT+CPIN=####
Nhập PIN Code của SIM.
ATSo?
Xác định số hồi chuông trước khi tự
động trả lời cuộc gọi.

Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
- 23 -
AT+COPS
Xác định mạng PLMN mà máy đang
hoạt động.
Cú pháp cơ bản (Basic Syntax)
Khi hoạt động ở tốc độ baud cố định, môđem WMO2-G900 chấp nhận các
lệnh AT được đánh vào hoặc theo chữ hoa hoặc theo chữ thường. Sử dụng lẫn lộn
chữ hoa và chữ thường trong một lệnh sẽ không được phép.
Các ký tự cuối cùng trong dòng lệnh, ngoại trừ một số trường hợp được
hướng dẫn, luôn luôn là các ký tự trở về đầu dòng <CR>.
Cú pháp lệnh AT nói chung là theo kiểu Hayes tiêu chuẩn:
Mỗi lệnh đều được bắt đầu với hai ký tự “AT” ngoại trừ lệnh “+++” và
lệnh “A/”.

Phần lệnh được tiếp theo bởi một ký tự đơn hoặc là dấu „&‟ đi ngay sau
một ký tự đơn.
Một dấu „+‟ có thể được viết ngay sau tiền tố AT cho biết rằng lệnh đó
là một lệnh mở rộng. Trong trường hợp đó, một ký (trong các ký tự sau
đây: A,C,D,E,F,G,I,M,S,T,V hoặc W) cần phải đi ngay sau dấu cộng
„+‟, tiếp theo đó là lệnh.
Tham số được đặt ở cuối dòng lệnh.
Ví dụ:
ATA
Trả lời một cuộc gọi.
AT&W
Lưu profile vào bộ nhớ.
ATQ1
Cấm sử dụng các lệnh mở rộng.
ATSo=2
Tự động trả lời sau hai hồi chuông.

Cũng có thể sử dụng nhiều lệnh trong một dòng lệnh, ví dụ:
ATQ1So=2;&W. Tuy nhiên, dấu “;” cần phải được sử dụng sau mỗi lệnh sử dụng
dấu „=‟, dấu „?‟ hoặc mỗi lệnh mở rộng.

×