MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ BẰNG TIN NHẮN SMS
NỘI DUNG ĐỒ ÁN
ĐỒ ÁN TỐT NGHIỆP ĐIỆN MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ BẰNG TIN NHẮN SMS, thuyết minh MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ BẰNG TIN NHẮN SMS, MÔ HÌNH MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ BẰNG TIN NHẮN SMS
CHƯƠNG 1
DẪN NHẬP
1.1. GIỚI THIỆU ĐỀ TÀI
Ngày nay cùng với sự phát triển mạnh mẽ của các ngành khoa học kỹ thuật, công nghệ kỹ thuật điện tử mà trong đó là kỹ thuật tự động điều khiển đóng vai trò quan trọng trong mọi lĩnh vực khoa học kỹ thuật, quản lí, công nghiệp, cung cấp thông tin ... Do đó là một sinh viên chuyên ngành điện,chúng ta phải biết nắm bắt và vận dụng nó một cách có hiệu quả nhằm góp phần vào sự phát triển nền khoa học kỹ thuật thế giới nói chung và trong sự phát triển kỹ thuật điện tử nói riêng. Bên cạnh đó còn là sự thúc đẩy sự phát triển của nền kinh tế nước nhà.
Qua những đợt đi thực tập tốt nghiệp tại nhà máy và tham quan thực tế các doanh nghiệp sản xuất, chúng tôi đã được thấy nhiều khâu được tự động hóa trong quá trình sản xuất. Thêm vào đó, ngày nay hệ thống mạng điện thoại di động và các thiết bị điện thoại di động ngày càng được phổ biến trong cuộc sống. Cùng với đó là nhu cầu cuộc sống ngày càng tăng. Từ đó đã hình thành, nảy sinh một ý tưởng về việc điều khiển các thiết bị tự động trong nhà thông qua tin nhắn SMS.
Như chúng ta cũng đã biết, gần như các thiết bị tự động trong nhà máy, trong đời sống của các gia đình ngày nay đều hoạt động độc lập với nhau, mỗi thiết bị có một quy trình sử dụng khác nhau tuỳ thuộc vào sự thiết lập, cài đặt của người sử dụng.
Chúng chưa có một sự liên kết nào với nhau về mặt dữ liệu. Nhưng đối với hệ thống điều khiển thiết bị từ xa thông qua tin nhắn SMS thì lại khác. Ở đây, các thiết bị điều khiển tự động được kết nối với nhau thành một hệ thống hoàn chỉnh qua một một thiết bị trung tâm và có thể giao tiếp với nhau về mặt dữ liệu.
Điển hình của một hệ thống điều khiển thiết bị trong nhà từ xa thông qua tin nhắn SMS gồm có các thiết bị đơn giản như bóng đèn, quạt máy, lò sưởi đến các thiết bị tinh vi, phức tạp như tivi, máy giặt, hệ thống báo động … Nó hoạt động như một ngôi nhà thông minh. Nghĩa là tất cả các thiết bị này có thể giao tiếp với nhau về mặt dữ liệu thông qua một đầu não trung tâm. Đầu não trung tâm ở đây có thể là một máy vi tính hoàn chỉnh hoặc có thể là một bộ xử lí đã được lập trình sẵn tất cả các chương trình điều khiển. Bình thường, các thiết bị trong ngồi nhà này có thể được điều khiển từ xa thông qua các tin nhắn của chủ nhà. Chẳng hạn như việc tắt quạt, đèn điện … khi người chủ nhà quên chưa tắt trước khi ra khỏi nhà. Hay chỉ với một tin nhắn SMS, người chủ nhà có thể bật máy điều hòa để làm mát phòng trước khi chủ nhà trong một khoảng thời gian nhất định. Còn khi có chuyện gì đó sảy ra ra đối với ngôi nhà mang tính khẩn cấp như cháy chẳng hạn. Lúc này, ngôi nhà sẽ tự động phát hiện ra hỏa hoạn nhờ vào các cảm biến thì lập tức dữ liệu đó sẽ được gởi đến hệ thống điều khiển trung tâm. Khi hệ thống trung tâm đã xử lý xong dữ liệu thì nó sẽ lập tức ra lệnh điều khiểnđóng tất cả các đường ống dẫn khí, tắt hết các thiết bị đang hoạt động trong ngồi nhà này và báo động gửi tin nhắn cho người chủ nhà và có thể tự động gọi điện báo cho lực lượng phòng cháy chữa cháy. Ngoài ra, hệ thống còn mang tính bảo mật. Nghĩa là chỉ có chủ nhà hay người biết mật khẩu của ngôi nhà thì mới điều khiển được ngôi nhà này.
Từ những yêu cầu thực tế, những đòi hỏi ngày càng cao của cuộc sống, cộng với sự hợp tác, phát triển mạnh mẽ của mạng di động nên chúng tôi đã chọn đề tài " điều khiển thiết bị trong nhà từ xa qua tin nhắn SMS " để đáp ứng được nhu cầu ngày càng cao của con người và góp phần vào sự tiến bộ, văn minh, hiện đại của nước nhà.
1.2. Ý NGHĨA KHOA HỌC CỦA ĐỀ TÀI
Ngày nay cùng với sự tiến bộ của khoa học kỹ thuật, các thiết bị điện tử ra đờingày càng nhiều về chủng loại cũng như tính năng sử dụng. Bên cạnh đó nhu cầu sử dụng các thiết bị một cách tự động ngày càng cao, con người ngày càng muốn có nhiều thiết bị giải trí cũng như các thiết bị sinh hoạt với kỹ thuật và công nghệ ngày càng cao. Có thể ở Việt nam chưa phát triển mạnh mẽ trong lĩnh này nhưng hiện nay ở trên thế giới, nhất là các quốc gia thuộc Châu âu hay Mĩ thì mô hình ngôi nhà tự động được điều khiển từ xa đã phát triển rất mạnh mẽ. Chúng được biết đến như ngôi nhà thông minh nổi tiếng của Bill Gate chẳng hạn. Với sự kết hợp chặt chẽ giữa các thiết bị điện tử tinh vi và phần mềm xây dựng tương ứng, Bill Gate đã xây dựng được mô hình ngôi nhà thông minh, tự động hoàn toàn và còn cho phép điều khiển từ xa thông qua một bộ điều khiển trung tâm.
Từ những nhu cầu thực tế đó, người thực hiện muốn đưa một phần những kỹ thuật hiện đại của thế giới áp dụng vào điều kiện thực tế trong nước để có thể tạo ra một hệ thống điều khiển thiết bị trong nhà từ xa thông qua tin nhắn SMS nhằm đáp ứng nhu cầu ngày càng cao của con người. Đề tài lấy cơ sở là tin nhắn SMS để điều khiển thiết bị. Bên cạnh đó, các thiết bị này cũng có thể được điều khiển tại nhà thông qua giao diện phần mềm xây dựng. Việc sử dụng tin nhắn SMS để điều khiển thiết bị có thuận lợi là tiết kiệm chi phí, mang tính cạnh tranh và cơ động cao (nghĩa là ở chỗ nào có phủ sóng mạng điện thoại di động ta cũng có thể điều khiển thiết bị được).
Ngoài ra, sản phẩm của đề tài này có tính mở, có thể áp dụng cho nhiều đối tượng khác nhau trong dân dụng cũng như trong công nghiệp.
1.3. MỤC ĐÍCH NGHIÊN CỨU
Đồ án được nghiên cứu, khảo sát và thực hiện với mục đích áp dụng những kiến thức đã được học trong nhà trường để thiết kế, tạo ra một hệ thống điều khiển tự động từ xa bằng tin nhắn SMS hoàn chỉnh. Hệ thống tích hợp module điều khiển giám sát (có cả camera), module đo nhiệt độ và module công suất cho cho các thiết bị trong nhà cùng các module tiện ích khác. Với module đo nhiệt độ thì cảm biến nhiệt độ sẽ gởi thông tin dữ liệu về bộ xử lí trung tâm. Qua xử lí, nhiệt độ sẽ được cập nhật liên tụctrên giao diện phần mềm xây dựng theo biểu đồ thời gian một cách trực quan. Module điều khiển giám sát, bên cạnh các chức năng điều khiển cơ bản thì nó còn liên tục cập nhật hình ảnh bên trong của ngôi nhà tới người chủ (tức trên điện thoại di động của người chủ nhà). Và một khi có hỏa hoạn sảy ra thì nó sẽ tự động thi hành các thao tác cần thiết được lập trình sẵn để bảo vệ ngôi nhà.
1.4. GIỚI HẠN ĐỀ TÀI
Để thực thi một hệ thống điều khiển thiết bị từ xa thông qua tin nhắn SMS áp dụng cho một ngôi nhà hoàn chỉnh như nói trên là rất phức tạp và rất tốn kém. Để đáp ứng việc điều khiển toàn bộ các thiết bị này đòi hỏi phải có một lượng thời gian, kiến thức nhất định. Bên cạnh đó còn là vấn đề tài chính. Với lượng thời gian và kiến thức có hạn, trong đề tài này nhóm thực hiện chỉ thực thi một phần của hệ thống hoàn chỉnh đó. Đó là điều khiển đóng mở đèn, đo và hiển thị nhiệt độ phòng theo thời gian được hiển thị trên phần mềm ứng dụng. Ngoài ra còn có chức năng báo cháy khi sảy ra hỏa hoạn.
Với những gì đã trình bày trên, nhóm đã tiến hành nghiên cứu, khảo sát và thực hiện và dự kiến đạt được các mục tiêu đặt ra như sau:
- Điều khiển các thiết bị trong nhà (cụ thể là điều khiển hai thiết bị công suất trung bình) bằng tin nhắn SMS tại ví trí có phủ sóng của mạng điện thoại di động đang hoạt động trong nước như Viettel, Mobile Phone, Vina Phone …
- Hiển thị trạng thái các thiết bị, cập nhật trạng thái thiết bị trên giao diện màn hình phần mềm xây dựng.
- Tự động gửi tin nhắn ngược trở lại cho chủ nhà, với nội dung tin nhắn chứa thông tin hoạt động của các thiết bị điện (nếu như người sử dụng có lựa chọn chức năng này). Ngoài ra, hệ thống còn có chức năng tự động báo cháy bằng cách gửi một tin nhắn SMS tới người chủ.
-
Xây dựng giao diện phần mềm đơn giản, dễ sử dụng được điều khiển trên máy tính.
CHƯƠNG 2
CƠ SỞ LÍ LUẬN
2.1. TÌNH HÌNH NGHIÊN CỨU NGOÀI NƯỚC VÀ TRONG NƯỚC
2.1.1 NGOÀI NƯỚC
Hiện nay trên thế giới, việc sử dụng tin nhắn SMS để điều khiển thiết bị từ xa không còn vấn đề mới mẻ nữa vì được nghiên cứu và đã áp dụng vào thực tế trong các nhà máy xí nghiệp. Kĩ thuật này được ra đời vào cuối tháng 8/2000, khi đó có đến 6.3 triệu GSM (Global System for Mobile communications) được sử dụng tại South Africa. Theo thống kê thì tổng số người dùng GSM vào năm 2005 được dự đoán là 11 triệu người chỉ tính riêng South Africa. Hiện tại có 49 mạng GSM tại Africa với sự phát triển ghê ghớm hơn nữa trong tương lai. Kĩ thuật GSM có khả năng truyền tin wireless với phạm vi rất rộng lớn và đảm bạo độ tin cậy cao. Chính vì vậy, người dùng có thễ gửi tin nhắn SMS để điều khiển thiết bị từ xa mang lại hiệu quả cao. Người dùng chỉ cần sử dụng điện thoại di động của mình (bất cứ loại hoặc thương hiệu) để theo dõi và kiểm soát những ứng dụng trong công nghiệp và nông nghiệp. Những hệ thống được điều hiển bởi SMS (SMS Control Systems) thì chỉ cần điều khiển thông qua việc gửi nhận tin nhắn SMS. Điều này có nghĩa là việc điều khiển có phạm vi rất xa. Hệ thống điều khiển bằng tin nhắn SMS được thiết kế để điều khiển những thiết bị và ứng dụng :
- Máy móc nhà xưởng.
- Hệ thống xử lí nước thải.
- Nông nghiệp thủy lợi.
- Lò sưởi, ướp lạnh, máy điều hòa.
Chúng ta sẽ nêu ra một mô hình sử dụng tin nhắn SMS trong việc điều khiển trong tự động hóa của Công Ty KlinkMann. GSM-Control là phần mềm trên Window được sử dụng bằng 2 phương pháp điều khiển từ xa trong tự động hóa và những ứng dụng khác sử dụng chuẩn GSM-Modem, phone, network. Dựa trên chuẩn GSM-Modem và những thiết bị có tính năng GSM, GSM-Control cho phép ta tạo ra một mạng điều khiển không dây và giám sát ứng dụng mà giá thấp nhất và dễ dàng vận chuyển. Tất cả việc điều khiển đều thông qua SMS với độ tin cậy cao.
Hình 1 Các thiết bị kết nối với máy tính thông qua GSM modem
Công việc chính của GSM-Control là làm cầu nối giao tiếp giữa GSM (dùng tin nhắn SMS để gửi nhận tín hiệu điều khiển) với Window. Bằng cách sử dụng tin nhắn SMS với Phone trên tay làm HMI (giao diện giao tiếp với người) để điều khiển PLC, truy cập dữ liệu DDE/OPC/SQL để điều khiển các phần mềm như Excel/Scada. Sau khi nhận tín hiệu điều khiển thì chúng sẽ gửi trả lại tin nhắn SMS để báo tình trạng cho người dùng
Hình 2 Kết nối các thiết bị với máy tính thông modem GSM
2.1.2 TRONG NƯỚC
Ở phạm vi trong nước, trước khi thực hiện đề tài này thì vẫn chưa có nhóm nghiên cứu nào thực hiện, tiến hành nghiên cứu đầy đủ về một hệ thống điều khiển thiết bị điện bằng tin nhắn SMS. Tuy nhiên, vẫn có những nghiên cứu phát triển, ứng dụng làm nền tảng cho đề tài này được thực hiện. Chẳng hạn như đề tài nghiên cứu: “điều khiển các thiết bị điện trong nhà thông qua mạng internet ” của tác giả Trần Ngọc Minh và Lê Anh Tài, sinh viên trường ĐH Sư Phạm Kỹ Thuật khóa 2000-2005.
Trong đề tài này, hai tác giả Trần Ngọc Minh và Lê Anh Tài đã sử dụng yếu tố chính là mạng Internet để điều khiển các thiết bị điện, điện tử ở trong nhà chẳng hạn như điều khiển, giám sát và cho hiển thị được hình ảnh thông qua camera và các tính năng khác. Tác giả đã nghiên cứu và cho đi vào các ứng dụng như: tìm hiểu các vấn đề về internet, các giao thức truyền thông, giao tiếp, dịch vụ từ phía máy chủ. Hệ thống thiết kế giao diện điều khiển trên máy chủ (sever) và trang web điều khiển trên máy khách (client). Giao diện gồm có nhiều cửa sổ, được xây dựng tương ứng với từng phần cứng và bao gồm các tinh năng điều khiển thiết lập. Ngôn ngữ Java và HTML được lựa chọn trong thiết kế và điều khiển. Hệ thống có chiều dài bus truyền dẫn tín hiệu không quá 1200m. Hệ thống có sơ đồ khối như hình sau.
Hình 3 Sơ đồ khối điều khiển các thiết bị trong nhà thông qua mạng Internet
Với hệ thống như trên, tác giả đã khai thác, ứng dụng rất tốt sự phát triển của mạng internet vào trong thực tế. Song, theo ý kiến chủ quan thì đề tài này vẫn còn một số thiếu sót cần khắc phục chẳng hạn như: hệ thống trên chỉ ứng dụng cho những địa điểm, vị trí nào có gắn mạng internet và trong quá trình thực thi hệ thống thì ngoài việc giao diện phần mềm xây dựng hoạt động ổn định thì phải luôn đảm bảo được sụp mạng sảy ra bất ngờ. Nếu hệ thống không duy trì được những yếu tố trên thì sẽ không thực thi được quá trình điều khiển thiết bị điện trong nhà. Bên cạnh đề tài nêu trên còn có một số đề tài khác đề cập đến vấn đề điều khiển thiết bị từ xa khác. Nhưng vẫn chưa có đề tài nào sử dụng tin nhắn SMS để điều khiển thiết bị. Tuy nhiên, các đề tài đi trước đã tạo nền tảng cho việc phát triển ý tưởng điều khiển thiết bị từ xa qua tin nhắn SMS.
Tóm lại, việc nghiên cứu sử dụng tin nhắn SMS hiện nay tại Việt Nam đang còn rất mới mẻ và chưa đi vào thực tiễn ứng dụng nhiều. Hầu hết các nghiên cứu đều là nghiên cứu tự phát của cá nhân những người hay nhóm người muốn tìm hiểu về công nghệ này, vẫn chưa phải là một hoạt động nghiên cứu mang tính chuyên nghiệp để có thể đưa vào ứng dụng. Mặc dù vậy việc nghiên cứu vẫn có những nhen nhóm khi tập đoàn điện lực EVN đã sử dụng công nghệ nhắn tin SMS để điều khiển máy cắt thông qua Modem điện thoại của họ. Ước tính 35 triệu thuê bao di động ở Việt Nam năm 2008. Dịch vụ về SMS cũng bắt đầu tăng lên đáng kể. Điều này là một lợi thế cho việc nghiên cứu và phát triển các ứng dụng trong điều khiển tự động hóa
2.2. Ý TƯỞNG THIẾT KẾ:
Dùng mạng điện thoại di động của các nhà cung cấp dịch vụ như Viettel, Mobi, Vina, S-Fone để gửi tin nhắn SMS điều khiển các thiết bị và có thể nhận đáp ứng lại từ các thiết bị cho biết tình trạng hoạt động của các thiết bị.
2.3. PHƯƠNG PHÁP NGHIÊN CỨU
Trong đề tài này người thực hiện đã sử dụng các phương pháp nghiên cứu:
- Phương pháp tham khảo tài liệu: bằng cách thu thập thông tin từ sách, tạp chí về điện tử và truy cập từ mạng internet.
- Phương pháp quan sát: khảo sát một số mạch điện thực tế đang có trên thị trường và tham khảo thêm một số dạng mạch từ mạng Internet.
- Phương pháp thực nghiệm: từ những ý tưởng và kiến thức vốn có của mình kết hợp với sự hướng dẫn của giáo viên, người thực hiện đã lắp ráp thử nghiệm nhiều dạng mạch khác nhau để từ đó chọn lọc những mạch điện tối ưu.
2.4. PHƯƠNG TIỆN NGHIÊN CỨU
Với đề tài này, người thực hiện dựa vào sách giáo khoa và những kiến thức được trang bị trong quá trình học tập cùng với sự trợ giúp của máy tính và những thông tin trên mạng. Ngoài ra, còn có những thiết bị trợ giúp trong quá trình thiết kế mạch do người thực hiện tự trang bị.
CHƯƠNG 3
TRUYỀN DỮ LIỆU VÀ GIAO TIẾP MÁY TÍNH
3.1. TỔNG QUÁT VỀ TIN NHẮN SMS
3.1.1 GIỚI THIỆU VỀ SMS
SMS là từ viết tắt của Short Message Service. Đó là một công nghệ cho phép gửi và nhận các tín nhắn giữa các điện thoại với nhau. SMS xuất hiện đầu tiên ở Châu âu vào năm 1992. Ở thời điểm đó, nó bao gồm cả các chuẩn về GSM (Global System for Mobile Communications). Một thời gian sau đó, nó phát triển sang công nghệ wireless như CDMA và TDMA. Các chuẩn GSM và SMS có nguồn gốc phát triển bởi ETSI. ETSI là chữ viết tắt của European Telecommunications Standards Institute. Ngày nay thì 3GPP (Third Generation Partnership Project) đang giữ vai trò kiểm soát về sự phát triển và duy trì các chuẩn GSM và SMS.Như đã nói ở trên về tên đầy đủ của SMS là Short Message Service, từ cụm từ đó, có thể thấy được là dữ liệu có thể được lưu giữ bởi một tin nhắn SMS là rất giới hạn. Một tin nhắn SMS có thể chứa tối đa là 140 byte (1120 bit) dữ liệu. Vì vậy, một tin nhắn SMS chỉ có thể chứa :
+ 160 kí tự nếu như mã hóa kí tự 7 bit được sử dụng (mã hóa kí tự 7 bit thì phù hợp với mã hóa các lí tự latin chẳng hạn như các lí tự alphabet của tiếng Anh).
+ 70 kí tự nếu như mã hóa kí tự 16 bit Unicode UCS2 được sử dụng (các tin nhắn SMS không chứa các kí tự latin như kí tự chữ Trung Quốc phải sử dụng mã hóa kí tự 16 bit).
Tin nhắn SMS dạng text hỗ trợ nhiều ngôn ngữ khác nhau. Nó có thể hoạt động tốt với nhiều ngôn ngữ mà có hỗ trợ mã Unicode , bao gồm cả Arabic, Trung Quốc, Nhật bản và Hàn Quốc. Bên cạnh gữi tin nhắn dạng text thì tin nhắn SMS còn có thể mang các dữ liệu dạng binary. Nó còn cho phép gửi nhạc chuông, hình ảnh cùng nhiều tiện ích khác … tới một điện thoại khác. Một trong những ưu điểm nổi trội của SMS đó là nó được hỗ trợ bởi các điện thoại có sử dụng GSM hoàn toàn. Hầu hết tất cả các tiện ích cộng thêm gồm cả dịch vụ gửi tin nhắn giá rẻ được cung cấp, sử dụng thông qua sóng mang wireless. Không giống như SMS, các công nghệ mobile như WAP và mobile Java thì không được hỗ trợ trên nhiều model điện thoại. Sử dụng tin nhắn SMS ngày càng phát triển và trở lên rộng khắp :
- Các tin nhắn SMS có thể được gửi và đọc tại bất kỳ thời điểm nào.Ngày nay, hầu hết mọi người đều có điện thoại di động của riêng mình và mang nó theo người hầu như cả ngày. Với một điện thoại di động , bạn có thể gửi và đọc các tin nhắn SMS bất cứ lúc nào bạn muốn, sẽ không gặp khó khăn gì khi bạn đang ở trong văn phòng hay trên xe bus hay ở nhà…
- Tin nhắn SMS có thể được gửi tới các điện thoại mà tắt nguồn. Nếu như không chắc cho một cuộc gọi nào đó thì bạn có thể gửi một tin nhắn SMS đến bạn của bạn thậm chí khi người đó tắt nguồn máy điện thoại trong lúc bạn gửi tin nhắn đó. Hệ thống SMS của mạng điện thoại sẽ lưu trữ tin nhắn đó rồi sau đó gửi nó tới người bạn đó khi điện thoại của người bạn này mở nguồn.
- Các tin nhắn SMS ít gây phiền phức trong khi bạn vẫn có thể giữ liên lạc với người khác .Việc đọc và viết các tin nhắn SMS không gây ra ồn ào. Trong khi đó, bạn phải chạy ra ngoài khỏi rạp hát, thự viện hay một nơi nào đó để thực hiện một cuộc điện thoại hay trả lời một cuộc gọi. Bạn không cần phải làm như vậy nếu như tin nhắn SMS được sử dụng.
- Các điện thoại di động và chúng có thể được thay đổi giữa các sóng mang Wireless khác nhau. Tin nhắn SMS là một công nghệ rất thành công và trưởng thành. Tất cả các điện thoại mobile ngày nay đều có hỗ trợ nó. Bạn không chỉ có thể trao đổi các tin nhắn SMS đối với người sử dụng mobile ở cùng một nhà cung cấp dịch vụ mạng sóng mang wireless, mà đồng thời bạn cũng có thể trao đổi nó với người sử dụng khác ở các nhà cung cấp dịch vụ khác.
- SMS là một công nghệ phù hợp với các ứng dụng Wireless sử dụng cùng với nó.
- Nói như vậy là do:
Thứ nhất, tin nhắn SMS được hỗ trợ 100% bởi các điện thoại có sử dụng công nghệ GSM. Xây dựng các ứng dụng wireless trên nền công nghệ SMS có thể phát huy tối đa những ứng dụng có thể dành cho người sử dụng.
Thứ hai, các tin nhắn SMS còn tương thích với việc mang các dữ liệu binary bên cạnh gửi các text. Nó có thể được sử dụng để gửi nhạc chuông, hình ảnh, hoạt họa …
Thứ ba, tin nhắn SMS hỗ trợ việc tri trả các dịch vụ trực tuyến. Nghĩa là nó cho phép thực hiện việc chi trả các dịch vụ trực tuyến một cách thuận lợi. Ví dụ như, bạn muốn phát triển một ứng dụng download nhạc chuông mang tính thương mại và thu phí sử dụng từ người sử dụng cho mỗi lần download nhạc chuông đó. Một cách rất thuận lợi để thực thi ứng dụng này đó là sử dụng một số điện thoại từ nhà cung cấp mạng có khả năng tri trả ngược lại tới tiện ích này thông qua việc sử dụng một sóng mang wireless. Và để có thể tải nhạc chuông này người sử dụng phải soạn một tin nhắn có nội dụng cũng như cấu trúc tin nhắn được qui định bởi nhà cung cấp dịch vụ và gửi tin nhắn này tới một số điện thoại đã được tích hợp sẵn chức năng tri trả trực tuyến mà người phát triển ứng dụng xây dựng. Ứng dụng SMS mà bạn sử dụng sau đó sẽ gửi trả lại cho bạn một hay nhiều tin nhắn SMS có kèm theo cả nhạch chuông (chẳng hạn ) và thông báo chi phí phải trả cho việc sử dụng ứng dụng đó. Chi phí này sẽ gồm cả chi phí sử dụng dịch vụ hàng tháng của điện thoại di động này hay là được khấu trừ từ thẻ card dùng di động của bạn. Nó tùy thuộc vào thỏa thuận giữa bạn và người phát triển ứng dụng đó.
3.1.2 CẤU TRÚC MỘT TIN NHẮN SMS
Nội dung của một tin nhắn SMS khi được gửi đi sẽ được chia làm 5 phần như sau :
- Instructions to air interface : chỉ thị dữ liệu kết nối với air interface (giao diện không khí) .
- Instructions to SMSC :chỉ thị dữ liệu kết nối với trung tâm tin nhắn SMSC (short message service centre).
- Instructions to handset : chỉ thị dữ liệu kết nối bắt tay.
- Instructions to SIM (optional) :chỉ thị dữ liệu kết nối, nhận biết SIM
(Subscriber Identity Modules).
- Message body : nội dung tin nhắn SMS.
3.1.3 TIN NHẮN SMS CHUỖI/TIN NHẮN SMS DÀI
Một trong những trở ngại của công nghệ SMS là tin nhắn SMS chỉ có thể mang một lượng giới hạn các dữ liệu. Để khắc phục trở ngại này, một mở rộng của nó gọi là SMS chuỗi (hay SMS dài) đã ra đời. Một tin nhắn SMS dạng text dài có thể chứa nhiều hơn 160 kí tự theo chuẩn dùng trong tiếng Anh. Cơ cấu hoạt động cơ bản SMS chuỗi làm việc như sau: điện thoại di động của người gửi sẽ chia tin nhắn dài ra thành nhiều phần nhỏ và sau đó gửi các phần nhỏ này như một tin nhắn SMS đơn. Khi các tin nhắn SMS này đã được gửi tới đích hoàn toàn thì nó sẽ được kết hợp lại với nhau trên máy di động của người nhận.
Khó khăn của SMS chuỗi là nó ít được hỗ trợ nhiều so với SMS ở các thiết bị có sử dụng sóng wireless.
3.1.4 SMS CENTRE/SMSC
Một SMS Center (SMSC) là nơi chịu trách nhiệm luân chuyển các hoạt động liên quan tới SMS của một mạng wireless. Khi một tin nhắn SMS được gửi đi từ một điện thoại di động thì trước tiên nó sẽ được gửi tới một trung tâm SMS. Sau đó, trung tâm SMS này sẽ chuyển tin nhắn này tới đích (người nhận). Một tin nhắn SMS có thể phải đi qua nhiều hơn một thực thể mạng (netwok) (chẳng hạn như SMSC và SMS gateway) trước khi đi tới đích thực sự của nó. Nhiệm vụ duy nhất của một SMSC là luân chuyển các tin nhắn SMS và điều chỉnh quá trình này cho đúng với chu trình của nó. Nếu như máy điện thoại của người nhận không ở trạng thái nhận (bật nguồn) trong lúc gửi thì SMSC sẽ lưu trữ tin nhắn này. Và khi máy điện thoại của người nhận mở nguồn thì nó sẽ gửi tin nhắn này tới người nhận.
Thường thì một SMSC sẽ họat động một cách chuyên dụng để chuyển lưu thông SMS của một mạng wireless. Hệ thống vận hành mạng luôn luôn quản lí SMSC của riêng nó và ví trí của chúng bên trong hệ thống mạng wireless. Tuy nhiên hệ thống vận hành mạng sẽ sử dụng một SMSC thứ ba có vị trí bên ngoài của hệ thống mạng wireless.Bạn phải biết địa chỉ SMSC của hệ thống vận hành mạng wireless để sử dụng, tinh chỉnh chức năng tin nhắn SMS trên điện thoại của bạn. Điển hình một địa chỉ SMSC là một số điện thoại thông thường ở hình thức, khuôn mẫu quốc tế. Một điện thoại nên có một thực đơn chọn lựa để cấu hình địa chỉ SMSC. Thông thường thì địa chỉ được điều chỉnh lại trong thẻ SIM bởi hệ thống mạng wireless. Điều này có nghĩa là bạn không cần phải làm bất cứ thay đổi nào với cả.
3.1.5 NHẮN TIN SMS QUỐC TẾ
Các tin nhắn SMS giữa các nhà điều hành được chia ra làm hai hạng mục gồm tin nhắn SMS giữa các nhà điều hành cục bộ và tin nhắn SMS giữa các nhà điều hành quốc tế với nhau. Tin nhắn SMS giữa các nhà điều hành cục bộ là tin nhắn mà được gửi giữa các nhà điều hành trog cùng một quốc gia còn tin nhắn SMS giữa các nhà điều hành quốc tế là tin nhắn SMS được gửi giữa các nhà điều hành mạng wireless ở những quốc gia khác nhau. Thường thì chi phí để gửi một tin nhắn SMS quốc tế thì cao hơn so với gửi trong nước. Và chi phí gửi tin nhắn trong nội mạng thì ít hơn so với gửi cho mạng khác trong cùng một quốc gia <= chi phí cho việc gửi tin nhắn SMS quốc tế. Khả năng kết hợp của tin nhắn SMS giữa hai mạng wireless cục bộ hay thậm chí là quốc tế là một nhân tố chính góp phần tới sự phát triển mạnh mẽ của hệ thống SMS toàn cầu.
3.1.6 SMS GATEWAY
Một khó khăn của tin nhắn SMS là các SMSC được phát triển, xây dựng bởi các công ty sử dụng giao thức truyền thông riêng của họ và hấu hết các giao thức này đều thuộc quyền sở hữu. Chẳng hạn như Nokia có một SMSC protocol được gọi là CIMD nhưng một nhà điều hành như CMG lại có SMSC protocol được gọi là EMI. Chúng ta không thể kết nối hai SMSC nếu như chúng không được hỗ trợ giao thức SMSC chung. Để giải quyết khó khăn này, một SMS gateway được đặt giữa hai SMSC ra đời. Gateway này sẽ được minh họa ở hình dưới. SMS gateway hoạt động như một relay giữa hai SMSC. Nó chuyển đổi thông tin dữ liệu từ một SMSC protocol SMS sang một SMSC protocol khác. Giải pháp này được sử dụng cho hai sóng mang wireless khác nhau để kết nối liên thông giữa các SMSC, Như thế các tin nhắn SMS từ các nhà cung cấp mạng khác nhau có thể gửi cho nhau mà không gặp trở ngại nào.
Hình 4 Một SMS gateway hoạt động như một relay giữa hai SMSC
Bên cạnh các sóng mang wireless, các nhà cung cấp và những người phát triển các ứng dụng SMS còn có thể phát triển một SMS gateway hữu ích. Chúng ta sẽ xem xét ở tình huống sau. Giả sử bạn là nhà phát triển một ứng dụng tin nhắn SMS dạng text. Để gửi và nhận các tin nhắn SMS trên sever của bạn, một giải pháp là kết nối các SMSC của các sóng mang wireless. Các sóng mang wireless khác nhau có thể được sử dụng SMSC từ các nhà cung cấp dịch vụ khác nhau. Điều đó có nghĩa là ứng dụng tin nhắn SMS dạng text của bạn cần được hỗ trợ SMSC đa dụng- các protocol chuyên dụng. (Điều này được mô tả trong hình dưới). Và kết quả là thời gian phát triển và độ phức tạp của các ứng dụng tin nhắn SMS dạng text tăng. Hình 52 Một ứng dụng tin nhắn SMS dạng text kết nối các SMSC không cần SMS gateway. Hình 52 Một ứng dụng tin nhắn SMS dạng text kết nối các SMSC không cần SMS gateway.
Hình 5 Một ứng dụng tin nhắn SMS dạng text kết nối các SMSC không cần
SMS gateway.
Để giải quyết khó khăn trên một SMS gateway được thiết lập để thực thi các kết nối SMSC với nhau. Ngày nay, các ứng dụng tin nhắn SMS dạng text chỉ cần biết làm như thế nào để kết nối với SMS gateway. Để hỗ trợ cho các SMSC nhiều hơn nữa, bạn chỉ cần tinh chỉnh các thiết lập cài đặt cho SMS gateway và không cần phải thay đổi mã nguồn của ứng dụng tin nhắn SMS dạng text đó. Như thế việc sử dụng SMS gateway có thể rút ngắn thời gian của sự phát triển các ứng dụng tin nhắn SMS dạng text.
Để kết nối một SMS gateway, chúng ta phải sử dụng một SMSC protocol chẳng hạn như SMPP và CIMD. Một vài SMS gateway còn hỗ trợ giao diện HTTP/HTPS. HTTP/HTPS thì sử dụng dễ hơn so với SMSC protocol. Và khó khăn ở đây là nó không có nhiều chức năng hỗ trợ SMS. Chẳng hạn như một SMS gateway thì không hỗ trợ việc gửi các tin nhắn có nội dung chứa bức ảnh thông qua giao diện HTTP/HTTPS.
Hình 6 Một ứng dụng tin nhắn SMS dạng text kết nối các SMSC thông qua
một SMS gateway.
Có một cách khác để gửi và nhận tin nhắn Bên cạnh việc sử dụng kết nối trực tiếp tới SMSC của một sóng mang wireless. SMS dạng text trên máy tính đó là sử dụng một điện thoại di động hay một modem GSM/GPRS. Để làm được chức năng này thì ứng dụng tin nhắn SMS dạng text phải kết nối, giao tiếp được với điện thoại di động hay modem GSM/GPRS bằng cách sử dụng các lệnh AT command.
Một vài SMS gateway có tương thích với giao tiếp kết nối của điện thoại di động hay moidem GSM/GPRS. Để gửi và nhận các tin nhắn SMS dạng text từ một điện thoại di động hay một GSM/GPRS modem thì ứng dụng tin nhắn SMS dạng text thì ứng dụng tin nhắn SMS chỉ cần biết cách giao tiếp với SMS gateway và không cần phải biết về lệnh AT command.
Hình 7 Một ứng dụng tin nhắn SMS dạng text kết nối một nhóm các điện thoại
(hay các modem thông qua SMS gateway).
3.1.7 MÃ NGUỒN MỞ VÀ PHẦN MỀM SMS GATEWAY
Như đã nói ở trên thì một SMS gateway có nhiều chức năng rất trong hệ thống tin nhắn SMS. Vì vậy, phần mềm dành cho SMS gateway có thể rất phức tạp và phần mềm khá phức tạp này thì thừơng rất đắt. May mắn là có một gói phần mềm SMS gateway mã nguồn mở có thể được dowload miễn phí từ web. Gói phần mềm SMS gateway miễn phí chất lượng cao này chính là Kannel, nó được viết bằng ngôn ngữ C. Kannel có thể giao tiếp kết nối với các SMSC, điện thoại di động và các GSM/GPRS modem. Nó có giao diện HTTP/HTTPS dành cho việc gửi và nhận các tin nhắn SMS.
3.2. TỔNG QUÁT HỆ THỐNG TRUYỀN DỮ LIỆU
Không giống với việc truyền thông tin bằng cách phát và thu tín hiệu tương tự như âm thanh và hình ảnh, việc truyền dữ liệu được thực hiện bằng cách phát tuần tự (liên tiếp) các mã nhị phân lên đường truyền. Các mã này được tạo ra, lưu trữ và xử lí bởi các máy tính và các ngoại vi.
Đường truyền dùng để truyền dữ liệu là các đường truyền số (digital) nghĩa là tín hiệu chỉ có thể ở một trong hai trạng thái khác biệt được biểu thị bằng mức logic 0 hoặc 1. Trong khi đó tín hiệu tương tự có thể chiếm một trạng thái bất kì trên một dải liên tục.
3.2.1 Cấu trúc một hệ thống thông tin
Sơ lược các khối trong hệ thống:
Hình 8 Sơ đồ một hệ thống thông tin
- Nguồn tín hiệu:
Là tín hiệu cần truyền đi, có thể là tín hiệu không điện hoặc tín hiệu điện. Do vậy, cần phải có một bộ chuyển đổi các tín hiệu không điện thành tín hiệu điện trước khi đưa lên đường truyền. Thông thường dùng các cảm biến để dò lấy tín hiệu này và thực hiện quá trình chuyển đổi thành tín hiệu điện.
- Khối truyền tin:
Nhận tín hiệu điện từ nguồn tín hiệu đưa đến sau đó thực hiện sự biến đổi cho phù hợp với đường truyền trước khi phát lên đó.
Khối này thường gồm: mạch điều chế tín hiệu, một bộ dồn kênh, bộ phát tín
hiệu.
- Đường truyền:
Có nhiều dạng như đường truyền hữu tuyến, vô tuyến, tương tự, số…
Bản chất của đường truyền có ảnh hưởng rất nhiều khối khác trong sơ đồ.
- Khối nhận tin:
Nhận lấy tín hiệu từ đường truyền gửi xuống và thực hiện việc chuyển đổi nhằm lấy lại thông tin ban đầu.
Khối nhận tin thường gồm: một bộ giải điều chế tín hiệu (tách sóng mang), một
bộ phân kênh tín hiệu.
- Cơ cấu chấp hành:
Nhận tín hiệu từ khối nhận tin đưa đến sau đó biến đổi đại lượng điện đầu vào thành đại lượng đồng dạng với đại lượng vào của nguồn tín hiệu.
Cơ cấu chấp hành có thể là một màn hình hiển thị hoặc loa, rờle dể đóng ngắt thiết bị …
3.2.2 Phân loại các hệ thống thông tin
3.2.2.1. Phân loại theo đường truyền
- Đường truyền hữu tuyến.
- Đường truyền vô tuyến.
3.2.2.2. Phân loại theo tín hiệu trên đường truyền
- Tín hiệu tương tự.
- Tín hiệu số.
3.2.2.3. Phân loại theo số bit trên một đường dây
- Mỗi bit chiếm lấy một đường truyền (song song):
Dữ liệu gồm nhiều bit sẽ xuất đồng thời trên đường truyền.
- Nhiều bit trên một đường truyền (nối tiếp):
Các bit sẽ nối tiếp nhau xuất hiện trên một đường truyền duy nhất.
3.2.2.4. Phân loại dựa vào xung nhịp đồng hồ Ck của bộ phát và bộ thu
- Truyền đồng bộ: khi xung nhịp nơi phát và nơi thu như nhau và cùng góc pha.
+ Ưu điểm của cách truyền này là tốc độ truyền rất cao nhưng độ an toàn về thông tin khá thấp (sai vài bit). Việc chi phí cho thiết kế đường truyền khá cao.
- Truyền bất đồng bộ: khi xung nhịp nơi phát và thu không cần giống nhau.
+ Theo phương pháp này, dữ liệu được truyền đi với tốc độ chậm hơn nhưng
độ an toàn cao, đặc biệt chi phí cho việc thiết kế đường truyền tương đối thấp, thích hợp cho truyền xa.
3.2.2.5. Phân loại theo chiều tín hiệu trên đường truyền
- Loại đơn công: tín hiệu chỉ truyền theo một chiều duy nhất mà không có chiều ngược lại.
- Loại song công: tín hiệu có thể truyền theo cả hai chiều một cách đồng thời.
- Loại bán song công: tín hiệu có thể truyền theo hai chiều nhưng không cùng lúc, tức là phải thay đổi luân phiên.
3.2.3 Giao tiếp song song bất đồng bộ
3.2.3.1. Sơ đồ khối:
Hình 9 Sơ đồ kết nối thu phát dữ liệu
Khi truyền dữ liệu với tốc độ từ thấp đến trung bình trên khoảng cách ngắn người ta có thể dùng đường truyền song song bất đồng bộ. Ví dụ, như việc kết nối một máy tính với một thiết bị ngoại vi như máy in. Hệ thống giao tiếp song song bất đồng bộ này có đặc điểm là: mỗi bit chiếm lấy một đường truyền và xung đồng bộ nơi phát không nhất thiết phải bằng xung đồng bộ của nơi thu. Do đó, ngoài các đường dây cho các bit còn cần thêm các đường tín hiệu để thực hiện việc bắt tay giữa phần phát và phần thu.
Giả sử thực hiện việc truyền song song 8 bit thì ít nhất có 9 đường dây (một đường mass giữa phần phát và phần thu).
Để nơi phát và thu có thể truyền và thu được chính xác dữ liệu thì nhất thiết phải cần đến các tín hiệu bắt tay: Strobe, Ack và Busy\ . DO ÷ D7 : là các đường dữ liệu (data bus). Strobe, Ack, Busy\: là các đường tín hiệu bắt tay nhằm phối hợp giữa phần phát và phần thu.Strobe : do máy phát gửi ra nhằm báo cho máy thu biết rằng đã có dữ liệu gửi ra trên đường truyền DO ÷ D7 . ACK : do phần phát đưa ra nhằm báo cho phần phát biết rằng phần thu đã thu xong một kí tự. Busy : là tín hiệu do phần thu đưa ra nhằm báo cho phần phát biết rằng phần thu đang bận với một tác vụ nào đó nên chưa thể thu được kí tự tiếp theo.
Ví dụ một quá trình truyền dữ liệu giữa máy tính và máy in:- CPU chờ cho tới khi đường tín hiệu Busy\ lên mức cao tức là máy in đã sẵn sàng nhận dữ liệu.
- CPU xuất mã của kí tự kế tiếp ra port song song.
- Sau đó, CPU đưa xung Strobe lên ‘1’. Tín hiệu này báo cho máy in biết rằng đã có dữ liệu mới trên đường truyền.
- Máy in tiến hành nhận dữ liệu và khi đã hoàn tất công việc liên quan đến kí tự cuối cùng nó sẽ trả Busy\ về mức cao. Máy in đưa xung ACK lên cao để báo cho CPU biết nó đang sẵn sàng nhận kí tự tiếp theo.
3.2.3.2. Hoạt động của hệ thống:
- Phần phát:
- Đọc giá trị của đường Busy\ cho đến khi Busy\ = ‘1’ tức là phần thu không bận
- Sau đó phần phát gửi data ra bus dữ liệu.
- Cho chân Strobe = ‘1’ để báo cho phần thu biết kí tự đã sẵn sàng.
- Đọc chân ACK cho đến khi chân này lên ‘1’ tức là phần thu đã thu xong kí tự.
- Cho chân Strobe = ‘0’ để tránh trường hợp phần thu thu thêm một lần nữa.
- Chuẩn bị dữ liệu kế tiếp theo để xuất đi nếu như chưa truyền hết.
- Phần thu:
- .................................................
Outputdata là danh sách các biến, hằng hay biểu thức để báo cho SEROUT biết dữ liệu xuất ra có dạng thế nào. SEROUT có thể truyền riêng lẻ hay lặp lại bytes, chuyển giá trị thành dạng Decimal, Hex hay biểu diễn dưới dạng Binary, hoặc truyền chuỗi String của Bytes tử biến mảng, và cấu trúc CDATA. Ta còn có thẻ kết hợp để tạo danh sách OutputData
SERIN
Cú pháp:
SERIN Rpin { \ Fpin } , Baudmode , { Plabel, } { Timeout , Tlabel, } [ InputData ]
Chức năng:
Dùng để nhận dữ liệu nối tiếp không dồng bộ.
Hoạt động:
Rpin là chân cố định được chỉ định là chân I/O dùng cho truyền dữ liệu nối tiếp. Chân này sẽ được đặt vào chế độ ngõ vào trong lúc hoạt động.
Baudmode có thể là 1 biến hay hằng hay một biểu thức(0 – 65535) mà được định ra để chỉ tốc độ hoạt động của thiết bị
Plabel là một tùy chọn cho nhãn, nơi chương trình nhảy đến trong trường hợp của một lỗi chẵn lẻ. Khi ta dùng Parity Bit
Timeout là một tùy chọn biến hay hằng(0-65535) để báo cho SERIN thời gian chờ bao lâu để cho việc nhận dữ liệu. Nếu dữ liệu không đến lúc đó thì chương trình sẽ nhảy đến một nhãn Tlabel
Tlabel : nhãn phải được sử dụng cùng với Timeout. InputData là danh sách các biến để báo SERIN biết phải làm gì với dữ liệu. SERIN có thể lưu trữ dữ liệu trong một biến, mảng, hoặc một mảng chuỗi bằng cách sử dụng STR.
Chú ý:
Một trong những dạng truyền thông tin phổ biến nhấ giữa các thiết bị điện tử là Serial Communication. Trong đó có 2 dạng được sử dụng là truyền Đồng bộ hayKhông đồng bộ. các lệnh The RSIN, RSOUT, SERIN and SEROUT,tất cả đều được dùng cho việc gửi và nhận dữ liệu nối tiếp không đồng bộ. Trong khi các lệnh SHIN and SHOUT dùng cho việc truyền dữ liệu đồng bộ
Việc truyền dữ liệu Không đồng bộ đồng nghĩa với việc không dùng đường tách xung. Dữ liệu có thể được gửi đi chỉ với 2 dây, một dây dữ liệu và một dây cho nối đất. Serial Port của máy tính(PC) còn được gọi là cổng RS232 hay cổng COM được dùng cho việc truyền dữ liệu không đồng bộ nối tiếp. Còn đối với truyền tin theo kiểu đồng bộ nối tiếp thì ta dùng 3 dây, trong đó ngoài dây dư liệu và đất còn có thêm dây xung cho việc đồng bộ.
Khi dùng RS232 để truyền tin thì ta cần phải lưu ý đến đặc tính điện của nó. Không như những chuẩn Logic TTL với mức điện áp 5V cho 1 và 0V cho 0. RS232 dùng điện áp -12V cho mức logic 1 và 12V cho mức logic 0. Đặc tính này ho phép ta có thể truyền thông qua một sợi dây dài mà không cần bộ khuếch đại.
Hầu hết các mạch làm việc với RS232 cần phải có bộ chuyển đổi mức điện áp từ ±12V thành 0V và 5V và ngược lại. Thường dùng nhất là IC Max232.
Truyền dữ liệu Không đồng bộ nối tiếp phải hồi đáp vào thời gian chính xác. Cả bộ gửi và nhận phải được đặt cùng thời gian, tức là phải cùng một tốc độ truyền còn được gọi là tốc độ Baud (Baudrate).
SEROUT yêu cầu một giá trị được gọi là Baudmode để báo các đặc điểm thích hợp cho dữ liệu đến, như chu kì bit period, số Bit và parity bits với tốc độ truyền từ mức thấp nhất là 300 Baud đến hơn 38K Baud (phụ thuộc vào tần số của thạch anh).
Nếu việc truyền tin có hỗ trợ bởi phần cứng hoặc phần mềm thì việc lựa chọn tốc độ Baud sẽ là quan trọng. nói chung, chế độ 7-bit/even-parity là dùng cho văn bản, còn 8-bit/no-parity có việc truyền dữ liệu theo Byte. Hầu hết người ta sử dụng chế độ chung là 8-bit/no-parity, hầu hết các thiết bị sử dụng chế độ 7 Bit data vì có thể lợi dụng đặc tính kiểm tra lỗi trong đường truyền, nhưng sử dụng nó sẽ làm mất đi 1 bit dữ liệu. Điều này có nghĩa là dữ liệu Byte đến được truyền trong 7 Bit/even parity có thể biểu diễn từ 0-127, nhỏ hơn nhiều so với 0-255 của chế độ 8 bit.
Phần mềm biên dịch cho phép lựa chọn 1 Bit parity với 4 đền 8 Bit dữ liệu. Sử dụng lệnh khai báo Declare:
Không có Parity Bit :
DECLARE SERIAL_DATA 4 ' Dữ liệu 4 Bit
DECLARE SERIAL_DATA 5 ' Dữ liệu 5 Bit
DECLARE SERIAL_DATA 6 ' Dữ liệu 6 Bit
DECLARE SERIAL_DATA 7 ' Dữ liệu 7 Bit
DECLARE SERIAL_DATA 8 ' Dữ liệu 8 Bit (Mặc Định)
Nếu có Parity Bit :
DECLARE SERIAL_DATA 5 ' Dữ liệu 4 Bit
DECLARE SERIAL_DATA 6 ' Dữ liệu 5 Bit
DECLARE SERIAL_DATA 7 ' Dữ liệu 6 Bit
DECLARE SERIAL_DATA 8 ' Dữ liệu 7 Bit (Mặc Định)
DECLARE SERIAL_DATA 9 ' Dữ liệu 8 Bit
Đặt loại Parity cho SERIN và SEROUT. Khi Parity được cho phép, phần trình bày phải chọn nó là ODD hay EVEN. Nếu Parity được cho phép nhưng SERIAL_PARITY DECLARE không được cấp trong chương trình thì mặc định là EVEN Parity.
DECLARE SERIAL_PARITY = EVEN
DECLARE SERIAL_PARITY = ODD
Các dạng Dữ Liệu gửi được trình bày
BIN{1..32} gửi dữ liệu nhị phân
DEC{1..10} gửi dữ liệu thập phân
HEX{1..8} dữ liệu Hex
SBIN{1..32} dữ liệu nhị phân không dấu
SDEC{1..10} dữ liệu thập phân không dấu
SHEX{1..8} dữ liệu thập lục phân không dấu
Sử dụng kiểu chuỗi với SEROUT
Các lệnh STR được sử dụng để chuyển thành một chuỗi ký tự từ một mảng byte. Một chuỗi là một bộ các ký tự được sắp xếp hay truy cập nhất định trong một trật tự. Các ký tự "ABC" sẽ được lưu trữ trong một chuỗi với "A" đầu tiên, theo sau là "B" sau đó theo sau là "C". Một mảng byte là một khái niệm tương tự với một chuỗi; nó chứa dữ liệu được sắp xếp trong một trật tự. Mỗi phòng trong số yếu tố trong một mảng có cùng kích cỡ. Chuỗi "ABC" sẽ được lưu trữ trong một mảng byte chứa ba byte (yếu tố).
5 Byte
DIM SerString[10] AS BYTE ' tạo mảng 10 Byte.
SERIN PORTA.0,16468,[ STR SerString\5 ]'chọn 5 Byte
đầu của mảng.
Lưu ý rằng chúng ta sử dụng các tùy chọn \ n của STR. Nếu chúng ta không chỉ định, các PICmicro sẽ tiếp tục gửi cho đến khi tất cả các ký tự 10 byte của mảng được truyền, hoặc nó tìm thấy một byte bằng 0 (NULL).
Lệnh đọc giá trị từ bộ ADC
Cú pháp:
Variable = ADIN channel number
Biến = ADIN kênh
Chức năng:
Dùng để đọc giá trị từ tín hiệu Analoge chuyển sang tín hiệu số
Hoạt động:
Biến là do người dùng định nghĩa
Chân của kênh do người dùng chọn
Ví dụ:
' Đọc giá trị từ kênh 0 của ADECLARE và đặt kết quả lưu trong biến
DECLARE ADIN_RES 10 ' lưu kết quả tron 10 bit
DECLARE ADIN_TAD FRC ' RC OSC được chọn
DECLARE ADIN_STIME 50 ' thời gian lấy mẫu 50us
DIM VAR1 as WORD
TRISA = %00000001 ' Set analogue input on PORTA.0
ADECLAREON1 ADCON1 = %10000000 ' Cấu hình AN0
(PORTA.0) như ngõ vào
ADECLAREON0 = %11000001
VAR1 = ADIN 0 ' đặt kết quả vào VAR1
Có 3 loại DECLARE dùng để lưu kết quả là :
DECLARE ADIN_RES 8 , 10 , or 12.
‘Đặt số Bit cho kết quả.
Nếu DECLARE không được dùng thì mặc định là 8 Bit cho Pic16F877A.Cho ví dụ nếu là họ Pic16F87X thì kết quả có độ phân giải 10 bit, trong khi loại này mặc đinh sẽ xuất ra kết quả 8 Bit. Nhưng khi ta dùng DECLARE thì có thể khai báo dùng 10 Bit và khi khai báo DECLARE thì thiết bị cho phép lưu kết quả 8 Bit nhưng không lưu được kết quả 12 Bit cho loại VDK có độ phân giải 10 Bit này
DECLARE ADIN_TAD 2_FOSC , 8_FOSC , 32_FOSC , or FRC.
‘đặt xung clock cho ADECLARE
Việc lựa chọn nguồn xung này cũng ảnh hưởng đến thời gian chuyển đổi dữ liệu và có thể không được chuyển đổi chính xác.
DECLARE ADIN_STIME 0 to 65535 microseconds (us).
Cho phép tụ giữ bên trong VDK được nạp đầy trước khi lấy mẫu. điều này có thể là 1 giá trị từ 0 đến 65535(us)
Một giá trị đặc trưng cho ADIN_STIME là từ 50 đến 100. Điều này cho phép tương thích với thời gian nạp mà không ảnh hưởng nhiều đến thời gian chuyển đổi
Chú ý là trước khi lệnh ADIN được sử dụng thì thanh ghi TRISA phải cho phép các chân nhận dữ liệu tương ứng là ngõ vào
Ví dụ :
Again: VAR1 = ADIN 3 ' Place the conversion into variable VAR1
DELAYUS 1 ' Wait for 1us
GOTO Again ' Read the ADECLARE forever
III. TẬP LỆNH AT COMMAND
1. LỊCH SỬ PHÁT TRIỂN
Các modem được sử dụng từ những ngày đầu của sự ra đời của máy tính. Từ Modem là một từ được hình thành từ hai từ modulator và demodulator. Và định nghĩa đặc trưng này cũng giúp ta hình dung được phần nào là thiết bị này sẽ làm cái gì. Dữ liệu số thì đến từ một DTE, thiết bị dữ liệu đầu cuối được điều chế theo cái cách mà nó có thể được truyền dữ liệu qua các đường dây truyền dẫn. Ở một mặt khác của đường dây, một modem thứ hai điều chế dữ liệu đến và xúc tiến, duy trì nó.
Các modem ngày xưa chỉ tương thích cho việc gửi và nhận dữ liệu. Để thiết lập một kết nối thì một thiết bị thứ hai như một dialer thì được cần đến. Đôi khi kết nối cũng được thiết lập bằng tay bằng cách quay số điện thoại tương ứng và một khi modem được bật thì kết nối coi như được thực thi. Vấn đề này thì không có gì cần phải bàn cãi trong những ngày trước đây khi mà máy tính được sử dụng bởi những nhà kỹ thuật khéo léo, modem và các máy tính lớn. Các máy tính loại nhỏ ở các năm 70 thâm nhập vào thị trường là các gia đình, cùng với chi phí thì sự thiếu hụt về kiến thức kỹ thuật trở thành một đề tài cần thảo luận.
Chúng ta đang nói về tuổi đời khi Internet, tele-banking và các ứng dụng truyền thông phổ biến khác khi mà chúng ta biết chúng bây giờ không còn tồn tại nữa rồi. Lí do chính của mọi người còn sử dụng modem đó là để kết nối với BBSes, Bullitin Board Systems. Các hệ thống máy tính chính thống được sử dụng bởi các công ty và các tính nguyện viên nơi mà mọi người có thể giao tiếp với người khác bằng cách sử dụng các board thông tin và up rồi download phần mềm cùng với các tiện tính. Với chi phí thấp thì dễ dàng cho việc sử dụng các modem, nó làm cho cộng việc này trở thành có thể thực thi. Ở điều kiện lí tưởng, các modem có thể quay các số điện thoại mong muốn mà không cần có giao diện dành cho người dùng hay một bộ quay số bên ngoài
Khi chúng ta xem trong RS232 port layout thì chuẩn RS232 miêu tả một kênh truyền thông với bộ kết nối 25 chân DB25, nó được thiết kế để thực thi quá trình truyền các lệnh điều khiển đến modem được kết nối với nó. Thao tác này bao gồm cả các lệnh quay một số điện thoại rõ ràng nào đó. Không may đó là các quá trình thực thi dùng RS232 với chi phí thấp này chỉ thể hiện trên các máy tính ở các hộ gia đình trong những năm 70, và kênh truyền thông thứ hai không được thực thi. Thế nên nhất thiết phải có một phương pháp đươc thiết lập để sử dụng kênh dữ liệu hiện tại để không chỉ truyền dữ liệu từ một điểm đầu cuối này tới một điểm đầu cuối khác mà nó còn có thể điều khiển lệnh nhắm tới modem duy nhất. Dennis Hayes đã đưa giải pháp cho vần đềnày trong năm 1977. Modem thông minh (Smartmodem) của ông sử dụng chuẩn truyền thông RS232 đơn giản kết nối tới một máy tính để truyền cả lệnh và dữ liệu . Bởi vì mỗi lệnh bắt đầu với chữ AT trong chữ Attention nên ngôn ngữ điều khiển được định nghĩa bởi Hayes nhanh chóng được biết tới với bộ lệnh Hayes AT. Chính vì sự đơn giản và khả năng thực thi với chi phí thấp của nó, bộ lệnh Hayes AT nhanh chóng được sử dụng phổ biến trong các modem của các nhà sản xuất khác nhau. Khi chức năng và độ tích hợp của các modem ngay càng tăng cùng với thời gian, nên làm cho ngôn ngữ lệnh Hayes AT và nhanh chóng mỗi nhà sản xuất modem đã sử dụng ngôn ngữ của riêng ông ấy. Ngày nay, bộ lệnh AT bao gồm cả các lệnh về dữ liệu, fax, voice và các truyền thông SMS.
Các lệnh AT là các hướng dẫn được sử dụng để điều khiển một modem. AT là một cách viết gọn của chữ Attention. Mỗi dòng lệnh của nó bắt đầu với “AT” hay “at”. Đó là lí do tại sao các lệnh Modem được gọi là các lệnh AT. Nhiều lệnh của nó được sử dụng để điều khiển các modem quay số sử dụng dây mối (wired dial-up modems), chẳng hạn như ATD (Dial), ATA (Answer), ATH (Hool control) và ATO (return to online data state), cũng được hỗ trợ bởi các modem GSM/GPRS và các điện thoại di động.
Bên cạch bộ lệnh AT thông dụng này, các modem GSM/GPRS và các điện thoại di động còn được hỗ trợ bởi một bộ lệnh AT đặc biệt đối với công nghệ GSM. Nó bao gồm các lệnh liên quan tới SMS như AT+ CMGS (gửi tin nhắn SMS), AT+CMSS (gửi tin nhắn SMS từ một vùng lư trữ), AT+CMGL (chuỗi liệt kê các tin nhắn SMS) và AT+CMGR (đọc tin nhắn SMS)
Chú ý là khởi động “AT” là một tiền tố để thông báo tới modem về sự bắt đầu của một dòng lệnh. Nó không phải là một phần của tên lệnh AT. Ví dụ như D là một tên lệnh AT thực tế trong ATD và +CMGS là tên một lệnh AT thực tế trong AT+CMGS. Tuy nhiên, một số sách hay một số trang web lại sử dụng chúng thay cho nhau như là tên của một lệnh AT.
Sau đây là một vài nhiệm vụ có thể được hoàn thành bằng cách sử dụng các lệnh AT kết hợp với sử dụng 1 modem GSM/GPRS hay một điện thoại di động:
- Lấy thông tin cơ bản về điện thoại di động hay modem GSM/GPRS. Ví dụ như tên của nhà sản xuất (AT+CGMI), số model (AT+CGMM), số IMEI (International Mobile Equipment Identity) (AT+CGSN) và phiên bản phần mềm (AT+CGMR).
- Lấy thông tin trạng thái hiện tại của điện thoại di động hay modem GSM/GPRS. Ví dụ như trạng thái hoạt động của điện thoại (AT+CPAS), trạng thái đăng kí mạng mobile (AT+CREG), chiều dài sóng radio (AT+CSQ), mức sạc bin và trạng thái sạc bin (AT+CBC).
- Thiết lập một kết nối dữ liệu hay kết nối voice tới một remote điều khiển (ATD, ATA,..)
- Gửi và nhận fax (ATD, ATA,AT+F*)
- Gửi (AT+CMGS, AT+CMSS), đọc (AT+CMGR, AT+CMGL), viết
(AT+CMGW) hay xóa tin nhắn SMS (AT+CMGD) và nhận các thông báo của các tin nhắn SMS nhận được mới nhất (AT+CNMI).
- Đọc (AT+CPBR), viết (AT+CPBW) hay tìm kiếm (AT+CPBF) cá mục về danh bạ điện thoại (phonebook).
- Thực thi các nhiệm vụ liên quan tới an toàn, chẳng hạn như mở hay đóng các khóa chức năng (AT+CLCK), kiểm tra xem một chức năng được khóa hay chưa (AT+CLCK) và thay đổi password (AT+CPWD).(Các ví dụ về khóa chức năng: khóa SIM [một password phải được cho vào thẻ SIM mỗi khi điện thoại được mở] và khóa PH-SIM [một thể SIM nào đó có liên kết tới điện thoại, và để sử dụng được các thẻ SIM khác thì buộc phải đăng nhập một password vào trong nó].)
- Điều khiển hoạt động của các mã kết quả/các thông báo lỗi của các lệnh AT. Ví dụ, bạn có thể điều khiển cho phép hay không cho phép kích hoạt hiển thị thông báo lỗi (AT+CMEE) và các thông báo lỗi nên được hiển thị theo dạng số hay theo dạng dòng chữ (AT+CMEE=1 hay AT+CMEE=2).
- Thiết lập hay thay đổi cấu hình của điện thoại di dộng hay modem GSM/GPRS. Ví dụ, thay đổi mạng GSM (AT+COPS), loại dịch vụ của bộ truyền tin (AT+CBST), các thông số protocol liên kết với radio (AT+CRLP), địa chỉ trung tâm SMS (AT+CSCA) và khu vực lưu trữ các tin nhắn SMS (AT+CPMS).
- Lưu và phục hồi các cấu hình của điện thoại di động hay modem GSM/GPRS. Ví du, lưu (AT+COPS) và phục hồi (AT+CRES) các thiết lập liên quan tới tin nhắn SMS chẳng hạn như địa chỉ trung tâm tin nhắn SMS.
Chú ý là nhà sản xuất điện thoại di động thường không thi hành tất cả các lệnh AT, các thông số lệnh và các giá trị của tham số trong các điện thoại di động. Trạng thái hành vi của các lệnh AT thực thi có thể cũng khác so với các định nghĩa chuẩn trước đó. Nói chung, các modem GSM/GPRS được thiết kế dành cho các ứng dụngwireless mà có được các hỗ trợ tốt về các lệnh AT hơn là các điện thoại di động thông thừơng khác.
Thêm vào đó, một vài lệnh AT yêu cầu sự hỗ trợ từ các tổng đài của mạng di động. Ví dụ, SMS thông qua GPRS có thể được kích hoạt trên các điện thoại di động có sử dụng GPRS và các modem GPRS với lệnh +CGSMS (tên lệnh ở dạng text: Select Service for MO SMS Messages). Nhưng nếu tổng đài mạng điện thoại không hỗ trợ quá trình truyền dẫn SMS thông qua GPRS, thì bạn không thể sử dụng chức năng này được.
2. MODEM GSM & MODEM GPRS:
2.1. Modem GSM
Một modem GSM là một modem wireless, nó làm việc cùng với một mạng wireless GSM. Một modem wireless thì cũng hoạt động giống như một modem quay số. Điểm khác nhau chính ở đây là modem quay số thì truyền và nhận dữ liệu thông qua một đường dây điện thoại cố định trong khi đó một modem wireless thì gửi và nhận dữ liệu thông qua sóng radio .
Một modem GSM có thể là một thiết bị mở rộng bên ngoài hay một PC Card/PCMCIA Card. Điển hình đó là một modem GSM rời bên ngoài được kết nối với một máy tính thông qua một cáp nối tiếp hay một cáp USB. Một modem GSM hợp chuẩn với một PC Card/PCMCIA Card được thiết kế cho việc sử dụng với môt máy tính laptop. Nó được gắn vào một trong những khe cắm PC Card/PCMCIA Card của một máy tính laptop.
Giống như một điện thoại di động GSM, một modem GSM yêu cầu 1 thẻ SIM với một sóng mang wireless để hoạt động.
Như đã đề cập trong mục trước đó về hướng dẫn về SMS, các máy tính sử dụng lệnh AT để điều khiển modem. Cả hai modem GSM và modem quay số đều có hỗ trợ một bộ các lệnh AT chuẩn chung. Vì thế bạn có thể sử dụng modem GSM hay modem quay số đều được.
Bổ trợ cho các lệnh AT chuẩn, các modem GSM còn hỗ trợ một bộ lệnh AT mở rộng. Những lệnh AT mở rộng này được định nghĩa trong các chuẩn của GSM. Với các lệnh AT mở rộng này,bạn có thể làm một số thứ như sau:
+ Đọc,viết, xóa tin nhắn
+ Gửi tin nhắn SMS
+ Kiểm tra chiều dài tín hiệu
+ Kiểm tra trạng thái sạc bin và mức sạc của bin.
+ Đọc, viết và tìm kiếm về các mục danh bạ
Số tin nhắn SMS có thể được thực thi bởi một modem SMS trên một phút là rất thấp, nó chỉ khoảng từ 6 đến 10 tin nhắn SMS trong 1 phút.
2.2. Modem GPRS :
Một modem GPRS là một modem GSM mà có hỗ trợ thêm cộng nghệ GPRS cho việc truyền dữ liệu. GPRS hỗ trợ cho Dịch Vụ Radio Gói Đầy Đủ (General Packet Radio Service). Nó là một công nghệ truyền gói tin và là một mở rộng của GSM (GSM là một công nghệ chuyển mạch). Một ưu điểm đáng kể của GPRS trên nền GSM đó là GPRS có tốc độ truyền dữ liệu cao hơn.
GPRS có thể được sử dụng giống như một bộ truyền tin của SMS. Nếu như SMS trên nền GPRS được sử dụng thì nó có thể đạt tới tốc độ truyền là 30 tin nhắn SMS trong một phút. Điều này cho thấy nó thực thi nhanh hơn nhiều so với sử dụng SMS trên nền GSM (với GSM thì tốc độ truyền chỉ khoảng 6 tới 10 tin nhắn SMS trong một phút). Cần phải có modem GPRS để truyền và nhận tin nhắn SMS trền nền GPRS. Và cần chú ý là một vài sóng mang wireless không hỗ trợ việc gửi và nhận tín nhắn SMS trên nền GPRS. Nếu như chúng ta cần gửi hay nhận các tin nhắn SMS thì cần phải có một modem GPRS chuẩn.
2.3. Sự chọn lựa giữa: Mobile Phone và Modem GPRS
Nói chung, một modem GSM/GPRS thường được khuyên dùng hơn dành cho máy tính cho việc gửi và nhận tin nhắn. Đó là bởi vì các điện thoại di động thường có những giới hạn nhất định nào đó của nó so với các modem GSM/GPRS. Say đây là một vài miêu tả giới hạn của nó.
Một vài model điện thoại di động (chẳng hạn như Ericsson R380) không thể sử dụng với máy tính trong việc nhận các tin nhắn SMS ở dạng chuỗi nối tiếp nhau.
Khi một thiết bị điện thoại di động nhận các tin nhắn SMS , tin nhắn này bao gồm tất cả các phần của một tin nhắn SMS nối chuỗi với nhau, nó kết hợp chúng lại với nhau thành một tin nhắn một cách tự động. Cách xử lí hợp lí nên là: khi thiết bị di động nhận các tin nhắn SMS mà các phần của tin nhắn này được kết nối móc chuỗi với nhau, nó đẩy chúng tới máy tính mà không kết hợp chúng lại
Nhiều model điện thoại di động không thể sử dụng được với máy tính để nhận các tin nhắn MMS. Bởi vì khi chúng nhận một thông báo MMS, chúng sẽ xử lí nó một cách tự động thay vì đưa nó tới máy tính.
Một điện thoại di động không hỗ trợ các lệnh AT, các tham số lệnh và các giá trị của tham số. Ví dụ, các thiết bị di động không hỗ trợ việc gửi và nhận các tin nhắn SMS ở chế độ text. Cho nên lệnh AT "AT+CMGF=1" (nó chỉ dẫn cho điện thoại di động sử dụng chế độ text) sẽ gây ra một thông báo lỗi phản hồi lại. Thường thì các modem GSM/GPRS hỗ trợ cho một bộ lệnh AT hoàn chỉnh nhiều hơn so với các thiết bị điện thoại di động.
Hầu hết các ứng dụng tin nhắn SMS phải ở chế độ sẵn sàng suốt 24 giờ trong một ngày (ví dụ như, ứng dụng tin nhắn SMS mà cung cấp dịch vu download nhạc chuông nên được chạy tại tất cả các thời gian trong ngày như thế người dùng mới có thể doanload nhạc chuông tại bất kỳ thời điểm nào mà họ muốn). Nếu như các ứng dụng sử dụng điện thoại di động để gửi và nhận các tin nhắn SMS thì chiếc điệnthoại di dộng này phải được mở suốt cả ngày. Tuy nhiên một số model điện thoại di động không thể hoạt động khi tháo bin ra khỏi, thậm chí khi một adaptor AC được kết nối, điều đó có nghĩa là bin sẽ được nạp điện 24 tiếng trong một ngày.
Bên cạnh các vấn đề trên, các điện thoại di động và các modem GSM/GPRS ít hay nhiều cũng giống nhau trong việc gửi và nhận các tin nhắn từ máy tính. Thực ra thì bạn có thể coi một lệnh AT được dùng để kích hoạt các thiết bị di động như "GSM/GPRS modem + keypad + display + ...".
Có nhiều sự khác nhau giữa các điện thoại di động và các modem GSM/GPRS ở trong các giới hạn về tốc độ truyền tin SMS, vì thế yếu tố xác định cho tốc độ truyền tin nhắn SMS là mạng wireless.
3. Các thủ tục cần có cho việc gửi các lệnh AT tới một điện thoại di động hay một modem GSM/GPRS bằng cách sử dụng MS HyperTerminal.
Để sử dụng MS HyperTerminal cho việc gửi các lệnh AT đến điện thoại di động hay modem GSM/GPRS, bạn cần phải thực hiện theo những bước như sau:
- Cho một thẻ SIM vẫn còn gía trị vào vào trong điện thoại di động hay một modem GSM/GPRS. Bạn có thể kiếm được một thẻ SIM bằng cách mua dịch vụ GSM của một nhà phân phối mạng wireless
- Kết nối điện thoại di động hay modem GSM/GPPRS của bạn tới máy tính và cài đặt driver của modem wireless tương ứng cho nó. Bạn sẽ tìn thấy driver của modem wireless trong đĩa CD mà nhà sản xuất cung cấp cho bạn. Và nếu như nhà sản xuất không cung cấp driver cho điện thoại hay modem GSM/GPRS thì bạn có thể vào trang web của nhà sản xuất để download nó về rồi cài vào. Còn nếu vào trang web của nàh sản xuất mà cũng không có thì bạn vẫn có thể sử dụng driver cho modem chuẩn của Window
- Chạy MS HyperTerminal bằng cách chọn Start →Programs→Accessories → Communications → HyperTerminal.
- Trong hộp thoại Connection Description, hãy gõ tên và chọn một biểu tượng icon mà bạn thích dùng cho kết nối này. Sau đó thì nhấn nút OK
- Trong hộp thoại Connect to, chọn COM port mà điện thoại di động hay modem GSM/GPRS đang kết nối tới tại khay Connect using. Thí dụ, bạn có thể chọn CÓM khi điện thoại di động hay modem đang được kết nối với port COM1. Sau đó thì nhấn nút OK. ( đôi khi sẽ có hơn một port COM ở trong khay Connect using. Để biết port COM nào được sử dụng bởi điện thoại di động hay modem GSM/GPRS thì hãy làm theo những bước sau đây:
Trong Window 98:
Vào Control Panel -> Modem sau đó click vào tab Diagnostics. Trong hộp thoại này bạn sẽ thấy port COM nào mà điện thoại di động hay modem GSM/GPRS đang được kết nối.
Trong Window2000
Vào Control Panel →Phone and Modem Options. Sau đó click vào tab Modems .Trong hộp thoại này bạn sẽ thấy port COM nào mà điện thoại di động hay modem GSM/GPRS đangđược kết nối.)
6. Hộp thoại Properties xuất hiện. Chọn các thiết lập port chính xác cho điện thoại di động hay modem GSM/GPRS. Sau đó click vào nút OK
(Để tìm ra các thiết lập chính xác phù hợp với điện thoại di động hay modem GSM/GPRS thì có một cách đó là tra sổ hướng dẫn cầm tay của điện thoại di động của bạn hay modem GSM/GPRS. Và một cách khác là kiểm tra các thiết lập port được sử dụng cho driver của modem wireless mà bạn cài đặt trước đó).
Để kiểm tra các thiết lập port được sử dụng cho driver của modem wireless trên nền Windows 98, hãy làm theo những bước sau:
- .Vào Control Panel → Modem.
- .Chọn điện thoại di động hay modem GSM/GPRS trong hộp thoại hiện ra.
- .Click vào nút Properties
- .Hộp thoại Properties hiện ra. Tại khu vực Maximum speeds tại tab General ứng với khu vực Bits per second HyperTerminal. Click vào tab Connection và bạn có thể tìm các thiết lập cho các bít dữ liệu, các bít parityvà bit stop. Click vào nút Advanced thì bạn có thể tìm thấy thiết lập cho điều khiển lưu lượng.
Để kiểm tra các thiết lập port được sử dụng cho driver của modem wireless trên nền Windows 2000 và Windows XP, hãy làm theo những bước sau:
- Vào Control Panel→Phone and Modem Options→Modems tab.
- Chọn điện thoại di động hay modem GSM/GPRS trong hộp thoại hiện ra. Click vào nút Properties
- Hộp thoại Properties hiện ra. Click vào tab Advanced rồi sau đó Click vào nútChange Default Preferences
- Hộp thoại Change Default Preferences xuất hiện. Khu vực Port Speed ở tab General tương ứng với khu vực Bits per second. Bạn cũng có thể tìm các thiết lập cho điều khiển lưu lượng ở tab General. Ở tab Advanced, bạn có thể tìm các thiết lập cho các bít dữ liệu, các bít parity và bít stop.
Hình: Cửa sổ màn hình hộp thoại Properties của MS HyperTerminal trong
Windows 98.
7. Gõ “AT” ở trong cửa sổ màn hình window chính. Một phản hồi “OK” sẽ được trả lời từ điện thoại di động hay modem GSM/GPRS Gõ “AT+CPIN?” trong cửa sổ màn hình window chính. Lệnh AT “AT+CPIN” được sử dụng để chất vần liệu điện thoại di động hay modem GSM/GPRS đang đợi một PIN có đúng không (personal identification number _số nhận dạng cá nhân, ví dụ như password). Nếu thấy có phản hồi là “+CPIN:READY”thì nó có nghĩa là thẻ SIM không yêu cầu có một PIN và nó đã sẵn sàng cho sử dụng. Còn nếu như thẻ SIM của bạn yêu cầu có một PIN thì bạn cần đặt PIN thông qua lệnh AT “AT+CPIN+<PIN>”.
Hình: Cửa sổ màn hình chính của MS HyperTerminal trong windows 98.
Nếu như bạn nhận được phản hồi như cửa sổ màn hình trên thì điện thoại di động hay modem GSM/GPRS đang hoạt động đúng. Và tới đây bạn có thể gõ cá lệnh AT theo ý riêng của bạn để điều khiển điện thoại di động hay modem GSM/GPRS.
Để có những hiểu biết chi tiết hơn về cách sử dụng các lệnh AT để gửi và nhận các tin nhắn SMS sẽ được cung cấp trong các mục sau.
Kiểm tra xem điện thoại di động hay modem GSM/GPRS có hỗ trợ việc sử dụng các lệnh AT để gửi, nhận và đọc các tin nhắn SMS.
Sau khi kiểm tra xong các truyền thông giữ PC và điện thoại di động hay modem GSM/GPRS, thứ kế tiếp mà bạn muốn làm là kiểm tra xem điện thoại di động hay modem GSM/GPRS có hỗ trợ việc sử dụng các lệnh AT để truyền, nhận và đọc tin nhắn SMS không. Hầu hết các modem GSM/GPRS đều có hỗ trợ ba chức năng trên nhưng chỉ có một số điện thoại di động hỗ trợ các chức năng đó.
Gửi tin nhắn SMS.
Để hiểu xem một modem GSM/GPRS hay điện thoại di động có hỗ trợ việc gửi các tin nhắn SMS thông qua các lệnh AT hay không, bạn phải:
1.Sử dụng lệnh AT +CSMS (tên lệnh trong text: Select Message Service) để kiểm tra liệu xem các tin nhắn SMS có nguồn gốc từ mobile có được hỗ trợ không.
2.Thực thi các hoạt động test để kiểm tra liệu các lệnh AT +CMGW (tên lệnh ở dạng text: Send Message) và (hay) +CMSS (tên lệnh ở dạng text: Send Message from Storage) được hỗ trợ không. (bạn có thể kiểm tra các lệnh AT +CMGW [tên lệnh ở dạng text: Write Message to Memory] và +CMGD [tên lệnh ở dạng text: Delete Message] thêm vào khi đôi khi chúng được sử dụng chung với +CMSS)
Nhận và đọc các tin nhắn SMS từ vùng lưu trữ tin nhắnĐể hiểu xem liệu một modem GSM/GPRS hay điện thoại di động có hỗ trợ nhận và đọc tin nhắn SMS thông qua các lệnh AT không thì bạn phải :
1.Sử dụng lệnh AT +CSMS (tên lệnh ở dạng text: Select Message Service) dùng để kiểm tra xem liệu các tin nhắn SMS kết cuối di động có được hỗ trợ không
2.Thực thi các hoạt động test để kiểm tra xem liệu +CNMI (tên lệnh ở dạng text: New Message Indications to TE), +CMGL (tên lệnh ở dạng text: List Messages) và (hay) +CMGR (tên lệnh ở dạng text: Read Message) có được hỗ trợ không.
Nếu như modem GSM/GPRS hay điện thoại di động có hỗ lệnh AT +CNMI thì nó có thể gửi một thông báo hay trực tiếp xúc tiến tin nhắn tới PC bất cứ khi nào một tin nhắn SMS mới tới.
Còn nếu như modem GSM/GPRS hay điện thoại di động không hỗ trợ lệnh +CNMI nhưng lai hỗ trợ lệnh +CMGL và/hay +CMGR thì PC phải có sự lựa chọn modem GSM/GPRS hay điện thoại di động theo thứ tự để biết nếu như có bất kỳ tin nhắn mới nào vừa tới nó.
4. Chế độ hoạt động: chế độ SMS text và chế độ SMS PDU:
Chi tiết kỹ thuật của SMS được định nghĩa ở hai chế độ (hai mode),và ở hai chế độ đó modem GSM/GPRS hay điện thoại di động đều có thể hoạt động tốt với nó. Hai chế độ đó là :chế độ SMS text và chế độ SMS DPU. (chuẩn PDU dùng cho đơn vị dữ liệu Protocol). Chế độmà một modem GSM/GPRS hay điện thoại di động đang hoạt động tìm kiếm, xác định cấu trúc ngữ pháp của các lệnh AT SMS và định dạng của các đáp ứng trả lại sau khi thi hành. Dưới đây là các lệnh AT SMS mà nó có ảnh hưởng tới:
- CMGS (Send Message_gửi tin nhắn)
- CMSS (Send Message from Storage_gửi tin nhắn từ trung tâm lưu trữ)
- CMGR (Read Message_đọc tin nhắn)
- CMGL (List Messages_liệt kê các tin nhắn)
- CMGW (Write Message to Memory_viết tin nhắn vào bộ nhớ)
- CNMA (New Message Acknowledgement to ME/TA_Sự chấp nhận các tin
nhắn mới tới ME/TA).
- CMGC (Send Command_gửi tin nhắn).
Hai lệnh AT sau chỉ hữu ích khi chế độ SMS text được sử dụng.
- CSMP (Set Text Mode Parameters_đặt các tham số cho chế độ text)
- CSDH (Show Text Mode Parameters_Chỉ ra các tham số ở chế độ text)
5. Sự so sánh giữa chế độ SMS text và chế độ SMS PDU:
Dưới đây chúng ta sẽ so sánh các khía cạch khác nhau giữa hai chế độ SMS text và SMS PDU. Sự so sánh này sẽ giúp chúng ta thấy được sự khác nhau giữa hai chế độ này và từ giúp ta có quyết định tốt hơn trong việc chọn lựa chế độ nào nên được sử dụng bởi ứng dụng tin nhắn SMS của bạn.
Cấu trúc ngữ pháp của các lệnh AT SMS và các đáp ứng của nó:
Khi modem GSM/GPRS hay điện thoại di động đang hoạt động trong các chế độ khác nhau thì cấu trúc ngữ pháp lệnh AT SMS nào đó và các đáp ứng của nó đưa lại sau khi thực thi lệnh là khác nhau. Sau đây là một ví dụ cho trình bày nói trên. Giả sử rằng bạn muốn gửi một tin nhắn SMS như sau: “It is easy to send text messages” đến một số điện thoại +85291234567 thì trong chế độ SMS text thì dòng lệnh bạn phải đánh vào là như sau: AT+CMGS="+85291234567"<CR>It is easy to send text messages.<Ctrl+z> . Tuy nhiên nếu modem GSM/GPRS hay điện thoại di động đang hoạt động trong các chế độ SMS PDU thì việc thực thi dòng lệnh trên sẽ phát sinh ra một lỗi. Đó là do cấu trúc ngữ pháp của lệnh AT +CMGS được sử dụng theo một cách khác trong chế độ SMS DPU. Để thực thi nhiệm vụ trên thì dòng lệnh sau nên được thay thế vào:
AT+CMGS=42<CR>07915892000000F001000B915892214365F7000021493A283D0795C3F33C88FE06CDECLAREB6E32885EC6D341EDF27C1E3E97E72E <Ctrl+z>
Các giá trị được định nghĩa cho các tham số:
Khi modem GSM/GPRS hay điện thoại di động đang hoạt động trong các chế độ khác nhau thì các giá trị của các tham số nào đó cũng khác nhau. Thường thì các giá trị dạng string được định nghĩa dành cho chế độ SMS text trong khi các giá trị số được định nghĩa dành cho chế độ PDU. Thí du, lệnh AT +CMGL được sử dụng để liệt kê các tin nhắn được lưu trữ trong kho lưu trữ tin nhắn. Nó sẽ lấy một tham số để chỉ ra trạng thái của các tin nhắn SMS được tìm, lấy về. Bảng thông số sau sẽ liệt kê các giá trị được định nghĩa cho các tham số trong hai chế độ text và chế độ PDU.
Giả sử rằng bạn muốn liệt kê tất cả cac1tin nhắn từ trung tâm lưu trữ tin nhắn. Nếu như modem GSM/GPRS hay điện thoại di động đang hoạt động trong các chế độ SMS text thì bạn nên ấn định giá trị dạng string “All” đối với lệnh AT AT +CMGL như sau:
AT+CMGL="ALL"
Còn trong chế độ SMS PDU thì giá trị số “4” nên được ấn định cho cho lệnh AT +CMGL, nó như sau:
AT+CMGL=4
Dạng ngõ ra/ngõ vào (input/output) của các tin nhắn SMS được dùng bởi các lệnh AT SMS.
Khi modem GSM/GPRS hay điện thoại di động đang hoạt động trong các chế độ khác nhau thì dạng ngõ ra/ngõ vào (input/output) của các tin nhắn SMS được dùng bởi các lệnh AT SMS cũng khác nhau. Trong chế độ SMS text thì đầu và thân của các tin nhắn SMS được làm các ngõ vào vao/ngõ ra khi tách rời các tham số/các lĩnh vực.Trong chế độ SMS DPU, TPDUs (Transport Protocol Data Units) ở định dạng hexa là các ngõ vào và ngõ ra. Đầu và thần của các tin nhắn SMS được mã hóa theo dạng TPDUs.
Sau đây là một thí dụ cho những trình bày nói trên. Để gửi một tin nhắn SMS "It is easy to send text messages." Đến một số điện thoại +85291234567 thì dòng lệnh sau nên được sử dụng trong chế độ SMS text. Trong khi bạn thấy các dưới đây, đầu số của số điện thoại đích và các đầu số của các số điện thoại khác nữa được mã hóa theo dãy số hexa.
AT+CMGS=42<CR>07915892000000F001000B915892214365F7000021493A283D0795C3F33C88FE06CDECLAREB6E32885EC6D341EDF27C1E3E97E72E <Ctrl+z>
Dễ dàng trong sử dụng
Khi các bạn đã xem tất cả các ví dụ trước thì bạn sẽ cảm thấy thật là dễ dàng sử dụng các lệnh AT trong chế độ SMS text. Bạn không cần phải học về các loại cấu trúc khác nhau của TPDUs ở dạng bit hay là các mã hóa hay giải mã các chuỗi số hexa.
Các đặc điểm hỗ trợ của tín nhắn SMS
Mặc dù sử dụng các lệnh AT rất dễ dàng trong chế độ SMS text, nhưng nó lại hỗ trợ ít các đặc điểm về tin nhắn SMS hơn là chế độ SMS DPU. Điều này là do bạn không thể hoàn tất các điều khiển dựa trên các giá trị đầu và than6cua3 tin nhắn trong chế độ SMS text. Một vài nhiệm vụ có thể được hoàn thành trong chế độ text, đòi hỏi người lập trình phải hiểu biết về chế độ PDU và TPDU. Thí dụ, để yêu cầu một bản tin trạng thái từ SMSC trong chế độ SMS text thì bạn phải đặt bit 5 của 8 bít đầu tiên trong SMS-SUBMIT TPDU thành “1” bằng lệnh AT +CCMP (tên lệnh ở dạng text:Set Text Mode Parameters). Các nhiệm vụ tương tự bao gồm thiết lập chu kỳ hợp lí cho tin nhắn và gửi một tin nhắn SMS dạng flash (nghĩa là nó ngay lập tức xuất hiện trên màn hình điện thoại khi nó đến địa chỉ đích).
6. Gửi các tin nhắn SMS từ một máy tính/PC sử dụng các lệnh AT (AT+CMGS, AT+CMSS)
Chế độ SMS DPU có nhiều hỗ trợ phổ biến hơn dành cho điện thoại hay modem GSM/GPRS hơn là cho chế độ SMS text.
Cả hai lệnh AT+CMGS (tên lệnh ở dạng text:Send Message) và +CMSS(tên lệnh ở dạng text: Send Message From Storage) đều có thể được sử dụng để gửi các tin nhắn SMS từ một máy tính (PC). Sự khác nhau cơ bản ở bản giữa chúng là lệnh AT +CMGS lấy các tin nhắn SMS như là một tham số,trong khi đó lệnh AT+CMSS lấy các số index mà chỉ rõ vị trí của tin nhắn SMS trong khu vực lưu trữ tin nhắn như là một tham số. Những trình bày sau đây là một thí dụ để làm sáng tỏ sự khác nhau này. Giả sử rằng bạn muốn gửi một tin nhắn dạng text "Sending text messages is easy." Từ một máy tính để bàn (PC) tới một số thoại di động 091234567 sử dụng lệnh AT +CMGS ở chế độ SMS text. Và sau đây là dòng lệnh được sử dụng:
AT+CMGS="91234567"<CR>Sending text messages is easy.<Ctrl+z>
Còn nếu cũng muốn gửi text nhưng sử dụng lệnh AT +CMSS thì đầu tiên bạn phải sử dụng lệnh AT+CMGW (tên lệnh ở dạng text: Write Message to Memory) để viết text tin nhắn tới khu vực lưu trữ tin nhắn. Trong chế độ SMS text thì dòng lệnh sẽ như sau:
AT+CMGW="91234567"<CR>Sending text messages is easy.<Ctrl+z>
Giờ thì chúng ta có thể nói text tin nhắn SMS bây giờ được định vị tại index 3 của vùng lưu trữ tin nhắn. Ban5co1 thể sử dụng lệnh AT +CMSS để gửi text tin nhắn đến trung tâm tin nhắn bằng dòng lệnh sau:
AT+CMSS=3
Khi khong gian lưu trữ bị giới hạn, nếu như mỗi text tin nhắn SMS đã gửi được để ở vùng lưu trữ tin nhắn thì sẽ có một thời điểm khi mà không có thêm các text tin nhắn SMS nào có thể được viết. Để giải thoát không gian lưu trữ, bạn có thể sử dụng lệnh AT +CMGD (tên lệnh ở dạng text: Delete Message) để xóa các text tin nhắn SMS ở vùng lưu trữ tin nhắn,nó như sau:
AT+CMGD=3
Khi bạn thấy dòng lệnh trên, gửi một tin nhắn SMS bằng lệnh AT +CMSS là một sự nặng nề về bit, bởi vì nó bao gồm nhiều bước và các lệnh AT. Tuy nhiên,một bản copy của tin nhắn SMS đã gửi được lưu ở vùng lưu trữ tin nhắn. Điều này không thể đạt được với lệnh AT +CMGS.
Trong một vài tình huống, có nhiều thuận lợi để gửi các tin nhắn SMS bằng lệnh AT +CMSS hơn là dùng lệnh AT +CMGS. Ví dụ, nếu như bạn phải gửi các tin nhắn tương tự nhau đến nhiều người nhận thì sử dụng lệnh At +CMSS sẽ thuận lợi hơn:
AT+CMSS=3,"91234567"
AT+CMSS=3,"97777777"
AT+CMSS=3,"96666666"
7. Đọc các tin nhắn SMS từ một khu vực lưu trữ tin nhắn sử dụng các lệnh AT
(AT+CMGR, AT+CMGL)
Để kích hoạt sử dụng một máy tính để bàn (PC) cho việc đọc các tin nhắn SMS từ một khu vực lưu trữ tin nhắn, thì modem GSM/GPRS hay điện thoại di động phải được hỗ trợ cả hai lệnh AT+CMGR (tên lệnh ở dạng text: Read Messages) và lệnh AT+CMGL (tên lệnh ở dạng text: List Messages). Lệnh AT+CMGR được sử dụng để đọc một tin nhắn SMS tại một vị trí nào đó trong khu vực lưu trữ tin nhắn. Trạng thái có thể là : "received unread", "received read", "stored unsent", "stored sent",…Còn lệnh AT+CMGL cũng cho phép bạn lấy tất cả các tin nhắn SMS được lưu trữ trong khu vực lưu trữ tin nhắn.
Những trình bày sau là một ví dụ nhằm giúp hiểu rõ được sự khác nhau giữa +CMGR và +CMGL. Giả sử rằng bạn muốn sử dụng máy tính đọc một text tin nhắn từ một khu vực lưu trữ tin nhắn và bạn cũng biết chỉ số của text tin nhắn SMS là ở chỗ nào. Trong trường hợp này thì bạn nên sử dụng lệnh AT+CMGR. Và đây là dòng lệnh được đánh vào(giả sử rằng text tin nhắn được lưu trữ tại vị trí có chỉ số là 3):
AT+CMGR=3
Modem GSM/GPRS hay điện thoại sẽ phản hồi lại như sau:
+CMGR: "REC READ","+85291234567",,"07/02/18,00:12:05+32".
Hello, welcome to our SMS tutorial.
OK
Giả sử bay giờ bạn lại ở trong một tình huống khác. Bạn muốn sử dụng máy tính bàn (PC) để lấy về tất cả các tin nhắn SMS mà bạn chưa đọc trước đó. Trong trường hợp này thì bạn sử dụng lệnh AT+CMGL. Trong chế độ SMS text thì dòng lệnh được sử dụng là:
AT+CMGL="REC UNREAD"
Modem GSM/GPRS hay điện thoại sẽ phản hồi lại như sau:
+CMGL: 1,"REC UNREAD","+85291234567",,"07/02/18,00:05:10+32"
Reading text messages is easy.
+CMGL: 2,"REC UNREAD","+85291234567",,"07/02/18,00:07:22+32"
A simple demo of SMS text messaging.
OK
Lệnh AT+CMGL cũng có thể được dùng để đọc tất cả các tin nhắn mà được lưu trữ trong khu vực lưu trữ tin nhắn. Để làm được như vậy trong chế độ SMS text thì dòng lệnh sẽ là:
AT+CMGL="ALL"
Ở thời điểm này thì phản hồi của Modem GSM/GPRS hay điện thoại di động sẽ như sau:
+CMGL: 1,"REC READ","+85291234567",,"07/02/18,00:05:10+32"
Reading text messages is easy.
+CMGL: 2,"REC READ","+85291234567",,"07/02/18,00:07:22+32"
A simple demo of SMS text messaging.
+CMGL: 3,"REC READ","+85291234567",,"07/02/18,00:12:05+32"
Hello, welcome to our SMS tutorial.
OK
Với những gì bạn thấy ở những dòng trên, lệnh AT+CMGR chỉ có thể được sử dụng để đọc 1 tin nhắn SMS tại một thời điểm trong khi đó lệnh AT+CMGL có thể được sử dụng để đọc nhiều tin nhắn tại cùng một thời điểm.
Một sự khác nhau khác nữa giữa hai lệnh AT+CMGR và AT+CMGL là lệnh
AT+CMGR có thể được sử dụng để lấy nhiều chi tiết tin nhắn hơn là lệnh AT+CMGL khi cac1 modem GSM/.GPRS hay các điện thoại di động đang hoạt động ở chế độ SMS text.Sau đây là cac1chi tiết tin nhắn có thể lấy được bằng cách sử dụng lệnh AT+CMGR ở chế độ SMS text.
- Trạng thái của tin nhắn SMS ("received unread", "received read", "stored unsent", "stored sent",…)
- Số điện thoại của người gửi/người nhận được lưu trữ trong phần đầu của tin nhắn SMS và kiểu của số điện thoại.
- Text liên quan tới số điện thoại của người gửi/người nhận nằm trong danh bạ điện thoại.
- Thời gian và ngày tin nhắn SMS đến SMSC (chỉ cho phép với các tin nhắn SMS đến)
- Tám bit đầu tiên (1 octet = 8 bits) của TPDU (Transport Protocol Data Unit) của tin nhắn SMS.
- Giá trị nhận dạng protocol nằm trongTPCU của tin nhắn SMS.
- Giá trị lược đồ mã hóa dữ liệu nằm trong TPCU của tin nhắn SMS.
- Số SMSC được lư trữ cùng với tin nhắn SMS và kiểu số SMSC
- Chu kỳ hợp lí của tin nhắn SMS (chỉ cho phép tin nhắn SMS đi)
- Thân của tin nhắn SMS và chiều dài của nó.
Sau đây là các chi tiết tin nhắn có thể lấy được bằng cách sử dụng lệnh AT+CMGL ở chế độ SMS text:
- Số index nhằm định rõ vị trí của tin nhắn SMS ở trong vùng lưu trữ tin nhắn.
- Trạng thái của tin nhắn SMS ("received unread", "received read", "stored unsent", "stored sent"…)
- Số điện thoại của người gửi/người nhận được lưu trữ trong phần đầu của tin nhắn SMS và kiểu của số điện thoại.
- Text liên quan tới số điện thoại của người gửi/người nhận nằm trong danh bạ điện thoại.
- Thời gian và ngày tin nhắn SMS đến SMSC (chỉ cho phép với các tin nhắn SMS đến)
- Thân của tin nhắn SMS và chiều dài của nó.
Nếu bạn so sánh hai list trên, bạn sẽ nhận ra rằng các chi tiết tin nhắn sau chỉ có thể được lấy bằng các lệnh AT+CMGR chứ không phải lệnh AT+CMGL:
- Tám bit đầu tiên của TPCU của tin nhắn SMS.
- Giá trị nhận dạng protocol trong TPCU của tin nhắn SMS.
- Gía trị lược đồ mã hóa dữ liệu trong TPCU của tin nhắn SMS.
- Số SMSC được lưu trữ cùng với tin nhắn SMS và kiểu của số SMSC.
- Chu kỳ giá trị của tin nhắn SMS (chỉ cho phép với các tin nhắn SMS đi).
Chú ý: Nếu modem GSM/GPRS hay điện thoại di động đang hoạt động ở chế độ SMS PDU thì các chi tiết tin nhắn có thể được lấy bằng hai lệnh AT+CMGR và lệnh AT+CMGL là như nhau.
TÀI LIỆU THAM KHẢO
- NGUYỄN HỮU PHƯƠNG - MẠCH SỐ - NHÀ XUẤT BẢN THỐNG KÊ.
- NGUYỄN ĐÌNH PHÚ - VI XỬ LÍ 2 - TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ
THUẬT.
- HOÀNG MINH SƠN – MẠNG TRUYỀN THÔNG CÔNG NGHIỆP – NXB
KHOA HỌC VÀ KỸ THUẬT – 2006.
- DOGAN IBRAHIM – PIC BASIC PROJECTS 30 PROJECTS USING PIC
BASIC AND PIC BASIC PRO.
- JAN AXELSON – SERIAL PORT COMPLETE SECOND EDITION.
- MỘT SỐ TRANG WEB:
www.codeproject.com
www.dientuvietnam.com
www.picvietnam.com
www.deverlopershome.com
ĐỒ ÁN TỐT NGHIỆP ĐIỆN MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ BẰNG TIN NHẮN SMS
, thuyết minh MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ BẰNG TIN NHẮN SMS
, MÔ HÌNH MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ BẰNG TIN NHẮN SMS