Bối cảnh và vấn đề nghiên cứu

Trong đời sống xã hội và hoạt động sản xuất kinh doanh hiện đại, nhu cầu tiếp nhận và cập nhật thông tin nhanh chóng, chính xác trở nên thiết yếu. Tại các khu vực công cộng, nhà ga, sân bay hay khu thương mại, các hình thức quảng bá và thông báo truyền thống bằng biển sắt, gỗ, vải bạt hay phướn bộc lộ nhiều nhược điểm về độ linh hoạt, tính thẩm mỹ và khả năng thay đổi nội dung. Sự ra đời của các bảng điện tử ma trận LED (LED Matrix) khắc phục được các hạn chế này nhờ khả năng hiển thị sinh động, tùy biến nội dung theo thời gian thực, dễ lắp đặt và sửa chữa. Xuất phát từ bối cảnh đó, đồ án tốt nghiệp "Bảng điện tử hiển thị thông tin thời tiết" được thực hiện nhằm xây dựng một hệ thống hiển thị thông tin thời tiết và thông báo đa năng phục vụ cộng đồng.

Mục tiêu và các nhiệm vụ nghiên cứu được xác định rõ ràng:

  1. Thiết kế và thi công hoàn chỉnh mô hình bảng hiển thị LED Matrix kích thước lớn sử dụng module LED P10 Full Color.
  2. Thu thập và hiển thị các thông số thời tiết trực tuyến bao gồm: chỉ số tia cực tím (UV), chất lượng không khí (AQI), giờ hiện tại, tốc độ gió, nhiệt độ, độ ẩm và dự báo thời tiết 4 giờ gần nhất bằng hình ảnh biểu tượng (icon).
  3. Đưa ra cảnh báo trực quan khi chỉ số UV tăng cao có nguy cơ gây hại cho da (khuyến cáo hạn chế ra đường).
  4. Tích hợp tính năng chạy thông báo văn bản tùy chỉnh, cho phép người quản trị điều chỉnh linh hoạt màu sắc và tốc độ hiển thị.

Đồ án được triển khai với 8 nội dung nghiên cứu cụ thể:

  • Nội dung 1: Nghiên cứu Module LED P10 Full Color dùng cho bảng thông báo.
  • Nội dung 2: Nghiên cứu KIT vi điều khiển ESP32.
  • Nội dung 3: Lập trình cho ESP32 trên môi trường Arduino IDE.
  • Nội dung 4: Thiết kế và tính toán công suất nguồn cho toàn bộ thiết bị.
  • Nội dung 5: Thi công phần cứng, khung cơ khí, thử nghiệm và hiệu chỉnh hệ thống.
  • Nội dung 6: Cài đặt, cấu hình tham số và điều chỉnh hệ thống đạt trạng thái hoạt động tối ưu.
  • Nội dung 7: Viết báo cáo thuyết minh đồ án tốt nghiệp.
  • Nội dung 8: Bảo vệ đồ án trước hội đồng chấm tốt nghiệp.

Đối tượng và phạm vi nghiên cứu của đề tài:

  • Đối tượng nghiên cứu: Hệ thống phần cứng nhúng dựa trên vi điều khiển ESP32, module LED ma trận P10 Full Color, giao thức truyền thông SPI, mạng không dây Wi-Fi, máy chủ web nhúng (Webserver) và các giao thức lấy dữ liệu API thời tiết.
  • Phạm vi giới hạn: Không gian hiển thị đạt độ phân giải $128 \times 64$ pixel tạo thành từ 16 tấm module P10 Full Color ghép nối dạng ma trận $4 \times 4$; hệ thống cấu hình tham số qua Webserver nội bộ; thời gian thực hiện từ tháng 12/2019 đến tháng 05/2020 tại Trường Đại học Bà Rịa – Vũng Tàu.

Cơ sở lý thuyết và phương pháp

