Tải bản đầy đủ (.ppt) (29 trang)

Tiểu luận:"tìm hiểu công nghệ Blutooth" potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (550.59 KB, 29 trang )

THỰC TẬP NHẬN THỨC
ĐỀ TÀI: TÌM HIỂU CÔNG NGHỆ BLUETOOTH
SVTH: LÊ QUANG VŨ
LÊ HÙNG QUỐC
CBHD: Ths.VÕ ĐỨC HOÀNG
THỰC TẬP NHẬN THỨC
ĐỀ TÀI: TÌM HIỂU CÔNG NGHỆ BLUETOOTH
SVTH: LÊ QUANG VŨ
LÊ HÙNG QUỐC
CBHD: Ths.VÕ ĐỨC HOÀNG
THỰC TẬP NHẬN THỨC
ĐỀ TÀI: TÌM HIỂU CÔNG NGHỆ BLUETOOTH
SVTH: LÊ QUANG VŨ
LÊ HÙNG QUỐC
CBHD: Ths.VÕ ĐỨC HOÀNG
THỰC TẬP NHẬN THỨC
ĐỀ TÀI: TÌM HIỂU CÔNG NGHỆ BLUETOOTH
SVTH: LÊ QUANG VŨ
LÊ HÙNG QUỐC
CBHD: Ths.VÕ ĐỨC HOÀNG
THỰC TẬP NHẬN THỨC
ĐỀ TÀI: TÌM HIỂU CÔNG NGHỆ BLUETOOTH
SVTH: LÊ QUANG VŨ
LÊ HÙNG QUỐC
CBHD: Ths.VÕ ĐỨC HOÀNG
THỰC TẬP NHẬN THỨC
ĐỀ TÀI: TÌM HIỂU CÔNG NGHỆ BLUETOOTH
SVTH: LÊ QUANG VŨ
LÊ HÙNG QUỐC
CBHD: Ths.VÕ ĐỨC HOÀNG
THỰC TẬP NHẬN THỨC


ĐỀ TÀI: TÌM HIỂU CÔNG NGHỆ BLUETOOTH
Company
Logo
NỘI DUNG
Demo ví dụ bằng J2ME
Xây dựng chương trình về bluetooth
Đặc điểm
Lịch sử,hình thành và phát triển của Bluetooth
Khái niệm và mục đích về công nghệ Bluetooth
Company
Logo
CÔNG NGHỆ KHÔNG DÂY


Hồng ngoại Wireless
Bluetooth
ZigBee
Company
Logo
KHÁI NIỆM

Bluetooth là công nghệ không dây cho phép
các thiết bị điện, điện tử giao tiếp với nhau
trong khoảng cách ngắn, bằng sóng vô tuyến
qua băng tần chung ISM(Industrial, Scientific,
Medical) trong dãy 2.40 – 2.48 GHz.
Company
Logo
KHÁI NIỆM(tt)


Khi được kích hoạt, Bluetooth có thể tự động
định vị những thiết bị khác có chung công nghệ
trong vùng xung quanh và bắt đầu kết nối với
chúng. Nó được định hướng sử dụng cho việc
truyền dữ liệu lẫn tiếng nói.

Khi được kích hoạt, Bluetooth có thể tự động
định vị những thiết bị khác có chung công nghệ
trong vùng xung quanh và bắt đầu kết nối với
chúng. Nó được định hướng sử dụng cho việc
truyền dữ liệu lẫn tiếng nói.

Khi được kích hoạt, Bluetooth có thể tự động
định vị những thiết bị khác có chung công nghệ
trong vùng xung quanh và bắt đầu kết nối với
chúng. Nó được định hướng sử dụng cho việc
truyền dữ liệu lẫn tiếng nói.
Company
Logo
MỤC ĐÍCH

