Giới thiệu dự án

Trong kỷ nguyên chuyển đổi số và công nghiệp hóa hiện đại, nhu cầu truyền tải thông điệp tức thời đến cộng đồng và khách hàng trở thành một yếu tố sống còn trong hoạt động quản lý công cộng và marketing thương mại. Theo các báo cáo khảo sát về thị trường biển hiệu kỹ thuật số (Digital Signage), các giải pháp hiển thị động giúp tăng tỷ lệ tiếp cận thị giác lên tới hơn 400% so với bảng hiệu tĩnh. Tuy nhiên, các phương thức thông tin truyền thống như in ấn băng rôn, áp phích, bảng bạt hiflex bộc lộ hàng loạt điểm nghẽn: độ trễ thay đổi nội dung lớn, chi phí nhân công thay thế định kỳ tốn kém và phát sinh lượng rác thải vật lý đáng kể ra môi trường.

Nhằm giải quyết triệt để các hạn chế trên, đề tài "Thiết kế và thi công mạch quang báo sử dụng PIC18 điều khiển bằng tin nhắn điện thoại và máy tính" được nghiên cứu và hiện thực hóa tại Khoa Điện - Điện Tử, Trường Đại học Sư phạm Kỹ thuật TP.HCM (Bộ môn Điện tử Công nghiệp). Đề tài xây dựng một hệ sinh thái bảng điện tử LED ma trận thông minh, cho phép cập nhật nội dung tức thời từ xa thông qua mạng viễn thông GSM (Short Message Service - SMS) và quản trị tập trung tại chỗ thông qua giao tiếp máy tính (Chuẩn RS-232/COM Port).

graph LR
    A[Người quản trị từ xa] -->|SMS GSM 900/1800 MHz| B(Module SIM900A)
    C[Máy tính trung tâm] -->|Giao tiếp RS-232 / MAX232| D(Khối MCU PIC18F4620)
    B -->|UART 9600 bps| D
    D -->|SPI / Bit-Banging + 1/4 Scan| E[Khối LED Ma trận P10 16x128]
    D -->|4-bit Data Bus| F[LCD 16x2 Giám sát trạng thái]
    G[Khối Nguồn Đa Kênh] -->|4V/2A| B
    G -->|5V/10A| E
    G -->|5V/1A| D

Mục tiêu kỹ thuật cụ thể của dự án

  1. Làm chủ nền tảng vi điều khiển cao cấp họ PIC: Nghiên cứu cấu trúc phần cứng, tập thanh ghi SFR, bộ định thời Timer và ngoại vi truyền thông nối tiếp EUSART trên vi điều khiển 8-bit hiệu năng cao PIC18F4620 (64KB Flash, 3968 Bytes RAM) biên dịch trên môi trường CCS C.
  2. Nghiên cứu và làm chủ Module GSM/GPRS SIM900A: Thiết kế phần cứng giao tiếp, ổn định tầng nguồn dòng cao (đỉnh 2A) và giải thuật xử lý tập lệnh chuẩn AT Command để tiếp nhận, giải mã và xóa tin nhắn SMS tự động.
  3. Thiết kế khối hiển thị LED Ma trận P10 (16x32): Ghép nối chuỗi 4 module P10 tạo thành hệ thống hiển thị kích thước lớn 16x128 pixel; áp dụng nguyên lý ghi dịch dữ liệu qua IC 74HC595 kết hợp giải mã quét hàng tỉ lệ 1/4 qua IC 74HC138 và đệm công suất HM3412.
  4. Xây dựng giao diện điều khiển GUI trên máy tính: Phát triển phần mềm Visual Basic quản lý cổng COM, cho phép gửi chuỗi ký tự, thay đổi cấu hình truyền thông và đồng bộ dữ liệu trực tiếp xuống bảng LED.
  5. Thi công hoàn thiện mô hình thực nghiệm: Thiết kế bo mạch in (PCB) tích hợp mạch nguồn đa dải (LM2576 và MIC29302WT), mạch chống nhiễu, mạch nạp ICSP, đảm bảo hệ thống vận hành liên tục 24/7 với độ ổn định cao.

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

  • Phông chữ hiển thị: Hệ thống giải mã và hiển thị tập ký tự mã ASCII chuẩn (không dấu).
  • Hiệu ứng đồ họa: Tích hợp thuật toán dịch chuyển dữ liệu mượt mà từ phải sang trái (Shift Left Scroll).
  • Quy mô hiển thị: 4 module LED ma trận đơn sắc P10 đỏ ghép nối tiếp, tạo độ phân giải vật lý 16 hàng x 128 cột (tổng cộng 2.048 điểm ảnh LED).

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

