CƠ SỞ NG DNG IOTS - ITFA436064
DEPARTMENT OF COMPUTER AND COMMUNICATION ENGINEERING
IOT ARCHITECTURE AND PROTOCOLS LAB
MMH: ITAL328264
Group: 01
Nguyn Xuân Khôi 23119076
Nguyn Triều Dương 23119055
1. Draw and explain a block diagram of IoT System.
đồ khi h thng IOT mô hình gm các tng:Network layer, Data processing layer, Application layer,
Sensor layer
- Ngườing không tương tác trc tiếp vi các thiết b IoT, mà thông qua Application layer.
- D liệu được thu thp t Sensors, truyn qua Network, x ti Data Processing, và hin th cho người
dùng Application.
- Tng Network : nhim v kết ni tng cm nhn vi tng x lý d liu. Tng này nhim v truyn
ti d liu thu thp t các cm biến thông qua các gateway các công ngh truyền thông như
Bluetooth, WiFi, mng di động hoc Internet lên tng x d liệu, đng thi tiếp nhn và chuyn các
lệnh điu khin t tng trên xung các thiết b tng cm nhn. Nh đó, Network Layer đm bo quá
tnh trao đổi d liu gia các thành phn trong h thng IoT din ra liên tc, ổn đnh và hiu qu.
CƠ SỞ NG DNG IOTS - ITFA436064
- Tng Data Processing có nhim v tiếp nhn d liu t tầng Network/Gateway, sau đó x, phân tích
lưu tr d liu bằng các đơn v x như CPU hoc GPU. D liệu sau khi đưc lc, tng hp
phân tích s được chuyn lên tầng Application đ phc v giám sát, điu khin và ra quyết định.
- Tầng Application là nơi cung cấp giao din và dch v cho người dùng. Tng này nhn d liệu đã đưc
x t tng Data Processing, hin th thông tin dưới dng biểu đồ, thông o hoc trng thái h thng,
đồng thời cho phép người dùng tương tác và gửi lệnh điều khin xung các tầng bên dưới.
- Tng Sensor : tng thp nht trong kiến trúc IoT, có nhim v thu thp d liu t môi tng thc thông
qua các cm biến như : cảm biến đo độ m bi mn nồng độ các khí đc hại…. và chuyển d liệu đó
lên các tng trên để x
2. Features of CSS, HTML, JAVASCRIPT.
HTML :
HTML (HyperText Markup Language) nn ng tiêu chuẩn được s dụng để to và xây dng cu trúc các
trang web. Nó s dng các th (tags) và phn t (elements) để định nghĩa tiêu đề, đoạn văn, hình nh, liên kết
các thành phn khác mà trình duyt hin th trên màn hình.
HTML là nn tng ca tt c các trang web.
HTML s dng các th (tags) để định nghĩa cấu trúc và ni dung.
HTML không ph thuc vào nn tng và chy trên tt c các trình duyt.
Feature :
1. D hc và d s dng
HTML s dng các th đơn giản, d đọc. Ngay c người mi bắt đầu cũng có thể nhanh chóng hiu và viết mã
HTML.
d: <h1>Hello World</h1> to một tiêu đề ln nht trên trang web vi ni dung là Hello World.
2. Không ph thuc nn tng
HTML hoạt động trên mi h điu hành (Windows, macOS, Linux, v.v.). Bn ch cn mt trình duyệt để chy
HTML không cn phn mềm đặc bit.
HTML không cn biên dịch như C/C++.
Trình duyệt web (Chrome, Edge, Firefox, Safari…) đc và hin th trc tiếp mã HTML.
Mi h điu hành hiện nay đều có trình duyt web.
d : Window có th m bng trình duyt chrome, coccoc
MacOS: m file bng Safari / Chrome
Linux: m file bng Firefox / Chrome
Cho ra cùng mt giao din ging nhau trên 3 h điu hành k trên
3. Được h tr bi tt c các trình duyt
Mi trình duyt web hiện đại (Chrome, Firefox, Edge, Safari) đu h tr HTML. HTML đảm bo trang web
hin th nht quán trên các trình duyt khác nhau.
4. Kết hp vi các ngôn ng khác
HTML th d dàng kết hp vi CSS đ to kiu giao diện JavaScript đ tạo tính tương tác.
Khi kết hp vi nhau, chúng giúp trang web tr nên đẹp mắt sinh động hơn.
CƠ SỞ NG DNG IOTS - ITFA436064
HTML: to cu trúc và nội dung (tiêu đề, đoạn văn, nút bấm…)
CSS: to giao din (màu sc, font ch, b cc)
JavaScript: to tương tác (click, hiện/n ni dung, kiểm tra form…)
5. H tr đa phương tiện
HTML5 cho phép chèn âm thanh, video hình nh trc tiếp không cn plugin. Điều này làm cho trang
web tương tác và hấp dn hơn.
d: <video controls src="Muvôđịch.mp4"></video> dùng để chèn video vào trang web.
6. Liên kết (Hyperlinking)
HTML h tr các siêu liên kết, giúp kết ni các trang web và các website vi nhau.
7. Cu trúc tài liu rõ ràng
HTML t chc ni dung bng các phn t như tiêu đề, đon văn, danh sáchbảng. Điu này giúp trình duyt
ng c tìm kiếm hiu rõ b cc trang web.
8. Mã ngun m và min p
HTML hoàn toàn min p và không u cu giy phép hay phn mm bn quyn để s dng.
CSS (Cascading Style Sheets) :
CSS (Cascading Style Sheets) là mt ngôn ng đnh kiểu được s dụng để kim soát giao din cm nhn
ca mt website. xác đnh b cc, u sc, phông ch phong cách hin th tng th ca các phn t
HTML trên mt trang web. CSS giống như bộ trang phc ca website ly cấu trúc bản do HTML
cung cấp và làm cho trang web trông đẹp mắt hơn.
1. B chọn (Selectors) và độ ưu tiên (Specificity)
Một ý tưởng ct lõi ca CSS là các b chn, cho phép bn to kiu cho nhng thành phn HTML c th.
Chúng xác đnh nhng thành phn o trên trang web s b ảnh hưởng bi các kiu bn chn. B chn
trong CSS có th da trên ID, class, tên phn t HTML các thuc tính khác. Vic hiểu đ ưu tiên của
b chn (specificity) là cn thiết để xác định kiu nào s được áp dng khi nhiu quy tắc cùng tác động
lên mt phn t.
2. Cơ chế kế tha xếp chng (Cascading)
Cách các kiểu được áp dng cho các phn t trong CSS được gi cascading. Nếu các quy tc c th
hơn hoc các kiểu được khai o sau trong CSS, chúng s ghi đè lên các kiểu được kế tha t các phn t
cha. Điều này cho phép áp dng mt h thng kiu mnh m và linh hot mtch thng nht trên toàn b
website.
3. Mô hình hp (Box Model)
Mô hình hp là mt khái niệm cơ bản trong CSS, mô t cách các phn t được sp xếp trên mt trang web.
Mi phn t HTML đều được xem là một “hp”, bao gồm các thuộc tính như content (nội dung), padding
(khoảng đệm), border (vin) và margin (l). Vic hiu mô hình hp là rt quan trng để to b cục và định
v các đối tượng trên trang web.
CƠ SỞ NG DNG IOTS - ITFA436064
4. Kiu ch (Typography)
CSS cung cp nhiều cách để tùy chỉnh văn bn trên một trang web. Điu này bao gm các thuc tính dùng
để điu chnh chiều cao dòng, độ đậm ch, h phông chữ, kích thước ch và nhiu yếu t khác. Bng cách
s dng CSS, các lp trình viên th tạo ra văn bản d đọc và đẹp mt, giúp ci thin tri nghiệm người
dùng tng th.
5. Màu sc và nn (Colors and Backgrounds)
CSS cho phép các lp trình viên kim soát màu sc ca các phn t trên trang web. Điều này bao gm màu
ch, màu nn và màu vin. Ngoài ra, CSS còn cung cấp các tính năng như to màu chuyn (gradient), áp
dng hình nền và xác định độ trong sut bằng các phương pháp RGBA và HSLA.
6. B cục và định v (Layout and Positioning)
CSS nhiu thuộc tính được s dụng đ kim soát b cc v t ca các phn tử. Điều y bao gm
vic thiết lập kích thước ca phn t và kim soát lung ni dung. CSS giúp to ra các website responsive,
cho phép người dùng xem cùng mt website trên nhiu thiết b khác nhau.
7. Hiu ng chuyn tiếp và hot nh (Transitions and Animations)
CSS cung cp các công c mnh m để thêm tính tương tác và hot nh vào các trang web. Các thuc tính
như transition và animation cho phép lập trình viên to ra các chuyển đổi mượt gia các trng thái
thêm chuyển động đng cho các thành phần. Điều này giúp nâng cao đáng k tri nghiệm ngưi dùng
làm cho website tr nên hp dẫn hơn.
8. Media Queries cho thiết kế responsive
S xut hin ca nhiu loi thiết b và kích thước màn hình khác nhau đã làm nảy sinh nhu cu v thiết kế
web responsive. Vi s tr giúp ca media queries do CSS cung cp, các lp trình viên có th áp dng các
kiu khác nhau da trên chiu rng, chiều cao hướng của màn nh. Điều này đảm bo rng website
hoạt động tt hin th đẹp trên nhiu nn tng khác nhau, bao gm điện thoi di động máy tính để
bàn.
JAVASCRIPT (JS) :
Javascript (JS) : Dùng để lp trình hành vi ca các trang web. JS có th thay đổi ni dung HTML, x s
kin người ng, và giao tiếp vi server để cp nht d liu mà không cn ti li trang.Thông qua các
phương thức HTTP như GET POST, JavaScript thể gi và nhn d liu vi server. Mô
t s thuô
c
tính ni bâ
t
H tr trình duyt (Browser Support)
Tt c các trình duyt hin nay đều h tr JavaScript, mi trình duyt hiện đại đều được tích hp sn
môi trường thc thi JavaScript.
Ngoài ra, th s dụng đối tượng window để kim tra xem trình duyt h tr một tính năng
JavaScript c th hay không.
Tương tác DOM (DOM Manipulation)
JavaScript cho phép lp trình viên thao tác các phn t trên trang web và kim soát trình duyt.
CƠ SỞ NG DNG IOTS - ITFA436064
Ngôn ng này cung cp nhiều phương thức đ truy cp các phn t DOM thông qua các thuc tính
khác nhau, cho phép tùy chnh ni dung HTML mt cách linh hot hoc kim tra vic h tr mt tính
năng c th.
X s kin (Event Handling)
JavaScript cho phép x c s kin nhm to s tương tác với trang web.
d: phát hin thao tác nhp chut vào mt phn t HTML c th và phn hi lại hành động đó.
Ngoài ra, JavaScript còn h tr nhiu s kin khác như cuộn trang, nhấn phím, thay đi kích thước
ca s,
(Các loi s kin này s được trình bày chi tiết trong chương “S kiện trong JavaScript”)
Kiểu động (Dynamic Typing)
JavaScript xác đnh kiu d liu ca biến ti thời điểm chy (runtime).
Do đó, lp trình viên không cn khai báo kiu d liu khi viết , giúp vic lp trình linh hoạt n.
Mt biến có th được gán các giá tr thuc kiu d liu khác nhau mà không gây li.
Lp trình hàm (Functional Programming)
JavaScript h tr các khái nim lp trình hàm như:
o Hàm bc nht (first-class functions)
o Hàm thun (pure functions)
o Closures và hàm bc cao (higher-order functions)
o Arrow functions và function expressions
Ngôn ng này thường s dng hàm như khối xây dựng chính để gii quyết vấn đề.
H tr đa nn tng (Cross-Platform Support)
JavaScript được h tr trên mi h điu hành và trình duyt.
vậy, JavaScript đưc s dng rng rãi trong phát trin website, ng dụng di động, tchơi và ng
dụng máy tính để bàn.
Lập trình hướng đối tượng (Object-Oriented Programming)
JavaScript h tr lp (class) và cho phép áp dụng đầy đ các khái nim ca lập trình hướng đối tượng,
bao gm:
o Kế tha (Inheritance)
o Trừu tượng (Abstraction)
o Đa hình (Polymorphism)
o Đóng gói (Encapsulation)
Đối tượng tích hp sn (Built-in Objects)
JavaScript cung cp nhiều đối tượng tích hp sn, ví d:
o Math: thc hin các phép toán
CƠ SỞ NG DNG IOTS - ITFA436064
o Date: x thi gian và ngày tháng
Nguyên mẫu đối tượng (Object Prototypes)
Trong JavaScript, hu hết mi th đều đối tượng, chng hạn như: array, function, number, string,
boolean, set, map, v.v.
Mỗi đối tượng đều có mt thuc tính n gi là prototype, cho phép:
o Kế tha chức năng giữa các đối tượng
o M rộng tính năng của lp hoặc đối tượng thông qua prototype
Đối tượng toàn cc (Global Object)
JavaScript có đối tượng toàn cc cho phép truy cp các biến và hàm mi nơi trong chương trình.
Trong trình duyệt, đối tượng toàn cc là window.
Trong môi tờng Node.js, đối tượng toàn cc là global.
Phương thức tích hp (Built-in Methods)
JavaScript cung cp nhiều phương thức tích hp sn cho tng loại đối ng, giúp ngun ngn gn
hiu qu.
Đối tượng Array các phương thức như:
o filter(): lc phn t trong mng
o sort(): sp xếp mng
Đối tượng String có các phương thức như:
o replace(): thay thế văn bản
o trim(): loi b khong trng tha
Lp trình mô-đun (Modular Programming)
JavaScript cho phép chia mã ngun thành nhiu mô-đun và liên kết chúng vi mô-đun chính.
Điu này giúp mã ngun d bo trì, d tái s dng và giảm đ phc tp của chương tnh.
JSON (JavaScript Object Notation)
JSON là đnh dng d liu ph biến dùng để trao đổi thông tin gia các h thng, d gia máy ch
trình kch.
JavaScript h tr đầy đủ JSON để lưu tr và truyn ti d liu.
Lp trình bất đồng b (Asynchronous Programming)
JavaScript là ngôn ng đơn luồng (single-threaded), nhưng thể x nhiu tác v cùng lúc nh lp
tnh bt đồng b.
Nh kiến trúc hướng s kin (event-driven architecture), JavaScript cho phép xây dng các ng dng
web tương tác cao, phản hi nhanh và x đồng thi nhiều người dùng.
H tr phía máy ch (Server-side Support)
Môi trường Node.js cho phép JavaScript đưc s dụng để phát trin backend.
CƠ SỞ NG DNG IOTS - ITFA436064
Nh đó, JavaScript thể dùng để to máy ch web xây dng c h thng backend kh ng
m rng cao.
3. What is HOSTING? DOMAIN? Give Example.
HOSTING
DOMAIN
Web hosting là dch v giúp website ca bn hin th
trên Internet. Nó lưu tr các tp ca website trên
những máy tính đc bit gi là máy ch (server)
cung cp các tệp đó cho người truy cp khi h nhp
tên min (domain name) ca bn.
d :
AWS (Amazon Web Services)
https://aws.amazon.com: dch v hosting điện
toán đám mây do Amazon cung cấp.
Firebase Hosting (Google)
https://firebase.google.com: dch v hosting ca
Google, thường dùng cho website và ng dng web.
Microsoft Azure https://azure.microsoft.com
nn tng cloud và hosting do Microsoft cung cp.
Domain (tên min) là mt mạng lưới các máy tính
thiết b được qun bi mt quan hoặc t chc
duy nht và tuân theo những quy định c th. C th
hơn, mt domain được kim soát bi mt công ty
nht đnh, công ty này s hin din trên Internet
đa ch IP riêng.
Domain đưc nhn din thông qua tên min, chng
hạn như Webopedia hoc www.webopedia.com.
Tên min bao gm hai thành phn chính:
Tên min cp cao nht (TLD Top-Level
Domain)
Là phn m rng ca tên min.
Dùng để xác định loi t chc hoc mục đích ca
website.
d: .com, .org, .net, .edu, .gov, .vn, .tech
Tên min cp hai (SLD):
Là phn tên chính ca website.
Thường đại diện cho thương hiệu, doanh nghip, d
án hoc cá nhân.
d :google, ctuavlab, aquanova, vnexpress
4. What is a gateway? The role of Gateway in the IoT System?
Gateway là b chuyển đổi giao thc nhm kết ni hai mng giao thc truyn tin khác nhau có th giao
tiếp qua li vi nhau. Thiết b Gateway được ví như cửa ngõ ra vào ca mng, bi tt c d liu đều phi
đi qua Gateway trước khi chuyển đến b định tuyến. Hu hết trong mng IP duy nht ch lưu lượng
truyn gia các nút thuộc phân đon mng cc b (mng LAN) là không đi qua Gateway. Do đó mới
các khái niệm Gateway Network Default Gateway. Ưu điểm chính của Gateway giúp đơn gin hóa
vic kết ni Internet cho thiết b mạng, do đó bộ chuyển đổi giao thức này được s dng nhiu trong h
thng mng cá nhân hoc doanh nghiệp. Đối vi các doanh nghip, nút mng Gateway th đóng vai t
như mt máy ch Proxy (Proxy Server) và tưng la (Firewall).
Gateway IoT: dng gateway vai trò kết ni b điu khin, cm biến, các thiết b thông minh với đám
mây lưu trữ. Trước khi gi d liu đi, các cảm biến t trong môi trường IoT đều phi x d liu
chuyển đổi giao thc cho phù hp vi n tiếp nhn
CƠ SỞ NG DNG IOTS - ITFA436064
5.Read “IoT Solution for Smart City” and answer these questions:
a. What does a smart city may involve?
b. What can be measured?
c. Applications of IoT technology for smart cities.
Solution
a. Da vào hình Smart Cities IoT Solutions, smart city có th bao gm:
Environmental monitoring
Smart tourism
Urban mobility
Urban green areas
b. What can be measured?
Môi trường & cht lượng không khí:
• CO (Carbon monoxide), CO2, NO2,)
• PM1, PM2.5,
• Nhiệt độ, đ m, áp sut khí quyn - Âm thanh & tiếng n
• Đo mc tiếng n dBA để theo dõi ô nhiễm âm thanh đô thị -Giao thông & v trí di động
• GPS, tốc độ, v t xe bt, d liệu hành trình phương tin công cng -Khác (tùy ng dng)
• Mức độ rác trong thùng, tình trng công trình (vết nứt, rung động)
• Mức độ bãi đỗ xe, lưu lưng giao thông, độ ph Wi-Fi/Bluetooth
c. Applications of IoT technology for smart cities.
Giám sát môi trường: theo dõi chất lượng không khí, ô nhim, tiếng ồn, nhiệt độ, độ ẩm theo thời gian
thực.
Giao thông thông minh: quản lý lưu lượng xe, phát hiện ùn tắc, tối ưu đèn giao thông và thời gian di
chuyển.
Quản năng lượng & tin ích: giám sát tiêu thụ điện, nước, tối ưu hiệu suất năng lượng của các tòa
nhà.
Quản rác thải: theo dõi mức đầy thùng rác, tối ưu ltrình thu gom.
Y tế & an toàn công cộng: theo dõi sức khỏe, cảnh báo rủi ro môi trường, hỗ trợ dịch vụ khẩn cấp.
Quản đô thị thông minh: hỗ trợ ra quyết định, nâng cao hiệu quả vận hành và chất lượng sống của
người dân.
5. What is MQTT? ( Định nghĩa, đặc điểm, ng dng)
Định Nghĩa :
MQTT (Message Queuing Telemetry Transport) là mt giao thc gi dng publish/subscribe s dng
cho các thiết b Internet of Things vi băng thông thấp, độ tin cy cao kh năng được s dng trong
mạng lưới không n định.
Bi giao thc này s dụng băng thông thấp trong môi trường độ tr cao nên là mt giao thc
tưởng cho các ng dng M2M
Đặc điểm:
Gn nh và Hiu qu:
Tiêu đề (header) bn tin rt nh (ti thiu ch 2 byte).
CƠ SỞ NG DNG IOTS - ITFA436064
Yêu cu tài nguyên ti thiu, tiêu th rất ít năng lượng (pin), phù hp với các vi điều khin nh.
Thích ng tt vi mng hn chế:
Đưc thiết kế cho mạng ng thông thấp, độ tr cao không n định (như mạng di động,
v tinh).
kh năng kết ni li nhanh chóng.
Cơ chế hoạt động (Publish/Subscribe):
Tách bit hoàn toàn bên gi và bên nhn v không gian (không cn biết IP ca nhau), thi gian
(không cần online cùng lúc) và quá trình đồng b.
S dng mt thành phn trung gian gi là Broker (Trình truyn tải) để điều phi tin nhn.
Độ tin cy cao (QoS - Quality of Service): Cung cp 3 mức độ tin cậy đ đảm bo gi tin:
QoS 0: Gi nhiu nht 1 ln (không bảo đảm, giống "đem con bỏ ch").
QoS 1: Gi ít nht 1 lần (đảm bo tới nơi nhưng có thể b lp).
QoS 2: Gi chính xác 1 lần (đảm bo nht, không lặp, quy trình 4 bước).
Các tínhng h tr:
Retain: Lưu lại tin nhn cui cùng cho người đăng ký mới.
LWT (Last Will and Testament): Thông báo khi thiết b b ngt kết nối đột ngt (ngoi tuyến).
Bo mt: H tr mã hóa SSL/TLS, xác thc bng OAuth hoc chng ch.
ng dng:
Mng xã hi và tin nhn:
Facebook Messenger: Đây dụ đin hình nht. Facebook s dng MQTT cho ng dng
Messenger trên điện thoi nó tiết kim pin và băng thông, giúp tin nhắn được gi/nhn nhanh chóng
ngay c khi mng yếu.
Nhà thông minh (Smart Home): Giám sát nhiệt độ, điều khin ánh sáng, trng thái các thiết b
trong nhà nhiu tng.
ng dng trong Công nghip (Industrial IoT)
Ngành Dầu khí: Đâynơi MQTT được sinh ra (năm 1999). Các k sư dùng nó để giám sát các
đường ng dn du t xa thông qua kết ni v tinh (nơi băng thông cực thấp và đắt đỏ).
Giao tiếp M2M (Machine to Machine): Cho phép các máy móc t giao tiếp vi nhau hoc gi
d liu v trung tâm mà không cần con người can thip.
Các thiết b IoT khác
Thiết b đeo (Wearables): Đồng h thông minh, ng đeo tay sức khe (cn tiết kim pin ti
đa).
Cm biến thông minh (Smart Sensors): Các cm biến đo đạc môi tng, thi tiết gi d liu
v đám mây.
Nông nghip/Quan trc: Các thiết b đặt nơi xa i, dùng pin và mng không n định.
Hình nh nhóm 01
CƠ SỞ NG DNG IOTS - ITFA436064

