You are on page 1of 35

ĐẠI HỌC QUỐC GIA TP.

HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ
---------------o0o---------------

ĐỒ ÁN 1 ( KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG )

NHẬN DẠNG HÀNH ĐỘNG NGƯỜI BẰNG CẢM


BIẾN GIA TỐC
GVHD: HÀ HOÀNG KHA
SINH VIÊN THỰC HIỆN :

STT Họ và tên MSSV Điểm Ghi chú


1 Võ Minh Đức 1913179
2 Tống Trần Thái Anh 1912618

TP. HỒ CHÍ MINH, THÁNG 4 NĂM 2022


Lời cảm ơn GVHD:

LỜI CẢM ƠN
Để hoàn thành đồ án 1 này trước hết em xin gửi đến quý thầy, cô giáo trong
khoa Điện – Điện tử trường Đại học Bách khoa – DHQG Thành phố Hồ Chí Minh lời
cảm ơn chân thành.

Đặc biệt, em xin gửi đến thầy Hà Hoàng Kha, người đã tận tình hướng dẫn,
giúp đỡ em hoàn thành đồ án lời cảm ơn sâu sắc nhất.

Vì kiến thức chuyên ngành còn nhiều hạn chế, trong quá trình thực hiện đồ án
này em không thể tránh khỏi những sai sót, kính mong nhận được sự góp ý từ thầy !

Trận trọng.

Tp. Hồ Chí Minh, tháng 5 năm 2022 .


Sinh viên

i
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

TÓM TẮT ĐỒ ÁN

Nhận dạng hoạt động người (Human Activity Recognition - HAR) là quá trình giám
sát và phân tích hành vi người dùng và trạng thái môi trường xung quanh nhằm suy diễn/nhận
dạng các hoạt động đang xảy ra. Nhận dạng hoạt động người không những là chủ đề nghiên
cứu quan trọng trong tính toán nhận biết ngữ cảnh mà còn là chủ để cho rất nhiều lĩnh vực
khác như tính toán khắp nơi, tương tác người - máy hay tính toán di động. Một trong những
mục tiêu của nhận dạng hoạt động là cung cấp thông tin về hành vi của người dùng, từ đó cho
phép hệ thống tính toán chủ động hỗ trợ người dùng trong công việc.
Nhận dạng hoạt động sử dụng cảm biến mang trên người ứng dụng công nghệ cảm
biến có thể mang theo người để giám sát hành vi của người dùng. Dữ liệu cảm biến được thu
thập và sau đó được phân tích bằng cách sử dụng các kỹ thuật học máy và khai phá dữ liệu để
xây dựng các mô hình hoạt động người cũng như thực hiện nhận dạng mẫu. Trong phương
pháp này, các cảm biến có thể được gắn tại các vị trí khác nhau trên cơ thể người. Cảm biến
mang trên người là loại cảm biến gia tốc MPU 6050, do đó có khả năng thu thập nhiều loại
thông tin về hành vi người dùng.
Có rất nhiều ứng dụng hữu ích dựa trên nhận dạng hoạt động người, như các ứng dụng
trong y tế, trong công nghiệp, trong thể thao, giải trí, v.v. Để các ứng dụng này có thể phục vụ
cuộc sống con người trong thực tế, chúng phải hiện diện khắp mọi nơi và tại bất kỳ thời điểm
nào người dùng cần. Điều này có nghĩa là hệ thống phải truy cập được thông tin của người
dùng một cách liên tục. Hệ thống mang trên người có thể đáp ứng yêu cầu đó nhờ sử dụng các
cảm biến có khả năng thu thập thông tin người dùng mà không bị gián đoạn.
Đồ án này sẽ tập trung khai thác về nhận dạng hoạt động sử dụng cảm biến mang trên
người. Trước tiên, đồ án sẽ tìm hiểu loại cảm biến mang trên người, kiến trúc hệ thống nhận
dạng hoạt động sử dụng cảm biến mang trên người và một số phương pháp nhận dạng. Sau đó
luận án mô tả cách thức sử dụng cảm biến và kết hợp với các phương pháp học máy để thu
thập dữ liệu, mô hình hóa, học và nhận dạng hoạt động người dùng.
Phần tiếp theo đồ án sẽ trình bày cách thu thập, xử lý dữ liệu, phần cứng, phần mềm
và cách hoạt động của sản phẩm.

ii
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

MỤC LỤC

1. GIỚI THIỆU........................................................................................................................1

1.1 Tổng quan.....................................................................................................................1

1.2 Nhiệm vụ đề tài............................................................................................................2

1.3 Phân chia công việc trong nhóm..................................................................................3

2. TÌM HIỂU VỀ MPU 6050, NODE MCU VÀ THINGSPEAK..........................................4

2.1 Cảm biến gia tốc MPU 6050........................................................................................4

2.2 Node MCU...................................................................................................................5

2.3 Thingspeak...................................................................................................................8

3. THIẾT KẾ VÀ THỰC HIỆN PHẦN CỨNG...................................................................10

3.1 Yêu cầu thiết kế..........................................................................................................10

3.2 Phân tích thiết kế........................................................................................................10

4. THIẾT KẾ VÀ THỰC HIỆN PHẦN MỀM ....................................................................13

4.1 Gửi dữ liệu lên Thingspeak và tải xuống...................................................................13

4.2 Lấy dữ liệu về từ thingspeak sau đó sử dụng python để dự đoán hành động............16

5. KẾT QUẢ THỰC HIỆN...................................................................................................23

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

6.1 Kết luận......................................................................................................................28

6.2 Hướng phát triển........................................................................................................28

7. TÀI LIỆU THAM KHẢO.................................................................................................29

iii
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

DANH SÁCH HÌNH MINH HỌA

Hình 1: MPU 6050................................................................................................................................5

Hình 2: NodeMCU ESP 8266...............................................................................................................7

Hình 3: Website Thingspeak.................................................................................................................9

Hình 4: Sơ đồ khối phần cứng..............................................................................................................11

Hình 5: Mô hình sơ đồ đấu nối dây......................................................................................................12

Hình 6: Giao diện của website Thingspeak..........................................................................................13

Hình 7: Cài đặt một channel trên Thingspeak.......................................................................................13

Hình 8: Write API Keys và Real API Keys của một channel Thingspeak............................................14

