Hồ Chí Minh, tháng 6 năm 2024 GVHD: SVTH: ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH THIẾT KẾ HỆ THỐNG CHẤM CÔNG TRONG DOANH NGHIỆP ThS... HỒ CHÍ MINH KHOA ĐIỆN ĐIỆN TỬ BỘ MÔN
GIỚI THIỆU
GIỚI THIỆU
Cuộc cáchamạng cônganghiệp lần thứ tư đang chứng kiến sự bùng nổ của các công nghệ tiên tiến như trí tuệ nhân tạo (AI), học máy, dữ liệu lớna(Big Data) và Internet vạn vật (IoT) Những công nghệ này đang nhanh chóng thay đổi mọi khía cạnh của cuộc sống và công việc Trong số đó, IoT đã trở thành một côngacụ quan trọng trong nhiều lĩnh vực, mang lại sự tiện lợi và an toàn cho người dùng Một trong nhữngaứng dụng nổi bật của IoT là trong lĩnh vực chấm công và quản lý tự động
Chấm công là một quy trình thiết yếu nhưng thường gặp phải những thách thức như thiếu chính xác, hiệu quả thấp và gây bất tiện khi thực hiện thủ công trong các tổ chức như công ty hay doanh nghiệp Để khắcaphục những hạn chế này, việc triển khai một hệ thống IoTatự động cho chấm công và quản lý thông tin là rất cần thiết Với mụcatiêu này, tôi đã lựa chọnathực hiện đề tài "THIẾT
KẾ HỆ THỐNG CHẤM CÔNG TRONG DOANH NGHIỆP" nhằm tạo ra một giải pháp đáp ứng được các yêu cầu trên Đềatài tập trung vào môi trường doanh nghiệp nhỏ với một cấp quản lý
Hệ thống được thiết kế sử dụng cảmabiến vân tay và vi điều khiểnađể thu thập dữ liệu chấm công một cách nhanh chóng và chính xác Một tínhanăng quan trọngacủa hệ thống là khả năngaquản lý thông tin thông qua mộtanền tảng web Qua giao diện trực tuyến này, người quản trị có thể theo dõi vàakiểm soát quá trìnhachấm công, tạo báoacáo vàaquản lý từ xa mộtacách dễ dàng
MỤC TIÊU ĐỀ TÀI
Đềatài “THIẾT KẾ HỆ THỐNG CHẤM CÔNG TRONG DOANH NGHIỆP” được thực hiện nhằm thiếtakế hệ thống với cácachức năng như sau:
- Đối với thiếtabị chấm công:
+ Thực hiện chấm công nhânaviên bằng cáchaquét vân tay
+ Có thể thêm hoặc xóaavân tay
+ Đưa ra thông báo chấm công
+ Lưu trữ và hiển thị đượcatên nhân viên
+ Hoạt động cả trong trạng thái mất kết nối server
+ Lưu được lịch sử chấm công qua các ngày
+ Danh sách nhân viên có thể được cập nhật
+ Nhân viên sau khi chấm công sẽ được cập nhật lên website
+ Thông tin sẽ được xử lý và lưu trữ kết quả
+ Quản lý danh sách nhân viên
+ Quản lý các bộ phận trong công ty.
GIỚI HẠN ĐỀ TÀI
Sau khi tìm hiểu nội dung của đề tài thì tôi đã thấy được giới hạn như sau:
- Điện áp hoạt động của phần cứng là 5V
- Số lượng module phần cứng quét vân tay mà đề tài sẽ triển khai là 2 module
- Số lượng vân tay tối đa cho mỗi module phần cứng là 127 vân tay
- Hệ thống chấm công yêu cầu có kết nối internet không dây
- Cơ sở dữ liệu được sử dụng là MySQL
- Phạm vi thực hiện dựa trên doanh nghiệp nhỏ với số lượng nhân viên thấp và có 1 cấp quản lý.
PHƯƠNG PHÁP NGHIÊN CỨU
Để thựcahiện được đề tài này tôi đã kết hợpasử dụng nhiều phươngapháp và phươngatiện hỗ trợagồm có:
ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
- Tham khảo các tài liệu liên quan: ESP32, TFT, AS608, web server
- Tham khảo ý kiến chuyên gia
Các đối tượng nghiên cứu trong đề tài là:
- Module ESP32: Giao tiếp SPI, UART, giao tiếp với web, giao tiếp I/O, các phương pháp lập trình
- Cảm biến AS608: giao tiếp vi điều khiển thông qua chuẩn UART
- TFT LCD: Cách lấy dữ liệu từ cảm biến, các phương án điều khiển và xử lý dữ liệu đầu ra, hiển thị các thao tác từ phần cứng
BỐ CỤC QUYỂN BÁO CÁO
Nộiadung củaaquyển báo cáo này đượcachia thành 5achương với nộiadung chính của từng chươnganhư sau:
Giớiathiệuađề tài,adẫn nhập lý do chọn đề tài, trìnhabàyamụcatiêu, nội dung nghiên cứu, các giới hạnathông số và bố cục.
CƠ SỞ LÝ THUYẾT
TÌM HIỂU VỀ MODULE ESP 32
2.1.1 Tổng quan về module NodeMCU ESP32 Để biết được hình dạng cũng như sơ đồ chân của module NodeMCU ESP32, ta đến với hình ảnh cụ thể:
NodeMCU ESP32 là chip ESP32 sở hữu 2 CPU có thể được điều khiển riêng hoặc cấp nguồn và tần số clock có thể điều chỉnh từ 80 MHz đến 240 MHz ESP32 được tích hợp phong phú các thiết bị ngoại vi và các chuẩn giao tiếp UART, I2S và I2C Bên cạnh đó, sự kết hợp Bluetooth và Wifi đảm bảo rằng các ứng dụng trong phạm vi hoặc mục tiêu lớn có thể dễ dàng được thực hiện [2]
Hình 2.1 Hình ảnh module NodeMCU ESP32.[1]
Dưới đây là các tính năng của module NodeMCU ESP32:
- Nó có tích hợp 18 ADC chuyển đổi tương tự sang kỹ thuật số Mỗi ADC dựa trên công nghệ SAR 12 bit
- 2 kỹ thuật số sang tương tự chuyển đổi DAC
- Đối với giao tiếp, nó có 2 Kênh liên lạc UART, 2 Giao diện truyền thông I2C, hai kênh I2S và giao diện truyền thông one CAN
- Nó cũng có một mô-đun tăng tốc phần cứng mật mã cho các thuật toán mật mã khác nhau như RSA, AES.[3]
Hình 2.2 Các tính năng của module NodeMCU ESP32 [3]
Wifi: Dưới đây là bảng thông số kỹ thuật của chuẩn kết nối Wifi:
Bảng 2.1 Bảng thông số kỹ thuật của chuẩn Wifi.[4]
Các thông số Mô tả
Phạm vi hoạt động 2.4 GHz – 2.5 GHz
Chế độ Station mode (Wi-Fi client hay
ESP32 có khả năng kết nối đến các điểm truy cập
Chế độ Access Point (Soft – AP) ESP32 trở thành trung tâm kết nối liên kết thông tin Các Station kết nối với Access-Point chính do ESP32 tạo nên
Chế độ AP-STA ESP32 có thể đồng thời là điểm truy cập và có thể truy cập đến địa chỉ khác
CPU và bộ nhớ: Dưới đây là bảng thông số kỹ thuật của CPU và bộ nhớ:
Bảng 2.2 Bảng thông số kỹ thuật của CPU và bộ nhớ.[4]
Các thông số Mô tả
Bộ lỗi xử lý Khả năng hoạtađộng của bộ xử lý lỗi kép Xtensa® 32-bit LX6 có khả năng hoạt động lên tới 600 DMIPS Khi chúng ta dùng FreeRTOS sẽ ứng với Core 0 và Core 1 (protocol cpu và application cpu)
Tốc độ xử lý CPU 160MHz – 240MHz
ROM 448 KBytes ROM cho booting và các tính năng của lõi chip
RAM 520 KBytes SRAM trênachip dùng cho dữ liệu và các lệnh instruction
Ngoại vi: Dưới đây là sơ đồ chân của module NodeMCU ESP32:
Bảng 2.3 Bảng thông số kỹ thuật ngoại vi ESP32.[4]
Các thông số Mô tả
Kích thước của board 51.4mm x 28.3mm
Cổng kết nối USB-1x cổng micro USB để cấp nguồn và nạp code lập trình
Nguồn điện 5V qua USB hoặc Vin
Các kênh hoạt động - Có 18 kênh – bộ chuyển đổi ADC –
- 2 Bộ chuyển đổi DAC- Digital-to- Analog
Chuẩn giao tiếp - 3xSPI, 3xUART, 2xI2C, 2 x I2S.
CẢM BIẾN VÂN TAY AS 608
Hình 2.3 Sơ đồ chân của ESP32.[4]
Cảm biến nhận dạng vân tay AS608 được thiết kế với khả năng giao tiếp thông qua giao thức UART hoặc USB 1.1 Cảmabiến tích hợp mộtanhân xử lý mạnh mẽ, giúp tự động ánh xạ dữ liệu vân tay vào một chuỗi dữ liệuavà truyền qua giao tiếp UART.[5]
THIẾT KẾ HỆ THỐNG
YÊU CẦU CỦA TOÀN HỆ THỐNG
Phần cứng bao gồm các vi điều khiển, cảm biến, LCD và ngoại vi Thực hiện được các chức năng như sau:
- Hiển thị các nội dung liên quan việc chấm công bao gồm thông báo và cài đặt
- Chấm công bằng cách quét vân tay
- Có thể cài đặt để thêm hoặc xóa vân tay
- Lưu được lịch sử chấm công các ngày
Về phía phần mềm thì sẽ thiết kế một website để thuận tiện trong việc cập nhật dữ liệu và quản lý từ xa:
- Cập nhật được dữ liệu khi nhân viên đã chấm công lên website
- Danh sách nhân viên có thể được cập nhật như thêm, xóa, chỉnh sửa thông tin
- Danh sách các bộ phận có thể được cập nhật như thêm, xóa, chỉnh sửa thông tin
Các thiết bị phần cứng sẽ gửi dữ liệu xuống server để backend lấy dử liệu từ database lên website sử dụng chuẩn truyền thông không dây Wifi
THIẾT KẾ VÀ LẬP TRÌNH HỆ THỐNG PHẦN CỨNG
3.2.1 Chức năng của phần cứng
Chức năng chi tiết của phần cứng:
- Chấm công bằng cách quét vân tay
- Thêm và xóa vân tay
- Hiển thị được thông tin trên LCD
- Dữ liệu được sẽ được cập nhật xuống server
- Lưu trữ và hiển thị được tên nhân viên
- Lưu được lịch sử chấm công qua các ngày
3.2.2 Sơ đồ khối phần cứng Để có thể thực thi được phần cứng một cách hiệu quả, ta có sơ đồ khối như sau:
Hình 3.1 Sơ đồ khối của hệ thống
Khối cảm biến: Nhận thông tin dữ liệu vân tay của người dùng sau đó gửi về khối xử lý
- Cấu hình các thông số cho LCD, nút nhấn, Wifi và cảm biến
- Đọc dữ liệu từ cảm biến và nhận tín hiệu từ nút nhấn
- Lưu trữ thông tin và lịch sử chấm công
- Cập nhật trạng thái đã chấm công sau đó gửi và chờ phản hồi từ Webserver
Khối ngoại vi: Bao gồm các nút nhấn dùng để thực hiện các thao tác cài đặt
Khối hiển thị: Dùng để hiển thị thông báo đã chấm công và các thông tin chi tiết
Khối nguồn: Thiết bị chấm công yêu cầu nguồn điện 5V cung cấp để có thể hoạt động, ngoài ra tránh trường hợp mất điện thì thiết bị còn đi kèm nguồn pin dự phòng với thời gian kéo dài được hơn 1 tiếng
Cảm biến vân tay AS608 được nối đến khối xử lý để đọc dữ liệu vân tay Dưới đây là sơ đồ nối chân cảm biến:
Cảm biến yêu cầu điện áp hoạt động là 3.0V – 3.6V nên sẽ nhận nguồn 3.3V từ khối xử lý trung tâm:
- Chân V+ sẽ nối đến chân 3.3V của khối xử lý trung tâm
- Chân GND thì nối đến GND của khối xử lý trung tâm
- Chân TX của AS608 sẽ được nối đến chân RX của khối xử lý trung tâm
- Chân RX của AS608 sẽ được nối đến chân TX của khối xử lý trung tâm
- Các chân còn lại của cảm biến thì không nối dây
Hình 3.2 Sơ đồ nối chân của khối cảm biến
Khối ngoại vi: Các nút nhấn được kết nối đến các chân của khối xử lý:
- Các nút nhấn được cấp nguồn 3.3V, khi nhấn thì gửi tín hiệu mức cao tới các chân I/O của khối xử lý trung tâm
Khối hiển thị: Khối hiển thị sử dụng một LCD TFT 3.5inch với chuẩn giao tiếp SPI Dưới đây là sơ đồ nối chân của LCD với khối xử lý trung tâm:
Hình 3.3 Sơ đồ nối chân của khối ngoại vi
Khối xử lý trung tâm: Sau khi thiết kế khối cảm biến, khối ngoại vi và khối hiển thị thì có được bảng tổng kết chân chức năng như sau:
Bảng 3.1 Bảng tổng kết các chân chức năng cần có của khối xử lý trung tâm
Khối Chân chức năng cần có của khối xử lý trung tâm
Khối cảm biến 3V3, GND, TX, RX
Khối ngoại vi 3V3, GND, GPIO x 5
Khối hiển thị 5V, GND, EN, CS x 2, MISO x 2, MOSI x 2, GPIO x 10
Tổng kết - 5V, 3V3, GND, EN, TX, RX, CS x 2, MISO x 2 , MOSI x 2,
Như vậy sau khi tổng kết các chân chức năng cần có của khối xử lý trung tâm để kết nối với các khối khác thì board được lựa chọn để làm khối xử lý trung tâm là ESP32 vì số lượng chân chức năng của board đủ để đáp ứng yêu cầu kết nối với các module ngoại vi Dưới đây là bảng liệt kê số lượng các chân hiện có của các chức năng cần thiết ở trên của board ESP32:
Hình 3.4 Sơ đồ nối chân của khối hiển thị
Bảng 3.2 Bảng liệt kê số lượng các chân hiện có trên board ESP32
Các chân cần có của khối xử lý trung tâm Số lượng cần có Các chân hiện có trên ESP32 Số lượng hiện có trên ESP32
Các khối riêng biệt sau khi được kết nối đến các chân của ESP32 sẽ được tổng hợp thành một sơ đồ hoàn chỉnh dưới đây:
Hình 3.5 Sơ đồ nối chân của khối xử lý trung tâm
Sau khi tổng hợp, ESP32 sẽ là trung tâm điều khiển của các khối, là trung gian nhận tín hiệu phát hiện dấu vân tay từ cảm biến, sau đó gửi ID đến web server, chờ phản hồi và hiển thị lên LCD Nút nhấn được dùng để vào cài đặt và có thể thêm hoặc xóa ID vân tay LCD thì dùng để hiển thị giao diện và các thao tác cài đặt Dưới đây là lưu đồ giải thuật của khối xử lý trung tâm:
Hình 3.6 Lưu đồ giải thuật của khối xử lý trung tâm
- Bắt đầu chương trình, ESP32 sẽ khai báo và khởi tạo các thư viện cần thiết
- Tiếp theo, kiểm tra số vân tay hiện có Nếu Total = 0, hệ thống sẽ tiếp tục kiểm tra mẫu trong một vòng lặp liên tục cho đến khi có mẫu Khi Total > 0, hệ thống sẽ tiến hành quét vân tay
- Nếu quét vân tay thất bại, hệ thống sẽ đến bước kiểm tra nút nhấn để vào cài đặt sau đó là kết thúc chương trình
- Nếu việc quét vân tay thành công, hệ thống sẽ tiến hành kiểm tra trạng thái hoạt động, trường hợp Offline sẽ lưu trữ lại dữ liệu chấm công vào phần lịch sử Trường hợp khi quét vân tay mà hệ thống đang Online sẽ gửi ID đến Webserver, nhận phản hồi, sau đó hiển thị lên LCD và kết thúc chương trình
Khi ở chế độ hoạt động thì các module có yêu cầu điện áp và dòng điện tiêu thụ như sau:
Bảng 3.3 Bảng thống kê mức tiêu thụ của hệ thống khi ở chế độ hoạt động Điện áp hoạt động Dòng điện tiêu thụ
Ta có: Dòng điện tổng = ESP32 + AS608 + TFT = 790mA + 40mA + 8.5mA = 838.5mA Vậy tổng dòng điện tiêu thụ của ESP32 và các module là 878.5mA (hoặc 0.8385A)
Board ESP32 yêu cầu điện áp 5V và từ board cấp điện áp 3.3V cho cảm biến AS608, cấp điện áp 5V cho màn hình TFT nên để thiết kế mạch nguồn cho thiết bị cần chọn một nguồn có điện áp đầu ra 5V và dòng đầu ra tối thiểu là 838.5mA
Như vậy, để thiết kế mạch nguồn có điện áp 5V và dòng tối thiểu là 838.5mA thì có thể sử dụng mạch ổn áp 7805 với điện áp ổn định mức Dưới đây là sơ đồ nối chân của mạch ổn áp:
- Để có được điện áp ngõ ra là 5V thì yêu cầu điện áp đầu vào tối thiểu là 7V
Hình 3.7 Sơ đồ nối chân của mạch ổn áp 7805
KẾT QUẢ
KẾT QUẢ MÔ HÌNH THI CÔNG
Sau khoảng thời gian thực hiện đồ án thiết kế hệ thống chấm công và quản lý thông tin trên web Kết quả cuối cùng của đề tài như sau:
Dưới đây là ghi chú các khối được sử dụng để hoàn thiện đề tài:
Hình 4.1 Ghi chú các khối thiết kế sau thi công
Bảng 4.1 Bảng ghi chú khối thiết kế sau thi công
Các khối thiết kế Mô tả
Khối cảm biến Vùng màu đỏ
Khối hiển thị Vùng màu vàng
Khối điều khiển Vùng màu tím
Khối nguồn Vùng màu lam
Sau khi quét vân tay, khối cảm biến thông qua chuẩn giao tiếp UART chuyền id vân tay phù hợp tới khối xử lý Dựa vào id vân tay khối xử lý gửi yều cầu tới server kèm id ngươi dùng để xác nhận người dung trong cơ sở dữ liệu và hiển thị lên khối hiển thị thông tin liên quan đến người dùng Khối điều khiển có nhiệm vụ giúp người dung thao tác trong việc điều khiển thiệt bị tại giao điện cài đặt Ta có thể cấp nguồn 5V trực tiếp tới esp32 làm nguồn hoạt động chính cho thiết bị và khối nguồn là nguồn điện dự phòng trong trường hợp mất điện.
KẾT QUẢ PHẦN MỀM THIẾT KẾ
Phần mềm được lựa chọn thiết kế trong đề tài là một website với khả năng cập nhập trạng thái chấm công đồng thời quản lý nhân viên Sau quá trình thiết kế thì giao diện web cuối cùng có thể đạt được như hình dưới đây:
Hình 4.2 Giao diện trang web quản lý thông tin
Website đã có thể cập nhật được trạng thái chấm công người dùng bao gồm thời gian check in và check out Đồng thời có thể thêm, xóa, sửa và tìm kiếm được danh sách chấm công Quản lý được danh sách nhân viên và danh sách các bộ phận làm việc