Preview text:


DEPARTMENT OF COMPUTER AND COMMUNICATION ENGINEERING
IOT ARCHITECTURE AND PROTOCOLS LAB MMH: ITAL328264 Group: 01
Nguyễn Xuân Khôi 23119076
Nguyễn Triều Dương 23119055
1. Draw and explain a block diagram of IoT System.
Sơ đồ khối hệ thống IOT mô hình gồm các tầng:Network layer, Data processing layer, Application layer, Sensor layer
- Người dùng không tương tác trực tiếp với các thiết bị IoT, mà thông qua Application layer.
- Dữ liệu được thu thập từ Sensors, truyền qua Network, xử lý tại Data Processing, và hiển thị cho người dùng ở Application.
- Tầng Network : có nhiệm vụ kết nối tầng cảm nhận với tầng xử lý dữ liệu. Tầng này có nhiệm vụ truyền
tải dữ liệu thu thập từ các cảm biến thông qua các gateway và các công nghệ truyền thông như
Bluetooth, WiFi, mạng di động hoặc Internet lên tầng xử lý dữ liệu, đồng thời tiếp nhận và chuyển các
lệnh điều khiển từ tầng trên xuống các thiết bị ở tầng cảm nhận. Nhờ đó, Network Layer đảm bảo quá
trình trao đổi dữ liệu giữa các thành phần trong hệ thống IoT diễn ra liên tục, ổn định và hiệu quả.
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
- Tầng Data Processing có nhiệm vụ tiếp nhận dữ liệu từ tầng Network/Gateway, sau đó xử lý, phân tích
và lưu trữ dữ liệu bằng các đơn vị xử lý như CPU hoặc GPU. Dữ liệu sau khi được lọc, tổng hợp và
phân tích sẽ được chuyển lên tầng Application để phục vụ giám sát, điều khiển và ra quyết định.
- Tầng Application là nơi cung cấp giao diện và dịch vụ cho người dùng. Tầng này nhận dữ liệu đã được
xử lý từ tầng Data Processing, hiển thị thông tin dưới dạng biểu đồ, thông báo hoặc trạng thái hệ thống,
đồng thời cho phép người dùng tương tác và gửi lệnh điều khiển xuống các tầng bên dưới.
- Tầng Sensor : tầng thấp nhất trong kiến trúc IoT, có nhiệm vụ thu thập dữ liệu từ môi trường thực thông
qua các cảm biến như : cảm biến đo độ ẩm bụi mịn nồng độ các khí độc hại…. và chuyển dữ liệu đó
lên các tầng trên để xử lý
2. Features of CSS, HTML, JAVASCRIPT. HTML :
HTML (HyperText Markup Language) là ngôn ngữ tiêu chuẩn được sử dụng để tạo và xây dựng cấu trúc các
trang web. Nó sử dụng các thẻ (tags) và phần tử (elements) để định nghĩa tiêu đề, đoạn văn, hình ảnh, liên kết
và các thành phần khác mà trình duyệt hiển thị trên màn hình.
 HTML là nền tảng của tất cả các trang web.
 HTML sử dụng các thẻ (tags) để định nghĩa cấu trúc và nội dung.
 HTML không phụ thuộc vào nền tảng và chạy trên tất cả các trình duyệt. Feature :
