Tải bản đầy đủ (.pdf) (22 trang)

Xây dựng giải pháp tính tiền nhanh trong siêu thị dựa trên mạng ZIGBEE

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 (1.31 MB, 22 trang )

Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 1

Mục lục
Mc lc 1
1  TÀI 2
1.1 Giới thiệu đề tài 2
1.2 Mô hình Queue-busting 3
1.2.1 Mô hình queue busting 3
1.2.2 Nguyên tắc hoạt động 4
1.2.3 Khả năng ứng dụng 4
1.3 Kế hoạch 4
1.4 Công cụ hỗ trợ 5
2  5
2.1 Tổng quan về mạng ZigBee 5
2.2 Application Layer 13
2.3 Application Support Layer 14
2.4 Network Layer 14
2.5 Physical Layer 14
2.6 Giới thiệu Z-stack của Texas Instrument 15
3 HIN THC 15
3.1 Hệ thống phần cứng 15
3.1.1 Bộ phần cứng CC2530 của TI 16
3.1.2 Datalogic Handheld corded scanner 19
3.1.3 Bộ chuyển đổi điện áp RS232 19
3.2 Thiết bị cashier 19
3.3 Thiết bị handheld 19
3.3.1 Ý tưởng 19
3.3.2 Mô hình 20
3.3.3 Hiện thực 20


3.4 Ứng dụng trên PC (personal computer) 21
4 KT LUN 22


Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 2

1   TÀI
1.1 
 tài : Xây dng gii pháp tính tin nhanh trong siêu th Queue Busting da
trên mng Zigbee.

 Sự cần thiết của đề tài :
Ngày nay, khi nền kinh tế phát triển, đời sống con người ngày càng được nâng
cao thì nhu cầu mua sắm của con người cũng tăng lên đáng kể. Các siêu thị mọc lên
ngày càng nhiều nhưng vẫn không đủ để phục vụ. Bằng chứng là số lượng người chờ
tính tiền tại các siêu thị luôn luôn đông đúc, con số này tăng lên rất nhanh vào những
ngày lễ, ngày cuối tuần.
Bên cạnh đó, hệ thống tính tiền truyền thống tại các siêu thị, được cho là “nỗi ám
ảnh” đối với những khách hàng đang đợi trong một hàng dài, không thể đáp ứng kịp,
không tận dụng được thời gian đợi của khách hàng. Điều này làm cho khách hàng tốn
rất nhiều thời gian để mua sắm, đồng thời làm giảm lợi nhuận của siêu thị, tăng áp lực
cho các nhân viên tính tiền, đặc biệt là vào dịp cuối tuần, lễ, tết.
Do đó, giải pháp Queue Busting được đưa ra nhằm tận dụng thời gian chờ của
khách hàng để giảm thời gian checkout tại quầy tính tiền. Để giải pháp có thể trở nên
cơ động hơn, việc đưa mạng không dây vào mô hình là yêu cầu thiết thực.

 Mục tiêu của đề tài :
- Hiểu được hoạt động của mô hình Queue Busting.

- Hiểu được các kiến thức về chuẩn 802.15.4.
- Xây dựng mô hình Queue Busting thử nghiệm dựa trên mạng Zigbee.

 Phân tích đề tài:
Đề tài của chúng tôi là xây dựng giải pháp Queue Busting trên mạng không dây
Zigbee nên việc tìm hiểu về mạng không dây Zigbee là ưu tiên hàng đầu. Tuy nhiên,
mô hình Queue Busting đã được áp dụng vào thực tế nên việc tìm hiểu nguyên tắc hoạt
động của mô hình này cũng rất cần thiết. Chúng ta có thể tóm tắt lại những vấn đề
chúng ta cần giải quyết như sau:
1. Tìm hiểu mô hình Queue Busting thực tế.
2. Nắm vững các kiến thức về mạng Zigbee
3. Hiện thực giải pháp trên theo chuẩn mạng Zigbee
4. Kiểm tra hoạt động và khắc phục các lỗi có thể xãy ra trong quá trình hoạt
động.
5. Hiện thực thêm các phương thức bảo mật cho hệ thống.

Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 3