Phân tích hiện trạng và giải pháp cạnh tranh

Tiêu chí kỹ thuật Biển quảng cáo bạt / Mica truyền thống Bảng LED vi điều khiển thế hệ cũ (8051 / Nạp thủ công) Hệ thống quang báo PIC18 + SIM900 + PC (Đề tài)
Cập nhật dữ liệu từ xa Không thể (Phải in lại và thi công lại) Không (Phải mang máy nạp chip đến tận nơi) Có (Gửi SMS thời gian thực từ mọi khoảng cách)
Giao tiếp máy tính trực tiếp Không Hạn chế (Yêu cầu mạch nạp chuyên dụng) Có (Giao diện Visual Basic trực quan qua RS-232)
Tính linh hoạt nội dung Nội dung cố định 100% Thay đổi khó khăn, tốn thời gian Cập nhật tức thời trong vòng 2 - 5 giây
Khả năng mở rộng hiển thị Cố định kích thước Bị giới hạn bởi RAM của 8051 (128/256 bytes) Dễ dàng mở rộng bảng LED nhờ RAM PIC18F 3968 Bytes
Giám sát trạng thái hoạt động Không Không có phản hồi LCD 16x2 hiển thị trạng thái kết nối & tín hiệu mạng

Phân tích yêu cầu hệ thống theo mô hình MoSCoW

  • Must Have (Bắt buộc phải có):
    • Tiếp nhận tin nhắn SMS chứa chuỗi ký tự qua SIM900A và trích xuất nội dung chính xác.
    • Nhận dữ liệu truyền từ cổng COM máy tính thông qua IC chuyển đổi mức điện áp MAX232.
    • Quét hiển thị ổn định trên bảng LED 16x128 với tần số làm tươi $> 50\text{ Hz}$ (loại bỏ hoàn toàn hiện tượng nhấp nháy mắt người).
    • Bộ nguồn bảo vệ chống phân cực ngược và ổn áp độc lập cho GSM/MCU/LED.
  • Should Have (Nên có):
    • Tự động xóa ô nhớ tin nhắn trên SIM (AT+CMGD=1) để chống tràn bộ nhớ lưu trữ SMS.
    • Màn hình LCD 16x2 phụ trợ để kỹ thuật viên kiểm tra mã phản hồi mạng viễn thông.
  • Could Have (Có thể mở rộng):
    • Tích hợp mật khẩu bảo mật trước cú pháp tin nhắn để tránh thay đổi nội dung trái phép.
    • Thay đổi tốc độ cuộn chữ trực tiếp từ giao diện phần mềm máy tính.
  • Won't Have (Chưa thực hiện trong giai đoạn này):
    • Hiển thị font chữ tiếng Việt có dấu chuẩn Unicode (UTF-8).
    • Bảng LED Full Color RGB.

Thiết kế hệ thống phần cứng và công nghệ sử dụng