1. Dễ học và dễ sử dụng
HTML sử dụng các thẻ đơn giản, dễ đọc. Ngay cả người mới bắt đầu cũng có thể nhanh chóng hiểu và viết mã HTML.
Ví dụ: Hello World tạo một tiêu đề lớn nhất trên trang web với nội dung là Hello World.
2. Không phụ thuộc nền tảng
HTML hoạt động trên mọi hệ điều hành (Windows, macOS, Linux, v.v.). Bạn chỉ cần một trình duyệt để chạy
HTML – không cần phần mềm đặc biệt.
 HTML không cần biên dịch như C/C++.
 Trình duyệt web (Chrome, Edge, Firefox, Safari…) đọc và hiển thị trực tiếp mã HTML.
 Mọi hệ điều hành hiện nay đều có trình duyệt web.
Ví dụ : Window có thể mở bằng trình duyệt chrome, coccoc
MacOS: mở file bằng Safari / Chrome
Linux: mở file bằng Firefox / Chrome
Cho ra cùng một giao diện giống nhau trên 3 hệ điều hành kể trên
3. Được hỗ trợ bởi tất cả các trình duyệt
Mọi trình duyệt web hiện đại (Chrome, Firefox, Edge, Safari) đều hỗ trợ HTML. HTML đảm bảo trang web
hiển thị nhất quán trên các trình duyệt khác nhau.
4. Kết hợp với các ngôn ngữ khác
HTML có thể dễ dàng kết hợp với CSS để tạo kiểu giao diện và JavaScript để tạo tính tương tác.
Khi kết hợp với nhau, chúng giúp trang web trở nên đẹp mắt và sinh động hơn.
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
HTML: tạo cấu trúc và nội dung (tiêu đề, đoạn văn, nút bấm…)
CSS: tạo giao diện (màu sắc, font chữ, bố cục)
JavaScript: tạo tương tác (click, hiện/ẩn nội dung, kiểm tra form…)
5. Hỗ trợ đa phương tiện
HTML5 cho phép chèn âm thanh, video và hình ảnh trực tiếp mà không cần plugin. Điều này làm cho trang
web tương tác và hấp dẫn hơn.
Ví dụ: dùng để chèn video vào trang web. 6. Liên kết (Hyperlinking)
HTML hỗ trợ các siêu liên kết, giúp kết nối các trang web và các website với nhau.
7. Cấu trúc tài liệu rõ ràng
HTML tổ chức nội dung bằng các phần tử như tiêu đề, đoạn văn, danh sách và bảng. Điều này giúp trình duyệt
và công cụ tìm kiếm hiểu rõ bố cục trang web.
8. Mã nguồn mở và miễn phí
HTML hoàn toàn miễn phí và không yêu cầu giấy phép hay phần mềm bản quyền để sử dụng.
CSS (Cascading Style Sheets) :
CSS (Cascading Style Sheets) là một ngôn ngữ định kiểu được sử dụng để kiểm soát giao diện và cảm nhận
của một website. Nó xác định bố cục, màu sắc, phông chữ và phong cách hiển thị tổng thể của các phần tử
HTML trên một trang web. CSS giống như bộ trang phục của website — nó lấy cấu trúc cơ bản do HTML
cung cấp và làm cho trang web trông đẹp mắt hơn.
1. Bộ chọn (Selectors) và độ ưu tiên (Specificity)
Một ý tưởng cốt lõi của CSS là các bộ chọn, cho phép bạn tạo kiểu cho những thành phần HTML cụ thể.
Chúng xác định những thành phần nào trên trang web sẽ bị ảnh hưởng bởi các kiểu bạn chọn. Bộ chọn
trong CSS có thể dựa trên ID, class, tên phần tử HTML và các thuộc tính khác. Việc hiểu độ ưu tiên của
bộ chọn (specificity) là cần thiết để xác định kiểu nào sẽ được áp dụng khi có nhiều quy tắc cùng tác động lên một phần tử.
2. Cơ chế kế thừa – xếp chồng (Cascading)
Cách các kiểu được áp dụng cho các phần tử trong CSS được gọi là cascading. Nếu có các quy tắc cụ thể
hơn hoặc các kiểu được khai báo sau trong CSS, chúng sẽ ghi đè lên các kiểu được kế thừa từ các phần tử
cha. Điều này cho phép áp dụng một hệ thống kiểu mạnh mẽ và linh hoạt một cách thống nhất trên toàn bộ website.
3. Mô hình hộp (Box Model)
Mô hình hộp là một khái niệm cơ bản trong CSS, mô tả cách các phần tử được sắp xếp trên một trang web.
Mỗi phần tử HTML đều được xem là một “hộp”, bao gồm các thuộc tính như content (nội dung), padding
(khoảng đệm), border (viền) và margin (lề). Việc hiểu mô hình hộp là rất quan trọng để tạo bố cục và định
vị các đối tượng trên trang web.
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064 4. Kiểu chữ (Typography)
CSS cung cấp nhiều cách để tùy chỉnh văn bản trên một trang web. Điều này bao gồm các thuộc tính dùng
để điều chỉnh chiều cao dòng, độ đậm chữ, họ phông chữ, kích thước chữ và nhiều yếu tố khác. Bằng cách
sử dụng CSS, các lập trình viên có thể tạo ra văn bản dễ đọc và đẹp mắt, giúp cải thiện trải nghiệm người dùng tổng thể.
5. Màu sắc và nền (Colors and Backgrounds)
CSS cho phép các lập trình viên kiểm soát màu sắc của các phần tử trên trang web. Điều này bao gồm màu
chữ, màu nền và màu viền. Ngoài ra, CSS còn cung cấp các tính năng như tạo màu chuyển (gradient), áp
dụng hình nền và xác định độ trong suốt bằng các phương pháp RGBA và HSLA.
6. Bố cục và định vị (Layout and Positioning)
CSS có nhiều thuộc tính được sử dụng để kiểm soát bố cục và vị trí của các phần tử. Điều này bao gồm
việc thiết lập kích thước của phần tử và kiểm soát luồng nội dung. CSS giúp tạo ra các website responsive,
cho phép người dùng xem cùng một website trên nhiều thiết bị khác nhau.
7. Hiệu ứng chuyển tiếp và hoạt ảnh (Transitions and Animations)
CSS cung cấp các công cụ mạnh mẽ để thêm tính tương tác và hoạt ảnh vào các trang web. Các thuộc tính
như transition và animation cho phép lập trình viên tạo ra các chuyển đổi mượt mà giữa các trạng thái và
thêm chuyển động động cho các thành phần. Điều này giúp nâng cao đáng kể trải nghiệm người dùng và
làm cho website trở nên hấp dẫn hơn.
8. Media Queries cho thiết kế responsive
Sự xuất hiện của nhiều loại thiết bị và kích thước màn hình khác nhau đã làm nảy sinh nhu cầu về thiết kế
web responsive. Với sự trợ giúp của media queries do CSS cung cấp, các lập trình viên có thể áp dụng các
kiểu khác nhau dựa trên chiều rộng, chiều cao và hướng của màn hình. Điều này đảm bảo rằng website
hoạt động tốt và hiển thị đẹp trên nhiều nền tảng khác nhau, bao gồm điện thoại di động và máy tính để bàn. JAVASCRIPT (JS) :
Javascript (JS) : Dùng để lập trình hành vi của các trang web. JS có thể thay đổi nội dung HTML, xử lý sự
kiện người dùng, và giao tiếp với server để cập nhật dữ liệu mà không cần tải lại trang.Thông qua các
phương thức HTTP như GET và POST, JavaScript có thể gửi và nhận dữ liệu với server. Mô ̣ t số thuô ̣c tính nổi bâ ̣t
Hỗ trợ trình duyệt (Browser Support)
 Tất cả các trình duyệt hiện nay đều hỗ trợ JavaScript, vì mọi trình duyệt hiện đại đều được tích hợp sẵn