1.2 Mô hình Queue-busting
1.2.1 Mô hình queue busting
- Ngày nay, việc xếp hàng để tính tiền rất bất tiện và mất thời gian đối với khách
hàng cũng như đối với siêu thị hoặc cửa hàng. Việc này làm cho các cửa hàng,
siêu thị mất một lượng khách hàng và thu nhập khá lớn, cũng như làm cho
khách hàng tốn nhiều thời gian không cần thiết.
- Do đó, chúng ta xây dựng một hệ thống giúp quét hàng hóa của khách hàng
nhanh hơn để việc thanh toán diễn ra mau chóng, giảm thời gian xếp hàng.
Giúp khách hàng tiết kiệm thời gian khi mua sắm. Giúp cửa hàng, siêu thị tăng
số lượng khách hàng mua sắm trong ngày → tăng doanh thu.

- Hệ thống như thế, được gọi là Queue Busting :
+ Queue Busting giải quyết vấn đề xếp hàng dựa trên nguyên tắc quét hàng hóa
(mã vạch của hàng hóa) của khách hàng trước khi họ đến quầy tính tiền. Do đó,
giảm thời gian quét hàng hóa đối với nhân viên thu ngân, giúp cho việc thanh
toán được diễn ra nhanh hơn.
+ Để việc quét hàng hóa trở nên nhanh hơn, hệ thống queue busting cần phải
làm việc được với các thiết bị quét mã vạch cầm tay và cố định đặt ở quầy thu
ngân. Các thiết bị này, giao tiếp với nhau thông qua mạng không dây, để thiết bị
cầm tay có thể hoạt động ở phạm vi rộng khi mà hàng đã quá dài. Hệ thống
queue busting được mô tả như hình sau :


Hình 2.1 - Khái nim h thng Queue Busting
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 4

1.2.2 Nguyên tc hong
- Khi có rất nhiều khách hàng đứng xếp hàng, một vào nhân viên sẽ cầm máy
quét mã vạch cầm tay, quét hàng hóa của từng khách hàng. Sau khi quét cho
một khách hàng xong, nhân viên sẽ quét tiếp một mã số định danh dành riêng
cho khách hàng đó. Tất cả thông tin về hàng hóa sẽ được lưu trữ trong máy quét
mã vạch cầm tay này.
- Khi đến quầy tính tiền, khách hàng chỉ phải đưa cho nhân viên thu ngân mã số
định danh trên. Tất cả thông tin về hàng hóa của khách hàng sẽ được truyền về
cho máy tính của nhân viên thu ngân. Việc thanh toán sẽ được diễn ra rất nhanh
chóng.

1.2.3 Kh ng dng
Hiện tại, hệ thống queue busting đã được triển khai trên một số của hàng, siêu

thị trên thế giới. Tuy nhiên, hệ thống chỉ dừng lại ở mức 1-1, tức là một thiết bị
quét mã vạch cầm tay kết nối với một thiết bị quét mã vạch cố định ở quầy thu
ngân. Do nhu cầu mở rộng, tất cả các thiết bị quét mã vạch cầm tay (handheld
scanner) có thể kết nối với tất cả thiết bị quét mã vạch cố định ở quầy thu ngân
(point of sale - POS), và tiết kiệm chi phí, nên giải pháp queue busting dựa trên
mạng không dây Zigbee được đưa ra.

1.3 

STT
DETAILS
DEADLINE
ASSIGN
1
Tìm hiểu mạng Zigbee và hardware sẽ hiện thực hệ
thống :
- Application layer và Network layer của mạng
Zigbee
- Datasheet và các cấu hình cho 2 board EB và BB
01/11
Team
1
Làm bộ chuyển đổi điện áp RS232