Bluetooth được thiết kế nhằm mục đích thay thế
dây cable giữa máy tính và các thiết bị truyền
thông cá nhân, kết nối vô tuyến giữa các thiết bị
điện tử với nhau một cách thuận lợi với giá
thành rẻ.
Company
Logo
MỤC ĐÍCH (tt)
Ví dụ: Bạn có thể hoạt động trên máy tính với một

bàn phím không dây, sử dụng bộ tai nghe không
dây để nói chuyện trên điện thoại di động của
bạn hoặc bổ sung thêm một cuộc hẹn vào lịch
biểu PDA(thiết bị hổ trợ cá nhân) của một người
bạn từ PDA của bạn
Company
Logo
CÁC LOẠI GIAO TIẾP BLUETOOTH

Gồm 3 loại:

OBEX(Object Exchange):dùng trao đổi các dữ
liệu vật lý:tập tin, hình ảnh và cả các dạng nhị
phân.
Company
Logo

L2CAP(Logical link control and adaptation
protocol): được sử dụng để gửi các gói dữ liệu
giữa máy chủ và máy khách
CÁC LOẠI GIAO TIẾP BLUETOOTH(tt)
Company
Logo

RFCOMM(Radio Frequency COMMunication):
được sử dụng cho luồng dữ liệu đơn giản.
CÁC LOẠI GIAO TIẾP BLUETOOTH(tt)
Company
Logo
LỊCH SỬ


Lịch sử tên Bluetooth:

Bluetooth là tên của nhà vua Đan Mạch – Harald
I Bluetooth(Danish Haral Blatand) (910-985).
Harald I Bluetooth đã hợp nhất Đan Mạch và
Norway.

Ngày nay Bluetooth là biểu tượng của sự thống
nhất Computer và TeleCom, giữa công nghệ
máy tính và công nghệ truyền thông đa phương
tiện
Company
Logo
Hình thành và phát triển của Bluetooth

Năm 1994 : lần đầu tiên hãng Ericsson đưa ra
một đề án nhằm hợp nhất liên lạc giữa các thiết
bị điện tử khác nhau mà không dùng đến các sợi
dây cáp nối cồng kềnh, phức tạp( dùng vi mạch
cỡ 9mm để truyền tín hiệu sóng vô tuyến).

Năm 1998: 5 công ty lớn trên thế giới gồm
Ericsson, Nokia, IBM, Intel và Toshiba đã liên
kết, hợp tác thiết kế và triển khai phát triển
chuẩn công nghệ nối không dây mang tên
Bluetooth nhằm kết nối các thiết bị vi điện tử lại
với nhau dùng sóng vô tuyến.
Company
Logo


Bluetooth có tốc độ phát triển khá nhanh, ứng dụng đa dạng.

Được coi là thị trường năng động và sôi nổi trong lĩnh vực truyền
thông.
Hình thành và phát triển của Bluetooth(tt)
Company
Logo
ĐẶC ĐIỂM

Tiêu thụ năng lượng thấp, cho phép ứng dụng trên nhiều loại thiết
bị, bao gồm các thiết bị cầm tay và điện thoại di động

Giá thành hạ.

Khoảng cách giữa 2 thiết bị đầu cuối có thế lên đến 10m ngoài trời
và 5m trong tòa nhà
Company
Logo

An toàn và bảo mật.

Độc lập với phần cứng và hệ điều hành.

Tương thích cao, được nhiều nhà sản xuất phần cứng cũng như
phần mềm hỗ trợ.
ĐẶC ĐIỂM(tt)
Company
Logo


Các loại giao tiếp bluetooth:
- Có 3 loại bao gồm:

OBEX: Viết tắt bởi “Object Exchange” giao thức giao tiếp được sử
dụng để trao đổi dữ liệu vật lý như các tập tin, hình ảnh, và kể cả
các định dạng nhị phân.

L2CAP: Viết tắt bởi “Logical Link Control and Adaptation Protocol”
được sử dụng để gửi các gói dữ liệu giữa máy chủ và máy khách.

