Professional Documents
Culture Documents
Báo Cáo Môn Học - vũ Bảo Linh
Báo Cáo Môn Học - vũ Bảo Linh
Sinh viên
BÁO CÁO MÔN HỌC VŨ BẢO LINH
MỤC LỤC
CHƯƠNG 1 : ĐẶT VẤN ĐỀ...........................................................................1
CHƯƠNG 2: GIỚI THIỆU VỀ SMARTHOME VÀ MẠNG ZIGBEE.......6
I. SMARTHOME...........................................................................................6
1. Định Nghĩa Nhà Thông Minh..................................................................6
2. Các Ưu Điểm Của Nhà Thông Minh.......................................................6
3. Nhà Thông Minh Ở Viêt Nam.................................................................6
II. Mạng Zigbee................................................................................................8
1. Khái Quát Về Zigbee...............................................................................8
1.1 Khái niệm mạng WPAN....................................................................8
1.2 Khái niệm về Zigbee.........................................................................9
1.3 Lịch sử phát triển................................................................................9
1.4 So sánh Zigbee với BlueTooth, Wifi..................................................9
2. Các Tính Năng.........................................................................................11
3. Ứng Dụng................................................................................................11
4. Mô Hình Giao Thức Của ZIGBEE/IEEE802.15.....................................13
4.1 Tầng vật lý.......................................................................................14
4.2 Tầng điều khiển dữ liệu Zigbee/IEEE 802.15.4 MAC....................16
4.3 Tầng mạng của Zigbee /IEEE 802.15.4...........................................21
4.4 Tầng ứng dụng của Zigbee/IEEE 802.15.4....................................21
5. Phân Loại Thiết Bị.................................................................................21
5.1 Zigbee Coordinator (ZC).................................................................22
5.2 Zigbee Router (ZR).........................................................................22
5.3 Zigbee End Device (ZED)...............................................................22
6. Các Kiều Hình Mạng Zigbee...............................................................23
6.1 Cấu trúc mạng hình sao (Star topology)........................................23
6.2 Cấu trúc mạng lưới (Mesh topology).............................................24
6.3 Cấu trúc mạng hình cây (Ciuster Tree topology)...........................25
7 An Ninh Zigbee.................................................................................26
7.1 Trust Center..................................................................................26
7.2 Khóa bảo vệ..................................................................................26
7.3 Chế độ bảo vệ...............................................................................27
7.3.1 Chế độ bảo mật tiêu chuẩn.....................................................27
7.3.2 Chế độ bảo mật cao...............................................................28
8. Hướng Phát Triển..............................................................................28
8.1 Các phiên bản của Zigbee..............................................................28
8.2 Hướng phát triển Zigbee trong tưong lai.......................................28
CHƯƠNG 3: LINH KIỆN VÀ MODULE SỬ DỤNG...................................30
I. Module Zigbee DRF 1605H......................................................................30
1. Khái Quát...............................................................................................30
2. Truyền Dữ Liệu.....................................................................................32
2.1 Truyền dữ liệu nối tiếp....................................................................32
2.2 Kiểu truyền dữ liệu ponit-to-point..................................................35
3. Thông Số Do Nhà Sản Xuất Cung Cấp.................................................37
BÁO CÁO MÔN HỌC VŨ BẢO LINH
4. Tập Lệnh................................................................................................38
II. Module Arduino.........................................................................................41
1. Board Arduino Uno R3..........................................................................44
2. Board Arduino Mega 2560....................................................................45
3. Tập Lệnh................................................................................................47
III. Module Điều Khiển AC TAC 500...............................................................49
IV. Module Mega Ethernet................................................................................49
CHƯƠNG 4: THI CÔNG.................................................................................51
I. Sơ Đồ Kết Nối Phần Cứng...........................................................................51
1. Gửi Dữ Liệu Điều Khiển (Master)................................................................. 51
2. Nhận Dữ Liệu- Thực Thi Đóng Ngắt Thiết Bị (Slaver).................................52
II. Lưu Đồ Giải Thuật.......................................................................................53
1. Coordinator............................................................................................53
2. Router....................................................................................................54
3. Nguyên Lý Hoạt Động Của Hệ Thống..................................................55
III. Ứng Dụng Điều Khiển Trên Điện Thoại..............................................................55
1. Giới Thiệu Về Phần Mền Lập Trình App-App Inventor...............................55
2. Các Bước Thiết Kế Ứng Dụng.......................................................................58
CHƯƠNG 5: KẾT QUẢ THỰC NGHIỆM....................................................64
I. Hình Ảnh Mô Hình......................................................................................64
II. Giao diện App điều khiển............................................................................64
III. Kết Quả Điều Khiển Trên Mô Hình............................................................65
CHƯƠNG 6 : KẾT LUẬN................................................................................66
I. Kết Luận......................................................................................................66
II.Hướng Phát Triển Đề Tài............................................................................66
BÁO CÁO MÔN HỌC VŨ BẢO LINH
LỜI MỞ ĐẦU
Trong mạng viễn thông ngày này, con người đang quản lỷ, trao đổi, giao tiếp
tranh luận, mua bán và thử nghiệm - nghĩa là thực hiện tất cả các loại hình hoạt động
bằng cách thức mà chì có IOT mới có thế làm được. Mạng viễn thông đã tạo ra một
cầu nối liên kết loài người trên khắp hành tinh của chúng ta, và đang mở rộng không
ngừng, đầy hứa hẹn, hy vọng. Tuy vậy, trong một dải băng tần eo hẹp vẫn còn tồn
động nhiều thách thức nếu muốn đạt được đầy đủ tiềm năng đó. Các nhà khoa học trên
thế giới đã nghĩ đến việc sử dụng các băng tần cao hơn, nhưng việc này đang vấp phải
nhiều trở ngại vì công nghệ điện tử và chế tạo chưa theo kịp. Vì vậy một giải pháp cấp
bách được đưa ra là sử dụng chung kênh tần số, mặc dù vẫn còn nhiều vấn đề phát
sinh, ví dụ như là can nhiều lẫn nhau giừa các thiết bị cùng tần số, hay là vấn đề xung
đột giừa các thiết bị... Một trong những công nghộ mới hiện đang được ứng dụng trong
các mạng liên lạc đã đạt được hiệu quả là công nghệ ZigBee.
Công nghệ ZigBee là công nghệ được áp dụng cho các hệ thông điều khiển và
cảm biến có tốc độ truyền tin thấp nhưng chu kỳ hoạt động dài. Công nghệ ZigBee
hoạt động ở dải tần 868/915 MHz và 2,4 GHz, với các ưu điềm là độ trề truyền tin
thấp, tiêu hao ít năng lượng, giá thành thấp, ít lỗi, dễ mở rộng, khả năng tương thích
cao. Trong luận văn này, em muốn trình bày các khảo cứu của em về công nghệ
ZigBee và ứng dụng kết nối thiết bị cùa ZigBee để có thề hiểu rõ hơn về công nghệ
này.
Đồng thời, nhà thông minh đang là một xu hướng đang phát triển trong việc xây
dựng các công trình nhà ở, các căn hộ, hay các trung tâm thương mại. Từ lâu, nó đã là
một đề tài thu hút được nhiều sự quan tâm và nghiên cứu của các nhà khoa học cũng
như cộng đồng. Với tiêu chí đó, khóa luận này sẽ trình bày về cách xây dựng mô hình
một hệ thống giám sát và điều khiển đơn giản trong việc kết nối và điều khiển các thiết
bị trong nhà thông qua mạng Zigbee.
Hy vọng thông qua các vấn đề được đề cập trong bản luận văn này, mội người
sẽ có được sự đánh giá và hiểu biết sâu sắc hơn về công nghệ ZigBee/IEEE 802.15.4
và vai trò cũng như tiềm năng của công nghệ này trong cuộc sống.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Trong xu thế hội nhập nền kinh tế quốc tế, việc phát triển công nghiệp hóa –
hiện đại hóa luôn được Đảng và Nhà nước ta đặt ƣu tiên hàng đầu trong lĩnh vực phát
triển kinh tế, một trong những phương châm đúng đắn và xuyên suốt trong quá trình
xây dựng đất nước ta ngày càng phát triển trong lĩnh vực công nghệ và khoa học kỹ
thuật cũng như nhiều ngành lĩnh vực khác là ―đi tắt đón đầu tiếp thu những thành tựu
khoa học hiện đại của thế giới để cải tiến nền kỹ thuật nước nhà, để nước ta không còn
lạc hậu về khoa học công nghệ.
Nhờ chính sách đúng đắn này mà Việt Nam đang tiến dần, tiếp cận các công
nghệ hiện đại của thế giới từng bước cải thiện và hoàn thiện tình trạng sản xuất lạc
hậu, thủ công, năng suất kém và nhiều lĩnh vực nguy hiểm có tính chất độc hại đến đời
sống ngƣời lao động. nâng cao dần mức sống cho người dân.
Việc tiếp thu những thành tựu khoa học kỹ thuật của thế giới cùng đi đôi với
việc phát triển tầng lớp kế thừa có tri thức về công nghệ hiện đại đồng thời cũng có
trách nhiệm phát huy, sáng tạo những kỹ thuật mới góp phần phát triển nền khoa học
kỹ thuật nước nhà cũng là góp phần vào việc thúc đẩy công nghệ hiện đại đang phát
trên thế giới.
Ngày nay trên thế giới với sự bùng nổ của các ngành công nghệ thông tin , điện
tử V. V.. . Đã làm cho đời sống của con người ngày càng hoàn thiện. Các thiết bị tự
động hóa đã ngày càng xâm lấn vào trong sản xuất và thậm chí là vào cuộc sống sinh
hoạt hằng ngày của mỗi con người. Do đó một ngôi nhà thông minh không còn là mơ
ước của con người nữa mà nó đã trở thành hiện thực hóa .Qua báo chí, các phương tiện
truyền thông , internet chúng ta có thế thấy những mô hình ngôi nhà thông minh đã ra
đời. Là sinh viên khoa Điện – Điện tử chuyên ngành Hệ thống nhúng của trường Đại
học Thủy Lợi, với những kiến thức đã học cùng với mong muốn ứng dụng kiến thức tự
động hóa đó để đáp ứng được nhu cầu sinh hoạt hằng ngày, chúng em đã tìm hiểu đề
tài Hệ Thống Nhà Thông Minh Dùng Zigbee
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Công nghệ số có phần chung rất lớn với công nghệ thông tin, đó là phần quản
trị và xử lý dữ liệu được số hoá. Trải qua các làn sóng của công nghệ số, những đột
phá trong thời gian gần đây như điện toán đám mây, thiết bị di động thông minh, trí
tuệ nhân tạo, dữ liệu lớn, IoT… đang tạo điều kiện cho sản xuất thông minh được thực
hiện rộng rãi, mở đầu cho cuộc cách mạng công nghiệp lần thứ tư.
IoT là thuật ngữ dùng để chỉ các đối tượng có thể được nhận biết (identifiable)
cũng như chỉ sự tồn tại của chúng trong một kiến trúc mang tính kết nối. Cụm từ này
được đưa ra bởi Kevin Ashton vào năm 1999. Ông là một nhà khoa học đã sáng lập ra
Trung tâm Auto-ID ở đại học MIT, nơi thiết lập các quy chuẩn toàn cầu cho RFID
(một phương thức giao tiếp không dây dùng sóng radio) cũng như một số loại cảm
biến khác. IoT sau đó cũng được dùng nhiều trong các ấn phẩm đến từ các hãng và nhà
phân tích.
Việc trang bị những công nghệ theo dõi, nhận biết vào những vật thông dụng
trong đời sống sẽ làm thay đổi rất nhiều cách chúng ta tương tác với đồ vật cũng như
cách tương tác giữa người với người. Theo ước tính của công ty ABI Research, đến
năm 2020, toàn thế giới sẽ có 30 tỉ thiết bị được kết nối không dây vào mạng lưới IoT.
Điểm quan trọng của IoT đó là các đối tượng phải có thể được nhận biết và định
dạng (identifiable). Nếu mọi đội tượng, kể cả con người, được "đánh dấu" để phân biệt
BÁO CÁO MÔN HỌC VŨ BẢO LINH
bản thân đối tượng đó với những thứ xung quanh thì chúng ta có thể hoàn toàn quản lí
được nó thông qua máy tính. Việc đánh dấu (tagging) có thể được thực hiện thông qua
nhiều công nghệ, chẳng hạn như RFID, NFC, mã vạch, mã QR, watermark kĩ thuật
số... Việc kết nối thì có thể thực hiện qua Wi-Fi, mạng viễn thông băng rộng (3G, 4G),
Bluetooth, ZigBee, hồng ngoại...
Không phải tất cả mọi thứ nằm trong IoT đều nhất thiết phải kết nối vào một
mạng lưới toàn cầu, chúng ta có thể hoạt động trong từng hệ thống đơn lẻ (subsystem).
Hãy tưởng tượng đến một căn nhà thông minh, trong đó các đồ điện gia dụng có thể tự
chúng tương tác với nhau và hoạt động mà không cần phải vào Internet, trừ khi chúng
ta cần điều khiển nó từ xa. Ngôi nhà này có thể được xem là một subsystem. Cũng
giống như hiện nay chúng ta có các mạng LAN, WAN, mạng ngang hàng nội bộ chứ
không kết nối trực tiếp vào Internet.
Dòng tivi SUHD 2016 của Samsung sẽ được hoạt động như một bộ điều khiển
cho toàn bộ hệ thống thiết bị thông minh trong ngôi nhà của bạn chỉ với tính năng
SmartThings. Với việc áp dụng tính năng này, người dùng không cần kiểm soát từng
thiết bị riêng biệt với nhiều ứng dụng khác nhau, mà có thể truy cập và điều khiển tất
cả các thiết bị thông minh trực tiếp từ tivi SUHD và Smartphone, thông qua một giao
diện màn hình tivi đơn giản và duy nhất.
Tính năng SmartThings Samsung hứa hẹn sẽ hỗ trợ công nghệ IoT cho tất cả sản
phẩm tivi của hãng này đến năm 2017 và toàn bộ sản phẩm phần cứng của Samsung
cũng sẽ tương thích IoT trong vòng 5 năm tới.
Giải pháp nhà thông minh sẽ làm cho những thiết bị điện tử bình thường
trong ngôi nhà trở nên thông minh và gần gũi với người dùng hơn, chúng được
kiểm soát thông qua các thiết bị truyền thông như điều khiển bằng thiết bị từ xa,
điện thoại di động hoặc internet. Ngôi nhà thông minh đơn giản bao gồm một mạng
điều khiển liên kết một số lượng cố định các thiết bị điện, điện tử gia dụng trong
ngôi nhà và chúng được điều khiển thông qua một thiết bị điều khiển từ xa, đáp ứng
được các cá nhân có nhu cầu nhà thông minh ở mức trung bình.
Tạo sao dùng ZigBee mà không sử dụng mạng không dây khác?
Chúng ta cần một chuẩn kết nối đủ mạnh để cũng có thể kết nối nhiều thiết bị
nhưng cần giảm trọng lượng và tầm giá thi công, chính vì vậy, Wifi và Bluetooth
không thể đáp ứng tốt điều này,sử dụng băng thông rộng, kết nối dễ bị xâm nhập,
không thích hợp với những kết nối gọn nhẹ trong nhà thông minh, tiêu hao quá nhiều
điện năng và không dùng Pin.
Mạng truyền tín hiệu và dữ liệu điều khiển trong đề tài này được sử dụng là
mạng Zigbee. Vì mạng này đáp ứng được những yêu cầu được nêu ở trên.
Kỹ thuật truyền thông không dây Zigbee ra đời dưới sự giám sát và bảo trợ của
hơn 150 nhà sản xuất linh kiện hàng đầu thế giới.
Với 3 lợi thế lớn nhất: Khả năng tiêu tốn điện năng thấp , giảm diện tích lắp đặt
,gọn nhẹ và dễ thi công ở mọi địa hình, Zigbee là công nghệ truyền phát hiệu quả nhất
cho nhà thông minh và nền tảng ưu việt cho IoT.
Ngoài ra ZigBee còn cung cấp một tiêu chuẩn toàn cầu để có thể điều khiển,
kiểm soát các thiết bị chiếu sáng, quản lý năng lượng,an ninh,cũng như kết nối được
với các mạng ZigBee khác.
Trong tương lai hướng phát triển của ZigBee đó là có thể áp dụng cho tất cả các
hệ thống điều khiển và cảm biến với các ưu điểm vượt trội: giá thành thấp, tiêu hao ít
năng lượng, ít lỗi, dễ mở rộng, khả năng tương thích cao, Zigbee thiết lập cơ sở cho
những tầng cao hơn trong giao thức (từ tầng mạng đến tầng ứng dụng) về bảo mật, dữ
liệu, chuẩn phát triển.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
I. SMARTHOME
1. Định Nghĩa Nhà Thông Minh
Nhà thông minh (tiếng Anh: smart-home hoặc intelli-home, home automation)
là kiểu nhà được lắp đặt các thiết bị điện, điện tử có tác dụng tự động hoá hoàn toàn
hoặc bán tự động, nó thay thế con người trong việc thực hiện một số thao tác quản lý,
điều khiển...
Trong căn nhà thông minh, đồ dùng trong nhà như các thiết bị phòng ngủ,
phòng khách đến toilet đều gắn các bộ điều khiển điện tử có thể kết nối với internet và
điện thoại di động, cho phép chủ nhân điều khiển từ xa hoặc lập trình cho chúng hoạt
động theo lịch. Thêm vào đó, các đồ gia dụng có thể hiểu được ngôn ngữ của nhau và
có khả năng tương tác với nhau...
Một ngôi nhà thông minh đầy đủ, thường bao gồm các tính năng:
• Phân phối đa phương tiện, là một rạp hát gia đình.
• Điều khiển việc chiếu sáng, mành, rèm.
• Giám sát, điều khiển môi trưởng (nhiệt độ, độ ẩm...).
• Có khả năng liên lạc giữa các phòng.
• Giám sát, điều khiển camera an ninh.
• Giám sát và điều khiển từ xa.
2. Các Ưu Điểm Của Nhà Thông Minh
Nhà thông minh sử dụng các thiết bị và công nghệ tự động hóa, thông minh
hóa, giúp cho con người nhàn hạ hơn trong sinh hoạt hằng ngày. Nói cách khác, đây là
hệ thống giúp chủ nhân tận hưởng sự tiện nghi của cuộc sống và dễ dàng quản lý tổng
quát đối với cả tòa nhà. Chỉ với một chiếc điều khiển từ xa, chủng ta có thể điều khiển
tất cả, dù đang ở bất kỳ nơi nào. Chúng ta có thể tưởng tượng ra hiệu quả mà nhà
thông minh mang lại thông qua những hoạt động rất gần gũi, chẳng hạn như nằm trên
giường để mở cổng; sẽ không còn chuyện bị ngã do không nhìn thấy đường bởi đèn
BÁO CÁO MÔN HỌC VŨ BẢO LINH
cầu thang sẽ tự sáng lên khi có người; hệ thống đèn trong phòng, bếp, bình nước
nóng... sẽ hoạt động đúng giờ đã định; toàn bộ hệ thống đèn sẽ tự tắt sau khi không
cần thiết; khống chế nhiệt độ chênh lệch giữa bên ngoài và trong nhà và còn rất nhiều
tiện ích khác.
Không chỉ điều khiển được trong phạm vi ngôi nhà, công nghệ này còn cho
phép tích hợp điều khiển qua điện thoại (cố định hoặc di động), internet hay PDA. Vì
vậy, mọi sinh hoạt có thể được kiểm soát dù chúng ta đang ở công sở hay ngoài
đường... Không chỉ riêng các ngôi nhà nhỏ, chủng ta hoàn loàn có thể thông minh hóa
bất kỳ một không gian sống nào, kể cả trụ sở văn phòng, siêu thị, trung tâm thương
mại, khách sạn, nhà hàng, nhà xưởng sản xuất, ngân hàng, bệnh viện hay các khu phức
họp khác... nếu lựa chọn công nghệ phù hợp.
3. Nhà Thông Minh Ở Viêt Nam
Ông Nguyễn Tử Quảng, Tổng giám đốc công ty Bkis, chia sẻ cách đây nhiều
năm, khi đọc thông tin về biệt thự công nghệ cao với khả năng tự điều chỉnh âm thanh,
ánh sáng... theo ý thích của tỷ phú Bill Gates, ông đã mong muốn có thể trang bị khả
năng tự động cho các căn nhà bằng công nghệ do chính Việt Nam sản xuất.
Trong Triển lãm thành tựu kinh tế - xã hội Việt Nam và Thăng Long - Hà Nội
2010, diễn ra từ ngày 1/10 đến 6/10 tại Trung tâm triển lãm Giảng Võ - Hà Nội, Bkav
đã giới thiệu Hệ thống nhà thông minh SmartHome. Đây là một trong những công
trình công nghệ cao hoàn toàn do các kỹ sư và chuyên gia của Công ty đầu tư phát
triển công nghệ ngôi nhà thông minh Bkav SmartHome (công ty thành viên của Bkav)
nghiên cứu và sản xuất.
SmartHome kết nối sản phẩm điện tử gia dụng thành mạng thiết bị và hoạt động
theo các kịch bản khác nhau nhằm tạo môi trường sống tiện nghi, an toàn và tiết kiệm
năng lượng. Chẳng hạn, khi có người bước vào nhà, hệ thống đèn sẽ tự bật nhờ thiết bị
cảm biến hồng ngoại. Đèn chiếu sáng còn có thể điều chỉnh ánh sáng, màu sắc... theo
sở thích của chủ nhân. Khi thiết bị chiếu phim hoạt động, hệ thống đèn tự động giảm
độ sáng, rèm cửa cũng tự động khép lại để tạo không khí của một phòng chiếu phim.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Ngoài ra, ngôi nhà thông minh của Bkav SmartHome còn được trang bị hệ
thống kiểm soát môi trường, cảnh báo an ninh (kiểm soát các nguy cơ cháy, nồ hay bị
xâm nhập trái phép), giải trí đa phương tiện Multimedia (quản lý thư viện âm nhạc,
phim, ảnh... của chủ nhà).
Để điều khiển các thiết bị điện tử gia dụng, người dùng có thể tương tác trên
giao diện cảm ứng của máy tính bảng (tablet) được đặt ở các vị trí thuận tiện trong nhà
hoặc đỉện thoại dỉ động 3G.
Tùy theo nhu cầu, người sử dụng có thể cấu hình hệ thống hoạt động theo
những kịch bản bất kỳ như lập trình hẹn giờ tắt đèn khỉ đỉ ngủ, đổ thúc ăn vào bể cá
khỉ vắng nhà, hoặc nếu quên tắt TV, bếp gas..., khi tới công sở, họ có thể gửi tin nhắn
qua điện thoại di động để điều khiển thiết bị từ xa. Ông Quảng khẳng định "nhà thông
minh" không còn là khái niệm xa vời, đắt đỏ. Tùy theo mức độ sử dụng mà mức giá
của SmartHome sẽ dao động từ vài triệu đán vài trăm triệu đồng.
II. Mạng Zigbee
1 Khái Quát Về Zigbee:
1.1 Khái niệm mạng WPAN.
WPAN là mạng vô tuyến cá nhân. Nhóm này bao gồm các công nghệ vô tuyến
có vùng phủ nhỏ tầm vài mét đến hàng chục mét tối đa. Các công nghệ này phục vụ
mục đích nối kết các thiết bị ngoại vi như máy in, bàn phím, chuột, đĩa cứng, khóa
USB,đồng hồ,...với điện thoại di động, máy tính. Các công nghệ trong nhóm này bao
gồm: Bluetooth, VVibree, ZigBee, UWB, VVireless USB, EnOcean...
BÁO CÁO MÔN HỌC VŨ BẢO LINH
sử dụng công nghệ Bluetooth. Phạm vi hoạt động của nó có thể đạt từ 10 _75m trong
khi đó Bluetooth chỉ có 10 mét trong trường hợp không có khuếch đại.
Tiêu chuẩn này hỗ trợ các nhu cầu đa dạng của hệ sinh thái toàn cầu, các nhà
sản xuất sản phẩm và những dự án của chính phủ để đáp ứng nhu cầu năng lượng và
nước trong tương lai.
Zigbee điều khiển từ xa: cung cấp một tiêu chuẩn toàn cầu tiên tiến và dễ sử
dụng điều khiển từ xa RF hoạt động non-line-of-sight, hai chiều, còn phạm vi sử dụng
và tuổi thọ pin mở rộng. Nó được thiết kế cho một loạt các thiết bị rạp hát tại nhà, các
hộp set-top, thiết bị âm thanh khác.
Điều khiển từ xa ZigBee giải phóng người tiêu dùng điều khiển từ xa ở các
thiết bị.
Nó cung cấp cho người tiêu dùng linh hoạt hơn, cho phép kiểm soát các thiết bị
từ phòng gần đó và vị trí của các thiết bị hầu như bất cứ nơi nào - bao gồm cả phía sau
gỗ, tường, trang trí nội thất hoặc thủy tinh.
Zigbee nhà thông minh: Zigbee nhà thông minh cung cấp một tiêu chuẩn toàn
cầu cho các sảm phẩm tương thích cho nhà thông minh có thể kiểm soát thiết bị, chiếu
sang, quản lý môi trường năng lượng và an ninh, cũng như mở rộng để kết nối với các
mạng Zigbee khác. Nhà thông minh cho phép người tiêu dùng tiết kiệm tiền, cảm thấy
an toàn hơn và tận hưởng một loạt các tiện nghi dễ dàng và ít tốn kém để duy trì.
Tất cả sản phẩm Zigbee nhà thông minh được chứng nhận để thực hiện. Nhiều
công ty đổi mới đã đóng góp chuyên môn của họ vào tiêu chuẩn này, bao gồm Phillips,
Control4 và Texas Instruments.
Zigbee chăm sóc sức khỏe: là theo dõi bệnh nhân tại nhà. Ví dụ, huyết áp và
nhịp tim của một bệnh nhân được đo bởi các thiết bị đeo trên người. Bệnh nhân mang
một thiết bị Zigbee tập hợp các thông tin liên quan đến sức khỏe như huyết áp và nhịp
tim. Sau đó dữ liệu được truyền không dây đến một máy chủ địa phương, có thể là một
máy tính cá nhân đặt trong nhà bệnh nhân, nơi mà việc phân tích ban đầu được thực
hiện.
Cuối cùng, thông tin quan trọng được chuyển tới y tá của bệnh nhân hay nhân
viên vật lý trị liệu thông qua Internet để phân tích sâu hơn. Chăm sóc sức khỏe hàng
đầu và công ty đang hỗ trợ công nghệ cho sự phát triển của ZigBee Chăm sóc sức
khỏe, bao gồm Motorola, Phillips, Freescale Semiconductor, Avvarepoint và công
nghệ RF.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
4.1 Tầng vật lý: cung cấp 2 dịch vụ chính là dịch vụ dữ liệu (PHY) và dịch vụ
quản lý (PHY).
- Dịch vụ dữ liệu (PHY) điều khiển việc thu phát của khối dữ liệu PPDU thông
qua kênh song vô tuyến vật lý
- Các tính năng của tầng vật lý là: Sự kích hoạt hoặc giảm kích hoạt hoặc giảm
của bộ phận nhận sóng , phát hiện năng lượng , chọn kênh , chỉ số đường truyền , giải
phóng kênh truyền, thu và phát các gói dữ liệu qua môi trường truyền.
Chuẩn IEEE 802.15.4 định nghĩa 3 dải tần số khác nhau:
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Nhiệm vụ của tầng MAC là quản lý việc phát thông tin báo hiệu beacon, định
dạng khung tin để truyền đi trong mạng, điều khiển truy nhập kênh, quản lý khe thời
gian GTS, điều khiển kết nối và giải phóng kết nối, phát khung Ack.
4.3 Tầng mạng của Zigbee /IEEE 802.15.4
Dịch vụ mạng:
Tầng vật lý trong mô hình giao thức Zigbee được xây dựng dựa trên tầng điều
khiển dữ liệu. Một mạng có thể họat động cùng các mạng khác hoặc riêng biệt. Tầng
vật lý phải đảm nhận các chức năng là:
Thiết lập 1 mạng mới.
Tham gia làm thành viên của 1 mạng đang hoạt động hoặc là tách ra khỏi mạng
khi đang là thành viên của 1 mạng nào đó.
Cấu hình thiết bị mới như hệ thống yêu cầu, gán địa chỉ cho thiết bị mới tham
gia vào mạng.
Đồng bộ hóa các thiết bị trong mạng để có thể truyền tin mà không bị tranh
chấp, nó thực hiện đồng bộ hóa này bằng gói tin thông báo beacon. Bảo mật: gán các
thông tin bảo mật vào gói tin và gửi xuống tầng dưới. Định tuyến, giúp gói tin có thể
đến được đúng tin mong muốn. Có thể nói rằng thuật toán Zigbee là thuật toán định
tuyến phân cấp sử dụng bảng định tuyến phân cấp tối ưu được áp dụng từng trường
hợp thích hợp.
4.4 Tầng ứng dụng của Zigbee/IEEE 802.15.4
Chức năng của tầng ứng dụng application Framework của Zigbee là:
Dò tìm ra xem có nốt hoặc thiết bị nào khác đang hoạt động trong vùng phủ
sóng của thiết bị đang hoạt động hay không.
Duy trì kết nối, chuyển tiếp thông tin giữa các nốt
mạng. Chức năng của application Profiles là:
Xác định vai trò của các thiết bị trong mạng.
Thiết lập hoặc trả lời yêu cầu kết nối.
Thành lập các mối quan hệ giữa các thiết bị trong mạng
5. Phân Loại Thiết Bị
Trước hết chúng ta tìm hiều các thuật ngữ:
Full-function devices (FFDs): là những thiết bị hỗ trợ đầy đủ các chức năng
theo chuẩn của IEEE 802.15.4 và có thể đảm nhận bất cứ vai trò nào trong hệ thống.
FFD có thề hoạt động trong ba trạng thái: là diều phối viên của toàn mạng PAN, hay là
điều phối viên của một mạng con hoặc đơn giản chỉ là một thành viên trong mạng, bồ
BÁO CÁO MÔN HỌC VŨ BẢO LINH
sung bộ nhớ và sức mạnh tính toán làm cho nó trở thành lý tưởng trong chức năng
router mạng hoặc nó có thề sử dụng trong các thiết bị mạng cạnh (nơi mạng chạm thế
giới thực).
Reduced-íunction devices (RFDs): là những thiết b[ giới hạn một số chức năng
(chỉ giao tiếp được với FFDs, áp dụng cho các ứng dụng đơn giản, không yêu cầu gửi
lượng lớn dữ liệu như tắt, mở đèn) với chi phí thấp hơn và phức tạp hơn
Một mạng tối thiểu phải có một thiết bị FFD, một FFD có thề làm việc với
nhiều RFD hay nhiều FFD trong khi một RFD chỉ có thể làm việc với một FFD.
Có 3 loại thiết bị Zigbee:
5.1 Zigbee Coordinator (ZC) thiết bị này hình thành và duy trì kiến trúc
mạng tổng thể, đồng thời nó diều khiển và giám sát mạng, lưu trữ các thông tin về
mạng. Vì vậy nó yêu cầu bộ nhớ và sức mạnh tính toán lớn nhất. Nó là thiết bị FFD.
5.2 Zigbee Router (ZR) một thiết bị thông minh có khả năng mở rộng
tầm bao phủ của mạng bằng cách định tuyến và cung cấp tuyến dự phòng hoặc phục
hồi những tuyến bị nghẽn, hoạt động như một router trung gian, truyền dữ liệu giữa
các thiết bị khác nhau. Nó cố thề kết nối với zc, ZR và cả ZED. Nó cũng là thiết bị
FFD.
5.3 Zigbee End Device (ZED) đó là các nút cảm biến có các thông tin từ
môi trường. Nó có thề nhận tin nhưng không thề chuyền tiếp tin, kết nối được với zc
và ZR nhưng không thể kết nối với nhau. Nó có thể là FFD hoặc RFD.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
6.1 Cấu trúc mạng hình sao (Star topology) còn được gọi là point-to-
point (one-hop)
Đối với loại mạng này một kết nối được thành lập bởi các thiết bị với một thiết
bị được lập trình đề điều khiển trung tâm điều khiển được gọi là bộ điều phối mạng
PAN. Sau khi FFD được kích hoạt lần đàu tiên nó có thể tạo nên một mạng độc lập và
trở thành một bộ điều phối mạng PAN. Mỗi mạng hình sao đều phải có một chĩ sổ
nhận dạng cá nhân được gọi là PAN ID (PAN identiííer), chỉ số này là duy nhất mà
không được sử dụng bời bất kỳ mạng khác trong phạm vi ảnh hưởng của nó - khu vực
xung quanh thiết bị mà sóng radio của nó có thề giao tiếp thành công với các thiết bị
phát radio khác. Nói cách khác nó đảm bẳo rằng PAN ID mà nó chọn không được sử
dụng bởi bất kỳ mạng nào gần đấy, cho phép mạng này có thề hoạt động một cách độc
lập. Khi đó cả FFD và RFD đều có thề kết néỉ với bộ điều phối mạng PAN.
Các node trong mạng PAN chĩ có thể kết nối với bộ điều phối mạng PAN vì thế
mạng này là mạng tập trung, mọi node mạng đều phải thông qua zc nên zc sẽ tiêu tốn
nhiều năng lượng hơn các node mạng khác và mạng có tầm phủ sóng nhỏ (trong vòng
bán kính 100m). Nên sử dụng cấu trúc hình sao này cho các ứng dụng có tầm nhỏ như
tự động hóa nhà, thiết bị ngoại vi cho máy tính, đồ chơi và game.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
6.2 Cấu trúc mạng lưới (Mesh topology) còn được gọi là peer-to-peer
(multi-hop)
Kiểu cấu trúc mạng này cũng có một bộ điều phối mạng PAN. Thực chất đây là
kết hợp của hai kiểu cấu trúc mạng hình sao và mạng ngang hàng, ở cấu trúc mạng này
thì một thiết bị A có thề tạo kết nối với bất kỳ thiết bị nào khác miễn là thiết bị đó nằm
trong phạm vi phủ sóng của thiết bị A.
dụng trong đo lường và điều khiển, mạng cảm biến không dây, theo dõi cảnh báo và
kiềm kê (cảnh báo cháy rừng)...ZR hoạt động như một điều phối viên trong khu vực
hoạt động của nó để mờ rộng giao tiếp ở cấp độ mạng.
Trong mạng ngang hàng, mỗi thiết bị có thể giao tiếp với thiết bị khác nếu các
thiết bị được đặt đủ gần để tạo thành công đường dẫn liên kết. Bất kỳ FFD nào trong
mạng ngang hàng có thể đống vai trò là một điều phối mạng PAN. Một cách đề quyết
định thiết bị nào sẽ là điều phổi mạng PAN là lựa ra thiết bị FFD đầu tiên bắt đầu việc
giao tiếp như là một điều phối mạng PAN. Một RFD có thề là một phần của mạng và
chỉ giao tiếp với một thiết bị đặc biệt trong mạng (ZC hoặc ZR).
6.3 Cấu trúc mạng hình cây (Cluster Tree topology):
Cấu trúc này là một dạng đặc biệt của cắu trúc mắt lưới trong đó đa số thiết bị là
FFD và một RFD có thể kết nối vào hình cây như một node rời rạc ở điềm cuối của
nhánh cây. Bất kỳ một FFD nào cũng có thề hoạt động như là một coordinator và cung
cấp tín hiệu đồng bộ cho các thiết bị và các coordinator khác vì thế mà cấu trúc mạng
kiểu này có quy mô phủ sóng và tầm mở rộng cao. Trong loại cấu hình này mặc dù có
thể có nhiều coordinator nhưng chỉ có duy nhất một bộ điều phối mạng PAN.
Các ZR định hình các nhánh và tiếp nhận tin. Các ZED hoạt động như những
chiếc lá và không tham gia vào việc định tuyến.
Bộ điều phối mạng PAN tạo ra nhóm đầu tiên bằng cách tự bầu ra người lãnh
đạo cho nhóm của mình và gán cho người lãnh đạo đó một chỉ số nhận dạng cá nhân
đăc biệt gọi là CID-0 (cluster identiíier) bằng cách tự thành lập CLH (cluster head)
bằng CID-0. Nó chọn một PAN identiíier rỗi và phát khung tin quảng bá nhận dạng tới
các thiết bị lân cận. Thiết bị nào nhận được khung tin này có thể yêu cầu kết nối vào
BÁO CÁO MÔN HỌC VŨ BẢO LINH
mạng CLH. Nếu bộ điều phối viên mạng PAN đồng ý cho thiết bị đó kết nối thì nó sẽ
ghi tên thiết bị đó vào danh sách.
Cứ thế thiết bị mới kết nối này lại trở thành CLH của nhánh cây mới và bắt đầu
phát quảng bá định kỳ để các thiết bị khác có thể kết nối vào mạng. Từ đó hình thành
được các CLH1, CLH2...
Mạng hình cây hứa hẹn sẽ đem về ưu điểm của hai mạng trên: mạng hình sao
(khả năng đồng bộ, đường truyền tin cậy nhờ vào chế độ GTS) và mạng mắt lưới (co
giãn về khoảng cách địa lý, tầm hoạt động rất rộng).
7. An Ninh Zigbee:
Đặc điểm:
An ninh Zigbee dựa trên nền tảng là một thuật toán AES 128- bít, thêm vào là
những mô hình bảo mật được cung cấp bởi IEEE802.15.4, dịch vụ bảo mật của Zigbee
bao gồm các phương pháp cho khóa cơ sở, khóa vận chuyển, khóa thiết bị quản lý và
khóa bảo vệ khung.
Các đặc điểm kỹ thuật Zigbee định nghĩa bảo mật cho lớp MAC, NWK và APS.
Bảo mật cho các ứng dụng thường cung cấp thông qua những ứng dụng sơ lược.
7.1 Trust Center:
Trung tâm Trust quyết định cho phép hoặc không cho phép các thiết bị mới vào
mạng lưới hoạt động của mình.
Trung tâm Trust có thể cập nhật định kỳ và chuyển sang một hệ thống mạng
khóa mới. Đầu tiên phát mã khóa mới được mã hóa với mạng khóa cũ. Sau đó, nó sẽ
truyền lệnh cho tất cả các thiết bị để chuyển sang khóa mới.
Trung tâm Trust thường là điều phối viên mạng lưới, nhưng nó còn có thể là
một thiết bị chuyên dụng.
Đó là nó chịu trách nhiệm vai trò bảo mật sau:
Trust manager: để xác thực các thiết bị có yêu cầu tham gia vào mạng
Netvvork manager: để duy trì và phân phối các hệ thống khóa.
Configuration manager: cho phép end-to-end giữa các thiết bị an ninh.
7.2 Khóa bảo vệ:
An ninh Zigbee dựa trên nền tảng khóa đối xứng. Cả hai đầu khởi tạo và đầu
nhận của một giao dịch bảo vệ cần phải chia sẻ cùng khóa, khóa đó là sử dụng trực
BÁO CÁO MÔN HỌC VŨ BẢO LINH
tiếp trong bảo mật chuyển đổi thông tin. Thực tế người ta dùng ba phương pháp sau:
Cài đặt sẵn: là nơi mà các khóa được đặt vào thiết bị sử dụng và sử dụng
phương pháp out-of-band. Ví dụ: các thanh công cụ lệnh.
Vận chuyển: là nơi mà các trung tâm Trust gửi khóa( một cách an toàn nều có
thể) đến các thiết bị.
Khởi tạo: là nơi mà thiết bị thương lượng với trung tâm Trust và các khóa được
khởi tạo từ hai đầu mà không bị vận chuyển.
SKKE( khởi tạo khóa đối xứng)
CBKE( chứng thực sự khởi tạo khóa đối xứng)
ASKE( mã an toàn của khóa khởi tạo)
Zigbee sử dụng ba loại khóa chính để quản lý an ninh: Master, netvvork , link
key
Master keys :
Là những khóa tùy chọn không được sử dụng để mã hóa khung hình. Thay vào
đó, chúng được sử dụng như một bí mật chia sẻ ban đầu giữa hai thiết bị khi chúng
thực hiện các thủ tục khóa cơ sở ( SKKE) để tạo ra các khóa liên kết.
Khóa có nguồn gốc từ trung tâm Trust được gọi là trung tâm Trust Master khóa,
trong khi tất cả các khóa khác được gọi là lớp ứng dụng Master khóa.
Netvvork keys:
Những khóa này chỉ thực hiện an ninh lớp bảo mật trên một mạng Zigbee. Tất
cả các thiết bị trên một mạng Zigbee chỉa sẻ cùng một khóa.
Chế độ Bảo mật cao mạng khóa luôn luôn phải được gửi mật mã qua không khí,
trong khi các tiêu chuẩn an ninh khóa mạng có thể được gửi hoặc được mã hóa hay
không mã hóa. Lưu ý rằng chế độ bảo mật cao chỉ được hỗ trợ cho Zigbee PRO.
Link keys:
Những khóa tùy chọn an toàn thông điệp giữa hai thiết bị lớp ứng dụng. Những
khóa có nguồn gốc từ trung tâm Trust được gọi là Trung tâm liên kết khóa Trust, trong
khi tất cả các khóa khác gọi là ứng dụng lớp liên kết khóa.
7.3 Chế độ bảo vệ:
7.3.1 Chế độ bảo mật tiêu chuẩn:
Trong chế độ bảo mật tiêu chuẩn, danh sách các thiết bị, các khóa master, các
BÁO CÁO MÔN HỌC VŨ BẢO LINH
khóa liên kết và các khóa hệ thống có thể được duy trì bởi cả hai trung tâm Trust hoặc
bằng các thiết bị riêng của chúng. Trung tâm Trust vẫn còn trách nhiệm duy trì một
tiêu chuẩn khóa mạng và nó kiểm soát các phương thức nạp mạng. Trong chế độ này,
các yêu cầu bộ nhớ cho các trung tâm Trust là ít hơn so với nó dùng cho chế độ bảo
mật cao.
7.3.2 Chế độ bảo mật cao:
Trong chế độ này, trung tâm Trust duy trì một danh sách các thiết bị, các khóa
master, các khóa liên kết và các khóa mạng mà nó cần để kiểm soát và thực thi các
phương thức của bản cập nhật mạng khóa chính và mạng thu nạp. Vì số lượng thiết bị
trong mạng lưới tăng lên, vì vậy nó cũng yêu cầu bộ nhớ cho trung tâm Trust.
Các khả năng bảo mật bổ sung vốn có trong Zigbee PRO rất quan trọng để hoàn
thiện khả năng bảo mật của Zigbee được sử dụng rộng rãi trong kiểm soát cơ sở hạ
tầng- thương mại, xây dựng, lưới điện, hoặc một hệ thống an ninh trong gia đình
không được tổn hại.
8. Hướng Phát Triển
8.1 Các phiên bản của Zigbee:
- Zigbee 2004 (1.0): phiên bản gốc. Bây giờ ít nhiều đã lỗi thời và không có
khả năng tương thích ngược với nhưng chuẩn Zigbee mới trên thị trường
- Zigbee 2006: có tính tương thích ngược với Zigbee 2007
- Zigbee 2007/ Zigbee Pro: cung cấp nhiều tính năng, nhiều định tuyến, nhiều
phương thức truy cập và sự bảo mật cao với SKKE. Zigbee 2007 hoàn toàn có tính
tương thích ngược với các thiết bị Zigbee 2006.
- Zigbee RF4CE (Radio Frequence four Consumer Electronics ): dùng điều
khiển từ xa âm thanh, hình ảnh và nhưng đồ điện tử thông dụng trong cuộc sống hàng
ngày của con người. Nó có rất nhiều lợi thế trong điều khiển từ xa và bao gồm cả giao
tiếp phong phú hơn, độ ổn định, tính năng, tính linh hoạt và khả năng tương tác cao
hơn.
8.2 Hướng phát triển Zigbee trong tương lai:
Zigbee có thể áp dụng cho tất cả các hệ thống điều khiển và cảm biến với các
ưu điểm vượt trội: giá thành thấp, tiêu hao ít năng lượng, ít lỗi, dễ mở rộng, khả năng
tương thích cao, Zigbee thiết lập cơ sở cho những tầng cao hơn trong giao thức (từ
BÁO CÁO MÔN HỌC VŨ BẢO LINH
tầng mạng đến tầng ứng dụng) về bảo mật, dữ liệu, chuẩn phát triển để đảm bảo chắc
chắn rằng các khách hàng dù mua sản phẩm từ các hãng sản xuất khác nhưng vẫn theo
một chuẩn riêng để làm việc cùng nhau được mà không tương tác lẫn nhau. Tức là
trong tương lai, các sản phẩm của Zigbee sẽ được sản xuất tương thích được với chuẩn
802.15 hoặc rộng hơn có thể là 802.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
1. Khái Quát
Các nút trong mạng Zigbee có 3 loại: Coordinator, Router và End Device.
Coordinator: Dùng để tạo nên một mạng Zigbee nào đó. Mỗi mạng Zigbee cần
và chỉ cần 1 một Coordinator. Trong một phạm vi nhất định (ví dụ trong một căn
phòng), nếu có 2 hay nhiều Coordinator có PAN ID giống nhau (thường thì các
module mới mua về thì sẽ có PAN ID giống nhau) thì ngay sau khi khởi động lên nó
sẽ tự động quét xung quanh, nếu có Coordinator nào trùng PAN ID với nó thì nó sẽ tự
động cộng thêm 1 vào PAN ID của chính nó để tránh xung đột địa chỉ.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Router: Node này có trách nhiệm tìm đường truyền thích hợp nhất để vận
chuyển một gói tin. Mỗi mạng Zigbee có thể có nhiều Router, mỗi Router có thể
truyền-gửi dữ liệu. Dữ liệu cũng có thể được chuyển hướng bởi 1 Coordinator và các
Router trong mạng. Trong mạng MESH, dữ liệu được gửi từ một node sẽ được tự động
định tuyến tới node đích.
End Device: Đây là node cuối cùng trong mạng, nó chỉ có nhiệm vụ truyền và
nhận dữ liệu chứ không có nhiệm vụ định tuyến đường truyền.
Khi có sự hình thành của một mạng Zigbee (xét kiểu mạng MESH
network):
Router có được một địa chỉ cố định (Short Address), địa chỉ này có thể được sử
dụng để truyền dữ liệu kiểu point-to-point.
Nếu như tắt Coordinator, Router vẫn có thể duy trì mạng, vì vậy mà các Router
vẫn có thể giao tiếp được với nhau.
Và 1 Router vẫn có thể gia nhập mạng này ngay cả khi đã tắt Coordinator.
Router này vẫn có được địa chỉ để tham gia vào mạng.
Ở mạng này, Router thường được gọi là FFD (Full Function Device).
Một mạng Zigbee Mesh được đặc trưng bởi:
1. Nhiều Coordinator và nhiều Router trong mạng.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
2. Mỗi node thực hiện được cả truyền-nhận dữ liệu và chuyển hướng (định
tuyến) dữ liệu.
3. Trong mạng có thể có bất cứ cuộc giao tiếp nào giữa các node (các node giao
tiếp phải còn được cấp nguồn) kể cả khi tắt Coordinate hoặc một số Router khác. Chỉ
cần có 2 node trong mạng thì có thể diễn việc giao tiếp trong mạng.
4. Mỗi node trong mạng (Coordinate hoặc Router) có thể duy trì được mạng
miễn là trong mạng vẫn còn 1 node đang hoặt động-gọi là node duy trì. Các node mới
có thể được thêm vào bởi node duy trì này.
5. Khi một node tham gia mạng, sẽ có sự phân phát địa chỏ tự động cho node
này-tức là node này sẽ được cấp địa chỉ một cách tự động.
6. Khi node tham gia vào bất kì mạng nào thì việc tính toán định tuyến hướng
dữ liệu sẽ diễn ra hoàn toàn tự động.
2. Truyền Dữ Liệu
Có 2 thuộc tính truyền dữ liệu (Transparent Tranmission).
Truyền dữ liệu nối tiếp.
Kiểu (thuộc tính) truyền dữ liệu point-to-point:
Giữa các node trong mạng Zigbee có thể truyền dữ liệu theo kiểu point-to-point
(dữ liệu được truyền từ điểm đầu, đi qua các node rồi mới tới điểm đích).
2.1 Truyền dữ liệu nối tiếp:
Nếu byte đầu tiên trong chuỗi dữ liệu cần truyền không thuộc {0xFE, 0xFD,
0xFC} (không phải là 3 byte đó) thì module sẽ tự động đi vào chế độ ―truyền dữ liệu
nối tiếp‖.
Khi nhận được dữ liệu từ cổng truyền thông nối tiếp thì Coordinator sẽ tự động
chuyển dữ liệu (vừa mới nhận từ cổng truyền thông nối tiếp) đến các node.
Khi một node nhận được dữ liệu từ cổng truyền thông nối tiếp thì nó sẽ tự động
chuyển dữ liệu đó tới Coordinator.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Hình 3.3 Truyền dữ liệu nối tiếp từ Coordinator đến các node
Ta có thể hình dung quá trình truyền dữ liệu giữa các node như là truyền dữ liệu
RS232 mà không cần dây cáp.
Trong một gói dữ liệu, độ dài tối đa cảu gói dữ liệu không được vượt quá
256byte/gói, độ dài khuyến khích là 32byte/gói.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Hướng đi của dữ liệu Độ dài dữ liệu Khoảng thời gian truyền nhanh nhất
16 Byte 20 ms
32 Byte 20 ms
64 Byte 20 ms
Router-> Coordinator
128 Byte 50 ms
16 Byte 100 ms
32 Byte 100 ms
64 Byte 100 ms
Coordinator -> Router
128 Byte 200 ms
Bảng 3.1 Bảng thực nghiệm của quá trình chuyển nhận dữ liệu minh bạch
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Ví dụ:
Ví dụ:
Dữ liệu gửi theo kiểu point-to-point có thể gửi từ bất kì node nào trong mạng:
Ở kiểu này, ngay cả khi Coordinator đã tắt nguồn thì giữa liệu vẫn có thể được
truyền giữa các Router.
Sau khi có một Router tham gia vào mạng, địa chỉ (Short Address) sẽ không
thay đổi.
Chiều dài của dữ liệu gửi đi phải khớp với chiều dài thực của dữ liệu để tránh
phát sinh lỗi. Tức là trong phần dữ liệu truyền đi có bao gồm ―độ dài của dữ liệu‖ và
―dữ liệu cân gửi‖, cái ―độ dài của dữ liệu phải khớp với độ dài thực của ―dữ liệu cần
gửi‖.
Nếu địa chỉ nơi nhận là 0xFF thì dữ liệu sẽ được phân phát ra tất cả các node
trong mạng.
Nếu địa chỉ nơi nhận là 0x00 thì dữ liệu được gửi tới Coordinator.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Bảng 3.2 Bảng thực nghiệm của quá trình truyền dữ liệu kiểu point-to-point
UART baud rate 38400 (Mặc định), 9600, 19200, 57600, 115200
Độ nhạy -110dBm
UART baud rate 38400 (Mặc định), 9600, 19200, 57600, 115200
Độ nhạy -110dBm
4. Tập Lệnh
Hương dẫn Chức năng Trả về Khởi
động lại
Short Address
Nếu là Router và
FC 00 91 không tham gia
04 C4 D4 Đọc địa chỉ cố định mạng, trả về là FF Có
XY FE
Nêu là Coordinator
thì Short Address
luôn là 00 00
BÁO CÁO MÔN HỌC VŨ BẢO LINH
EEPROM 1 Kbytes
Tần số hoạt động 16MHz
Đèn LED tích hợp Attached to digital I/O Pin 13
Kiểu kết nối USB B-Type Female
Kích thước bảng (PCB 68,8 x 53,4 mm (2,7 x 2,1 ″)
Kích thước bảng (có phần nhô ra đầu nối) 77 x 53,4mm (3 x 2,1 ″)
Bảng 3.5 Thông số kỹ thuật board arduino Uno R3
Board hoạt động ở 5V có thể được cung cấp thông qua nguồn điện bên ngoài
hoặc thông qua kết nối cổng USB. Nguồn điện được chọn tự động nếu cả hai đều có
sẵn. Nếu sử dụng nguồn cung cấp bên ngoài, bạn nên sử dụng nguồn cung cấp từ 7-
12V. Điện áp đầu vào cao hơn sẽ làm cho bộ điều chỉnh on-board hoạt động mạnh hơn
và có thể làm quá nóng. Bộ chuyển đổi AC 7.5V hoạt động tốt để cấp nguồn cho các
bo mạch này.
Trên phiên bản này của board, bên cạnh tiêu chuẩn female headers để đưa ra I /
O, mỗi pin cũng có một điểm hàn để có thể được hàn theo male headers, một hàng thứ
hai của female headers hoặc thậm chí dây. Đây có thể được hàn vào một trong hai bên
trên hoặc dưới cùng của board và có thể được thuận tiện trong một số trường hợp sử
dụng.
Board cũng có một loạt các điểm hàn cung cấp cho một nơi khác để truy cập
I2C (SCL / SDA), Serial (TX / RC), 3.3V, 5V và GND.
Giống như tất cả các bảng Arduino, nó có thể được lập trình bằng cách sử dụng
Arduino IDE thông qua cổng USB.
2. Board Arduino Mega 2560
Board arduino mega 2560 sử dụng chip ATmega2560 của ATmel, bộ nhớ
chương trình lên đến 256KB trong đó có 8KB được sử dụng bởi bootloader. Với bộ
nhớ chương trình lớn, bạn có thể viết nhiều chương trình phức tạp, điều khiển được
nhiều thiết bị hơn. Dung lượng RAM là 8KB. 4KB EEPROM
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Thông số kĩ thuật:
Vi điều khiển ATmega2560
Điện áp hoạt động 5V
Điện áp đầu vào (được đề nghị) 7-12V
Điện áp đầu vào (giới hạn) 6-20V
Số lượng chân I / O 54 (trong đó có 15 cung cấp sản lượng PWM)
Số lượng chân Input Analog 16
Dòng điện DC mỗi I / O 20 mA
Dòng điện DC với chân 3.3V 50 mA
Bộ nhớ flash 256 KB trong đó có 8 KB sử dụng bởi bộ nạp khởi
động
SRAM 8 KB
BÁO CÁO MÔN HỌC VŨ BẢO LINH
EEPROM 4 KB
Tốc độ đồng hồ 16 MHz
Chiều dài 101,52 mm
Bề rộng 53,3 mm
Cân nặng 37 g
Bảng 3.6 Thông số kỹ thuật board Mega 2560
3. Tập Lệnh
Lệnh Chức năng
Nhận được số byte (ký tự) có sẵn để viết trong bộ đệm nối tiếp mà không
availableForWrite()
cần chặn các hoạt động ghi.
println() In dữ liệu tới cổng nối tiếp như là văn bản ASCII
Trả về số byte (ký tự) tối đa mà ta có thể đọc qua Serial. Các dữ liệu đến
available()
được lưu vào một bộ nhớ đệm có dung lượng 64KB.
read() Dùng để đọc từng ký tự trong bộ nhớ đệm của Serial.
Peek() xem trước gói tin là gì, sau đó chúng ta sẽ đọc hoặc bỏ qua.
Nhận một chuỗi con của một Chuỗi. Chỉ số khởi động đã được bao gồm
(ký tự tương ứng được bao gồm trong chuỗi con), nhưng chỉ số kết thúc
Substring() tùy chọn là độc quyền (ký tự tương ứng không được bao gồm trong
chuỗi con). Nếu chỉ số kết thúc bị bỏ qua, chuỗi con tiếp tục đến cuối
của Chuỗi.
Định vị một ký tự hoặc Chuỗi trong chuỗi khác. Theo mặc định, các tìm
indexOf
kiếm từ đầu của Chuỗi, nhưng cũng có thể bắt đầu từ một chỉ mục nhất
định, cho phép định vị tất cả các trường hợp của nhân vật hoặc Chuỗi.
2. Router
Begin
initialize output
variable value
X 0 40 75 100
Y 0 90 127 255
FALSE
drf.handleReceived() Z 1 2 3 4 5 6
>0 U 6 7 8 9 10 11
TRUE
END
được đưa vào thử nghiệm bởi Thunkable, là một trong các nhà cung cấp ứng dụng web
cho ngôn ngữ này.
Mục tiêu cốt lõi của MIT App Inventor là giúp đỡ những người chưa có kiến
thức về ngôn ngữ lập trình từ trước có thể tạo ra những ứng dụng có ích trên hệ điều
hành Android. Phiên bản mới nhất là MIT App Inventor 2.
Ngày nay, MIT đã hoàn thiện App Inventor và nó được chia sẻ ngay trên tài
khoản Google. Các lập trình viên mới bắt đầu hoặc bất kỳ ai muốn tạo ra ứng dụng
Android chỉ cần vào địa chỉ web của MIT, nhập thông tin tài khoản Google, và từ
những mảnh ghép nhỏ, xây dựng những ý tưởng của mình.
Những tính năng có trên MIT App Inventor là:
+ Cho phép xây dựng nhanh chóng những thành phần cơ bản (components) của
một ứng dụng Android: Nút bấm, nút lựa chọn, chọn ngày giờ, ảnh, văn bản, thông
báo, kéo trượt, trình duyệt web
+ Sử dụng nhiều tính năng trên điện thoại: Chụp ảnh, quay phim, chọn ảnh, bật
video hoặc audio, thu âm, nhận diện giọng nói, chuyển lời thoại thành văn bản, dịch
+ Hỗ trợ xây dựng game bằng các components: Ball, Canvas, ImageSprite
+ Cảm biến: đo gia tốc (AccelerometerSensor), đọc mã vạch, tính giờ, con quay
hồi chuyển (gyroscopeSensor), xác định địa điểm (locationSensor), NFC, đo tốc độ
(pedometer), đo khoảng cách xa gần với vật thể (proximitySensor)
+ Kết nối: Danh bạ, email, gọi điện, chia sẻ thông qua các ứng dụng mạng xã
hội khác trên thiết bị, nhắn tin, sử dụng twitter qua API, bật ứng dụng khác, bluetooth,
bật trình duyệt
+ Lưu trữ: đọc hoặc lưu tệp txt, csv, sử dụng FusiontablesControl, tạo cơ sở dữ
liệu đơn giản trên điện thoại hoặc trên đám mây thông qua server tự tạo hoặc Firebase
+ Điều khiển robot thông qua LegoMindstorms
+ Và rất nhiều mở rộng do các nhà lập trình hoạt động riêng liên tục thêm vào
như là: mua bán trong ứng dụng, Floating button, Báo thức, cảm biến ánh sáng, kết nối
dữ liệu SQLite…
Những nhược điểm chính của App Inventor là:
BÁO CÁO MÔN HỌC VŨ BẢO LINH
+ Lập trình viên chưa thể sử dụng mọi tính năng của Android và việc này phụ
thuộc vào khi nào mở rộng mới có tính năng bạn cần có được tạo ra. Khuyết điểm này
chỉ có thể khắc phục bằng cách tự xây dựng mở rộng cho App Inventor
+ Vì là website với mục đích giáo dục, MIT App Inventor không hỗ trợ quảng
cáo. Chính vì nhược điểm này Thunkable và AppyBuilder được sinh ra.
+ Giao diện chưa chuyên nghiệp
+ Chuyển mã từ ngôn ngữ Drag and Drop sang Java chưa thực sự dễ dàng.
Trong các bài viết sau mình sẽ hướng dẫn thêm
+ Do ứng dụng được phát triển trên server của MIT, giới hạn dung lượng của
mỗi project chỉ là 5mb.
Mặc dù có những nhược điểm như vậy, MIT App Inventor vẫn là một nền tảng
mạnh mẽ giúp những ai mới bắt đầu lập trình trên Android có thể tạo ra được những
ứng dụng hoàn thiện hoặc giúp nhà phát triển chuyên nghiệp nhanh chóng phác thảo
lên ý tưởng của mình.
Để sử dụng được App Inventor, các bạn truy cập vào địa chỉ
http://ai2.appinventor.mit.edu . Sau đó tiến hành đăng nhập bằng tài khoản
Google của bạn để mở trang quản lí các project.
Giao diện quản lý project
Palette: Chứa các thành phần có thể đặt lên trên Screen như: Button, Label,
Image, Listview, Video player, …. Đến các thanh phần chức năng không
nhìn thấy trên Screen như: BLE extension, Notifier, các sensors, ….
Viewer: Hiển thị giao diện screen. Kéo thả các thành phần từ khung Palette
sang đây để thiết kế giao diện cho phần mềm của bạn.
Components: Sơ đồ cây thể hiện cấu trúc các thành phần đã được bố trí trên
Screen.
Properties: Hiển thị thuộc tính của component tương ứng được chọn.
Bước 3: Lập trình chức năng
Trong MIT AI2, code chính là các Blocks, việc của chúng ta là kéo thả các
blocks này sang khung Viewer và kết nối chúng theo chức năng mong
muốn.
Hình 4.11 Giao diện lập trình chức năng
Blocks gồm 2 nhóm chính:
o Các block chức năng cơ bản của một chương trình như: điều khiển luồng,
o Các block chức năng theo từng component trong ứng dụng: Mỗi component
của ứng dụng đều có các block chức năng tương ứng.
Nhóm này gồm 3 kiểu chính:
Phương thức (Methods):
Sự kiện (Events):
đặt phần mềm MIT Companion trên điện thoại của bạn. Sau đó, kết nối
với project của bạn để tự động download về và chạy bên trong phần mềm
MIT Companion. Điều này gây ra nhiều sự bất tiện và phụ thuộc.
o Cách 2: Biên dịch ra file apk và cài đặt, bao gồm tùy chọn download file
apk về máy tính sau đó sao chép sang điện thoại để cách đặt hoặc biên
dịch và tải online thông qua mã QR code.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
Tốt
Điều khiển ON-OFF các thiết bị trong nhà mô hình
trên đường truyền. Đưa ra các giải pháp tiết kiệm năng lượng, giảm giá thành sản
phẩm để có thể ứng dụng vào thực tế.
Ứng dụng vào nhà thông minh thêm các tính năng an ninh và bảo mật giúp điều
khiển,quản lý từ xa các thiết bị trong smarthome.Ngoài ra có thể ứng dụng cho các
phạm vi lớn như quản lý xí nghiệp,nông trại..v..v.
BÁO CÁO MÔN HỌC VŨ BẢO LINH
PHỤ LỤC
1. Code Coordinator
#include <SPI.h>
#include
<bicoDRF.h>
#include <String.h>
#include <Ethernet.h>
bicoDRF drf;
byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x9B, 0x36 }; // Khởi tạo MAC
byte ip[] = { 192, 168, 1, 102 }; // Khởi tạo địa chỉ IP
EthernetServer server(80); // Khởi tạo Server
String readString = String(30); // Tạo chuỗi
boolean status6 = false;
boolean status7 = false;
boolean status8 = false;
boolean status9 = false; Gán trạng thái đầu cho các Status
boolean status10 = false;
boolean status11 = false;
boolean status12 = false;
void setup(){
// Inicia o Ethernet
Ethernet.begin(mac, ip);
server.begin(); Liên kết Ethernet
Serial1.begin(38400);
Serial1.setTimeout(50);
pinMode(9,OUTPUT);
}
void loop(){
// Kết nối với Client
int value;
EthernetClient client = server.available();
BÁO CÁO MÔN HỌC VŨ BẢO LINH
if (client) {
while (client.connected())
{
if (client.available())
{ Đọc lệnh gửi từ Client qua HTTP
char c = client.read();
if (readString.length() < 40)
{
readString += (c);
}
if (c == '\n')
{
if(readString.indexOf("led1on")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d1on");
drf.drfSend();
status6 = true;
} Nhận lệnh ,thay đổi
trạng thái và gửi
if(readString.indexOf("led2on")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d2on");
drf.drfSend();
status7 = true;
} Nhận lệnh ,thay
if(readString.indexOf("led2off")>=0) đổi trạng thái
{ và gửi lệnh điều
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d2off"); khiển cho đèn 2
drf.drfSend();
status7 = false;
}
if(readString.indexOf("led3on")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d3on");
drf.drfSend(); Nhận lệnh ,thay
status8 = true; đổi trạng thái
} và gửi lệnh điều
if(readString.indexOf("led3off")>=0) khiển cho đèn r
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d3off");
drf.drfSend();
status8 = false;
}
if(readString.indexOf("led4on")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d4on");
drf.drfSend();
status9 = true;
}
BÁO CÁO MÔN HỌC VŨ BẢO LINH
if(readString.indexOf("led4off")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d4of");
drf.drfSend();
status9 = false;
}
if(readString.indexOf("led5on")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d5on");
drf.drfSend();
status10 = true; Nhận
} lệnh ,thay
if(readString.indexOf("led5off")>=0) đổi trạng
{ thái và gửi
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d5of"); lệnh điều
khiển cho
drf.drfSend(); đèn 5
status10 = false;
}
if(readString.indexOf("led6on")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d6
drf.drfSend(); Nhận
lệnh ,thay đổi
status11 = true; trạng thái và
} gửi lệnh điều
if(readString.indexOf("led6off")>=0) khiển cho đèn
{ 6
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"d6
drf.drfSend();
status11 = false;
}
BÁO CÁO MÔN HỌC VŨ BẢO LINH
if(readString.indexOf("pwm0")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"pwm0");
drf.drfSend();
}
if(readString.indexOf("pwm40")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"pwm40");
drf.drfSend();
} Xuất giá trị điều
if(readString.indexOf("pwm75")>=0) khiển Dimmer
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"pwm75"); bằng PWM
drf.drfSend();
}
if(readString.indexOf("pwm100")>=0)
{
drf.drfGo_PR(POINT_TO_POINT_MODE,0x0001,"pwm100");
drf.drfSend();
}
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.print("<font size='20'>");
BÁO CÁO MÔN HỌC VŨ BẢO LINH
if(status6)
{
client.println("1on");
}
else
{
client.println("1of");
}
if(status7)
{
client.println("2on");
}
else
{
client.println("2of");
}
if(status8)
{
client.println("3on");
}
else
{
client.println("3of");
}
if(status9)
{
client.println("4on");
}
else
BÁO CÁO MÔN HỌC VŨ BẢO LINH
{
client.println("4of");
}
if(status10)
{
client.println("5on");
}
else
{
client.println("5of");
}
if(status11)
{
client.println("6on");
}
else
{
client.println("6of");
}
client.print("<P>");
//limpa string para a próxima leitura
readString="";
// parar cliente
client.stop();
}
}
}
}
}
BÁO CÁO MÔN HỌC VŨ BẢO LINH
2. Code Router
#include <bicoDRF.h>
#include <butTon.h>
#include <SPI.h>
#define OUTA 4
#define OUTB 5
bicoDRF drf;
byte PWM_Val = 0;
int analogValue = 0;
float voltage = 0;
void setup() {
pinMode(1,OUTPUT);
digitalWrite(1, HIGH);
pinMode(2,OUTPUT);
digitalWrite(2, HIGH);
pinMode(13,OUTPUT); Khởi tạo giá trị đầu ra cho thiết bị
digitalWrite(13, HIGH);
pinMode(12,OUTPUT);
digitalWrite(12, HIGH);
pinMode(11,OUTPUT);
digitalWrite(11, HIGH);
pinMode(10,OUTPUT);
digitalWrite(10, HIGH);
pinMode(9,OUTPUT);
digitalWrite(9, HIGH);
pinMode(8,OUTPUT);
digitalWrite(8, HIGH);
pinMode(7,OUTPUT);
digitalWrite(7, HIGH);
pinMode(6,OUTPUT);
digitalWrite(6, HIGH);
BÁO CÁO MÔN HỌC VŨ BẢO LINH
pinMode(OUTA, OUTPUT);
analogWrite(OUTA,0);
pinMode(OUTB, OUTPUT);
analogWrite(OUTB,0);
Serial.begin(38400);
Serial.setTimeout(50);
}
void loop()
{ if(drf.handleReceived() > 0){
if(drf.get_receivedDRFdata() == "pwm0")
{
analogWrite(OUTB,0);
}
if(drf.get_receivedDRFdata() == "pwm40")
{
analogWrite(OUTB,90);
} Xuất giá trị điều khiển dimmer
if(drf.get_receivedDRFdata() == "pwm75")
{
analogWrite(OUTB,127 );
}
if(drf.get_receivedDRFdata() == "pwm100")
{
analogWrite(OUTB,255);
}
if(drf.get_receivedDRFdata() == "d1on")
{
digitalWrite(6, LOW);
}
BÁO CÁO MÔN HỌC VŨ BẢO LINH
if(drf.get_receivedDRFdata() == "d1of")
{
digitalWrite(6, HIGH);
}
if(drf.get_receivedDRFdata() == "d2on")
{
digitalWrite(7, LOW);
}
if(drf.get_receivedDRFdata() == "d2of") Xuất giá trị điều khiển ON-OFF
{
thiết bị
digitalWrite(7, HIGH);
}
if(drf.get_receivedDRFdata() == "d3on")
{
digitalWrite(8, LOW);
}
if(drf.get_receivedDRFdata() == "d3of")
{
digitalWrite(8, HIGH);
}
if(drf.get_receivedDRFdata() == "d4on")
{
digitalWrite(9, LOW);
if(drf.get_receivedDRFdata() == "d4of")
{
digitalWrite(9, HIGH);
BÁO CÁO MÔN HỌC VŨ BẢO LINH
if(drf.get_receivedDRFdata() == "d5on")
{
digitalWrite(10, LOW);
}
if(drf.get_receivedDRFdata() == "d5of")
{
digitalWrite(10, HIGH);
}
if(drf.get_receivedDRFdata() == "d6on")
{
digitalWrite(11, LOW);
}
if(drf.get_receivedDRFdata() == "d6of")
{
digitalWrite(11, HIGH);
}
}
}
}
BÁO CÁO MÔN HỌC VŨ BẢO LINH
3. Code App
BÁO CÁO MÔN HỌC VŨ BẢO LINH
BÁO CÁO MÔN HỌC VŨ BẢO LINH