01/11
Hải
2
Xây dựng trên Evaluation Board (EB):
- 1 module để nhận data từ barcode scanner.
- 1 module truyền nhận data với PC.

- 1 databases mã khách hàng
11/11
Vinh
3
Xây dựng trên Battery Board (BB):
- 1 module đọc, ghi, xóa data cho Flash.
- 1 module nhận data từ barcode scanner
11/11
Hải
4
Xây dựng trên PC :
- 1 chương trình thanh toán hóa đơn.
- 1 databases mã hàng hóa và đơn giá.
11/11
Phúc
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 5

5
Alpha release :
- Kết hợp các module trên EB và BB lại để tạo
thành 1 bộ code hoàn chỉnh.
- Hoàn thành chức năng cơ bản nhất của hệ thống
18/11
Team
6
Alpha test :
- Kiểm tra chức năng cơ bản của toàn bộ hệ thống
từ quét hàng hóa đến lúc thanh toán

- Sửa chữa các lỗi xảy ra nếu có
25/11
Team
7
Beta release :
- Thêm các tính năng cần thiết khác : báo lỗi, xử lý
lỗi có thể xảy ra trong quá trình hoạt động …
- Thêm tính năng bảo mật cho hệ thống
05/12
Team
8
Beta test :
- Kiểm tra tất cả cách tính năng của hệ thống
- Sửa chữa các lỗi xảy ra nếu có
10/12
Team

1.4 
- IAR Embedded Workbech for 8051 8.10 : công cụ lập trình và kiểm tra lỗi của
toàn bộ luận văn.
- Barcode studio : hỗ trợ việc tạo ra các barcode cho việc kiểm tra hoạt động của
hệ thống
- ComTestSerial 3.0.0.103 : hỗ trợ việc kiểm tra hoạt động truyền nhận dữ liệu
giữa các thiết bị thông qua cổng COM
- Eclipse (Java) : hiện thực chương trình thanh toán trên PC
2 
2.1 
Th ng mà ZigBee nhm ti.
Chuẩn mạng ZigBee wireless phù hợp với nhu cầu thị trường rằng các kĩ thuật
wireless khác không thể lấp đầy(xem hình 1.1). Trong khi hầu hết các chuẩn wireless

hướng tới tốc độ nhanh hơn thì ZigBee nhắm tới tốc độ truyền data thấp. Trong khi các
giao thức wireless khác thêm càng nhiều tính năng thì ZigBee nhắm tới một tiny stack
mà phù hợp với các vi điều khiển 8-bit. Trong khi các kĩ thuật wireless khác hướng tới
cung cấp truyền data tới Internet hay phấn phối dòng media độ nét cao (high-
definition) thì ZigBee hướng tới điều khiển đèn hoặc gửi dữ liệu nhiệt độ từ các cảm
biến. Trong khi các kĩ thuật wireless khác được thiết kế để chạy trong vài giờ hoặc có
thể vài ngày bằng pin thì ZigBee chạy tới hang năm. Trong khi các kĩ thuật wireless
khác cung cấp 12 đến 24 tháng vòng đời cho một sản phẩm thì các sản phẩm ZigBee
có thể dùng trong hàng thập kĩ hoặc hơn trong các ứng dụng đặc trưng.
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 6


Các dịch vụ mà ZigBee hướng tới là việc kết nối cảm biến không dây và điều khiển
hay đơn giản là điều khiển không dây. Thật ra, slogan cho ZigBeee là “Wireless
Control That Simply Works”.
Thị trường điều khiển không dây các nhiều yêu cầu mà chỉ có ZigBee mới phù hợp:
- Tin cậy cao
- Chi phí thấp
- Năng lượng cần rất thấp
- Bảo mật cao
- Một chuẩn mở
Để có được năng lượng tiêu thụ thấp và chi phí thấp, ZigBee đã thêm một ràng buộc kĩ
thuật là tốc độ truyền thấp.
ZigBee là gì?
ZigBee có độ tin cậy cao.
Sự truyền thông không dây là không tin cậy. Chứng minh điều này bằng việc đi long
vòng với điện thoại di động, sau đó bước vào thang mày. Bất cứ ai sử dụng điện thoại
đều gặp sự cố cuộc gọi bị ngắt hoặc đường truyền yếu. Tất cả bởi vì song radio cũng

