Đề tài “Thiết kế và chế tạo máy huyết áp truyền dữ liệu không dây ứng dụngcông nghệ IoT.” cho phép người bệnh có thể đo để kiểm tra tình trạng huyết áp củamình, bao gồm các thông số như: huyết áp tâm thu (mức huyết áp cao), huyết tâmtrương (mức huyết áp thấp) và nhịp tim. Các số liệu đo được sẽ được lưu trữ dướidạng database, căn cứ vào các số liệu này thì hệ thống tiếp nhận sẽ gửi đến bộ phậngiám sát tình hình sức khỏe để điều động bác sĩ đến để có thể kịp thời chữa trị chobệnh nhân.Nội dung của đồ án nhóm sẽ đi sâu vô tìm hiểu về các thông số của huyết áp,cách đo huyết áp, cách truyền nhận dữ liệu giữa vi điều khiển trên Module ESP8266,tìm hiểu cách tạo ra giao diện của một trang web, lấy các thông tin đó để hiển thị trênweb.Kết quả nhóm đạt được sau khi thực hiện đề tài đó là thiết kế được máy đo huyếtáp bao gồm các thông số đã nêu trên, khối hiển thị các thông số rõ ràng, dễ quan sát.Tạo được một giao diện web thân thiện với người dùng, hiển thị được các thông sốsau khi đo được.
Trang 2BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH o0o
Chuyên ngành: Điện tử công nghiệp Mã ngành: 141
I TÊN ĐỀ TÀI: THIẾT KẾ VÀ CHẾ TẠO MÁY HUYẾT ÁP TRUYỀN DỮ
LIỆU KHÔNG DÂY ỨNG DỤNG CÔNG NGHỆ IoT
II NHIỆM VỤ
1 Các số liệu ban đầu:
Đối tượng nghiên cứu về máy đo huyết áp, công nghệ không dây Kiến thức cơ bản về ESP8266, LCD, kiến thức lập trình cho vi điều khiển, các ngôn ngữ để viết web
2 Nội dung thực hiện:
Thiết kế máy đo huyết áp cho bệnh nhân dùng công nghệ không dây gồm: tìm hiểu các phương pháp đo huyết áp, các bệnh về huyết áp, cách truyền dữ liệu không dây giữa các Module ESP với nhau, thiết kế giao diện các trang web, thiết kế thi công
mô hình, viết chương trình điều khiển, viết báo cáo
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 28/12/2019
V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS Nguyễn Thanh Tâm
Trang 3BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y
Gặp GV bộ môn để nghe phổ biến yêu cầu làm đồ
án, nhận giấy giới thiệu làm đồ án Gặp GVHD để chọn đề tài
- Tìm hiểu về cách đo huyết áp
- Các phương pháp đo huyết áp
Tuần 4
(23/09 – 29/09)
- Mô phỏng hoạt động cơ bản trên altium
- Kết nối các Module ngoài thực tế để xem hoạt động
Trang 4(14/10 – 20/10) - Kiểm tra mạch chạy đúng theo yêu cầu
- Lên ý tưởng thiết kế giao diện cho trang web và
thống nhất các nội dung sẽ hiển thị lên web
Trang 5(16/12 – 22/12) - Chuẩn bị cho ngày bảo vệ
GV HƯỚNG DẪN
ThS Nguyễn Thanh Tâm
Trang 6Đề tài đồ án tốt nghiệp này là do chính nhóm chúng em thực hiện trong suốt học
kỳ Trong quá trình thực hiện nhóm đã tham khảo một số tài liệu trước đó để có thêm thông tin và kiến thức để phục vụ cho việc làm đề tài Nhóm cam kết không sao chép bất kỳ nội dung ở các tài liệu khác Nếu có sự gian lận trong việc làm đề tài thì nhóm xin chịu trách nhiệm theo quy định
Họ tên sinh viên 1
Lê Minh Nhựt
Họ tên sinh viên 2
Trần Thanh Thái
Trang 7LỜI CẢM ƠN
Nhóm xin gửi lời cảm ơn chân thành đến thầy Nguyễn Thanh Tâm giảng viên hướng dẫn của nhóm trong việc thực hiện đồ án tốt nghiệp học kỳ này Nhờ sự chỉ dẫn tận tình, vạch ra hướng đi cũng như những nhận xét kịp thời khi chúng em thực hiện sai yêu cầu nên nhóm có thể kịp thời sửa chữa, tìm kiếm và tìm hiểu rõ hơn những lỗi sai và sửa lỗi của mình
Nhóm gửi lời cảm ơn đến toàn bộ các thầy cô đã giảng dạy chúng em trong suốt quá trình học tại trường Đặc biệt, là các giảng viên khoa Điện – Điện tử đã dạy bảo, chia sẻ các kiến thức về chuyên ngành để nhóm có thể áp dụng vô đồ án tốt nghiệp và cho công việc sau này của bản thân
Nhóm cũng cảm ơn đến bạn bè, anh chị đã có những chia sẻ, trao đổi kiến thức, kinh nghiệm thực tế của mọi người cho nhóm khi gặp khó khăn
Và cuối cùng là lời cảm ơn đến các bậc phụ huynh, người thân trong gia đình Nhờ sự quan tâm, ủng hộ và những lời động viên của mọi người đã giúp nhóm hoàn thành xong chương trình đại học để có những kiến thức vào đời
Xin chân thành cảm ơn!
Họ tên sinh viên 1
Lê Minh Nhựt
Họ tên sinh viên 2
Trần Thanh Thái
Trang 8TRANG BÌA………… ……… ……….i
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ii
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP iii
LỜI CAM ĐOAN vi
LỜI CẢM ƠN vii
MỤC LỤC viii
LIỆT KÊ HÌNH VẼ xi
LIỆT KÊ BẢNG xiii
TÓM TẮT xiv
Chương 1 TỔNG QUAN 1
1.1 ĐẶT VẤN ĐỀ 1
1.2 MỤC TIÊU 2
1.3 NỘI DUNG NGHIÊN CỨU 2
1.4 GIỚI HẠN 2
1.5 BỐ CỤC 2
Chương 2 CƠ SỞ LÝ THUYẾT 4
2.1 TÌM HIỂU VỀ HUYẾT ÁP 4
2.1.1 Huyết áp là gì? 4
2.1.2 Các chỉ số về huyết áp và nhịp tim 4
2.1.3 Cách kiểm tra tình trạng huyết áp 6
2.2 GIỚI THIỆU VỀ ARDUINO 7
2.2.1 Tổng quan về Arduino 7
2.2.2 Giới thiệu Arduino UNO R3 8
2.2.3 Giới thiệu Arduino Nano 10
2.3 GIỚI THIỆU VỀ MODULE ESP8266 16
2.3.1 Thông số phần cứng 16
2.3.2 Sơ đồ chân của Module ESP8266 17
2.3.3 Giới thiệu về Module ESP8266 NodeMCU 17
2.4 GIỚI THIỆU VỀ CẢM BIẾN ÁP SUẤT 20
2.5 GIỚI THIỆU VỀ LCD 1602 20
2.5.1 Thông số kỹ thuật 21
Trang 92.6.2 Một số dịch vụ mà Firebase cung cấp 24
2.7 GIỚI THIỆU VỀ NGÔN NGỮ HTML 25
2.7.1 Khái quát về ngôn ngữ HTML 25
2.7.2 Các thẻ trong HTML 25
2.8 GIỚI THIỆU VỀ NGÔN NGỮ CSS 26
Chương 3 TÍNH TOÁN VÀ THIẾT KẾ 27
3.1 GIỚI THIỆU 27
3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG 27
3.2.1 Thiết kế sơ đồ khối hệ thống 27
3.2.2 Tính toán và thiết kế mạch 29
3.2.3 Sơ đồ nguyên lý của toàn mạch 36
3.3 THIẾT KẾ PHẦN MỀM 37
3.4 THIẾT KẾ GIAO DIỆN HIỂN THỊ CHO WEB 37
Chương 4 THI CÔNG HỆ THỐNG 38
4.1 GIỚI THIỆU 38
4.2 THI CÔNG HỆ THỐNG 38
4.2.1 Thi công bo mạch 38
4.2.2 Lắp ráp và kiểm tra 41
4.3 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH 42
4.4 LẬP TRÌNH HỆ THỐNG 44
4.4.1 Lưu đồ giải thuật 44
4.4.2 Phần mềm lập trình cho vi điều khiển 47
4.4.3 Cách tạo database trên Firebase: 52
4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 57
4.5.1 Viết tài liệu hướng dẫn sử dụng 57
4.5.2 Quy trình thao tác 58
Chương 5 KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 60
5.1 KẾT QUẢ 60
5.1.1 Kết quả phần cứng 60
5.1.2 Kết quả phần mềm 61
5.1.3 Kết quả chạy thực nghiệm 62
5.1.4 Kết quả thống kê 64
5.2 NHẬN XÉT VÀ ĐÁNH GIÁ 65
Trang 10Chương 6 KẾT LUẬN - HƯỚNG PHÁT TRIỂN 67
6.1 KẾT LUẬN 67
6.2 GIỚI HẠN CỦA ĐỀ TÀI 67
6.3 HƯỚNG PHÁT TRIỂN 68
TÀI LIỆU THAM KHẢO 69
PHỤ LỤC 70
Trang 11LIỆT KÊ HÌNH VẼ
Hình Trang
Hình 2-1: Máy đo huyết áp cơ 6
Hình 2-2: Cấu trúc phần cứng của Arduino Uno 8
Hình 2-3: Atmega328 dạng chân dán 10
Hình 2-4: Cấu trúc phần cứng của Arduino Nano 11
Hình 2-5: Sơ đồ chân của Arduino Nano 12
Hình 2-6: Sơ đồ chân của ESP8266EX 17
Hình 2-7: Cấu trúc phần cứng Module ESP8266 NodeMCU 18
Hình 2-8: Sơ đồ chân của Module ESP8622 NodeMCU 19
Hình 2-9: Sơ đồ chân của cảm biến áp suất 20
Hình 2-10: Hình ảnh màn hình hiên thị của LCD 1602 21
Hình 2-11: Sơ đồ chân của LCD 1602 22
Hình 3-1: Sơ đồ khối tổng quan về đề tài 28
Hình 3-2: Khối điều khiển 29
Hình 3-3: Khối động cơ 30
Hình 3-4: Bộ khuếch đại DC 31
Hình 3-5: Bộ lọc băng tầng 32
Hình 3-6: AC coupling 33
Hình 3-7: Khối cảm biến 34
Hình 3-8: Khối hiển thị 34
Hình 3-9: Sơ đồ nối dây ESP8266 35
Hình 3-10: Sơ đồ nguyên lý toàn mạch của máy đo huyết áp 36
Hình 4-1: PCB Layout 38
Hình 4-2: Sơ đồ mạch in máy đo 39
Hình 4-3: Sơ đồ mạch in khối nút nhấn 39
Hình 4-4: Hình ảnh 3D của mạch sau khi hàn linh kiện 40
Hình 4-5: Khối thu nhập dữ liệu 42
Hình 4-6: Mô hình vỏ hộp của máy đo 43
Hình 4-7: Mô hình vỏ hộp và các phụ kiện liện quan 43
Trang 12Hình 4-10: Chương trình con phần “Gửi dữ liệu lên web” 47
Hình 4-11: Trang tải phần mềm Arduino IDE 48
Hình 4-12: Hình lựa chọn các dạng tải phần mềm 48
Hình 4-13: Giao diện làm việc của Arduino IDE 49
Hình 4-14: Hộp thoại Preferences đã thêm đường link vào ô Additional Board Manager URLs 50
Hình 4-15: Hộp thoại Boards Manager 51
Hình 4-16: Cửa sổ chọn Board và Port cho Module ESP-12E Node MCU 51
Hình 4-17: Giao diện của Firebase 52
Hình 4-18: Giao diện của Firebase sau khi đăng nhập 52
Hình 4-19: Bắt đầu làm việc với Firebase 53
Hình 4-20: Đặt tên cho Project 53
Hình 4-21: Project đã tạo xong 54
Hình 4-22: Giao diện của Project sau khi tạo xong 54
Hình 4-23: Bắt đầu tạo cơ sở dữ liệu 55
Hình 4-24: Tạo cơ sở dữ liệu 55
Hình 4-25: Tạo cơ sở dữ liệu 56
Hình 4-26: Cơ sở dữ liệu đã được tạo xong 56
Hình 4-27: Các bước vận hành hệ thống 58
Hình 5-1: Mô hình của máy đo huyết áp sau khi hoàn thành 60
Hình 5-2: Giao diện của trang web – Trang giới thiệu về đề tài 61
Hình 5-3: Giao diện của trang Web – Trang hiển thị dữ liệu 61
Hình 5-4: Màn hình hiển thị kết quả sau khi đo được 62
Hình 5-5: Kết quả sau khi đo được truyền lên Firebase 63
Hình 5-6: Kết quả được hiển thị trên Web 63
Trang 13Bảng Trang
Bảng 2-1: Các thông số kỹ thuật của Arduino Uno R3 9
Bảng 2-2: Các thông số kỹ thuật của Arduino Nano 11
Bảng 2-3: Chức năng của các chân Arduino Nano 13
Bảng 2-4: Chức năng các chân ICSP của Arduino Nano 14
Bảng 2-5: Chức năng các chân của LCD 16X2 22
Bảng 2-6: Các mẫu thẻ tag thường gặp trong HTML 25
Bảng 3-1: Giá trị điện áp, dòng điện của các linh kiện 35
Bảng 4-1: Danh sách các linh kiện 40
Bảng 5-1: Kết quả các lần đo thử nghiệm 64
Trang 14Đề tài “Thiết kế và chế tạo máy huyết áp truyền dữ liệu không dây ứng dụng
công nghệ IoT.” cho phép người bệnh có thể đo để kiểm tra tình trạng huyết áp của
mình, bao gồm các thông số như: huyết áp tâm thu (mức huyết áp cao), huyết tâm trương (mức huyết áp thấp) và nhịp tim Các số liệu đo được sẽ được lưu trữ dưới dạng database, căn cứ vào các số liệu này thì hệ thống tiếp nhận sẽ gửi đến bộ phận giám sát tình hình sức khỏe để điều động bác sĩ đến để có thể kịp thời chữa trị cho
bệnh nhân
Nội dung của đồ án nhóm sẽ đi sâu vô tìm hiểu về các thông số của huyết áp, cách đo huyết áp, cách truyền nhận dữ liệu giữa vi điều khiển trên Module ESP8266, tìm hiểu cách tạo ra giao diện của một trang web, lấy các thông tin đó để hiển thị trên web
Kết quả nhóm đạt được sau khi thực hiện đề tài đó là thiết kế được máy đo huyết
áp bao gồm các thông số đã nêu trên, khối hiển thị các thông số rõ ràng, dễ quan sát Tạo được một giao diện web thân thiện với người dùng, hiển thị được các thông số sau khi đo được
Trang 15Chương 1 TỔNG QUAN
Ngày nay cùng với sự tiến bộ của khoa học kỹ thuật, công nghệ điện tử đã và đang phát triển ngày càng rộng rãi Trong đó, đối với lĩnh vực y tế việc ứng dụng các sản phẩm công nghệ ngày càng trở nên phổ biến Chính vì vậy những dịch vụ, sản phẩm làm ra để đáp ứng nhu cầu cuộc sống của con người cũng ngày phải đa dạng, đảm bảo chất lượng cũng như số lượng để có thể làm hài lòng các bệnh nhân trong lĩnh vực chăm sóc y tế
Để bắt kịp được sự thay đổi đó thì các bệnh viện, trung tâm y tế… phải áp dụng các công nghệ kỹ thuật để có thể thuận lợi trong việc giám sát tình hình sức khỏe của bệnh nhân một cách nhanh nhất Việc ứng dụng các công nghệ như vậy cần xem xét, tính toán rất nhiều yếu tố như máy móc, thiết bị,… sao cho phù hợp với hoàn cảnh của từng bệnh viện để giảm bớt nguồn kinh phí không cần thiết nhưng vẫn đảm bảo tính xác về tình hình của bệnh nhân
Một trong những vấn đề quan tâm của bệnh nhân đó là tình trạng huyết áp Việc kiểm tra sức khỏe trong đó có tình trạng huyết áp được quan tâm rất nhiều Chúng ta có thể thấy mỗi bệnh viện, việc kiểm tra và theo dõi tình trạng huyết áp mất khá nhiều thời gian Việc cần quan tâm ở đây đó là bệnh nhân không có thể tự mình kiểm tra tình trạng huyết áp của mình mà không phải chờ đến bác sĩ Cuối mỗi lần làm kiểm tra bác sĩ phải ghi lại những thông số huyết áp của bệnh nhân bằng tay Việc làm như vậy tốn nhiều thời gian khiến cho bác sĩ không thể nào kiểm tra hết một loạt các bệnh nhân trong một ngày Đặc biệt đối với huyết áp thì cần phải được kiểm tra thường xuyên
Từ những vấn đề thực tế trên, nhóm em đề xuất xây dựng mô hình với đề tài
“Thiết kế và chế tạo máy huyết áp truyền dữ liệu không dây ứng dụng công nghệ IoT” Hệ thống này sử dụng module wifi ESP8266 để gửi các dữ liệu lên server thông
qua mạng không dây, dựa vào các thông số đo được sẽ giúp cho việc cảnh báo cho bác
sĩ khi phát hiện các vấn đề về sức khỏe
Trang 16 NỘI DUNG 1: Tìm hiểu về huyết áp, các thông số về huyết áp và cách đo huyết áp
NỘI DUNG 2: Thiết kế giao diện để giám sát tình trạng huyết áp của bệnh nhân
NỘI DUNG 3: Tìm hiểu cách đưa dữ liệu lên cơ sở dữ liệu thông qua ESP8266
NỘI DUNG 4: Thiết kế và thi công máy đo huyết áp, có màn hình hiển thị các thông số huyết áp sau khi đo được để đáp ứng được các yêu cầu của đề tài
NỘI DUNG 5: Viết chương trình tạo giao diện web, điều khiển cho vi điều khiển, nạp code và chạy thử nghiệm sản phẩm, chỉnh sửa và hoàn thiện hệ thống
NỘI DUNG 6: Đánh giá kết quả thực hiện
Với đề tài “Thiết kế và chế tạo máy huyết áp truyền dữ liệu không dây ứng dụng
công nghệ IoT” nhóm sẽ thiết kế và dừng lại ở các vấn đề sau:
Chỉ giới hạn đo 3 thông số: Huyết áp tâm thu, huyết áp tâm trương và nhịp tim
Độ chính xác của huyết áp 4mmHg, nhịp tim 2 bpm
Server chỉ có chức năng thu nhận, lưu trữ, và hiển thị dữ liệu
Trang web giám sát sẽ hiển thị các thông tin về huyết áp của bệnh nhân bao gồm các thông số đã nêu trên
Chương 1: Tổng quan
Trang 17Chương này đặt vấn đề dẫn nhập đến lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới hạn, thông số và bố cục của đồ án
Chương 2: Cơ sở lý thuyết
Nội dung chương 2 tập trung vào những lí thuyết để thực hiện đề tài bao gồm kiến thức về: Huyết áp, các thông số về huyết áp, Module ESP8266, các Module giao tiếp ngoại vi đáp ứng yêu cầu của đề tài Sử dụng công nghệ không dây Wi-Fi gửi dữ liệu và giao tiếp giữa các khối trong hệ thống với nhau Giới thiệu các ngôn ngữ để thiết kế một giao diện Webserver cơ bản
Chương 3: Tính toán và thiết kế
Chương 3 trình bày chi tiết các bước thiết kế phần cứng cũng như phần mềm, cùng với việc tính toán để phụ hợp với các chức năng của đề tài Các yêu cầu khi viết chương trình cho ESP8266, giao diện tiếp xúc người dùng và hiển thị thông tin trên Webserver
Chương 4: Thi công hệ thống
Nội dung chương 4 trình bày quá trình thi công phần cứng, thi công phần mềm Quá trình thi công PCB, lắp ráp, kiểm tra mạch
Chương 5: Kết quả - Nhận xét – Đánh giá
Chương này trình bày các kết quả đạt được sau khi hoàn thành hệ thống, đưa
ra nhận xét đánh giá về kết quả đạt được
Chương 6: Kết luận và hướng phát triển
Chương 6 nhóm đi đến kết luận hệ thống có đạt yêu cầu đặt ra hay không, cũng
như những giới hạn của đề tài và đưa ra hướng phát triển cho đề tài
Trang 18Chương 2 CƠ SỞ LÝ THUYẾT
Hiện nay các bệnh về huyết áp phổ biến nhất là: huyết áp cao và huyết áp thấp Nếu chỉ số huyết áp tăng quá cao có thể gây ra hiện tượng đột quỵ Nếu chỉ số này xuống quá thấp sẽ khiến người bệnh choáng váng Hầu hết bệnh nhân không nhận ra được huyết áp của mình bị bất thường Chính vì vậy người ta nhận định về bệnh huyết
áp là “kẻ giết người thầm lặng” Do đó, để bảo vệ sức khỏe của bản thân và gia đình chúng ta nên sớm tìm hiểu về huyết áp để có cách phòng tránh
2.1.1 Huyết áp là gì?
Theo định nghĩa từ các bác sĩ chuyên khoa, huyết áp chính là áp lực của máu cần thiết tác động lên thành của động mạch giúp đưa máu đi nuôi dưỡng toàn bộ cơ thể Lực co bóp của tim kết hợp với lực cản trong động mạch tạo nên huyết áp
Với người bình thường, chỉ số huyết áp ban ngày sẽ cao hơn ban đêm Chỉ số này hạ xuống mức thấp nhất vào khoảng 1 - 3 giờ sáng – lúc mà chúng ta đã ngủ rất say Huyết áp ở mức cao nhất vào khoảng 8 - 10 giờ sáng Ngoài ra, mỗi khi chúng ta vận động nhiều hay có cảm xúc mạnh thì huyết áp cũng tăng lên Ngược lại, khi ở trạng thái thư giãn thoải mái huyết áp sẽ hạ xuống.[1]
2.1.2 Các chỉ số về huyết áp và nhịp tim
Chỉ số huyết áp được xác định bằng 2 chỉ số là huyết áp tâm thu, huyết áp tâm trương và chúng được thể hiện dưới dạng tỉ số Huyết áp tâm thu là mức huyết áp cao nhất xảy ra khi tim co bóp Huyết áp tâm trương là mức huyết áp thấp nhất xảy ra giữa 1 nhịp tim (co bóp và thả lỏng)
Với người trưởng thành có sức khỏe bình thường, huyết áp tâm thu sẽ nằm dưới mức 120 mmHg, huyết áp tâm trương dưới 80 mmHg
Để xác định chính xác một người bị huyết áp cao hay huyết áp thấp cần phải dựa vào số liệu đo được trong nhiều ngày liên tiếp Do đó chúng ta cần đo huyết áp
Trang 19thường xuyên nhiều lần trong ngày và trong nhiều ngày Lúc đo cần phải ở trạng thái nghỉ ngơi ít nhất sau 5 phút ở tư thế nằm hoặc 1 phút ở tư thế đứng
a Huyết áp cao và những nguy hiểm khi bị cao huyết áp
Người bị coi là huyết áp cao khi mà chỉ số huyết áp tâm thu đo được lớn hơn mức 140 mmHg, còn chỉ số huyết áp tâm trương lớn hơn 90 mmHg Ngoài ra còn có hiện tượng người bệnh bị tiền cao huyết áp Lúc này chỉ số huyết áp tâm thu sẽ vào khoảng 120 - 139 mmHg, huyết áp tâm trương vào khoảng 80 - 89 mmHg
Huyết áp cao là bệnh thường gặp ở người cao tuổi Đây là nguyên nhân gây ra
tử vong hay các di chứng nặng nề như: liệt nửa người, suy tim, thiếu máu cơ tim, đột quỵ, phình động mạch, [2]
b Huyết áp thấp và những nguy hiểm khi bị huyết áp thấp
Để kết luận một người có bị bệnh huyết áp thấp hay không người ta căn cứ vào chỉ số huyết áp tâm thu dưới 90 mmHg
Khi bị huyết áp thấp người bệnh dễ bị tổn thương các cơ quan như : não, tim, thận, Ngoài ra, huyết áp thấp còn nguy hiểm tới tính mạng trong các trường hợp người bệnh đang lái xe hay làm việc trên cao.[3]
c Nhịp tim
Nhịp tim là số lần tim đập trên mỗi phút Nó phụ thuộc vào từng cá nhân, tuổi tác; trọng lượng cơ thể; trạng thái hoạt động như ngồi yên hay di chuyển; các bệnh lý mắc phải; các thuốc đang sử dụng, thậm chí nhiệt độ không khí cũng có thể ảnh hưởng tới nhịp tim Một yếu tố gắn liền với chúng ta hàng ngày và có tác động đến nhịp tim một cách rõ ràng, dễ nhận biết nhất đó chính là cảm xúc Khi chúng ta bị kích thích hay sợ hãi, vui mừng hay lo lắng đều có thể làm tăng nhịp tim
Nhịp tim khi nghỉ của một người trưởng thành khỏe mạnh dao động trong khoảng từ 60-100 nhịp/phút Nằm ngoài khoảng này được gọi là rối loạn nhịp tim Ngoại trừ một số trường hợp như trẻ nhỏ nhịp có thể trên 100 nhịp/phút hoặc các vận động viên, những người thường xuyên tập thể dục thể thao, nhịp có thể dưới 60 nhịp/phút nhưng tim vẫn bơm máu hiệu quả.[4]
Trang 202.1.3 Cách kiểm tra tình trạng huyết áp
Với mỗi loại máy đo huyết áp khác nhau thì sẽ có cách đo khác nhau Hiện nay, mặc dù có rất nhiều phương pháp đo huyết áp, tuy nhiên máy đo huyết áp cơ vẫn
là loại máy đo huyết áp cơ bản nhất và được đa số các bác sĩ khuyên dùng Vì vậy, nhóm xin trình bày cách đo của máy đo “huyết áp kế cơ”
Hình 2.1: Máy đo huyết áp cơ
Các bộ phận của máy đo huyết áp cơ:
- Tai nghe mạch đập, và có độ khuyếch đại âm thanh có lớn, để giúp ta nghe rõ mạch đập khi đo huyết áp
- Đồng hồ báo số đo huyết áp
- Quả bóp bằng chất liệu cao su, và có tác dụng bơm hơi vào vòng bít, thông qua
hệ thống ống dẫn cao su
- Vòng bít thì được làm bằng chất liệu vải, có độ bền cao
Cách kiểm tra huyết áp bằng máy đo huyết áp cơ: [5]
Trang 21- Cuộn dải băng nhẹ nhàng vừa đủ chặt vào cánh tay rồi cố định lại
- Dùng máy đo huyết áp sau khi cuộn dải băng xong mắc đồng hồ vào băng cuốn sao cho có thể nhìn thấy dễ dàng hoặc có thể đặt đồng hồ trên một mặt phẳng ở một
vị trí có thể nhìn rõ
- Vặn van bơm khí theo chiều kim đồng hồ, vặn vừa đủ để khi mở van dễ dàng
- Mắc ống nghe vào tai để tai ống nghe hướng về phía trước
- Đặt loa ống nghe lên trên động mạch cánh tay Dùng đầu ngón tay cái và ngón trỏ để giữ loa ống nghe, để cho toàn bộ bề mặt của loa ống nghe luôn luôn tiếp xúc với da bệnh nhân
- Bóp bóng bơm khí vào túi hơi cho đến khi không nghe thấy tiếng đập rồi bơm tiếp thêm 30mmHg nữa
- Mở van từ từ để xả hơi sao cho áp lực hạ dần với tốc độ 2 - 3mmHg/giây; đồng thời chú ý nghe tiếng đập của mạch và quan sát số đo trên mặt đồng hồ
- Ghi trị số huyết áp tâm thu khi nghe thấy tiếng đập đầu tiên sau khoảng thời gian im lặng Các tiếng đập sau to dần và rõ hơn trong khi vẫn tiếp tục xả hơi
- Ghi trị số huyết áp tâm trương khi nghe thấy tiếng đập cuối cùng
- Trong trường hợp từ khoảng thời gian nghe thấy tiếng đập đầu tiên đến khi nghe thấy tiếng đập sau cùng nếu nghe được tiếng đập có thay đổi rõ ràng về cường
độ thì phải ghi trị số của huyết áp vào thời điểm đó
- Xả hết khí trong túi hơi ra sau khi đã xác định được huyết áp tâm trương Có thể mở van để khí xả ra nhanh
Trang 22Phần cứng bao gồm một board mạch nguồn mở được thiết kế trên nền tảng vi
xử lý AVR Atmel 8bit, hoặc ARM, Atmel 32-bit,… Hiện phần cứng của Arduino có tất cả 6 phiên bản Tuy nhiên phiên bản thường được sử dụng nhiều nhất là Arduino Uno và Arduino Mega
Phần mềm để lập trình cho mạch Arduino là phần mềm IDE Đây là phần mềm
mã nguồn mở, và có thể được download từ trang web của Arduino: arduino.cc
Những ưu điểm đó là: rẻ, tương thích được với nhiều hệ điều hành, chương trình lập trình đơn giản, rõ ràng, dễ sử dụng, sử dụng mã nguồn mở và có thể kết hợp với nhiều module khác nhau
2.2.2 Giới thiệu Arduino UNO R3
Mạch Arduino Uno là dòng mạch Arduino phổ biến, hiện dòng mạch này đã
phát triển tới thế hệ thứ 3 nên được gọi là Mạch Arduino Uno R3
Arduino Uno R3 là dòng cơ bản, linh hoạt, thường được sử dụng cho người mới
bắt đầu, có cấu trúc chung bao gồm:
- Sử dụng vi điều khiển dựa trên chip ATmega168 hoặc Atmega328
- Có 14 chân dùng để đọc hoặc xuất bằng tín hiệu số Chúng chỉ có 2 mức điện
áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA
- Có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit (0 → 210-1)
để đọc giá trị điện áp trong khoảng 0V → 5V
- Sử dụng dao động thạch anh tần số dao động 16MHz
- Có một cổng kết nối bằng chuẩn USB để nạp chương trình vào bo mạch, một
chân cấp nguồn cho mạch và một nút RESET
Hình 2.2: Cấu trúc phần cứng của Arduino Uno
Trang 23a Thông số kỹ thuật của Arduino Uno R3:
Một vài thông số kỹ thuật của Arduino Uno R3 được trình bày trong bảng dưới đây:
Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)
b Khối xử lý trung tâm:
Arduino Uno R3 có khối xử lý trung tâm sử dụng IC AVR Atmega328
Trang 24+ Số timer: 3 timer gồm 2 timer 8-bit và 1 timer 16-bit
+ Số kênh xung PWM: 6 kênh (1timer 2 kênh)
2.2.3 Giới thiệu Arduino Nano
Arduino Nano là một bảng vi điều khiển thân thiện, nhỏ gọn, đầy đủ Arduino Nano nặng khoảng 7g với kích thước từ 1,8cm - 4,5cm Do được sử dụng chip dán ATmega328 nên có kích thước cực kì nhỏ gọn nhưng vẫn có đầy đủ sức mạnh của Arduino
Arduino Nano có chức năng tương tự như Arduino Duemilanove nhưng khác nhau về dạng mạch Arduino Nano được tích hợp vi điều khiển ATmega328P, giống như Arduino UNO Sự khác biệt chính giữa chúng là bảng UNO có dạng PDIP (Plastic Dual-In-line Package) với 30 chân còn Nano có sẵn trong TQFP (plastic quad flat pack) với 32 chân Trong khi UNO có 6 cổng ADC thì Nano có 8 cổng ADC Bảng Nano không có giắc nguồn DC như các bo mạch Arduino khác, mà thay vào đó có cổng mini-USB Cổng này được sử dụng cho cả việc lập trình và bộ giám
Trang 25sát nối tiếp Tính năng hấp dẫn của arduino Nano là nó sẽ chọn công xuất lớn nhất với hiệu điện thế của nó
Hình 2.4: Cấu trúc phần cứng của Arduino Nano
a Thông số kỹ thuật của Arduino Nano
Một vài thông số kỹ thuật của Arduino Nano được trình bày trong bảng dưới đây:
Trang 26b Sơ đồ chân của Arduino Nano
Hình 2.5: Sơ đồ chân của Arduino Nano
Chức năng của các chân Arduino Nano được liệt kê dưới bảng sau:
Trang 27Bảng 2.3: Chức năng của các chân Arduino Nano [8]
3 RESET Đầu vào Chân reset, hoạt động ở mức thấp
Trang 2823 A4 Đầu vào Kênh đầu vào tương tự kênh 4
đầu vào
+ Đầu ra 5V (từ bộ điều chỉnh On-board)
hoặc + 5V (đầu vào từ nguồn điện bên ngoài)
28 RESET Đầu vào Chân đặt lại, hoạt động ở mức thấp
MISO Đầu vào hoặc đầu ra Master In Slave Out
MOSI Đầu ra hoặc đầu vào Master Out Slave In
Các chân: 1, 2, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 và 16
Arduino Nano có 14 ngõ vào/ra digital Các chân làm việc với điện áp tối đa là 5V Mỗi chân có thể cung cấp hoặc nhận dòng điện 40mA và có điện trở kéo lên khoảng 20-50kΩ Các chân có thể được sử dụng làm đầu vào hoặc đầu ra, sử dụng các hàm pinMode (), digitalWrite () và digitalRead ()
Ngoài các chức năng đầu vào và đầu ra số, các chân này cũng có một số chức năng
bổ sung
Chân 1, 2: Chân nối tiếp
Trang 29Hai chân nhận RX và truyền TX này được sử dụng để truyền dữ liệu nối tiếp TTL Các chân RX và TX được kết nối với các chân tương ứng của chip nối tiếp USB tới TTL
Chân 13, 14, 15 và 16: Giao tiếp SPI
Khi chúng ta không muốn dữ liệu được truyền đi không đồng bộ, chúng ta có thể
sử dụng các chân ngoại vi nối tiếp này Các chân này hỗ trợ giao tiếp đồng bộ với SCK Mặc dù phần cứng có tính năng này nhưng phần mềm Arduino lại không có Vì vậy, chúng ta phải sử dụng thư viện SPI để sử dụng tính năng này
Chân 16: Led
Khi chúng ta sử dụng chân 16, đèn led trên bo mạch sẽ sáng
Chân 18, 19, 20, 21, 22, 23, 24, 25 và 26 : Ngõ vào/ra tương tự
Arduino Uno có 6 chân đầu vào tương tự nhưng Arduino Nano có 8 đầu vào tương
tự (19 đến 26), được đánh dấu A0 đến A7 Điều này có nghĩa là chúng ta có thể kết nối 8 kênh đầu vào tương tự để xử lý Mỗi chân tương tự này có một ADC có độ phân giải 1024 bit (do đó nó sẽ cho giá trị 1024) Theo mặc định, các chân được đo từ mặt đất đến 5V Nếu chúng ta muốn điện áp tham chiếu là 0V đến 3.3V, có thể nối với nguồn 3.3V cho chân AREF (pin thứ 18) bằng cách sử dụng chức năng analogReference () Tương tự như các chân digital trong Nano, các chân analog cũng
có một số chức năng khác
Chân 23, 24 như A4 và A5: chuẩn giao tiếp I2C
Khi giao tiếp SPI cũng có những nhược điểm của nó như cần 4 chân và giới hạn trong một thiết bị Đối với truyền thông đường dài, cần sử dụng giao thức I2C I2C
Trang 30hỗ trợ chỉ với hai dây Một cho xung (SCL) và một cho dữ liệu (SDA) Để sử dụng tính năng I2C này, chúng ta cần phải nhập một thư viện có tên là Thư viện Wire
2.3 GIỚI THIỆU VỀ MODULE ESP8266
ESP8266 là dòng chip tích hợp Wi-Fi 2.4Ghz có thể lập trình được, có giá thành rẻ được sản xuất bởi một công ty bán dẫn Trung Quốc: Espressif Systems
Được phát hành đầu tiên vào tháng 8 năm 2014, đóng gói đưa ra thị trường dạng Mô dun ESP-01, được sản xuất bởi bên thứ 3: AI-Thinker Có khả năng kết nối Internet qua mạng Wi-Fi một cách nhanh chóng và sử dụng rất ít linh kiện đi kèm Với giá cả có thể nói là rất rẻ so với tính năng và khả năng ESP8266 có thể làm được
ESP8266 có một cộng đồng các nhà phát triển trên thế giới rất lớn, cung cấp nhiều Module lập trình mã mở giúp nhiều người có thể tiếp cận và xây dựng ứng dụng rất nhanh
Hiện nay tất cả các dòng chip ESP8266 trên thị trường đều mang nhãn ESP8266EX, là phiên bản nâng cấp của ESP826[10]
2.3.1 Thông số phần cứng
- Hỗ trợ Flash ngoài từ 512KB đến 4MB
- Chuẩn wifi EEE 802.11 b/g/n, Wi-Fi 2.4 GHz Tích hợp giao thức TCP/IP
- Hỗ trợ nhiều loại anten
Trang 312.3.2 Sơ đồ chân của Module ESP8266
Hình 2.6: Sơ đồ chân của ESP8266EX
Ngày nay, trên thị trường có khá nhiều loại ESP8266 để phục vụ cho nhiều nhu cầu khác nhau, một số Module ESP8266 tiêu biểu như: ESP-01, ESP-02, ESP-
03, ESP-07, ESP-12F, … và một số Module mạch phát triển như: NodeMCU, Wemos,
…
Sau khi tìm hiểu thì nhóm đã chọn Module ESP8266 NodeMCU vì giá cả hợp
lý, rất dễ tìm và mua dễ dàng trên thị trưởng
Trang 32Hình 2.7: Cấu trúc phần cứng Module ESP8266 NodeMCU
a Thông số kỹ thuật
- WiFi: 2.4 GHz hỗ trợ chuẩn 802.11 b/g/n
- Điện áp hoạt động: 3.3V
- Điện áp vào: 5V thông qua cổng USB
- Số chân I/O: 11 (tất cả các chân I/O đều có Interrupt/PWM/I2C/One-wire, trừ chân D0)
- Số chân Analog Input: 1 (điện áp vào tối đa 3.3V)
Trang 33Hình 2.8: Sơ đồ chân của Module ESP8622 NodeMCU
Tất cả các GPIO đều có trở kéo lên nguồn bên trong (ngoại trừ GPIO16 có trở kéo xuống GND) Người dùng có thể cấu hình kích hoạt hoặc không kích hoạt trở kéo này
GPIO1 và GPIO3: hai GPIO này được nối với TX và RX của bộ UART0, NodeMCU nạp code thông qua bộ UART này nên tránh sử dụng 2 chân GPIO này
GPIO0, GPIO2, GPIO15: đây là các chân có nhiệm vụ cấu hình mode cho ESP8266 điều khiển quá trình nạp code nên bên trong NodeMCU (có tên gọi là strapping pins) có các trở kéo để định sẵn mức logic cho chúng như sau: GPIO0: HIGH, GPIO2: HIGH, GPIO15: LOW Vì vậy khi muốn sử dụng các chân này ở vai trò GPIO cần phải thiết kế một nguyên lý riêng để tránh xung đột đến quá trình nạp code
GPIO9, GPIO10: hai chân này được dùng để giao tiếp với External Flash của ESP8266 vì vậy cũng không thể dùng được[11]
Trang 342.4 GIỚI THIỆU VỀ CẢM BIẾN ÁP SUẤT
Trong đề tài này nhóm dùng cảm biến áp suất có tên là MPS20N0040D DIP6
Hình 2.9: Sơ đồ chân của cảm biến áp suất
2.5 GIỚI THIỆU VỀ LCD 1602
Trong đề tài này, nhóm chế tạo máy đo huyết áp nên phải có màn hình hiện thị kết quả cho người sử dụng sao cho dễ quan sát nhất Hiện nay LCD có rất nhiều loại khác nhau được phân biệt theo kích thước ví dụ: LCD 1602 nghĩa là có 2 hàng mỗi hàng gồm 16 kí tự và được nhóm sử dụng trong đề tài này
Trang 362.5.2 Chức năng chân của LCD 1602
Hình 2.11: Sơ đồ chân của LCD 1602
Chức năng của các chân được trình bày trong bảng sau:
Bảng 2.5 Chức năng các chân của LCD 1602
Chân số Tên chân Input/Output Chức năng tín hiệu
Thanh ghi lựa chọn tín hiệu RS=0 : Đưa LCD vào chế độ ghi lệnh RS=1 : Đưa LCD vào chế độ ghi dữ liệu (dữ liệu xuất lên màn hình)
5 R/W Input Đọc/Ghi H: read mode, L: write mode
Trang 3714 DB7 I/O Dữ liệu (MSB)
15 A/Vee Input 4,2V cho đầu ra điện áp LED/tiêu cực
2.6 GIỚI THIỆU VỀ FIREBASE
2.6.1 Tổng quan về Firebase
Firebase là một nền tảng phát triển ứng dụng di động và web Họ cung cấp rất nhiều công cụ và dịch vụ để phát triển ứng dụng chất lượng, rút ngắn thời gian phát triển và phát triển cơ sở người dùng mà không cần quan tâm đến hạ tầng phần cứng Firebase là sự kết hợp giữa nền tảng cloud với hệ thống máy chủ cực kì mạnh mẽ của Google Firebase cung cấp cho chúng ta những API đơn giản, mạnh mẽ và đa nền tảng trong việc quản lý, sử dụng database
Hỗ trợ cả 2 nền tảng Android và IOS, Firebase mạnh mẽ, đa năng, bảo mật và
là dịch vụ cần thiết đầu tiên để xây dựng ứng dụng với hàng triệu người sử dụng Sử dụng Firebase chúng ta sẽ có được hưởng các lợi ích sau:
- Xây dựng ứng dụng nhanh chóng mà không tốn thời gian, nhân lực để quản lý
hệ thống và cơ sơ sở hạ tầng phía sau: Firebase cung cấp cho chúng ta chức năng như phân tích, cơ sở dữ liệu, báo cáo hoạt động và báo cáo các sự cố lỗi để chúng ta có thể dễ dàng phát triển, định hướng ứng dụng của mình vào người sử dụng nhằm đem lại các trải nghiệm tốt nhất cho họ
- Uy tín chất lượng đảm bảo từ Google: Firebase được google hỗ trợ và cung cấp trên nền tảng phần cứng với quy mô rộng khắp thế giới, được các tập đoàn lớn và các ứng dụng với triệu lượt sử dụng từ người dùng
- Quản lý cấu hình và trải nghiệm các ứng dụng của Firebase tập trung trong một giao diện website đơn giản, các ứng dụng này hoạt động độc lập nhưng liên kết
dữ liệu phân tích chặt chẽ
Trong đề tài này, nhóm sử dụng Firebase để tạo nên một database để quản lý dữ liệu thu được Phần hướng dẫn tạo database trên Firebase sẽ được nhóm hướng dẫn
rõ ràng ở mục 3.3 trong chương 3
Trang 382.6.2 Một số dịch vụ mà Firebase cung cấp
Firebase cung cấp khá nhiều dịch vụ, sau đây nhóm xin giới thiệu một vài dịch
vụ nổi bật và hay được sử dụng nhất của Firebase
a Realtime Database:
Lưu trữ và đồng bộ dữ liệu người dùng thời gian thực, các ứng dụng hỗ trợ tính năng này có thể lưu trữ và lấy dữ liệu từ máy chủ trong tích tắc Các dữ liệu được lưu trữ trong hệ thống cơ sở dữ liệu hỗ trợ NoSQL và được đặt trên nền tảng máy chủ Cloud, dữ liệu được ghi và đọc với thời gian thấp nhất tính bằng mili giây Nền tảng này hỗ trợ đồng bộ hóa dữ liệu của người dùng kể cả khi không có kết nối mạng, tạo nên trải nghiệm xuyên suốt bất chấp tình trạng kết nối internet của người sử dụng
Reatime Database của Firebase hổ trợ: android, ios, web, c++, unity, và cảxamarin
b Crashlytics:
Hệ thống theo dõi và lưu trữ thông tin lỗi của ứng dụng đang chạy trên máy người dùng Các thông tin lỗi này được thu thập một các toàn diện và ngay tức thời Cách trình bày hợp lý với từng chu trình hoạt động đến khi xảy ra lỗi, các báo cáo trực quan giúp người phát triển có thể nắm bắt và xử lý kịp thời các lỗi chính của ứng dụng
c Cloud Firestore:
Lưu trữ và đồng bộ dữ liệu giữa người dùng và thiết bị – ở quy mô toàn cầu – sử dụng cơ sở dữ liệu noSQL được lưu trữ trên hạ tầng cloud Cloud Firestore cung cấp cho chúng ta tính năng đồng bộ hóa trực tuyến và ngoại tuyến cùng với các truy vấn
dữ liệu hiệu quả Tích hợp với các sản phẩm Firebase khác cho phép chúng ta xây dựng các ứng dụng thực sự ngay cả khi kết nối internet bị gián đoạn
d Authentication:
Quản lý người dùng một cách đơn giản và an toàn Firebase Auth cung cấp nhiều phương pháp để xác thực, bao gồm email và mật khẩu, các nhà cung cấp bên thứ ba như Google hay Facebook, và sử dụng trực tiếp hệ thống tài khoản hiện tại của chúng
ta Xây dựng giao diện của riêng chúng ta hoặc tận dụng lợi thế của mã nguồn mở, giao diện người dùng tùy biến hoàn toàn
Trang 392.7 GIỚI THIỆU VỀ NGÔN NGỮ HTML
2.7.1 Khái quát về ngôn ngữ HTML
Ngôn ngữ HTML (HyperText Markup Language – ngôn ngữ siêu văn bản) là
một trong các loại ngôn ngữ được sử dụng trong lập trình web Khi truy cập một trang web cụ thể là click vào các đường link, chúng ta sẽ được dẫn tới nhiều trang khác nhau, và các trang này được gọi là một tài liệu HTML (tập tin HTML)
Một trang HTML như vậy được cấu thành bởi nhiều phần tử HTML nhỏ và được quy định bằng các thẻ tag Chúng ta có thể phân biệt một trang web được viết bằng ngôn ngữ HTML hay PHP thông qua đường link của nó Ở cuối các trang HTML thường hay có đuôi là HTML hoặc HTM
HTML là ngôn ngữ lập trình web được đánh giá là đơn giản Mọi trang web, mọi trình duyệt web đều có thể hiển thị tốt ngôn ngữ HTML Hiện nay, phiên bản mới nhất của HTML là HTML 5 với nhiều tính năng tốt và chất lượng hơn so với các phiên bản HTML cũ
HTML giúp cấu thành các cấu trúc cơ bản trên một website (chia khung sườn,
bố cục các thành phần trang web) và góp phần hỗ trợ khai báo các tập tin kĩ thuật số như video, nhạc, hình ảnh
<head> Thẻ này đại diện cho đầu trang tài liệu mà có thể giữ các thẻ
HTML như <title>, <link> …
Trang 40<title> Thẻ <title> được sử dụng trong thẻ <head> chỉ tiêu đề tài liệu
<body> Thẻ này đại diện cho thân tài liệu và giữ các thẻ như <h1>,
<div>, <p> …
<h1> Thẻ tag này đại diện cho các tiêu đề trang
<p> Thẻ tag này đại diện cho định dạng các đoạn văn trong trang
web
2.8 GIỚI THIỆU VỀ NGÔN NGỮ CSS
CSS là từ viết tắt của Cascade Style Sheet, là ngôn ngữ giúp trình duyệt hiểu
được các thiết lập định dạng và bố cục cho trang web CSS cho phép chúng ta điều khiển thiết kế của nhiều thành phần HTML chỉ với duy nhất 1 vùng chọn CSS Điều này giúp giảm thiểu thời gian thiết kế và chỉnh sửa, khi chúng ta có thể tách biệt được cấu trúc (HTML) và định dạng (CSS)
CSS cho phép chúng ta đưa các thông tin định nghĩa thẻ thông qua nhiều con đường khác nhau Style có thể được quy định ở trong chỉ một thẻ HTML, được quy định trong 1 trang web hoặc ở trong một file CSS bên ngoài
Cú pháp cơ bản của CSS bao gồm 3 phần: vùng chọn (selector), thuộc tính (property) và giá trị (value)
Vùng chọn: là cách xác định các thẻ HTML dựa trên cấu trúc phân cấp của
HTML Vùng chọn có thể được tạo nên dựa trên nhiều yếu tố như định danh (id), tên lớp (class), quan hệ cha – con – hậu duệ…
Thuộc tính: là yếu tố chúng ta muốn thay đổi ở các thẻ HTML thuộc vùng
chọn
Giá trị: mỗi thuộc tính sẽ yêu cầu một giá trị khác nhau Đó có thể là 1 từ khóa
định sẵn (none, block), một tên màu hay mã màu (black, white, #000, #FFFFFF), hay một giá trị kích thước tính bằng px, em, rem, %