Đồ án xây dựng dựa trên các nền tảng lý thuyết về truyền thông công nghiệp, mạng không dây và hệ thống nhúng IoT:

  • Chuẩn giao tiếp Wi-Fi (IEEE 802.11): Sử dụng sóng vô tuyến tần số 2.4 GHz đến 5 GHz hỗ trợ các chuẩn 802.11 a/b/g/n/ac với băng thông lý thuyết lên tới 150 Mbps, cho phép thiết bị nhúng kết nối ra mạng diện rộng Internet thông qua điểm truy cập (Router/Access Point).
  • Chuẩn giao tiếp nối tiếp SPI (Serial Peripheral Interface): Chuẩn truyền thông đồng bộ tốc độ cao dạng Master-Slave full-duplex 4 dây: SCK (xung nhịp do Master tạo), MOSI (dữ liệu từ Master sang Slave), MISO (dữ liệu từ Slave về Master) và SS/CS (chân chọn Slave). Chuẩn này được ứng dụng để đẩy dữ liệu quét hình ảnh sang module LED với tốc độ cao.
  • Mô hình kiến trúc IoT (Internet of Things) và Webserver: Hệ thống vận hành theo mô hình Client-Server. Vi điều khiển ESP32 đóng vai trò là Webserver tiếp nhận yêu cầu HTTP từ trình duyệt web của người dùng để lưu trữ, cấu hình thông số hoạt động mà không cần cài đặt phần mềm phụ trợ; đồng thời là Client gửi yêu cầu HTTP API đến các dịch vụ thời tiết trên Internet.
  • Khung giải mã ký tự tiếng Việt theo chuẩn UTF-8: Sử dụng phần mềm LCD Font Maker v3.92 để xuất mảng dữ liệu bitmap font chữ; xây dựng thuật toán giải mã độ dài byte linh hoạt của chuẩn UTF-8 (từ 1 đến 4 byte) tương thích với bảng mã ASCII và ánh xạ các ký tự tiếng Việt có dấu vào bảng nhớ đệm.

Phương pháp nghiên cứu thực tế bao gồm:

  • Phương pháp tính toán kỹ thuật điện: Tính toán công suất tiêu thụ tối đa và công suất thực tế của giàn LED để lựa chọn bộ nguồn có dòng tải định mức an toàn.
  • Phương pháp ghép nối phần cứng và dồn kênh quét LED: Ứng dụng phương thức truyền dữ liệu chuẩn HUB75 và phương pháp quét $1/8$ scan kết hợp mạch giải mã địa chỉ hàng.
  • Phương pháp thực nghiệm lập trình: Xây dựng giải thuật vòng lặp tuần tự phân chia thời gian (cyclic executive) trên Arduino IDE để điều phối tác vụ lấy dữ liệu mạng và quét sáng liên tục.

Nguồn dữ liệu của hệ thống đến từ các dịch vụ cung cấp API thời tiết trực tuyến thông qua kết nối Internet và các tham số điều khiển do người quản trị nhập trực tiếp trên giao diện Webserver.


Thiết kế và triển khai

Hệ thống được thiết kế hoàn chỉnh từ kiến trúc phần cứng, phân bổ cổng vào/ra (I/O) đến thuật toán điều khiển và phần mềm quản trị nhúng.

1. Thiết kế phần cứng và tính toán công suất

Trung tâm điều khiển sử dụng kit phát triển DOIT ESP32 DevKit V1 tích hợp mô-đun ESP32-WROOM-32 (sử dụng lõi chip ESP32-D0WDQ6, 2 nhân CPU tốc độ 80 MHz – 240 MHz, bộ nhớ phong phú, tích hợp Wi-Fi và Bluetooth/BLE).

Hệ thống hiển thị gồm 16 tấm module LED ma trận P10 Full Color ghép nối theo sơ đồ ma trận 4 hàng $\times$ 4 cột, tạo thành màn hình có độ phân giải $128 \times 64$ pixel. Các thông số kỹ thuật chính của module LED P10 Full Color được thể hiện trong bảng sau:

Thông số kỹ thuật Giá trị danh định
Khoảng cách điểm ảnh (Pitch) 10 mm
Kích thước module cơ bản 320 mm $\times$ 160 mm
Độ phân giải module cơ bản 32 $\times$ 16 pixel
Độ phân giải tổng thể 10.000 điểm ảnh/$\text{m}^2$
Góc nhìn (Ngang / Dọc) $140^\circ$ / $140^\circ$
Số bit màu / Số màu hiển thị $>10\text{ bit}$ / 281.000 tỷ màu
Cường độ sáng $>2000\text{ cd}/\text{m}^2$
Chuẩn truyền dữ liệu / Chế độ quét HUB75 / Quét $1/8$ (8s Scan)
Cấu tạo IC trên module 10 IC ghi dịch, 2 IC đệm dòng, 4 IC giải mã
Điện áp / Dòng điện tiêu thụ tối đa DC 5V / 6A mỗi module