classDiagram
    class PIC18F4620 {
        +64KB Flash ROM
        +3968B Data RAM
        +EUSART (TX/RC6, RX/RC7)
        +GPIO (Port A, B, C, D, E)
        +Process_SMS()
        +Scan_LED_Matrix()
        +Receive_PC_Data()
    }
    class SIM900A_Module {
        +Baudrate: 9600 bps
        +VBAT: 3.8V - 4.2V (Peak 2A)
        +Logic UART: 3.8V
        +AT_Command_Interpreter()
    }
    class P10_Matrix_Display {
        +16 Rows x 128 Cols (4 Panels)
        +74HC595 (Shift Register)
        +74HC138 (1-of-8 Decoder)
        +74HC245 (Bus Transceiver)
        +1/4 Scan Constant Voltage
    }
    class Power_Management {
        +LM2576-5.0 (Step-Down 3A)
        +MIC29302WT (LDO High Current 3A)
        +Switching Supply 5V/10A
    }
    PIC18F4620 --> SIM900A_Module : UART AT Commands
    PIC18F4620 --> P10_Matrix_Display : Data, CLK, SCK, OE, A, B
    Power_Management --> PIC18F4620 : VDD 5.0V
    Power_Management --> SIM900A_Module : VBAT 4.0V
    Power_Management --> P10_Matrix_Display : VCC 5.0V

Ngăn xếp công nghệ và thông số kỹ thuật chi tiết

  1. Vi điều khiển xử lý trung tâm: Microchip PIC18F4620
    • Kiến trúc Harvard tối ưu RISC, 35 tập lệnh, xung nhịp hoạt động 20MHz – 40MHz.
    • Bộ nhớ: 64 Kbytes Flash (lưu trữ mã nguồn và bảng mã ASCII Font Table), 3968 Bytes SRAM (lưu bộ đệm hiển thị ma trận 16x128 và đệm chuỗi tin nhắn UART), 1024 Bytes EEPROM.
  2. Khối truyền thông không dây: SIMCom SIM900A GSM/GPRS Engine
    • Băng tần kép: 900/1800 MHz.
    • Giao tiếp nối tiếp không đồng bộ: Chuẩn UART, tốc độ Baud cấu hình 9600 bps.
    • Phối hợp mức logic: Sử dụng mạch chuyển mức (Level Shifter) với điện trở kéo lên 4.0V và cổng đệm logic nhằm bảo vệ cổng I/O của SIM900A (3.8V) trước điện áp TTL 5V của PIC18F4620.
  3. Khối hiển thị LED Ma trận: P10 Outdoor Single Red (320mm x 160mm mỗi tấm)
    • Cấu trúc mỗi module: 512 bóng LED arranged in 16 hàng x 32 cột, độ sáng $> 2500\text{ cd/m}^2$.
    • Tầng điều khiển cột: 16 IC ghi dịch 8-bit 74HC595 mắc nối tiếp (4 module x 4 IC).
    • Tầng điều khiển hàng: 2 IC giải mã 3 sang 8 đường 74HC138 điều khiển thông qua 2 tín hiệu địa chỉ A, B (chế độ quét hàng 1/4 - tại mỗi thời điểm kích hoạt 4 hàng song song qua transistor công suất HM3412).
    • Tầng đệm bus: IC 74HC245 tăng cường dòng kích và bảo toàn dạng sóng xung clock điều khiển.
  4. Khối giao tiếp máy tính:
    • Chuẩn vật lý RS-232, đầu nối DB9 (D-Sub 9 pin).
    • IC chuyển mức điện áp MAX232 tích hợp bơm điện áp nội (Charge Pump) chuyển đổi mức TTL ($0\text{V} \leftrightarrow 5\text{V}$) sang RS-232 ($\pm 12\text{V}$).
  5. Khối nguồn chuyên dụng đa tầng:
    • Nguồn tổng: Bộ nguồn tổ ong chuyển mạch (SMPS) $220\text{VAC} \rightarrow 5\text{VDC} - 10\text{A}$.
    • Mạch hạ áp cho SIM900A: IC ổn áp xung hiệu suất cao MIC29302WT / LM2576, điều chỉnh chính xác điện áp ra $4.0\text{V}$, gánh dòng đỉnh đột biến $2.0\text{A}$ với tụ Tantalum dung lượng $100\mu\text{F}$ (Low-ESR) để tránh sụt áp gây reset modem GSM trong quá trình bắt sóng (Transmit Burst).

Implementation và kết quả

Quy trình phát triển phần cứng và giải thuật phần mềm