RFCOMM: Viết tắt bởi ” Radio Frequency COMMunication” được
sử dụng cho luồng dữ liệu đơn giản.
Xây dựng chương trình về bluetooth
Company
Logo

Java Bluetooth API :
Bluetooth API thuộc JSR 82, và nó có khả năng cung cấp cả 3 loại
giao tiếp kể trên, đó là: OBEX, L2CAP và RFCOMM. Nhưng mà
chúng ta sẽ chỉ tập trung vào giao thức đơn giản nhất là RFCOMM
và mô tả cách thức gửi dữ liệu giữa các thiết bị thông qua giao thức
này.
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth:
Kỹ thuật giao tiếp giữa các thiết bị sẽ được thực hiện
theo quy tắc client-server. Đó là, bạn sẽ mở server và
sau đó chờ client kết nối tới, sau đó cả client và server

sẽ giao tiếp với nhau. Trong Bluetooth, bạn cũng làm kỹ
thuật tương tự, đó là ứng dụng phải cho phép người
dùng lựa chọn nó hoặc là client hoặc server.
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth: (tt)

Giải thích code của Client và Server

Server:
Mỗi thiết bị Bluetooth có các đối tượng Bluetooth cục bộ giúp
giao tiếp giữa các thiết bị. Trong JSR82, gọi phương thức
LocalDevice.getLocalDevice () sẽ trả về đối tượng của
thiết bị Bluetooth cục bộ. Sau đó đối tượng này sẽ gọi
phương thức setDiscoverable(DiscoveryAgent.GIAC),
trong đó chế độ thiết lập là GIAC. Nói một cách đơn giản,
bằng cách làm này, bạn cho phép thiết bị hiện tại tìm kiếm
các thiết bị khác.
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth: (tt)

Giải thích code của Client và Server (tt)

Server:
Để mở các kết nối Bluetooth, bạn cần phải xây dựng một chuỗi URL

Bluetooth và sẽ được gọi bên trong phương thức Connector.open (URL), phương
thức này sẽ trả về đối tượng StreamConnectionNotifier. Thực tế thì URL chính là
cách để khởi tạo các giao thức giao tiếp cho Bluetooth, giống như trên một hộp tìm
kiếm của Internet Explorer. Bạn chỉ cần gõ , trong đó
“http://” chính là giao thức và phần còn lại là địa chỉ. Tương tự, trong Bluetooth
bạn sẽ làm như sau:
URL = “btspp://localhost:” + UUID + “;name=rfcommtest;authorize=true”;
Ở đây, btspp:// cũng tương tự như http://, và phần còn lại là một định danh ID
duy nhất để xác định rằng nó chỉ có một địa chỉ duy nhất mà thôi.
Sau khi StreamConnectionNotifier đã được khởi tạo, nó phải gọi phương
thức acceptAndOpen() để mở giao tiếp và trả về đối tượng
StreamConnection. Tuy nhiên, nếu không có một kết nối client nào được tìm
thấy, nó sẽ chặn các tiến trình khác và chờ đợi.
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth: (tt)

Giải thích code của Client và Server (tt)

Server:
Bây giờ, bạn có thể sử dụng hai phương thức của đối tượng StreamConnection, đó là:
openOutputStream() hoặc openInputStream(). Cả hai được sử dụng để yêu cầu gửi và
nhận dữ liệu.
m_strUrl= "btspp://localhost:" + RFCOMM_UUID + ";
name=rfcommtest;authorize=true";
// m_StrmConn = BTFACADE.waitForClient(SERVICE_NBR);
try {
m_LclDevice = LocalDevice.getLocalDevice();

m_LclDevice.setDiscoverable(DiscoveryAgent.GIAC);
m_StrmNotf = (StreamConnectionNotifier)Connector.open(m_strUrl);
//Now it will start waiting for the client connection
m_StrmConn = m_StrmNotf.acceptAndOpen();
m_bInitServer = true;
m_Output = m_StrmConn.openOutputStream();
m_Input = m_StrmConn.openInputStream();
}
catch (BluetoothStateException e){
System.err.println( "BluetoothStateException: " + e.getMessage() );
} catch (IOException ex) { ex.printStackTrace(); } catch(Exception e)
{ System.err.println( "Exception: " + e.getMessage() ); }
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth: (tt)