Tính toán chọn nguồn:

  • Mỗi module LED P10 tiêu thụ dòng tối đa $I_{\text{max}} = 6\text{ A}$ ở điện áp $5\text{ V}$, tương đương công suất $P_{\text{max-mod}} = 30\text{ W}$.
  • Khi 16 module hoạt động $100%$ độ sáng đồng thời: $P_{\text{total-max}} = 16 \times 30\text{ W} = 480\text{ W}$.
  • Trong điều kiện vận hành thực tế hiển thị chữ và icon thời tiết, độ phủ sáng trung bình chỉ chiếm khoảng $50%$ diện tích màn hình ($P_{\text{thực tế}} \approx 240\text{ W}$).
  • Để đảm bảo hệ thống làm việc ổn định, tản nhiệt tốt và có hệ số dự phòng an toàn, tác giả lựa chọn bộ nguồn tổ ong chuyên dụng $5\text{ V} - 70\text{ A}$ (công suất định mức $350\text{ W}$).

2. Sơ đồ kết nối chân vi điều khiển

Mô-đun LED P10 giao tiếp với ESP32 thông qua cổng HUB75. Cấu hình chân kết nối được thiết lập chi tiết như sau:

Chân ESP32 Chân cổng HUB75 Chức năng kỹ thuật
GPIO 13 (MOSI) R1, G1, B1, R2, G2, B2 Truyền dữ liệu màu sắc cho 8 hàng trên và 8 hàng dưới
GPIO 4 CLK (Clock) Đẩy xung nhịp dữ liệu vào IC ghi dịch
GPIO 33 LAT (Latch) Chốt dữ liệu từ IC ghi dịch ra bộ đệm xuất LED
GPIO 32 OE (Output Enable) Chân cho phép bảng LED sáng ($\text{OE}=0$: sáng; $\text{OE}=1$: tắt)
GPIO 25 A Chân địa chỉ giải mã chọn hàng thứ 1
GPIO 26 B Chân địa chỉ giải mã chọn hàng thứ 2
GPIO 27 C Chân địa chỉ giải mã chọn hàng thứ 3
GPIO 5 (D5) Công tắc gạt Chọn chế độ làm việc (Chế độ Station hoặc Access Point)

Nguyên lý quét LED dựa trên tỷ lệ $1/8$: màn hình 16 hàng được chia làm 2 nửa độc lập (8 hàng trên do cụm RGB1 điều khiển, 8 hàng dưới do cụm RGB2 điều khiển). 3 chân địa chỉ A, B, C điều khiển qua IC giải mã $3 \rightarrow 8$ để chọn đồng thời 2 hàng quét trong cùng một thời điểm:

Chân A Chân B Chân C Hàng được chọn kích hoạt
0 0 0 Không hàng nào được chọn
1 0 0 Hàng 0 và hàng 7
0 1 0 Hàng 1 và hàng 8
1 1 0 Hàng 2 và hàng 9
0 0 1 Hàng 3 và hàng 10
1 0 1 Hàng 4 và hàng 11
0 1 1 Hàng 5 và hàng 12
1 1 1 Hàng 6 và hàng 13

Mắt người có hiện tượng lưu ảnh trong khoảng $20\text{ ms}$. Với hệ thống 16 hàng LED ma trận, thời gian quét hoàn tất cho 1 hàng được tính toán và khống chế ở mức xấp xỉ $1{,}25\text{ ms}$ ($20\text{ ms} / 16$).

3. Cấu trúc phần mềm và thuật toán điều khiển

Hệ thống được lập trình bằng ngôn ngữ C/C++ trên nền tảng Arduino IDE thông qua gói bo mạch esp32 by Espressif Systems (cấu hình nạp mã: Board DOIT ESP32 DEVKIT V1, tốc độ nạp 921600 baud, tần số Flash 80 MHz).