môi trường thực thi JavaScript.
 Ngoài ra, có thể sử dụng đối tượng window để kiểm tra xem trình duyệt có hỗ trợ một tính năng
JavaScript cụ thể hay không.
Tương tác DOM (DOM Manipulation)
 JavaScript cho phép lập trình viên thao tác các phần tử trên trang web và kiểm soát trình duyệt.
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
 Ngôn ngữ này cung cấp nhiều phương thức để truy cập các phần tử DOM thông qua các thuộc tính
khác nhau, cho phép tùy chỉnh nội dung HTML một cách linh hoạt hoặc kiểm tra việc hỗ trợ một tính năng cụ thể.
Xử lý sự kiện (Event Handling)
 JavaScript cho phép xử lý các sự kiện nhằm tạo sự tương tác với trang web.
 Ví dụ: phát hiện thao tác nhấp chuột vào một phần tử HTML cụ thể và phản hồi lại hành động đó.
 Ngoài ra, JavaScript còn hỗ trợ nhiều sự kiện khác như cuộn trang, nhấn phím, thay đổi kích thước cửa sổ,
(Các loại sự kiện này sẽ được trình bày chi tiết trong chương “Sự kiện trong JavaScript”)
Kiểu động (Dynamic Typing)
 JavaScript xác định kiểu dữ liệu của biến tại thời điểm chạy (runtime).
 Do đó, lập trình viên không cần khai báo kiểu dữ liệu khi viết mã, giúp việc lập trình linh hoạt hơn.
 Một biến có thể được gán các giá trị thuộc kiểu dữ liệu khác nhau mà không gây lỗi.