chỉ là các song. Chúng chạy qua các vật cản, có thể bị chặn bởi kim loại, nước hoặc
khối bê tong và phụ thuộc vào nhiều yếu tố phức tạp gồm thiết kế ăng-ten, sự khoách
đại năng lượng, và thậm chí các điều kiện thời tiết.
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 7

Tuy nhiên, điều khiển không dây thường không có cùng vấn đề kết hợp với một cuộc
điện thoại , việc di chuyển để tìm điểm nhận song tốt hơn hay việc đợi để cố quay lại
sau. Hiệp hội ZigBee hiểu điều này và vậy sự đặc tả ZigBee thể hiện điều này. ZigBee
giành khả năng tin cậy cao trong nhiều cách:
- IEEE 802.15.4 với O-QPSK và DSSS
- CSMA-CA
- 16-bit CRCs
- Acknowledgment tại mỗi hop (chặng)
- Việc nối mạng lưới (mesh) để tìm ra đường đi tin cậy
- End-to-end acknowledgments để kiểm tra dữ liệu đến đích
Điều đầu tiên là dựa vào một kĩ thuật wireless rất tin cậy, khoảng cách thấp, sự đặc tả
IEEE 802.15.4. Đặc tả này là một kĩ thuật radio mạnh, rất hiện đại được xây dựng trên
40 năm kinh nghiệm của IEEE. Nó dùng những gì được gọi là Offset-Quadrature
Phase-Shift Keying (O-QPSK) và Direct Sequence Spread Spectrum (DSSS), một sự
kết hợp của các kĩ thuật mà cung cấp hiệu suất tuyệt vời trong các môi trường tỉ lệ
signal-to-noise (tín hiệu trên nhiễu) thấp.
ZigBee dùng cái gọi là “Carrier Sense Multiple Access Collision Avoidance” (CSMA-
CA) để tang khả năng tin cậy. Trước khi truyền, ZigBee lắng nghe kênh truyền. Khi
kênh truyền trống, ZigBee bắt đầu truyền. Điều này ngăn các radio khỏi việc gây ra
xung đột dữ liệu. CSMA-CA tương tự những gì con người làm trong các hội thoại.
Chúng ta chờ người khác nói xong mới nói.
ZigBee dùng 16-bit CRC trên mỗi gói (packet), được gọi là một Fame Checksum
(FCS). Điều này đảm bảo các bit dữ liệu chính xác.

Mỗi packet được thử lại 3 lần (trong toàn bộ 4 lần truyền). Nếu packet không thể
truyền qua sau lần truyền thứ tư, thì ZigBee thông báo node gửi một vài điều có thể bị
về việc truyền này.
Một cách khác mà ZigBee có được khả năng tin cậy là kết nối mạng lưới (mesh).
Mạng lưới một cách cơ bản cung cấp 3 khả năng tang cường cho một mạng wireless:
mở rộng khoảng cách bằng multi-hop, việc tạo mạng ad-hoc, và quan trọng hầu hết là
tìm đường đi tự động và tự phục hồi.
Với mạng lưới, dữ liệu từ node đầu tiên có thể đến bất cứ node nào khác trong mạng
ZigBee, đánh giá khoảng cách bằng các radio để gửi message (hình 1.2).
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 8


