You are on page 1of 84

NHIỆM VỤ ĐỒ ÁN

Đề tài Ứng dụng công nghệ Internet of Things trong thu thập và đánh giá nhiệt
độ, độ ẩm môi trường tập trung vào các nội dung chính sau:
- Giới thiệu về công nghệ Internet of Things (IoT): Kiến trúc của IoT, Các công
nghệ truyền thông trong IoT.
- Tìm hiểu về cấu trúc chương trình C cho ESP8266 và Arduino IDE.
- Tìm hiểu về quá trình xây dựng ứng dụng IoT trên iot-playground.
- Tìm hiểu về Cảm biến nhiệt độ, độ ẩm DHT22, Module Wifi ESP 8266, Module
nguồn LM2596.
- Ứng dụng công nghệ IoT trong xây dựng giao diện giám sát trên nền Web theo
thời gian thực, kèm theo cảnh báo nhiệt độ, độ ẩm khi vượt ngưỡng.

1
LỜI CẢM ƠN

Trước tiên em xin gửi lời cám ơn chân thành sâu sắc tới các thầy cô giáo trong
trường Đại học Công nghệ Thông tin và Truyền thông và các thầy cô giáo trong Bộ
môn Công nghệ Điện tử, Khoa Công nghệ Điện tử và Truyền thông đã tận tình giảng
dạy, truyền đạt cho em những kiến thức, kinh nghiệm quý báu trong suốt thời gian
qua. Đặc biệt em xin gửi lời cảm ơn đến thầy giáo Thạc sĩ Nguyễn Thanh Tùng đã
tận tình giúp đỡ, trực tiếp chỉ bảo, hướng dẫn em trong suốt quá trình làm báo cáo.
Trong thời gian làm việc với thầy, cô, em không ngừng tiếp thu thêm nhiều kiến thức
bổ ích mà còn học tập được tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm
túc, hiệu quả, đây là những điều rất cần thiết cho em trong quá trình học và công tác
sau này. Sau cùng xin gửi lời cảm ơn chân thành tới gia đình, bạn bè đã động viên,
đóng góp ý kiến và giúp đỡ trong quá trình học tâp, nghiên cứu và hoàn thành báo cáo.
Thái nguyên, Tháng 06 Năm 2016
SINH VIÊN THỰC HIỆN

Ngô Thị Quỳnh Ánh

2
LỜI CAM ĐOAN

Tôi xin cam đoan: Những nội dung trong đồ án này là do tôi thực hiện dưới sự
hướng dẫn của thầy giáo Thạc sĩ Nguyễn Thanh Tùng và nghiên cứu trên Internet,
sách báo, các tài liệu trong và ngoài nước có liên quan, không sao chép hay sử dụng
bài làm của bất kỳ ai khác. Mọi tham khảo dùng trong đồ án đều được trích dẫn rõ
ràng tên tác giả, tên công trình, thời gian, địa điểm công bố. Tôi xin chịu hoàn toàn
trách nhiệm về lời cam đoan của mình trước các thầy cô và nhà trường.
Thái nguyên, Tháng 06 Năm 2016
SINH VIÊN THỰC HIỆN

Ngô Thị Quỳnh Ánh

3
MỤC LỤC
NHIỆM VỤ ĐỒ ÁN....................................................................................................1
LỜI CẢM ƠN .............................................................................................................2
LỜI CAM ĐOAN........................................................................................................3
MỤC LỤC...................................................................................................................4
DANH MỤC HÌNH ẢNH ...........................................................................................6
LỜI NÓI ĐẦU.............................................................................................................8
CHƯƠNG 1. TỔNG QUAN........................................................................................9
1.1. Tình hình nghiên cứu thuộc lĩnh vực đề tài ...........................................................9
1.1.1. Trên thế giới ......................................................................................................9
1.1.2. Tình hình trong nước .......................................................................................12
1.2. Tính cấp thiết của đề tài ......................................................................................14
1.3. Phạm vi nghiên cứu của đề tài.............................................................................15
1.4. Mục tiêu của đề tài..............................................................................................15
CHƯƠNG 2. GIỚI THIỆU VỀ CÔNG NGHỆ INTERNET OF THINGS .................16
2.1. Tổng quan về Internet of Things .........................................................................16
2.1.1. Giới thiệu về mô hình Internet of Things (IoT) ................................................16
2.1.2. Các công nghệ thành phần ...............................................................................20
2.1.3. Cấu trúc mạng mở rộng....................................................................................30
2.1.4. Các mô hình ứng dụng của IoT ........................................................................32
2.2. Kiến trúc tham chiếu của IoT ..............................................................................36
2.2.1. Tổng quan........................................................................................................36
2.2.2. Phân loại thiết bị IoT và phương thức kết nối internet ......................................37
2.2.3. Các yêu cầu của kiến trúc tham chiếu cho IoT .................................................38
2.2.4. Mô hình tham chiếu của IoT ............................................................................38
2.3. Giới thiệu về điện toán đám mây.........................................................................42
2.3.1. Giới thiệu chung ..............................................................................................42
2.3.2. Các đặc điểm ...................................................................................................43
2.4. Các công nghệ truyền thông trong IoT ................................................................45
2.4.1. Radio Frequency Identification (RFID)............................................................45
2.4.2. Bluetooth .........................................................................................................46
2.4.3. Zigbee..............................................................................................................47

4
2.4.4. Wifi .................................................................................................................51
2.4.5. RF Links ..........................................................................................................53
2.4.6. Mạng di động: Internet di động (Cellular Networks: The Mobile Internet).......54
2.4.7. Truyền thông có dây (Wired Communication) .................................................54
2.4.8. Lựa chọn công nghệ truyền thông cho IoT .......................................................55
CHƯƠNG 3. PHÂN TÍCH BÀI TOÁN.....................................................................57
3.1. Yêu cầu bài toán .................................................................................................57
3.2. Giải pháp thiết kế................................................................................................57
3.2.1. Sơ đồ khối........................................................................................................57
3.2.2. Nguyên tắc hoạt động của hệ thống..................................................................57
3.3. Lựa chọn linh kiện ..............................................................................................58
3.3.1. Cảm biến nhiệt độ độ ẩm DHT22.....................................................................58
3.3.2. Module wifi ESP8266 ......................................................................................60
3.3.3. Khối nguồn LM2596........................................................................................61
CHƯƠNG 4. NGÔN NGỮ LẬP TRÌNH VÀ PHẦN MỀM PHỤ TRỢ .....................63
4.1. Giới thiệu môi trường lập trình Arduino IDE ......................................................63
4.2. Cấu trúc của một chương trình lập trình Arduino ................................................65
4.3. Một số ví dụ lập trình các ứng dụng ....................................................................66
4.3.1. Lập trình Điều khiển led ..................................................................................66
4.3.2. Lập trình gửi dữ liệu ra cổng truyền thông nối tiếp...........................................67
4.4. Lập trình cho ESP8266 trên Arduino IDE...........................................................68
4.4.1. Cấu hình cho Arduino IDE...............................................................................68
4.4.2. Tập lệnh AT giao tiếp với Module ESP8266. ...................................................69
CHƯƠNG 5. THỰC THI THIẾT KẾ ........................................................................71
5.1. Thiết kế phần cứng..............................................................................................71
5.2. Thiết kế phần mềm .............................................................................................71
5.2.1. Lưu đồ thuật toán .............................................................................................71
5.2.2. Server EasyIoT Cloud Beta và cách kết nối với phần cứng ..............................72
5.3. Một số hình ảnh của sản phầm ............................................................................75
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN..................................................................77
TÀI LIỆU THAM KHẢO .........................................................................................78
PHỤ LỤC..................................................................................................................79

5
DANH MỤC HÌNH ẢNH

Hình 2.1. Mô hình IoT ...............................................................................................16


Hình 2.2. Mô hình các công nghệ thành phần của IoT. ..............................................20
Hình 2.3. Mô hình hệ thống nhúng giám sát điều khiển từ xa.....................................20
Hình 2.4. Mô hình Ubiquitous computing..................................................................21
Hình 2.5. Xu hướng phát triển của Ubiquitous computing .........................................22
Hình 2.6. So sánh của Mark Weiser về hiện thực ảo và Ubiquitous Computing .........24
Hình 2.7. Mô hình hệ thống mạng thông tin di động tế bào........................................25
Hình 2.8. Mô hình đo lưu lượng nước lũ từ xa ...........................................................26
Hình 2.9. Mô hình mạng cảm biến chuyển tiếp thông tin đến trạm gốc. .....................27
Hình 2.10. Mô hình Mobile Computing. ....................................................................28
Hình 2.11. Mô hình Computing Netwworking ...........................................................29
Hình 2.12. Mô hình mạng mở rộng ............................................................................31
Hình 2.13. Mô hình TCP/IP .......................................................................................32
Hình 2.14. Kiến trúc phần cứng của hai đối tượng thông minh được trang bị các loại
thiết bị truyền thông khác nhau. .................................................................................35
Hình 2.15. Cấu phần của IoT .....................................................................................36
Hình 2.16. Hai mô hình kết nối của thiết bị IoT .........................................................38
Hình 2.17. Mô hình tham chiếu của IoT.....................................................................39
Hình 2.18. Mô hình của điện toán đám mây...............................................................43
Hình 2.19. Cơ chế hoạt động của thẻ RFID................................................................45
Hình 2.20. Một loại thẻ chip RFID phổ biến ..............................................................45
Hình 2.21. Hình ảnh module Bluetooth HC05 ...........................................................46
Hình 2.22. Mô hình mạng Zigbee ..............................................................................49
Hình 2.23. Cấu trúc của Zigbee..................................................................................50
Hình 2.24. Mô hình thu phát song Wifi......................................................................52
Hình 2.25. Phân loại tần số ........................................................................................53
Hình 2.26. Module GPRS ..........................................................................................54
Hình 2.27. Cổng kết nối Ethernet...............................................................................55
Hình 3.1. Sơ đồ khối của hệ thống .............................................................................57
Hình 3.2. Cảm biến nhiệt độ độ ẩm DHT22...............................................................58

6
Hình 3.3. Gửi tín hiệu start ........................................................................................59
Hình 3.4. Đọc bit 0 ....................................................................................................59
Hình 3.5. Đọc bit 1 ....................................................................................................60
Hinh 3.6. Module wifi ESP8266 ................................................................................60
Hình 3.7. Sơ đồ nguyên lý khối nguồn LM2596 ........................................................61
Hình 3.8. Cầu trúc bên trong LM2596 .......................................................................62
Hình 3.9. Module LM2596 ........................................................................................62
Hình 4.1. Link download phần mềm Arduino. ...........................................................63
Hình 4.2. Cài đặt Arduino IDE ..................................................................................63
Hình 4.3. Giao diện lập trình Arduino........................................................................64
Hình 4.4. Chức năng các Menu chính ........................................................................64
Hình 4.5. Mở ứng dụng mẫu trong Arduino. ..............................................................65
Hình 4.6. Ví dụ điều khiển led. ..................................................................................66
Hình 4.7. Kết quả thu được trên màn hình Serial .......................................................67
Hình 4.8. Chọn Board................................................................................................68
Hình 4.9. Install ESP8266 vào Arduino IDE..............................................................68
Hình 5.1. Sơ đồ nguyên lý .........................................................................................71
Hình 5.2. Lưu đồ thuật toán phần cứng ......................................................................71
Hình 5.3. Lưu đồ thuật toán server.............................................................................72
Hình 5.4. Giao diện trên iot-playground.....................................................................73
Hình 5.5. Cửa sổ Sign Up ..........................................................................................73
Hình 5.6. Đăng nhập tài khoản vào server..................................................................73
Hình 5.7. Cửa sổ chính của server..............................................................................74
Hình 5.8. Cửa sổ chức năng chính của server............................................................74
Hình 5.9. Thư mục Modules ......................................................................................74
Hình 5.10. Khai báo tên module ...............................................................................75
Hinh 5.11. Thư mục User info ...................................................................................75
Hình 5.12. Hình ảnh thực tế phần cứng sản phẩm (node cảm biến) ............................75
Hinh 5.13. Dữ liệu thu được trên server .....................................................................76
Hinh 5.14. Dữ liệu dạng đồ thị thời gian thực ............................................................76
Hinh 5.15. Gửi Email cảnh báo..................................................................................76

7
LỜI NÓI ĐẦU

Ngày nay khoa học công nghệ ngày càng phát triển, con người ngày càng chế tạo
ra được nhiều các vật dụng thông minh hơn, hiện đại hơn. Từ đó có thể tối ưu hóa các
nhu cầu của con người một cách dễ dàng hơn. Mỗi giai đoạn phát triển của lịch sử thế
giới đều gắn liền với những cuộc cách mạng về khoa học kĩ thuật.Và ngày nay, cuộc
cách mạng Internet of Things đã tạo nên những thay đổi đáng kể cho cuộc sống con
người ở hiện tại và trong tương lai.
Internet of Things được ứng dụng vào rất nhiều mặt của cuộc sống. Ứng dụng
trong công nghiệp, nông nghiệp, giáo dục , y tế… Đặc biệt là ứng dụng trong việc
giám sát sự thay đổi của môi trường, và việc thu thập và đánh giá nhiệt độ độ ẩm môi
trường là một phần trong đó.Việc giám sát được nhiệt độ, độ ẩm môi trường thông qua
internet là một điều mang tính ứng dụng cao. Nhiệt độ, độ ẩm là một trong những đại
lượng vật lý được quan tâm nhiều do nó có vai trò quyết định trong nhiều tính chất của
vật chất. Vì thế đề tài: Ứng dụng công nghệ Internet of Things trong thu thập và
đánh giá nhiệt độ, độ ẩm môi trường đảm bảo tính cấp thiết, quan trọng mà xã hội
phát triển đặt ra. Đồ án gồm 2 phần chính với 5 chương cụ thể như sau:
Phần thứ nhất: Cơ sở lý thuyết, tập trung giới thiệu về Internet of Things, tầm
quan trọng, tính tương lai phát triển, kiến trúc và ứng dụng của IoT, các công nghệ
truyền thông có thể sử dụng trong IoT. Phần này gồm 2 chương:
Chương 1. Tổng quan.
Chương 2. Giới thiệu về Công nghệ Internet of Things.
Phần thứ hai: Tập trung vào thiết kế ứng dụng công nghệ IoT trong xây dựng giao
diện giám sát trên nền Web theo thời gian thực, kèm theo cảnh báo nhiệt độ, độ ẩm khi
vượt ngưỡng. Phần này gồm 3 chương:
Chương 3. Phân tích bài toán.
Chương 4. Ngôn ngữ lập trình và phần mềm phụ trợ.
Chương 5. Thực thi thiết kế.

8
CHƯƠNG 1. TỔNG QUAN

1.1. Tình hình nghiên cứu thuộc lĩnh vực đề tài


Mỗi giai đoạn phát triển của lịch sử thế giới đều gắn liền với những cuộc cách
mạng về khoa học kĩ thuật.Và ngày nay, cuộc cách mạng Internet of Things đã tạo nên
những thay đổi đáng kể cho cuộc sống con người ở hiện tại và trong tương lai.
Với sự phát triển của Internet, smartphone và đặc biệt là các thiết bị cảm biến,
Internet of Things (IoT) đang trở thành xu hướng mới của thế giới. IoT được định
nghĩa là những vật dụng có khả năng kết nối Internet. Bạn vào nhà, mở khóa cửa, đèn
sẽ tự động sáng chỗ bạn đứng, điều hòa sẽ tự động điều chỉnh nhiệt độ, nhạc sẽ tự
động bật để chào đón bạn… những điều chỉ có trong phim khoa học viễn tưởng, đang
dần trở thành hiện thực với công nghệ IoT.
Việc giám sát được nhiệt độ, độ ẩm môi trường là một vấn đề rất quan trọng trong
các ngành công nghiệp cũng như nông nghiệp, và thật là tuyệt vời nếu ở bất kỳ nơi đâu
và lúc nào nếu bạn có internet thì bạn đề có thể làm được điều đó. Công nghệ Internet
of Things khiến điều này trở lên dễ dàng hơn.
Nhiệt độ, độ ẩm là một trong những đại lượng vật lý được quan tâm nhiều do nó
có vai trò quyết định trong nhiều tính chất của vật chất. Một trong những đặc điểm của
nhiệt độ là làm thay đổi liên tục các đại lượng chịu sự ảnh hưởng của nó, ví dụ như áp
suất, thể tích của một chất khí. Nó cũng là yếu tố ảnh hưởng rất lớn đến chính con
người chúng ta và tất cả sự sống trên trái đất. Ngày nay khi nền công nghiệp phát triển
mạnh, sản phẩm tạo ra ngày càng phong phú thì nhu cầu lưu trữ hàng hóa trong các
nhà kho càng lớn.Việc kiểm soát nhiệt độ, độ ẩm khi bảo quản, lưu trữ sản phảm công
– nông nghiệp trong các nhà kho là rất quan trọng. Cũng giống như vậy, trong các
phòng thí nghiệm trong bệnh viện, trong các nhà kính trồng cây cảnh, khu sản xuất rau
sạch…việc đảm bảo nhiệt độ, độ ẩm cũng là yếu tố quan trọng quyết đến đến chất
lượng sản phẩm...
1.1.1.Trên thế giới
Thế giới đang chuyển mình mạnh mẽ trước xu thế "Internet of Things" (IoT). Tới
năm 2021, dự kiến sẽ có 28 tỉ thiết bị kết nối trong đó có 15 tỉ thiết bị kết nối IoT.
Theo báo cáo Ericsson Mobility Report, tới năm 2021, dự kiến sẽ có 28 tỉ thiết bị
kết nối trong đó có 15 tỉ thiết bị kết nối IoT bao gồm thiết bị M2M (machine-to-

9
machine) như đồng hồ đo thông minh, cảm biến trên đường, địa điểm bán lẻ, các thiết
bị điện tử tiêu dùng như ti vi, đầu DVR, thiết bị đeo. 13 tỉ còn lại là điện thoại di động,
máy tính xách tay PC, máy tính bảng.
IDC dự kiến năm 2019, tòan cầu sẽ chi 1.300 tỉ đô la Mỹ cho IoT. Tới năm 2020,
theo dự đoán của Gartner thì giá trị gia tăng do IoT mang lại sẽ là 1.900 tỉ đô la Mỹ.
Và theo McKinsey, tới năm 2025 IoT sẽ đóng góp vào nền kinh tế toàn cầu là 11.000
tỉ đô la Mỹ.
Tới năm 2021, dự kiến số thuê bao sẽ lên tới 9,1 tỉ. Số thuê bao này cao hơn số
dân bởi mỗi người có thể sở hữu nhiều thiết bị.Trong các kết nối IoT như vậy, sẽ có
bao gồm cả những có đăng ký thuê bao SIM/eSIM được gắn ngay trong thiết bị và cả
những thiết bị như điện tử tiêu dùng không cần dùng SIM (Non-SIM).
IoT đang diễn ra một cách mạnh mẽ. 50% doanh nghiệp đã bắt đầu triển khai
những dự án về IoT. IoT mang lại một cơ hội doanh thu cho rất nhiều ngành và những
giải pháp đó bắt đầu thương mại hóa với tốc độ rất nhanh. Ngành dịch vụ tiện ích, giao
thông, tòa nhà thông minh và các ngành bán lẻ là những ngành đi đầu trong việc ứng
dụng IoT.
Tháng 2 vừa qua IBM giới thiệu một công cụ phát triển mã nguồn mở mới được
gọi là Quarks. Công cụ này được cho là sẽ giúp các nhà sản xuất và nhà lập trình phát
triển ứng dụng của mình hiệu quả hơn, dựa trên dữ liệu từ các cảm biến của thiết bị
Internet of Things (IoT).
Ứng dụng của Quarks: Thực chất, Quarks dựa trên nền tảng các sản phẩm của
IBM Streams, một công cụ doanh nghiệp giúp xử lý lượng lớn các dữ liệu trực tiếp.
Nhưng Quarks khác biệt ở chỗ, nó được thiết kế từ đầu để cung cấp cho các nhà sản
xuất và nhà lập trình một công cụ mã nguồn mở, cho việc xây dựng các ứng dụng dựa
trên các thiết bị kết nối. Ý tưởng này là một biện pháp để họ tận dụng lợi thế để xử lý
dữ liệu trực tiếp từ các thiết bị IoT theo cách đơn giản và hiệu quả. Ví dụ, bạn có thể
theo dõi sức khỏe của một bệnh nhân tiểu đường với các thiết bị đeo trên người, hoặc
một nhân viên làm việc tại mỏ than với chiếc mũ bảo hiểm có gắn các cảm biến. Mỗi
tình huống này đều liên quan đến việc giám sát dữ liệu ngay khi cảm biến thu nhận
được, sau đó truy cập và truyền dữ liệu đó theo thời gian thực tới người hay thiết bị
cần thiết. Ví dụ, khi một cảm biến trên mũ bảo hiểm của người thợ mỏ phát tín hiệu
cảnh báo điều kiện không an toàn, họ cần được biết ngay lập tức. Sẽ không thể có độ