Lập trình hàm (Functional Programming)
 JavaScript hỗ trợ các khái niệm lập trình hàm như:
o Hàm bậc nhất (first-class functions)
o Hàm thuần (pure functions)
o Closures và hàm bậc cao (higher-order functions)
o Arrow functions và function expressions
 Ngôn ngữ này thường sử dụng hàm như khối xây dựng chính để giải quyết vấn đề.
Hỗ trợ đa nền tảng (Cross-Platform Support)
 JavaScript được hỗ trợ trên mọi hệ điều hành và trình duyệt.
 Vì vậy, JavaScript được sử dụng rộng rãi trong phát triển website, ứng dụng di động, trò chơi và ứng dụng máy tính để bàn.
Lập trình hướng đối tượng (Object-Oriented Programming)
 JavaScript hỗ trợ lớp (class) và cho phép áp dụng đầy đủ các khái niệm của lập trình hướng đối tượng, bao gồm:
o Kế thừa (Inheritance)
o Trừu tượng (Abstraction)
o Đa hình (Polymorphism)
o Đóng gói (Encapsulation)
Đối tượng tích hợp sẵn (Built-in Objects)
 JavaScript cung cấp nhiều đối tượng tích hợp sẵn, ví dụ:
o Math: thực hiện các phép toán
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
o Date: xử lý thời gian và ngày tháng
Nguyên mẫu đối tượng (Object Prototypes)
 Trong JavaScript, hầu hết mọi thứ đều là đối tượng, chẳng hạn như: array, function, number, string, boolean, set, map, v.v.
 Mỗi đối tượng đều có một thuộc tính ẩn gọi là prototype, cho phép:
o Kế thừa chức năng giữa các đối tượng
o Mở rộng tính năng của lớp hoặc đối tượng thông qua prototype
Đối tượng toàn cục (Global Object)
 JavaScript có đối tượng toàn cục cho phép truy cập các biến và hàm ở mọi nơi trong chương trình.
 Trong trình duyệt, đối tượng toàn cục là window.
 Trong môi trường Node.js, đối tượng toàn cục là global.
Phương thức tích hợp (Built-in Methods)
 JavaScript cung cấp nhiều phương thức tích hợp sẵn cho từng loại đối tượng, giúp mã nguồn ngắn gọn và hiệu quả.
 Đối tượng Array có các phương thức như:
o filter(): lọc phần tử trong mảng o sort(): sắp xếp mảng
 Đối tượng String có các phương thức như:
o replace(): thay thế văn bản
o trim(): loại bỏ khoảng trắng thừa
Lập trình mô-đun (Modular Programming)
 JavaScript cho phép chia mã nguồn thành nhiều mô-đun và liên kết chúng với mô-đun chính.
 Điều này giúp mã nguồn dễ bảo trì, dễ tái sử dụng và giảm độ phức tạp của chương trình.
JSON (JavaScript Object Notation)
 JSON là định dạng dữ liệu phổ biến dùng để trao đổi thông tin giữa các hệ thống, ví dụ giữa máy chủ và trình khách.
 JavaScript hỗ trợ đầy đủ JSON để lưu trữ và truyền tải dữ liệu.