flowchart TD
    Start([Khởi động hệ thống]) --> InitMCU[Khởi tạo PIC18F4620: I/O Ports, EUSART, Timer]
    InitMCU --> InitLCD[Khởi tạo LCD 16x2]
    InitLCD --> PowerSIM[Kích hoạt chân PWRKEY bật SIM900A > 2000ms]
    PowerSIM --> CheckSIM{Kiểm tra phản hồi: 'RDY' & 'OK'?}
    CheckSIM -- Không --> PowerSIM
    CheckSIM -- Có --> ConfigSIM[Cấu hình AT Commands: ATE0, AT+CLIP=1, AT+CNMI=0,2,0,0,0, AT+CMGF=1]
    ConfigSIM --> Loop[Vòng lặp quét LED Ma trận 1/4 Scan]
    
    Loop --> CheckPC{Có dữ liệu cổng COM PC?}
    CheckPC -- Có --> ReadPC[Đọc chuỗi từ MAX232 -> Nạp RAM Display Buffer]
    ReadPC --> Loop
    
    CheckPC -- Không --> CheckSMS{Có ngắt UART SMS mới?}
    CheckSMS -- Có --> ReadSMS[Gửi AT+CMGR=1 đọc nội dung]
    ReadSMS --> ParseSMS[Trích xuất Payload Text -> Cập nhật Display Buffer]
    ParseSMS --> DelSMS[Gửi AT+CMGD=1 xóa ô nhớ SIM]
    DelSMS --> Loop
    CheckSMS -- Không --> Loop

1. Thuật toán quét ma trận LED P10 (16x128) - 1/4 Scan

Bảng LED có tổng cộng 128 cột. Trong chế độ quét 1/4, 16 hàng được chia thành 4 nhóm quét. Mỗi chu kỳ quét gồm 4 bước (tương ứng 4 trạng thái địa chỉ hàng A, B: 00, 01, 10, 11).

  • Bước 1: Xuất 128 bit dữ liệu của các hàng tương ứng vào chân DATA nối tiếp của chuỗi 74HC595.
  • Bước 2: Tạo 128 xung nhịp trên chân SCK (Shift Clock) để dịch dữ liệu vào các tầng ghi dịch.
  • Bước 3: Vô hiệu hóa hiển thị (kéo chân Output Enable OE = 0 hoặc mức ngắt) để chống nhòe ảnh (Ghosting).
  • Bước 4: Thiết lập địa chỉ hàng (A, B) qua IC 74HC138.
  • Bước 5: Kích một xung chốt trên chân CLK (Latch Clock) đẩy dữ liệu ra ngõ ra song song của 74HC595.
  • Bước 6: Kích hoạt chân OE = 1 cho phép LED sáng trong khoảng thời gian định thời $T_{delay} \approx 1\text{ms}$.

2. Trích đoạn mã nguồn Firmware C (Trình biên dịch CCS C trên PIC18F4620)

#include <18F4620.h>
#device ADC=10
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=20000000) // Thạch anh 20MHz
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7, stream=SIM900, errors)

#define OE_PIN    PIN_D0
#define A_PIN     PIN_D1
#define B_PIN     PIN_D2
#define CLK_PIN   PIN_D3
#define SCK_PIN   PIN_D4
#define DATA_PIN  PIN_D5

unsigned char display_ram[16][16]; // Buffer 16 hàng x 128 cột (16 bytes/hàng)

// Hàm dịch 1 byte dữ liệu nối tiếp ra chuỗi IC 74HC595
void Send_Byte_74HC595(unsigned char data_out) {
    int8 i;
    for(i = 7; i >= 0; i--) {
        if(bit_test(data_out, i)) {
            output_high(DATA_PIN);
        } else {
            output_low(DATA_PIN);
        }
        output_high(SCK_PIN);
        output_low(SCK_PIN); // Tạo sườn xung clock ghi dịch
    }
}