10
trễ khi thiết bị truyền dữ liệu về cơ sở dữ liệu của doanh nghiệp, để so sánh với các dữ
liệu khác. Trong khi các chương trình có thể tạo điều kiện đẩy nhanh tốc độ giao tiếp
giữa thiết bị và thiết bị, thiết bị và con người, nhưng tiềm năng của chúng vẫn chưa kết
thúc tại đây. Các phần mềm còn có thể gửi các dữ liệu về doanh nghiệp, để có thể so
sánh được với lượng dữ liệu lớn hơn thông qua các thiết bị tương tự theo thời gian. Ví
dụ với một thiết bị y khoa, các nhà nghiên cứu có thể xem làm thế nào một nhóm
người phản ứng với phác đồ điều trị theo thời gian, hay bác sỹ của các bệnh nhân có
thể nhận dữ liệu một cách thường xuyên để theo dõi sức khỏe của các bệnh nhân.
Thậm chí, các phần mềm có thể liên kết với nền tảng Watson Health của IBM, để
có thể đánh giá tập dữ liệu trong điều kiện y tế. Sau đó, nền tảng này sẽ gửi lại phản
hồi cho người bệnh hay bác sỹ để đưa ra phương pháp điều trị thích hợp.
Đại diện Ericsson cho biết, ngay từ đầu năm 2016, hãng này đã giới thiệu giải
pháp Connected Water với nhiệm vụ giám sát chất lượng nước dựa trên kết nối
4G/LTE và Internet of Things tại triển lãm CES (Mỹ). Ericsson và nhà mạng AT&T
hợp tác triển khai giải pháp giúp tổ chức bảo vệ sông Chattahoochee ở Atlanta kiểm
soát nước sông và cảnh báo kịp thời về sự ô nhiễm. Lưu vực sông này được sử dụng để
cung cấp nguồn nước sinh hoạt cho hơn 4.000 người dân. Các thiết bị cảm biến đầu
tiên được đặt ở khu vực đầu nguồn con sông tại Proctor Creek. Dòng chảy của con
sông này ảnh hưởng tới hơn 60.000 người dân sinh sống ở các khu công nghiệp, khu
dân cư, công viên, trường học quanh đó. Connected Water đặt những cảm biến giá
thành rất thấp vào dòng nước trong hệ thống sông hồ. Chúng có vai trò đo và ghi nhận
thời gian thực các thông số quan trọng về chất lượng nước như độ sạch, lượng kim loại
nặng và liên tục chuyển thông số này qua đám mây và mạng di động thông qua công
nghệ LTE Low Power Wide Area (LSWA). Các thiết bị này có tuổi thọ pin rất lâu đảm
bảo tính hiệu quả lâu dài, giúp chính quyền địa phương giám sát hiệu quả và có hành
động kịp thời, nhanh chóng đối với các vấn đề ô nhiễm nếu xảy ra.
Trên thế giới đã và đang nghiên cứu một số hệ thống, thiết bị đo nhiệt độ trong tất
cả các lĩnh vực có thể kể đến như :
Nhà chế tạo chip vi điều khiển hàng đầu thế giới – Atmel đã cho ra mắt dòng chip
đo nhiệt độ có tên gọi AT30TS750, truyền thông theo giao thức số với bộ nhớ
EEPROM tích hợp.

11
Alfredo Milani Comparetti đã cho ra đời phần mềm Speedfan theo dõi điện áp, tốc
độ quạt và nhiệt độ trong máy tính với màn hình phần cứng chip.
Tại Úc các nhà vật lý học thuộc Đại học Adelaide tuyên bố đã chế tạo thành công
nhiệt kế chính xác nhất thế giới.
Hãng Cypress Micro System đã cho ra đời công nghệ PSOC (Programmable
System On Chip) để có thể phát triển các thiết bị đo nhiệt độ dựa trên công nghệ này.
1.1.2. Tình hình trong nước
Trước việc IoT phát triển mạnh mẽ trên thế giới, Việt Nam cũng là một nước đón
đầu xu thế mới. Ngày 13/11/2015, trong khuôn khổ hội nghị quốc tế với chủ đề: Ứng
dụng của Internet of Things cho đô thị thông minh và chất lượng cuộc sống diễn ra tại
khu công nghệ cao TP.HCM (SHTP), các ứng dụng IoT trong thực tế, xu hướng công
nghệ và thị trường của IoT, khởi nghiệp cùng IoT cùng khuyến nghị của chuyên gia về
phát triển trên nền tảng IoT tiếp tục được các nhà khoa học và các chuyên gia trao đổi.
Tại Việt Nam, IoT đã được ứng dụng từ lâu dưới các hình thức tự động hóa như
hệ thống điều khiển đèn giao thông, hệ thống tưới tiêu tự động …, tuy nhiên chỉ đến
năm 2015 thì khái niệm Internet of Things (IoT) mới được nhắc đến nhiều thông qua
các hội thảo, hội nghị về xu hướng công nghệ của Cisco, Intel, Hội Tin học TP.HCM
và một số công ty trong nước như MobiFone, DTT, Sao Bắc Đẩu.
Trước đó, IBM có chiến dịch Hành tinh thông minh hơn nhấn mạnh vào các thành
phố thông minh hơn, trong đó Đà Nẵng được chọn thực hiện thí điểm này từ năm
2012-2013.
Tuy vậy, hiện chưa có ứng dụng IoT thực sự nào ảnh hưởng mạnh tới đời sống xã
hội trong nước. Với giao thông , trong thời gian tới một số ứng dụng như thu phí
không dừng, phạt nguội bằng camera dự báo sẽ phổ biến tại các thành phố lớn như
TP.HCM, Hà Nội. Các lĩnh vực tiềm năng như y tế điện tử, nông nghiệp thông minh,
bất động sản thông minh sẽ cần thêm thời gian để có những ứng dụng IoT phù hợp với
Việt Nam.
Trong công nghiệp nội địa, sản phẩm IoT của doanh nghiệp trong nước hiện chỉ
đếm được trên đầu ngón tay như: sản phẩm chip vi mạch của Trung tâm Nghiên cứu
và đào tạo thiết kế vi mạch - ICDREC; hệ thống cảm ứng độ ẩm, nhiệt độ trong nông
nghiệp của công ty Mimosa tại hệ sinh thái khởi nghiệp công nghệ - khu công nghệ

12
phần mềm đại học quốc gia TP.HCM; chương trình TUHOC STEM và các dịch vụ
trên nền OEP của công ty DTT (trụ sở chính tại Hà Nội).
Các hệ thống IoT tại Việt Nam hiện có đều là của các doanh nghiệp nước ngoài,
các doanh nghiệp trong nước mới chỉ tập trung vào các ứng dụng trên nền tảng điện
thoại di động, máy tính và còn chưa khai thác hết tính thông minh của các hệ thống
cảm biến hay khai thác dữ liệu big data. Và đặc biệt các thiết bị phần cứng thì hầu hết
là nhập khẩu như camera, thiết bị RFID, các cảm biến hóa học.
Giải pháp IoT không chỉ là phần mềm, phần cứng tiêu chuẩn (máy tính, điện
thoại) mà còn là các phần cứng đặc thù như camera, RFID, cảm biến môi trường... Có
thể thấy, các hệ thống này liên quan tới các ngành vật liệu, hóa học, sinh học, vật lý, y
tế và đây là cơ hội cho các ngành khoa học công nghệ tại Việt Nam phối hợp để làm ra
những ứng dụng hữu ích.
Trong phiên thảo luận về nền tảng cho phát triển IoT của hội nghị, xu hướng
nguồn mở trong sự phát triển của IoT thế giới và Việt Nam được thể hiện rõ trong các
bài trình bày “Một kiến trúc mở cho việc phát triển nhà tự động” của TS. Phạm Hoàng
Anh, Đại học Bách Khoa TP.HCM; “Công nghệ mã nguồn mở, sự tự do phát triển:
Nhà Thông minh, Thành phố Thông minh” của ông Pau Ceano, Công ty Vector 3 S.A
và “Nền tảng mở cho IoT - Open IoT platfrom – IOP” của ông Nguyễn Thế Trung,
Công ty cổ phần công nghệ DTT.
Trong phần trình bày của mình, dựa trên thực tế đã triển khai dịch vụ tư vấn chiến
lược, kiến trúc tổng thể CNTT, giải pháp CNTT cho giáo dục, y tế, giao thông vận tải
và văn hóa theo mô hình PPP (hợp tác công tư) và quá trình tham gia xây dựng chuẩn
nguồn mở OIC cùng thế giới, phát triển cộng đồng OIP tại Việt Nam, ông Nguyễn Thế
Trung - Tổng giám đốc công ty cổ phần công nghệ DTT - đưa ra 3 khuyến nghị đối
với Việt Nam để phát triển IOT.
Ông Nguyễn Thế Trung đề nghị Chính phủ khởi tạo một hệ sinh thái sáng tạo hỗ
trợ doanh nghiệp vừa và nhỏ (DNVVN) và doanh nghiệp khởi nghiệp thông qua hợp
tác với các đối tác toàn cầu để định chuẩn. Thông qua các vườn ươm công nghệ, Chính
phủ có chính sách ưu đãi để thu hút các doanh nghiệp khởi nghiệp của khu vực và thế
giới tham gia, tận dụng thế mạnh của nguồn nhân lực và chi phí sản xuất tại Việt Nam.

13
Nhằm phục vụ cho yêu cầu sản xuất trong tất cả các ngành kinh tế, nông nghiệp,
và công nghiệp... Đã có nhiểu báo cáo, tài liệu nghiên cứu về vai trò và các giải pháp
kiểm soát nhiệt độ như:
Nghiên cứu thiết kế và chế tạo hệ thống đo giám sát nhiệt, ẩm cho các kho nông
lâm sản có môi trường khắc nghiệt của Phạm Minh Tuấn, Phạm Thượng Cát, Trần
Đức Minh, Viện Công nghệ Thông Tin, Viện Khoa học và Công nghệ Việt Nam.
Nghiên cứu ảnh hưởng của nhiệt độ đến tính chất cơ lý của mặt đường bê tông
nhựa của TS. Nguyễn Thống Nhất và ThS. Trần Văn Thiện, mục đích của đề tài nhằm
tạo được mặt đường bê tông nhựa có chất lượng, có cường độ ổn định và tuổi thọ cao.
Đề tài nghiên cứu khoa học độc lập cấp nhà nước “Ảnh hưởng của Enso đến các
cực trị nhiệt độ và lượng mưa ở Việt Nam và khả năng dự báo” của Nguyễn Đức Ngữ,
Trung tâm Khoa học công nghệ Khí tượng Thủy văn và Môi trường đã làm sáng tỏ cơ
chế tác động của ENSO và đánh giá khả năng dự báo mùa đối với sự xuất hiện các cực
trị nhiệt độ và lượng mưa trên cơ sở các thông tin, nhận thức về ENSO.
1.2. Tính cấp thiết của đề tài
Hiện nay trong đời sống cũng như xã hội việc ứng dụng công nghệ Internet of
Things là rất cần thiết, con người có thể điều khiển mọi thứ xung quanh mình nhanh và
hiệu quả hơn.Vì vậy vậy chúng ta tìm hiểu về nó là một điều thật sự đúng đắn.
Hiện nay trong đời sống và tất cả các lĩnh vực khác về kinh tế, quốc phòng, công
nghiệp, nông nghiệp,... việc đo và cảnh báo nhiệt độ, độ ẩm đóng vai trò hết sức quan
trọng vì nó liên quan đến chất lượng sản phẩm. Ví dụ như cảnh báo quá nhiệt trong lò
luyện kim, cán thép, hệ thống đo nhiệt độ và độ ẩm môi trường đất để phục vụ tưới
tiêu.... Do đó việc nghiên cứu và thiết kế các hệ thống đo và cảnh báo nhiệt độ, độ ẩm
ngày càng đòi hỏi độ chính xác cao đáp ứng nhu cầu của thị trường. Cùng với sự phát
triển nhanh chóng của công nghệ và hệ thống thông tin thì việc đo và cảnh báo an toàn
về nhiệt độ , độ ẩm sẽ được đảm bảo chính xác và từ đó kịp thời hạn chế các hậu quả
do nhiệt độ, độ ẩm gây ra ở mức thấp nhất. Các hệ thống đo và cảnh báo nhiệt độ, độ
ẩm sẽ giúp cho con người chủ động hơn trong việc cảnh báo an toàn cho các hệ thống
dây chuyền, các kho bảo quản sản phẩm, cũng như cảnh báo cho chính con người
chúng ta. Do vậy việc thực hiện đề tài: Ứng dụng công nghệ Internet of Things trong
thu thập và đánh giá nhiệt độ, độ ẩm môi trường đảm bảo tính cấp thiết, quan trọng
trong sự phát triển của thế giới hiện đại.

14
1.3. Phạm vi nghiên cứu của đề tài
Đề tài ứng dụng công nghệ Internet of Things trong thu thập và đánh giá nhiệt độ
độ ẩm môi trường có thể được ứng dụng thực tiễn trong các ngôi nhà thông minh, ứng
dụng trong nông nghiệp ở các trang trại cần sự đảm bảo về nhiệt độ độ ẩm( trang trại
chăn nuôi gà, trồng nấm, vườn ươm cây, lò ấm trứng…). Ứng dụng trong công nghiệp
để đảm bảo tính chính xác trong sản xuất. Sản phẩm cũng có thể được ứng dụng trong
giám sát, quan trắc, thời tiết môi trường. Dựa vào sự thay đổi của nhiệt độ độ ẩm môi
trường theo thời gian để có những dự báo cũng như biện pháp phù hợp với khu vực
cần khảo sát thực nghiệm.
1.4. Mục tiêu của đề tài
Đề tài ứng dụng công nghệ Internet of Thing trong thu thập và đánh giá nhiệt độ
độ ẩm môi trường có mục tiêu cần đạt được là:
- Nghiên cứu và tìm hiểu lý thuyết chung về công nghệ Internet of Things
- Ứng dụng công nghệ Internet of Things vào việc thiết kế thi công sản phẩm thu
thập và đánh giá nhiệt độ, độ ẩm môi trường.

15
CHƯƠNG 2. GIỚI THIỆU VỀ CÔNG NGHỆ INTERNET OF THINGS

2.1. Tổng quan về Internet of Things


2.1.1. Giới thiệu về mô hình Internet of Things (IoT)
2.1.1.1. IoT là gì?
IoT (Internet of Things) là một mạng lưới gồm các đối tượng có khả năng kết nối
Internet và tác động qua lại giữa các dịch vụ web.
IoT không chỉ là các máy "giao tiếp" với nhau mà còn nhiều thứ khác nữa, bao
gồm khả năng thay đổi hoàn toàn thế giới, cả trong cuộc sống và cách chúng ta cảm
nhận trong thực tế.

Hình 2.1. Mô hình IoT


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.
Vào tháng 6 năm 2009, Ashton từng cho biết rằng "hiện nay máy tính - và Internet
gần như phụ thuộc hoàn toàn vào con người để chuyển tải dữ liệu. Gần như tất cả

16
trong số 50 Petabyte dữ liệu đang có trên Internet (vào thời điểm đó) đều được ghi lại
hoặc tạo ra bởi con người chúng ta, thông qua các cách thức như gõ chữ, nhấn nút,
chụp ảnh, quét mã vạch... Con người chính là nhân tố quyết định trong thế giới
Internet hiện nay. Thế nhưng con người lại có nhiều nhược điểm: chúng ta chỉ có thời
gian hạn chế, khả năng tập trung và độ chính xác cũng ở mức thấp so với máy móc.
Điều đó có nghĩa là chúng ta không giỏi trong việc thu thập thông tin về thế giới xung
quanh, và đây là một vấn đề lớn.
Một quan điểm khác lại cho rằng, IoT gồm các đối tượng thông minh có thể được
điều khiển và tương tác với những đối tượng có thể đáp ứng tương tác từ xa, hay có
thể làm việc độc lập nhằm cung cấp các dịch vụ và giải pháp mà không cần sự can
thiệp của con người.
Hiện nay, IoT đang trải qua giai đoạn phát triển "bộc phát" và điều này xảy ra nhờ
vào một số nhân tố, trong đó gồm IPv6, 4G, chi phí, tính sẵn có của công nghệ. Trong
những năm tiếp theo, bạn sẽ thấy ngày càng có nhiều thiết bị trên thị trường. Những
thách thức đang diễn ra là quản lý dữ liệu và chuyển sang IPv6 (IPv6 đã sẵn sàng và
chạy với địa chỉ đã được cấp phát. IPv4 đã cạn kiệt và 2011 chỉ còn lại những địa chỉ
cuối cùng).
2.1.1.2. Xu hướng và tính chất của IoT
2.1.1.2.1. Sự thông minh
Sự thông minh và tự động trong điều khiển thực chất không phải là một phần
trong ý tưởng về IoT. Các máy móc có thể dễ dàng nhận biết và phản hồi lại môi
trường xung quanh (ambient intelligence), chúng cũng có thể tự điều khiển bản thân
(autonomous control) mà không cần đến kết nối mạng.
Việc tích hợp trí thông minh vào IoT còn có thể giúp các thiết bị, máy móc, phần
mềm thu thập và phân tích các dấu vết điện tử của con người khi chúng ta tương tác
với những thứ thông minh, từ đó phát hiện ra các tri thức mới liên quan tới cuộc sống,
môi trường, các mối tương tác xã hội cũng như hành vi con người.
2.1.1.2.2. Kiến trúc dựa trên sự kiện
Các thực thể, máy móc trong IoT sẽ phản hồi dựa theo các sự kiện diễn ra trong
lúc chúng hoạt động theo thời gian thực. Một số nhà nghiên cứu từng nói rằng một
mạng lưới các sensor chính là một thành phần đơn giản của IoT.

17
2.1.1.2.3. Là một hệ thống phức tạp
Trong một thế giới mở, IoT sẽ mang tính chất phức tạp bởi nó bao gồm một lượng
lớn các đường liên kết giữa những thiết bị, máy móc, dịch vụ với nhau, ngoài ra còn
bởi khả năng thêm vào các nhân tố mới.
2.1.1.2.4. Kích thước
Một mạng lưới IoT có thể chứa 50 đến 100 nghìn tỉ đối tượng được kết nối và
mạng lưới này có thể theo dõi sự di chuyển của từng đối tượng. Một người trong thành
thị có thể bị bao bọc xung quanh bởi 1000 đến 5000 đối tượng có khả năng theo dõi.
2.1.1.2.5. Vấn đề không gian, thời gian
Trong IoT, vị trí địa lý chính xác của một vật nào đó là rất quan trọng. Hiện nay,
Internet chủ yếu được sử dụng để quản lí thông tin được xử lý bởi con người. Do đó
những thông tin như địa điểm, thời gian, không gian của đối tượng không mấy quan
trọng bởi người xử lí thông tin có thể quyết định các thông tin này có cần thiết hay
không, và nếu cần thì họ có thể bổ sung thêm. Trong khi đó, IoT về lý thuyết sẽ thu
thập rất nhiều dữ liệu, trong đó có thể có dữ liệu thừa về địa điểm, và việc xử lí dữ liệu
đó được xem như không hiệu quả. Ngoài ra, việc xử lí một khối lượng lớn dữ liệu
trong thời gian ngắn đủ để đáp ứng cho hoạt động của các đối tượng cũng là một thác
thức hiện nay.
2.1.1.2.6. Luồng năng lượng mới
Hiện nay, IoT đang trải qua giai đoạn phát triển "bộc phát" và điều này xảy ra nhờ
vào một số nhân tố, trong đó gồm IPv6, 4G, chi phí, tính sẵn có của công nghệ.
ARM đã "nhanh chân" trong việc nhận ra rằng, ổ đĩa có xu hướng sử dụng các bộ
vi điều khiển 32-bit là giải pháp cho những người có ý định thực hiện một số quyết
định của riêng họ theo một cách tự động. Gary tin rằng, khả năng của các bộ vi điều
khiển này ngày càng tăng, điều này có nghĩa là người dùng có thể làm những điều mà
trước đây là bất khả.
Axel Pawlik, Giám đốc quản lý của RIPE NCC lý giải tại sao IPv6 cần thiết cho
tương lai của IoT, với IPv6 chúng ta sẽ có lượng địa chỉ phong phú và điều này sẽ mở
ra khả năng gán địa chỉ cho mỗi thiết bị (gadget) và chip. Các giải pháp sẽ dễ dàng và
đơn giản hơn, rõ ràng hơn, có thể phục hồi đến từng mục địa chỉ riêng, và phạm vi
phát triển vô cùng to lớn.