Lập trình bất đồng bộ (Asynchronous Programming)
 JavaScript là ngôn ngữ đơn luồng (single-threaded), nhưng có thể xử lý nhiều tác vụ cùng lúc nhờ lập trình bất đồng bộ.
 Nhờ kiến trúc hướng sự kiện (event-driven architecture), JavaScript cho phép xây dựng các ứng dụng
web tương tác cao, phản hồi nhanh và xử lý đồng thời nhiều người dùng.
Hỗ trợ phía máy chủ (Server-side Support)
 Môi trường Node.js cho phép JavaScript được sử dụng để phát triển backend.
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
 Nhờ đó, JavaScript có thể dùng để tạo máy chủ web và xây dựng các hệ thống backend có khả năng mở rộng cao.
3. What is HOSTING? DOMAIN? Give Example. HOSTING DOMAIN
Web hosting là dịch vụ giúp website của bạn hiển thị Domain (tên miền) là một mạng lưới các máy tính và
trên Internet. Nó lưu trữ các tệp của website trên thiết bị được quản lý bởi một cơ quan hoặc tổ chức
những máy tính đặc biệt gọi là máy chủ (server) và duy nhất và tuân theo những quy định cụ thể. Cụ thể
cung cấp các tệp đó cho người truy cập khi họ nhập hơn, một domain được kiểm soát bởi một công ty
tên miền (domain name) của bạn.
nhất định, công ty này có sự hiện diện trên Internet và địa chỉ IP riêng. Ví dụ :
Domain được nhận diện thông qua tên miền, chẳng AWS (Amazon Web Services)
hạn như Webopedia hoặc www.webopedia.com.
https://aws.amazon.com: dịch vụ hosting và điện
toán đám mây do Amazon cung cấp.
Tên miền bao gồm hai thành phần chính:
 Tên miền cấp cao nhất (TLD – Top-Level Firebase Hosting (Google) Domain)
https://firebase.google.com: dịch vụ hosting của Là phần mở rộng của tên miền.
Google, thường dùng cho website và ứng dụng web. Dùng để xác định loại tổ chức hoặc mục đích của website.
Microsoft Azure – https://azure.microsoft.com
Ví dụ: .com, .org, .net, .edu, .gov, .vn, .tech
nền tảng cloud và hosting do Microsoft cung cấp.
 Tên miền cấp hai (SLD):
