Giới thiệu dự án
Công nghệ hiển thị thị giác Hologram và hiệu ứng lưu ảnh võng mạc (Persistence of Vision - POV) đang tái định hình phương thức quảng cáo kỹ thuật số toàn cầu. Theo báo cáo từ Grand View Research, thị trường hiển thị quảng cáo 3D/Holographic đạt quy mô hơn 1,8 tỷ USD và duy trì tốc độ tăng trưởng kép (CAGR) 28,5%. Trong khi các màn hình LED ma trận truyền thống (LED Matrix Panels P3/P4/P10) tiêu tốn năng lượng lớn (150W - 300W/m²), trọng lượng nặng và chi phí lắp đặt đắt đỏ, công nghệ LED xoay POV 3D mang lại giải pháp hiển thị không gian mở, hiệu ứng lơ lửng trong không khí với chi phí phần cứng thấp hơn đáng kể.
Đồ án "Thiết kế và thi công mạch quạt LED sử dụng vi điều khiển STM32" tập trung giải quyết bài toán đồng bộ hóa phần cứng - phần mềm thời gian thực (Real-time Embedded System) nhằm tạo ra thiết bị quạt LED RGB quay tốc độ cao, hiển thị hình ảnh 2D/3D sắc nét dựa trên hiện tượng lưu ảnh võng mạc mắt người.
graph LR
A[Nguồn cấp DC 9V-12V] --> B[Bộ hạ áp LM2576 3.3V-2A]
B --> C[Cơ cấu truyền điện Ổ bi / Bạc đạn]
C --> D[Vi điều khiển STM32F103C8T6 72MHz]
E[Cảm biến từ Hall A3144] -->|Ngắt ngoài EXTI| D
D -->|SPI1 Master Bus| F[Dãy 24 LED RGB 1 - IC 74HC595]
D -->|SPI2 Master Bus| G[Dãy 24 LED RGB 2 - IC 74HC595]
H[Động cơ DC RC-520] -->|Quay >= 1440 RPM| C
1. Problem Statement và Pain Points
- Vấn đề đồng bộ góc quét: Ở tốc độ quay cao (>1400 vòng/phút), việc định vị điểm ảnh (pixel jitter) rất dễ bị trôi nếu cơ chế ngắt không đạt độ trễ micro-giây ($\mu\text{s}$).
- Nút thắt truyền dẫn điện năng: Truyền nguồn điện liên tục từ stator cố định lên rotor quay mà không làm xoắn dây hoặc sinh tia lửa điện gây nhiễu MCU.
- Tốc độ làm tươi (Refresh Rate): Dữ liệu ảnh màu cần xuất liên tục qua hàng chục IC ghi dịch mà không làm tràn bộ nhớ SRAM giới hạn (20 KB) của vi điều khiển ARM Cortex-M3.
2. Mục tiêu dự án
- Thiết kế và chế tạo bo mạch quay tích hợp 48 LED RGB 3528 chuẩn dán SMD.
- Xây dựng giải thuật quét ảnh 360 độ theo hệ tọa độ cực (Polar Coordinates) với 360 lát cắt góc ($1^\circ$/lát cắt).
- Ứng dụng vi điều khiển STM32F103C8T6 (tần số 72 MHz) với 2 kênh truyền thông phần cứng SPI1 và SPI2 để điều khiển song song chuỗi 18 IC ghi dịch 74HC595.
- Triển khai cơ cấu cấp nguồn liên tục không dây xoắn qua ổ bi kim loại (Ball Bearing Power Transfer).
- Xây dựng phần mềm trích xuất dữ liệu ảnh từ Image2LCD kết hợp giải thuật xử lý phân tách bit màu C++ trên máy tính.
3. Phương pháp tiếp cận và kết quả kỳ vọng
- Phương pháp tiếp cận: Sử dụng cảm biến hiệu ứng Hall A3144 kích hoạt ngắt ngoài (EXTI Falling Edge) làm điểm mốc $0^\circ$, vi điều khiển tính toán thời gian chu kỳ quay qua Timer để chia đều 360 vị trí hiển thị, sau đó đẩy dữ liệu ảnh từ Look-Up Table (LUT) qua bus SPI.
- Kết quả đo lường được:
- Tốc độ động cơ: $\ge 1440\text{ RPM}$ (đạt tần số quét $\ge 24\text{ frames/s}$).
- Độ phân giải hiển thị: $48 \times 360\text{ pixel}$ (17.280 điểm ảnh ảo/khung hình).
- Hiển thị màu sắc: 7 màu cơ bản (Red, Green, Blue, Yellow, Cyan, Magenta, White).
- Phạm vi & Giới hạn: Hệ thống tập trung hiển thị ảnh tĩnh/ảnh động chuyển tiếp định dạng 8-bit giảm màu; chưa hỗ trợ băm xung PWM điều chế 16 triệu màu (TrueColor) do giới hạn tần số quét ngắt và dòng tải LED.
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 |
LED Ma trận P4 Full-Color |
Quạt Hologram thương mại (DseeLab/Hypervsn) |
Đồ án Quạt LED STM32 POV |
| Nguyên lý hiển thị |
Mảng tĩnh 2D Direct View |
Cánh quay POV động cơ không chổi than |
Cánh quay POV DC Motor + ARM Cortex-M3 |
| Hiệu ứng 3D |
Phẳng (2D phẳng) |
Nổi 3D lơ lửng, không nền |
Nổi 2.5D/3D không gian tròn |
| Mức tiêu thụ điện |
200W - 450W/m² |
30W - 65W |
12W - 18W (Tiết kiệm >85%) |
| Giá thành phần cứng |
$150 - $300/module |
$400 - $1.200/thiết bị |
<$35 (Tối ưu chi phí) |
| Khả năng tùy biến |
Cần bộ điều khiển video NovaStar |
Hệ sinh thái đóng, phần mềm trả phí |
Mã nguồn mở C/C++, tự do nạp firmware |
Yêu cầu hệ thống theo mô hình MoSCoW
- Must have: Động cơ quay ổn định $\ge 1440\text{ RPM}$; cảm biến Hall định vị chính xác điểm gốc $0^\circ$; vi điều khiển nạp mảng dữ liệu qua SPI điều khiển 48 LED RGB 7 màu.
- Should have: Bộ nguồn ổn áp Buck LM2576 chống sụt áp và lọc nhiễu cho MCU; cơ cấu ổ bi dẫn điện tiếp xúc ổn định.
- Could have: Giao diện máy tính chuyển đổi trực tiếp mọi định dạng ảnh PNG/JPG thành mã mảng C.
- Won't have (phiên bản này): Kết nối không dây Wi-Fi/Bluetooth nạp ảnh từ xa; hiển thị video 24-bit TrueColor 60 FPS.
Thiết kế hệ thống
graph TD
subgraph Máy tính / Tiền xử lý
A1[Ảnh gốc PNG/JPG] --> A2[Phần mềm Image2LCD]
A2 --> A3[Mảng màu 8-bit 3R-3G-2B]
A3 --> A4[Chương trình C++ Chuyển đổi Tọa độ Cực & Lọc 7 màu]
A4 --> A5[C Header File / Byte Array Data]
end
subgraph Khối nhúng STM32
A5 --> B1[Flash ROM 64KB - KeilC Compiler]
B2[Cảm biến Hall A3144] -->|Tín hiệu EXTI PB0| B1
B3[Timer 2 / System Clock 72MHz] -->|Đồng bộ góc quét 1 độ| B1
B1 -->|SPI1 Master: Data + SCLK| C1[9x IC 74HC595: 24 LED RGB Nhánh 1]
B1 -->|SPI2 Master: Data + SCLK| C2[9x IC 74HC595: 24 LED RGB Nhánh 2]
end
Technology Stack & Hardware Component Versions
- Vi điều khiển: STMicroelectronics STM32F103C8T6 (ARM 32-bit Cortex-M3 core, 72 MHz, 64 KB Flash, 20 KB SRAM).
- IC ghi dịch: 74HC595D SMD SOP-16 (High-speed 8-bit serial-in, parallel-out shift register with output latches).
- LED hiển thị: LED SMD 3528 RGB Common Anode (Điện áp thuận $V_F$: Red 2.0-2.4V, Green/Blue 3.0-3.4V; $I_F = 20\text{mA}$).
- Cảm biến định vị: A3144 Hall-effect switch sensor (Độ nhạy từ trường cao, tích cực mức thấp Open-Collector).
- IC hạ áp nguồn: Texas Instruments LM2576S-3.3V (3A Step-Down Voltage Regulator, tần số chuyển mạch 52 kHz) kết hợp Diode Schottky 1N5822 (3A/40V).
- Động cơ: Động cơ DC RC-520 (Dải điện áp 9V - 24V DC, tốc độ không tải tối đa 6000 RPM, công suất 150W).
- Môi trường phát triển: Keil MDK-ARM v5.24, Thư viện chuẩn STM32 Standard Peripheral Libraries (SPL) v3.5.0, Visual Studio C++ 2017.
Phương pháp luận (Methodology)
Dự án áp dụng mô hình phát triển phần cứng - phần mềm lặp (Iterative V-Model) kéo dài trong 20 tuần:
| Giai đoạn |
Thời gian |
Nhiệm vụ chính |
Deliverable |
| Phase 1: Phân tích & Tính toán |
Tuần 1 - 4 |
Tính toán tốc độ POV, chọn động cơ, tính toán sụt áp và công suất tải |
Báo cáo thông số linh kiện, Sơ đồ khối |
| Phase 2: Thiết kế phần cứng |
Tuần 5 - 9 |
Vẽ Schematic, Layout PCB 2 lớp trên Altium Designer, gia công bo mạch |
File Gerber, Mạch in hoàn thiện |
| Phase 3: Lập trình nhúng & Thuật toán |
Tuần 10 - 15 |
Viết driver SPI, Timer, ngắt EXTI trên KeilC; viết tool C++ xử lý ảnh |
Firmware Hex, Tool chuyển đổi ảnh |
| Phase 4: Tích hợp & Kiểm thử |
Tuần 16 - 20 |
Lắp ráp cơ khí ổ bi, cân bằng động cánh quạt, test hiển thị và khử nhiễu |
Hệ thống quạt LED hoàn chỉnh |
Quản trị rủi ro kỹ thuật
- Rủi ro rung lắc cơ khí ở tốc độ cao: Sử dụng thanh PCB đối xứng trọng tâm và bố trí linh kiện tản đều hai phía cánh quạt.
- Rủi ro nhiễu tín hiệu ngắt do tia lửa điện từ ổ bi: Lắp đặt tụ lọc gốm 100nF song song tụ hóa 1000uF tại đầu vào nguồn MCU; bật chế độ Pull-up nội trở kết hợp mạch lọc RC phần cứng tại chân cảm biến Hall.
Implementation và kết quả
Development Process
1. Thuật toán biến đổi tọa độ cực sang Cartesian (Polar to Cartesian Transformation)
Mỗi vòng quay cánh quạt quét một hình tròn bán kính $R = 48\text{ pixels}$. Để hiển thị ảnh vuông kích thước $96 \times 96\text{ pixels}$, tọa độ $(x, y)$ của điểm ảnh thứ $r$ ($1 \le r \le 48$) tại góc quét $\alpha$ ($0^\circ \le \alpha < 360^\circ$) được xác định bằng công thức lượng giác:
$$\text{deg} = \frac{\alpha \cdot \pi}{180}$$
$$x = X_{\text{center}} + r \cdot \cos(\text{deg}) = 48 + r \cdot \cos\left(\frac{\alpha \cdot \pi}{180}\right)$$
$$y = Y_{\text{center}} + r \cdot \sin(\text{deg}) = 48 + r \cdot \sin\left(\frac{\alpha \cdot \pi}{180}\right)$$
2. Thuật toán phân tách bit màu 8-bit sang 7 màu cơ bản
Dữ liệu từ Image2LCD xuất ra ở dạng 8-bit theo định dạng 3R-3G-2B. Thuật toán thực hiện bóc tách các kênh màu bằng phép toán dịch bit và mặt nạ bitwise AND:
// Trích xuất kênh màu từ giá trị 8-bit Palette
uint8_t raw_color = image_matrix[y][x];
uint8_t red_val = (raw_color >> 5) & 0x07; // 3 bit MSB: Red (0 - 7)
uint8_t green_val = (raw_color >> 2) & 0x07; // 3 bit Mid: Green (0 - 7)
uint8_t blue_val = raw_color & 0x03; // 2 bit LSB: Blue (0 - 3)
// Lượng tử hóa thành 7 màu cơ bản (Active Low logic cho Anode chung)
uint8_t r_bit = (red_val > 3) ? 0 : 1; // 0: Sáng, 1: Tắt
uint8_t g_bit = (green_val > 3) ? 0 : 1;
uint8_t b_bit = (blue_val > 1) ? 0 : 1;
3. Thuật toán đóng gói dữ liệu 74HC595 (Bit-Packing Architecture)
Mỗi cụm 8 LED RGB cần 24 đường tín hiệu ($8 \times 3\text{ pins}$ R-G-B), được ghép nối qua 3 IC 74HC595 (mỗi IC 8-bit). Do vị trí chân trên mạch in nhảy xen kẽ giữa các IC, mã nguồn nhúng thực hiện ánh xạ logic:
void Shift_LED_Data(uint8_t *display_buffer) {
// Kéo chân chốt (Latch Pin) xuống mức thấp trước khi truyền
GPIO_ResetBits(GPIOA, GPIO_Pin_4); // Latch Low
// Truyền 6 byte dữ liệu song song trên 2 kênh phần cứng SPI
for(int i = 0; i < 9; i++) {
// Gửi dữ liệu nhánh 1 qua SPI1
while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);
SPI_I2S_SendData(SPI1, display_buffer[i]);
// Gửi dữ liệu nhánh 2 qua SPI2
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET);
SPI_I2S_SendData(SPI2, display_buffer[i + 9]);
}
// Đợi truyền hoàn tất và tạo xung chốt dữ liệu ra ngõ ra LED
while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_BSY) == SET);
GPIO_SetBits(GPIOA, GPIO_Pin_4); // Latch High -> Dữ liệu cập nhật lên LED
}
// Trình phục vụ ngắt ngoài cảm biến Hall (EXTI0_IRQHandler)
void EXTI0_IRQHandler(void) {
if (EXTI_GetITStatus(EXTI_Line0) != RESET) {
// Đọc giá trị Timer để tính toán chu kỳ 1 vòng quay
uint32_t round_time = TIM_GetCounter(TIM2);
TIM_SetCounter(TIM2, 0); // Reset bộ định thời
// Tính toán khoảng cách trễ giữa 360 lát cắt góc
angle_delay_us = round_time / 360;
current_slice = 0;
EXTI_ClearITPendingBit(EXTI_Line0); // Xóa cờ ngắt
}
}
Testing và Validation
Hệ thống đã trải qua quá trình kiểm thử phần cứng và phần mềm với các chỉ số định lượng cụ thể:
| Kịch bản kiểm thử |
Thông số đo kiểm mục tiêu |
Kết quả thực nghiệm đạt được |
Trạng thái |
| Tốc độ quay động cơ |
$\ge 1440\text{ RPM}$ ($24\text{ FPS}$) |
$1800 - 2100\text{ RPM}$ ($\sim 30 - 35\text{ FPS}$) |
Đạt (Vượt chuẩn POV) |
| Độ trễ truyền dữ liệu SPI |
$< 20\mu\text{s}$ cho 9 byte/kênh |
$10,2\mu\text{s}$ (SPI Clock 18 MHz) |
Đạt (Đáp ứng thời gian thực) |
| Độ lệch pha góc quét |
$< 2^\circ$ sau 1000 vòng quay |
$\pm 0,5^\circ$ nhờ ngắt Hall A3144 |
Đạt (Hình ảnh không bị trôi) |
| Dòng tiêu thụ toàn tải |
$< 2,0\text{A}$ tại điện áp 3.3V |
$1,15\text{A} - 1,42\text{A}$ |
Đạt (Nguồn LM2576 3A mát, an toàn) |
| Nhiệt độ hoạt động |
Tụ nguồn và MCU $< 55^\circ\text{C}$ |
$38^\circ\text{C} - 42^\circ\text{C}$ sau 2 giờ chạy |
Đạt độ bền công nghiệp |
Đổi mới và đóng góp
- Cơ cấu truyền điện Stator-Rotor thông qua ổ bi bạc đạn: Thay thế cụm cổ góp chổi than đắt tiền bằng việc tận dụng vòng trong và vòng ngoài của 2 ổ bi kim loại để dẫn cực âm (-) và cực dương (+). Giải pháp này triệt tiêu hoàn toàn lực ma sát lớn, không gây đứt dây khi quay tốc độ cao và giảm $90%$ chi phí cơ khí.
- Kiến trúc phân luồng phần cứng SPI kép (Dual-SPI Parallel Topology): Việc chia 48 LED RGB thành 2 nhánh độc lập điều khiển bởi SPI1 và SPI2 của vi điều khiển STM32 giúp giảm $50%$ thời gian truyền dữ liệu (từ $20,4\mu\text{s}$ xuống còn $10,2\mu\text{s}$), giải phóng CPU để xử lý việc tính toán trễ góc quét.
- Giải thuật ánh xạ mảng trực tiếp (Direct LUT Matrix Optimization): Bỏ qua các phép tính $\sin/\cos$ dấu phẩy động phức tạp trên vi điều khiển thời gian thực bằng cách tính toán trước toàn bộ bảng chuyển đổi trên máy tính (Visual Studio C++), nạp thẳng vào Flash ROM dưới dạng Look-Up Table tĩnh.
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng (Real-World Use Cases)
- Quảng cáo tại điểm bán (Retail POS Display): Đặt tại các trung tâm thương mại, quầy lễ tân để hiển thị logo thương hiệu 3D nổi bật, tăng mức độ thu hút khách hàng lên $40%$ so với poster tĩnh.
- Biển báo thông minh & Đồng hồ không gian: Tích hợp hiển thị đồng hồ thời gian thực, dự báo thời tiết hoặc các biểu tượng cảnh báo giao thông tại nhà ga, sân bay.
- Triển lãm & Giáo dục công nghệ: Làm mô hình học cụ trực quan giảng dạy môn Hệ thống nhúng, Xử lý ảnh và Kỹ thuật Vi điều khiển.
gantt
title Kế hoạch triển khai thương mại hóa sản phẩm (Roadmap 6 tháng)
dateFormat YYYY-MM-DD
section Tối ưu phần cứng
Thiết kế lại PCB 4 lớp tích hợp Driver LED chuyên dụng :2026-09-01, 45d
Cân bằng động cơ khí & Vỏ bảo vệ Acrylic :2026-10-15, 30d
section Nâng cấp phần mềm
Tích hợp chip ESP32 nạp ảnh qua Wi-Fi Web Server :2026-11-15, 45d
Xây dựng Mobile App Android/iOS điều khiển :2026-12-30, 45d
section Thương mại hóa
Đánh giá độ bền & Sản xuất mẻ thử nghiệm 100 bản :2027-02-15, 30d
Phân tích tài chính & Chi phí sản xuất (Bill of Materials)
| Linh kiện / Hạng mục |
Số lượng |
Đơn giá dự kiến (VNĐ) |
Thành tiền (VNĐ) |
| Vi điều khiển STM32F103C8T6 |
01 |
55.000 |
55.000 |
| IC ghi dịch 74HC595D SMD |
18 |
3.000 |
54.000 |
| LED SMD 3528 RGB |
48 |
1.200 |
57.600 |
| Cảm biến Hall A3144 |
01 |
8.000 |
8.000 |
| IC nguồn LM2576S + Diode 1N5822 |
01 |
22.000 |
22.000 |
| Động cơ DC RC-520 + Khớp nối |
01 |
65.000 |
65.000 |
| Bo mạch PCB 2 lớp gia công |
01 |
70.000 |
70.000 |
| Ổ bi bạc đạn + Khung cơ khí mica |
02 |
40.000 |
80.000 |
| Tổng chi phí sản xuất (BOM) |
|
|
~411.600 VNĐ (~$17 USD) |
Khả năng hoàn vốn (ROI): Giá bán thương mại dự kiến của sản phẩm hoàn thiện có vỏ bảo vệ khoảng 1.200.000 VNĐ, mang lại biên lợi nhuận thô $>60%$, thời gian hoàn vốn cho dây chuyền sản xuất nhỏ ước tính dưới 4 tháng.
Hạn chế và hướng phát triển
1. Hạn chế kỹ thuật hiện tại
- Độ sâu màu sắc: Mới chỉ hiển thị được 7 màu cơ bản do IC 74HC595 chỉ hỗ trợ đóng ngắt logic On/Off (Digital High/Low), chưa băm xung PWM độc lập cho từng LED RGB.
- Cơ chế nạp dữ liệu: Dữ liệu ảnh phải biên dịch trực tiếp vào Flash ROM qua mạch nạp ST-Link; chưa có bộ nhớ Flash ngoài SPI (như W25Q64) hoặc kết nối không dây để cập nhật nội dung tức thời.
- Độ phân giải: Số lượng 48 LED giới hạn độ chi tiết của các hình ảnh phức tạp.
2. Định hướng nâng cấp
- Nâng cấp MCU lên dòng STM32F401/STM32F411 hoặc ESP32 với tần số làm việc cao hơn ($>100\text{ MHz}$) tích hợp giao tiếp Wi-Fi Web Server.
- Thay thế IC 74HC595 bằng IC chuyên dụng TLC59711 hoặc TLC5940 hỗ trợ 16-bit PWM phần cứng, cho phép hiển thị dải màu 24-bit TrueColor ($16,7\text{ triệu màu}$).
- Tích hợp khung lồng bảo vệ bằng Mica trong suốt để tăng cường độ an toàn khí động học và giảm tiếng ồn khi cánh quạt quay ở tốc độ cao ($>2000\text{ RPM}$).
Đối tượng hưởng lợi
- Sinh viên ngành Kỹ thuật Điện tử - Viễn thông / Cơ điện tử: Cung cấp tài liệu tham khảo thực tế về lập trình vi điều khiển ARM Cortex-M3, thiết kế mạch in tốc độ cao và thuật toán xử lý dữ liệu ma trận ảnh.
- Kỹ sư phát triển hệ thống nhúng: Tham khảo giải pháp tối ưu hóa bus SPI đa kênh và xử lý ngắt thời gian thực chính xác micro-giây trong các hệ thống cơ điện tử quay.
- Doanh nghiệp vừa và nhỏ / Đơn vị quảng cáo: Sở hữu giải pháp công nghệ biển hiệu quảng cáo 3D POV chi phí siêu rẻ ($<20\text{ USD}$), dễ dàng tự chủ công nghệ sản xuất trong nước.
- Nhà nghiên cứu thị giác máy tính: Nền tảng thực nghiệm giá rẻ cho các thuật toán hiển thị ảnh thể tích 3D (Volumetric 3D Display) và giao tiếp người - máy.
Câu hỏi thường gặp
1. Tại sao hệ thống cần tốc độ quay tối thiểu 1440 RPM?
Hiện tượng lưu ảnh võng mạc mắt người kéo dài khoảng $1/10\text{s} - 1/16\text{s}$. Để não bộ ghép nối các vệt sáng rời rạc thành một hình ảnh liên tục không bị nhấp nháy (flicker-free), tần số quét tối thiểu phải đạt $24\text{ khung hình/giây (FPS)}$.
$$\text{Tốc độ động cơ tối thiểu} = 24\text{ frames/s} \times 60\text{ s/phút} = 1440\text{ vòng/phút (RPM)}$$
2. Làm thế nào để giải quyết vấn đề dây điện bị xoắn khi cánh quạt quay liên tục?
Hệ thống sử dụng cơ cấu truyền điện qua 2 ổ bi (bạc đạn) kim loại dẫn điện. Cực dương nguồn nối vào vòng ngoài ổ bi 1 (cố định), vòng trong (quay cùng trục) nối lên bo mạch. Tương tự, cực âm đi qua trục động cơ và ổ bi 2. Cơ chế này cho phép rotor quay vô hạn vòng mà không cần dây nối chuyển động.
3. Tại sao không dùng Timer định thời gian quét mà bắt buộc phải có cảm biến Hall A3144?
Tốc độ động cơ DC luôn có sự dao động nhỏ (Jitter) do ma sát không khí và sụt áp tải. Nếu chỉ dùng Timer cố định, hình ảnh sẽ bị trôi xoay tròn liên tục. Cảm biến Hall A3144 phát hiện nam châm cố định để phát tín hiệu ngắt ngoài EXTI mỗi khi quay đủ 1 vòng ($360^\circ$), giúp MCU tự động hiệu chuẩn lại thời gian quét cho vòng tiếp theo, giữ hình ảnh đứng yên tuyệt đối.
4. Dải màu 7 màu cơ bản được tạo ra từ 3 kênh LED RGB như thế nào?
Bằng cách kích hoạt mức logic 0 (Active Low) cho các chân Anode chung:
- Đỏ (Red: On, Green: Off, Blue: Off)
- Xanh lá (Red: Off, Green: On, Blue: Off)
- Xanh dương (Red: Off, Green: Off, Blue: On)
- Vàng (Red: On, Green: On, Blue: Off)
- Xanh ngọc / Cyan (Red: Off, Green: On, Blue: On)
- Tím cánh sen / Magenta (Red: On, Green: Off, Blue: On)
- Trắng (Red: On, Green: On, Blue: On)
5. Bo mạch có bị mất cân bằng động khi quay ở tốc độ 2000 RPM không?
Có nguy cơ rung lắc nếu không xử lý cơ khí. Đồ án giải quyết bằng cách thiết kế mạch in PCB 2 cánh đối xứng, phân bổ đều trọng lượng linh kiện (vi điều khiển nằm giữa, 9 IC 74HC595 mỗi bên, 24 LED mỗi nhánh) giúp trọng tâm rơi đúng vào trục quay của động cơ.
Kết luận
Đồ án "Thiết kế và thi công mạch quạt LED sử dụng vi điều khiển STM32" đã chứng minh tính khả thi và hiệu quả vượt trội của việc ứng dụng vi điều khiển 32-bit kiến trúc ARM Cortex-M3 vào bài toán xử lý thị giác POV thời gian thực. Hệ thống hoàn thành đầy đủ các mục tiêu thiết kế từ chế tạo phần cứng, cơ cấu truyền điện ổ bi sáng tạo, tối ưu hóa đường truyền Dual-SPI đến xây dựng thuật toán chuyển đổi tọa độ cực chính xác 360 lát cắt góc. Với chi phí linh kiện chỉ khoảng $17\text{ USD}$, giải pháp mở ra tiềm năng thương mại hóa lớn trong lĩnh vực quảng cáo hiển thị 3D không gian mở, đồng thời là tài liệu tham khảo có giá trị kỹ thuật cao cho cộng đồng nghiên cứu hệ thống nhúng và cơ điện tử.