18
2.1.1.3. Những thách thức ảnh hưởng đến sự phát triển của mô hình IoT
2.1.1.3.1. Chưa có sự chuẩn hóa
Sự chuẩn hóa ở đây được hiểu như là một ngôn ngữ giao tiếp chung. Ở mức cơ
bản nhất, Internet là một mạng dùng để nối thiết bị này với thiết bị khác. Nếu chỉ riêng
có kết nối không thôi thì không có gì đảm bảo rằng các thiết bị biết cách giao tiếp với
nhau (ví dụ như bạn có thể đi từ Việt Nam đến Mỹ, nhưng không đảm bảo rằng bạn có
thể nói chuyện tới với người Mỹ).
Để các thiết bị có thể giao tiếp với nhau, chúng sẽ cần một hoặc nhiều giao thức
(protocols), có thể xem là một thứ ngôn ngữ chuyên biệt để giải quyết một tác vụ nào
đó. Chắc chắn bạn đã ít nhiều sử dụng một trong những giao thức phổ biến nhất thế
giới, đó là HyperText Transfer Protocol (HTTP) để tải web. Ngoài ra chúng ta còn có
SMTP, POP, IMAP dành cho email, FTP dùng để trao đổi file, …vv. Những giao thức
như thế này hoạt động ổn bởi các máy chủ web, mail và FTP thường không phải nói
với nhau nhiều, khi cần, một phần mềm phiên dịch đơn giản sẽ đứng ra làm trung gian
để hai bên hiểu nhau. Còn với các thiết bị IoT, chúng phải đảm đương rất nhiều thứ,
phải nói chuyện với nhiều loại máy móc thiết bị khác nhau. Đáng tiếc rằng hiện người
ta chưa có nhiều sự đồng thuận về các giao thức để IoT trao đổi dữ liệu.
2.1.1.3.2. Hàng rào subnetwork
Như đã nói ở trên, thay vì giao tiếp trực tiếp với nhau, các thiết bị IoT hiện nay
chủ yếu kết nối đến một máy chủ trung tâm do hãng sản xuất, một nhà phát triển nào
đó quản lí. Cách này cũng vẫn ổn, những thiết bị vẫn hoàn toàn nói được với nhau
thông qua chức năng phiên dịch của máy chủ. Thế nhưng mọi chuyện không đơn giản
như thế, cứ mỗi một mạng lưới như thế tạo thành một subnetwork riêng, và vấn đề là
các máy móc nằm trong subnetwork này không thể giao tiếp tốt với subnetwork khác.
Một số trong những vấn đề nói trên chỉ đơn giản là vấn đề về kiến trúc mạng, về
kết nối mà các thiết bị sẽ liên lạc với nhau (Wifi, Bluetooth, NFC,...). Những thứ này
thì tương đối dễ khắc phục với công nghệ không dây ngày nay. Còn với các vấn đề về
giao thức thì phức tạp hơn rất nhiều, nó chính là vật cản lớn và trực tiếp trên còn
đường phát triển của Internet of Things.
2.1.1.3.3. Chi phí phát triển mạng
Cách duy nhất để các thiết bị IoT có thể thật sự giao tiếp đó là khi có một động lực
kinh tế đẩy mạnh khiến các nhà sản xuất đồng ý chia sẻ quyền điều khiển cũng như dữ

19
liệu mà các thiết bị của họ thu thập được, hiện tại các động lực này không nhiều. Ví
dụ: một công ty thu gom rác muốn kiểm tra xem các thùng rác có đầy hay chưa. Khi
đó, họ phải gặp nhà sản xuất thùng rác, đảm bảo rằng họ có thể truy cập vào hệ thống
quản lí của từng thùng một. Điều đó khiến chi phí bị đội lên, và công ty thu gom rác có
thể đơn giản chọn giải pháp cho một người chạy xe kiểm tra từng thùng một.
2.1.2. Các công nghệ thành phần

Hình 2.2. Mô hình các công nghệ thành phần của IoT.
2.1.2.1. Hệ thống nhúng (Embedded Systems)

Hình 2.3. Mô hình hệ thống nhúng giám sát điều khiển từ xa

20
2.1.2.1.1. Định nghĩa
Hệ thống nhúng (Embedded system) là một thuật ngữ để chỉ một hệ thống có khả
năng tự trị được nhúng vào trong một môi trường hay một hệ thống trung tâm. Đó là
các hệ thống tích hợp cả phần cứng và phần mềm phục vụ các bài toán chuyên dụng
trong nhiều lĩnh vực công nghiệp, tự động hoá điều khiển, quan trắc và truyền tin.
2.1.2.1.2. Đặc điểm
Các hệ thống nhúng được thiết kế để thực hiện một số nhiệm vụ chuyên dụng chứ
không phải đóng vai trò là các hệ thống máy tính đa chức năng. Một hệ thống nhúng
thường không phải là một khối riêng biệt mà là một hệ thống phức tạp nằm trong thiết
bị mà nó điều khiển. Phần mềm được viết cho các hệ thống nhúng được gọi là
firmware và được lưu trữ trong các chip bộ nhớ ROM hoặc bộ nhớ flash. Phần mềm
thường chạy với số tài nguyên phần cứng hạn chế: không có bàn phím, màn hình hoặc
có nhưng với kích thước nhỏ, dung lượng thấp.
2.1.2.1.3. Kiến trúc phần mềm của hệ thống nhúng
- Vòng lặp kiểm soát đơn giản.
- Hệ thống ngắt điều khiển.
- Đa nhiệm tương tác.
- Đa nhiệm ưu tiên.
- Vi nhân ( Microkernel) và nhân ngoại (Exokernel).
- Nhân khối ( Monolithic kernels ).
2.1.2.2. Tính toán khắp nơi ( Ubiquitous Computing)

Hình 2.4. Mô hình Ubiquitous computing


21
2.1.2.2.1. Quan điểm của Mark Weiser
Mark Weiser (1952-1999) được xem là cha đẻ của tính toán khắp nơi, ông là
người đã đưa ra thuật ngữ “ubiquitous computing” (gọi tắt là ubicomp) đề cập tới xu
hướng đó là trong tương lai con người cùng một lúc sẽ không chỉ tương tác với duy
nhất một máy tính như hiện nay mà thay vào đó sẽ tương tác với một tập hợp các máy
tính nhỏ được kết nối mạng với nhau, thông thường chúng có tính vô hình và hiện diện
bên trong trong các vật dụng hay các đối tượng mà chúng ta thấy hàng ngày. Công
nghệ máy tính được đánh giá là một trong những công nghệ vĩ đại nhất mang lại nhiều
lợi ích to lớn cho con người.
Theo Mark Weiser, Ubicomp không có nghĩa là khắp nơi đều có các máy tính
truyền thống mà là có các máy tính có khả năng tính toán ở khắp mọi nơi, chúng có thể
được nhúng trong môi trường theo cách mà chúng có thể được sử dụng khi cần đến
trong khi chúng ta không phải bận tâm đến sự có mặt của chúng, máy tính sẽ trở nên
rộng khắp khi chúng âm thầm hỗ trợ người sử dụng.
Hình dưới cho là tiên đoán của Mark Weiser về xu hướng phát triển của máy tính
trong tương lai được ông đưa ra trong một tài liệu năm 1996, cho tới thời điểm này các
mốc thời gian do ông đưa ra có lẽ hơi sớm nếu nhìn lại thực tế triển khai của tính toán
khắp nơi hiện nay, tuy vậy xu hướng mà ông quan niệm đang ngày càng được củng cố.

Hình 2.5. Xu hướng phát triển của Ubiquitous computing

22
Trong bài viết “Máy tính của thế kỷ21” Mark Weiser đã đưa ra những nhận định
của mình về máy tính trong thế kỷ 21, theo ông ở đó con người và máy tính được hợp
nhất như là một thực thể thống nhất. Ông đã mô tả“Các công nghệ cơ bản sẽ biến
mất.Chúng liên kết với nhau thành kết cấu của cuộc sống hàng ngày cho tới khi không
thể phân biệt được với nhau”.Về bản chất, quan điểm của ông là trong tương lai sẽ tồn
tại các thiết bị tính toán khắp nơi trong môi trường thực mà người sử dụng hầu như
không cảm nhận được sự hiện diện của chúng.
2.1.2.2.2. Tính toán khắp nơi và hiện thực ảo.
Đối nghịch với tính toán khắp nơi, theo Mark Weiser đó là hiện thực ảo (Virtual
reality), trong hiện thực ảo “thế giới thực được mang vào máy tính” trong khi tính toán
khắp nơi lại “mang máy tính vào thế giới thực”. Theo ông hiện thực ảo dựa trên các
mô hình phức tạp của thế giới đang tồn tại hoặc thế giới tưởng tượng.
Mô hình này không chỉ đơn thuần tồn tại trong không gian ba chiều mà chúng còn
bao gồm nhiều mô tả tĩnh và động đã được mô hình hóa, hiện thực ảo tập trung các
công cụ phức tạp để mô phỏng thếgiới hơn là ẩn mình trong thế giới mà chúng tồn tại,
trong thế giới đó con người được đặt trong môi trường do máy tính tạo ra, ngược lại
trong tính toán khắp nơi con người sống trong thế giới thực và vẫn tận dụng được
những khả năng to lớn của máy tính. Chẳng hạn trong một số dự án người sử dụng
được đeo một loại kính đặc biệt trong các cảnh nhân tạo, đeo găng tay hay thậm chí
mặc một bộ đồ đặc biệt để có thể cảm nhận được những hiệu ứng khiến người sử dụng
có thể di chuyển và tương tác với các đối tượng ảo… Khi độ phức tạp của các mô hình
tăng lên, ngày càng nhiều khía cạnh của thế giới thực được mô phỏng trong hiện thực
ảo, cuối cùng hầu hết mọi thứ xuất hiện trong thế giới ảo thậm chí là con người trở
thành vai trò phụ đối với máy tính.
Mặc dù hiện thực ảo có thể đạt được mục đích riêng trong việc cho phép con
người khám phá, học tập, tìm hiểu một lĩnh vực nào đó mà bình thường con người
không thể có điều kiện hoặc khả năng tiếp cận chẳng hạn như phía bên trong các ô, bề
mặt của các hành tinh nào đó, mạng thông tin của các cơ sở dữ liệu phức hợp…
Tuy nhiên Mark Weiser vẫn phủ định vai trò trung tâm của máy tính trong hiện
thực ảo đồng thời đề xuất mô hình tính toán khắp nơi nhằm đảo ngược vai trò trên,
trong đó loại bỏ vai trò trung tâm của máy tính bằng cách nhúng chúng vào môi trường
hoặc trong các đối tượng vật lý, trong các căn phòng được thiết kế sao cho con người

23
trở thành trung tâm… Trong tình huống này, ông sử dụng thuật ngữ “cảm xúc ảo”
(embodied virtuality) để thay thế cho cụm từ “Ubiquitous computing” (tính toán khắp
nơi). Hình dưới do Mark Weiser đưa ra nhằm mô tả rõ hơn quan điểm của ông về sự
đối lập giữa tính toán khắp nơi và hiện thực ảo.

Hình 2.6. So sánh của Mark Weiser về hiện thực ảo và Ubiquitous Computing
2.1.2.2.3. Công nghệ Calm
Mark Weiser và Seely Brown đã sử dụng thuật ngữ “công nghệ calm” (calm
technology) để mô tả một khía cạnh quan trọng khác trong lĩnh vực ubicomp: Thực tế
là máy tính không còn giữ vị trí độc tôn trong trung tâm sự chú ý của người sử dụng.
Trong nhiều trường hợp các công việc tính toán có thể hoàn toàn diễn ra sau hậu
trường và tạo ra tác động tới nhận thức bên ngoài của người dùng theo cách khiêm tốn.
Như vậy, tính toán khắp nơi là quan điểm về thế hệ máy tính kế tiếp trong đó con
người và máy tính được xem như sẽ hợp nhất với nhau. Tất cả các hành động tự nhiên
của con người đều được tăng cường trong khía cạnh tính toán. Năng lực tính toán này
thường được nhúng với các hoạt động của con người theo cách mà các thiết bị tính
toán vô hình trong bối cảnh nào đó. Nó đi ngược lại với khái niệm về cách tương tác
với máy tính mà hiện nay chúng ta đang tiến hành. Thách thức lớn nhất mà chúng ta
phải đối mặt trong việc hiện thực hoá khái niệm tính toán khắp nơi đó là sự kết hợp
của nhiều công nghệ liên quan. Các công nghệ liên quan bao gồm phần cứng, phần
mềm, cảm biến thực, liên kết với người sử dụng và triển khai, tính tỷ lệ, an toàn và
riêng tư. Tính toán khắp nơi là một lĩnh vực phong phú cho các nhà nghiên cứu trong
đó các quy tắc chưa được vạch ra và biên giới chưa được định hình đầy đủ.
2.1.2.2.4. Tính toán khắp nơi và bài toán định vị.
Trong tính toán khắp nơi chúng ta cần phải giải quyết nhiều vấn đề phức tạp khác
nhau chẳng hạn như các vấn đề về mặt công nghệ, công suất tiêu thụ, tính bảo mật…

24
Một trong những bài toán quan trọng mà chúng ta cần giải quyết đó là vấn đề về xác
định vị trí của các đối tượng hay còn gọi là bài toán định vị.
Các hệ thống định vị trong môi trường bên ngoài (outdoor), chẳng hạn như GPS
đã được triển khai hết sức rộng rãi và mang lại nhiều lợi ích thiết thực trong nhiều ứng
dụng. Với môi trường trong nhà (indoor) đã có nhiều công nghệ và phương pháp khác
nhau được khai thác sử dụng trong các hệ thống định vị, tuy nhiên phần lớn trong số
chúng có giá thành tương đối cao và đang trong quá trình nghiên cứu hoàn thiện. Để
xác định được vị trí của một đối tượng trong môi trường indoor thường chúng ta phải
kết hợp nhiều vấn đề công nghệ, phương pháp với nhau, đây là những công việc tương
đối phức tạp về mặt công nghệ và kỹ thuật.
2.1.2.3. Điện thoại di động( Mobile Telephony)
2.1.2.3.1. Giới thiệu về điện thoại di động
Mobile Telephony ( Điện thoại di động ) được trưởng thành từ ngành công nghiệp
điện thoại với những hứa hẹn trong mạng điện thoại truy nhập rộng khắp.

Hình 2.7. Mô hình hệ thống mạng thông tin di động tế bào


Điện thoại di động thường được gọi là điện thoại tế bào bởi vì trong điện thoại di
động hoạt động theo cấu trúc của mạng không dây. Các mạng được chia thành các tế
bào nơi mỗi điện thoại được kết nối với một tế bào xác thực tại bất kỳ thời điểm nào.
Một tế bào bao gồm một khu vực vật lý có kích thước được xác định bởi các nhà điều
hành mạng. Vì mỗi tế bào thường xử lý một số lượng hạn chế các cuộc gọi điện thoại
đồng thời, các nhà khai thác mạng có kế hoạch mạng lưới của họ để các tế bào nhỏ
hơn và nhiều hơn ở những nơi khai thác mong đợi nhiều người thực hiện cuộc gọi điện
thoại. Mỗi tế bào được điều hành bởi một tháp di động trên đó một trạm thu phát
không dây được gắn kết.

25
2.1.2.3.2. Vai trò của điện thoại di động
Mobile Telephony (Điện thoại di động ) đã làm dấy lên tầm xa công nghệ mạng
không dây như: Global System for Mobile communications (GSM- Hệ thống thông tin
di động toàn cầu), General Packet Radio Service (GPRS- Dịch vụ vô tuyến gói tổng
hợp ), Enhanced Data Rates for GSM Evolution (EDGE- công nghệ di động được
nâng cấp từ GPRS), Universal Mobile Telecommunications System (UMTS- Hệ thống
viễn thông di động toàn cầu), cũng như công nghệ truyền thông không dây tầm gần
như là Bluetooth (IEEE 802.15.1). Truyền thông tầm xa được sử dụng để truyền dữ
liệu thoại và Internet từ điện thoại di động đến trạm cơ sở gần nhất. Truyền thông
không dây tầm ngắn được sử dụng cho giao tiếp giữa điện thoại và không dây các phụ
kiện như tai nghe không dây.
Với chiếc điện thoại thông minh hiện đại, truy cập Internet không còn giới hạn với
máy tính, nó đã thực sự phổ biến.Với một vài nút bấm nhanh, e-mail, tin nhắn nhanh,
và World Wide Web( mạng lưới toàn cầu) sẽ có sẵn ngay lập tức.
2.1.2.4. Đo lường từ xa và truyền thông MTM
Telemetry là một từ ghép Hy lạp giữa tele (từ xa) và metron (đo đạc). Telemetry là
việc thực hiện các phép đo từ xa. Truyền thông machine-to-machine là sự tổng quan
của telemetry với hàm ý là sự giao tiếp hoạt động của truyền thông tự điều khiển là
trung tâm của khái niệm telemetry.

Hình 2.8. Mô hình đo lưu lượng nước lũ từ xa


26
Telemetry và giao tiếp machine-to-machine cũng tương tự như đối tượng thông
minh bởi vì chúng đều được sử dụng để thực hiện đo lường quy mô lớn. Với telemetry,
các phép đo có thể được thực hiện từ một trang web từ xa mà không cần truy cập vật
lý trực tiếp. Truy cập từ xa bằng cách sử dụng telemetry thường được thực hiện với
các mạng điện thoại di động hiện có như GSM hoặc 3G (UMTS), hoặc thông qua
mạng lưới chuyên dụng như các mạng vệ tinh Inmarsat. Smart objects (Đối tượng
thông minh) không chỉ được sử dụng để đo lường và cảm biến, mà còn ảnh hưởng đến
môi trường bằng cách sử dụng bộ truyền động. Tuy nhiên, phần lớn các công nghệ
truy cập từ xa được phát triển cho các hệ thống đo từ xa(temetry) có thể được sử dụng
áp dụng cho hệ thống smart objects.
2.1.2.5.Mạng cảm biến không dây và mạng cảm biến rộng khắp (Wireless Sensor
and Ubiquitous Sensor Networks )

Hình 2.9. Mô hình mạng cảm biến chuyển tiếp thông tin đến trạm gốc.
Mạng cảm biến không dây đã phát triển từ ý tưởng rằng các cảm biến không dây
nhỏ có thể được sử dụng để thu thập thông tin từ các môi trường vật lý trong một số
lượng lớn các trường hợp khác nhau, từ theo dõi cháy rừng và quan sát động vật để
quản lý nông nghiệp và giám sát công nghiệp. Mỗi một cảm biến không dây truyền
thông tin tới một trạm gốc. Cảm biến giúp đỡ lẫn nhau để chuyển tiếp thông tin đến
các trạm cơ sở.
Công việc đầu tiên trong các mạng cảm biến không dây được hình dung là mạng
cảm biến được cấu tạo thành các bụi thông minh (smart dust). Smart dust sẽ gồm một
số lượng lớn của các hệ thống điện siêu nhỏ với khả năng cảm biến, tính toán, và
thông tin liên lạc. Nó sẽ được trải rộng trên một khu vực nơi thành một hiện tượng,
chẳng hạn như độ ẩm, nhiệt độ, đã được đo. Bởi vì các vết bụi sẽ rất nhỏ, có thể được

