Upload
pvdai
View
287
Download
9
Embed Size (px)
DESCRIPTION
Hội nghị toàn quốc về Điều khiển và Tự động hoá - VCCA-2011Nghiên cứu xây dựng và phát triển mạng giám sát, điều khiển không dây sử dụng giao thức zigbee/Miwi Research and development wireless sensor network using zigbee/Miwi protocolDoãn Đạt Phước Trường ĐHBK – Đại Học Đà Nẵng e-Mail: [email protected] Trần Thái Anh Âu Khoa Điện, Trường ĐHBK – Đại Học Đà Nẵng e-Mail: [email protected] Tóm tắtHệ thống mạng giám sát và điều khiển không dây hiện đang là một trong những chủ đề nghiê
Citation preview
Hội nghị toàn quốc về Điều khiển và Tự động hoá - VCCA-2011
VCCA-2011
Nghiên cứu xây dựng và phát triển mạng giám sát, điều khiển không dây sử
dụng giao thức zigbee/Miwi
Research and development wireless sensor network using zigbee/Miwi
protocol
Doãn Đạt Phước
Trường ĐHBK – Đại Học Đà Nẵng
e-Mail: [email protected]
Trần Thái Anh Âu
Khoa Điện, Trường ĐHBK – Đại Học Đà Nẵng
e-Mail: [email protected]
Tóm tắt Hệ thống mạng giám sát và điều khiển không dây
hiện đang là một trong những chủ đề nghiên cứu nổi
bật vì có nhiều tiềm năng ứng dụng to lớn trong nhiều
lĩnh vực như tự động hóa tòa nhà, nhà máy cũng như
các ứng dụng điều khiển quá trình. Bài báo này trình
bày nghiên cứu thiết kế một hệ thống giám sát và điều
khiển không dây điển hình sử dụng giao thức
Zigbee/Miwi phục vụ cho thí nghiệm cũng như quá
trình thương mại hóa sản phẩm. Trong đó, chú trọng
đến khả năng sinh mã tự động và cập nhật chương
trình tự động cho toàn bộ hệ thống, những tính năng
giúp ích rất nhiều trong quá trình phát triển cũng như
bảo dưỡng, nâng cấp hệ thống sau này.
Abstract Wirelss Sensor Networks is currently one of
emerging research topics as its potential applications
in building automation, factory automation and
process control systems. This paper presents a
framework to rapidly, flexibly implemeting a typical
wireless sensors networks using Zigbee/Miwi
protocol for laboratorial purpose as well as
commercial purpose. Automatd C-code generation
and network programming for the whole systems
which is very useful for developer is foscused.
1. Giới thiệu 1.1. Tổng quan
Mạng giám sát và điều khiển không dây đang là một
trong những hướng nghiên cứu nổi bật trong lĩnh vực
hệ thống nhúng. Cùng với sự ra đời của bộ tiêu chuẩn
truyền thông không dây IEEE 802.15.4, hàng loạt
giao thức mạng đã và đang được nghiên cứu, thiết kế
và phát triển. Các bộ giao thức mạng đa dạng từ quy
mô hệ thống, khả năng tương thích cho tới các yêu
cầu ứng dụng trong thực tế. Nếu như Zigbee được
đông đảo các nhà sản xuất hậu thuẫn vì tính tương
thích cao, quy mô hệ thống cực lớn (lên đếnkhoảng
65000 nút mạng) nhưng cần tốn phí bản quyền nếu
muốn thương mại hóa sản phẩm; thì Miwi, một giao
thức được phát triển bởi hãng Microchip một trong
những nhà sản xuất linh kiện điện tử lớn nhất của Mỹ
- Tuy giới hạn số lượng số nút mạng trong 1 hệ thống
(chỉ khoảng 8000 nút mạng) nhưng cung cấp các tính
năng tương đương Zigbee, đồng thời miễn phí khi
thương mại hóa. Tại Việt Nam, quá trình nghiên cứu
xây dựng và phát triển các hệ thống giám sát và điều
khiển không dây trong những năm gần đây đã bắt đầu.
Tuy nhiên, hiện vẫn còn nhiều hạn chế từ việc thiết kế
tổng thể hệ thống cho tới lập trình ứng dụng cho từng
nút mạng riêng biệt. Trong bài báo này, nhóm tác giả
trình bày một giải pháp thiết kế một hệ thống mạng
giám sát, điều khiển không dây sử dụng chuẩn
Zigbee/Miwi nhanh gọn, ít tốn kém, dễ phát triển
cũng như mở rộng, nâng cấp trong tương lai. Giải
pháp này có thể được sử dụng trong các phòng nghiên
cứu chuyên biệt về mạng giám sát, điều khiển không
dây cũng như cho các công ty chuyên thiết kế phát
triển hệ thống với mục tiêu đảm bảo khả năng đưa sản
phẩm ra thị trường một cách nhanh nhất, chi phí thiết
kế, phát triển, nâng cấp ở mức thấp và khả năng mở
rộng, nâng cấp cũng như bảo trì, bảo dưỡng dễ dàng.
1.2. Giới thiệu sơ bộ về mạng giám sát và điều
khiển không dây
Theo [1], một hệ thống mạng giám sát và điều khiển
không dây điển hình được mô tả như hình H.1.
Đây là cấu trúc mạng đa lớp với nhiều loại thiết bị nút
mạng khác nhau: nhóm thiết bị RFD (rút gọn tính
năng), nhóm thiết bị FFD (đầy đủ tính năng), nhóm
thiết bị bắc cầu giao tiếp (kết nối toàn bộ mạng giám
sát điều khiển không dây với hệ thống truyền thông
hiện có). Trong các nhóm thiết bị này, tùy vào chức
năng nhiệm vụ cụ thể, chúng sẽ được phân thành
nhiều loại khác nhau. Ví dụ theo [2], có nhóm thiết bị
điều khiển hoàn toàn, bán điều khiển, nhóm thiết bị cố
định, di động ...
2. Xây dựng mạng giám sát và điều khiển
không dây với giao thức Zigbee/Miwi 2.1. Thiết kế hệ thống
2.1.1. Thiết kế phần cứng
Kiến trúc phần cứng tổng thể của một nút mạng gồm
có 2 phần:
Đơn vị lõi (Core Unit): là đơn vị cơ bản của thiết
bị. Trong nhiều trường hợp, thiết bị điều phối
(điều phối trung tâm, điều phối viên) chỉ cần có
đơn vị này là có thể tiến hành thành lập mạng,
566
Hội nghị toàn quốc về Điều khiển và Tự động hoá - VCCA-2011
VCCA-2011
o H. 1 Mạng giám sát và điều khiển không dây điển hình.
PIC
18F46K20
MRF24J
40MA
MỞ
RỘNG
ANALOG
SPI
DIGITAL
S
A
MỞ
RỘNG
MODULE ĐƠN VỊ LÕI
DATA
STORAGE
H. 2 Sơ đồ khối phần cứng của thiết bị
điều phối mạng. Đơn vị lõi gồm: Vi điều khiển chính,
mô đun truyền thông RF, cổng mở rộng và bộ nhớ lưu
trữ.
Mô đun chức năng: là mô đun thực hiện chức
năng của thiết bị. Mô đun này có thể là hệ thống
các cảm biến, cơ cấu chấp hành hoặc các cổng
mở rộng cho đơn vị lõi. Mô đun có thể kết nối với
đơn vị lõi thông qua các cổng kết nối có sẵn như
analog, digital hoặc SPI, I2C. Trong môi trường
thí nghiệm, các khối mođun được thiết kế trên
bản mạch riêng để thuận lợi cho việc thử nghiệm.
Trong đề tài này, nhóm tác giả xây dựng thiết bị với
cấu trúc phần cứng như sau:
Đơn vị lõi: sử dụng vi điều khiển PIC18F46K20,
mô đun truyền thông RF MRF24J40MA, cổng
giao tiếp A/D với Port A, khối đèn LED, khối nút
bấm tương tác, cổng PWM/Digital (4 kênh), cổng
giao tiếp RS232.
Mô đun chức năng: cảm biến ánh sáng, cảm biến
nhiệt độ, khối nút bấm, mạch điều khiển động cơ
một chiều công suất nhỏ tích hợp sẵn encoder,…
2.1.1.1. Mô đun truyền thông không dây Microchip
MRF24J40MA
H. 3 Mô đun MRF24J40MA
Mô đun truyền thông MRF24J40MA sử dụng IC thu
phát RF MRF24J40 được phát triển bởi Microchip.
Mô đun này tương thích chuẩn IEEE 802.15.4, hỗ trợ
các giao thức ZigBee, Miwi, Miwi P2P. Mô đun này
tiêu tốn ít năng lượng: khi hoạt động ở 3.3V thì dòng
hoạt động là 19mA cho chế độ thu và 23mA khi phát,
chế độ ngủ chỉ tiêu tốn 2μA.
Tần số hoạt động: 2,405 – 2,46 GHz.
Tốc độ truyền dữ liệu: 250 kbps (tiêu chuẩn) –
625 kbps (kích hoạt)
Khoảng cách thu phát: 120m(lý tưởng), 50-70m
(thực tế, ngoài trời không có thiết bị gây nhiễu,
không vật cản trở), 20-30m (thực tế, trong nhà
nhiễu sóng wifi, sóng điện thoại không dây,
tường cản trở)
Độ nhạy tín hiệu: -95dBm.
Công suất phát: +0dBm.
Tích hợp lọc nhiễu, lọc khóa phá.
Tích hợp bộ ADC RSSI (cường độ tín hiệu).
Truy cập kênh CSMA-CA, tự động phản hồi tin
ACK.
Hỗ trợ CCA, quét mức năng lượng ED/RSSI.
Khả năng tái phát bức điện.
Mã hóa phần cứng AES-128.
2.1.1.2. Microchip PIC18F46K20
Vi điều khiển được sử dụng nạp chương trình nhúng
giao thức Miwi phải thoả mãn yêu cầu tối thiểu về bộ
nhớ chương trình (9-15KB) và bộ nhớ RAM (1KB)
của ứng dụng đồng thời phải tiết kiệm năng lượng.
Trong các dòng sản phẩm vi điều khiển của
Microchip thì chỉ có dòng nanoWatt XLP là dòng tiêu
thụ năng lượng ít (chế độ ngủ ở 1,8V dòng chỉ khoảng
567
Hội nghị toàn quốc về Điều khiển và Tự động hoá - VCCA-2011
VCCA-2011
100nA). Vi điều khiển này hoạt động ở mức điện áp
3,3V có các thông số cơ bản sau:
Bộ nhớ chương trình 64KB.
Bộ nhớ dữ liệu Data EEPROM 1KB.
Bộ nhớ RAM 3936 byte.
Hoạt động với xung xử lý từ 31KHz – 64MHz
(có kích hoạt vòng khóa pha PLL) cho tốc độ xử
lý 16MIPS tối đa.
Tiết kiệm năng lượng.
Ngoại vi đa dạng: EUSART, SPI, I2C, CCP,
ECCP, PWM, ADC 10bit…
2.1.2. Thiết kế phần mềm
2.1.2.1. Tổng quan
Thông thường, các nhà phát triển mạng giám sát điều
khiển không dây thường phát triển riêng lẻ từng nút
mạng hoặc từng nhóm nút mạng. Các chương trình
ứng dụng được lập trình bằng C hoặc nesC, rồi được
biên dịch, nạp thủ công lên từng thiết bị. Cách làm
này không những tốn thời gian, không hiệu quả mà
còn gây khó khăn cho việc bảo trì, nâng cấp toàn bộ
hệ thống trong tương lai vì một khi có lỗi phát sinh
trong hệ thống, nhà phát triển cần phải rà lại chương
trình của từng nút mạng một, thực hiện thao tác gỡ rối
rồi lặp lại công đoạn biên dịch, nạp thủ công lên các
thiết bị đó. Hệ thống càng nhiều nút mạng bao nhiêu
thì quá trình này càng gây mất thời gian và tốn kém
bấy nhiêu. Do đó, nhóm tác giả đã xây dựng chương
trình ứng dụng dựa trên bootloader và chương trình
chính nạp trên bộ nhớ flash ngoài máy. Lúc này ứng
dụng của thiết bị nút mạng được thực thi theo lưu đồ
hình 4. Hình bên trái là lưu đồ thực thi thông thường
của chương trình nạp trên vi điều khiển, hình bên phải
là lưu đồ thực thi khi có sử dụng chương trình mồi
khởi động. Chương trình mồi khởi động được nạp
cứng lên trên vi điều khiển trong khi chương trình
chính được chép vào bộ nhớ flash nằm ngoài, khi vi
điều khiển bắt đầu làm việc, nó sẽ thực thi chương
trình mồi khởi động để nạp chương trình chính vào bộ
nhớ để tự lập trình lại vi điều khiển, sau đó vi điều
khiển sẽ thực thi chương trình đã được nạp này.
H. 4 Lưu đồ thực thi chương trình: bên trái là ứng dụng
bình thường, bên phải là ứng dụng có sử dụng
chương trình nạp khởi động.
2.1.2.2. Chương trình sinh mã C tự động
Quy trình hoạt động của chương trình sinh mã C
tự động được mô tả như sau:
Thư viện chương trình: Bộ thư viện chương trình
là thư viện chứa trình điều khiển thiết bị ngoại vi,
các khai báo về phần cứng cũng như thư viện các
hàm cơ bản, mở rộng mà vi điều khiển hỗ trợ.
Các thủ tục hàm, khai báo biến luôn được khai
báo trước trong các tập tin header (.h), trong khi
phần mã thực thi được lưu giữ ở các tập tin .c.
Phân loại các nhóm thủ tục hàm, khai báo biến
như sau:
Nhóm cấu hình: gồm các khai báo về phần
cứng như tốc độ hoạt động của vi điều khiển,
loại thạch anh, các thông tin cấu hình, các thủ
tục khởi tạo cần thiết,…
Nhóm các thủ tục, hàm chức năng cơ bản:
như các phép tính CRC, checksum, định thời,
phép tính toán học, …
Nhóm giao tiếp truyền thông không dây:
chứa các khai báo, trình điều khiển môđun
không dây. Trong bài báo này, tác giả sử
dụng mô đun MRF24J40 của Microchip nên
thư viện được sử dụng ở đây là bộ giao thức
Miwi DE và Zigbee Stack được Microchip
phát triển.
Nhóm giao tiếp ngoại vi khác: chứa các hàm
thực thi SPI, EUSRAT, I2C, CANbus,
TCP/IP,…
Nhóm các thủ tục, hàm chức năng mở rộng:
chưa các thủ tục làm việc với bộ nhớ flash
ngoài, các cảm biến, cơ cấu chấp hành, bộ tạo
xung PWM, bộ ADC, các thủ tục nạp
firmware từ xa qua mạng không dây cho vi
điều khiển, …
Các thủ tục, hàm nêu trên luôn được tiền khai báo
trong các header của chương trình. Ngoài ra, trong
mỗi hàm, thủ tục luôn có các hook được tạo trước cho
việc gỡ lỗi. Khi bật chế độ gỡ lỗi, chương trình trong
các hook này sẽ được hoạt động, cung cấp thông tin
chi tiết về khối lệnh đang được thực thi.
Chương trình tạo mã C tự động: Chương trình tạo
mã tự động sẽ đọc các thông tin được khai báo
trong các header của thư viện chương trình ở trên,
sau đó tổ chức lại và tạo thành bộ cơ sở dữ liệu
tóm tắt đặc tả các hàm, thủ tục của thư viện. Các
bước để tiến hành tạo mã tự động như sau:
Khởi tạo hệ thống: khởi tạo thêm mẫu hoặc
khởi tạo mới như: lựa chọn giao thức mạng,
sơ đồ tổ chức mạng, kênh hoạt động, số
lượng các nút mạng, các nhóm nhút mạng,…
Cấu hình cho từng nhóm thiết bị trong mạng:
nhóm cảm biến, nhóm cơ cấu chấp hành,
nhóm trung gian,…
Cấu hình cho từng thiết bị riêng lẻ trong
mạng: nếu cần phải thiết lập cấu hình riêng lẻ
cho từng thiết bị nhất định trong mạng thì
người dùng có thể thiết lập tại khâu này.
Bổ sung mã tùy chỉnh: chương trình cho
phép người dùng thêm vào các đoạn mã tùy
chỉnh.
Tiến hành sinh mã tự động.
568
Hội nghị toàn quốc về Điều khiển và Tự động hoá - VCCA-2011
VCCA-2011
Các tập tin
Header
Bộ dữ liệu thư viện
chương trình
Bảng mô tả tóm tắt các
hàm, ... thư viện chương
trình C
Chương trình Sinh mã
C tự động
Cấu hình Hệ
thống
Cấu hình Ứng dụng
cho các nhóm thiết
bị
Cấu hình cho từng
thiết bị
Các đoạn mã
bổ sung
- Khai báo phần cứng, biến, bộ nhớ...
- Các hàm cơ bản
- Bộ giao thức truyền thôg Zigbee Stack/ MiWi DE
- Bộ thư viện các chức năng ngoại vi
- Thư viện mở rộng
Sinh mã C cho
toàn hệ thốngBắt đầu
H. 5 Quy trình hoạt động của chương trình sinh mã C tự động.
2.3. Thử nghiệm
Trong quy mô phòng thí nghiệm, hệ thống được thiết
lập gồm 6 nút mạng sơ đồ hình mắt lưới. Cảm biến
khói, cảm biến nhiệt độ, vòi phun nước, thiết bị
GSM/GPRS, cảm biến phát hiện người là các môđun
chức năng được gắn trên các nút mạng. Thiết bị trung
tâm đóng được kết nối với máy tính thông qua cổng
RS232, ngoài cấu hình phần cứng tương tự các nút
mạng khác thì thiết bị này còn có bộ nhớ flash phụ là
8Mbits, dùng để lưu trữ chương trình thực thi của các
nhóm thiết bị trong mạng.
Kịch bản hoạt động:
Kịch bản 1: Ban đầu hệ thống đơn giản chỉ gồm
cảm biến khói, cảm biến nhiệt độ và vòi phun
nước. Khi cảm biến khói phát hiện được lượng
khói trong phòng cao hơn ngưỡng cho phép (giả
sử là ngưỡng 25ppm) thì lập tức phát tín hiệu báo
cháy thông qua còi và vòi phun nước tự động
được bật để dập tắt lửa. Kịch bản này sẽ hoạt
động tốt trong trường hợp phòng đó không có ai
hút thuốc, hoặc số lượng người hút thuốc rất ít
(vẫn đảm bảo ít hơn ngưỡng cho phép). Giả sử
nếu như căn phòng trên chứa đầy người hút
thuốc, nhiệt độ trong phòng cũng sẽ cao hơn mức
bình thường, lượng khói trong phòng cũng cao
hơn mức độ cho phép, rõ ràng ngay lập tức hệ
thống phát tín hiệu báo cháy và tiến hành phun
nước dập lửa.
Kịch bản 2: Hệ thống tiến hành nâng cấp được
lắp đặt thêm cảm biến phát hiện người, và thiết bị
GPRS/GSM. Lúc này, hệ thống hoạt động theo
một kịch bản khác: khi cảm biến phát hiện có
người trong phòng, thì lúc này ngưỡng cho phép
của cảm biến khói sẽ được tăng lên, trường hợp
căn phòng với nhiều người hút thuốc sẽ được hệ
thống hiểu là không phải tình trạng cháy nhưng
hệ thống đồng thời kích hoạt quạt hút để đẩy khói
thuốc ra ngoài. Nếu lượng khói vẫn tiếp tục vượt
quá ngưỡng cho phép, hệ thống lúc này mới phát
tín hiệu báo cháy và bật vòi phun nước chữa
cháy. Trong trường hợp phòng không có người,
hệ thống phát hiện có khói trong phòng thì lập tức
phát tín hiệu báo cháy, bật vòi phun nước và đồng
thời gửi cảnh báo qua GSM/GPRS đến địa chỉ đã
được thiết lập trước.
Hệ thống được thử nghiệm với giao thức Zigbee và
Miwi. Trong cả hai trường hợp, hệ thống đã vận hành
tốt, nhờ có khả năng nạp chương trình qua không dây
cho nên nhóm tác giả chỉ cần nạp chương trình lên
thiết bị trung tâm, từ đó thiết bị trung tâm nạp lên các
thiết bị tương ứng khác. Quá trình tự động nạp
chương trình không dây này thường mất từ 30-60
phút tùy thuộc vào môi trường và khoảng cách giữa
các nút mạng với nút mạng trung tâm.
H. 6 Giao diện chương trình giám sát.
569
Hội nghị toàn quốc về Điều khiển và Tự động hoá - VCCA-2011
VCCA-2011
3. Kết luận: Bài báo trình bày cách thức xây dựng nhanh chóng,
hiệu quả và tiết kiệm chi phí một hệ thống mạng giám
sát và điều khiển không dây hoàn chỉnh. Tuy chương
trình sinh mã tự động và chương trình giám sát còn ở
mức độ đơn giản, nhưng hứa hẹn tiềm năng ứng dụng
lớn khi được hoàn thiện sau này. Trong thời gian sắp
tới, nhóm tác giả sẽ cải tiến phương thức nạp không
dây để giảm thời gian cập nhật cho hệ thống, đồng
thời xây dựng bộ thư viện chuẩn cho các nền tảng
không dây sử dụng chuẩn IEEE 802.15.4 khác như Z-
Stack của TI.
Tài liệu tham khảo [1] Daniel Sexton: SP100.11a Overview. ISA, 2007.
[2] Keith M. Martin and Maura Paterson: An
Application-Oriented Framework for Wireless
Sensor Network Key Establishment. Electron.
Notes Theor. Comput. Sci. 192, 2 (May 2008),
31-41.
[3] Gungor, V.C; Hancke, G.P.: Industrial Wireless
Sensor Networks: Challenges, Design
Principles, and Technical Approaches.
Industrial Electronics, IEEE Transactions on,
Oct 2009.
[4] Harish R, Dhananjay L., B.S. Prabhu and Rajit
Gadh: ReWINS: A Distributed Multi-RF Sensor
Control Network for Industrial Automation.
IEEE Wireless Telecommunication Symposium
WTS 2005.
Biography Thạc sĩ Trần Thái Anh Âu, Trường
Đại học Bách Khoa – Đại học Đà
Nẵng. Tốt nghiệp đại học ngành Tin
học Công nghiệp năm 2004 tại trường
Đại học Bách khoa Hà Nội. Nhận bằng
Thạc sĩ ngành Đo lường và Hệ thống
điều khiển năm 2007 trường Đại học
Bách khoa Hà Nội. Từ năm 2007 đến
nay: Cán bộ trường Đại học Bách khoa - Đại học Đà
Nẵng.
Kỹ sư Doãn Đạt Phước sinh năm
1987. Tốt nghiệp đại học ngành Tự
động hóa năm 2011 tại trường Đại học
Bách Khoa – Đại học Đà Nẵng. Hướng
nghiên cứu chính là thiết kế và thực
hiện các hệ thống đo lường, điều
khiển, các hệ thống nhúng ứng dụng
trong tự động hóa.
570