Thiết kế hệ thống

Một phần của tài liệu Xây dựng hệ thống quan sát từ xa qua mạng điện thoại di động (Trang 31)

2.4.1. Kiến trúc hệ thống

Hình 2.9. Kiến trúc khối điều khiển quan sát

Hệ thống gồm hai khối chính: Khối yêu cầu thông tin trên điện thoại di động, đây là khối chương trình được thiết kế để nhận dữ liệu và hiển thị tới người dùng. Khối này có chức năng gửi yêu cầu lên Server có sẵn để nhận hình ảnh được khối đáp ứng gửi lên. Hình ảnh nhận được ở dưới dạng mảng byte, sau đó được chuyển sang dạng hình ảnh và hiển thị tới người dùng. Khối này cũng làm nhiệm vụ nhận các tin nhắn SMS chứa thông tin sau đó xử lý và chuyển nội dung các tin nhắn sang dạng hình ảnh và hiển thị. Khối đáp ứng hay chính là hệ thống quan sát, khối này làm nhiệm vụ

điều khiển thiết bị quan sát để chụp hình, hình sau đó sẽ qua xử lý và được đính kèm vào một thông điệp, thông điệp cuối cùng được gửi đến khối yêu cầu thông tin thông qua modem của hệ thống, hệ thống điều khiển Modem này bằng tập lệnh AT gửi qua cổng COM kết nối Modem với máy tính

Hình 2.10. Kiến trúc khối chương trình trên điện thoại di động

Khối chương trình trên điện thoại di động có nhiệm vụ nhận thông tin và hiện thị đến người dùng. Có hai cách nhận thông tin đó là chương trình trên điện thoại di động kết nối đến một Server sẵn có và tải dữ liệu về, cách thứ hai là nhận các SMS và tổ hợp lại thành một ảnh.

2.4.2. Thiết kế file config

File config sẽ được thiết kế dưới dạng file .properties. File .properties vốn được thiết kế rất đơn giản, mỗi một thành phần thuộc tính trong file được quản lý bởi một chuỗi có hai phần: Tên thuộc tính và giá trị thuộc tính, các phần phân cách nhau bởi dấu phẩy. Cách lưu trữ đó vừa đơn giản vừa hiệu quả, tuy nhiên, vì hệ thống có nhiều thông tin thuộc nhiều phần khác nhau cho nên cần có quy định để tránh trùng lặp. Tên các thuộc tính sẽ gồm có hai phần: phần trước dấu “-“ mô tả loại thuộc tính dành cho một thông tin nào đó, ví dụ như: MMS, SMS, COM, …, phần sau dấu “-“ mô tả tên

riêng cho thuộc tính. Ví dụ: SMS-address: Tên của tham số mô tả số của thuê bao nhận tin SMS, COM-databit: Mô tả số bit dữ liệu trong một khung truyền khi truyền dữ liệu qua cổng COM.

2.4.3. Thiết kế các module chính chƣơng trình trên máy tính

Trong hệ thống có rất nhiều module khác nhau thực hiện từng phần nhỏ công việc phục vụ cho mục đích chụp hình và gửi thông điệp. Ở đây báo cáo chỉ xin nêu những module điển hình trong hệ thống. Với ngôn ngữ cài đặt là ngôn ngữ lập trình Java.

2.5.2.1. Module xử lý ảnh

Ảnh trước khi gửi đi dưới dạng các tin nhắn SMS sẽ được đổi sang các SMS, các chuỗi SMS này cần được nén lại theo thuật toán LZW, thuật toán LZW là một thuật toán nén đơn giản nhưng hiệu quả, trong đó chương trình sẽ đọc liên tục các ký tự đầu vào trong chuỗi inRaw, nối vào một chuỗi là chuỗi hiện thời, hệ thống tìm mã của chuỗi hiện thời trong từ điển để mã hóa thành đầu ra, nếu chuỗi hiện thời không có mã trong từ điển thì nó sẽ được đưa vào từ điển, mã của ký tự mới đọc sẽ là đầu ra, sau khi được đưa vào trong từ điển, ký tự cuối cùng của chuỗi hiện thời sẽ được giữ lại để lặp lại các bước kể trên. Sau đó làm nhỏ kích thước trình diễn của ảnh, để phù hợp với màn hình hiển thị của điện thoại di động, ví dụ dưới đây là một hàm resize để đổi kích thước của ảnh, Java cung cấp các hàm API cho việc thay đổi cỡ ảnh. Nếu ảnh cần được gửi đi dưới dạng mảng byte, thì đầu tiên ảnh cần được đổi từ mảng byte sang chuỗi hexa, sau đó chuỗi hexa này được ánh xạ sang bảng mã theo chuẩn GSM.

2.5.2.2. Module truyền thông với cổng COM