27
sử dụng phân bố với các cơ chế như luồng không khí. Tuy nhiên, khái niệm về bụi
thông minh có kích thước vật lý nhỏ do vậy cơ chế giao tiếp và khả năng tính toán của
các nút còn hạn chế. Nhiều nhóm nghiên cứu bắt đầu xây dựng nguyên mẫu phần cứng
với kích thước vật lý lớn hơn đó là dễ dàng hơn để sử dụng cho thử nghiệm.
Khái niệm về mạng cảm biến không dây là tương tự như của các đối tượng thông
minh, và hơn thế sự phát triển trong các đối tượng thông minh đã xảy ra trong cộng
đồng xung quanh mạng cảm biến không dây. Mạng cảm biến không dây bao gồm các
nút nhỏ, được trang bị một thiết bị truyền thông không dây, mà cấu hình độc lập thành
những mạng lưới thông qua các cảm biến có thể được truyền. Mạng đối tượng thông
minh (smart objects) ít tập trung vào việc thu thập dữ liệu thuần túy, nhưng được dành
cho một số lượng lớn các nhiệm vụ khác bao gồm cả truyền động và kiểm soát. Hơn
nữa, các mạng cảm biến không dây được dự định chủ yếu được vận hành trên một thiết
bị thông tin vô tuyến không dây. Ngược lại, các khái niệm về đối tượng thông minh
không gắn với bất kỳ cơ chế giao tiếp cụ thể, nhưng có thể chạy trên dây cũng như các
mạng không dây.
2.1.2.6. Máy tính di động(Mobile Computing)
Máy tính di động là lĩnh vực truyền thông không dây và kết chuyển xung quanh (
hoán vị vòng quanh) máy tính, chẳng hạn như máy tính xách tay. Trong một số cách
thức lĩnh vực máy tính di động tách ra từ việc được khởi tạo ở khắp nơi trong khu vực
máy tính. Tương tự như vậy, sự tập trung ban đầu về mạng không dây đã dẫn tới
nghiên cứu cơ chế truyền thông không dây. Làm việc trên các cơ chế này bắt đầu vào
giữa những năm 1980 và đã dẫn đến các tiêu chuẩn trên toàn mạng cục bộ không dây
(WiFi) mà bắt đầu hình thành vào cuối năm 1990.

Hình 2.10. Mô hình Mobile Computing.


28
Các lĩnh vực máy tính di động đã được hưởng lợi rất nhiều từ những tiến bộ kỹ
thuật trong công nghệ máy tính như bộ vi xử lý điện năng thấp PC, nhỏ kích thước bộ
nhớ công nghệ kỹ thuật số, và hệ thống hiển thị rẻ tiền. Sự kết hợp của những công
nghệ đã tạo ra lĩnh vực điện toán máy tính xách tay,điều này đã dẫn đến việc tạo ra các
lớp mới của máy tính xách tay rẻ tiền gọi là netbook. Netbook được thiết kế với truyền
thông không dây in mind. Máy tính di động đã tràn ngập hơn nữa truy cập mạng
không dây. Ngày nay, cái gọi là hostpots WiFi (Điểm nóng wifi) phổ biến tại các địa
điểm công cộng như quán cà phê, thư viện và sân bay. Người dùng có thể kết nối với
Internet thông qua mạng không dây này, hoặc miễn phí hoặc có tính phí.
Trong học viện, các lĩnh vực máy tính di động cũng được tiến hành trên lĩnh vực
nghiên cứu của Mobile Ad Hoc (MANETs). MANET tập trung nghiên cứu vào các cơ
chế mạng cho các máy tính không dây, nơi có kết cấu hạ tầng mạng đang tồn tại.
Trong tình huống như vậy, các giao thức định tuyến và các cơ chế mạng khác cần phải
nhanh chóng thiết lập một mạng Ad Hoc. Sự hình thành mạng được thực hiện một
cách phân tán nơi mỗi nút mà tham gia trong mạng phải tham gia vào các cơ chế của
mạng như định tuyến và kiểm soát truy cập. Cộng đồng Manet đã phát triển một số
giao thức định tuyến đối với các mạng như chuẩn AODV và giao thức DSR.
2.1.2.7. Mạng máy tính (Computer Networking)
Mạng máy tính là giới thiệu về việc kết nối các máy tính để cho phép chúng giao
tiếp với nhau. Các mạng này ban đầu đều có dây, nhưng với sự ra đời của máy tính di
động, các mạng không dây có sẵn.

Hình 2.11. Mô hình Computing Netwworking

29
ARPANET và Internet đã được xây dựng trên một khái niệm mạnh mẽ được gọi
là nguyên tắc end-to-end của thiết kế hệ thống, tên của một bài báo có ảnh hưởng lớn
bởi Jerome H. Saltzer, David P. Reed, và David D.Clark. Các nguyên tắc end-to-end
cho rằng chức năng trong một hệ thống nên được đặt càng lâu càng tốt đối với các
điểm kết thúc. Đối với Internet, điều này có nghĩa là hệ thống đầu cuối, các máy tính
kết nối với Internet, nên thực thi hầu hết các công việc trong các truyền thông thông
qua mạng với mạng hoạt động tương đối ngớ ngẩn.
Như vậy mạng sẽ chỉ cung cấp một cơ chế cho việc gửi các gói dữ liệu đến và đi
từ các điểm kết thúc. Nguyên tắc này đã được coi là một trong những khía cạnh quan
trọng nhất của thiết kế của hệ thống Internet, bởi vì nó cho phép hệ thống hỗ trợ phát
triển một cách nhẹ nhàng các ứng dụng từ e-mail đơn giản và vận chuyển các tập tin
của những năm 1980 thông qua các cuộc cách mạng web của việc truyền tải năm 1990
để truyền tốc độ cao, thời gian thực video, và truyền âm thanh của những năm 2000.
Các nguyên tắc end-to-end cho phép mạng phát triển riêng biệt từ các ứng dụng, do đó
làm cho nó có thể hỗ trợ một số lượng ngày càng tăng của người sử dụng, mà không
cần phải tái cấu trúc phức tạp của toàn bộ mạng và các giao thức của nó. Sự kết nối
giữa các mạng máy tính và các đối tượng thông minh là điều hiển nhiên: truyền thông
là một trong những đặc điểm xác định của các đối tượng thông minh.
2.1.3. Cấu trúc mạng mở rộng
Với sự xuất hiện của định nghĩa IoT đã mở ra một xu hướng công nghệ mới,
tiếp cận gần hơn tới con người. IoT là một tầm nhìn hướng về mạng Internet tương lai
trong đó thế giới vật lý sẽ liên kết chặt chẽ với các mạng máy tính. Ngày nay, mạng
máy tính hầu hết sử dụng cho mục đích con người tìm kiếm thông tin. Hầu như tất cả
dữ liệu có sẵn trên mạng Internet được thu thập và đưa vào mạng Internet do con
người thực hiện. Theo quan điểm của IoT, các thiết bị nhỏ có đủ thông minh để thu
thập thông tin tự động và thông tin với các thiết bị khác mà không cần có sự can thiệp
của con người. Mỗi một thiết bị được gọi là một đối tượng thông minh và được gán
với một cảm biến hoặc một bộ truyền động, một thiết bị truyền thông, một vi điều
khiển và một nguồn công suất. Vì vậy điều quan trọng là việc tích hợp mạng WSN với
web và đưa ra các thiết bị hạn chế về mặt tài nguyên với dịch vụ RESTful web
services.

30
Hình 2.12. Mô hình mạng mở rộng
Kiến trúc REST (Representational State Transfer) chính là lõi chính của web hiện
tại và sử dụng URIs (Universal Resource Identifiers) cho việc bao bọc và nhận dạng
dịch vụ. Chúng tập trung vào việc tạo ra các cặp dịch vụ lỏng lẻo cho các ứng dụng để
từ đó chúng có thể dễ dàng được chia sẻ và sử dụng lại. Kiến trúc REST bao gồm các
client và các server nhờ đó các client khởi tạo các yêu cầu đến các server, các server
này sẽ xử lý các yêu cầu và trả về đáp ứng thích hợp. Trong triển khai Web, những
thành phần chính rộng lớn của kiến trúc REST ngày nay sử dụng giao thức truyền siêu
văn bản HTTP như là giao thức ứng dụng, nó sẽ thao tác tài nguyên bằng các phương
thức riêng của nó GET, PUT, POST … tài nguyên được tách đôi ra từ biểu diễn của
chúng và từ đó được biểu diễn tùy ý trong các định dạng khác nhau như là JSON hoặc
XML. Tuy nhiên HTTP không được thiết kế với bộ nhớ hạn chế của các đối tượng
thông minh. Kích thước gói và bộ nhớ được yêu cầu dành cho TCP và các tiêu đề văn
bản được phù hợp cho các hạn chế của các node mạng cảm biến.
IoT là một kiến mạng tổng hợp của nhiều thành phần mạng khác nhau trong một
cấu trúc chung, hệ thống gồm rất nhiều các thành phần khác nhau và tuân theo kiến
trúc IP dựa trên giao thức TCP/IP. Kiến trúc giao thức TCP/IP được thiết kế khoảng 30
năm trước đây, bây giờ được sử dụng trên hàng tỷ các thiết bị trên khắp thế giới từ các
thiết bị cầm tay và máy tính xách tay đến các siêu máy tính. Bộ ứng dụng giao thức IP
đã được nâng cao để hỗ trợ truyền thông đa điểm, chất lượng dịch vụ (QoS), kỹ thuật
lưu lượng, và các dịch vụ thời gian thực với kiến trúc được duy trì trong một thời gian
31
dài. Kiến trúc phân lớp là một trong những cơ sở của thiết kế và nó tạo thành một kiến
trúc cực kỳ linh hoạt. Kiến trúc phân lớp được biết đến với mô hình năm lớp hiện nay
của giao thức TCP/IP và mô hình OSI bẩy lớp.

Hình 2.13. Mô hình TCP/IP


2.1.4. Các mô hình ứng dụng của IoT
2.1.4.1. Lưới điện thông minh
Lưới điện thông minh (hệ thống điện thông minh) là hệ thống điện có sử dụng các
công nghệ thông tin và truyền thông để tối ưu việc truyền dẫn, phân phối điện năng
giữa nhà sản xuất và hộ tiêu thụ, hợp nhất cơ sở hạ tầng điện với cơ sở hạ tầng thông
tin liên lạc. Có thể coi hệ thống điện thông minh gồm có 2 lớp: lớp 1 là hệ thống điện
thông thường và bên trên nó là lớp 2- hệ thống thông tin, truyền thông, đo lường.
Lưới điện thông minh là dạng lưới điện mà mục tiêu đặt ra là tiên đoán và phản
ứng một cách thông minh với cách ứng xử và hành động của tất cả các đơn vị được kết
nối điện với lưới điện, bao gồm các đơn vị cung cấp điện, các hộ tiêu thụ điện và các
đơn vị đồng thời cung cấp và tiêu thụ điện, nhằm cung cấp một cách hiệu quả các dịch
vụ điện tin cậy, kinh tế và bền vững. Lưới điện thông minh phát triển trên 4 khâu:
+ Phát điện: Smart Generation.
+ Truyền tải: Smart Transmission.
+ Phân phối: Smart Distribution.
+ Tiêu thụ: Smart Power Consumers.
2.1.4.2. Nhà thông minh
Nhà thông minh (Smart Home) là một ngôi nhà được trang bị hệ thống tự động
tiên tiến dành cho điều khiển đèn chiếu sáng, nhiệt độ, truyền thông đa phương tiện, an
ninh, rèm, cửa và nhiều tính năng khác nhằm mục đích làm cho cuộc sống ngày càng

32
tiện nghi, an toàn và góp phần sử dụng hợp lý các nguồn tài nguyên. Các thành phần
cơ bản của một ngôi nhà thông minh bao gồm:
+ Một máy tính điều khiển trung tâm (Home server).
+ Các thiết bị gia dụng đầu cuối.
+ Hệ thống các phần mềm điều khiển ngôi nhà.
+ Các thiết bị điều khiển.
Các chức năng chính của một ngôi nhà thông minh bao gồm:
+ Điều khiển hệ thống chiếu sáng.
+ Hệ thống an ninh, báo động, báo cháy.
+ Điều khiển điều hòa, máy lạnh.
+ Điều khiển thiết bị điện nói chung.
+ Hệ thống âm thanh đa vùng.
+ Camera, chuông hình.
+ Hệ thống bảo vệ nguồn điện.
+ Các tiện ích và ứng dụng khác.
2.1.4.3. Tự động hóa tòa nhà
Với chi phí năng lượng ngày càng tăng thì việc tiết kiệm năng lượng trở nên rất
quan trọng trong các tòa nhà. Tự động hóa tòa nhà (BAS - Building Automation
System) là một cách để tiết kiệm năng lượng và hỗ trợ một số chức năng quan trọng
như cảnh báo khẩn cấp các đám cháy trong các tòa nhà.
Các hệ thống tự động hóa tòa nhà cho phép giám sát và điều khiển các thiết bị
trong tòa nhà một cách hiệu quả. Các hệ thống này tự động điều chỉnh hệ thống thông
gió, sưởi ấm, hệ thống điều hóa không khí và ánh sáng trong tòa nhà nhằm đáp ứng
các điều kiện môi trường trong tòa nhà với chi phí tối thiểu. Hệ thống tự động hóa tòa
nhà cũng làm tăng sự an toàn đối với môi trường trong tòa nhà thông qua việc giám sát
và điều khiển các hệ thống an ninh, cứu hỏa trong tòa nhà.
Hệ thống tự động hóa tòa nhà được ứng dụng trong các trường đại học, các bệnh
viện, văn phòng chính phủ, các nhà máy, khách sạn. Các đối tượng thông minh trong
các tòa nhà thực hiện chức năng cảm nhận các thông số môi trường và tác động lại
thiết bị truyền động để thay đổi các thông số môi trường trong tòa nhà. Các mạng SON
được triển khai trong tòa nhà có thể là các thiết bị truyền thông vô tuyến hoặc cũng có
thể là các thiết bị truyền thông hữu tuyến theo chuẩn PLC (Power Line

33
Communication), Ethernet. Các hệ thống BAS sử dụng các kết nối hữu tuyến có thể
đạt hiệu suất sử dụng cao hơn nhưng thường có chi phí cao và gặp nhiều khó khăn
trong việc thiết lập và nâng cấp mạng. Trong 5 năm trở lại đây, các công nghệ truyền
thông không dây như 802.15.4, WiFi đã được nghiên cứu và triển khai trong hệ thống
tự động hóa tòa nhà.
2.1.4.4. Mạng các thành phố và đô thị thông minh
Các thành phố thông minh đòi hỏi một lượng lớn các thiết bị kết nối mạng IP
thông qua các liên kết cố định hoặc di động để hỗ trợ một số dịch vụ mới như:
Giao thông: Quản lý lưu lượng giao thông, điều khiển tốc độ, xác định điểm tắc
nghẽn, các hệ thống thông tin giao thông, theo dõi xe cộ, an toàn bay, quản lý bãi đỗ xe.
An toàn và an ninh công cộng: Các hệ thống kiểm soát truy cập, giám sát cảnh
báo, cảnh báo khẩn cấp, quản lý tình huống.
Dịch vụ công cộng: Theo dõi bệnh nhân từ xa, quản lý hồ sơ bệnh nhân, mạng
lưới giáo dục/học tập.
Nhận dạng: Các hệ thống thẻ thông minh.
Các tiện ích: Quản lý các thiết bị điện, nước; quản lý các nguồn phát điện, thiết bị
lưu trữ năng lượng điện; phát hiện sự rò rỉ khí gas, nước.
Môi trường: Thu thập dữ liệu và giám sát môi trường (tiếng ồn, nhiệt độ, độ ẩm, ô
nhiễm…).
2.1.4.5. Hệ thống giao thông thông minh
Hệ thống giao thông thông minh là những ứng dụng tiên tiến, nhằm mục đích để
cung cấp các dịch vụ mới liên quan đến phương thức vận tải và quản lý giao thông cho
phép người dùng có thông tin tốt hơn khi tham gia mạng lưới giao thông. Nói cách
khác hệ thống giao thông thông minh là hệ thống giao thông mà ở đó công nghệ thông
tin và truyền thông được áp dụng trong lĩnh vực vận tải đường bộ và các hình thức vận
tải khác bao gồm các cơ sở hạ tầng, phương tiện giao thông và người dùng. Hệ thống
giao thông thông minh bao gồm các chức năng cơ bản sau:
Các trang thiết bị đo lường, thu thập thông tin như: cảm biến, đồng hồ, camera,
điện thoại thông minh, các thiết bị sinh trắc học giúp hệ thống có thể đo lường, nhận
biết phương tiện giao thông và các hoạt động, hành vi giao thông (phạm lỗi, gây tai
nạn, tắc nghẽn,… ).

34
Trung tâm xử lý thông tin giao thông sẽ tự động phát hiện, xử lý thông tin được
thu thập, xác định mẫu và mối quan hệ giữa các mẫu thu được để đưa ra phương án xử
lý kịp thời, tương tác theo thời gian thực tới phương tiện, người tham gia giao thông.
Trung tâm giám sát, vận hành hệ thống. Hệ thống biển báo, thông báo thông tin
giao thông tới phương tiện và người tham gia giao thông. Hệ thống thanh toán được
tích hợp.
2.1.5. Phần cứng và phần mềm của một node mạng trong mô hình ứng dụng IoT
2.1.5.1. Phần cứng
Cấu trúc phần cứng cơ bản của một nút mạng trong mô hình ứng dụng IoT bao
gồm thiết bị truyền thông, một bộ vi xử lý, các cảm biến/thiết bị truyền động và nguồn
cung cấp. Các cảm biến/thiết bị truyền động cho phép các nút mạng có thể tương tác
được với thế giới vật lý. Bộ vi xử lý cho phép các nút mạng có thể chuyển đổi dữ liệu
nhận được từ các cảm biến… Thiết bị truyền thông cho phép các mạng có thể truyền
thông được với nhau. Thông qua thiết bị truyền thông, các nút mạng có thể gửi dữ liệu
cảm biến đọc được ra thế giới bên ngoài và nhận dữ liệu từ các nút mạng khác.

Hình 2.14. Kiến trúc phần cứng của hai đối tượng thông minh được trang bị các loại
thiết bị truyền thông khác nhau.
2.1.5.2. Phần mềm
Mọi hoạt động của một nút mạng được xác định bởi phần mềm chạy trên bộ vi
điều khiển. Các chương trình phần mềm thường được viết tương tự như các chương
trình phần mềm cho các máy tính. Các chương trình được viết bằng một ngôn ngữ lập
trình, chẳng hạn như C và được biên dịch với một trình biên dịch mã máy cho vi điều
khiển. Các mã máy được ghi vào ROM của bộ vi điều khiển khi các node cảm biến
được sản xuất. Khi các nút mạng được bật nguồn thì bộ vi điều khiển sẽ chạy các phần
mềm. Chức năng cơ bản của hệ điều hành bao gồm việc trừu tượng hóa tài nguyên cho
các thiết bị phần cứng khác nhau, quản lý ngắt và lập lịch các nhiệm vụ, điều khiển

35
đồng thời và hỗ trợ mạng. Dựa trên các dịch vụ được cung cấp bởi hệ điều hành, người
lập trình ứng dụng có thể thuận tiện sử dụng các giao diện lập trình ứng dụng mức cao
(APIs) độc lập với phần cứng lớp dưới.
2.2. Kiến trúc tham chiếu của IoT
2.2.1. Tổng quan
Kiến trúc IoT được đại diện cơ bản bởi 4 phần: Vạn vật (Things), trạm kết nối
(Gateways), hạ tầng mạng và điện toán đám mây (Network and Cloud) và các lớp tạo
và cung cấp dịch vụ (Services-creation and Solutions Layers).

Hình 2.15. Cấu phần của IoT


