Giới thiệu dự án

Trong bối cảnh chuyển đổi số giáo dục đại học và tự động hóa dịch vụ công cộng, các thư viện truyền thống đang đối mặt với bài toán tối ưu hóa quy trình lưu thông tài liệu. Theo thống kê từ Hiệp hội Thư viện Đại học Quốc tế, quy trình mượn - trả sách thủ công chiếm tới 45–60% tổng quỹ thời gian làm việc của thủ thư, đồng thời tạo ra điểm nghẽn nghiêm trọng vào các khung giờ cao điểm (cuối kỳ thi, giờ nghỉ trưa) và hoàn toàn bị gián đoạn ngoài giờ hành chính.

Đề tài "Xây dựng hệ thống trả sách tự động cho thư viện" do nhóm sinh viên Nguyễn Xuân Tính và Trần Minh Thắng (Khoa Điện – Điện tử, Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng) thực hiện dưới sự hướng dẫn của ThS. Hoàng Bá Đại Nghĩa, giải quyết triệt để các hạn chế của phương thức vận hành truyền thống. Hệ thống tích hợp công nghệ quang học quét mã vạch Barcode/QR Code, cơ điện tử chính xác và vi điều khiển nhúng nhằm thiết lập chu trình tự động hóa khép kín: tiếp nhận sách, giải mã định danh, xác thực cơ sở dữ liệu (CSDL), cơ chế nạp - trả đảo chiều và xếp chồng tự động vào khay chứa.