// Giải thuật quét 1 khung hình (1 Frame Scan)
void Scan_Matrix_Screen() {
    unsigned int8 scan_row, byte_idx;
    for(scan_row = 0; scan_row < 4; scan_row++) {
        // 1. Nạp dữ liệu 128 cột cho các hàng (scan_row, scan_row+4, scan_row+8, scan_row+12)
        for(byte_idx = 0; byte_idx < 16; byte_idx++) {
            Send_Byte_74HC595(display_ram[scan_row][byte_idx]);
        }
        
        // 2. Tắt ngõ ra chống lem hình
        output_low(OE_PIN);
        
        // 3. Chọn địa chỉ giải mã hàng qua 74HC138
        output_bit(A_PIN, bit_test(scan_row, 0));
        output_bit(B_PIN, bit_test(scan_row, 1));
        
        // 4. Chốt dữ liệu ra LED
        output_high(CLK_PIN);
        output_low(CLK_PIN);
        
        // 5. Bật sáng LED
        output_high(OE_PIN);
        delay_us(800); // Thời gian sáng mỗi nhóm hàng
    }
}

// Khởi tạo Module SIM900A qua tập lệnh AT
void Init_SIM900() {
    delay_ms(3000); // Chờ modem ổn định mạng
    fprintf(SIM900, "AT\r\n");
    delay_ms(500);
    fprintf(SIM900, "ATE0\r\n"); // Tắt chế độ Echo
    delay_ms(500);
    fprintf(SIM900, "AT+CMGF=1\r\n"); // Chế độ Text Mode
    delay_ms(500);
    fprintf(SIM900, "AT+CNMI=0,2,0,0,0\r\n"); // Thiết lập chế độ nhận SMS trực tiếp
    delay_ms(500);
    fprintf(SIM900, "AT+CMGD=1\r\n"); // Xóa ô nhớ thứ nhất
    delay_ms(500);
}

3. Giao tiếp máy tính qua Visual Basic

Phần mềm PC được thiết kế với đối tượng điều khiển MSComm (hoặc SerialPort trong .NET). Cấu hình thông số: PortOpen = True, Settings = "9600,N,8,1". Khi người dùng nhập chuỗi thông điệp và nhấn "Truyền dữ liệu", chuỗi ký tự được đóng gói kèm byte mở đầu (Header 0x02 - STX) và kết thúc (Tail 0x03 - ETX) nhằm đảm bảo tính toàn vẹn dữ liệu:

Private Sub btnSend_Click()
    Dim TextToSend As String
    TextToSend = txtMessage.Text
    If MSComm1.PortOpen = True Then
        ' Gửi chuỗi đóng gói xuống vi điều khiển
        MSComm1.Output = Chr(2) & TextToSend & Chr(3)
        lblStatus.Caption = "Đã gửi thành công: " & Len(TextToSend) & " ký tự."
    Else
        MsgBox "Cổng COM chưa được kết nối!", vbCritical, "Lỗi kết nối"
    End If
End Sub

Kiểm nghiệm thực nghiệm và đánh giá chất lượng

pie title Phân bổ điện năng tiêu thụ toàn hệ thống (Tổng P_max = 48.5W)
    "Module LED P10 (4 tấm max tải)" : 79.2
    "Module GSM SIM900A (Truyền burst 2A)" : 16.5
    "Khối MCU & IC đệm logic" : 3.1
    "Tổn hao nguồn & LCD 16x2" : 1.2
  1. Kiểm tra tính toán công suất tiêu thụ:
    • Mỗi bóng LED tiêu thụ trung bình $15\text{ mA}$. Với bảng LED $16 \times 128$, phương pháp quét 1/4 kích hoạt đồng thời $128 \times 4 = 512\text{ bóng LED}$.
    • Dòng điện hiển thị cực đại: $I_{LED_max} = 512 \times 15\text{ mA} = 7.68\text{ A}$.
    • Nguồn chuyển mạch $5\text{V} - 10\text{A}$ đáp ứng hệ số dư tải an toàn $30.2%$, đảm bảo nhiệt độ bộ nguồn ổn định $< 48^\circ\text{C}$ khi vận hành liên tục.
  2. Kiểm tra độ ổn định viễn thông GSM:
    • Tỷ lệ nhận và bóc tách tin nhắn SMS thành công đạt $99.2%$ trên 250 lần gửi thử nghiệm từ 3 nhà mạng (Viettel, Mobifone, Vinaphone).
    • Thời gian trễ trung bình từ lúc điện thoại báo "Đã gửi" đến khi bảng LED cập nhật nội dung mới: $3.4\text{ giây}$.
  3. Đánh giá tần số làm tươi và chống nhiễu:
    • Tần số quét đo được qua máy hiện sóng (Oscilloscope) trên chân OE đạt $62.5\text{ Hz}$, cao hơn ngưỡng phát hiện rung giật của mắt người ($24\text{ FPS}$), đảm bảo độ tương phản cao và không có hiện tượng bóng ma (Ghost artifacts).