Vạn vật (Things): Ngày nay có hàng tỷ vật dụng đang hiện hữu trên thị trường gia
dụng và công nghệ, ở trong nhà hoặc trên tay của người dùng. Chẳng hạn như xe hơi,
thiết bị cảm biến, thiết bị đeo và điện thoại di động đang được kết nối trực tiếp thông
qua băng tầng mạng không dây và truy cập vào Internet. Giải pháp IoT giúp các thiết
bị thông minh được sàng lọc, kết nối và quản lý dữ liệu một cách cục bộ, còn các thiết
bị chưa thông minh thì có thể kết nối được thông qua các trạm kết nối .
Trạm kết nối (Gateways): Một rào cản chính khi triển khai IoT đó là gần 85% các
vật dụng đã không được thiết kế để có thể kết nối với Internet và không thể chia sẻ dữ
liệu với điện toán đám mây. Để khắc phục vấn đề này, các trạm kết nối sẽ đóng vai trò
là một trung gian trực tiếp, cho phép các vật dụng có sẵn này kết nối với điện toán đám
mây một cách bảo mật và dễ dàng quản lý.
Hạ tầng mạng và điện toán đám mây (Network and Cloud):

36
- Cơ sở hạ tầng kết nối: Internet là một hệ thống toàn cầu của nhiều mạng IP được
kết nối với nhau và liên kết với hệ thống máy tính. Cơ sở hạ tầng mạng này bao gồm
thiết bị định tuyến, trạm kết nối, thiết bị tổng hợp, thiếp bị lặp và nhiều thiết bị khác có
thể kiểm soát lưu lượng dữ liệu lưu thông và cũng được kết nối đến mạng lưới viễn
thông và cáp - được triển khai bởi các nhà cung cấp dịch vụ.
- Trung tâm dữ liệu/ hạ tầng điện toán đám mây: Các trung tâm dữ liệu và hạ tầng
điện toán đám mây bao gồm một hệ thống lớn các máy chủ, hệ thống lưu trữ và mạng
ảo hóa được kết nối.
Các lớp tạo và cung cấp dịch vụ (Services-Creation and Solutions Layers): Intel
đã kết hợp những phần mềm quản lý API hàng đầu (Application Progmraming
Interface) là Mashery* và Aepona* để giúp đưa các sản phẩm và giải pháp IoT ra thị
trường một cách chóng và tận dụng được hết giá trị của việc phân tích các dữ liệu từ
hệ thống và tài sản đang có sẵn.
2.2.2. Phân loại thiết bị IoT và phương thức kết nối Internet
- Những thiết bị IoT có kích thước nhỏ nhất dùng bộ điều khiển 8 bit nhúng, kiểu
cả hệ thống trên chip SoC (System on Chip) và thường không có hệ điều hành. Ví dụ
điển hình là nền tảng phần cứng nguồn mở Arduino 8 bit.
- Mức cao hơn là hệ thống dựa trên chip ARM và Arthero có kiến trúc 32 bit rút
gọn (limited). Những thiết bị này thường là các bộ router nhỏ dành cho gia đình và
những biến thể khác. Hệ thống thường chạy trên nền tảng nhúng Linux rút gọn hoặc hệ
điều hành nhúng dành riêng. Một số trường hợp không sử dụng hệ điều hành như
Arduino Zero hoặc Arduino Yun.
- Hệ thống IOT lớn nhất là loại sử dụng nền tảng 32 hoặc 64 bit đầy đủ. Những hệ
thống như Raspberry Pi hay BeagleBone có thể chạy hệ điều hành Linux đầy đủ hoặc
Android. Nhiều trường hợp chính là điện thoại di động hoặc dựa trên công nghệ điện
thoại di động. Những thiết bị này có thể đóng vai trò gateway hoặc cầu (bridge) cho
các thiết bị nhỏ hơn.
Có một số giải pháp kết nối giữa thiết bị với Internet hoặc gateway:
- Kết nối Ethernet hoặc Wi-Fi trực tiếp qua giao thức TCP hoặc UDP.
- Bluetooth công suất thấp.
- Kết nối trường gần (NFC).
- Zigbee hoặc các mạng vô tuyến khác.

37
- SRF và kết nối vô tuyến điểm-điểm.
- UART hoặc kênh nối tiếp (serial lines).
- SPI hoặc kênh I2C (wired buses).

Hình 2.16. Hai mô hình kết nối của thiết bị IoT


2.2.3. Các yêu cầu của kiến trúc tham chiếu cho IoT
Yêu cầu chung là kiến trúc tham chiếu cho IoT phải trung lập với nhà sản xuất,
không phụ thuộc vào công nghệ cụ thể. Có những yêu cầu khá đặc thù cho thiết bị IoT
và môi trường hỗ trợ nhưng cũng có những yêu cầu xuất phát từ quá trình sản xuất và
sử dụng. Có thể tóm tắt các yêu cầu của kiến trúc tham chiếu cho IoT trong 5 nhóm:
- Kết nối và giao tiếp.
- Quản lý thiết bị
- Thu thập, phân tích và khởi động dữ liệu.
- Tính khả mở (scalability).
- An toàn bảo mật
2.2.4. Mô hình tham chiếu của IoT
Mô hình tham chiếu IoT bao gồm 5 lớp xếp chồng.Mỗi lớp có một chức năng
riêng, có thể minh họa bằng những công nghệ cụ thể. Có 2 lớp theo chiều dọc là quản
lý thiết bị và quản lý định danh & truy nhập.

38
Hình 2.17. Mô hình tham chiếu của IoT
2.2.4.1. Lớp thiết bị (Devices)
Các thiết bị IoT phải có giao thức truyền thông trực tiếp (Arduino, Raspberry Pi,
Intel Galileo qua Ethernet hoặc Wi-Fi) hoặc gián tiếp kết nối được với Internet
(ZigBee, Bluetooth hoặc Bluetooth công suất thấp qua điện thoại di động,...).
Mỗi thiết bị cần có định danh thuộc một trong các loại: định danh duy nhất
(UUID) ghi sẵn trong phần cứng (thường là một phần của SoC hoặc chip thứ cấp),
UUID gửi qua hệ thống vô tuyến phụ (ví dụ: định danh Bluetooth, địa chỉ Wi-Fi
MAC), token OAuth2 Refresh/Bearer (có thể là bổ sung cho các loại khác), định danh
lưu trong bộ nhớ chỉ đọc như EEPROM. Các chuyên gia khuyến nghị, mỗi thiết bị IoT
nên có một UUID (tốt nhất lưu cố định trong phần cứng) và một token OAuth2
Refresh/Bearer lưu trong EEPROM.OAuth2 token có mục đích tạo ra một token định
danh tách biệt với số định danh cố định ghi trong mỗi thiết bị. Bearer token được dùng
ban đầu để gửi đến bất kỳ server hay dịch vụ nào cần định danh. Bearer token có thời
gian sống ngắn hơn Refresh token. Nếu Bearer token hết hạn, Refresh token được gửi
đến lớp định danh để tạo ra bản cập nhật của Bearer token.
2.2.4.2. Lớp truyền thông (Communications)
Lớp truyền thông hỗ trợ kết nối các thiết bị. Nhiều giao thức có thể sử dụng trong
lớp này như HTTP/HTTPS, MQTT 3.1/3.1.1, CoAP (Constrained Application
Protocol). Trong đó, HTTP là giao thức lâu đời và phổ biến nhất nên có nhiều thư viện
hỗ trợ. Vì đó là giao thức dựa trên ký tự đơn giản nên nhiều thiết bị nhỏ như bộ điều
39
khiển 8 bit đều có thể hỗ trợ HTTP. Các thiết bị 32 bit lớn hơn có thể sử dụng các thư
viện HTTP client đầy đủ.
Có một số giao thức được tối ưu riêng cho IoT, trong đó nổi bật nhất là 2 giao
thức MQTT và CoAP.MQTT được phát minh vào năm 1999 để giải quyết các vấn đề
của hệ thống nhúng và SCADA. Giao thức MQTT có phần mào đầu nhỏ (chỉ 2
byte/message), chạy được trên nền TCP và có khả năng chịu được môi trường mạng
thường bị gián đoạn và suy hao cao. Ủy ban kỹ thuật của tổ chức tiêu chuẩn OASIS
đang xem xét chuẩn hóa phiên bản MQTT hiện nay. Giao thức CoAP do tổ chức tiêu
chuẩn IETF xem xét phát triển trên cơ sở HTTP nhưng dựa trên mã nhị phân chứ
không phải ký tự nên nhỏ gọn hơn, có thể chạy trên nền UDP.
2.2.4.3. Lớp hợp nhất/Bus (Aggregation/ Bus)
Đây là lớp quan trọng để hợp nhất và chuyển đổi các thông điệp (message broker
hay middleware) truyền thông với 3 chức năng sau:
- Hỗ trợ máy chủ HTTP và/hoặc chức năng chuyển đổi MQTT để giao tiếp với
thiết bị.
- Hợp nhất nội dung truyền từ các thiết bị khác nhau và định tuyến truyền thông
tới một thiết bị cụ thể (có thể qua gateway).
- Bắc cầu và chuyển đổi giữa 2 giao thức khác nhau, ví dụ chuyển đổi API dựa
trên HTTP ở lớp trên vào thông điệp MQTT đến thiết bị.
Lớp Bus cũng có thể cung cấp một số tính năng tương quan (correlation) và ánh
xạ đơn giản từ các mô hình tương quan khác nhau (nghĩa là ánh xạ số định danh thiết
bị sang số định danh của người sở hữu thiết bị và ngược lại).
Cuối cùng, lớp hợp nhất/Bus cần thực hiện 2 nhiệm vụ an toàn bảo mật là máy
chủ tài nguyên OAuth2 (thẩm định Bearer token và các truy nhập tài nguyên liên
quan) và điểm tăng cường chính sách (PEP) đối với truy nhập dựa trên chính sách.
Trong mô hình, lớp Bus yêu cầu lớp quản lý truy nhập và định danh thẩm định các yêu
cầu truy nhập. Lớp quản lý truy nhập và định danh đóng vai trò như điểm quyết định
chính sách (PDP) trong quá trình này. Sau đó, lớp Bus thực hiện theo kết quả do PDP
mang đến, nghĩa là cho phép hoặc không cho phép truy nhập tài nguyên.
2.2.4.4. Lớp xử lý sự kiện và phân tích (Event Processing and Analytics)
Lớp này xử lý các sự kiện từ lớp Bus chuyển lên.Yêu cầu chủ yếu ở đây là khả
năng lưu trữ dữ liệu vào cơ sở dữ liệu.Mô hình truyền thống sẽ viết một ứng dụng phía

40
máy chủ (ví dụ, JAX-RS). Tuy nhiên, có một số cách tiếp cận khác linh hoạt hơn.Thứ
nhất là sử dụng các nền tảng phân tích dữ liệu lớn. Đó là nền tảng dựa trên cloud khả
mở hỗ trợ các công nghệ như Apache Hadoop để cung cấp những phân tích map-
reduce (quy trình xử lý dữ liệu siêu lớn) đối với tập hợp dữ liệu đến từ các thiết bị.
Cách tiếp cận thứ hai là hỗ trợ phương thức xử lý sự kiện phức tạp (Complex
Processing Event) để thực hiện các hoạt động gần như theo thời gian thực và ra quyết
định hành động dựa theo kết quả phân tích dữ liệu từ các thiết bị chuyển đến.
2.2.4.5. Lớp truyền thông ngoài (External Communication)
Lớp nào tạo ra giao diện giúp quản lý các thiết bị IoT như: web/portal, dashboard
(bảng hiển thị tổng hợp) hoặc hệ thống quản lý API. Với web/portal, kiến trúc cần hỗ
trợ các công nghệ web phía máy chủ như Java Servlets/JSP, PHP, Python, Ruby ...
Web server dựa trên Java phổ biến nhất là Apache Tomcat. Dashboard là hệ thống tái
sử dụng tập trung vào việc trình bày đồ thị mô tả dữ liệu đến từ các thiết bị và lớp xử
lý sự kiện. Lớp quản lý API có 3 chức năng. Thứ nhất là cung cấp portal tập trung vào
hỗ trợ lập trình viên tác nghiệp (chứ không phải là người sử dụng như portal thông
thường) và quản lý các phiên bản của API được xuất bản. Thứ hai là đóng vai trò
gateway quản lý truy nhập vào các API, kiểm tra việc điều khiển truy nhập (đối với
yêu cầu từ bên ngoài), điều tiết sử dụng dựa trên chính sách, định tuyến và cân bằng
tải. Cuối cùng là chức năng gateway đẩy dữ liệu vào lớp phân tích để lưu trữ và xử lý,
giúp hiểu được các API đã được sử dụng như thế nào.
2.2.4.6. Lớp quản lý thiết bị (Device Management)
Trong lớp quản lý thiết bị, hệ thống phía máy chủ DM (Device Manager) giao tiếp
với các thiết bị thông qua các giao thức khác nhau và điều khiển phần mềm của từng
thiết bị hoặc một nhóm thiết bị (có thể khóa hoặc xóa dữ liệu trên thiết bị khi cần),
quản lý định danh các thiết bị và ánh xạ vào chủ nhân các thiết bị đó. DM phải phối
hợp với lớp quản lý định danh và truy nhập để quản lý việc điều khiển truy nhập vào
thiết bị (những người có quyền truy nhập vào thiết bị ngoài chủ nhân, quyền điều
khiển của chủ nhân thiết bị so với người quản trị...).
2.2.4.7. Lớp quản lý định danh và truy nhập (Identity and Access Management)
Lớp này cần cung cấp các dịch vụ: Phát hành, thẩm định Oauth2 token; Các dịch
vụ định danh khác, gồm SAML2 SSO và OpenID Connect; XACML PDP; Danh bạ
cho người dùng (ví dụ: LDAP); Quản lý chính sách điều khiển truy nhập (PCP).

41
2.3. Giới thiệu về điện toán đám mây
2.3.1. Giới thiệu chung
Máy vi tính ngày nay đã trở thành một phần tất yếu của cuộc sống. Chúng ta cần
máy tính ở khắp mọi nơi, có thể là cho công việc, nghiên cứu hoặc trong bất kỳ lĩnh
vực nào. Khi nhu cầu sử dụng máy tính trong cuộc sống hàng ngày của chúng ta tăng
lên, các nguồn tài nguyên máy tính cũng cần tăng lên. Đối với các công ty lớn như
Google và Microsoft, việc khai thác các nguồn tài nguyên như vậy khi họ cần không
phải là một vấn đề lớn. Nhưng khi nói đến doanh nghiệp nhỏ hơn, các nguồn tài
nguyên lớn như vậy trở thành một yếu tố rất lớn tác động đến kinh doanh. Với những
vấn đề lớn về cơ sở hạ tầng như máy hỏng, treo ổ cứng, lỗi phần mềm, v.v..Đó thật sự
là những vấn đề rất đau đầu cho các doanh nghiệp. Điện toán đám mây sẽ cung cấp
một giải pháp cho tình trạng này. Điện toán đám mây là một cuộc dịch chuyên gia
cách mạng trong đó việc tính toán sẽ được chuyên gia từ máy tính cá nhân hay các
máy chủ ứng dụng doanh nghiệp đến một đám mây máy tính. Đám mây là một hình
tượng để chỉ đến tập các máy chủ ảo hóa có thể cung cấp các nguồn tài nguyên của
máy tính khác nhau cho khách hàng của họ. Người sử dụng của hệ thống này chỉ cần
được quan tâm tới các dịch vụ máy tính đang được yêu cầu.Cái chi tiết bên dưới hệ
thống của nó như thế nào thì được ẩn khỏi người dùng.Các dữ liệu và các dịch vụ cung
cấp nằm trong các trung tâm dữ liệu của đám mây có khả năng mở rộng lớn và có thể
được truy cập ở bất kỳ đâu, từ bất kỳ thiết bị được kết nối trên thế giới.
Điện toán đám mây (cloud computing ) hay còn gọi là điện toán máy chủ ảo là
một mô hình điện toán có khả năng co giãn (scalable) linh động và các tài nguyên
thường được ảo hóa được cung cấp như một dịch vụ trên mạng Internet. Điện toán
đám mây là một kiểu tính toán mà ở đó các công việc công nghệ thông tin được cung
cấp như một dịch vụ trên internet đến nhiều khách hàng bên ngoài và khách hàng được
tính tiền theo sự sử dụng dịch vụ của họ. Nhiều nhà cung cấp điện toán đám mây đã
xuất hiện và có một sự tăng trưởng đáng kể trong việc sử dụng dịch vụ này. Google,
Microsoft, Yahoo, IBM và Amazon đã bắt đầu cung cấp dịch vụ điện toán đám mây.
Trong đó Amazon là nhà tiên phong trong lĩnh vực này. Các công ty nhỏ hơn như
SmugMug, một trang web lưu trữ hình ảnh trực tuyến, có sử dụng dịch vụ điện toán
đám mây để lưu trữ tất cả các dữ liệu và thực hiện một số dịch vụ.

42
Hình 2.18. Mô hình của điện toán đám mây
Theo Foster (2008): Một mô hình điện toán phân tán có tính co giãn lớn mà hướng
theo co giãn về mặt kinh tế, là nơi chứa các sức mạnh tính toán, kho lưu trữ, các nền
tảng (platform) và các dịch vụ được trực quan, ảo hóa và co giãn linh động, sẽ được
phân phối theo nhu cầu cho các khách hàng bên ngoài thông qua Internet. Điện toán
đám mây là một dạng thức điện toán cung cấp các tài nguyên ảo hóa và có quy mô
dưới dạng dịch vụ qua mạng Internet. Người dùng không cần tới những kiến thức
chuyên gia môn để quản lý hạ tầng công nghệ này bởi phần việc đó là dành cho các
nhà cung cấp dịch vụ.
Theo Synmatec: Điện toán đám mây là một mạng kết nối của các tài nguyên máy
tính sẵn có được cấp phát động theo cơ chế ảo hóa và có khả năng co dãn, tạo điều
kiện cho người dùng có thể sử dụng dịch vụ theo nhu cầu dùng đến đâu trả tiền đến đó.
Nói một cách đơn giản nhất “ứng dụng điện toán đám mây” chính là: Một mô hình
điện toán mới. Các tài nguyên về hạ tầng (phần cứng, thiết bị lưu trữ, phần mềm hệ
thống) và các ứng dụng được cung cấp theo mô hình X-as-a Services dựa theo mô hình
trả tiền theo mức độ sử dụng.
2.3.2. Các đặc điểm
2.3.2.1. Tự sửa chữa
Bất kỳ ứng dụng hoặc dịch vụ nào đang chạy trong một môi trường điện toán đám
mây có một tính chất tự sửa chữa. Trong trường hợp ứng dụng thất bại, luôn luôn có
một dự phòng tức thời của ứng dụng sẵn sàng để cho công việc không bị gián đoạn.
2.3.2.2. Nhiều người sử dụng
Với điện toán đám mây, bất kỳ ứng dụng nào cũng hỗ trợ đa người dùng. Đó là
khái niệm dùng để chỉ nhiều người sử dụng đám mây trong cùng thời gian. Hệ thống