Đầu tiên để truyền thông với cổng COM ta cần xác định cổng kết nối, thiết lập các tham số và kết nối đến cổng, sau đó mở các luồng InputStream và OutputStream để truyền thông với cổng.

Chỉ định cổng được mở: CommPortIdentifier.getPortIdentifier(String Port); Thiết lập các tham số cho cổng bằng hàm sPort.setSerialPortParams() với các tham số kèm theo: int baudRate, int flowControlIn, int flowControlOut, int databits, int stopbits, int parity.

Gắn kết các luồng stream vào và ra trên cổng: os = sPort.getOutputStream();

is = sPort.getInputStream();

Sau đó gắn bộ lắng nghe lên cổng để có thể biết được các sự kiện xảy ra trên cổng: sPort.addEventListener(this);

Với bộ lắng nghe đã được cài đặt và gắn lên trên cổng COM, mỗi khi có sự kiện hàm serialEvent(SerialPortEvent e) sẽ làm nhiệm vụ thông báo đến chương trình với loại sự kiện là tham số của hàm. Với các sự kiện khác nhau chương trình sẽ xử lý hoặc bỏ qua. Người lập trình cần viết mã trong hàm này, đặc biệt là mỗi khi có dữ liệu đến.

2.5.2.3. Module gửi SMS

Để gửi SMS cần phả gửi lệnh AT cho phép gửi SMS ra cổng COM, cổng COM sẽ gửi đến Modem và Modem sẽ thực hiện lệnh AT đó. Việc gửi lệnh SMS cần thực hiện nhiều lệnh AT theo thứ tự, mỗi lệnh khi thực hiện song được kiểm tra kết quả trả về từ Modem, nếu kết quả là OK thì lệnh tiếp theo sẽ được thực hiện. Việc gửi MMS hay thực hiện các kết nối đến mạng qua modem đều có mô hình tương tự như phương thức gửi SMS. Chương trình cần phải thực hiện một cách có thứ tự các lệnh AT, và sau mỗi khi thực hiện một lệnh, chương trình cần đợi nhận chuỗi trả về xác định lệnh đã được thực hiện thành công trước khi thực hiện một lệnh mới.

2.4.4. Module nhận SMS trên điện thoại di động

Ngôn ngữ được sử dụng để viết chương trình trên điện thoại di động là J2me. J2me hỗ trợ việc nhận SMS, tuy nhiên chỉ cho phép nhận SMS qua một cổng dịch vụ, không cho phép đọc SMS từ Inbox của điện thoại di động. Đầu tiên để lập trình cần mở cổng dịch vụ SMS, sau đó mới tiến hành truyền thông.

2.5 Kết quả thực nghiệm

2.5.1. Giao diện cấu hình GSM modem

Modem là thiết bị chính để truyền vận thông tin trong hệ thống, vì vậy việc cấu hình modem rất quan trọng, giao diện đơn giản này cho phép cấu hình các thông số liên quan đến modem: Tốc độ truyền dữ liệu, cổng truyền dữ liệu, bit Stop, Start… Là những thông số liên quan đến truyền thông nối tiếp.

2.5.2. Giao diện chính của hệ thống

Giao diện này chứa các tùy chọn để người dùng chọn các dịch vụ trước khi kích hoạt hệ thống. Và các menu để người dùng cấu hình hệ thống và nhận giúp đỡ. Trên giao diện này người dùng có thể chọn loại thông tin người dùng muốn nhận được và kênh thông tin để truyền dữ liệu.

Hình 2.12. Giao diện chính của hệ thống

2.5.3. Giao diện cấu hình MMS (adsbygoogle = window.adsbygoogle || []).push({});

Tin nhắn MMS cần rất nhiều thông số, người dùng cần cấu hình để đảm bảo có thể nhận được tin. Vì tin nhắn MMS sẽ qua mạng Internet gửi đến MMSC và thông qua trình duyệt Wap đến điện thoại di động nên cần phải biết được địa chỉ MMSC và WAP Gateway. Để biết được những tham số trong giao diện này, người dùng cần tham khảo thông số cài đặt GPRS/3G của nhà điều hành mạng. Ví dụ, với mạng Viettel:

 Địa chỉ của MMS Server là: http://mms.viettelmobile.com.vn/mms/,

 APN: V-mms

Hình 2.13. Giao diện cấu hình MMS

2.5.4. Giao diện chƣơng trình trên điện thoại di động

Giao diện này chứa một danh sách lựa chọn các tính năng mà chương trình cung cấp, đó là các tính năng cho phép gửi tin nhắn SMS để yêu cầu thông tin theo các phương pháp truyền tin khác nhau là SMS, MMS hay qua Server. Ngoài ra, trong Menu nằm dưới cùng bên phải sẽ chứa các lựa chọn cho phép người dùng có thể mở các cửa sổ cho phép cấu hình, cho phép xem ảnh đã gửi tới:

2.6.Triển khai và đánh giá kết quả thực nghiệm

Hệ thống demo đã được triển khai, với chương trình chạy trên máy tính cá nhân (Laptop), sử dụng Camera có sẵn của máy tính và sử dụng USB 3G để làm thiết bị truyền thông. Modem USB 3G, không phải là thiết bị chuyên dụng để lập trình, với hạn chế của thiết bị là không có phép truyền nhiều tin nhắn trong cùng một khoảng thời gian, qua thực nghiệm nhận thấy trong một phút thiết bị chỉ có thể gửi được khoảng 6 tin nhắn trong điều kiện chất lượng mạng bình thường, do đó ảnh hưởng tới tốc độ truyền dữ liệu qua tin nhắn SMS. Việc gửi hình ảnh qua công nghệ GPRS/3G (hình ảnh được gửi qua mạng tới tài khoản gmail) được thực hiện tốt với độ trễ vừa phải. Hình ảnh qua tin nhắn MMS thì có thời gian trễ giao động trong 1 phút. Khi gửi ảnh dưới dạng tin nhắn SMS, do kỹ thuật xử lý ảnh chưa tốt và do hạn chế độ dài dữ liệu của tin nhắn SMS nên chi phí cho một hình ảnh cỡ nhỏ hơn 100 pixel vẫn còn cao, khoảng dưới 3000đ. Chương trình nhận tin nhắn trên điện thoại di động được thiết kế bằng ngôn ngữ J2me, chạy hiệu quả nhưng giao diện chưa thân thiện.

Ngoài ra hệ thống được cài đặt chỉ thích hợp cho mục đích nghiên cứu các phương pháp truyền thông qua các thuê bao điện thoại di động, không thích hợp để triển khai trên thực tế do hạn chế của việc sử dụng máy tính cá nhân để điều khiển hệ thống quan sát, sử dụng webcam là thiết bị quan sát chính. Vì như vậy máy tính phải thường xuyên hoạt động mà máy tính cá nhân vốn không được thiết kế để có thể liên tục hoạt động trong nhiều ngày, hơn nữa sự có mặt của một thiết bị hiện đại, nhiều chức năng như máy tính chỉ để phục vụ cho một mục đích quan sát là lãng phí, và không thể di dời hệ thống tới mọi địa hình, địa điểm mong muốn. Webcam là một thiết bị quan sát đơn giản, với góc nhìn hẹp, không thể điều khiển góc quay và chất lượng hình ảnh không cao do đó ảnh hưởng tới chất lượng quan sát. Tuy nhiên, hệ thống được tác giả cài đặt với mục đích demo cho những nghiên cứu về các phương pháp truyền dữ liệu qua mạng điện thoại di động, những nghiên cứu và ý tưởng này có thể được sử dụng để tạo ra một thiết bị quan sát từ xa trong đó máy tính sẽ được thay bằng mạch điện tử để tăng tính linh động và khả năng triển khai trong môi trường thực của hệ thống đã được tác giả đề xuất.

Với những kết quả thực nghiệm như trên, đề tài đã hoàn thành những nhiệm vụ đề ra nhưng chưa triệt để và chưa thực sự tối ưu, còn cần được tiếp tục nghiên cứu phát triển tiếp.

Chƣơng 3: CÔNG NGHỆ PHÁT TRIỂN ỨNG DỤNG

3.1. Các công nghệ truyền thông 3.1.1. Mạng GSM 3.1.1. Mạng GSM

Viễn thông di động [1] là một trong những lĩnh vực có sự phát triển rất mạnh mẽ. Sự phát triển đó đòi hỏi cần có một tiêu chuẩn kỹ thuật chung thống nhất và một trong những chuẩn này đã ra đời là chuẩn cho hệ thống thông tin di động toàn cầu GSM (Global System for Mobile Communications) được giới thiệu vào năm 1991. GSM là một chuẩn cho điện thoại di động số được đưa ra bởi tổ chức viễn thông Châu Âu ETSI (European Telecommunication Standards Institute) cho phép người sử dụng điện thoại di động có thể sử dụng điện thoại di động của họ trên toàn châu Âu.

GSM sử dụng hai kỹ thuật truy nhập là TDMA và FDMA, trong đó TDMA là kỹ thuật có nhiều ưu điểm:

 Cung cấp một khả năng tách kênh và mã hóa tiếng nói trong tương lai làm cho hiệu suất phổ được cải thiện.

 Cung cấp nhiều dịch vụ hơn các hệ thống tương tự.

 Có khả năng tích hợp ISDN (Integrated Services Digital Network).

 Kế thừa mạnh mẽ sự phát triển của các thành phần hiện đại làm giảm chi phí của hệ thống.

 Cho phép cải tiến đáng kể được các yếu tố liên quan đến bảo vệ thông tin trong hệ thống.