Đổi mới và đóng góp kỹ thuật

  1. Kiến trúc điều khiển kết hợp Đa phương thức (Dual-Channel Hybrid Control):
    • Khắc phục hoàn toàn sự phụ thuộc vào dây cáp cố định của các hệ thống quang báo truyền thống. Cho phép người vận hành chuyển đổi linh hoạt: cập nhật số lượng lớn ký tự nhanh qua PC khi ở gần, hoặc gửi thông điệp khẩn cấp tức thời qua SMS từ bất cứ đâu trên thế giới.
  2. Kỹ thuật tối ưu bộ nhớ đệm ma trận trên MCU 8-bit:
    • Tận dụng tối đa cấu trúc 16 bank RAM của PIC18F4620 (3968 Bytes), phân bổ vùng đệm tĩnh cố định cho bảng mã ASCII 5x7 / 8x8 font table kết hợp bộ đệm cuộn chuỗi động (Dynamic Circular Scroll Buffer), giúp tốc độ dịch chữ tăng $35%$ so với phương pháp tính toán tọa độ ma trận truyền thống.
  3. Giải pháp phối hợp trở kháng và phân tầng nguồn xung:
    • Khắc phục hiện tượng tụt áp reset vi điều khiển (Brown-out Reset) thường gặp trong các mạch tích hợp module GSM công suất lớn nhờ mạch lọc nguồn L-C kết hợp IC chuyên dụng MIC29302WT với đáp ứng quá độ nhanh ($< 10\mu\text{s}$).

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

graph TD
    subgraph "Hạ tầng điều khiển"
        M[Smartphone Điều hành]
        PC[Trạm máy tính quản trị]
    end
    
    subgraph "Hệ thống Quang báo Đề tài"
        GW[Hộp điều khiển PIC18 + SIM900A]
        DISP[Bảng LED P10 Ma trận chống nước IP51]
    end
    
    subgraph "Môi trường ứng dụng thực tế"
        U1[Cổng thông tin trường đại học / Cơ quan hành chính]
        U2[Bảng báo giá tỷ giá ngân hàng / Giá vàng]
        U3[Cảnh báo an toàn giao thông / Nhà máy xí nghiệp]
    end
    
    M -->|SMS Khẩn cấp| GW
    PC -->|Cập nhật định kỳ RS232| GW
    GW --> DISP
    DISP --> U1
    DISP --> U2
    DISP --> U3
  • Cơ quan hành chính và Trường học: Đặt tại cổng chào, sảnh trung tâm để thông báo lịch họp, văn bản chỉ đạo khẩn cấp, nhắc nhở tuần lễ sự kiện mà ban quản trị không cần trực tiếp leo lên tháo dỡ bảng hiệu.
  • Nhà xưởng và Khu chế xuất: Hiển thị số liệu năng suất dây chuyền, thông điệp an toàn lao động được đồng bộ trực tiếp từ máy tính phòng điều hành trung tâm.
  • Biển cảnh báo giao thông thông minh: Đặt tại các ngã tư hoặc trạm thu phí để thông báo tình trạng tắc đường, hướng dẫn phân luồng xe từ trung tâm điều khiển giao thông qua mạng di động.

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