Node 1 muốn giao tiếp với node 3, nhưng nó ra khỏi vùng phủ song của node 3.
ZigBee tự động tìm ra đường tốt nhất và node 1 sẽ gửi thong tin cho node 2, rồi truyền
tiếp đến node 3.
Bây giờ giả sử rằng, có vài thứ xảy ra đến đường đi này. Có thể node 2 hoàn toàn bị
loại bỏ hoặc chết hay vài vật cản như một bức tường bê-tông hoặc một thùng nước lớn.
Điều này không hề gì với ZigBee. ZigBee sẽ tự động phát hiện sự thất bại của đường
đi và đi vòng (hình 1.3).

Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 9

Thêm vào mạng lưới, ZigBee cung cấp việc broadcasting tin cậy, một kĩ thuật cho việc
phân phối một message đến nhiều node trong mạng. ZigBee cũng cung cấp
multicasting có thể gửi một message đến bất kì group các node. Và như một kĩ thuật
tìm đường back-up, ZigBee cung cấp tìm đường cây (tree routing) để augment mạng

lưới ZigBee trong các hệ thống giới hạn RAM.
ZigBee cũng cung cấp tự động end-to-end acknowledgments. Ứng dụng có thể biết
một gói cụ thể được nhận bởi node khác hay không. Với tất cả các retries, ZigBee lọc
ra các gói trùng, nên ứng dụng không cần bận tâm.
ZigBee có chi phí thấp
Nhiều nhà cung cấp stack và silicon, các module ZigBee và nhiều tài nguyên phân
phối với chi phí phát triển thấp cho các thiết bị ZigBee.
ZigBee sử dụng năng lượng thấp
Các thiết bị trong một mạng ZigBee có thể chạy trong nhiều năm chỉ 1 cặp pin AA phụ
thuộc ứng dụng.


Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 10

ZigBee bảo mật cao
Cho việc bảo mật mạng, ZigBee dùng National Institute of Standards and Technology
(NIST) Advanced Encryption Standard (AES). Chuẩn này, AES-128, là một mã hóa
khối (block cipher) mà mã hóa và giải mã các packets trong một phương thức khó để
bẽ khóa. Đây là một trong những chuẩn nổi tiếng. Nguyên nhân mà nó được dùng bởi
ZigBee là:
- Chuẩn được xác thực quốc tế.
- Miến phí …
- Có thể hiện thực trên một vi điều khiển 8-bit
ZigBee là một chuẩn mở toàn bộ
Nhiều nhà cung cấp ZigBee stack, silicon và các giải pháp ứng dụng.
Đặc tả ZigBee có thể được tải miễn phí từ

ZigBee có tốc độ dữ liệu thấp

Để có được chi phí thấp và năng lượng tiêu hao thấp và việc xem xét không gian và thị
trường ứng dụng mà ZigBee nhắm tới, hiệp hội ZigBee đã quyết định giữ giao thức
trong một môi trường tốc độ truyền dữ liệu thấp.
ZigBee nằm trên các IEEE 802.15.4 transceivers, trong không gian 2.4GHz truyền
thong tại 250kbps, nhưng do số lần retries, sự mã hóa và giải mã, và giao thức lưới đầy
đủ được dùng nên through-put thực sự khoảng 25kbps.
Transceivers là half-duplex, đây cũng là một yếu tố giảm through-put từ 250 tới
25kbps.
Các ứng dụng sử dụng ZigBee
- Home Automation
- Commercial Building Automation
- Industrial Plant Monitoring
- Telecommunication Applications
- Automatic Metering Initiative
- Personal Home and Health Care
ZigBee xuất hiện ở nhiều thị trường gồm nhà, thương mại, công nghiệp tự động, y tế
và các dịch vụ local-based.
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 11


Kin trúc mn ca ZigBee
Kiến trúc mạng ZigBee chia làm 3 phần chính:
- Ứng dụng
- ZigBee stack
- Radio
Và được chia thành các lớp, mỗi lớp không biết gì về lớp trên nó. Lớp trên được xem
như một “master” mà gửi yêu cầu cho “slave” bên dưới làm.
ZigBee không giống mô hình mạng OSI 7-layer, nhưng nó có vài thành phần giống