Sau khi ra đời, hệ thống thông tin di động toàn cầu GSM phát triển một cách mạnh mẽ, cùng với sự gia tăng nhanh chóng của các nhà điều hành, các mạng di động mới, thì số lượng các thuê bao cũng gia tăng một cách chóng mặt. Năm 2000, GPRS được ứng dụng. Năm 2001, mạng 3GSM (UMTS) được đi vào hoạt động. Năm 2003, mạng EDGE đi vào hoạt động.

Kiến trúc tổng quát mạng GSM

Một hệ thống GSM là cơ bản thiết kế như là một sự kết hợp của ba hệ thống con chính [1]: các hệ thống mạng, hệ thống radio và thống hỗ trợ hoạt động của mạng. Các nhà khai thác mạng sẽ có một số nguồn cơ sở hạ tầng thiết bị riêng. GSM không chỉ cung cấp giao diện tầng không mà còn cung cấp giao diện chính giữa các bộ phận khác nhau. Có ba giao diện nổi trội là: giao diện giữa MSC và trạm điều khiển BSC, giao diện giữa BSC và các trạm thu phát cơ bản (BTS), và một giao diện giữa BTS và trạm di động (MS). Các hệ thống phụ bao gồm các thiết bị mạng và các chức năng liên quan đến thiết bị đầu cuối để kết thúc cuộc gọi, quản lý thuê bao di động và giao diện với PSTN cố định. Trong đó, các hệ thống con chuyển đổi bao gồm các MSC, kiểm tra vị trí đăng ký (VLR), đăng ký tại gia đình (HLR), trung tâm xác thực (AUC), và

đăng ký định danh thiết bị (EIR). MSC cung cấp thiết lập cuộc gọi, định tuyến, và bàn giao giữa BSCs trong khu vực riêng của nó và từ hoặc tới MSC khác; một giao diện với PSTN (Public Switched Telephone Networks) cố định, và các chức năng khác như thanh toán. HLR là một cơ sở dữ liệu tập trung của tất cả thuê bao đăng ký trong một PLMN (Public Land Mobile Network). Có thể có nhiều hơn một HLR trong PLMN, nhưng các thuê bao cá nhân chỉ có một trong số đó. VLR là một cơ sở dữ liệu của tất cả các điện thoại di động hiện đang chuyển vùng trong khu vực kiểm soát của MSC. Ngay sau khi một MS chuyển vào một vùng MSC mới, VLR được kết nối với MSC sẽ yêu cầu dữ liệu về MS từ HLR. Đồng thời, các HLR sẽ được thông báo khu vực MSC mà MS nội bộ. Nếu, sau một thời gian, MS muốn thực hiện cuộc gọi, các VLR sẽ có tất cả các thông tin cần thiết cho việc thiết lập cuộc gọi mà không cần phải kiểm tra HLR mỗi lần. Do đó, VLR theo trực quan là một HLR phân phối. VLR cũng chứa nhiều thông tin chính xác về vị trí thiết bị di động. AUC được kết nối đến HLR. Chức năng của AUC là cung cấp cho HLR các thông số xác thực và các bản mã được sử dụng cho mục đích an ninh. EIR là cơ sở dữ liệu, nơi nhận dạng các số định danh các thiết bị di động quốc tế (IMEI) cho tất cả các thiết bị di động đăng ký được lưu trữ.Một số thành phần khác của mạng là Echo Canceler, làm giảm hiệu lực gây nhiễu gây ra bởi các mạng di động khi kết nối với một mạch PSTN. Mạng giao tác chức năng (IWF) là giao diện giữa MSC và các mạng khác như PSTN và ISDN.

Các hệ thống phụ phát thanh bao gồm các thiết bị và chức năng liên quan đến việc quản lý theo sóng radio, bao gồm cả việc quản lý bằng tay. Nó chủ yếu bao gồm một BSC, BTS và MS. MS truyền thống được xem như là một một phần của hệ thống phụ phát thanh mặc dù nó luôn là một đầu cuối trên đường dẫn hội thoại và tổ chức đối thoại với các hệ thống mạng con để quản lý các di động của mình. MS bao gồm cả khả năng ngừng hoạt động của mạng và của người sử dụng. Hệ thống GSM được thực hiện như là một mạng lưới các tế bào radio cùng cung cấp thông tin đầy đủ về khu vực dịch vụ. Mỗi tế bào có một trạm BTS số thu phát riêng. Một nhóm các BTS được điều

Một phần của tài liệu Xây dựng hệ thống quan sát từ xa qua mạng điện thoại di động (Trang 31)