ĐẠI HỌC QUỐC GIA HÀ NỘI
KHOA CÔNG NGHỆ
Nguyễn Hoàng Hải
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
LUẬN VĂN THẠC SĨ
Hà Nội - 2004
ĐẠI HỌC QUỐC GIA HÀ NỘI
KHOA CÔNG NGHỆ
Nguyễn Hoàng Hải
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
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
MỤC LỤC
Trang
DANH MỤC CÁC CHỮ VIẾT TẮT
3
MỞ ĐẦU
4
Chương
1
6
Cổng nối tiếp RS-232 và kết nối Môđem
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
25
Lập trình giao tiếp với cổng RS-232
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
35
Hệ thống GSM và dịch vụ nhắn tin ngắn
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
40
Các chỉ tiêu và thiết kế hệ thống
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
44
Chương
5
Các kỹ thuật xử lý
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
-1-
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
62
Hoạt động của hệ thống và tính năng đạt được
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
-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
DANH MỤC CÁC CHỮ VIẾT TẮT
3G
BSC
BSS
CD
CTS
DSR
DTR
EDGE
ESME
ETSI
GPRS
GSM
HLR
ITU
MSC
PC
RI
RTS
SMPP
SMS
SMS MO
SMS MT
SMSC
SS7
VLR
Third Generation
Base Station Controller
Base Station Sub-system
Carrier Detect
Clear To Send
Data Set Ready
Data Terminal Ready
Enhanced Data rates for GSM Evolution
External Short Message Entities
European Telecommunications Standards Institute
General Packet Radio Service
Global System for Mobile communication
Home Location Register
International Telecommunication Union
Mobile Switching Center
Personal Computer
Ring Indication
Request To Send
Short Massage Peer to Peer Protocol
Short Message Service
Mobile Originated Short Message
Mobile Terminated Short Message
Short Message Center
Signalling System No.7
Visitor Location Register
-3-
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
-4-
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
-5-
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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.
-6-
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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 RS232 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 RS232, 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
-7-
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
Lối
Tên gọi
(9chân) vào/ra
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.
SG, Signal
Ground
Đất của tín hiệu.
5
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
-8-
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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.
-9-
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
- 10 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
- 11 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
đượ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
- 12 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
TD
TD
RD
RD
RTS
RTS
CTS
CTS
DTR
DTR
DSR
DSR
GND
GND
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)
- 13 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
d÷ liÖu
Bé truyÒn
Bé nhËn
X-OFF
X-ON
TruyÒn
d÷ liÖu
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.
RTS
S½n sµng nhËn?
Nót truyÒn
CTS
Kh«ng
CTS
Cã
RTS
RTS
CTS
Nót nhËn
TD
TruyÒn d÷ liÖu
RD
Hình 1-6: Các đường dẫn bắt tay được sử dụng khi truyền dữ liệu
- 14 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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ự
TD
TD
RD
RD
RTS
RTS
CTS
CTS
DTR
DTR
DSR
DSR
GND
GND
DTE
DTE
được xử lý xong. Đấu nối RS-232 có bắt tay được mô tả trong hình 1-7. [2]
1.2
Hình 1-7: Ghép nối để truyền thông có bắt tay qua cổng RS-232
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).
- 15 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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
KÕt nèi qua
®-êng ®iÖn
tho¹i
M¸y vi tÝnh
RS-232
Modem
- 16 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
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:
- 17 -
Hệ thống nhắn tin nội bộ trên cơ sở ghép nối môđem GSM ứng dụng SMS
V.32bis (14.4 kbps)
V.32 (9.6 kbps)
V.22bis (2.4 kpbs)
V.22 (1.2 kbps)
Bell 212 (1.2 kbps)
Bell 103 (300 bps)
V.17 (14.4kbps, fax)
V.29 (9.6 kbps, fax)
V.27ter (4.8kbps, fax)
V.21 (300 kbps, fax)
V.42bis (có nén dữ liệu)
V.42 (hiệu chỉnh lỗi)
MNP5 (có nén dữ liệu)
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]
- 18 -
- Xem thêm -