gồm PHY (physical), MAC (link layer), NWK (network). Các lớp 4-7 (transport,
session , presentation và application) được chuyển qua các lớp APS (APplication
support) và ZDO (ZigBee Device Object) trong mô hình ZigBee
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 12


Giữa các lớp là “Service Access Points”(SAPs). SAPs cung cấp API tách biệt bên
trong lớp khỏi các lớp trên và bên dưới. Giống như đặc tả IEEE 802.15.4, ZigBee
dùng 2 SAPs cho mỗi lớp, một cho dữ liệu và một cho sự quản lý.Ví dụ, tất cả các sự
truyền thong dữ liệu đến và từ lớp network đi qua “Network Layer Data Entity Service
Access Point” (NLDE-SAP). Các yêu cầu trong đặc tả ZigBee giống như APSDE-
DATA.request. Một yêu cầu gửi dữ liệu ra radio nhưng chỉ được khởi tạo ở lớp APS.
Hai lớp thấp nhất, MAC và PHY được định nghĩa bởi đặc tả IEEE 802.15.4. Lớp PHY
đơn giản dịch các packet thành các over-the-air bits và ngược lại. Lớp MAC cung cấp
khái niệm của một network, gồm một PAN ID, và kết nối thông qua các beacon
requests và reponses. Nó cũng cung cấp các per-hop acknowledgment và một vài lệnh
cho việc tham gia và tạo một mạng. Lớp MAC không có multi-hop hay mesh.
Lớp NWK có trách nhiệm cho hình thành mạng mesh, gồm broadcasting các packets
qua mạng, xác định các đường đi cho các unicasting packets, và đảm bảo các packets
được gửi một cách tin cậy từ một node đến node khác. Lớp network cũng có một tập
các lệnh cho mục đích bảo mật, gồm bảo mật tham gia và tái tham gia mạng. Tất cả
các mạng ZigBee được bảo mật ở lớp NWK, và toàn bộ payload của NWK frame được
mã hóa.
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 13

Lớp APS có trách nhiệm cho ứng dụng. Nó hoạt động như một bộ lọc cho ứng dụng

chạy phía trên nó các endpoints đơn giản là logic trong các ứng dụng này. Nó hiểu
những gì các clusters và endpoints đưa ra, và kiểm tra xem endpoint là một thành viên
của Application Profile và group trước khi gửi message lên trên. Lớp APS cũng lọc
các message trùng mà hoàn toàn được gửi lên bởi lớp NWK. Lớp APS giữ một bảng
local binding, một bảng chỉ các nodes hoặc các groups trong network mà node muốn
giao tiếp đến.
Lớp ZDO (bao gồm ZigBee Device Profile, ZDP) có trách nhiệm cho quản lý cục bộ
và over-the-air của network. Nó cung cấp các dịch vụ để khám phá các nodes khác và
các dịch vụ trong network, và có trách nhiệm trực tiếp cho trạng thái hiện tại của node
trên network.
Application Framework chứa ZigBee Cluster Library và cung cấp một framework mà
các ứng dụng chạy bên trong. Các endpoints là cơ chế được sử dụng tách biệt một ứng
dụng khỏi các ứng dụng khác.
Các dịch vụ bảo mật được dùng bởi nhiều lớp, và có thể được dùng bởi các lớp ZDO,
APS, or NWK, do đó nó nằm ở cạnh(xem hình 1.14).
Tất cả các layers có cái được gọi là một thông tin cơ bản. Tại lớp MAC, được gọi là
một PAN information Base (PIB). Tại lớp network được gọi là Network Information
Base (NIB), và tất nhiên AIB cho lớp APS. Tất cả “information base” nghĩa là các cài
đặt của lớp đó. Bao nhiêu retries được yêu cầu? PAN ID hay địa chỉ network hiện giờ
của một node cụ thể là gì? Các trường này trong “information base” nhìn chung được
cài đặt bởi các lớp cao hơn hoặc thông qua việc dùng các câu lệnh quản lý thông qua
các management SAPs.
Chú ý không có gì ở đây về sự tương tác với bất kì phần cứng trong một thiết bị
ZigBee hơn là radio. Không có gì nói về giao tiếp LEDs, LCD, speaker, GPIO ports,
bộ nhớ non-volatile hoặc flash. ZigBee chỉ quan tâm tới giao thức mạng và hành vi
over-the-air. ZigBee kiểm tra phù hợp yếu tố này. Khi tất cả các message over-the-air
có thể được hiểu một cách chính xác bởi bất kì node ZigBee khác, cho phép các nhà
cung cấp cải tiến trong khi vẫn cung cấp khả năng tương thích hoàn toàn giữa các nhà
cung cấp.