Là phần tên chính của website.
Thường đại diện cho thương hiệu, doanh nghiệp, dự án hoặc cá nhân.
Ví dụ :google, ctuavlab, aquanova, vnexpress
4. What is a gateway? The role of Gateway in the IoT System?
Gateway là bộ chuyển đổi giao thức nhằm kết nối hai mạng có giao thức truyền tin khác nhau có thể giao
tiếp qua lại với nhau. Thiết bị Gateway được ví như cửa ngõ ra vào của mạng, bởi vì tất cả dữ liệu đều phải
đi qua Gateway trước khi chuyển đến bộ định tuyến. Hầu hết trong mạng IP duy nhất chỉ có lưu lượng
truyền giữa các nút thuộc phân đoạn mạng cục bộ (mạng LAN) là không đi qua Gateway. Do đó mới có
các khái niệm Gateway Network và Default Gateway. Ưu điểm chính của Gateway là giúp đơn giản hóa
việc kết nối Internet cho thiết bị mạng, do đó bộ chuyển đổi giao thức này được sử dụng nhiều trong hệ
thống mạng cá nhân hoặc doanh nghiệp. Đối với các doanh nghiệp, nút mạng Gateway có thể đóng vai trò
như một máy chủ Proxy (Proxy Server) và tường lửa (Firewall).
Gateway IoT: dạng gateway có vai trò kết nối bộ điều khiển, cảm biến, các thiết bị thông minh với đám
mây lưu trữ. Trước khi gửi dữ liệu đi, các cảm biến từ trong môi trường IoT đều phải xử lý dữ liệu và
chuyển đổi giao thức cho phù hợp với bên tiếp nhận
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
5.Read “IoT Solution for Smart City” and answer these questions:
a. What does a smart city may involve? b. What can be measured?
c. Applications of IoT technology for smart cities. Solution
a. Dựa vào hình Smart Cities IoT Solutions, smart city có thể bao gồm:  Environmental monitoring  Smart tourism  Urban mobility  Urban green areas b. What can be measured?
Môi trường & chất lượng không khí:
• CO (Carbon monoxide), CO2, NO2,) • PM1, PM2.5,
• Nhiệt độ, độ ẩm, áp suất khí quyển - Âm thanh & tiếng ồn
• Đo mức tiếng ồn dBA để theo dõi ô nhiễm âm thanh đô thị -Giao thông & vị trí di động
• GPS, tốc độ, vị trí xe buýt, dữ liệu hành trình phương tiện công cộng -Khác (tùy ứng dụng)
• Mức độ rác trong thùng, tình trạng công trình (vết nứt, rung động)
• Mức độ bãi đỗ xe, lưu lượng giao thông, độ phủ Wi-Fi/Bluetooth
c. Applications of IoT technology for smart cities.
 Giám sát môi trường: theo dõi chất lượng không khí, ô nhiễm, tiếng ồn, nhiệt độ, độ ẩm theo thời gian thực.
 Giao thông thông minh: quản lý lưu lượng xe, phát hiện ùn tắc, tối ưu đèn giao thông và thời gian di chuyển.
 Quản lý năng lượng & tiện ích: giám sát tiêu thụ điện, nước, tối ưu hiệu suất năng lượng của các tòa nhà.
 Quản lý rác thải: theo dõi mức đầy thùng rác, tối ưu lộ trình thu gom.
 Y tế & an toàn công cộng: theo dõi sức khỏe, cảnh báo rủi ro môi trường, hỗ trợ dịch vụ khẩn cấp.
 Quản lý đô thị thông minh: hỗ trợ ra quyết định, nâng cao hiệu quả vận hành và chất lượng sống của người dân.
5. What is MQTT? ( Định nghĩa, đặc điểm, ứng dụng) Định Nghĩa :
MQTT (Message Queuing Telemetry Transport) là một giao thức gởi dạng publish/subscribe sử dụng
cho các thiết bị Internet of Things với băng thông thấp, độ tin cậy cao và khả năng được sử dụng trong
mạng lưới không ổn định.
Bởi vì giao thức này sử dụng băng thông thấp trong môi trường có độ trễ cao nên nó là một giao thức
lý tưởng cho các ứng dụng M2M Đặc điểm: Gọn nhẹ và Hiệu quả: •
Tiêu đề (header) bản tin rất nhỏ (tối thiểu chỉ 2 byte).
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
Yêu cầu tài nguyên tối thiểu, tiêu thụ rất ít năng lượng (pin), phù hợp với các vi điều khiển nhỏ. •
Thích ứng tốt với mạng hạn chế: •
Được thiết kế cho mạng có băng thông thấp, độ trễ cao và không ổn định (như mạng di động, vệ tinh). •
Có khả năng kết nối lại nhanh chóng.
Cơ chế hoạt động (Publish/Subscribe): •
Tách biệt hoàn toàn bên gửi và bên nhận về không gian (không cần biết IP của nhau), thời gian
(không cần online cùng lúc) và quá trình đồng bộ. •
Sử dụng một thành phần trung gian gọi là Broker (Trình truyền tải) để điều phối tin nhắn. •
Độ tin cậy cao (QoS - Quality of Service): Cung cấp 3 mức độ tin cậy để đảm bảo gửi tin: •
QoS 0: Gửi nhiều nhất 1 lần (không bảo đảm, giống "đem con bỏ chợ"). •
QoS 1: Gửi ít nhất 1 lần (đảm bảo tới nơi nhưng có thể bị lặp). •
QoS 2: Gửi chính xác 1 lần (đảm bảo nhất, không lặp, quy trình 4 bước). Các tính năng hỗ trợ: •
Retain: Lưu lại tin nhắn cuối cùng cho người đăng ký mới. •
LWT (Last Will and Testament): Thông báo khi thiết bị bị ngắt kết nối đột ngột (ngoại tuyến). •
Bảo mật: Hỗ trợ mã hóa SSL/TLS, xác thực bằng OAuth hoặc chứng chỉ. Ứng dụng:
Mạng xã hội và tin nhắn: •
Facebook Messenger: Đây là ví dụ điển hình nhất. Facebook sử dụng MQTT cho ứng dụng
Messenger trên điện thoại vì nó tiết kiệm pin và băng thông, giúp tin nhắn được gửi/nhận nhanh chóng ngay cả khi mạng yếu. •
Nhà thông minh (Smart Home): Giám sát nhiệt độ, điều khiển ánh sáng, trạng thái các thiết bị trong nhà nhiều tầng.
Ứng dụng trong Công nghiệp (Industrial IoT) •
Ngành Dầu khí: Đây là nơi MQTT được sinh ra (năm 1999). Các kỹ sư dùng nó để giám sát các
đường ống dẫn dầu từ xa thông qua kết nối vệ tinh (nơi có băng thông cực thấp và đắt đỏ). •
Giao tiếp M2M (Machine to Machine): Cho phép các máy móc tự giao tiếp với nhau hoặc gửi
dữ liệu về trung tâm mà không cần con người can thiệp. Các thiết bị IoT khác •
Thiết bị đeo (Wearables): Đồng hồ thông minh, vòng đeo tay sức khỏe (cần tiết kiệm pin tối đa). •
Cảm biến thông minh (Smart Sensors): Các cảm biến đo đạc môi trường, thời tiết gửi dữ liệu về đám mây. •
Nông nghiệp/Quan trắc: Các thiết bị đặt ở nơi xa xôi, dùng pin và mạng không ổn định. Hình ảnh nhóm 01
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064
CƠ SỞ VÀ ỨNG DỤNG IOTS - ITFA436064