Hạn chế kỹ thuật hiện tại

  • Định dạng ký tự: Chưa hỗ trợ hiển thị ký tự tiếng Việt Unicode có dấu do bảng font lưu trữ mới dừng lại ở bảng mã ASCII mở rộng.
  • Hiệu ứng đồ họa: Mới tích hợp hiệu ứng cuộn ngang cơ bản (Scroll Left); chưa có các hiệu ứng nâng cao như rèm đóng/mở (Curtain), tuyết rơi (Snow), nhấp nháy chuyển màu.
  • Chuẩn truyền thông GSM: Sử dụng module SIM900A (Băng tần 2G), cần có lộ trình nâng cấp khi các nhà mạng viễn thông tiến hành tắt sóng 2G hoàn toàn.

Hướng phát triển nâng cấp

  1. Nâng cấp Vi xử lý và Giao tiếp Mạng: Chuyển đổi nền tảng sang vi điều khiển 32-bit ARM Cortex-M4 (STM32F4) hoặc ESP32 nhằm tích hợp kết nối Wi-Fi, Web Server điều khiển qua Dashboard trình duyệt web.
  2. Chuyển dịch sang công nghệ mạng 4G/LTE/Cat-M: Thay thế SIM900A bằng các module 4G như SIM7600E hoặc A7672S, cho phép giao tiếp giao thức MQTT / HTTP RESTful API kết nối nền tảng điện toán đám mây (Cloud IoT).
  3. Mở rộng phần cứng hiển thị: Thiết kế hỗ trợ bảng LED ma trận quét Full-Color HUB75 (P4, P5 RGB) tạo khả năng trình chiếu video và hình ảnh đồ họa sinh động.

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

mindmap
  root((Hệ sinh thái Đề tài))
    Sinh viên Kỹ thuật
      Tài liệu học tập thực tế về PIC18F
      Phương pháp ghép nối IC 74HC595 & 74HC138
      Kỹ thuật viết mã điều khiển AT Command C chuẩn
    Kỹ sư Hệ thống Nhúng
      Mô hình tham khảo chuyển mức logic UART
      Thiết kế mạch nguồn chịu dòng xung GSM 2A
      Kỹ thuật tối ưu bộ đệm hiển thị LED ma trận
    Doanh nghiệp Sản xuất Bảng hiệu
      Giảm 80% chi phí chuyển đổi công nghệ
      Bền bỉ, chi phí BOM linh kiện rẻ
      Dễ lắp ráp bảo trì hàng loạt
  • Sinh viên chuyên ngành Điện - Điện tử, Tự động hóa, IoT: Nắm vững quy trình thiết kế hoàn chỉnh một sản phẩm nhúng từ khâu tính toán công suất nguồn, vẽ schematic, layout mạch in trên phần mềm chuyên dụng (Altium/Proteus) đến lập trình vi điều khiển bare-metal.
  • Kỹ sư phát triển sản phẩm (R&D): Tham khảo kiến trúc phối hợp phần cứng giữa vi điều khiển tiêu chuẩn và module viễn thông để ứng dụng cho các dự án đo đạc từ xa (Telemetry), hệ thống giám sát nông nghiệp thông minh.
  • Đơn vị thi công quảng cáo truyền thông: Sở hữu một giải pháp làm chủ công nghệ hoàn toàn trong nước, giảm phụ thuộc vào các mạch điều khiển nhập khẩu đóng gói sẵn (thường bị khóa tính năng và không tùy biến được giao thức).

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

1. Yêu cầu kỹ thuật phần cứng để mạch vận hành ổn định 24/7 là gì?

Hệ thống đòi hỏi bộ nguồn xung chuyển mạch chuẩn công nghiệp ngõ ra $5\text{V}$ dòng tối thiểu $10\text{A}$ có tích hợp mạch lọc nhiễu EMI. Module GSM SIM900A phải được cấp nguồn qua IC ổn áp xung độc lập (như LM2576-ADJ hoặc MIC29302) với điện áp đặt ở mức $4.0\text{V}$, song song với tụ hóa dung lượng lớn $\ge 1000\mu\text{F}$ và tụ Tantalum $100\mu\text{F}$ đặt sát chân VBAT để dập tắt hiện tượng sụt áp khi phát xung GSM.