flowchart LR
    A[Người đọc đặt sách] --> B[Cảm biến E18-D80NK #1]
    B --> C[Băng tải chuyển động]
    C --> D[Module Barcode GM65 quét mã]
    D --> E{Xác thực CSDL Thư viện}
    E -- Hợp lệ (YES) --> F[Băng tải đẩy sách vào mâm]
    F --> G[Cảm biến E18-D80NK #2 phát hiện]
    G --> H[Động cơ vít me hạ mâm nâng]
    E -- Không hợp lệ (NO) --> I[Băng tải đảo chiều trả lại]
    H --> J{Đầy khay - CTHT Dưới?}
    J -- Đầy --> K[Dừng hệ thống & Báo còi]
    J -- Chưa đầy --> L[Sẵn sàng đón sách tiếp]

Mục tiêu cụ thể của dự án

  1. Thiết kế và gia công cơ khí chính xác: Chế tạo mô hình kích thước $800 \times 800 \times 500\text{ mm}$ gồm cụm băng chuyền con lăn dẫn động dây đai Puly GT2 và cụm mâm nâng trục vít me – con trượt dẫn hướng LMK6UU.
  2. Thiết kế mạch điều khiển nhúng: Tích hợp vi điều khiển ATmega328P (Arduino Uno R3), driver công suất TB6600, mạch chuyển tiếp I2C PCF8574, module giảm áp DC-DC LM2596 và các cảm biến quang điện.
  3. Phát triển thuật toán xử lý và đồng bộ dữ liệu: Ứng dụng module GM65 giải mã chuẩn 1D/2D tốc độ cao, giao tiếp UART/USB truyền dữ liệu định danh lên phần mềm quản lý thư viện máy chủ.
  4. Hiện thực hóa quy trình phân loại và bảo vệ tự động: Đảm bảo tự động đảo chiều băng tải khi phát hiện sách không hợp lệ và tự động hạ mâm hứng phân tầng, ngắt khẩn cấp khi đầy tải bằng công tắc hành trình.

Phạm vi và giới hạn đề tài

  • Phạm vi nghiên cứu: Ứng dụng thực tế tại Trung tâm Thông tin – Thư viện Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng.
  • Giới hạn kỹ thuật: Hệ thống tối ưu hóa cho các loại sách chuẩn kích thước từ khổ A5 đến B5, độ dày từ $10\text{ mm}$ đến $50\text{ mm}$, trọng lượng tối đa $2.5\text{ kg/cuốn}$ và tổng tải trọng mâm nâng đạt $15\text{ kg}$.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí kỹ thuật / Vận hành Phương pháp thủ công (Librarian Desk) Kiosk trả sách RFID công nghiệp Hệ thống trả sách tự động Barcode GM65 (Đồ án)
Thời gian xử lý/cuốn $30 - 60\text{ giây}$ $3 - 5\text{ giây}$ $6 - 8\text{ giây}$
Thời gian hoạt động Giới hạn hành chính (8h/ngày) 24/7 liên tục 24/7 liên tục
Chi phí đầu tư phần cứng Thấp (Bàn giao dịch, PC) Rất cao ($15.000 - $35.000) Rất thấp ($150 - $250 cho mô hình)
Chi phí vật tư tiêu hao Thấp (Thẻ từ/Barcode dán) Cao (Chip RFID UHF/HF cho từng cuốn) Gần như bằng 0 (Tận dụng mã Barcode sẵn có)
Tự động xếp chồng vật lý Không (Thủ thư tự xếp) Có (Cần hệ thống phân loại cồng kềnh) Có (Mâm nâng trục vít me tích hợp)
Tỷ lệ nhận diện lỗi Sai sót con người ($2 - 5%$) Thấp ($< 0.5%$) Thấp ($< 0.8%$ với mã nguyên vẹn)

Phân loại yêu cầu hệ thống theo mô hình MoSCoW

  • Must have (Bắt buộc): Nhận diện chính xác mã Barcode 1D (EAN-13, Code 128) và 2D (QR Code); đảo chiều băng tải trả sách khi không hợp lệ; hạ mâm nâng tự động khi sách tiếp nhận thành công; ngắt an toàn khi khay chứa đầy.
  • Should have (Nên có): Màn hình hiển thị LCD 16x2 I2C thông báo trạng thái trực quan; còi báo buzzer cảnh báo đầy khay và hoàn tất reset.
  • Could have (Có thể mở rộng): Đèn LED RGB chỉ thị trạng thái luồng xử lý; kết nối không dây ESP32/Wi-Fi gửi log realtime qua RESTful API.
  • Won't have (Chưa thực hiện ở giai đoạn này): Cánh tay robot phân loại sách đa ngăn (Multi-bin sorting).

Thiết kế hệ thống

graph TD
    subgraph Khối Nguồn
        PSU[Nguồn tổng 24VDC/5A] --> LM2596[Hạ áp LM2596 DC-DC 5V/3A]
        LM2596 --> MCU[Arduino Uno R3 ATmega328P]
        LM2596 --> Sensors[Cảm biến E18-D80NK & GM65]
        PSU --> TB6600_1[Driver TB6600 #1]
        PSU --> TB6600_2[Driver TB6600 #2]
    end

    subgraph Khối Cảm Biến & Nhận Diện
        E18_1[Cảm biến vật cản CBVC_1] -->|Digital In| MCU
        E18_2[Cảm biến vật cản CBVC_2] -->|Digital In| MCU
        CTHT_Top[Công tắc hành trình Trên] -->|Digital In| MCU
        CTHT_Bot[Công tắc hành trình Dưới] -->|Digital In| MCU
        GM65[Module GM65 Barcode Reader] -->|UART/USB Serial| PC[Host PC / Library Database]
    end

    subgraph Khối Xử Lý & Điều Khiển
        PC -->|Lệnh logic YES/NO| ControlPanel[Nút bấm / Giao diện Điều khiển]
        ControlPanel -->|Tín hiệu logic| MCU
        MCU -->|I2C Bus: SDA/SCL| LCD[Màn hình LCD 16x2 + PCF8574]
        MCU -->|PUL/DIR/ENA| TB6600_1 --> Motor1[Động cơ bước 1: Băng tải]
        MCU -->|PUL/DIR/ENA| TB6600_2 --> Motor2[Động cơ bước 2: Vít me mâm nâng]
        MCU -->|Digital Out| Buzzer[Còi báo Buzzer 5V]
    end

Tính toán công suất và thông số điện áp

Hệ thống sử dụng đường bus $5\text{VDC}$ cấp nguồn cho khối điều khiển và logic cảm biến:

$$\begin{aligned} I_{\text{mạch logic}} &= I_{\text{Arduino}} + I_{\text{LCD}} + 2 \times I_{\text{E18-D80NK}} + I_{\text{GM65}} \ &= 30\text{ mA} + 0.6\text{ mA} + (2 \times 100\text{ mA}) + 120\text{ mA} = 350.6\text{ mA} \approx 0.35\text{ A} \end{aligned}$$

$$P_{\text{logic}} = U \times I = 5\text{ V} \times 0.3506\text{ A} \approx 1.753\text{ W}$$

Nguồn động lực cấp riêng cho 2 động cơ bước lưỡng cực qua Driver TB6600 hoạt động ở điện áp $24\text{VDC}$, dòng cài đặt $2.0\text{ A/pha}$ qua cấu hình DIP switch trên TB6600, đảm bảo mô-men xoắn giữ tải khi mâm nâng chứa sách đầy.

Đặc tả phần cứng và phiên bản công nghệ

  • Vi điều khiển trung tâm: Arduino Uno R3 (ATmega328P, clock $16\text{ MHz}$, $32\text{ KB}$ Flash, $2\text{ KB}$ SRAM).
  • Đầu đọc mã vạch: GM65 1D/2D CMOS Engine (độ phân giải $640 \times 480\text{ pixels}$, góc quét ngang $28^\circ$, dọc $21.5^\circ$, hỗ trợ giao tiếp UART TTL và USB HID/VCP).
  • Driver công suất: 2x TB6600 Stepper Driver IC (hỗ trợ dòng đỉnh $4.0\text{ A}$, điện áp $9 - 42\text{VDC}$, vi bước $1/1, 1/2, 1/4, 1/8, 1/16$).
  • Cảm biến tiệm cận: 2x E18-D80NK NPN Infrared Photoelectric Switch (khoảng cách phát hiện $3 - 80\text{ cm}$, điều chỉnh qua biến trở tích hợp).
  • Màn hình hiển thị: LCD 1602 kèm mạch chuyển đổi I2C PCF8574 (tần số SCL $100\text{ kHz}$, địa chỉ phần cứng mặc định 0x27).
  • Mạch ổn áp: LM2596 Step-Down DC-DC Converter (tần số chuyển mạch $150\text{ kHz}$, hiệu suất đạt $92%$).
  • Cơ khí chính xác: Vít me bi T8 bước $8\text{ mm}$, gối đỡ KFL002 trục $\phi 10$, con trượt LMK6UU, puly nhôm GT2 60 răng, dây đai cao su cốt sợi thủy tinh GT2.

Methodology

Quy trình thực hiện kết hợp phương pháp kỹ thuật đồng thời (Concurrent Engineering) giữa thiết kế mạch nhúng (Altium Designer), mô hình hóa động học 3D (PTC Creo) và phát triển phần mềm nhúng (Embedded C++ trên Arduino IDE).

gantt
    title Kế hoạch triển khai dự án (16 Tuần)
    dateFormat  YYYY-MM-DD
    section Nghiên cứu & Thiết kế
    Khảo sát yêu cầu thư viện & CSDL        :a1, 2023-03-01, 2w
    Thiết kế 3D cơ khí trên Creo            :a2, after a1, 3w
    Thiết kế Schematic & PCB trên Altium    :a3, after a1, 3w
    section Chế tạo & Lắp ráp
    Gia công khung cơ khí & mâm nâng        :b1, after a2, 3w
    Gia công mạch in & hàn linh kiện        :b2, after a3, 2w
    section Lập trình & Tích hợp
    Lập trình điều khiển động cơ & cảm biến :c1, after b2, 3w
    Tích hợp module GM65 & CSDL thư viện    :c2, after c1, 2w
    section Thử nghiệm & Tối ưu
    Thử nghiệm độ tin cậy & tinh chỉnh bước :d1, after c2, 2w
    Đánh giá nghiệm thu & hoàn thiện báo cáo:d2, after d1, 1w

Implementation và kết quả

Development process

Quá trình thi công phần cứng trải qua các bước:

  1. Thiết kế và chế tạo PCB: Sử dụng phần mềm Altium Designer xuất file Gerber, thực hiện ăn mòn hóa học bằng dung dịch Ferric Chloride ($\text{FeCl}_3$), khoan lỗ chân linh kiện và phủ nhựa thông bảo vệ chống oxy hóa.
  2. Lắp ráp cơ khí: Khung máy dựng bằng nhôm định hình $20\times20\text{ mm}$, gia công mặt bàn nâng bằng Mica cắt CNC, lắp ráp trục dẫn hướng và căn chỉnh đồng trục giữa động cơ bước và vít me thông qua khớp nối mềm hợp kim nhôm $5\times8\text{ mm}$.
// Trích đoạn mã nguồn C++ điều khiển chu trình cuốn sách và định vị mâm nâng
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

// Khai báo chân điều khiển Driver TB6600
const int STEP_PIN_CONVEYOR = 3;
const int DIR_PIN_CONVEYOR  = 4;
const int STEP_PIN_LIFTER   = 5;
const int DIR_PIN_LIFTER    = 6;

// Khai báo chân cảm biến quang và công tắc hành trình
const int SENSOR_ENTRY = 7;   // E18-D80NK #1 (Cửa nạp)
const int SENSOR_DROP  = 8;   // E18-D80NK #2 (Bàn nâng)
const int LIMIT_BOTTOM = 9;   // Công tắc hành trình dưới
const int LIMIT_TOP    = 10;  // Công tắc hành trình trên
const int BUZZER_PIN   = 11;  // Còi báo

void setup() {
  pinMode(STEP_PIN_CONVEYOR, OUTPUT);
  pinMode(DIR_PIN_CONVEYOR, OUTPUT);
  pinMode(STEP_PIN_LIFTER, OUTPUT);
  pinMode(DIR_PIN_LIFTER, OUTPUT);
  
  pinMode(SENSOR_ENTRY, INPUT_PULLUP);
  pinMode(SENSOR_DROP, INPUT_PULLUP);
  pinMode(LIMIT_BOTTOM, INPUT_PULLUP);
  pinMode(LIMIT_TOP, INPUT_PULLUP);
  pinMode(BUZZER_PIN, OUTPUT);

  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("SYSTEM READY...");
}

// Hàm phát xung điều khiển bước không trễ
void stepMotor(int stepPin, int steps, int speedDelayUs) {
  for (int i = 0; i < steps; i++) {
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(speedDelayUs);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(speedDelayUs);
  }
}

// Xử lý chu trình nhận sách hợp lệ
void processAcceptBook() {
  lcd.clear();
  lcd.print("PROCESSING BOOK");
  digitalWrite(DIR_PIN_CONVEYOR, HIGH); // Băng tải chạy thuận
  
  // Đẩy sách đến khi rơi xuống mâm nâng
  while (digitalRead(SENSOR_DROP) == HIGH) {
    stepMotor(STEP_PIN_CONVEYOR, 50, 800);
  }
  
  // Sách rơi trúng mâm -> Hạ mâm nâng một khoảng cách delta_h
  digitalWrite(DIR_PIN_LIFTER, LOW); // Chiều hạ
  while (digitalRead(SENSOR_DROP) == LOW) {
    stepMotor(STEP_PIN_LIFTER, 100, 600); // Hạ mâm đến khi cảm biến hết bị che
    if (digitalRead(LIMIT_BOTTOM) == LOW) {
      handleTrayFull();
      break;
    }
  }
  lcd.setCursor(0, 1);
  lcd.print("RETURN SUCCESS!");
}

void handleTrayFull() {
  lcd.clear();
  lcd.print("TRAY FULL! STOP");
  digitalWrite(BUZZER_PIN, HIGH);
}

Testing và validation

Hệ thống được kiểm thử thực nghiệm qua 200 lượt quét liên tục với nhiều điều kiện mã vạch và trạng thái tải khác nhau:

[Báo cáo kiểm thử hiệu năng hệ thống]
+------------------------------------+----------------+---------------+-------------+
| Kịch bản kiểm thử                  | Số mẫu thử (N) | Thành công    | Tỷ lệ (%)   |
+------------------------------------+----------------+---------------+-------------+
| Quét mã vạch 1D EAN-13 tiêu chuẩn  | 100            | 100           | 100.0%      |
| Quét mã QR Code 2D kích thước 2x2cm| 50             | 49            | 98.0%       |
| Quét mã vạch bị trầy xước nhẹ (15%)| 30             | 28            | 93.3%       |
| Trả sách sai nguồn gốc (Đảo chiều) | 20             | 20            | 100.0%      |
+------------------------------------+----------------+---------------+-------------+
| TỔNG HỢP TOÀN BỘ CHU TRÌNH         | 200            | 197           | 98.5%       |
+------------------------------------+----------------+---------------+-------------+
- Thời gian trung bình 1 chu trình: 6.82 giây / cuốn
- Độ lệch cơ khí hạ tầng mâm nâng: ± 0.35 mm sau 50 chu trình liên tiếp
- Điện áp sụt tải tối đa trên đường 5V: 0.12 V (Hoàn toàn nằm trong ngưỡng logic an toàn)

Kết quả đạt được

  • Tự động hóa $100%$ quy trình trả sách: Loại bỏ hoàn toàn sự can thiệp của thủ thư trong khâu tiếp nhận, kiểm tra dữ liệu và xếp chồng.
  • Thời gian đáp ứng siêu tốc: Giảm thời gian trả sách từ $45\text{ giây}$ (thủ công) xuống còn trung bình $6.8\text{ giây}$ (giảm $84.8%$).
  • Độ tin cậy cơ khí cao: Cơ cấu vít me và cảm biến quang CBVC_2 giúp mâm nâng tự động thích ứng với các cuốn sách có độ dày mỏng khác nhau, tự điều chỉnh hạ đúng khoảng cách bằng chiều dày thực tế của tài liệu.

Đổi mới và đóng góp

  1. Cơ chế nạp - hạ mâm nâng thích ứng thông minh (Adaptive Drop-Leveling): Khác với các mô hình thùng chứa rơi tự do gây hư hại bìa sách, hệ thống sử dụng thuật toán phản hồi kín từ cảm biến quang $E18\text{-}D80NK\ #2$. Mâm nâng chỉ hạ vừa đủ khoảng cách để bề mặt cuốn sách vừa rơi xuống giải phóng vùng quét của cảm biến, bảo đảm sách luôn được tiếp nhận nhẹ nhàng và xếp phẳng đều đặn.
  2. Chi phí chế tạo siêu tiết kiệm: Với tổng kinh phí nghiên cứu và chế tạo mô hình dưới $5.000.000\text{ VNĐ}$, giải pháp mang lại hiệu quả tương đương các trạm trả sách nhập khẩu trị giá hàng trăm triệu đồng.
  3. Tính tương thích hệ thống cao: Module GM65 hỗ trợ đọc đa định dạng mã (EAN-13, UPC-A, Code 39, Code 128, QR Code, Data Matrix), dễ dàng tích hợp vào bất kỳ phần mềm quản lý thư viện hiện hành nào (như Koha, DSpace, PMB) thông qua giao tiếp USB HID/Virtual COM mà không cần thay đổi cấu trúc mã vạch hiện có của nhà trường.

Ứng dụng thực tế và triển khai

Trường hợp sử dụng (Real-World Use Cases)

  • Trạm trả sách tự hành 24/7 ngoài sảnh thư viện: Sinh viên có thể trả sách bất kỳ lúc nào ngoài giờ hành chính mà không phụ thuộc vào ca trực của thủ thư.
  • Tích hợp trả sách tại các điểm vệ tinh trong khuôn viên trường: Đặt tại ký túc xá, giảng đường trung tâm; định kỳ nhân viên thư viện chỉ cần đến thu gom sách từ khay chứa đã được xếp ngay ngắn.

Yêu cầu triển khai hệ thống (System Requirements)

  • Phần cứng:
    • Khung vỏ kim loại/Mica chống bụi và cách điện ($800 \times 800 \times 500\text{ mm}$).
    • Nguồn cấp: $220\text{VAC} \rightarrow 24\text{VDC}/5\text{A}$ Switch Mode Power Supply (SMPS).
    • Máy tính điều khiển (Host PC hoặc Raspberry Pi 4 Model B) kết nối mạng LAN thư viện.
  • Phần mềm:
    • Hệ điều hành Windows 10/11 hoặc Linux Ubuntu 20.04 LTS.
    • Driver giao tiếp CH340 / FTDI USB-to-UART.
    • Phần mềm Client quản lý thư viện có khả năng bắt sự kiện quét mã và phát lệnh Serial.

Phân tích hiệu quả kinh tế (ROI Analysis)

  • Chi phí đầu tư ước tính cho 1 trạm: $\sim 6.500.000\text{ VNĐ}$ (bao gồm gia công công nghiệp).
  • Tiết kiệm chi phí nhân sự: Cắt giảm $1$ nhân sự trực quầy ca ngoài giờ ($\sim 4.000.000\text{ VNĐ/tháng}$).
  • Thời gian hoàn vốn (Payback Period): Chưa đầy $2\text{ tháng}$ vận hành thực tế.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Phụ thuộc vào hướng đặt sách: Người đọc bắt buộc phải đặt mặt có mã vạch ngửa lên trên đúng luồng quét của module GM65.
  • Góc quét giới hạn: Nếu mã vạch dán ở gáy sách hoặc bị cong gập quá mức, hiệu suất giải mã quang học có thể suy giảm.
  • Xếp chồng đơn điểm: Hệ thống chỉ có 1 ngăn chứa, chưa phân loại sách theo từng chuyên ngành hoặc thể loại trực tiếp khi trả.

Hướng phát triển nâng cao

  1. Tích hợp công nghệ RFID UHF: Bổ sung đầu đọc RFID tầm xa cho phép nhận diện tài liệu đa hướng, đọc đồng thời nhiều cuốn sách mà không cần căn chỉnh vị trí mã vạch.
  2. Nâng cấp cơ cấu phân loại đa ngăn (Multi-sorting): Sử dụng hệ thống tay gạt servo hoặc băng chuyền phân nhánh để tự động phân loại sách về các khay chuyên biệt theo mã DDC (Dewey Decimal Classification).
  3. Phát triển ứng dụng di động: Gửi thông báo đẩy (Push Notification) qua App điện thoại xác nhận việc trả sách thành công và cập nhật tức thì trạng thái tài khoản cho bạn đọc.

Đối tượng hưởng lợi

  • Sinh viên & Bạn đọc: Trả sách nhanh chóng trong $7\text{ giây}$, không phải xếp hàng chờ đợi; linh hoạt trả sách $24/7$ kể cả ngày nghỉ, tránh phát sinh phí phạt quá hạn.
  • Cán bộ quản lý thư viện: Giảm tải $80%$ công việc thủ công lặp lại; tự động hóa khâu kiểm đếm và kiểm soát thất thoát tài liệu chính xác nhờ đồng bộ CSDL.
  • Nhà trường & Cơ sở đào tạo: Hiện đại hóa cơ sở vật chất, nâng cao chất lượng dịch vụ giáo dục đạt chuẩn kiểm định quốc tế; tiết kiệm ngân sách đầu tư trang thiết bị.
  • Sinh viên ngành Kỹ thuật - Nhóm nghiên cứu: Tài liệu tham khảo toàn diện về tích hợp hệ thống cơ điện tử: lập trình vi điều khiển, điều khiển động cơ bước chính xác, giao tiếp I2C/UART và xử lý cảm biến công nghiệp.

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống này là gì?

Hệ thống yêu cầu nguồn điện lưới $220\text{VAC}$ ổn định, kết nối mạng LAN/Wi-Fi đến máy chủ CSDL thư viện, và một cổng USB trên máy tính trạm để kết nối vi điều khiển cùng đầu đọc barcode GM65.

2. Nếu người dùng cố tình bỏ vật lạ hoặc sách không thuộc thư viện vào thì sao?

Cảm biến lối vào $E18\text{-}D80NK\ #1$ vẫn kích hoạt băng tải nạp vật thể vào vùng quét. Tuy nhiên, khi module GM65 không đọc được mã hợp lệ hoặc CSDL phản hồi mã sách không tồn tại trong hệ thống, vi điều khiển sẽ kích hoạt đảo chiều quay của động cơ bước băng tải, trả vật thể ngược lại khay nạp ban đầu cho người dùng.

3. Hệ thống xử lý thế nào khi khay chứa mâm nâng bị đầy sách?

Khi mâm nâng chứa đầy sách và chạm tới ngưỡng dưới cùng, nó sẽ tác động vào công tắc hành trình CTHT_DƯỚI. Vi điều khiển ngay lập tức khóa lệnh nạp sách mới, hiển thị cảnh báo TRAY FULL lên màn hình LCD và kích hoạt còi buzzer báo cho nhân viên thư viện đến mở khóa lấy sách.

4. Chi phí bảo dưỡng hệ thống định kỳ bao gồm những gì?

Chi phí bảo dưỡng rất thấp, chủ yếu bao gồm tra dầu bôi trơn trục vít me bi và ray trượt LMK6UU định kỳ $6\text{ tháng/lần}$, vệ sinh mặt kính quang học của module GM65 bằng cồn chuyên dụng để đảm bảo độ nhạy nhận diện.

5. Hệ thống có thể tích hợp với các phần mềm thư viện mã nguồn mở như Koha không?

Hoàn toàn tương thích. Module GM65 xuất dữ liệu mã vạch dưới dạng chuỗi chuẩn (String) qua giao tiếp bàn phím ảo (USB HID) hoặc Virtual Serial Port, cho phép tích hợp trực tiếp vào module tiếp nhận (Circulation/Check-in) của phần mềm Koha mà không cần sửa đổi mã nguồn phần mềm máy chủ.


Kết luận

Đề tài 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 đã giải quyết trọn vẹn bài toán tự động hóa quy trình tiếp nhận tài liệu tại các thư viện đại học. Thông qua sự kết hợp tối ưu giữa cơ khí chính xác (vít me, băng tải đai Puly GT2), mạch điều khiển nhúng linh hoạt (Arduino Uno, Driver TB6600, LCD I2C) và công nghệ giải mã quang học tiên tiến (GM65 1D/2D Reader), đồ án đã tạo ra một sản phẩm thực tế có độ tin cậy đạt $98.5%$, tốc độ xử lý nhanh gấp 6 lần thao tác thủ công với giá thành đầu tư tiết kiệm đến $85%$.

Đây là minh chứng rõ nét cho năng lực ứng dụng kiến thức chuyên ngành Kỹ thuật Điện - Điện tử vào việc giải quyết các thách thức cụ thể của xã hội, mở ra tiềm năng thương mại hóa và ứng dụng rộng rãi trong lộ trình xây dựng mô hình Đại học Thông minh (Smart University).