Thuật toán điều khiển chính được thực thi trong hàm loop() theo phương pháp chia sẻ thời gian đa nhiệm không chặn:

void loop(){
  if(!wificonf) checkWifi();
  httpProcess();
  if(delayState==0){
    if(dispState==1) {dispDateTime(0);delayState=5;}
    else if(dispState==3) {dispQrAll(0xff);dispWeather();delayState=5;}
    else if(dispState==5) {dispQrAll(0xff);dispForecastHourly();delayState=8;}
    else if(dispState==6) {dispQrAll(0xff);dispForecastDaily();delayState=8;}
    else if(dispState==7) {dispQrAll(0xff);dispEnviroment();delayState=3;}
    else {dispInfoText();delayState=2;}
  }
  if(count2%60==5) {getDateTime();count2++;}
  if((count2%60==15)&&((count2<60)||(getAqiError>0))) {getAQI();count2++;}
  if((count2%60==25)&&(onlineMin%3==0)) {getWeather();count2++;}
  if((count2%60==25)&&(onlineMin%3==1)) {getForecastHourly();count2++;}
  if((count2%60==25)&&(onlineMin%3==2)) {getForecastDaily();count2++;}
  if((count2%60==50)&&(onlineHour>5)&&((onlineMin%15==1)||(getUViError >0))) {getUVI();count2++;}
  if(lastMin!=onlineMin){
    lastMin=onlineMin;
    for(char i=0;i<6;i++){
      if(onOffTime[i].mode==0)continue;
      if(onOffTime[i].min !=onlineMin)continue;
      if(onOffTime[i].hour!=onlineHour)continue;
      if(onOffTime[i].mode==1)dispOn=0;
      else if(onOffTime[i].mode==2)dispOn=1;
    }
  }
}

Phần mềm thực hiện các chức năng:

  • Định kỳ truy vấn máy chủ thời gian và các dịch vụ API trực tuyến để cập nhật các gói dữ liệu: thời gian thực, chất lượng không khí (getAQI), thông tin thời tiết hiện tại (getWeather), dự báo theo giờ (getForecastHourly), dự báo theo ngày (getForecastDaily) và chỉ số cực tím (getUVI).
  • Tự động luân chuyển các trạng thái hiển thị (dispState) bao gồm: màn hình ngày giờ, màn hình thời tiết, dự báo thời tiết, thông số môi trường và chuỗi thông báo chạy chữ.
  • Quản lý mảng cấu trúc hẹn giờ onOffTime với 6 mốc thời gian độc lập để tự động bật/tắt hiển thị màn hình nhằm tiết kiệm điện năng.

Nội dung chính theo từng chương

Chương I: Tổng quan

Trình bày tính cấp thiết của việc hiện đại hóa bảng tin công cộng và bảng quảng cáo ngoài trời bằng công nghệ LED ma trận. Giới thiệu mục tiêu của đề tài là chế tạo bảng LED Matrix kích thước lớn hiển thị các chỉ số thời tiết (nhiệt độ, độ ẩm, tốc độ gió, tia UV, chất lượng không khí AQI, dự báo 4 giờ tới) và chạy dòng chữ thông báo tùy ý. Đặt ra 8 nội dung nghiên cứu chi tiết cùng các giới hạn về phần cứng ($16$ tấm LED P10 Full Color, độ phân giải $128 \times 64$, vi xử lý ESP32 và cấu hình qua Webserver).

Chương II: Cơ sở lý thuyết

Cung cấp hệ thống kiến thức nền tảng về:

  • Chuẩn mạng Wi-Fi và băng tần hoạt động ($2.4\text{ GHz} - 5\text{ GHz}$, tầm phủ sóng lý thuyết khoảng 100 feet).
  • Chuẩn giao tiếp SPI đồng bộ 4 dây tốc độ cao với các đường SCK, MOSI, MISO, SS.
  • Khái niệm tổng quan về hệ thống mạng lưới vạn vật kết nối Internet (IoT) và máy chủ web nhúng (Webserver) giao tiếp bằng giao thức HTTP để truyền tải các trang HTML tương tác.
  • Cấu trúc chip vi điều khiển ESP32-WROOM-32 tích hợp CPU kép ESP32-D0WDQ6, hệ điều hành FreeRTOS, giao thức LwIP, chuẩn bảo mật TLS 1.0 và tính năng nạp phần mềm qua mạng (OTA).
  • Cấu tạo phần cứng module LED P10 Full Color, nguyên lý giao tiếp HUB75, phương pháp quét $1/8$ với các bảng trạng thái chọn hàng A, B, C và định thời gian lưu ảnh mắt $1{,}25\text{ ms}$ trên mỗi hàng quét.
  • Phương pháp tạo font chữ bằng phần mềm LCD Font Maker v3.92 và giải pháp thiết kế bộ font tiếng Việt có dấu tương thích bảng mã UTF-8 và ASCII.