43
cho phép một số khách hàng chia sẻ cơ sở hạ tầng được phân bố cho họ mà không ai
trong họ nhận biết về sự chia sẻ này. Điều này được thực hiện bởi việc ảo hóa các máy
chủ trong một dải các máy tính và sau đó cấp phát các máy chủ đến nhiều người sử
dụng. Điều này được thực hiện theo cách mà trong đó sự riêng tư của người sử dụng
và bảo mật của dữ liệu của họ không bị tổn hại.
2.3.2.3. Khả năng mở rộng tuyến tính
Dịch vụ điện toán đám mây có khả năng mở rộng tuyến tính. Hệ thống có khả
năng phân chia các luồng công việc thành phần nhỏ và phục vụ nó qua cơ sở hạ tầng.
Một ý tưởng chính xác của khả năng mở rộng tuyến tính có thể được lấy từ thực tế là
nếu một máy chủ có thể xử lý 1000 giao dịch trong một giây, thì hai máy chủ có thể xử
lý 2.000 giao dịch trong một giây.
2.3.2.4. Hưởng dịch vụ
Hệ thống Điện toán đám mây là tất cả các dịch vụ theo định hướng. Những dịch
vụ như vậy được tạo ra từ những dịch vụ rời rạc khác. Rất nhiều dịch vụ như vậy là sự
kết hợp của nhiều dịch vụ độc lập khác với nhau để tạo dịch vụ này. Điều này cho
phép việc tái sử dụng các dịch vụ khác nhau sẵn có và đang được tạo ra. Bằng việc sử
dụng các dịch vụ đã được tạo ra trước đó, những dịch vụ khác có thế được tạo ra.
2.3.2.5. Điều khiển SLA (Service level agreement)
Thông thường các doanh nghiệp có thỏa thuận về số lượng dịch vụ. Khả năng mở
rộng và các vấn đề có sẵn có thể làm cho các thỏa thuận này bị phá vỡ. Tuy nhiên, các
dịch vụ điện toán đám mây là hướng SLA, như việc khi hệ thống có kinh nghiệm đạt
đỉnh của tải, nó sẽ tự động điều chỉnh chính nó để tuẩn thủ các thỏa thuận ở cấp độ
dịch vụ. Các dịch vụ sẽ tạo ra thêm những thực thể của ứng dụng trên nhiều server để
cho việc tải có thể dễ dàng quản lý.
2.3.2.6. Khả năng ảo hóa
Các ứng dụng trong điện toán đám mây hoàn toàn tách rời khỏi phần cứng nằm bên
dưới.Môi trường điện toán đám mây là một môi trường ảo hóa đầy đủ.
2.3.2.7. Linh hoạt
Một tính năng khác của các dịch vụ điện toán đám mây là chúng linh hoạt.
Chúng có thể được dùng để phục vụ rất nhiều loại công việc có khối lượng khác nhau
từ tải nhỏ của một ứng dụng nhỏ cho đến tải rất nặng của một ứng dụng thương mại.

44
2.4. Các công nghệ truyền thông trong IoT
2.4.1. Radio Frequency Identification (RFID)
Radio Frequency Identification (RFID) là công nghệ nhận dạng đối tượng bằng
sóng vô tuyến. Hai thiết bị này hoạt động thu phát sóng điện từ cùng tần số với nhau.
Các tần số thường được sử dụng trong hệ thống RFID là 125Khz hoặc 900Mhz.
Một thiết bị hay một hệ thống RFID được cấu tạo bởi hai thành phần chính là thiết
bị đọc ( reader) và thiết bị phát mã RFID có gắn chip hay còn gọi là tag. Thiết bị đọc
được gắn antenna để thu-phát sóng điện từ, thiết bị phát mã RFID tag được gắn với vật
cần nhận dạng, mỗi thiết bi RFID tag chứa một mã số nhất định và không trùng lặp.

Hình 2.19. Cơ chế hoạt động của thẻ RFID


Nguyên lý hoạt động: Thiết bị RFID reader phát ra sóng điện từ ở một tần số nhất
định, khi thiết bị RFID tag trong vùng hoạt động sẽ cảm nhận được sóng điện từ này
và thu nhận năng lượng từ đó phát lại cho thiết bị RFID Reader biết mã số của mình.
Từ đó thiết bị RFID reader nhận biết được tag nào đang trong vùng hoạt động.

Hình 2.20. Một loại thẻ chip RFID phổ biến


Thẻ chip (tag) RFID chứ rất nhiều mã nhận dạng khác nhau, thông thường là 32bit
tương ứng với hơn 4 tỷ mã số khác nhau. Ngoài ra khi xuất xưởng mỗi thẻ chip RFID
được gán một mã số khác nhau . Do vậy khi một vật được gắn chip RFID thì khả năng
nhận dạng nhầm vật đó với 1 thẻ chip RFID khác là rất thấp, xác suất là 1 phần 4 tỷ.

45
Với ưu điểm về mặt công nghệ như vậy nên sự bảo mật và độ an toàn của các thiết bị
ứng công nghệ RFID là rất cao.
2.4.2. Bluetooth
Bluetooth là một đặc tả công nghiệp cho truyền thông không dây tầm gần giữa các
thiết bị điện tử. Công nghệ này hỗ trợ việc truyền dữ liệu qua các khoảng cách ngắn
giữa các thiết bị di động và cố định, tạo nên các mạng cá nhân không dây (Wireless
Personal Area Network-PANs).
Bluetooth có thể đạt được tốc độ truyền dữ liệu 1Mb/s. Bluetooth hỗ trợ tốc độ
truyền tải dữ liệu lên tới 720 Kbps trong phạm vi 10 m–100 m. Khác với kết nối hồng
ngoại (IrDA), kết nối Bluetooth là vô hướng và sử dụng giải tần 2,4 GHz.
Thuật ngữ "Bluetooth" được đặt theo tên của một vị vua Đan Mạch, vua Harald
Bluetooth, người Viking nổi tiếng về khả năng giúp mọi người có thể giao tiếp, thương
lượng với nhau. Vào thế kỷ thứ 10, chính vị vua này đã mang đạo Tin Lành vào Đan
Mạch trong khi Ericsson là công ty đầu tiên phát triển đặc tả cho công nghệ hiện đang
ngày càng thông dụng trong cuộc sống hiện đại.
Bluetooth được phát triển đầu tiên bởi Ericsson (hiện nay là Sony Ericsson và
Ericsson Mobile Platforms), và sau đó được chuẩn hoá bởi Bluetooth Special Interest
Group (SIG).Chuẩn được phát hành vào ngày 20 tháng 5 năm 1999. Ngày nay được
công nhận bởi hơn 1800 công ty trên toàn thế giới. Được thành lập đầu tiên bởi Sony
Ericsson, IBM, Intel, Toshiba và Nokia, sau đó cùng có sự tham gia của nhiều công ty
khác với tư cách cộng tác hay hỗ trợ. Bluetooth có chuẩn là IEEE 802.15.1.

Hình 2.21. Hình ảnh module Bluetooth HC05

46
Lịch sử phát triển của Bluetooth:
Bluetooth 1.0: Là phiên bản đầu tiên của chuẩn kết nối Bluetooth được đưa vào
sử dụng với tốc độ truyền tải dữ liệu là 1Mbs, tuy nhiên thực tế tốc độ của phiên bản
này chỉ đạt được mức 720kbs.
Bluetooth 2.0 + ERD: Phiên bản nâng cấp sau Bluetooth 1.0 được nâng cấp tốc
độ truyền tải lên 2.1 Mbs cùng với chế độ truyền tải mới ERD (enhanced data rate).
Phiên bản 2.1 được nâng cấp về tốc độ truyền tải nhưng lại hạn chế trên thiết bị sử
dụng do ERD chỉ là chế độ tùy chọn, một số nhà sản xuất đã không đưa chế độ này
vào sản phẩm của mình để giảm chi phí sản xuất.
Bluetooth 2.1+ ERD: Được nâng cấp từ Bluetooth 2.0 vào năm 2007 với thay đổi
quan trọng như hiệu năng cao hơn, giảm điện năng tiêu thụ. Phiên bản này được sử
dụng trên các thiết bị như điện thoại di động, laptop, tai nghe ….. Tuy nhiên,
Bluetooth 2.1 vẫn chưa cho người dùng truyền tải các tập tin có dung lượng lớn.
Bluetooth 3.0 + HS: Năm 2009 buetooth 3.0 ra đời với thay đổi lớn về tốc độ
truyền tải, đạt 24Mbps ở phiên bản này các thiết bị có thể tương tác dễ dàng với nhau
hơn, có thể tự dò tìm các thiết bị ở gần.
Bluetooth 4.0: Là sự kết hợp của các đời Bluetooth trước đó với nhau. Bluetooth
4.0 đạt tốc độ truyền tải lên đến 25Mbps, dễ dàng ghép đôi các thiết bị, hiệu năng tiêu
thụ thấp. Đây là chuẩn Bluetooth được sử dụng trên hầu hết các thiết bị hiện nay.
Bluetooth 4.1: Là phiên bản mới nhất ra đời đầu năm 2014 với nhiều cải tiến vượt
bậc so với Bluetooth 4.0 như: Khả năng sống chung: Bluetooth 4.1 cải thiện tình trạng
chồng chéo tín hiệu của Bluetooth 4.0 và mạng 4G. Bluetooth 4.1 sẽ tự động nhận diện
và điều chỉnh băng tần để thực hiện tối đa sức mạnh của mình. Khả năng kết nối thật
sự thông minh (Bluetooth 4.1 cho phép các nhà sản xuất có thể xác định khoảng thời
gian kết nối trở lại sau thời gian chờ trên các thiết bị của họ giúp quản lý năng lượng
của nó được tốt hơn, và các thiết bị kết hợp sẽ điều chỉnh năng lượng phù hợp). Khả
năng truyền dữ liệu (Các thiết bị Bluetooth 4.1 có thể giao tiếp một cách độc lập mà
không cần phải phụ thuộc vào trung tâm điều khiển).
2.4.3. Zigbee
ZigBee là một giao thức mạng không dây được dùng để kết nối các thiết bị với
nhau. Công nghệ ZigBee được xây dựng dựa trên tiêu chuẩn 802.15.4 của tổ chức
IEEE (Institute of Electrical and Electronics Engineers). Tiêu chuẩn 802.15.4 này sử

47
dụng tín hiệu radio có tần sóng ngắn, và cấu trúc của 802.15.4 có 2 tầng là tầng vật lý
và tầng MAC (medicum Access Control). Công nghệ ZigBee vì thế cũng dùng sóng
radio và có 2 tầng. Hơn thế nữa ZigBee còn thiết lập các tầng khác nhờ thế mà các
thiết bị của các nhà sản xuất dù khác nhau nhưng cùng tiêu chuẩn có thể kết nối với
nhau và vận hành trong vùng bảo mật của hệ thống. Nhờ chức năng điều khiển từ xa
không dây, truyền dữ liệu ổn định, tiêu thụ năng lượng cực thấp, công nghệ mở đã
giúp công nghệ ZigBee trở nên hấp dẫn sử dụng cho các ứng dụng, đặc biệt là ứng
dụng trong nhà thông minh hiện nay.
Các tiêu chuẩn ZigBee được bảo trợ bởi 1 nhóm liên minh ZigBee. Liên minh này
có hơn 150 thành viên, một số trong số đó là những bảo trợ chính và có ảnh hưởng
quyết định đến tiêu chuẩn của ZigBee, bao gồm Ember, Honeywell, Invensys,
Mitsubishi, Motorola, Philips, và Samsung. Liên minh ZigBee cân nhắc đến nhu cầu
của người sử dụng, nhà sản xuất và các nhà phát triển hệ thống để nâng cao tiêu chuẩn.
Lịch sử phát triển của Zigbee:
ZigBee 2004: Đây là phiên bản đầu tiên của ZigBee – được gọi là ZigBee 1.0, ra
đời vào tháng 6/2005.
ZigBee 2006: Phiên bản này giới thiệu khái niệm chùm, được ra đời vào tháng
9/2006.
ZigBee 2007: Phiên bản tiếp theo ra đời tháng 10/2007 và có 2 loại hình dạng
khác nhau.
ZigBee PRO: Phiên bản này là 1 phiên bản của năm 2007 nhưng được nâng cấp
lên để cài đặt nhanh hơn và tăng tính bảo mật cho hệ thống.
RF4CE: Là dạng tần sóng vô tuyến cho các thiết bị điện tử có ứng dụng âm thanh
nghe nhìn, ra đời năm 2009.
ZigBee có kiến trúc nhiều tầng như chuẩn 802.15.4, là có tầng vật lý và tầng
MAC, hoạt động ở 1 trong 3 dải tầng sóng:
 Dải 915MHz cho khu vực Bắc Mỹ.
 Dải 868 MHzcho châu Âu, Nhật
 Và dải 2.4GHz cho các nước khác.
Ở dải 2.4GHz, có đến 16 kênh tín hiệu khác nhau và tốc độ đường truyền dữ liệu
có thể đạt tới 250kbps. Trong khi đó dải 868 MHz chỉ có 1 kênh tín hiệu và tốc độ

48
đường truyền dữ liệu có thể đạt tới 20kbps. Như thế các tiêu chuẩn sẽ hoạt động trên
khắp toàn cầu , mặc dù ở các dải tầng sóng khác nhau.
Công nghệ module cũng thay đổi theo từng dải sóng sử dụng, Tất cả đều dùng
công nghệ trải phổ rộng (Direct sequence spread spectrum – DSSS). Tuy nhiên module
của dải 868 và 915MHz dùng kỹ thuật điều chế pha nhị phân, còn ở dải 2.4GHz thì lại
dùng kỹ thuật điều chế tín hiệu số có dịch pha (Offset quadrature phase shift keying –
O-QPSK). Thực tế cho thấy hệ thống có thể hoạt động trong môi trường có dữ liệu dày
đặc, hay trong vùng mà có nhiều đường truyền khác làm nhiễu thì hệ thống vẫn đảm
bảo hoạt động liên tục đó là nhờ sự đánh giá chất lượng, sự phát hiện năng lượng tiếp
nhận và đánh giá kênh rõ ràng. Công nghệ đa truy cập nhận biết sóng mang CSMA
(Carrier Sense Multiple Access) được sử dụng để xác định thời điểm truyền, và tránh
được những va chạm trong đường truyền.
Tín hiệu công nghệ ZigBee có thể truyền xa đến 75m tính từ trạm phát, và khoảng
cách có thể xa hơn rất nhiều nếu được tiếp tục phát từ nút liên kết tiếp theo trong cùng
hệ thống. Các dữ liệu được truyền theo gói, gói tối đa là 128bytes cho phép tải xuống
tối đa 104 bytes. Tiêu chuẩn này hỗ trợ địa chỉ 64bit cũng như địa chỉ ngắn 16bit. Loại
địa chỉ 64bit chỉ xác đinh được mỗi thiết bị có cùng 1 địa chỉ IP duy nhất.Khi mạng
được thiết lập, những địa chỉ ngắn có thể được sử dụng và cho phép hơn 65000 nút
được liên kết.
ZigBee có 3 dạng hình mạng được hỗ trợ bởi ZigBee: dạng hình sao, hình lưới, và
hình cây. Mỗi dạng hình đều có những ưu điểm riêng và được ứng dụng trong các
trường hợp khác nhau.

Hình 2.22. Mô hình mạng Zigbee


Mạng hình lưới có tính tin cậy cao, mỗi nút trong mạng lưới đều có khả năng kết
nối với nút khác, nó cho phép truyền thông liên tục giữa các điểm nút với nhau và bền
49
vững. Nếu có sự tác động cản trở, hệ thống có khả năng tự xác định lại cấu hình bằng
cách nhảy từ nút này sang nút khác. Mạng hình này chính là 1 dạng đặc biệt của mạng
hình lưới, dạng mạng này có khả năng phủ sóng và mở rộng cao.
Cấu trúc của Zigbee: Ngoài 2 tầng vật lý và tầng MAC xác định bởi tiêu chuẩn
802.15.4 ở, tiêu chuẩn ZigBee còn có thêm các tầng trên của hệ thống bao gồm: tầng
mạng, tầng hỗ trợ ứng dụng, tầng đối tượng thiết bị và các đối tượng ứng dụng.

Hình 2.23. Cấu trúc của Zigbee


Tầng vật lý: có trách nhiệm điều biến, hoàn điều biến gói tín hiệu vào không gian
đồng thời giữ cho việc truyền tín hiệu được mạnh trong môi trường nhiễu.
Tầng MAC: sử dụng như công nghệ đa truy cập nhận biết sóng mang CSMA để
xác định hình dạng đường truyền để tránh va chạm và xác định hình dạng mạng, giúp
hệ thống mạnh và vững chắc.
Tầng mạng – NWK là 1 tầng phức tạp của ZigBee, giúp tìm, kết nối mạng và mở
rộng hình dạng từ chuẩn 802.15.4 lên dạng lưới. Tầng này xác định đường truyền lên
ZigBee, xác định địa chỉ ZigBee thay vì địa chỉ tầng MAC bên dưới.
Tầng hỗ trợ ứng dụng – APS là tầng kết nối với tầng mạng và là nơi cài đặt những
ứng dụng cần cho ZigBee, giúp lọc bớt các gói dữ liệu trùng lắp từ tầng mạng
Tầng đối tượng thiết bị – ZDO có trách nhiệm quản lý các thiết bị, định hình tầng
hỗ trợ ứng dụng và tầng mạng, cho phép thiết bị tìm kiếm, quản lý các yêu cầu và xác
định trạng thái của thiết bị.

50
Tầng các đối tượng ứng dụng người dùng – APO: là tầng mà ở đây người dùng
tiếp xúc với thiết bị, tầng này cho phép người dùng có thể tuỳ biến thêm ứng dụng vào
hệ thống.
Hệ thống ZigBee được tối ưu hóa để chắc chắn rằng sự tiêu thụ năng lượng rất
thấp.Chỉ có các nút có điều khiển cảm biến trung tâm có sử dụng nguồn điện còn lại
các nút khác hầu như không cần năng lương (có thể vận hành ở chế độ sleep mode).
Điều này giúp cho pin dùng trong các thiết bị sử dụng công nghệ ZigBee có tuổi thọ
rất cao tính đến hàng năm mà không cần thay thế.
Mặc dù ngày càng có nhiều sự lựa chon cho mạng không dây, nhưng ZigBee vẫn
là sự lựa chọn của các nhà sản xuất thiết bị hàng đầu bởi tính ứng dụng trong điều
khiển từ xa, cảm biến và các hệ thống thi hành (Relay, van đóng mở…), bởi tính ổn
định cao, bảo mật, khả năng mở rộng, giá thành rẻ, tiêu thụ điện năng thấp, hệ thống
mở cho nhiều nhà sản xuất, và ngày càng được cải tiến tốt hơn.
2.4.4. Wifi
Wi-Fi viết tắt từ Wireless Fidelity hay mạng 802.11 là hệ thống mạng không dây
sử dụng sóng vô tuyến, giống như điện thoại di động, truyền hình và radio. Hệ thống
này đã hoạt động ở một số sân bay, quán cafe, thư viện hoặc khách sạn. Hệ thống cho
phép truy cập Internet tại những khu vực có sóng của hệ thống này, hoàn toàn không
cần đến cáp nối. Ngoài các điểm kết nối công cộng (hotspots), WiFi có thể được thiết
lập ngay tại nhà riêng.
Tên gọi 802.11 bắt nguồn từ viện IEEE (Institute of Electrical and Electronics
Engineers).Viện này tạo ra nhiều chuẩn cho nhiều giao thức kỹ thuật khác nhau, và nó
sử dụng một hệ thống số nhằm phân loại chúng; 4 chuẩn thông dụng của WiFi hiện
nay là 802.11a/b/g/n.
Truyền thông qua mạng không dây là truyền thông vô tuyến hai chiều. Cụ thể:
Thiết bị adapter không dây (hay bộ chuyển tín hiệu không dây) của máy tính chuyển
đổi dữ liệu sang tín hiệu vô tuyến và phát những tín hiệu này đi bằng một ăng-ten.
Thiết bị router không dây nhận những tín hiệu này và giải mã chúng. Nó gởi thông tin
tới Internet thông qua kết nối hữu tuyến Ethernet. Quy trình này vẫn hoạt động với
chiều ngược lại, router nhận thông tin từ Internet, chuyển chúng thành tín hiệu vô
tuyến và gởi đến adapter không dây của máy tính.

51
Hình 2.24. Mô hình thu phát song Wifi
Các sóng vô tuyến sử dụng cho WiFi gần giống với các sóng vô tuyến sử dụng
cho thiết bị cầm tay, điện thoại di động và các thiết bị khác. Nó có thể chuyển và nhận
sóng vô tuyến, chuyển đổi các mã nhị phân 1 và 0 sang sóng vô tuyến và ngược lại.
Tuy nhiên, sóng WiFi có một số khác biệt so với các sóng vô tuyến khác ở chỗ:
- Chúng truyền và phát tín hiệu ở tần số 2.4 GHz hoặc 5 GHz. Tần số này cao hơn
so với các tần số sử dụng cho điện thoại di động, các thiết bị cầm tay và truyền hình.
Tần số cao hơn cho phép tín hiệu mang theo nhiều dữ liệu hơn.
- Chúng dùng chuẩn 802.11:
+ Chuẩn 802.11b là phiên bản đầu tiên trên thị trường. Đây là chuẩn chậm nhất
và rẻ tiền nhất, và nó trở nên ít phổ biến hơn so với các chuẩn khác. 802.11b phát tín
hiệu ở tần số 2.4 GHz, nó có thể xử lý đến 11 megabit/giây, và nó sử dụng mã CCK
(complimentary code keying).
+ Chuẩn 802.11g cũng phát ở tần số 2.4 GHz, nhưng nhanh hơn so với chuẩn
802.11b, tốc độ xử lý đạt 54 megabit/giây. Chuẩn 802.11g nhanh hơn vì nó sử dụng
mã OFDM (orthogonal frequency-division multiplexing), một công nghệ mã hóa hiệu
quả hơn.
+ Chuẩn 802.11a phát ở tần số 5 GHz và có thể đạt đến 54 megabit/ giây. Nó
cũng sử dụng mã OFDM. Những chuẩn mới hơn sau này như 802.11n còn nhanh hơn
chuẩn 802.11a, nhưng 802.11n vẫn chưa phải là chuẩn cuối cùng.

