CHƯƠNG II : MODEM SIM900 VÀ SMS/GPRS
2.1 Giới thiệu đặc điểm của Modem GSM
Hình 2-1: Modem GSM/GPRS SIM900 2.1.1 Thông số, đặc tính kỹ thuật của SIM 900
Các thông số nguồn nuôi:
- Điện áp hỗ trợ: 3,4 V đến 4,5 V. - Chế độ tiết kiệm điện tiêu thụ 1,5 mA.
Hỗ trợ 4 băng tần GSM850/EGSM 900, DCS 1800, PCS 1900. Các tần số này được thiết lập bởi tập lệnh AT.
Công suất phát: - 2 W ở băng GSM850 và EGSM 900. - 1 W ở DCS 1800 và PCS 1900. Kết nối GPRS: - Mặc định ở chế độ đa khe GPRS lớp 10. - Hỗ trợ chế độ đa khe GPRS lớp 8. Dải nhiệt độ hoạt động: -30 oC đến 80 oC. Dữ liệu GPRS:
- Tốc độ tối đa đường dữ liệu xuống là 85,6 kbps. - Tốc độ tối đa đường dữ liệu lên là 42,8 kbps. - Khung mã hóa: CS-1, CS-2, CS-3 và CS-4.
- Hỗ trợ giao thức PAP (Password Authentication Protocol). - Tích hợp giao thức TCP/IP.
- Hỗ trợ PBCCH (Packet Switched Broadcast Control Channel). - Tốc độ truyền dữ liệu từ 2,4 kbps đến 14,4 kbps.
SMS
- Tin nhắn được lưu ở thẻ SIM. Âm thanh:
- Có các chế độ mã hóa giọng nói ETS 06.20, ETS 06.10. - Không có tiếng vọng.
- Có khả năng chống ồn.
Cổng giao tiếp nối tiếp và gỡ rối.
- Tốc độ hỗ trợ từ 1,2 kbps đến 11,52 kbps.
Sử dụng tập lệnh AT để giao tiếp với các ngoại vi khác. Hỗ trợ bắt tay phần cứng và điều khiển luồng.
Cổng gỡ rối có cũng cho phép cập nhật firmware. Hỗ trợ đồng hồ thời gian thực.
Kích thước vật lý: 24 mm x 24 mm x 3 mm. Trọng lượng: 3,4 gram.
Hỗ trợ giao tiếp với SIM ở hai mức điện áp 1,8 V và 3,3 V.
2.1.2. Sơ đồ chức năng của SIM900
Hình 2-2 mô tả các khối chức năng chính của SIM 900 bao gồm: - Bộ xử lý băng cơ sở GSM.
- Flash và SRAM.
- Bộ xử lý tần số vô tuyến. - Khối giao tiếp với anten.
- Các khối khác: giao tiếp nối tiếp, giao tiếp hiển thị LCD, giao tiếp bàn phím, âm thanh.
Sơ đồ chân và hình dạng vật lý của SIM900 được mô tả như hình 2-3.
Hình 2-3: Bố trí chân của SIM900
Bảng dưới mô tả chi tiết chức năng các chân của SIM900.
Bảng 2-1: Bảng đặc điểm, chức năng các chân của SIM900
Tên chân Vào/Ra Mô tả Đặc trưng
điện một chiều Chú ý Các chân nguồn
VBAT Vào Chân này được nối vào nguồn điện một chiều từ 3,4V đến 4,5V, nguồn điện này phải chịu được dòng tiêu thụ lên tới 2A khi SIM900 thực hiện khởi tạo kết nối với mạng GSM.
Vmax = 4,5V Vmin = 3,4V Vnorm = 4V
VRTC Vào/Ra Cấp nguồn cho bộ RTC khi mất nguồn nuôi hệ thống Vmax = 3,15V Vmin = 2,0V Vnorm= 3V Iout = 300uA Iin = 2uA Phải cho phép sử dụng chức năng RTC VDD_EXT Ra Hỗ trợ xuất ra điện áp 2,8V Vmax = 3,15V
Vmin = 2,0V
Không sử dụng thì để
Formatted: French (France)
Formatted: French (France)
Vnorm= 3V Iout max = 10mA
ở trạng thái hở
GND Vào Chân nối đất
Tắt /bật nguồn
PWRKEY Vào Chân này được kéo xuống mức thấp khi tắt hoặc khởi động hệ thống VIL= 0V =>0,15*VDD_EXT VIH=0,85*VDD_E XT => VDD_EXT Chân này phải được đặt ở mức cao trước khi tác động PWRKEY_OUT Ra Kết nối chân PWRKEY và
chân PWRKEY_OUT sẽ cho phép bật nguồn hoặc tắt nguồn của SIM900.
Giao diện âm thanh
MIC_P, MIC_N Vào Lối vào microphone SPK_P,SPK_N Ra Lối ra loa
LINEIN_R, LINEIN_L
Vào
Các chân vào ra chung
STATUS Ra Chỉ thị trạng thái hoạt động VIL= 0V
=0,15*VDD_EXT VIH=0,85*VDD_E XT => VDD_EXT VOL= 0V=>0,1V VOH=VDD_EXT – 0,1 => VDD_EXT NETLIGHT Ra Chị thị trạng thái mạng
DISP_DATA Vào/Ra Giao tiếp hiển thị LCD DISP_CLK Ra
DISP_CS Ra DISP_D/C Ra
SCL Ra Giao tiếp truyền thông nối tiếp I2C
SDA Vào/ Ra
KBR0-KBR4 Ra Giao tiếp bàn phím KBC0-KBC4 Vào
Cổng nối tiếp
RXD Vào Nhận dữ liệu VIL= 0V
=>0,15*VDD_EXT VIH=0,85*VDD_E XT => VDD_EXT VOL= 0V=>0,1V VOH=VDD_EXT – 0,1 => VDD_EXT TXD Ra Truyền dữ liệu
RTS Yêu cầu truyền CTS Ra Xóa để truyền RI Ra Chỉ thị chuông báo DSR Ra Báo dữ liệu sẵn sàng DCD Ra Phát hiện tín hiệu sóng mang DTR Vào Dùng để ngắt kết nối
Giao diện gỡ rối qua cổng nối tiếp
DBG_RXD Vào Firmware cho SIM900 tiếp
Giao tiếp với SIM card
SIM_VDD Vào Cấp nguồn cho SIM card 1,8V hoặc 3,0V Chiều dài tối đa của dây nối đến chân này là 20 cm SIM_DATA Vào/Ra Chân giao tiếp dữ liệu của
SIM VIL= 0V =>0,15*SIM_VDD VIH=0,85*SIM_V DD => SIM_VDD VOL= 0V=>0,1V VOH=SIM_VDD– 0,1 => SIM_VDD SIM_CLK Ra Chân xung nhịp
SIM_RST Ra Chân khởi động lại SIM SIM_PRESENCE Vào Chân phát hiện SIM card
Bộ chuyển đổi tương tự sang số
ADC Vào Chân nhận tín hiệu tương tự 0 =>3V
Các chân hỗ trợ khởi động lại từ bên ngoài
NRESET Vào Chân hỗ trợ khởi động SIM900 từ bên ngoài
VIL= 0V =>0,15*VDD_EXT VIH=0,85*VDD_E XT => VDD_EXT Bộ điều chế độ rộng xung
PWM1 Ra Chân cung cấp tín hiệu được điều chế độ rộng xung VOL= 0V=>0,1V VOH=VDD_EXT – 0,1 => VDD_EXT PWM2 Ra
2.1.3 Các chế độ hoạt động của SIM900
SIM900 có ba chế độ hoạt động chính được miêu tả bằng bảng dưới đây:
Bảng 2-2: Các chế độ hoạt động của SIM900
Chế độ Chức năng
Chế độ thường (NORMAL MODE)
GSM/GPRS SLEEP
Chân DTR được đặt ở mức cao, SIM900 chuyển sang trạng thái SLEEP. Lúc này, dòng tiêu thụ của nó là thấp nhất và vẫn cho phép nhận SMS.
GSM IDLE SIM900 sẵn sàng nhận và gửi dữ liệu từ mạng GSM.
GSM TALK SIM900 đang kết nối với các thành phần khác của mạng GSM.
GPRS STANDBY SIM900 sẵn sàng truyền nhận dữ liệu GPRS.
GPRS DATA SIM900 đang trong quá trình truyền nhận dữ liệu GPRS
Chế độ tắt nguồn Gửi lệnh AT+CPDOWN = 1 hoặc dùng chân PWRKEY để tắt
(POWER DOWN) nguồn của hệ thống. Nguồn nuôi RTC vẫn hoạt động. VBAT vẫn được kết nối
Chế độ chức năng tối thiểu (MINIMUM FUNC MODE)
Gửi lệnh AT+CFUN để chuyển trạng thái của hệ thống sang chế độ này. Khối cao tần không hoạt động, không thể truy cập vào thẻ SIM nhưng vẫn có thể truyền thông với SIM900 thông qua cổng nối tiếp.
Quá trình khởi động và chuyển trạng thái đơn giản của SIM 900 được mô tả như sau:
Sau khi cấp nguồn cho SIM900, chân PWRKEY được đặt ở mức cao, SIM900 khởi động tự động và chuyển sang chế độ thường.Trong một số trường hợp cần tắt hệ thống để khởi động lại, phần mềm gửi lệnh “AT+CPDOWN” hoặc điều khiển chân PWRKEY xuống mức thấp trong vòng hai giây. SIM900 chuyển sang chế độ POWER DOWN. Trong chế độ này, chúng ta chỉ có thể bật tắt nguồn hoặc giữ PWRKEY ở mức thấp trong 2s để đưa hệ thống trở về chế độ hoạt động thường.
AT+CFUN =0 AT+CFUN =1 AT+CPDOWN PWRKEY = 0 Trong 2s MINIMUM FUNCTION MODE NORMAL MODE POWER DOWN PWRKEY = 0 Trong 2s
Hình 2-4: Sơ đồ quá trình chuyển trạng thái hoạt động của SIM900 2.2 Giới thiệu sơ lược về SMS, GPRS
Thiết bị sử dụng SMS để gửi dữ liệu về máy chủ thông qua mạng viễn thông. Phần này sẽ mô tả chi tiết các đặc điểm của dịch vụ SMS [2].
2.2.1 SMS là gì?
SMS là dịch vụ gửi và nhận các tin nhắn ngắn từ điện thoại di động.
2.2.1.1 Lịch sử phát triển
Ý tưởng về việc bổ sung thêm dịch vụ nhắn tin văn bản cho điện thoại di động đã được manh nha ở nhiều nhà cung cấp dịch vụ di động từ đầu những năm 1980. Các chuyên gia đã đóng góp ý kiến bàn luận cho các dịch vụ GSM.
Hầu hết những ý tưởng về SMS là cung cấp một phương tiện nhắc nhở cho người dùng. Ưu điểm của SMS chính là ở từ “ngắn”. Ý tưởng chủ đạo của SMS là sử dụng hệ thống đã được tối ưu hóa cho vẫn đề đàm thoại (GSM) để truyền tin, tín
hiệu điều khiển dữ liệu thoại trong khoảng thời gian không có tín hiệu. Như vậy, hệ thống có thể truyền thông tin mà không làm tăng chi phí. Điều này cũng kèm theo việc phải giới hạn độ dài của tin nhắn ở 128 byte (sau này được tăng lên 140 byte, hoặc 160 ký tự với 7bit/1 ký tự còn với các chữ cái kiểu Ả rập, Trung Quốc hay tiếng Việt thì chỉ chứa được tối đa 70 từ).
Khoảng tháng hai năm 1985, sau khi đã bàn bạc trong nhóm WP3 thuộc GSM, đứng đầu là J. Audestad, SMS đã được cân nhắc để trở thành một dịch vụ của GSM trong hệ thống di động kỹ thuật số mới. Trong tài liệu “Dịch vụ và các thiết bị hỗ trợ trong hệ thống GSM”, cả dịch vụ di động và dịch vụ nhắn tin ngắn đều có mặt trong danh mục dịch vụ.
Việc thảo luận về các dịch vụ GSM cuối cùng đã được kết luận trong văn bản GSM 02.03 “Các dịch vụ từ xa được hỗ trợ bởi GSM PLMN”. Dưới đây là những mô tả sơ lược về 3 dịch vụ được đề cập đến:
- Short message Mobile Terminated (SMS-MT)/ Point-to-Point cung cấp cho hệ thống khả năng chuyển một tin nhắn tới một điện thoại di động. Tin nhắn có thể được gửi từ một thiết bị di động khác hộ trợ SMS hoặc một phần mềm ứng dụng.
- Short message Mobile Originated (SMS-MO)/ Point-to-Point cung cấp cho hệ thống khả năng chuyển một tin nhắn gửi đi từ một điện thoại di dộng. Tin nhắn có thể gửi tới một điện thoại di động hoặc một phần mềm ứng dụng.
- Short message Cell Broadcast: gửi tin nhắn quảng bá từ một điện thoại đến nhiều điện thoại di động khác.
Vấn đề này đã được bàn giao cho một bộ phận khác của GSM là IDEG (Implementation of Data and Telematic Services Experts Group – Bộ phận triển khai Dữ liệu và Nhóm các chuyên gia về dịch vụ từ xa). Sau đó, bộ phận này đã đưa ra các tài liệu liên quan vào tháng 5 năm 1985, dưới sự phụ trách của Friedhelm Hillebrand. Chuẩn công nghệ được biết đến ngày nay đã được phát triển bởi IDEG (sau này là WP4) là GSM 03.04 (hai dịch vụ gửi tin nhắn point-to-point) và GSM 03.41 (cell broadcast).
Chuẩn MAP (Mobile Application Part) cho giao thức SS7 bao gồm việc hỗ trợ chuyển tin nhắn qua hệ thống lõi (Core Network) ngay từ đầu. MAP giai đoạn hai mở rộng tới hỗ trợ cho tin nhắn SMS, bằng việc giới thiệu một mã điều khiển riêng cho việc chuyển tin nhắn Mobile Terminated Short Message. Sau giai đoạn 2, không còn thay đổi nào đối với các gói điều khiển dịch vụ nhắn tin trong chuẩn MAP, mặc dù các gói điều khiển khác thì đã được phát triển để hỗ trợ cho CAMEL SMS.
Mặc dù SMS ban đầu được phát triển trong các dịch vụ của mạng GSM, nhưng đến nay nó đã trở nên phổ cập với tất cả các hệ thống khác, bao gồm cả mạng 3G. Tuy nhiên, không phải hệ thống tin nhắn nào cũng sử dụng SMS và một số hình thức thay thế đáng lưu ý có thể kể đến SkyMail của J-Phone và Short Mail của NTT Docomo. Tin nhắn thư điện tử gửi từ điện thoại được sử dụng khá phổ biến với chức năng i-mode của NTT Docomo và điện thoại BlackBerry của RIM cũng sử dụng giao thức của thư điện tử như SMTP thông qua cổng TCP/IP.
2.2.1.2 Ưu điểm của việc sử dụng SMS
So với các phương thức liên lạc khác: nó là phương thức nhanh nhất nếu tính trên việc chuyển tải thông tin thực tế và ngay lập tức, chẳng hạn một người không thể nhận cuộc gọi vì đang nằm ngoài vùng phủ sóng, đang bận với cuộc gọi khác hoặc tắt máy…, thì tin nhắn gửi đến sẽ là cách thức liên lạc nhanh nhất. Thực tế thì SMS có thể chậm hơn một số giây so với cuộc gọi trực tiếp hay gửi thư điện tử nhưng nó là cách liên lạc tốt nhất, nhanh hơn so với các hình thức liên lạc khác phải diễn ra trong vài giờ hoặc thậm chí vài ngày. Một tin nhắn trung bình được đọc trong vòng 30 phút, trong khi với thư điện tử là 48 giờ.
Có thể gửi tin nhắn ở bất kỳ đâu, bất kỳ thời điểm nào. Người nhận không nhất thiết phải đọc hoặc hồi đáp SMS ngay lập tức. Việc gửi và nhận tin nhắn thì không có ồn như thoại.
2.2.2 Những lý do để xây dựng những ứng dụng không dây dựa trên nền SMS
Nhắn tin SMS được 100% các máy di dộng GSM hỗ trợ. Vì vậy, nếu phát triển những ứng dụng trên nền SMS thì sẽ có một số lượng lớn người dùng có thể sử dụng nó một cách dễ dàng.
Bên cạch việc truyền dữ liệu dạng văn bản, SMS còn hỗ trợ truyền dữ liệu dạng nhị phân, đó có thể là nhạc chuông, hình ảnh, hình ảnh động, vcard...
Thanh toán tiện lợi bằng phương pháp thanh toán ngược. Người dùng bất kỳ muốn sử dụng dịch vụ, chỉ cần soạn một tin và họ phải trả tiền cho những tin hồi đáp của nhà cung cấp dịch vụ.
2.2.3 Các khái niệm cơ bản trong nhắn tin SMS
Thời gian hiệu lực : Là khoảng thời gian mà tin nhắn của ban được lưu ở trung tâm tin nhắn khi chưa gửi được do người nhận ở ngoài vùng phủ sóng hoặc tắt máy. Sau khoảng thời gian này, nếu người vẫn không hòa mạng, thì tin nhắn sẽ bị xóa khỏi trung tâm tin nhắn. Khoảng thời gian này được người dùng cấu hình trong máy di động của mình.
Tin nhắn thông báo trạng thái: Giúp người dùng biết tin nhắn đã được chuyển đi thành công hay thất bại.
Tin nhắn thông báo tiến trình: Tin nhắn sau khi rời máy di động đên trung tâm tin nhắn, trung tâm tin nhắn sẽ gửi trả về cho thuê bao di dộng biết các lỗi ví dụ như sai định dạng, sai trung tâm tin nhắn...
Tin nhắn thông báo phân phối: Thuê bao nhận được tin nhắn sẽ gửi bản tin này lại cho trung tâm tin nhắn.
SMS center
Tin nhắn được thuê bao di động gửi đi sẽ đến trung tâm tin nhắn đầu tiên. Tác dụng của nó là xử lý, định tuyến, định dạng tin nhắn. Tin nhắn sẽ được chuyển qua nhiều trung tâm tin nhắn và cũng có thể được lưu trữ ở đây nếu không được chuyển đến người nhận. Các nhà cung cấp dịch vụ di dộng khác nhau có thể sử dụng chung các trung tâm tin nhắn.
SMS gateway
SMSC được xây dựng bởi các công ty khác nhau với các giao thức truyền thông khác nhau. SMS gateway sẽ đóng vai trò kết nối giữa các SMSC khác nhau
Hình 2-5:Vai trò của SMS gateway
Giả sử bạn muốn phát triển một ứng dụng dựa trên nền SMS thì bạn phải gửi tin nhắn lên SMSC, mà SMSC lại có nhiều giao thức khác nhau. Như vậy, tin nhắn của bạn phải hỗ trợ nhiều giao thức, điều này dẫn đến tin nhắn của bạn rất phức tạp và mất thời gian phát triển. Vấn đề này được giải quyết một cách dễ dàng khi bạn sử dụng SMS gateway. Bạn kết nối vào SMS gateway bằng SMPP(short message peer to peer) và CIMD(Computer Interface to Message Distribution). SMS gateway sẽ tự động điều chỉnh cho phù hợp với các giao thức của các SMSC khác nhau.
Hình 2-6: Vai trò của SMS gateway
Ngoài ra, khi muốn gửi một tin nhắn văn bản thì chúng ta cũng có thể kết nối máy tính với một điện thoại di động hoặc modem GSM, sau đó dùng tập lệnh AT điều khiển modem GSM gửi và nhận tin nhắn. Khi đó ta chỉ cần kết nối máy tính đến SMSC hoặc SMS gateway của nhà cung cấp dịch vụ di động. Sau đó gửi và nhận tin nhắn dựa trên giao thức của SMSC/SMS gateway đó.
2.3 Tập lệnh AT
2.3.1 Giới thiệu về tập lệnh AT
Một tiêu chuẩn đối với phần mềm điều khiển modem do hãng Hayes Microcomputer Products soạn thảo và được đưa ra lần đầu tiên dùng với modem Smartmodems của công ty đó. Gọi là tập lệnh AT (viết tắt) của ATtention vì nhiều lệnh trong đó được bắt đầu bằng chữ AT. Tập lệnh này được các modem loại “tương thích với Hayes” mô phỏng theo một cách rộng rãi và thực tế đã trở thành