Giải thích code của Client và Server (tt)

Client:
Để tạo client, UPI phải làm theo một số quy tắc để đạt được
mục tiêu của bạn, đó là thực thi giao diện DiscoveryListener.
Giao diện này cung cấp 4 phương thức sau:
void deviceDiscovered(RemoteDevice btDevice,
DeviceClass cod)
void servicesDiscovered(int transID, ServiceRecord[]
records)
void serviceSearchCompleted(int transID, int respCode)
void inquiryCompleted(int discType)

-> Đầu tiên, bạn phải quét để tìm kiếm các thiết bị Bluetooth xung
quanh bạn. Bạn phải nhận thông tin thiết bị cục bộ và thông qua nó
để lấy đối tượng DiscoveryAgent để bắt đầu tìm hiểu về các thiết bị
có sẵn.
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth: (tt)

Giải thích code của Client và Server (tt)

Client:
Code:
public void SearchAvailDevices() {
try {
//First, get the local device and obtain the discovery agent.
m_LclDevice = LocalDevice.getLocalDevice();
m_DscrAgent= m_LclDevice.getDiscoveryAgent();
m_DscrAgent.startInquiry(DiscoveryAgent.GIAC,this);
}
catch (BluetoothStateException ex) {
System.out.println("Problem in searching the Bluetooth
devices"); ex.printStackTrace(); }
}
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth: (tt)


Giải thích code của Client và Server (tt)

Client:
Đầu tiên, phương thức deviceDiscovered sẽ phát hiện các thiết bị Bluetooth
được tìm thấy. Sau đó, nhiệm vụ của bạn là tìm kiếm các dịch vụ có sẵn trên
thiết bị là: OBEX, RFCOMM hay L2CAP.
public void deviceDiscovered(RemoteDevice btDevice, DeviceClass cod) {
try {
// Device information
System.out.println("Major Device Class and information : "
+ cod.getMajorDeviceClass() + " Minor Device Class: "
+ cod.getMinorDeviceClass());
System.out.println("Bluetooth Address of the device: "
+ btDevice.getBluetoothAddress()); System.out.println("Friendly Name: "
+ btDevice.getFriendlyName(true));
// Now its our responsibility to search its services
UUID uuidSet[] = new UUID[1]; uuidSet[0] = RFCOMM_UUID;
Int searchID =m_DscrAgent.searchServices(null,uuidSet, btDevice,this);
} catch (Exception e) { System.out.println("Device Discovered Error: " + e); } }
Xây dựng chương trình về bluetooth (tt)
Company
Logo

Cơ chế hoạt động của bluetooth: (tt)

Giải thích code của Client và Server (tt)

Client:
Phương thức servicesDiscovered() dưới đây được kích hoạt khi các dịch vụ

trên thiết bị được tìm thấy. Tại đây, bạn dừng vòng lặp trên giao thức đầu tiên
mà bạn tìm thấy như Bluetooth.
public void servicesDiscovered(int transID, ServiceRecord[] records) {
for (int i = 0; i < records.length; i++) {
m_strUrl=records[i].getConnectionURL(ServiceRecord. AUT
HENTICATE_ENC RYPT, false);
System.out.println(m_strUrl);
//we have found our service protocol
if(m_strUrl.startsWith("btspp")) {
m_bServerFound = true;
m_bInitClient=true;
break;
}
}
Xây dựng chương trình về bluetooth (tt)

×