Hình 9: Mục Data Import/Export của Thingspeak................................................................................15

Hình 10: Dữ liệu được tải về từ Thingspeak.........................................................................................15

Hình 11: Giao diện PyCharm...............................................................................................................17

Hình 12: Import các thư viện................................................................................................................18

Hình 13: File huấn luyện......................................................................................................................18

Hình 14: Data huấn luyện.....................................................................................................................19

Hình 15: Data dự đoán hành động........................................................................................................19

Hình 16: Cây quyết định.......................................................................................................................20

Hình 17: Vị trí đặt cảm biến trên cơ thể...............................................................................................22

Hình 18: Tư thế đứng...........................................................................................................................22

Hình 19: Tư thế ngồi............................................................................................................................23

Hình 20: Tư thế nằm.............................................................................................................................23

Hình 21: Tư thế đi bộ...........................................................................................................................24

Hình 22: Tư thế chạy bô.......................................................................................................................24

Hình 23: Hình ảnh thực tế của thiết bị..................................................................................................25

Hình 24: Các Field thu được sau khi tải dữ liệu lên Thingspeak..........................................................25

Hình 25: Biểu đồ Python trả về...........................................................................................................26

iv
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

DANH SÁCH BẢNG SỐ LIỆU


Bảng 1: Tần số các hoạt động..............................................................................................................26

v
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

1. GIỚI THIỆU

1.1 Tổng quan

Nhận dạng hoạt động người là quá trình giám sát và phân tích hành vi người dùng và
trạng thái môi trường xung quanh nhằm suy diễn/nhận dạng các hoạt động đang xảy ra . Một
trong những mục tiêu của nhận dạng hoạt động là cung cấp thông tin về hành vi của người
dùng, từ đó cho phép hệ thống tính toán chủ động hỗ trợ người dùng trong công việc .

Nhận dạng hoạt động sử dụng cảm biến mang trên người là một hướng tiếp cận hiệu
quả với chi phí thấp cho thu thập dữ liệu và nhận dạng về các hoạt động của con người, nhờ
vào công nghệ cảm biến gắn trên người. Hướng nghiên cứu này gần đây thu hút được nhiều
sự quan tâm của cộng đồng nghiên cứu do những nhu cầu cấp thiết về nhận dạng các hoạt
động người trong môi trường không hạn chế của cuộc sống hàng ngày. Thêm vào đó, sự tiến
bộ không ngừng của công nghệ cảm biến đã tạo nên các cảm biến mang trên người mạnh mẽ,
có tính ứng dụng cao, giá rẻ, cho phép khả năng hoạt động liên tục không hạn chế. Nhờ khả
năng theo dõi các hoạt động từ góc nhìn của người dùng, cảm biến mang trên người cho phép
các ứng dụng nhận dạng hiện tại khắc phục được những hạn chế do môi trường hoạt động,
biến chúng trở thành các hệ thống trợ giúp thông minh cho con người mọi lúc mọi nơi.

Có nhiều loại hoạt động khác nhau tùy thuộc vào ứng dụng nhận dạng hoạt động
người. Tuy nhiên, về cơ bản thì hoạt động người có thể được chia làm hai loại, đó là hoạt
động mức thấp và hoạt động mức cao . Các hoạt động mức thấp bao gồm các hoạt động như
đi bộ, ngồi xuống, đứng lên,.... Đây là các hoạt động đặc trưng bởi chuyển động cơ thể, tư thế
hoặc cách sử dụng vật dụng, thông thường kéo dài chỉ trong vài giây hay vài phút. Thậm chí
chúng có thể chỉ tồn tại trong thời gian nhỏ hơn với các chuyển động cơ thể riêng biệt và
ngắn gọn, ví dụ như một bước đi hoặc đong đưa một cái vợt hay một cử chỉ như gập cánh tay.
Ngược lại, hoạt động mức cao thường gồm một tập hợp các hoạt động mức thấp và diễn ra
trong thời gian dài hơn như đi bộ , chạy bộ. Các hoạt động này có thể kéo dài vài phút hoặc
nhiều giờ đồng hồ.

Đồ án này chủ yếu nghiên cứu tập trung về các hành động: Đứng, ngồi, nằm, đi bộ,
chạy bộ. Dữ liệu sẽ được lấy bằng cách gắn cảm biến vào cổ chân người, sau đó dữ liệu sẽ
được gửi lên web server ( Thing speak), ở đây chúng ta có thể quan sát biểu đồ thay đổi của
các chỉ số cần thu thập, sau đó lấy data về máy và cho vào máy học để xử lý và phán đoán

1
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

các hành động. Sau khi phán đoán các hành động, chúng ta sẽ tổng hợp lại tất cả các data thu
thập được sẽ là hành động gì, sau đó so sánh cùng với một lượng data của một người bình
thường, xem người đang được phân tích sẽ hoạt động nhiều, hoạt động ít hay không hoạt
động.

1.2 Nhiệm vụ đề tài

Nhiệm vụ của đồ án là nghiên cứu đề xuất một số phương pháp học máy nhằm tăng
cường hiệu năng cho các hệ thống nhận dạng hoạt động sử dụng cảm biến mang trên người,
cụ thể là đề xuất các phương pháp trích xuất đặc trưng mới và hiệu quả cho nhận dạng hoạt
động. Đặc biệt, nghiên cứu tập trung vào hai mục tiêu:

- Nghiên cứu và đề xuất phương pháp trích xuất đặc trưng có tốc độ nhanh cho các ứng
dụng nhận dạng một số hoạt động riêng lẻ, sử dụng cảm biến mang theo người với
yêu cầu về thời gian thực. Các hệ thống nhận dạng hoạt động trên thiết bị nhúng như
các hệ thống hỗ trợ người dùng thông minh mang trên người và có yêu cầu hoạt động
theo thời gian thực cần các phương pháp trích xuất đặc trưng có khả năng tính toán
nhanh nhưng vẫn phải đảm bảo độ chính xác cần thiết. Để có thể đáp ứng được yêu
cầu này trong trường hợp tổng quát là vô cùng khó khăn. Phương pháp đề xuất sẽ giải
quyết vấn đề đặt ra cho một lớp các ứng dụng nhận dạng hoạt động, đó là những ứng
dụng nhận dạng một số hoạt động riêng lẻ.
- Nghiên cứu và đề xuất phương pháp trích xuất đặc trưng giúp nâng cao độ chính xác
cho hệ thống cần nhận dạng cho nhiều loại hoạt động. Các hệ thống nhận dạng hoạt
động phổ biến thường có một hạn chế dễ nhận thấy là khi số lượng hoạt động cần
nhận dạng càng nhiều thì độ chính xác của hệ thống càng giảm. Phương pháp đề xuất
sẽ giải quyết được hạn chế này.