Chương III: Tính toán và thiết kế

Phân tích yêu cầu hệ thống và lựa chọn vi xử lý trung tâm là bo mạch DOIT ESP32 DevKit V1 đáp ứng khả năng kết nối mạng đồng thời chạy Webserver nội bộ. Tính toán nhu cầu năng lượng của $16$ tấm LED ma trận: từ công suất cực đại lý thuyết $480\text{ W}$ ($16 \times 30\text{ W}$) và hệ số phủ sáng thực tế $50%$ ($240\text{ W}$), đề tài đã quyết định lựa chọn bộ nguồn công nghiệp công suất $350\text{ W}$ ($5\text{ V} - 70\text{ A}$) đảm bảo hệ thống vận hành bền bỉ.

Chương IV: Thi công hệ thống

Trình bày quy trình thi công cơ khí và điện tử:

  • Thiết kế khung kim loại định hình mặt trước chứa 16 tấm LED; mặt sau bố trí nguồn công nghiệp và mạch vi xử lý được che chắn bảo vệ bằng tấm nhựa polycarbonate chắc chắn.
  • Thiết lập sơ đồ chân kết nối tín hiệu giữa cổng HUB75 của module LED với các chân GPIO của ESP32 (MOSI GPIO 13, CLK GPIO 4, LAT GPIO 33, OE GPIO 32, A-B-C tương ứng GPIO 25-26-27, chân chọn chế độ D5).
  • Hướng dẫn chi tiết các bước cài đặt Arduino IDE, bổ sung đường dẫn Board Manager cho ESP32 của Espressif Systems, cấu hình thông số biên dịch bo mạch và nạp code hoàn chỉnh.
  • Trình bày mã nguồn thuật toán hàm loop() điều phối lấy dữ liệu mạng và luân chuyển màn hình hiển thị.

Chương V: Kết quả - nhận xét - đánh giá

Trình bày kết quả thử nghiệm thực tế của mô hình:

  • Chuyển đổi linh hoạt giữa chế độ Access Point để cấu hình mạng và chế độ Station để vận hành trực tuyến.
  • Giao diện Webserver cho phép: cấu hình SSID/mật khẩu Wi-Fi; nhập khóa API lấy dữ liệu thời tiết, UV, AQI; thiết lập 5 nội dung thông báo tùy chỉnh hỗ trợ 7 màu sắc (Đỏ, Xanh lá, Vàng, Xanh dương, Tím, Xanh lơ, Trắng, Ngẫu nhiên) cùng 5 cấp độ tốc độ cuộn chữ (Không chạy, Rất nhanh, Nhanh, Vừa, Chậm, Rất chậm); cài đặt mật khẩu bảo mật và thiết lập 6 mốc hẹn giờ bật/tắt bảng LED.
  • Đánh giá hệ thống hoạt động ổn định, hiển thị rõ ràng, màu sắc rực rỡ và phản hồi giao diện cấu hình mượt mà.

Chương VI: Kết luận và hướng phát triển

Tổng kết toàn bộ các kết quả thiết kế phần cứng, thi công khung vỏ, lập trình phần mềm và tích hợp Webserver đã hoàn thành đúng theo mục tiêu đề ra; đồng thời đề xuất các định hướng nâng cấp, mở rộng hệ thống trong tương lai.


Kết quả và đóng góp