2.2 Application Layer


Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 14

2.3 Application Support Layer


2.4 Network Layer


2.5 Physical Layer

Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 15

2.6 -
3 HIN THC
3.1 
- Toàn bộ hệ thống bao gồm :
+ 2 Cashier : bao gồm 1 Evolution Board và 1 barcode scanner, có chức năng
request thông tin giỏ hàng của khách hàng rồi gửi lên cho PC để tính toán giá cả
cho giỏ hàng.
+ 5 Handheld : bao gồm 1 Battery Board và 1 barcode scanner, có chức năng
scan từng món hàng của khách hàng rồi chứa vào trong bộ nhớ
+ Handheld và Cashier giao tiếp với nhau thông qua mạng Zigbee

+ Các giao tiếp khác (giữa barcode scanner với board, giữa board với PC) :
truyền nhận dữ liệu thông qua cổng COM
- Sơ đồ kết nối thiết bị được mô tả như hình dưới đây :



Hình 7.1   kt ni thit b ca h thng


Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 16

- Kiến trúc software của hệ thống :


Hệ thống queue busting mà nhóm thực hiện :
- Giao tiếp không dây : bộ phần cứng CC2530 ZDK của Texas Instrument.
- Máy quét mã vạch : máy quét cầm tay có dây của Datalogic (Datalogic
Handheld corded scanner)
- Giao tiếp giữa Scanner-PC, giữa Scanner-CC2530 : thông qua cổng COM (tự
xây dựng)

3.1.1 B phn cng CC2530 ca TI
- Được thiết kế để cung cấp các tính năng mạnh mẽ cho việc phát triển mạng
Zigbee trong thị trường hiện nay.
- Sử dụng 2.4GHz IEEE 802.15.4
- Có thể hoạt động ở 125°C và điện áp thấp, tiết kiệm năng lượng.
- Bao gồm các phần cứng sau :
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh


SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 17


3.1.1.1 SmartRF05 Evaluation Boards
- Dùng để nạp code, kiểm tra lỗi cho CC2530 Evaluation Modules.
- Cung cấp nguồn cho CC2530 từ 2 pin AA, DC-in hoặc từ USB.
- Gắn các thiết bị ngoại vi kết nối với CC2530 Evaluation Modules như :
LCD, Flash (128kB), 2 UART, Joystick, Switch…
- Trong hệ thống, board này đóng vai trò là cashier. Thực hiện việc thanh
toán (checkout) các mã giỏ hàng (basket id) của khách hàng, kết nối với
PC qua cổng COM để truy cập cơ sở dữ liệu và in hóa đơn thanh toán.

Hình 7.1 - SmartRF05 Evaluation Board

3.1.1.2 SmartRF05 Battery Boards
- Nhỏ hơn và đơn giản hơn SmartRF05 Evaluation Boards.
- Chỉ có các ngoại vi cần thiết.
- Trong hệ thống, đóng vai trò là handheld. Thực hiện nhiệm vụ kết nối
với máy quét mã vạch (scanner) và lưu trữ vào flash nội dung giỏ hàng
của khách hàng. Khi cashier có yêu cầu, handheld sẽ gửi trả nội dung giỏ
hàng thông qua mạng zigbee.
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 18


