Sử dụng Xbee

Introduction

XBee Wire antenna
XBees trở thành Transcivers phổ biến vì những lý do sau. Chúng linh hoạt, chúng gửi và nhận data chỉ cần qua Serial port, có nghĩa là chúng tương thích với cả máy tính và vi điều khiển. Highly configurable- bạn có thể mesh mạng bằng hàng chục Xbees hoặc chỉ swapping data. Bạn có thể dùng Xbee để điều khiển robot, hay lắp đặt để giám sát nhiệt độ các phòng.
Để kết nối XBee với máy tính bạn cần thêm cổng serial port:
Explorer Roundup

Bắt đầu với X-CTU là cách đơn giản nhất để tiếp cận với Xbee

X-CTU là phần mềm miễn phí, được cung cấp bởi Digi (nhà sản xuất Xbee), ta dùng nó để cấu hình và quản lý Xbee, kiểm tra mạng Xbee.
Link download X-CTU và hướng dẫn cài đặt:

Adding XBee

Trước khi tiếp tục hãy chắc chắn đã kết nối đúng cách Xbee với máy tính. Kiểm tra Port name.
Thêm ảnh kiết nối vào đây
Ban đầu sau khi open X-CTU bạn sẽ thấy một cửa sổ như sau:
X-CTU when it first opens
Để add Xbee, click “Add device” icon -https://cdn.sparkfun.com/assets/learn_tutorials/2/2/3/add-icon.png- ở góc trên trái:
Add device window
Nếu bạn sử dụng USB Xbee board bạn chọn “USB Serial Port” còn nếu bạn dùng Serial Explorer bạn chọn “Communication Port”. Nếu không hiển thị hãy chắc chắn rằng cách kết nối không hở. Sau khi cài đặt các thông số ban đầu click Finish.
Cửa sổ cho phép cấu hình các thông số làm việc cho Xbee hiện nên:
An XBee module selected, configuration view
Bạn có thể nhìn thấy có rất nhiều thông số cấu hình ở đây. Để bắt đầu chọn channel=C, PAN ID=3332, DH=0, DL=0, MY=0.

Adding second XBee

Để test truyền thông Xbee bạn cần kết nối Xbee thứ 2 vào máy tính của bạn. Cấu hình một lần nữa giống các bước như trên. Khi đó ta sẽ có 2 Xbee trong cửa sổ cấu hình như sau:
Two XBees in one X-CTU

Quick and Easy Test

Click “Switch to Consoles” icon - https://cdn.sparkfun.com/assets/learn_tutorials/2/2/3/console-icon.png- ở góc trên phải cửa sổ. Chuyển giữa hai Xbee bằng cách chọn trong list bên tay trái.
Click vào icon này  https://cdn.sparkfun.com/assets/learn_tutorials/2/2/3/open-connect-icon.png để kết nối Xbee với Console window. Đã có thể bắt đầu gửi những ký tự đầu tiên giữa 2 Xbee bằng cửa sổ này.
Bạn chỉ cần kết nối Xbee với cổng UART của VĐK là đã có thể thực hiện giao tiếp như 2 cổng UART giao tiếp với nhau.
XBee console view

Configuring Networks

XBee networks example

Channel, PAN ID, MY address

Phần này sẽ trình bày cách cấu hình những thông số quan trọng của XBee như: PAN ID, MY address, và destination address.
Đầu tiên là Channel, Channel điều khiển băng tần truyền thông XBee. Hầu hết XBee hoạt động ở 2.4GHz 802.15.4 band. Những XBee chung một mạng phải hoạt động chung trong một Channel.
Thứ hai là Personal area network ID (PAN ID). Network ID là giá trị hex có giá trị từ 0 đến 0xFFFF. XBee này có thể kết nối với XBee khác nếu chúng có ở chung trong một Network ID. Có tới 16^4=65536 ID nên tỷ lệ rất nhỏ đề có thể truy cập bất hợp pháp và mạng trừ khi bạn cấu hình ở chế độ mặc định.
Cuối cùng là MY and destination addresses. Mỗi một XBee trong mạng đều được đăng ký bằng 16 bit địa chỉ (từ 0 đến 0xFFFF), được quy vào MY address hoặc “source” address. Destination address chỉ ra source address nào XBee có thể gửi data tới. Một XBee muốn send data tới XBee khác, nó phải có cùng destination address với XBee nguồn.
Ví dụ, nếu XBee 1 có MY addresss là 0x1234, và XBee 2 có destination address tương ứng 0x1234 thì XBee 2 có thể send data tới XBee 1. Nhưng nếu XBee 2 có MY address là 0x5201, và XBee 1 có destination address là 0x5200, thì XBee 1 không thể send data tới XBee 2. Trong trường hợp này, chỉ XBee 2 có thể send data tới XBee 1.
Chỉ XBee 1 send data được tới XBee 2. XBee 2 không send lại XBee 1 được.
Có thể config XBee dễ dàng bằng X-CTU sau đây là cách:

Radio Configuration

Chuyển về Configuration tab ở đây sẽ thấy các từ viết tắt CH, ID, DH, DL và MY. Bên cạnh là những editTextbox dùng để type vào những cài đặt.

Network ID (ID)

Bắt đầu bằng việc đưa ra một Network ID độc nhất. Nghĩ về con số yêu thích của bạn từ 0 tới 65535, và hãy chắc chắn rằng đó không phải là con số ưu thích của hàng xóm của bạn. Sau đó chuyển số đó sang hex và điền vào text box PAN ID (16-bit network ID)

MY Address (MY)

Công việc tiếp theo là tạo Address cho mỗi XBee trong mạng. Giá trị này nên là độc nhất cho mỗi XBee trong mạng. MY address có thể nhận giá trị từ 0x0000 đến 0xFFFF. Type address đó vào text box bên cạnh “MY 16-bit Source Address”.
Nếu chỉ có 2 XBee, có thể chỉ định cái thứ nhất là 0 và cái thứ hai là 1.
(XBee có thể dùng chung MY address khi đó chúng sẽ cùng nhận data giống nhau ta gửi broadcasted cho address này.)

Destination Address (DH & DL)

Destination address định nghĩa XBee nào mà source XBee giao tiếp cùng. Có hai giá trị thường dùng để set cho destination: destination high (DH) và destination low (DH). Có thể sử dụng một trong hai cách để set cho cặp XBee:
  1. Set DH bằng 0, và set DL bằng MY address của XBee nhận.
  2. Set DH to the  SH and DL to the SL of your destination XBee.
Cả hai cách đều được nhưng thừng dùng cách thứ 1 hơn.
Đây là ví dụ:
Setting
Acronym
XBee 1
XBee 2
Channel
CH
C
C
PAN ID
ID
4664
4664
Destination Address High
DH
0
0
Destination Address Low
DL
1
0
16-bit Source Address
MY
0
1

Write Changes

Sau khi set xong các thông số click https://cdn.sparkfun.com/assets/learn_tutorials/2/2/3/write-icon.png để lưu lại những thay đổi và XBee đã sẵn sàng hoạt động trong mạng.

Troubleshooting

Phần này sẽ trình bày một số lỗi thường gặp và cách sử lý khi làm việc với XBee:
  • Can’t Find Device: nếu XCTU không thể tìm thấy XBee, có thể recovery hoặc discovery.
  • XBees Not Communicating Wirelessly: nếu một cặp XBee bị lỗi trong việc giao tiếp với nhau nên reset mọi thứ về default.
  • Resetting XBees: Một số thủ thuật để cài lại XBee khi không có nút reset

Can’t Find Device

Device not found
Có hai lựa chọn được khuyến nghị là: Discovery hoặc Recovery

Discovery

Mở hộp thoại Discover radio devices click icon https://cdn.sparkfun.com/assets/learn_tutorials/2/2/3/discover-icon.png - góc trên trái.
Discover tool, searching all baud rates

Recovery

Nếu vẫn không thể động tới được XBee đó thì hãy dùng phương án thứ hai là Recover. Click Tool icon và chọn XBee Recovery.
Opening XBee recovery
Recovery tool
Chọn đúng phiên bản của XBee và chọn Recover (Phiên bản hiện tại đang có là X24)

XBee’s Not Communicating, Reset to Defaults

Nếu XBee không thể liên lạc với nhau hãy reset tất cả về default value.
Ở config tab click icon https://cdn.sparkfun.com/assets/learn_tutorials/2/2/3/default-icon.png click Yes để xác nhận rằng bạn muốn reset tất cả. Sau đó cần click icon https://cdn.sparkfun.com/assets/learn_tutorials/2/2/3/big-pencil-icon.png để write the settings
Config value error

Resetting Old (Pre-Reset Button) Explorers

Khi gặp vấn đề trong việc giao tiếp giữa máy tính và XBee. XCTU sẽ hiện lên hộp thoại dưới đây:
Reset notificationRST and GND pins

Nếu trên không có nút Reset trên USB explorers có thể dùng jump nối chân RST với GND để Reset XBee.

Nhận xét

Bài đăng phổ biến từ blog này

Thu tín hiệu điều khiển hồng ngoại Arduino

Sử dụng cảm biến màu sắc TCS3200

How to Use the Sharp IR Sensor (GP2Y0A41SK0F) - Arduino