Đồ án đã thiết kế, chế tạo và vận hành thử nghiệm thành công mô hình bảng điện tử hiển thị thông tin thời tiết với các kết quả cụ thể:

  • Xây dựng phần cứng hoàn chỉnh: Chế tạo thành công khung bảng LED $16$ module P10 Full Color kích thước $128 \times 64$ điểm ảnh, tích hợp gọn gàng bộ nguồn tổ ong $5\text{ V} - 70\text{ A}$ ($350\text{ W}$) và mạch điều khiển ESP32 sau lớp ốp nhựa polycarbonate bảo vệ.
  • Hiển thị đa dạng thông số thực tế: Hệ thống kết nối Wi-Fi ổn định, tự động cập nhật và hiển thị chính xác các thông tin: thời gian thực, nhiệt độ, độ ẩm, tốc độ gió, chỉ số ô nhiễm không khí (AQI), chỉ số bức xạ tia cực tím (UV), dự báo thời tiết 4 giờ gần nhất bằng biểu tượng đồ họa và đưa ra cảnh báo bảo vệ da khi chỉ số UV vượt ngưỡng an toàn.
  • Giao diện quản trị Webserver linh hoạt: Tích hợp thành công máy chủ web nhúng cho phép cài đặt Wi-Fi, khóa API thời tiết, mật khẩu bảo vệ, quản lý 6 mốc hẹn giờ bật/tắt và quản trị 5 bản tin thông báo tùy chọn với 7 màu hiển thị và 5 cấp tốc độ cuộn chữ khác nhau.
  • Làm chủ kỹ thuật quét LED và font tiếng Việt: Xây dựng thành công thuật toán quét ma trận $1/8$ trên chuẩn HUB75 với tần số quét đáp ứng thời gian lưu ảnh $1{,}25\text{ ms}$/hàng và giải thuật giải mã font tiếng Việt đầy đủ dấu theo chuẩn UTF-8 trực tiếp trên vi điều khiển ESP32.

So với các bảng quảng cáo truyền thống hoặc bảng LED đơn sắc thông thường, đề tài mang lại giải pháp tự động hóa toàn diện, cập nhật dữ liệu trực tuyến không dây qua Internet mà không cần kết nối máy tính thủ công, đồng thời nâng cao tính tương tác thông qua giao diện Webserver tiện lợi trên thiết bị di động.


Hạn chế và hướng nghiên cứu tiếp

Hạn chế của đề tài:

  • Hệ thống phụ thuộc hoàn toàn vào kết nối mạng Internet không dây (Wi-Fi) và dịch vụ API bên thứ ba để lấy dữ liệu môi trường; chưa tích hợp các cảm biến đo đạc vật lý trực tiếp tại chỗ.
  • Quy mô phần cứng giới hạn ở độ phân giải $128 \times 64$ pixel ($16$ tấm module) phục vụ mô hình mẫu.

Hướng nghiên cứu và phát triển tiếp theo:

  • Tích hợp thêm các mô-đun cảm biến đo nhiệt độ, độ ẩm, nồng độ bụi mịn PM2.5 và cảm biến quang trực tiếp tại thiết bị để đối soát dữ liệu với API trực tuyến.
  • Nâng cấp phần cứng, mở rộng quy mô bảng LED ma trận kích thước lớn hơn phục vụ lắp đặt ngoài trời tại các trường học, khu công nghiệp hoặc trung tâm đô thị.
  • Tối ưu hóa giao diện người dùng trên Webserver và bổ sung các hiệu ứng chuyển động đồ họa phức tạp hơn.

Giá trị tham khảo

Đồ án là tài liệu tham khảo có giá trị kỹ thuật thực tế cho:

  • Sinh viên ngành Kỹ thuật Điện – Điện tử, Điều khiển & Tự động hóa và IoT: Cung cấp tài liệu chi tiết về kỹ thuật điều khiển module LED ma trận P10 Full Color qua chuẩn giao tiếp HUB75, phương pháp quét dồn kênh $1/8$, tính toán công suất nguồn DC dòng cao và sơ đồ nối dây vi điều khiển ESP32.
  • Kỹ sư và lập trình viên hệ thống nhúng: Cung cấp giải pháp mẫu về việc thiết kế Webserver cấu hình trên vi điều khiển, kỹ thuật nạp firmware qua Arduino IDE, cách giải mã bộ font tiếng Việt có dấu theo chuẩn UTF-8 từ phần mềm LCD Font Maker và thuật toán xử lý dữ liệu API trực tuyến đa nhiệm theo chu kỳ.

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