Hình 7.2 - SmartRF05 Battery Board

3.1.1.3 CC2530 Evaluation Modules

- Module chính thực hiệc các công việc liên quan đến mạng không dây.
- Cần kết nối với board SmartRF05 và antenna để hoạt động.

Hình 7.3 - CC2530 Evaluation Modules

3.1.1.4 Một số các thiết bị khác

Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 19


Hình 7.4  CC2531 USB Dongle

Hình 7.5  CC2530 Antenna

3.1.2 Datalogic Handheld corded scanner
Cấu hình: 9600 baud rate, none parity bit, stop bit là 1
3.1.3 B chuyn áp RS232
Chuyển đổi điện áp 3.3V dùng cho board sang điện áp của RS232 để giao tiếp với máy tính
dùng MAX3232
3.2 T
3.3 T
3.3.1 ng
Ứng dụng có 2 quá trình xử lý dữ liệu:
Quá trình nhận dữ liệu từ người dùng
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 20


- Người dùng quét một Basket ID từ Scanner, LED1 sáng. Handheld sẵn sàng cho người
dùng quét Product IDs.
- Khi quét Product IDs, LED2 sẽ nhấp nháy báo đã nhận dữ liệu
- Khi quét xong các Product IDs, người dùng quét lại Basket ID để lưu vào bộ nhớ flash
và LED1 tắt.
Quá trình nhận dữ liệu và trả lời cho hệ thống
- Yêu cầu dữ liệu: Đọc bộ nhớ flash và tìm dữ liệu, nếu có thì gửi dữ liệu theo địa chỉ
của thiết bị yêu cầu.
- Xóa dữ liệu: Yêu cầu xóa một Basket hoặc toàn bộ trong flash.
- Cấu hình: chiều dài của Basket ID và Product ID
3.3.2 Mô hình
Hardware:
- 1 module scanner: giao tiếp với MCU thong qua UART
- 1 module radio: được tích hợp sẵn trên CC2530
- 1 module quản lý nguồn: sử dụng 2 Pin AA ~ 3.3V cho MCU và một mạch boost từ
3.3V lên 5V cho Scanner.
- 1 Flash 256kBytes: cho việc lưu trữ dữ liệu
Hình: Sơ đồ khối các chức năng
Hình: Các phần cứng cho hiện thực
Sofware: ứng dụng bao gồm:
- Giao tiếp với Scanner thông qua UART: 9600 baud rate, none parity bit, stop bit là 1
- Giao tiếp với mạng ZigBee: sử dụng Z-stack của TI
Hình: Sơ đồ phân lớp
Hình: Sơ đồ phát triển ứng dụng
3.3.3 Hin thc
Layout của bộ nhớ Flash
- Header
o Số lượng Basket: 1byte, có tối đa 255 Basket trong Flash
o
o Chiều dài tối đa của một Basket: 2byte

- Data
o Một cờ: 1 byte, cho biết vùng nhớ có basket hay không
o Data của Basket: có chiều dài được định nghĩa header của Flash
Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 21

Toàn bộ ứng dụng trên Handheld được hiện thực trong một task của OSAL. Sử dụng cơ chế
tạo event trong OSAL của Z-stack để gửi sự kiện đến task này cho việc xử lý. Có 2 nhánh sự
kiện chính cho 2 luồng dữ liệu:
- Sự kiện có dữ liệu từ Scanner
- Sự kiện từ mạng ZigBee, Z-stack
3.4  trên PC (personal computer)

Zigbee Queue_Busting GVHD : Vũ Tuấn Thanh

SVHT : Quang Vinh – Văn Hải – Hoàng Phúc Page 22


4 KT LUN
 A
 B
 C

×