Các mục tiêu liệt kê trên đây cũng mô tả phạm vi và đối tượng nghiên cứu của luận án.
Đó là sử dụng các phương pháp học máy để nghiên cứu và đề xuất các phương pháp trích
xuất đặc trưng mới trong các hệ thống nhận dạng hoạt động sử dụng cảm biến mang trên
người. Các phương pháp trích xuất đặc trưng này có thể phù hợp với các hệ thống trợ giúp cá
nhân thông minh nhỏ gọn mang theo người, năng lực xử lý thấp và yêu cầu hoạt động theo
thời gian thực, hoặc phù hợp với hệ thống cần nhận dạng nhiều hoạt động người phức tạp.
Các hoạt động con người bao gồm các hoạt động trong cuộc sống hàng ngày, các hoạt động
sản xuất, giải trí, thể thao, là các chuyển động của cơ thể có thể ghi nhận và phân biệt được
bằng các cảm biến mang trên người.

2
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Nôi dung 1: Tìm hiểu về cảm biến MPU6050, nodeMCU ESP 8266 và Thingspeak

Nội dung 2: Thiết kế và thực hiện phần cứng

Nội dụng 3: Thiết kế và thực hiện phần mềm

Nội dung 4: Thu thập, xử lý dữ liệu

Nội dung 5: Hoàn thiện sản phẩm

1.3 Phân chia công việc trong nhóm


Thành viên Công việc Chữ kí

Võ Minh Đức Gửi data lên web server và lấy


về máy
Tống Trần Thái Anh Machine learning

Họp nhóm 19h00, thứ ba, mỗi tuần

Qui tắc nhóm 1. Tham gia mọi buổi họp nhóm


2. Lắng nghe cẩn thận mọi ý kiến trong nhóm
3. Hoàn thành mọi tiến độ trước deadline
4. Chú trọng vào kết quả.
5. Không gây gổ, bất hòa
6. Tin tưởng lẫn nhau

3
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

2. TÌM HIỂU VỀ MPU6050, NODE MCU VÀ THINGSPEAK

2.1 Cảm biến gia tốc MPU 6050:

MPU-6050 là cảm biến của hãng InvenSense. MPU-6050 là một trong những giải pháp
cảm biến chuyển động đầu tiên trên thế giới có tới 6 (mở rộng tới 9) trục cảm biến tích hợp
trong 1 chip duy nhất.

MPU-6050 sử dụng công nghệ độc quyền MotionFusion của InvenSense có thể chạy trên
các thiết bị di động, tay điều khiển… Nó được điều hành ra một nguồn cung cấp 3.3V/5V, và
giao tiếp thông qua I2C với tốc độ tối đa 400kHz. Chip này cũng có sẵn trong một gói SPI
được gọi là MPU6000 cho tốc độ giao tiếp lên tới 10Mbs.

MPU-6050 tích hợp 6 trục cảm biến bao gồm:

+ Con quay hồi chuyển 3 trục (3-axis MEMS gyroscope)

+ Cảm biến gia tốc 3 chiều (3-axis MEMS accelerometer)

Ngoài ra, MPU-6050 còn có 1 đơn vị tăng tốc phần cứng chuyên xử lý tín hiệu (Digital
Motion Processor - DSP) do cảm biến thu thập và thực hiện các tính toán cần thiết. Điều này
giúp giảm bớt đáng kể phần xử lý tính toán của vi điều khiển, cải thiện tốc độ xử lý và cho ra
phản hồi nhanh hơn. Đây chính là 1 điểm khác biệt đáng kể của MPU-6050 so với các cảm
biến gia tốc và gyro khác.

MPU-6050 có thể kết hợp với cảm biến từ trường (bên ngoài) để tạo thành bộ cảm biến 9
góc đầy đủ thông qua giao tiếp I2C.Các cảm biến bên trong MPU-6050 sử dụng bộ chuyển
đổi tương tự - số (Anolog to Digital Converter - ADC) 16-bit cho ra kết quả chi tiết về góc
quay, tọa độ... Với 16-bit bạn sẽ có 2^16 = 65536 giá trị cho 1 cảm biến.

- Thông số chuyển động:

+ Có thể lựa chọn + -2/4 / 8 / 16g phạm vi gia tốc

+ Có thể lựa chọn + -250 / 500/1000/2000 độ /s phạm vi con quay hồi chuyển

+ 16 bit đầu ra

+ Con quay nhạy cảm của gia tốc tuyến tính 0.1 độ /s, một cải tiến lớn so với con quay
hồi chuyển trục tri của các công ty khác.

4
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

+ Tiếng ồn thấp trên cả hai kết quả đầu ra, xem thông số kỹ thuật

+ Tỷ lệ sản lượng dữ liệu lên đến 1000Hz, mặc dù được xây dựng bằng kỹ thuật số thấp
vượt qua bộ lọc có tần số góc tối đa là 256Hz.

- Chân giao tiếp của MPU 6050:

Hình 1: MPU 6050

+ VCC : 5V/ 3.3V

+ GND : 0V

+ SCL : Chân SCL trong giao tiếp I2C

+ SDA : Chân SDA trong giao tiếp I2C

+ XDA : Chân dữ liệu (kết nối với cảm biến khác)

+ XCL : Chân xung (kết nối với cảm biến khác)

+ AD0 : Bit0 của địa chỉ I2C

+ INT : Chân ngắt

- Ứng dụng:

Cảm biến gia tốc MPU 6050 được sử dụng rất nhiều trong các dự án hay sản phẩm liên
quan đến nhận dạng và chuyển động. Một số sản phẩm cụ thể có MPU 6050 như: Chuột ,
điều khiển từ xa, thiết bị không người lái, …

2.2 Node MCU:

5
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Khái niệm:Module ESP8266 là module wifi được đánh giá rất cao cho các ứng dụng liên
quan đến Internet và Wifi cũng như các ứng dụng truyền nhận sử dụng thay thế cho các
module RE khác với khoảng cách truyền lên tới 100 mét( Môi trường không có vật cản) trên
400m với anten và router thích hợp.

ESP8266 cung cấp một giải pháp kết nối mạng Wi-Ei hoàn chỉnh và khép kín, cho phép
nó có thể lưu trữ các ứng dụng hoặc để giảm tải tất cả các chức năng kết nối mạng Wi-Ei từ
một bộ xử lý ứng dụng.

Khi ESP8266 là máy chủ các ứng dụng hay khi nó chỉ là bộ vi xử lý ứng dụng có trong
thiết bị, nó có thể khởi động trực tiếp từ một flash ngoài. Nó có tích hợp bộ nhớ cache để cải
thiện hiệu suất của hệ thống trong các ứng dụng này và để giảm thiểu các yêu cầu bộ nhớ.

Luân phiên, phục vụ như một bộ chuyển đổi wifi, truy cập qua internet không dây có thể
được thêm vào bất kì thiết kế vi điều khiển nào dựa trên kết nối đơn giản qua giao diện
UART hoặc giao diện CPU AHB

Khả năng lưu trữ và xử lý mạnh mẽ cho phép nó được tích hợp với các bộ cảm biến, vi
điều khiển và các thiết bị ứng dụng cụ thể khác thông qua GPIOs với chi phí tối thiểu và một
PCB tối thiểu. Với mức độ tích hợp cao trên chip, trong đó bao gồm các anten, bộ chuyển đổi
banlun, bộ chuyển đổi quản lý điện năng…

- Thông số kỹ thuật:

+ IC chính: ESP8266

+ Phiên bản firmware: NodeMCU Lua

+ Chip nạp và giao tiếp UART: CP2102.

+ GPIO tương thích hoàn toàn với firmware Node MCU.

+ Cấp nguồn: 5VDC MicroUSB hoặc Vin.

+ GIPO giao tiếp mức 3.3VDC

+ Tích hợp Led báo trạng thái, nút Reset, Flash.

+ Tương thích hoàn toàn với trình biên dịch Arduino.

+ Kích thước: 25 x 50 mm

6
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

- Sơ đồ chân:

+ VCC: 3.3V

+ GND: Chân nối đất

+ Tx: Chân Tx của giao thức UART, kêt nối đến chân RX của vi điều khiển

+ Rx: Chân Rx của giao thức UART, kết nối đến chân Tx của vi điều khiển

+ RST: Chân reset

+ 10 chân GPIO từ D0 – D9, có chức năng PWM, IIC, giao tiếp SPI, 1 – Wire và ADC
trên chân A0

+ Kết nối mạng wifi

- Tính năng của NodeMCU ESP 8266:

+ Hỗ trợ chuẩn 802.11 b/g/n

+ Wifi 2.4 Ghz, hỗ trợ WPA/WPA2

+ Chuẩn điện áp hoạt động 3.3 V

+ Chuẩn giao tiếp UART với tốc độ Baud lên đến 115200

+ Tích hợp ngăn xếp giao thức TCP/IP

+ Tích hợp chuyển đổi TR, balun, LNA, bộ khuếch đại công suất và phù hợp với mạng

+ Tích hợp PLL, bộ quản lý và các đơn vị quản lý điện năng

+ Công suất đầu ra +19.5 dBm trong chế độ 802.11b

+ Tích hợp cảm biến nhiệt độ

+ Hỗ trợ nhiều loại anten

+ Làm việc như máy chủ có thể kết nối với 5 máy con

7
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Hình 2: NodeMCU ESP 8266

2.3 Thingspeak

Thingspeak là một nền tảng mà bạn có thể trực quan hóa và phân tích dữ liệu trên đám
mây. Nó là một sản phẩm Matlab và bạn có thể xử lý và phân tích dữ liệu trực tiếp từ đám
mây. Chủ yếu nó được sử dụng trong các dự án IoT cần phân tích để theo dõi những thay đổi
về giá trị cảm biến trên đám mây.

Để làm việc với thingspeak, bạn phải đăng nhập thông qua tài khoản Matlab, nó chỉ miễn
phí cho người dùng phi thương mại. Phiên bản miễn phí có một số giới hạn nhưng nếu bạn là
sinh viên hoặc thuộc bất kỳ cơ sở giáo dục nào thì bạn có thể có toàn quyền truy cập bằng
cách sử dụng email từ cơ sở của bạn.

- Các tính năng quan trọng của thingspeak:

+ Các thiết bị có thể dễ dàng định cấu hình và gửi dữ liệu tới Thingspeak bằng cách sử dụng
các giao thức truyền thông.

+ Có thể xem dữ liệu trong thời gian thực

+ Nó có thể nhận dữ liệu từ phần mềm của bên thứ ba.

+ Có thể sử dụng với Matlab để phân tích dữ liệu

+ Nó không cần server và phần mềm web để xây dựng prototype hệ thống IoT.

+ Tự động thực hiện các hành động và giao tiếp bằng phần mềm của bên thứ ba.

- Cách hoạt động của thingspeak:

8
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Thingspeak hoạt động với điện toán đám mây, tất cả các thiết bị mà bạn muốn lấy dữ liệu
phải nằm trong mạng với cơ sở dữ liệu đám mây. Thingspeak cũng kết nối với cơ sở dữ liệu
đám mây và hiển thị luồng dữ liệu.

Ví dụ bạn muốn theo dõi nhiệt độ và độ ẩm của phòng làm việc. Bạn phải đặt một bộ điều
khiển và các bộ cảm biến được thiết lập trong văn phòng của mình và kết nối nó thông qua
các API REST. Bộ điều khiển sẽ thu thập dữ liệu của cảm biến nhiệt độ và độ ẩm và gửi dữ
liệu đó lên đám mây để hiển thị trực quan trên Thingspeak.

Nó rất dễ sử dụng vì cho dù bạn ở đâu, bạn có thể kiểm tra tình trạng phòng của mình
thông qua điện thoại thông minh hoặc web chỉ bằng cách đăng nhập vào tài khoản
Thingspeak.

Hình 3: Website Thingspeak

9
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

3. THIẾT KẾ VÀ THỰC HIỆN PHẦN CỨNG