52
+ Chuẩn 802.11n cũng phát ở tần số 2.4 GHz, nhưng nhanh hơn so với chuẩn
802.11a, tốc độ xử lý đạt 300 megabit/giây.
+ Chuẩn 802.11ac phát ở tần số 5 GHz
WiFi có thể hoạt động trên cả ba tần số và có thể nhảy qua lại giữa các tần số khác
nhau một cách nhanh chóng. Việc nhảy qua lại giữa các tần số giúp giảm thiểu sự
nhiễu sóng và cho phép nhiều thiết bị kết nối không dây cùng một lúc.
2.4.5. RF Links
Tần số vô tuyến (RF) là dải tần số nằm trong khoảng 3 kHz tới 300 GHz, tương
ứng với tần số của các sóng vô tuyến và các dòng điện xoay chiều mang tín hiệu vô
tuyến. RF thường được xem là dao động điện chứ không phải là dao động cơ khí, dù
các hệ thống RF cơ khí vẫn tồn tại.

Hình 2.25. Phân loại tần số


Để nhận được tín hiệu vô tuyến, người ta sử dụng anten. Tuy nhiên, anten sẽ nhận
hàng ngàn tín hiệu vô tuyến cùng lúc, cần phải có một bộ dò sóng vô tuyến bắt được
tần số muốn tìm (hay dải tần). Việc này thường được thực hiện thông qua một bộ cộng

53
hưởng – trong dạng đơn giản nhất của nó, một mạch với một tụ điện và một cuộn cảm
tạo thành một mạch cộng hưởng. Mạch cộng hưởng khuếch đại dao động trong một
dải tần cụ thể, trong khi giảm dao động ở các tần số khác ngoài băng tần.
2.4.6. Mạng di động: Internet di động (Cellular Networks: The Mobile Internet)
Internet di động thường dùng để truy cập vào Internet từ thiết bị di động, chẳng
hạn như điện thoại thông minh hoặc máy tính xách tay thông qua một mạng lưới băng
thông rộng di động. Các mạng di động băng thông rộng dựa trên thông tin liên lạc di
động, cùng một công nghệ được sử dụng trong điện thoại di động để phục vụ
các cuộc gọi và tin nhắn văn bản. Nó có thể cung cấp kết nối Internet với các tốc độ dữ
liệu theo các tiêu chuẩn mạng khác nhau đã tồn tại để phục vụ Internet di động: GPRS,
3G, WiMax, và LTE (một trong những công nghệ 4G). Tùy thuộc vào các tiêu chuẩn
và phủ sóng mạng có sẵn, tốc độ kết nối có thể từ 80 Kbps (GPRS) đến vài Mbps (3G
và 4G).
Do sự phức tạp của các giao thức truyền thông và các mã hóa thông tin, ngoài các
yêu cầu năng lượng cao trong trường hợp tiếp nhận tín hiệu thấp, mức tiêu thụ pin của
Internet di động - thiết bị kích hoạt là một vấn đề. Tuy nhiên nó là một lựa chọn tốt để
kết nối các thiết bị trực tiếp vào Internet, từ module GPRS cho Arduino (xem hình)
đến kết nối không yêu cầu cơ sở hạ tầng (ví dụ, Internet kết nối với máy tính xách tay
như trong trường hợp của ZigBee hoặc Bluetooth).

Hình 2.26. Module GPRS


2.4.7. Truyền thông có dây (Wired Communication)
Kể từ khi bắt đầu của thời đại Internet đến ngày nay, máy tính để bàn của bạn có ít
nhất một cổng Ethernet. Các giao thức Ethernet được thành lập trong truyền thông
máy tính.Nó không đòi hỏi nhiều sức mạnh như các thông tin liên lạc không dây, nó có

54
thể đạt được tốc độ dữ liệu rất cao và quan trọng nhất là nó là rất phổ biến trong truyền
thông máy tính.
Ethernet là một họ lớn và đa dạng gồm các công nghệ mạng dựa khung dữ liệu
(frame-based) dành cho mạng LAN. Tên Ethernet xuất phát từ khái niệm Ête trong
ngành vật lý học. Ethernet định nghĩa một loạt các chuẩn nối dây và phát tín hiệu cho
tầng vật lý, hai phương tiện để truy nhập mạng tại phần MAC (điều khiển truy nhập
môi trường truyền dẫn) của tầng liên kết dữ liệu, và một định dạng chung cho việc
đánh địa chỉ. Ethernet đã được chuẩn hóa thành IEEE802.3. Cấu trúc mạng hình sao,
hình thức nối dây cáp xoắn (twisted pair) của Ethernet đã trở thành công nghệ LAN
được sử dụng rộng rãi nhất từ thập kỷ 1990 cho tới nay, nó đã thay thế các chuẩn LAN
cạnh tranh khác như Ethernet cáp đồng trục (coaxial cable), token ring, FDDI (Fiber
distributed data interface), và ARCNET. Trong những năm gần đây, Wi-Fi, dạng
LAN không dây đã được chuẩn hóa bởi IEEE 802.11, đã được sử dụng bên cạnh hoặc
thay thế cho Ethernet trong nhiều cấu hình mạng.

Hình 2.27. Cổng kết nối Ethernet


2.4.8. Lựa chọn công nghệ truyền thông cho IoT
Khi cần phải quyết định các công nghệ truyền thông phù hợp nhất cho mạng IoT
cần phải xem xét các vấn đề: tính di động, phạm vi mạng, tiêu thụ điện năng, kích
thước và chi phí.... Trong trường hợp thiết bị được đặt ở một vị trí cố định, Ethernet là
một trong những lựa chọn tốt nhất cho việc cung cấp thông tin liên lạc ở tốc độ cao
dao động với mức tiêu thụ điện năng thấp. Trong trường hợp khác, yêu cầu tính di
động có thể lựa chọn giữa WiFi, mobile internet và ZigBee. RF đòi hỏi nhiều hơn nữa

55
để xây dựng một giao thức truyền thông. ZigBee đòi hỏi một cửa ngõ để cung cấp kết
nối với Internet, nhưng có ưu điểm tiêu thụ điện năng thấp và phạm vi phủ sóng tốt.
WiFi có thể cung cấp truy cập trực tiếp trong trường hợp cơ sở hạ tầng WiFi có sẵn,
nhưng tiêu thụ nhiều năng lượng vì nó được thiết kế cho các thiết bị như máy tính xách
tay với các nguồn tài nguyên năng lượng không dành cho các thiết bị IoT nhỏ. Khi các
cơ sở hạ tầng mạng chỉ có một mạng điện thoại di động, truyền dữ liệu di động là lựa
chọn duy nhất.
Bảng so sánh các công nghệ truyền thông
Công nghệ Tốc độ Phạm vi Tần số
Wifi 54 Mbps 150m 5 GHz
Bluetooh 721 Kbps 10m – 150m 2.5 GHz
RF - links 1 Mbps 50m – 100m 2.5 GHz
250 kbps, 20 kbps, 2.4 GHz, 868 MHz,
ZigBee 100m -300 m
40kbps 915 MHz
Cellular 3G 14.4 Mbps/ 5.8 Mbps m – Km 800 MHz, 1900 MHz
Wired (Ethernet) 100 Mbps – 1 Gbps m – Km

56
CHƯƠNG 3. PHÂN TÍCH BÀI TOÁN

3.1. Yêu cầu bài toán


Đề tài ứng dụng công nghệ Internet of Things trong thu thập và đánh giá nhiệt độ,
độ ẩm môi trường có yêu cầu đặt ra là: thu thập, đánh giá nhiệt độ, độ ẩm môi trường,
cho phép giám sát nhiệt độ, độ ẩm trên nền Web, gửi Email cảnh báo khi quá ngưỡng
đặt trước, vẽ đồ thị thời gian thực thể hiện sự thay đổi của hai thông số theo thời gian
3.2. Giải pháp thiết kế
3.2.1. Sơ đồ khối

Hình 3.1. Sơ đồ khối của hệ thống


Khối cảm biến: Sử dụng cảm biến nhiệt độ độ ẩm DHT22, để thu thập nhiệt độ,
độ ẩm môi trường và gửi dữ liệu về cho khối xử lý trung tâm.
Khối xử lý trung tâm: Sử dụng module wifi ESP8266 để xử lý dữ liệu từ khối
cảm biến gửi về và gửi chúng lên server thông qua internet.
Khối hiển thị và cảnh báo: Dữ liệu từ khối xử lý trung tâm được gửi lên server
thông qua internet, từ đây có thể sử dụng bất kì một máy tính hay các thiết bị có khả
năng truy cập vào mạng để truy cập vào server, mọi dữ liệu đều được hiển thị ở đó, khi
nhiệt độ, độ ẩm đạt ngưỡng cảnh báo server sẽ gửi email cảnh báo về cho người dùng.
Khối nguồn: Sử dụng IC LM2596 điều chỉnh điện áp phù hợp để cung cấp năng
lượng cho node cảm biến (khối cảm biến và khối xử lý trung tâm).
3.2.2. Nguyên tắc hoạt động của hệ thống
Khi ta cấp nguồn cho hệ thống, khối nguồn với IC LM2596 sẽ có nhiệm vụ điều
chỉnh và đảm bảo điện áp hoạt động phù hợp để nuôi toàn bộ hệ thống. Khối cảm biến
với module cảm biến DHT22 có chức năng thu thập nhiệt độ độ ẩm môi trường và gửi
dữ liệu về cho khối vi xử lý. Khối vi xử lý với module ESP8266 sẽ gửi dữ liệu lên
server thông qua đường truyền Internet. Server sẽ tiếp nhận dữ liệu đồng thời hiển thị

57
dữ liệu và gửi email cảnh báo nếu dữ liệu nhận được vượt ngưỡng cho phép mà đã
được cấu hình từ trước.
3.3. Lựa chọn linh kiện
3.3.1. Cảm biến nhiệt độ độ ẩm DHT22
DHT22 được sử dụng cho Khối cảm biến với các thông số kỹ thuật cơ bản sau:
+ Điện áp hoạt động 3.3V – 5.5V.
+ Dải đo độ ẩm 0 - 100%.
+ Sai số độ ẩm ±2%.
+ Dải đo nhiệt độ -40 – 80oC.
+ Sai số nhiệt dộ ±0.5oC.

Hình 3.2. Cảm biến nhiệt độ độ ẩm DHT22


Chức năng chân của DHT22.
+ Chân 1: VDD chân nối nguồn .
+ Chân 2: DATA chân dữ liệu vào ra.
+ Chân 3: NC( không dùng)
+ Chân 4: GND chân nối mass (0V).
Để có thể giao tiếp với DHT22 theo chuẩn 1 chân vi xử lý thực hiện theo 2 bước.
- Bước 1 : Gửi tín hiệu muốn đo (Start) tới DHT22, sau đó xác nhận lại.
+ MCU thiết lập chân DATA là output kéo chân DATA xuống 0 trong khoảng
thời gian >= 1ms. Khi đó DHT22 sẽ hiểu là MCU muốn đo nhiệt độ độ ẩm.
+ MCU đưa chân DATA lên 1 sau đó thiết lâp lại là chân đầu vào.
+ Sau khoảng 20-40µs DHT sẽ kéo chân DATA xuống thấp. Nếu >40µs mà
chân DATA chưa được kéo xuống thấp nghĩa là chưa giap tiếp được với DHT22.

58
+ Chân DATA sẽ ở mức thấp 80µs sau đó được DHT22 kéo lên múc cao trong
80µs. Bằng việc giám sát chân DATA , MCU có thể biết được có giao tiếp được với
DHT22 hay không. Nếu tín hiệu đo được lên cao khi đó hoàn thiện quá trình giao tiếp
của MCU với DHT22.

Hình 3.3. Gửi tín hiệu start


- Bước 2: Đọc giá trị trên DHT22 - cảm biến sẽ gửi lại 5 byte dữ liệu đo được:
+ Byte 1 giá trị phần nguyên của độ ẩm.
+ Byte 2 giá trị phần thập phân của độ ẩm.
+ Byte 3 giá trị phần nguyên của nhiệt độ.
+ Byte 4 giá trị phần thập phân của nhiệt độ.
+ Byte 5 kiểm trả tổng.
Nếu Byte 5=Byte1+Byte2+Byte3+Byte4 thì giá trị nhiệt độ và độ ẩm là chính xác
còn nếu không thì kết quả đo bị sai.
Cách tính nhiệt độ và độ ẩm. (Bytecao *256 + Bytethấp)/10.
Đọc dữ liệu : sau khi giao tiếp được với DHT22, DHT22 sẽ gửi liên tiếp 40bit 0
hoặc 1 về MCU tương ứng với 5 byte giá trị nhiệt độ độ ẩm.
+ Bit 0

Hình 3.4. Đọc bit 0


59
+ Bit 1

Hình 3.5. Đọc bit 1


Sau khi tín hiệu được đưa về 0 ta đợi chân DATA của MCU được DHT22 kéo lên
1. Nếu chân 1 DATA trong khoảng 26-28µs thì là 0 còn nếu tồn tại trong khoảng 70
µs thì là 1. Do đó trong lập trình ta bắt sườn lên của DATA sau đó delay 50µs. Nếu giá
trị đo được là 0 thì đọc được bit 0 nếu giá trị đo được là 1 thì đọc được bit 1cứ thế ta
đọc các bit tiếp theo.
3.3.2. Module wifi ESP8266
Module ESP8266 sử dụng cho Khối xử lý trung tâm với chức năng giao tiếp qua
sóng wifi tiện lợi, đơn giản, gọn nhẹ. Để giao tiếp với ESP8266 chúng ta sử dụng tập
lệnh AT để điều khiển ESP8266. ESP8266 có các thông số kỹ thuật cơ bản:
+ Điện áp hoạt động (+Vcc): 3,3V.
+ RxD TxD (USB to TTL); TxD RxD (USB to TTL)
+ CH_PD: Nối 3.3V
+ Giao tiếp: UART.
+ Chuẩn Wifi 802.11 b/g/n; Wi-Fi Direct (P2P), soft-AP.
+ Tích hợp giao thức TCP/IP stack.
+ Công suất đầu ra 19.5dBm ở chế độ 802.11b.

Hinh 3.6. Module wifi ESP8266

60
Chip ESP8266EX là chip được tích hợp trên module wifi ESP8266. ESP8266EX
là một trong những chip Wi-Fi tích hợp nhất trong ngành công nghiệp. To chỉ 5mm x
5mm, ESP8266EX đòi hỏi mạch điện bên ngoài tối thiểu và tích hợp 32-bit Tensilica
MCU, tiêu chuẩn kỹ thuật số giao diện ngoại vi, chuyển mạch ăng-ten, RF balun, bộ
khuếch đại lớn, tiếng ồn thấp nhận được khuếch đại, bộ lọc và các module quản lý
điện năng - tất cả trong một gói nhỏ.
Chip ESP8266EX tích hợp Tensilica L106 32 bit, vi điều khiển (MCU) có tính
năng tiêu thụ điện năng thấp và thêm 16-bit RSIC, đạt tốc độ tối đa là 160MHz.
Được thiết kế cho các thiết bị di động, thiết bị điện tử đeo trên người và các ứng
dụng Internet of Things (IoT), ESP8266EX đạt được mức tiêu thụ điện năng thấp với
một sự kết hợp của nhiều công nghệ độc quyền. Các kiến trúc tiết kiệm điện có ba chế
độ hoạt động - Chế độ hoạt động, chế độ ngủ và chế độ ngủ sâu, do đó cho phép thiết
kế pin chạy lâu hơn.
Với phạm vi nhiệt độ hoạt động rộng nhất từ -40 oC đến 125oC, ESP8266EX có
khả năng hoạt động trong môi trường công nghiệp. Với tính năng tích hợp cao trên
chip và tối thiểu số thành phần rời rạc bên ngoài, các chip cung cấp độ tin cậy cao, nhỏ
gọn và mạnh mẽ.
3.3.3. Khối nguồn LM2596
LM2596 có khả năng điều chỉnh điện áp DC, khuếch đại dòng điện, được ứng
dụng trong các mạch điện cần dòng điện cao khi hoạt động, với các thông số kỹ thuật:
+ Điện áp đầu vào: Từ 3V đến 40V.
+ Điện áp đầu ra: Điều chỉnh được trong khoảng 1.5V đến 35V.
+ Dòng đáp ứng tối đa là 3A.
+ Kích thước: 45 mm x 20 mm x 14 mm

Hình 3.7. Sơ đồ nguyên lý khối nguồn LM2596

61
Hình 3.8. Cầu trúc bên trong LM2596

Hình 3.9. Module LM2596

62
CHƯƠNG 4. NGÔN NGỮ LẬP TRÌNH VÀ PHẦN MỀM PHỤ TRỢ

4.1. Giới thiệu môi trường lập trình Arduino IDE


Để có môi trường lập trình Arduino thì bước đầu tiên các bạn phải có IDE do nhà
sản xuất Arduino cung cấp được download tại trang chủ theo link sau:
http://arduino.cc/en/Main/Software

Hình 4.1. Link download phần mềm Arduino.


Sau khi giải nén chạy Arduino.exe như sau:

Hình 4.2. Cài đặt Arduino IDE

63
Hình 4.3. Giao diện lập trình Arduino
Khi muốn lập trình phải khởi động giao diện lập trình trên giao diện có các chức
năng được mô tả như sau:

Hình 4.4. Chức năng các Menu chính

64
Trong giao diện lập trình căn bản khi lập trình cần chú ý các bước:
Bước 1: Tạo file biên dịch mới.
Bước 2: Lưu file code.
Bước 3: Lập trình code điều khiển.
Bước 4: Biên dịch file để kiểm tra lỗi.
Bước 5: Nạp chương trình vào Board.
Trong Arduino hỗ trợ các thư viện và ví dụ mở với các chủ đề khác nhau, muốn
dùng ví dụ nào có thể thao tác như hình bên dưới:

Hình 4.5. Mở ứng dụng mẫu trong Arduino.


Nạp chương trình và chạy ứng dụng: Cắm cáp nạp USB vào Board và máy tính
kiểm tra trạng thái có cổng kết nối chưa tại phần Tools>Serial Port để chọn cổng com
kết nối và Tool> Board để chọn board Arduino sử dụng. Sau đó nhấn Upload chương
trình được nạp vào và chạy ứng dụng.
4.2. Cấu trúc của một chương trình lập trình Arduino
Cũng như các ngôn ngữ lập trình khác, ngôn ngữ trong Arduino sử dụng ngôn ngữ
C, cấu trúc một chương trình Arduino bao gồm 2 phần chính :
void setup()
{
Thực hiện việc thiết lập ban đầu cho các ứng dụng.
}
Void loop()
65
{
Vòng lặp thực hiện chương trình.
}
Hàm setup() được sử dụng để khởi tạo giá trị các biến, thiết lập chế độ chân, bắt
đầu sử dụng các thư viện…Hàm setup chỉ thực hiện một lần khi cấp nguồn hoặc reset
Arduino.
Hàm loop() được hiểu như là chương trình chính, thực hiện các chức năng được
lập trình và có tính lặp lại liên tục.
4.3. Một số ví dụ lập trình các ứng dụng
Trong Arduino hỗ trợ rất nhiều ví dụ với các thư viện mở, có thể sử dụng tùy vào
mục đích mà điều chỉnh cho phù hợp.
4.3.1. Lập trình Điều khiển led

Hình 4.6. Ví dụ điều khiển led.