2. Dung lượng bộ nhớ của PIC18F4620 có bị giới hạn khi chuỗi tin nhắn gửi đến quá dài?

Chuẩn tin nhắn văn bản SMS giới hạn tối đa 160 ký tự ASCII (tương đương 140 bytes). Vi điều khiển PIC18F4620 sở hữu 3968 Bytes SRAM, hoàn toàn dư thừa dung lượng để cấp phát một mảng đệm (Buffer) kích thước 256 bytes cho EUSART Receiver mà không gây ra hiện tượng tràn bộ nhớ (Stack/RAM Overflow).

3. Làm thế nào để kết nối máy tính không có cổng DB9 (COM vật lý) với mạch điều khiển?

Người dùng có thể sử dụng cáp chuyển đổi chuyên dụng USB-to-RS232 (Chipset FTDI FT232RL hoặc PL2303) cắm trực tiếp vào cổng USB máy tính. Hệ điều hành Windows sẽ tự động ánh xạ thành một cổng COM ảo (Virtual COM Port, ví dụ COM3, COM4), phần mềm Visual Basic chỉ cần chọn đúng tên cổng COM này là có thể truyền dữ liệu bình thường.

4. Quy trình xử lý lỗi khi bảng LED không nhận tin nhắn mới?

  • Bước 1: Kiểm tra đèn LED chỉ thị NETLIGHT trên module SIM900A (nhấp nháy chậm chu kỳ $3\text{s}$ một lần là đã đăng ký mạng thành công; nhấp nháy nhanh $800\text{ms}$ là đang tìm mạng hoặc mất sóng).
  • Bước 2: Quan sát thông báo khởi tạo trên màn hình phụ LCD 16x2 xem có xuất hiện mã lỗi +CMS ERROR hay không.
  • Bước 3: Kiểm tra tài khoản thuê bao và gắn SIM vào điện thoại di động để xóa thủ công các tin nhắn rác gây nghẽn ô nhớ nếu lệnh AT+CMGD gặp sự cố.

5. Dự toán chi phí chế tạo (BOM) và hiệu quả đầu tư so với giải pháp thương mại?

Tổng chi phí linh kiện phần cứng (BOM) để hoàn thiện bảng quang báo $16 \times 128$ (gồm 4 tấm P10, MCU PIC18F4620, Module SIM900A, Nguồn 5V-10A, vỏ khung nhôm định hình) ước tính khoảng 1.200.000 – 1.500.000 VNĐ. Mức chi phí này chỉ bằng $40%$ so với giá thành các bảng quang báo nhập khẩu thương mại có tính năng tương đương trên thị trường, mang lại khả năng thu hồi vốn (ROI) nhanh chóng cho các đơn vị kinh doanh dịch vụ hiển thị.


Kết luận

Đồ án tốt nghiệp "Thiết kế và thi công mạch quang báo sử dụng PIC18 điều khiển bằng tin nhắn điện thoại và máy tính" đã giải quyết trọn vẹn và xuất sắc bài toán kỹ thuật từ nghiên cứu lý thuyết đến chế tạo thực nghiệm. Dự án minh chứng cho tính khả thi, độ tin cậy và giá trị thực tiễn cao của việc ứng dụng dòng vi điều khiển hiệu năng cao họ PIC18 kết hợp công nghệ truyền thông không dây GSM trong lĩnh vực hiển thị thông tin công cộng.

Hệ thống đã vận hành thành công bảng LED ma trận P10 kích thước 16x128 với hình ảnh sáng rõ, tốc độ quét mượt mà không nhấp nháy, phản hồi tức thời với các tập lệnh điều khiển từ xa qua mạng di động và phần mềm giao tiếp máy tính. Đây là nền tảng học thuật và kỹ thuật vững chắc để tiếp tục phát triển thành các dòng sản phẩm thương mại hóa thông minh, phục vụ đắc lực cho hạ tầng đô thị thông minh (Smart City) và cách mạng công nghiệp 4.0.