3.1. Yêu cầu thiết kế

Đưa ra kết quả là biểu đồ hoạt động đứng, nằm, ngồi, đi bộ, chạy bộ trong một ngày của
một người để người đó có thể quan sát tần suất hoạt động của mình từ đó đưa ra được mục
tiêu cho những ngày tiếp theo.

Thời gian lấy dữ liệu cho dự đoán là sau mỗi 15s, mỗi ngày sẽ có khoảng 4000 dữ liệu để
dự đoán.

Thiết kế nhỏ gọn, chiều dài không quá 7cm, chiều rộng không quá 4cm và bề dày không
quá 2cm, cấu trúc chắc chắn thuận tiện cho người dùng có thể tham gia các hoạt động thể
thao cũng như sinh hoạt hằng ngày

Thời gian hoạt động cho mỗi lần xạc PIN ít nhất là 16 tiếng tức là kết thúc một ngày mới
xạc PIN một lần.

Độ chính xác cao, tỉ lệ dự đoán chính xác hoạt động trong ngày lớn hơn 90%.

An toàn cho người sử dụng, không bị điện giật, không có các vật sắc nhọn gây tổn thương
cho da,...

3.2. Phân tích thiết kế

Từ yêu cầu thiết kế nhóm đưa ra các phương pháp khác nhau để giải quyết, sau đó thảo
luận để đưa ra phương pháp tối ưu sau cùng.

Đầu tiên việc thu thập dữ liệu, có hai phương pháp được đặt ra để thu thập dữ liệu.

Phương pháp thứ nhất, sử dụng module bluetooth để gửi dữ liệu từ MPU6050 đến máy
tính. Phương pháp này rất dễ để thực hiện vì module bluetooth rất phổ biến và dễ dàng để sử
dụng. Tuy nhiên, việc sử dụng module bluetooth chỉ có thể truyền dữ liệu từ 8 – 10m, nếu có
vật cản khaonrg cách này còn thấp hơn nhiều. Như vậy, không thể sử dụng được phương
pháp này vì người dùng không thể vừa đeo cảm biến còn cầm theo máy tính để thực hiện thi
thập dữ liệu hằng ngày được.

Phương pháp thứ hai, hiện nay các loại module wifi đã rất phát triển cùng với đó là các
wedserver cũng rất tiện lợi và dễ dùng. Nên nhóm đưa ra phương pháp sử dụng module wifi

10
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

ESP8266 đưa dữ liệu lên thingspeak. Như vậy, việc thu thập dữ liệu sẽ được thu thập từ bất
cứ đâu mà không cần mang theo các thiết bị điện tử cồng kềnh.

Tiếp theo, sử dụng machine learning để phân tích dữ liệu được lấy về từ thingspeak được
thực hiện bằng hai phương pháp.

Phương pháp thứ nhất, sử dụng các công thức tính toán để lựa chọn những thông số phân
loại hành động. Phương pháp này cho ta dự đoán hành động một cách linh hoạt hơn. Nhưng
để thực hiện phương pháp này lại rất phức tạp, ta phải tính toán các thông số, chọn ra những
đặc trưng ảnh hưởng tới kết quả dự đoán cao nhất, phải phân loại hành động sao cho phù hợp
để kết quả dự đoán được chính xác.

Phương pháp thứ hai, trong python người ta đã có bộ thư viện sklearn.tree cho chúng ta
thực hiện học máy theo mô hình cây quyết định. sử dụng phương pháp này tương đối tiện lợi
mà độ chính xác lại cao hơn.

Sơ đồ khối chi tiết

Hình 4: Sơ đồ khối phần cứng

Về phần cứng của mô hình dự đoán hành động bằng cảm biến gia tốc khá đơn giản chỉ
bao gồm ba khối chức năng chính.

Khối thu thập dữ liệu: khối này được thực hiện bằng cảm biến gia tốc MPU6050, dữ liệu
được thu thập gồm 6 thông số (gồm gia tốc trên ba trục và góc nghiêng ba trục). Cảm biến sẽ
cho 6 thông số nay sau mỗi 15s lên thingspeak để dự đoán.

Khối xử lý: khối xử lý là IC CP2102 đã được tích hợp sẵn trong module ESP8266 thực
hiện chức năng xử lý các dữ liệu, điều khiển module wifi.

11
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Khối phát dữ liệu lên wed: module ESP8266 sẽ thực hiện gửi dữ liệu được thu thập từ
MPU6050 lên wedserver để cho bước dự đoán và tính toán sau này.

Sơ đồ mạch chi tiết

Nối chân sẽ được thực hiện theo kiểu giao tiếp I2C gồm 4 chân. Trong đó, hai chân cấp
nguồn VCC 3.3V và GND. Hai chân còn lại là chân SCL và SDA được nối với chân D1 và
D2 của ESP8266.

Hình 5: Mô hình sơ đồ đấu nối dây

Nguồn PIN 9V sẽ được cấp cho module qua chân Vin và GND.

12
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

4. THIẾT KẾ VÀ THỰC HIỆN PHẦN MỀM


- Yêu cầu đặt ra cho phần mềm

Phần mềm của đồ án này được chi ra làm 2 phần chính, thứ nhất là gửi dữ liệu lên
thingspeak thông qua nodeMCU, tải dữ liệu về máy và thứ 2 là marchine learning xử lý dữ
liệu sau khi tải về máy.

4.1 Gửi dữ liệu lên thingspeak và tải xuống:

Yêu cầu đăt ra khi gửi dữ liệu lên thingspeak đó là dữ liệu phải đồng bộ theo từng thời
gian giữa các giá trị với nhau, dữ liệu phải chính xác với dữ liệu thu được ở trên phần mềm,
thời gian giữa 2 lần thu giữ liệu phải như nhau.

Để có thể tải dữ liệu lên thingspeak, việc đầu tiên chúng ta cần làm đó là tạo tài khoản
thingspeak va tạo một channel

- Bước 1: Tạo tài khoản thingspeak

Chúng ta cần truy cập vào website: https://thingspeak.com/, sau đó chọn sign up để tạo tài
khoản.

Hình 6 : Giao diện của website Thingspeak

- Bước 2: Tạo channel Thingspeak