1. Hệ thống sử dụng bao nhiêu tấm module LED và độ phân giải hiển thị tổng thể là bao nhiêu?
Hệ thống sử dụng $16$ tấm module LED P10 Full Color ghép nối theo ma trận $4 \times 4$. Mỗi module có độ phân giải $32 \times 16$ pixel (kích thước $320\text{ mm} \times 160\text{ mm}$), tạo nên kích thước hiển thị tổng thể là $128 \times 64$ pixel.

2. Tại sao tác giả lựa chọn bộ nguồn 5V - 70A (350W) cho hệ thống?
Mỗi module LED P10 tiêu thụ dòng tối đa $6\text{ A}$ ở $5\text{ V}$ ($30\text{ W}$), tổng công suất cực đại lý thuyết cho 16 module khi sáng $100%$ là $480\text{ W}$. Tuy nhiên, khi hiển thị thông tin thời tiết và chữ, độ phủ sáng trung bình chỉ chiếm khoảng $50%$ diện tích màn hình ($\approx 240\text{ W}$). Do đó, bộ nguồn $5\text{ V} - 70\text{ A}$ ($350\text{ W}$) đáp ứng đủ công suất và đảm bảo hệ số an toàn cho mạch.

3. Phương pháp quét module LED P10 Full Color trong đồ án được thực hiện như thế nào?
Module sử dụng phương thức truyền dữ liệu chuẩn HUB75 và chế độ quét $1/8$. Màn hình 16 hàng được chia làm hai nửa: 8 hàng trên điều khiển bởi dữ liệu màu RGB1, 8 hàng dưới bởi RGB2. Ba chân địa chỉ A, B, C (nối với GPIO 25, 26, 27 của ESP32) qua IC giải mã chọn đồng thời 2 hàng quét trong một thời điểm. Tần số quét được thiết lập để xử lý mỗi hàng trong khoảng $1{,}25\text{ ms}$, thỏa mãn thời gian lưu ảnh $20\text{ ms}$ của mắt người.

4. Người dùng có thể tùy chỉnh những thông số nào trên giao diện Webserver của bảng điện tử?
Trên giao diện Webserver, người dùng có thể cấu hình tên và mật khẩu Wi-Fi; nhập khóa API lấy dữ liệu thời tiết trực tuyến; cài đặt 5 nội dung thông báo chữ chạy tùy chọn với 7 màu sắc và 5 cấp tốc độ; thay đổi mật khẩu quản trị và thiết lập 6 mốc thời gian hẹn giờ tự động bật/tắt bảng LED.

5. Vấn đề hiển thị tiếng Việt có dấu trên bảng LED được giải quyết như thế nào?
Tác giả sử dụng phần mềm LCD Font Maker v3.92 để tạo mã font ma trận điểm và thiết kế thuật toán giải mã tiếng Việt theo chuẩn UTF-8. Hệ thống dựa vào cấu trúc byte đầu tiên của chuỗi UTF-8 (từ 1 đến 4 byte) để xác định độ dài ký tự, kết hợp tận dụng các vùng mã ASCII và ánh xạ các ký tự có dấu vào bộ nhớ đệm hiển thị của ESP32.


Kết luận

Đồ án tốt nghiệp "Bảng điện tử hiển thị thông tin thời tiết" của sinh viên Võ Đình Huy đã hoàn thành toàn diện việc thiết kế phần cứng, tính toán nguồn năng lượng và xây dựng chương trình điều khiển cho hệ thống bảng LED ma trận P10 Full Color $128 \times 64$ điểm ảnh. Việc ứng dụng vi xử lý ESP32 kết hợp Webserver nhúng đã tạo ra một thiết bị thông tin thời tiết và thông báo công cộng thông minh, linh hoạt, tự động cập nhật dữ liệu qua Internet. Toàn bộ mô hình đã được gia công cơ khí hoàn chỉnh, chạy thử nghiệm thực tế đạt độ ổn định cao và đáp ứng đầy đủ các yêu cầu kỹ thuật chuyên ngành Điều khiển và Tự động hóa.