Trong hình trên led được kết nối tới chân 13 của Arduino board, với hiệu ứng
nhấp nháy cách nhau 1 giây. Chương trình lập trình như sau:
int led = 13; // khoi tao chan led la 13
void setup() {
pinMode(led, OUTPUT); // chon che do ra
}
void loop() {
digitalWrite(led, HIGH); // xuat muc 1 ra chan led
delay(1000); // tre 1s

66
digitalWrite(led, LOW); // xuat muc thap ra led
delay(1000); // tre1s
}
4.3.2. Lập trình gửi dữ liệu ra cổng truyền thông nối tiếp.
Ta có thể gửi text hoặc data từ Arduino và có thể hiển thị trên máy tính. Chương
trình dưới đây gửi lần lần lượt các số từ Arduino hiển thị trên Serial Monitor:
void setup()
{
Serial.begin(9600); // tốc độ gửi và nhận là 9600 baud
}
int number = 0;
void loop()
{
Serial.print("The number is "); // gui ra cong noi tiep
Serial.println(number); // gửi số qua cổng nối tiếp
delay(500); // trễ 500us giữa 2 số
number++; // tăng số lên 1 đơn vị
}

Hình 4.7. Kết quả thu được trên màn hình Serial

67
4.4. Lập trình cho ESP8266 trên Arduino IDE
4.4.1. Cấu hình cho Arduino IDE
Để Arduino IDE có thể lập trình cũng như biên dịch code cho ESP8266 ta cần cấu
hình như sau: Lựa chọn Board Manager trong Tools và cài đặt ESP8266.

Hình 4.8. Chọn Board

Hình 4.9. Install ESP8266 vào Arduino IDE

68
4.4.2. Tập lệnh AT giao tiếp với Module ESP8266.
Khi sử dụng giao tiếp UART để gửi lệnh AT đến Module ESP8266, chúng ta phải
gửi kềm kí tư <CR><LF> để báo kết thúc lệnh.
1. Lệnh Kiểm tra kết nối: AT.
Kết quả trả về: OK nếu kết nối không bị lỗi.
2. Lệnh Reset module: AT + RST.
Trả về: Ready sau khi reset thành công module.
3.Lệnh kiểm tra phiên bản module: AT+GMR.
Trả về môt dãy số là mã phiên bản module.
4. Lệnh cài đặt module hoạt động ở chế độ trạm phát wifi, điểm truy cập wifi:
AT+CWMODE=3. Trả về: Ok sau khi cài đặt thành công.
5. Lệnh tìm các mạng wifi đang có: AT+CWLAP. Kết quả trả về là danh sách
các mạng wifi mà module có thể bắt được.
6. Lệnh truy cập vào mạng wifi khác.
T+CWJAP = ”<access_point_name>”,”<password>” Sau khi truy cập thành
công, trả về : Ok.
7. Lệnh lấy đỉa chỉ IP của module. AT+CIFSR.Trả về một dãy số là địa chỉ IP
của module.
8. Lệnh đặt tên và mật khẩu cho mạng wifi do module ESP8266 phát ra:
AT+CIFSR = ”tên_mang”,”mật_khẩu”,3,0.
 Cài đặt module hoạt động ở chế độ TCP Client.
1. Cho phép module hoạt động ở chế độ đa kết nối, bằng cách gửi lệnh:
AT+CIPMUX = 1.
2. Sử dụng lệnh CIPSTART để chọn kênh kết nối (0-4), phương thức
truyền(TCP/UDP), địa chỉ IP của website (or domain) và cổng kết nối.
ví dụ: AT+CIPSTART = 4,”TCP”,”google.com”,80
nếu thành công, module trả về: ok.
3. Sử dụng lệnh AT + CIPSEND để báo kênh truyền và số byte của địa chỉ
websever mình cần lấy dữ liệu
ví dụ: địa chỉ: “ GET / HTTP/1.0\r\n\r\n” có 18 byte. sẽ phải gửi lệnh:
AT + CIPSEND = 4,18.
Sau khi gửi lệnh này, module sẽ trả về dấu “>”.

69
Đến đây chúng ta sẽ gửi địa chỉ của websever mà chúng ta cần lấy dữ liệu.
GET / HTTP/1.0
Module sẽ trả về SEND OK.
Và sau đó module sẽ trả về một loạt dữ liệu module nhận được từ web sever.
(Chuỗi json: JavaScript Object Notation) , phân tích chuỗi json này để lấy được dữ liệu
cần thiết.

70
CHƯƠNG 5. THỰC THI THIẾT KẾ

5.1. Thiết kế phần cứng

Hình 5.1. Sơ đồ nguyên lý


Trong sơ đồ nguyên lý này gồm có 3 linh kiện chính đó là ESP8266, DHT22 và
LM2596. Chân V_out của LM2596 được nối với chân 1(VDD) cuả DHT22 và chân
VCC của ESP8266 để cung cấp nguồn phù hợp cho hệ thống hoạt động. Chân
2(DATA) của DHT22 được nối với chân GPIO2 của ESP8266 gửi dữ liệu cho
ESP8266 xử lý. Chân GND của LM2596 được nối với đất của DHT22 và ESP8266.
5.2. Thiết kế phần mềm
(Code chương trình ở phần phụ lục)
5.2.1. Lưu đồ thuật toán

Hình 5.2. Lưu đồ thuật toán phần cứng

71
Giải thích lưu đồ thuật toán của phần cứng: Hệ thống khi được bắt đầu hoạt động
sẽ tiến hành việc khởi tạo thư viện cho ESP8266, DHT22, IoTCloud… ESP8266 hoạt
động ở chế độ TCP Client kết nối tới điểm truy cập internet. Cảm biến nhiệt độ độ ẩm
DHT22 đo nhiệt độ, độ ẩm từ môi trường gửi dữ liệu về cho ESP8266 xử lý và để
ESP8266 gửi dữ liệu lên server.

Hình 5.3. Lưu đồ thuật toán server


Giải thích lưu đồ thuật toán server: Hệ thống khi bắt đầu hoạt động sẽ tiến hành
việc khởi tạo giao diện và sau đó sẽ nhận dữ liệu từ node cảm biến gửi về. Tiến hành
hiển thị dữ liệu lên giao diện đồng thời kiểm tra dữ liệu xem có vượt ngưỡng đã được
cấu hình trước hay không, nếu có sẽ tiến hành gửi email cảnh báo còn không thì quay
về nhận dữ liệu tiếp.
5.2.2. Server EasyIoT Cloud Beta và cách kết nối với phần cứng
Server EasyIoT Beta là một server miễn phí hỗ trợ người dùng phát triển các ứng
dụng trên nền công nghệ Internet of Things. Server này là một phần trong trang wed
iot-playground.com( là một trang wed hỗ trợ xây dựng phát triển ứng dựng của công
nghệ Internet of Things).
Trong trang wed iot-playground ngoài thư mục EASYIOT CLOUD, nó còn chứa
các mục như BULD gồm các ví dụ nhỏ về Internet of Things, mục STORE giúp chúng
ta lựa chọn linh kiện, mục COMMUNITY FORUM là nơi có thể chia sẻ hiểu biết của
mình cũng như tìm được sự giúp đỡ từ người khác. Mục DOWNLOAD cho phép tải
72
các thư viện cần dùng và những thứ liên quan. Và cuối cùng là mục BLOG nơi ta có
thể tìm thấy một số bài viết chia sẻ về sản phẩm liên quan đến Internet of Things.

Hình 5.4. Giao diện trên iot-playground


Để sử dụng Server EasyIoT Beta kết nối với phần cứng. Đầu tiên ta phải tạo tài
khoản trên server bằng cách truy cập vào trang wed iot-playground.com  chọn
EASYIOT CLOUD  chọn Sign Up. Sau đó điền đầy đủ thông tin và nhấn Submit.

Hình 5.5. Cửa sổ Sign Up


Sau khi đã có tài khoản ta đăng nhập vào server bằng tài khoản đã đăng kí.

Hình 5.6. Đăng nhập tài khoản vào server

73
Sau khi đăng nhập sẽ có cửa sổ sau được hiện ra:

Hình 5.7. Cửa sổ chính của server


Chọn Configure một cửa sổ nữa hiện ra ta chọn Modules.

Hình 5.8. Cửa sổ chức năng chính của server


Tiếp tục chọn Add Module.

Hình 5.9. Thư mục Modules


Và điền tên module mà mình muốn tạo vào mục name và nhấn Save module.

74
Hình 5.10. Khai báo tên module
Nhấn Back để quay lại, sau đó vào mục User info. Trong mục này ta thấy có
Instance Id, đây chính là thông số giúp chúng ta kết nối với phần cứng (node cảm
biến)

Hinh 5.11. Thư mục User info


5.3. Một số hình ảnh của sản phầm

Hình 5.12. Hình ảnh thực tế phần cứng sản phẩm (node cảm biến)

75
Hinh 5.13. Dữ liệu thu được trên server

Hinh 5.14. Dữ liệu dạng đồ thị thời gian thực

Hinh 5.15. Gửi Email cảnh báo

76
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Báo cáo cơ bản thực hiện các yêu cầu đặt ra của đề tài về vấn đề tìm hiểu về công
nghệ Internet of Things, xu hướng phát triển của hiện tại và tương lai, đưa ra được
khái niệm, mô hình, kiến trúc của IoT với các nội dung chính:
- Tìm hiểu về cấu trúc chương trình C cho ESP8266 và Arduino IDE.
- Tìm hiểu về quá trình xây dựng ứng dụng IoT trên iot-playground.
- Tìm hiểu về Cảm biến nhiệt độ, độ ẩm DHT22, Module Wifi ESP 8266, Module
nguồn LM2596.
- Ứng dụng công nghệ IoT trong xây dựng giao diện giám sát trên nền Web theo
thời gian thực, kèm theo cảnh báo nhiệt độ, độ ẩm khi vượt ngưỡng.
Sản phẩm có thể phát triển thêm với các các tính năng như: nhỏ gọn, ưu việt, tối
ưu hơn, đảm bảo chất lượng, tính chính xác, tính ổn định, duy trì và tự động kết nối
mạng khi có yêu cầu. Tích hợp thêm nhiều chức năng khác như thêm tính năng giám
sát chất lượng khí môi trường, thực hiện các công việc cụ thể khác khi cài đặt nhiệt độ,
độ ẩm quá ngưỡng như trong tưới tiêu nông nghiệp… Thêm nhiều node cảm biến hơn
trên 1 sản phẩm, xây dựng thành mạng cảm biến để có thể thu thập, giám sát và cảnh
báo trên diện rộng, tăng tính khách quan trong đánh giá nhiệt độ, độ ẩm môi trường.
Bổ sung các kết nối không dây khác như RF, Bluetooth,… để có thể giám sát, cảnh
báo, thực thi công việc trên các thiết bị cầm tay (ví dụ: Smartphone, tay phát RF…).
Phát triển thêm khi kết hợp với Solar cell để hệ thống có thể làm việc độc lập với năng
lượng sẵn có từ tự nhiên.
Sản phẩm thu thập và đánh giá nhiệt độ độ ẩm môi trường có thể được ứng dụng
thực tiễn trong các ngôi nhà thông minh, áp dụng trong nông nghiệp ở các trang trại
cần sự đảm bảo về nhiệt độ, độ ẩm (trang trại chăn nuôi gà, trồng nấm, vườn ươm cây,
lò ấm trứng…), ứng dụng trong công nghiệp để đảm bảo tính chính xác trong sản xuất.
Sản phẩm cũng có thể áp dụng trong giám sát, quan trắc, thời tiết môi trường… Dựa
vào sự biến đối của nhiệt độ, độ ẩm của môi trường theo thời gian để có những dự báo
hoặc biện pháp phù hợp với khu vực cần khảo sát, thực nghiệm.

77
TÀI LIỆU THAM KHẢO

[1]. Charalampos Doukas, Building Internet of Things with the Arduino, 2012.
[2]. Cuno Pfister, Getting Started with the Internet of ThingsPaperback, 2011.
[3]. http://www.buildinginternetofthings.com/
[4]. https://en.wikipedia.org/wiki/Internet_of_Things
[5]. http://iot-playground.com/
[6]. Kiều Xuân Thực, Vũ Thị Thu Hương và Vũ Trung Kiên, 2008. Vi điều khiển
cấu trúc lập trình và ứng dụng. Nhà xuất bản Giáo dục. Hà Nội. 199 trang.
[7]. Nguyễn Ngọc Cương, Nguyễn Đình Nghĩa, Đỗ Quốc Huy, trần nghi Phú và
Phạm Thành Công, 2011. Giáo trình Ngôn ngữ lập trình C/C++. Nhà xuất bản
Thông Tin Và Truyền Thông. Hà Nội. 191 trang.

78
PHỤ LỤC
Code chương trình cho ESP8266:
#include <ESP8266WiFi.h>
#include "EIoTCloudRestApiV1.0.h"
#include <EEPROM.h>
#include "DHT.h"
#ifdef DEBUG_PROG
#define DEBUG_PRINTLN(x) Serial.println(x)
#define DEBUG_PRINT(x) Serial.print(x)
#else
#define DEBUG_PRINTLN(x)
#define DEBUG_PRINT(x)
#endif
EIoTCloudRestApi eiotcloud;
// change those lines
#define AP_USERNAME "wifi_xx"
#define AP_PASSWORD "hoianhdi@2"
#define INSTANCE_ID "57208a5fc943a03eab41a426"
#define CONFIG_START 0
#define CONFIG_VERSION "v01"
#define REPORT_INTERVAL 60 // in sec
struct StoreStruct {
// This is for mere detection if they are your settings
char version[4];
// The variables of your settings
char token[41];
uint moduleId;
//bool tokenOk; // valid token
} storage = {
CONFIG_VERSION,
// token
"1234567890123456789012345678901234567890",

79
//The default module 0 - invalid module
0,
//0 // not valid
};
float oldTemp;
float oldHum;
DHT dht;
String moduleId = "";
String parameterId1 = "";
String parameterId2 = "";
void setup() {
Serial.begin(115200);
DEBUG_PRINTLN("Start...");
EEPROM.begin(512);
loadConfig();
eiotcloud.begin(AP_USERNAME, AP_PASSWORD);
// if first time get new token and register new module
// here hapend Plug and play logic to add module to Cloud
if (storage.moduleId == 0)
{
// get new token - alternarive is to manually create token and store it in
EEPROM
String token = eiotcloud.TokenNew(INSTANCE_ID);
DEBUG_PRINT("Token: ");
DEBUG_PRINTLN(token);
eiotcloud.SetToken(token);
// remember token
token.toCharArray(storage.token, 41);
// add new module and configure it
moduleId = eiotcloud.ModuleNew();
DEBUG_PRINT("ModuleId: ");
DEBUG_PRINTLN(moduleId);

80
storage.moduleId = moduleId.toInt();
// set module type
bool modtyperet = eiotcloud.SetModulType(moduleId, "MT_GENERIC");
DEBUG_PRINT("SetModulType: ");
DEBUG_PRINTLN(modtyperet);
// set module name
bool modname = eiotcloud.SetModulName(moduleId, "Humidity sensor");
DEBUG_PRINT("SetModulName: ");
DEBUG_PRINTLN(modname);
// add image settings parameter
String parameterImgId = eiotcloud.NewModuleParameter(moduleId,
"Settings.Icon1");
DEBUG_PRINT("parameterImgId: ");
DEBUG_PRINTLN(parameterImgId);
// set module image
bool valueRet1 = eiotcloud.SetParameterValue(parameterImgId,
"humidity.png");
DEBUG_PRINT("SetParameterValue: ");
DEBUG_PRINTLN(valueRet1);
// now add parameter to display temperature
parameterId1 = eiotcloud.NewModuleParameter(moduleId,
"Sensor.Parameter1");
DEBUG_PRINT("parameterId1: ");
DEBUG_PRINTLN(parameterId1);
//set parameter description
bool valueRet2 = eiotcloud.SetParameterDescription(parameterId1,
"Temperature");
DEBUG_PRINT("SetParameterDescription: ");
DEBUG_PRINTLN(valueRet2);
//set unit
// see http://meyerweb.com/eric/tools/dencoder/ how to encode °C
bool valueRet3 = eiotcloud.SetParameterUnit(parameterId1, "%C2%B0C");

81
DEBUG_PRINT("SetParameterUnit: ");
DEBUG_PRINTLN(valueRet3);
//Set parameter LogToDatabase
bool valueRet4 = eiotcloud.SetParameterLogToDatabase(parameterId1, true);
DEBUG_PRINT("SetLogToDatabase: ");
DEBUG_PRINTLN(valueRet4);
//SetAvreageInterval
bool valueRet5 = eiotcloud.SetParameterAverageInterval(parameterId1, "10");
DEBUG_PRINT("SetAvreageInterval: ");
DEBUG_PRINTLN(valueRet5);
// now add parameter to display humidity
parameterId2 = eiotcloud.NewModuleParameter(moduleId,
"Sensor.Parameter2");
DEBUG_PRINT("parameterId2: ");
DEBUG_PRINTLN(parameterId2);
//set parameter description
bool valueRet6 = eiotcloud.SetParameterDescription(parameterId2,
"Humidity");
DEBUG_PRINT("SetParameterDescription: ");
DEBUG_PRINTLN(valueRet2);
//set unit
bool valueRet7 = eiotcloud.SetParameterUnit(parameterId2, "%");
DEBUG_PRINT("SetParameterUnit: ");
DEBUG_PRINTLN(valueRet7);
//Set parameter LogToDatabase
bool valueRet8 = eiotcloud.SetParameterLogToDatabase(parameterId2, true);
DEBUG_PRINT("SetLogToDatabase: ");
DEBUG_PRINTLN(valueRet8);
//SetAvreageInterval
bool valueRet9 = eiotcloud.SetParameterAverageInterval(parameterId2, "10");
DEBUG_PRINT("SetAvreageInterval: ");
DEBUG_PRINTLN(valueRet9);

82
// save configuration
saveConfig();
}
// if something went wrong, wiat here
if (storage.moduleId == 0)
delay(1);
// read module ID from storage
moduleId = String(storage.moduleId);
// read token ID from storage
eiotcloud.SetToken(storage.token);
// read Sensor.Parameter1 ID from cloud
parameterId1 = eiotcloud.GetModuleParameterByName(moduleId,
"Sensor.Parameter1");
DEBUG_PRINT("parameterId1: ");
DEBUG_PRINTLN(parameterId1);
parameterId2 = eiotcloud.GetModuleParameterByName(moduleId,
"Sensor.Parameter2");
DEBUG_PRINT("parameterId2: ");
DEBUG_PRINTLN(parameterId2);
Serial.println();
Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");
dht.setup(2); // data pin 2
oldTemp = -1;
oldHum = -1;
}
void loop() {
delay(dht.getMinimumSamplingPeriod());

float hum = dht.getHumidity();


float temp = dht.getTemperature();
Serial.print(dht.getStatusString());
Serial.print("\t");

83
Serial.print(hum, 1);
Serial.print("\t\t");
Serial.print(temp, 1);
Serial.print("\t\t");
Serial.println(dht.toFahrenheit(temp), 1);
if (temp != oldTemp || hum != oldHum)
{
//sendTeperature(temp);
eiotcloud.SetParameterValues("[{\"Id\": \""+parameterId1+"\", \"Value\":
\""+String(temp)+"\" },{\"Id\": \""+parameterId2+"\", \"Value\":
\""+String(hum)+"\" }]");
oldTemp = temp;
oldHum = hum;
}
int cnt = REPORT_INTERVAL;
while(cnt--)
delay(1000);
}
void loadConfig() {
// To make sure there are settings, and they are YOURS!
// If nothing is found it will use the default settings.
if (EEPROM.read(CONFIG_START + 0) == CONFIG_VERSION[0] &&
EEPROM.read(CONFIG_START + 1) == CONFIG_VERSION[1] &&
EEPROM.read(CONFIG_START + 2) == CONFIG_VERSION[2])
for (unsigned int t=0; t<sizeof(storage); t++)
*((char*)&storage + t) = EEPROM.read(CONFIG_START + t);}
void saveConfig() {
for (unsigned int t=0; t<sizeof(storage); t++)
EEPROM.write(CONFIG_START + t, *((char*)&storage + t));
EEPROM.commit();
}

84

You might also like