Chọn vào thẻ channel, chọn new channel để tạo kênh mới. Bạn nhập tên kênh vào ô
Name, nhập mô tả vào ô Description, các ô Field 1, 2, 3,...8 chính là các trường dữ liệu

13
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

mà sẽ gửi từ ESP8266 Device lên Server này, chọn dấu tích bên phải để cho phép trường
đó hoạt động. Sau đó chọn Save Channel để lưu lại.

Hình 7 : Cài đặt một channel trên Thingspeak

- Bước 3: Lấy channel ID, Write API Keys và Read API Keys:

Vào thẻ API Keys, sẽ thấy các thông tin Channel ID, Write API Key, Read API
Keys, đây chính là các thông tin quan trọng cho Data, các ID và Keys này sẽ giúp
ThingSpeak cho phép thiết bị gửi dữ liệu lên đây.

Hình 8 : Write API Keys và Real API Keys của một channel Thingspeak

- Các thông số đặt ra khi sử dụng Thingspeak:

14
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

+ Số Field sử dụng: 6 Field. Cần tải lên Thingspeak 6 cột data gồm AcX, AcY, AcZ là các
thông số giúp chúng ta phân tích gia tốc của người đang được quan sát, và 3 cột còn lại là
GyX, GyY, GyZ lần lượt là trục X, trục Y, trục Z của người đang nghiên cứu.

+ Thời gian lấy mẫu giữa các lần liên tiếp là 15s: Như vậy là cứ 15s một lần dữ liệu sẽ được
gửi lên Thingspeak, và trong một ngày chúng ta sẽ nhận được rất nhiều dữ liệu đủ để phân
tích các hoạt động diễn ra của người đang được nghiên cứu

- Phân tích:

Đầu tiên để có dữ liệu gửi lên Thingspeak, chúng ta cần phải đọc được dữ liệu từ cảm
biến. Ở đồ án này em viết code bằng Arduino trên nền tảng Arduino IDE để đọc dữ liệu từ
cảm biến và gửi dữ liệu lên Thingspeak. Chọn Arduino bởi vì nó có sẵn các thư viện của cảm
biến MPU 6050, nodeMCU và Thingspeak, điều này làm cho công việc của chúng ta trở nên
đơn giản hơn

Chương trình Arduino sẽ gồm 2 phần: Phần thứ nhất là đọc dữ liệu từ cảm biến về và hiển
thị lên Arduino IDE. Ở đâu chúng ta đọc các thông số như gia tốc, các trục và nhiệt độ ( data
nhiệt độ sẽ được dùng trong phần mở rộng), và phần thứ hai là gửi dữ liệu lên Thingspeak,
bởi vì có sẵn thư viện nên việc đọc dữ liệu cũng như gửi dữ liệu sẽ được thực hiện bởi các
lệnh của Arduino như Wire.read() hay ThingSpeak.setField().

Sau khi đã gửi được dữ liệu lên Thingspeak thì chúng ta cần phải lấy được dữ liệu về máy
để xử lý cũng như chạy marchine learning. Và ThingSpeak đã có sẵn chức năng cho phép
export dữ liệu được gửi lên về máy dưới dạng các file xlsx, việc chúng ta cần làm là chọn vào
mục Data Import/Export và ấn vào phần download.

15
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Hình 9 : Mục Data Import/Export của Thingspeak

Và sau đó dữ liệu sẽ được tải về máy tính gồm các field đã tạo trên Thingspeak, thời gian dữ
liệu được tải lên và thứ tự.

Hình 10 : Dữ liệu được tải về từ Thingspeak

4.2. Lấy dữ liệu về từ thingspeak sau đó sử dụng python để dự đoán hành động

Khái niệm về machine learning

Machine learning (ML) hay máy học là một nhánh của trí tuệ nhân tạo (AI), nó là một
lĩnh vực nghiên cứu cho phép máy tính có khả năng cải thiện chính bản thân chúng dựa trên
dữ liệu mẫu (training data) hoặc dựa vào kinh nghiệm (những gì đã được học). Machine
learning có thể tự dự đoán hoặc đưa ra quyết định mà không cần được lập trình cụ thể.

Bài toán machine learning thường được chia làm hai loại là dự đoán (prediction) và phân
loại (classification). Các bài toán dự đoán như dự đoán giá nhà, giá xe… Các bài toán phân
loại như nhận diện chữ viết tay, nhận diện đồ vật…

Quy trình làm việc của machine learning gồm có 5 bước:

+ Data collection – thu thập dữ liệu: để máy tính có thể học được bạn cần có một bộ dữ liệu
(dataset), bạn có thể tự thu thập chúng hoặc lấy các bộ dữ liệu đã được công bố trước đó. Lưu
ý là bạn phải thu thập từ nguồn chính thống, có như vậy dữ liệu mới chính xác và máy có thể
học một cách đúng đắng và đạt hiệu quả cao hơn.

+ Preprocessing – tiền xử lý: bước này dùng để chuẩn hóa dữ liệu, loại bỏ các thuộc tính
không cần thiết, gán nhãn dữ liệu, mã hóa một số đặc trưng, trích xuất đặc trưng, rút gọn dữ

16
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

liệu nhưng vẫn đảm bảo kết quả… Bước này tốn thời gian nhất tỉ lệ thuận với số lượng dữ
liệu bạn có. Bước 1 và 2 thường chiếm hơn 70% tổng thời gian thực hiện.

+ Training model – huấn luyện mô hình: bước này là bước bạn huấn luyện cho mô hình hay
chính là cho nó học trên dữ liệu bạn đã thu thập và xử lý ở hai bước đầu.

+ Evaluating model – đánh giá mô hình: sau khi đã huấn luyện mô hình xong, chúng ta cần
dùng các độ đo để đánh giá mô hình, tùy vào từng độ đo khác nhau mà mô hình cũng được
đánh giá tốt hay không khác nhau. Độ chính xác của mô hình đạt trên 80% được cho là tốt.

+ Improve – cải thiện: sau khi đã đánh giá mô hình, các mô hình đạt độ chính xác không tốt
thì cần được train lại, chúng ta sẽ lặp lại từ bước 3, cho đến khi đạt độ chính xác như kỳ
vọng. Tổng thời gian của 3 bước cuối rơi vào khoảng 30% tổng thời gian thực hiện.

- Phân loại

Có rất nhiều cách phân loại machine learning, thông thường thì machine learning sẽ được
phân làm hai loại chính sau:

+ Supervised learning: học có giám sát

+ Unsupervised learning: học không giám sát

+ Ngoài ra, machine learning còn có thể phân làm các loại sau:

+ Semi-supervised learning: học bán giám sát

+ Deep learning: học sâu (về một vấn đề nào đó)

+ Reinforce learning: học củng cố/tăng cường

Ở đây nhóm thực hiện theo mô hình học có giám sát, dữ liệu đưa vào sẽ có dán nhãn
tương ứng.

- Chuẩn bị cho machine learning

Sử dụng phần mềm pycharm được code bằng ngôn ngữ python để thực hiện bước
machine learning. Giao diện pycharm khá đẹp, màu sắc của các kí tự được phân biệt để
chúng ta dễ dàng nhận biết được các kiểu lệnh trong pycharm. Khi có lỗi sai về chính tả, cấu
trúc,.. thì pycharm cũng sẽ báo cho mình biết để sửa lỗi dễ dàng hơn.

17
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Hình 11: Giao diện PyCharm

Về thư viện sử dụng, chúng ta sử dụng thư viện có sẵn sklearn.tree thư viện này cho
chúng ta đưa vào các thông số, lựa chọn những thông số đặc trưng và thông số kết quả để
nhận biết được. Thư viện còn cung cấp các lệnh để thực hiện mô hình cây quyết định từ đó
đưa ra kết quả dự đoán. Ngoài ra ta cần những thư viện hỗ trợ matplotlib.pyplot (vẽ đồ thị),
csv (để đọc file csv), pandas (hỗ trợ tính toán vector và ma trận). Tiến hành import các thư
viện cần thiết.

Hình 12: Import các thư viện

File để cho quá trình huấn luyện được lấy dữ liệu và ghi trước hành động. File được lưu
với tên shows.csv chứa trong thư mục chung với file main.py. Trong file này chứa thông số 3
trục và hành động tương ứng. Nhóm thực hiện lấy khoảng 300 mẫu cho 5 hành động, mỗi
hành động từ 60 – 70 mẫu. Các mẫu sẽ được thực hiện gán hành động tương ứng, các hành
động gồm có đứng – DUNG , nằm – NAM , ngồi – NGOI , đi bộ - DI BO, chạy bộ - CHAY
BO. Các hành động được gán không dấu để thuận tiện cho python đọc dữ liệu, sau khi vào

18
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

python các hành động sẽ được thay đổi tương ứng theo thứ tự 0, 1, 2, 3, 4, 5, 6. Vì thư viện
Sklearn.tree chỉ tương tác được với những con số.

Hình 13: File huấn luyện

Hình 14: Data huấn luyện

Cuối cùng là file test.csv được lấy về từ thingspeak phục vụ cho quá trình kiểm tra kết
quả và dự đoán về sau. File này cũng được lưu chung thư mục với file main.py. Dữ liệu của

19
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

file này gồm có 6 thông số trên 3 trục không có thông số hành động. Qua học máy sẽ cho ra
hành động đang thực hiện.

Hình 15: Data dự đoán hành động

Sau khi đã chuẩn bị cho quá trình học máy xong chúng ta sẽ tiền hành theo mô hình cây
quyết định.

Khái niệm cây quyết định:

Cây quyết định (Decision Tree) là một cây phân cấp có cấu trúc được dùng để phân lớp
các đối tượng dựa vào dãy các luật. Các thuộc tính của đối tượngncó thể thuộc các kiểu dữ
liệu khác nhau như Nhị phân (Binary) , Định danh (Nominal), Thứ tự (Ordinal), Số lượng
(Quantitative) trong khi đó thuộc tính phân lớp phải có kiểu dữ liệu là Binary hoặc Ordinal.

Tóm lại, cho dữ liệu về các đối tượng gồm các thuộc tính cùng với lớp (classes) của nó,
cây quyết định sẽ sinh ra các luật để dự đoán lớp của các dữ liệu chưa biết.

Ta hãy xét một ví dụ 1 kinh điển khác về cây quyết định. Giả sử dựa theo thời tiết mà các
bạn nam sẽ quyết định đi đá bóng hay không?

Những đặc điểm ban đầu là: Thời tiết, Độ ẩm, Gió

Dựa vào những thông tin trên, bạn có thể xây dựng được mô hình như sau:

20
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Hình 16: Cây quyết định

Cây quyết định sẽ thực hiện thuật toán tìm kiếm từ trên xuống. Đầu tiên yếu tố quan trọng
nhất là thời tiết, ở đây sẽ có ba kiểu thời tiết được xét đến là nắng, râm mát và mưa. Nếu trời
nằng thì sẽ xem có độ ẩm như thế nào, độ ẩm cao thì không đi đá bóng còn độ ẩm bình
thường thi sẽ đi. Nếu như thời tiết râm mát thì sẽ đi đá bóng và đây là thời tiết hoàn hảo. Cuối
cùng là nếu có mưa thì sẽ xét xem là có gió mạnh hay không, nếu như có gió mạnh thì sẽ
không đi.

Tương tự ở bài toán của chúng ta dữ liệu đưa vào sẽ có 6 thông số. Từ 6 thông số đó sẽ
timd ra điểm chung và thư viện sẽ tự tìm những đặc trưng để dự đoán.

Ưu, nhược điểm của thuật toán cây quyết định:

- Ưu điểm:

+ Cây quyết định là một thuật toán đơn giản và phổ biến. Thuật toán này được sử dụng rộng
rãi bới những lợi ích của nó:

+ Mô hình sinh ra các quy tắc dễ hiểu cho người đọc, tạo ra bộ luật với mỗi nhánh lá là một
luật của cây.

21
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

+ Dữ liệu đầu vào có thể là là dữ liệu missing, không cần chuẩn hóa hoặc tạo biến giả

+ Có thể làm việc với cả dữ liệu số và dữ liệu phân loại

+ Có thể xác thực mô hình bằng cách sử dụng các kiểm tra thống kê

+ Có khả năng là việc với dữ liệu lớn

- Nhược điểm

+ Kèm với đó, cây quyết định cũng có những nhược điểm cụ thể:

+ Mô hình cây quyết định phụ thuộc rất lớn vào dữ liệu của bạn. Thậm chí, với một sự thay
đổi nhỏ trong bộ dữ liệu, cấu trúc mô hình cây quyết định có thể thay đổi hoàn toàn.

