Bối cảnh và vấn đề nghiên cứu
Trong hoạt động quản lý thư viện truyền thống, quy trình mượn và trả sách thủ công trong giờ hành chính bộc lộ nhiều điểm hạn chế, gây tốn kém thời gian cho độc giả và tạo áp lực vận hành đối với nhân viên thư viện. Để giải quyết thực trạng này, đồ án "Xây dựng hệ thống trả sách tự động cho thư viện" được thực hiện bởi nhóm sinh viên ngành Công nghệ Kỹ thuật Điện, Điện tử (Chuyên ngành Kỹ thuật Điện tử) thuộc Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng, dưới sự hướng dẫn của ThS. Hoàng Bá Đại Nghĩa (09/2023). Đề tài tập trung ứng dụng công nghệ mã vạch kết hợp cơ cấu điều khiển tự động nhằm chuyển đổi số quy trình tiếp nhận sách trả lại.
Mục tiêu và nhiệm vụ nghiên cứu được văn bản xác định cụ thể như sau:
- Nắm vững cơ sở lý thuyết và kiến thức kỹ thuật để xây dựng mô hình trả sách tự động hoàn chỉnh từ hệ thống điều khiển điện tử đến cơ cấu chấp hành cơ khí.
- Phân tích thực trạng quản lý tại các thư viện truyền thống, làm rõ nhu cầu cấp thiết của việc áp dụng công nghệ tự động hóa trong khâu tiếp nhận sách.
- Thiết kế và thi công hệ thống thư viện tự động có khả năng nhận dạng mã sách, phân loại, vận chuyển và lưu trữ sách trả vào ngăn chứa.
- Tối ưu hóa việc liên kết, quản lý thông tin với cơ sở dữ liệu thư viện, cập nhật trạng thái sách chính xác và giảm thiểu sai sót nhân sự.
- Thực hiện các nhiệm vụ kỹ thuật cụ thể: nghiên cứu module quét mã vạch GM65; tìm hiểu thuật toán đọc mã 1D/2D; lập trình điều khiển động cơ bước qua driver TB6600 trên Arduino IDE; thiết kế bản vẽ cơ khí trên phần mềm Creo; thiết kế mạch nguyên lý và layout trên Altium Designer; chế tạo mạch in thực tế.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Công nghệ nhận dạng mã vạch 1D/2D; module Barcode GM65; vi điều khiển Arduino Uno R3; động cơ bước kết hợp driver TB6600; cảm biến vật cản hồng ngoại E18-D80NK; công tắc hành trình; cơ cấu truyền động vít me đai ốc, puly và băng chuyền.
- Phạm vi không gian và dữ liệu: Mô hình được thiết kế, chế tạo thực nghiệm và kết nối thử nghiệm với nguồn cơ sở dữ liệu quản lý thư viện của Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng.
- Phạm vi thời gian: Đồ án hoàn thành vào tháng 09 năm 2023.
Cơ sở lý thuyết và phương pháp
Đồ án tổng hợp các cơ sở lý thuyết chuyên ngành về quản lý thư viện hiện đại, công nghệ nhận dạng quang học, giao thức truyền thông công nghiệp và kỹ thuật điều khiển truyền động:
- Khái niệm quản lý thư viện: Hệ thống hóa các cấp độ thư viện hiện đại (thư viện đa phương tiện, thư viện lai, thư viện điện tử, thư viện số, thư viện ảo) và xác định yêu cầu tự động hóa khâu mượn trả tài liệu.
- Công nghệ mã vạch (Barcode):
- Mã vạch 1D (tuyến tính): Cấu trúc và nguyên lý giải mã nhị phân/độ rộng thanh của các chuẩn UPC-A, UPC-E, EAN-8, EAN-13, Interleaved 2 of 5 (ITF), Code 39, Code 93, Code 128, Codabar.
- Mã vạch 2D (ma trận): Cấu trúc QR Code (tiêu chuẩn JIS X 0510, ISO/IEC18004 do Denso Wave phát triển năm 1994) với các vùng định vị (finding pattern), căn chỉnh (alignment pattern), các mức sửa lỗi L (7%), M (15%), Q (25%), H (30%) và dung lượng lưu trữ (tối đa 7.089 ký tự số, 4.269 ký tự chữ-số, 2.953 bytes nhị phân); DataMatrix, PDF417, Aztec Code.
- Ngôn ngữ lập trình và nền tảng phát triển: C/C++ trên môi trường Arduino IDE để biên dịch mã điều khiển vi điều khiển; phần mềm Altium Designer để thiết kế mạch in (PCB) 2D/3D; phần mềm Creo thiết kế mô phỏng cơ khí 3D.
- Chuẩn giao tiếp:
- Giao tiếp I2C (Inter-Integrated Circuit): Giao thức nối tiếp đồng bộ 2 dây (SCL, SDA) chế độ Open Drain kèm điện trở kéo (1–4.7 kΩ), truyền nhận khung dữ liệu địa chỉ 7-bit, bit Read/Write, bit xác nhận ACK/NACK, tốc độ chuẩn 100 kBit/s hoặc tốc độ thấp 10 kBit/s.
- Giao tiếp USB (Universal Serial Bus): Các chuẩn kết nối và tốc độ truyền dữ liệu từ USB 1.0 (Low speed, Full speed 12 Mbit/s), USB 2.0 (High speed 480 Mbit/s) đến USB 3.0/3.1 (SuperSpeed 5–20 Gbit/s).
- Kỹ thuật điều khiển động cơ bước: Cấu tạo động cơ bước (PM, VR, HB), phương pháp phát xung điều khiển full bước (1 dây, 2 dây), nửa bước (half-step), cùng phương pháp cài đặt dòng điện và vi bước trên driver TB6600.
Phương pháp nghiên cứu được triển khai thực tế gồm:
- Phương pháp phân tích – tổng hợp tài liệu chuyên ngành về thiết bị điện tử, quang học và cơ khí.
- Phương pháp thiết kế kỹ thuật: Tính toán công suất, phân tích sơ đồ nguyên lý mạch, vẽ layout mạch in và lập mô hình kết cấu cơ khí 3D.
- Phương pháp thực nghiệm chế tạo: Gia công khung sườn, cắt board đồng, ngâm rửa hóa chất, khoan mạch, hàn lắp ráp linh kiện, nạp code và chạy thử nghiệm từng khối chức năng.
Thiết kế và triển khai
Hệ thống trả sách tự động được hiện thực hóa thông qua việc kết hợp giữa cơ cấu cơ khí chính xác, mạch điều khiển nhúng và phần mềm quản lý cơ sở dữ liệu.
1. Kết cấu cơ khí
Khung sườn và hệ thống chuyển động được thiết kế trên phần mềm Creo và gia công với các thông số kích thước thực tế:
| Bộ phận kết cấu |
Kích thước / Thông số kỹ thuật |
| Kích thước tổng thể hệ thống |
Chiều cao 80 cm × Chiều dài 80 cm × Chiều rộng 50 cm |
| Bàn nâng chứa sách (mâm nâng) |
Chiều dài 44 cm × Chiều rộng 20 cm |
| Băng chuyền tiếp nhận |
Chiều dài 60 cm × Chiều rộng 50 cm |
| Cơ cấu dẫn động và trượt |
Khớp nối mềm, vít me đai ốc, puly GT2 60 răng, gối đỡ vòng bi KFL002, con trượt tròn LMK6UU |
2. Thiết kế phần cứng và tính toán điện năng
Phần cứng sử dụng vi điều khiển trung tâm Arduino Uno R3 kết hợp các khối cảm biến và cơ cấu chấp hành. Mạch nguồn sử dụng module hạ áp LM2596 để ổn định điện áp cấp cho các linh kiện.
| STT |
Tên linh kiện / Thiết bị |
Số lượng |
Điện áp hoạt động |
Dòng điện tiêu thụ |
| 1 |
Vi điều khiển Arduino Uno R3 |
1 |
5V |
30 mA |
| 2 |
Màn hình LCD 16×2 kèm module I2C |
1 |
3 – 6V |
0.6 mA |
| 3 |
Cảm biến vật cản hồng ngoại E18-D80NK |
2 |
5V |
100 mA / cái |
| 4 |
Đầu đọc mã vạch Barcode GM65 |
1 |
4.2 – 8V DC |
30 – 120 mA |
| 5 |
Công tắc hành trình (trên, dưới) |
2 |
250V DC |
Tín hiệu đóng ngắt |
| 6 |
Động cơ bước + Driver TB6600 |
2 |
12 – 24V DC |
Điều khiển bước/dòng |
| 7 |
Nút nhấn điều khiển (START, YES, NO, RESET) |
4 |
5V |
Tín hiệu logic |
| 8 |
Đèn LED chỉ thị + Còi báo (Buzzer) |
4 + 1 |
5V |
Báo trạng thái hệ thống |
| 9 |
Mạch hạ áp LM2596 |
1 |
Vào max 40V, ra 5V |
Cấp nguồn hạ áp |
Tính toán thông số nguồn:
- Tổng dòng điện tiêu thụ toàn mạch ở mức tải danh định:
$$I_{mạch} = I_{Arduino} + I_{LCD} + 2 \times I_{E18-D80NK} + I_{Barcode} = 30\text{ mA} + 0.6\text{ mA} + 200\text{ mA} + 120\text{ mA} = 350.6\text{ mA} \approx 0.35\text{ A}$$
- Công suất tiêu thụ của hệ thống điều khiển logic (nguồn 5V):
$$P = U \times I = 5\text{V} \times 0.35\text{A} = 1.75\text{ W}$$
Quy trình chế tạo mạch in (PCB) được thực hiện qua các công đoạn: thiết kế mạch nguyên lý và layout trên Altium Designer, in decal, ủi nhiệt lên board đồng, ngâm rửa dung dịch ăn mòn, khoan lỗ chân linh kiện, quét nhựa thông bảo vệ bề mặt và hàn linh kiện hoàn thiện.
3. Thuật toán điều khiển và quy trình vận hành
Chương trình điều khiển được xây dựng dựa trên các lưu đồ thuật toán chuyên biệt: Lưu đồ tổng, lưu đồ nút YES, lưu đồ nút NO, lưu đồ cảm biến vật cản 1 (CBVC_1), lưu đồ cảm biến vật cản 2 (CBVC_2), lưu đồ nút RESET và lưu đồ công tắc hành trình (CTHT_TRÊN, CTHT_DƯỚI).
Hệ thống vận hành theo 2 kịch bản chính:
Nội dung chính theo từng chương
MỞ ĐẦU
Trình bày tính cấp thiết của việc tự động hóa khâu trả sách tại thư viện trường đại học; nêu rõ mục tiêu, đối tượng nghiên cứu, ý nghĩa thực tiễn của đề tài trong việc giảm tải áp lực hành chính và hỗ trợ phục vụ bạn đọc 24/24; bố cục toàn bộ báo cáo gồm 3 chương chính cùng phần mở đầu, kết luận và tài liệu tham khảo.
CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI
- Phân tích khái niệm quản lý thư viện truyền thống và các mô hình thư viện hiện đại có ứng dụng công nghệ thông tin (thư viện số, thư viện lai, thư viện ảo).
- Trình bày lịch sử phát triển của công nghệ mã vạch từ ý tưởng ban đầu của Bernard Silver và Norman Joseph Woodland (1940 - 1949) đến khi chuẩn UPC được thương mại hóa trong thập niên 1970.
- Khái quát nguyên lý kỹ thuật, cấu trúc định dạng và khả năng lưu trữ của mã vạch 1D (UPC, EAN-13, ITF) và mã vạch 2D (QR Code, DataMatrix).
- Nêu các thách thức thực tế trong quản lý thư viện bằng mã vạch: độ bền nhãn in, giới hạn dung lượng mã tuyến tính, nguy cơ bụi bẩn làm giảm khả năng nhận dạng quang học.
- Xác định phạm vi nghiên cứu phần cứng (GM65, TB6600, Arduino, cảm biến hồng ngoại, LCD), phạm vi ứng dụng và kết quả bước đầu về khả năng truyền nhận dữ liệu hai chiều với hệ thống thư viện trường.
CHƯƠNG 2. CƠ SỞ LÍ THUYẾT
- Giới thiệu ngôn ngữ lập trình C/C++: lịch sử ra đời năm 1979 tại Bell Labs bởi Bjarne Stroustrup, đặc tính ngôn ngữ bậc trung, hỗ trợ đa mô hình và các lĩnh vực ứng dụng (hệ điều hành, game, ứng dụng xử lý đồ họa, cơ sở dữ liệu MySQL).
- Trình bày cấu trúc, chức năng trình chỉnh sửa và biên dịch của phần mềm mã nguồn mở Arduino IDE.
- Tổng quan phần mềm thiết kế mạch điện tử Altium Designer và quy trình 7 bước từ thiết kế nguyên lý, chọn chân linh kiện, định kích thước PCB đến đi dây mạch in.
- Phân tích nguyên lý giao tiếp I2C: cấu tạo đường truyền SCL/SDA, mạch Open Drain, điện trở kéo (1–4.7 kΩ), cấu trúc khung truyền địa chỉ, bit R/W, bit ACK/NACK, các chế độ truyền 100 kBit/s và 10 kBit/s.
- Phân loại chuẩn giao tiếp USB và bảng thông số tốc độ truyền nhận từ USB 1.0 đến USB 3.2.
- Thống kê cấu tạo, nguyên lý và thông số của các linh kiện cơ khí (khớp nối mềm, gối đỡ KFL002, con trượt LMK6UU, puly GT2, vít me) và linh kiện điện tử (cảm biến E18-D80NK, màn hình LCD I2C, module GM65, IC hạ áp LM2596, vi điều khiển Arduino Uno R3, động cơ bước).
CHƯƠNG 3. THIẾT KẾ VÀ THI CÔNG
- Bản vẽ mô phỏng 3D cơ khí hệ thống trên Creo, xác định kích thước khung máy ($80 \times 80 \times 50\text{ cm}$), kích thước băng chuyền ($60 \times 50\text{ cm}$) và mâm nâng ($44 \times 20\text{ cm}$).
- Thiết kế sơ đồ nguyên lý toàn mạch, tính toán dòng điện ($I \approx 0.35\text{ A}$) và công suất tiêu thụ ($P = 1.75\text{ W}$) trên đường nguồn 5V.
- Quy trình gia công chế tạo mạch in thực tế qua các bước cắt phôi đồng, ngâm rửa hóa chất ăn mòn, khoan và hàn linh kiện.
- Xây dựng sơ đồ khối toàn hệ thống và hệ thống lưu đồ thuật toán điều khiển chi tiết cho từng nút nhấn và cảm biến.
- Trình bày chi tiết các bước vận hành thực tế của mô hình: chu trình đưa sách vào, quét mã Barcode GM65, đối soát dữ liệu máy tính, hạ bàn nâng tự động khi nhận sách hợp lệ và đảo chiều băng chuyền trả lại sách khi không hợp lệ.
Kết quả và đóng góp
1. Kết quả kỹ thuật đạt được
- Chế tạo hoàn chỉnh một mô hình phần cứng tích hợp cơ khí – điện tử – phần mềm với kích thước thực nghiệm $80 \times 80 \times 50\text{ cm}$.
- Hệ thống tiếp nhận sách, tự động giảm tốc độ băng chuyền khi gặp cảm biến CBVC_1 để module quang học GM65 đọc mã vạch 1D/2D dán trên sách.
- Tích hợp thành công giao tiếp giữa mạch vi điều khiển Arduino Uno R3 với máy tính cài phần mềm thư viện trường nhằm đối soát dữ liệu mã sách.
- Thiết lập cơ chế phân loại 2 trạng thái: chấp nhận sách (băng tải đẩy sách vào mâm nâng, động cơ bước hạ mâm xuống tự động theo tín hiệu cảm biến CBVC_2, cập nhật trạng thái "đã trả" trên cơ sở dữ liệu) hoặc từ chối sách (băng tải quay lùi đưa sách ra ngoài).
- Tích hợp hệ thống an toàn và cảnh báo: tự ngắt khi bàn nâng chạm công tắc hành trình dưới (báo đầy) và phát còi báo hiệu sau khi hoàn tất reset đưa bàn nâng về vị trí công tắc hành trình trên.
2. Đóng góp của đề tài
- Cung cấp một giải pháp tự động hóa quy trình trả sách có khả năng ứng dụng thực tế tại thư viện Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng, giúp giảm thiểu thời gian chờ đợi của bạn đọc và giảm tải khối lượng công việc kiểm kê thủ công cho thủ thư.
- Hiện thực hóa mô hình liên kết trực tiếp giữa cơ cấu chấp hành phần cứng (băng chuyền, bàn nâng vít me) với phần mềm quản lý cơ sở dữ liệu thư viện.
Hạn chế và hướng nghiên cứu tiếp
1. Hạn chế
- Hệ thống nhận diện phụ thuộc vào chất lượng in của mã Barcode/QR; các yếu tố môi trường như bụi bẩn, nhãn mã bị mờ hoặc rách có thể làm giảm khả năng nhận diện của đầu đọc GM65.
- Quá trình phân loại chấp thuận (YES) hoặc từ chối (NO) trong quy trình thực nghiệm trên mô hình vẫn cần sự can thiệp kích hoạt nút bấm điều khiển theo dõi trên giao diện phần mềm máy tính.
- Mô hình mới dừng lại ở phạm vi kết nối thử nghiệm nội bộ với cơ sở dữ liệu thư viện của Trường Đại học Sư phạm Kỹ thuật Đà Nẵng, chưa triển khai diện rộng ở quy mô công nghiệp.
2. Hướng phát triển tiếp theo
- Nâng cấp thuật toán để vi điều khiển tự động nhận tín hiệu phản hồi trực tiếp từ phần mềm thư viện qua cổng giao tiếp mà không cần thao tác bấm nút trung gian.
- Mở rộng cơ cấu cơ khí và nâng cấp hệ thống cảm biến quang học đa góc quét để nhận dạng mã vạch ở nhiều vị trí đặt sách khác nhau, đồng thời chống kẹt sách khi trả nhiều tài liệu liên tục.
- Phát triển thêm các module truyền thông không dây (Wifi/Ethernet) để gửi thông báo tức thì kết quả trả sách đến tài khoản cá nhân của độc giả qua ứng dụng hoặc thư điện tử.
Giá trị tham khảo
Tài liệu đồ án là nguồn tham khảo hữu ích cho sinh viên, giảng viên và kỹ sư trong các lĩnh vực:
- Ngành Kỹ thuật Điện tử, Tự động hóa, Cơ điện tử: Tham khảo phương pháp thiết kế mạch in chuyên dụng trên Altium Designer, kỹ thuật ghép nối vi điều khiển Arduino Uno R3 với module Barcode GM65, cách lập trình phát xung điều khiển động cơ bước qua driver TB6600, và cơ chế định vị bàn nâng bằng cảm biến quang hồng ngoại E18-D80NK kết hợp công tắc hành trình.
- Ngành Công nghệ Thông tin, Hệ thống Thông tin Quản lý: Tham khảo giải pháp kết nối, truyền nhận dữ liệu nối tiếp giữa phần cứng nhúng và phần mềm quản lý cơ sở dữ liệu thư viện phục vụ chuyển đổi số quy trình quản lý.
- Cán bộ quản lý thư viện trường học: Tham khảo mô hình kiến trúc tự động hóa để xây dựng các trạm trả sách thông minh phục vụ bạn đọc 24/24.
Câu hỏi thường gặp
1. Module Barcode GM65 trong hệ thống hỗ trợ đọc những chuẩn mã vạch nào?
Module GM65 tích hợp trong đồ án hỗ trợ đọc cả mã vạch 1D tuyến tính (như UPC-A, UPC-E, EAN-8, EAN-13, Code 39, Code 128, Interleaved 2 of 5) và mã vạch 2D ma trận (bao gồm QR Code, DataMatrix, PDF417), với điện áp hoạt động từ 4.2V đến 8V DC và dòng tiêu thụ từ 30 mA đến 120 mA.
2. Cơ cấu bàn nâng chứa sách hoạt động theo nguyên lý nào khi có sách rơi xuống?
Khi sách hợp lệ rơi từ băng chuyền xuống bàn nâng, cảm biến vật cản hồng ngoại 2 (CBVC_2) đặt tại khu vực mâm nâng sẽ phát hiện sự hiện diện của sách. Tín hiệu này kích hoạt vi điều khiển điều khiển động cơ bước kéo trục vít me quay, hạ bàn nâng xuống từng nấc cho đến khi bề mặt cuốn sách mới không còn che khuất chùm tia của cảm biến CBVC_2.
3. Hệ thống xử lý ra sao trong trường hợp sách không thuộc thư viện hoặc mã vạch không quét được?
Khi phần mềm đối soát dữ liệu xác định mã sách không tồn tại trong cơ sở dữ liệu thư viện trường hoặc module GM65 không đọc được mã, tín hiệu nút NO được kích hoạt. Ngay lập tức, vi điều khiển phát lệnh đảo chiều quay động cơ băng chuyền, đưa cuốn sách chạy lùi trở lại cửa nhận ban đầu để trả lại cho người dùng.
4. Hệ thống nhận biết trạng thái bàn nâng đã đầy sách bằng cách nào?
Hệ thống sử dụng một công tắc hành trình dưới (CTHT_DƯỚI) lắp tại giới hạn hành trình đáy của khung nâng. Khi lượng sách xếp chồng lên bàn nâng làm mâm hạ xuống đến mức tối đa và chạm vào công tắc này, hệ thống sẽ tự động ngắt mạch điều khiển băng chuyền, khóa tiếp nhận sách mới và phát cảnh báo để nhân viên thư viện tiến hành thu gom sách.
5. Tổng công suất tiêu thụ điện năng của khối mạch điều khiển logic trong mô hình là bao nhiêu?
Theo tính toán thiết kế của đồ án, tổng dòng điện tiêu thụ tối đa của toàn bộ khối điều khiển logic (gồm Arduino Uno R3, màn hình LCD 16×2 I2C, 2 cảm biến quang E18-D80NK và module GM65) ở mức điện áp 5V là khoảng 350.6 mA ($\approx 0.35\text{ A}$), tương ứng với công suất tiêu thụ điện năng ước tính là 1.75 W.
Kết luận
Đồ án tốt nghiệp "Xây dựng hệ thống trả sách tự động cho thư viện" của sinh viên Nguyễn Xuân Tính và Trần Minh Thắng đã hoàn thành trọn vẹn việc thiết kế và chế tạo một mô hình trả sách tự động hoàn chỉnh dựa trên nền tảng vi điều khiển Arduino Uno R3, module quét mã GM65 và cơ cấu truyền động động cơ bước. Hệ thống giải quyết hiệu quả bài toán tự động nhận diện mã vạch, phân loại sách, tự động hạ mâm chứa và liên kết dữ liệu với hệ thống quản lý thư viện của Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng. Đây là tài liệu kỹ thuật có giá trị tham khảo thực tiễn cao cho các nghiên cứu ứng dụng hệ thống nhúng và cơ điện tử trong tự động hóa dịch vụ thư viện hiện đại.