+ Cây quyết định hay gặp vấn đề overfitting

Cuối cùng là thực hiện lập trình để dự đoán hành động

22
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

5. KẾT QUẢ THỰC HIỆN

Sau khi hoàn thành các bước thiết kế phần cứng, phần mềm thì chúng ta sẽ tiến hành thu
thập dữ liệu và xử lý dữ liệu đó bằng marchine learning. Các cột dữ liệu chúng ta gửi lên
Thingspeak sẽ là dữ liệu liên quan đến các hành động: Đứng, nằm, ngồi, đi bộ, chạy bộ. Cảm
biến sẽ được gắn vào cổ chân phải và thu thập dữ liệu.

Hình17 : Vị trí đặt cảm biến trên cơ thể

Và để phân biệt được các hành động thì chúng ta cần phải nêu lên đặc trung cơ bản của
các hành động để máy có thể phân biệt được, từ đó đưa ra dự đoán chính xác nhất:

+ Đứng: Đứng thằng người, hai chân chạm đất, không di chuyển

Hình 18 : Tư thế đứng


23
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

+ Ngồi: Ngồi thẳng lưng, hai chân đan vào nhau, giống như tư thế ngồi thiền.

Hình19 : Tư thế ngồi

+ Nằm: Nằm ngửa, chân duỗi thẳng , hai chân đặt sát nhau theo chiều dài cơ thể, bàn
chân vuông góc với bền mặt đang nằm.

Hình 20: Tư thế nằm

+ Đi bộ: Tốc độ không quá 5km/h, trong một thời điểm phải có ít nhất một chân chạm
đất, tốc tốc độ ổn định

24
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Hình 21: Tư thế đi bộ

+ Chạy bộ: Người thẳng, di chuyển nhanh đến vi trí khác, hai chân không cham đất khi
chạy tại một thời điểm.

Hình 22: Tư thế chạy bộ

25
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Hình 23 : Hình ảnh thực tế của thiết bị

- Gửi dữ liệu lên Thingspeak:

Kết quả thu được sau khi tiến hành thí nghiêm là chính xác, chúng ta có thể kiểm tra
bằng cách so sánh dữ liệu đọc được ở trong phần mềm Arduino IDE với dữ liệu được gửi
lên Thingspeak.

Các dữ liệu gửi lên được sắp xếp theo đúng các Field ban đầu, các Field được cập
nhật đồng bộ với nhau, cho ra các đồ thị biểu diễn sự thay đổi của các dữ liệu được tải lên
Thingspeak.

Hình 24 : Các Field thu được sau khi tải dữ liệu lên Thingspeak

26
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

Kết quả sau khi đã thực hiện xong bước machine learning

Python trả về một biểu đồ có dạng từng điểm tương ứng với các hành động.

Hình 25: Biểu đồ Python trả về

Nhóm thực hiện thu thập mỗi hành động 200 bộ dữ liệu khác nhau tổng cộng gồm có
1000 bộ test để kiểm tra kết quả hoạt động. Kết quả được cho trong bảng sau

Nằm Ngồi Đứng Đi bộ Chạy bộ


Nằm 198 2 0 0 0
Ngồi 3 196 1 0 0
Đứng 2 1 194 2 1
Đi bộ 0 0 0 199 1
Chạy bộ 0 0 0 2 198
Bảng 1: Tần số các hoạt động

27
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

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

6.1 Kết luận

Nhận dạng hoạt động người là một chủ đề nghiên cứu quan trọng trong nhiều lĩnh
vực như tính toán nhận biết ngữ cảnh, tính toán khắp nơi, tương tác người-máy, tính toán di
động. Đồ án này đã nghiên cứu một hướng tiếp cận về chủ đề này, đó là nhận dạng hoạt động
sử dụng cảm biến mang trên người. Đồ án tập trung làm rõ 2 nhiệm vụ chính đó chính là tải
được dữ liệu lên Thingspeak và phân tích dữ liệu đó bằng marchine learning.

Trong tương lai, chúng ta có thể nghiên cứu bổ sung thêm các tính năng mới cho sản
phẩm nhằm mở rộng mục đích hoạt động của nó trong các kĩnh vực như: giám sát, y tế, quân
sự… Ngoài ra, có thể thay đổi thuật toán hoặc phần cứng để cho sản phẩm có thể hoạt động
một cách lâu dài và chính xác hơn.

6.2 Hướng phát triển của đề tài

Đây là một đề tài có thể ứng dụng rất nhiều trong giám sát, y tế, quân sự, ... đặc biệt là
trong y tế, mô hình giúp các bác sĩ của mình theo dõi các bệnh nhân, cha mẹ theo dõi sức
khỏe con cái, chúng ta tự theo dõi sức khỏe của mình ...

Hướng phát triển trong tương lai, sẽ thực hiện viết trang wed theo dõi tình hình sức khỏe
cá nhân, từ trang wed có thể nhìn thấy được đồ thị hoạt động của một người trong thời gian
thực. Đưa ra các nhận định về sức khỏe và lời khuyên hoạt động cho đúng với tiêu chuẩn của
người bình thường. Sử dụng thêm chức năng nhiệt độ của module MPU6050, có thể sử dụng
các module hiện đại hơn có thêm các chỉ số đo tim mạch, huyết áp ... phục vụ cho y tế.

28
Đồ án môn học : Cảm biến gia tốc phát hiện hành động GVHD: Hà Hoàng Kha

7. TÀI LIỆU THAM KHẢO

[1] Tessai Hayama, “Walking-posture Classification from Single-acceleration-sensor


Data using Deep Learning”, 2020. https://www.computer.org/csdl/proceedings-
article/iiai-aai/2020/739700a400/1tGcwuyr6CI
[2] Akram Bayat, “A Study on Human Activity Recognition Using Accelerometer Data
from Smartphones”, 2014.
https://www.sciencedirect.com/science/article/pii/S1877050914008643
[3] W3Schools Shop. https://www.w3schools.com/
[4] Giới thiệu về machine learning.
https://machinelearningcoban.com/2016/12/26/introduce/
[5] Mô hình cây quyết định. https://trituenhantao.io/kien-thuc/decision-tree/

29

You might also like