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

Trong kỹ thuật hiện đại, lĩnh vực điều khiển tự động đóng vai trò then chốt đối với các dây chuyền sản xuất công nghiệp và hệ thống kỹ thuật. Các bài toán điều khiển cơ bản như điều khiển vị trí, vận tốc động cơ hay ổn định hệ thống đòi hỏi nền tảng phần cứng có năng lực tính toán cao, dung lượng bộ nhớ lớn và tốc độ đáp ứng thời gian thực nhanh chóng. Đồng thời, quy trình phát triển thuật toán điều khiển truyền thống thông qua lập trình mã nguồn thủ công (C/C++) thường tốn nhiều thời gian cấu hình thanh ghi và kiểm thử lỗi phần cứng.

Nhằm giải quyết yêu cầu nghiên cứu và ứng dụng một phần cứng có bộ nhớ cùng tốc độ xử lý cao hơn, đồng thời rút ngắn thời gian phát triển bộ điều khiển thông qua mô hình hóa trực quan, đề tài "Ứng dụng ARM STM32F4 Discovery và MATLAB/SIMULINK trong thiết kế các bộ điều khiển" được thực hiện bởi nhóm sinh viên Trường Điện – Điện tử, Đại học Bách khoa Hà Nội dưới sự hướng dẫn của ThS. Cao Thành Trung vào tháng 3 năm 2023.

Nhiệm vụ và mục tiêu nghiên cứu của đề tài gồm các nội dung chính:

  1. Nghiên cứu tổng quan lý thuyết điều khiển tự động (điều khiển kinh điển, hiện đại, thông minh) và các phương pháp thiết kế bộ điều khiển (PID, hồi tiếp trạng thái).
  2. Tìm hiểu cấu trúc phần cứng vi điều khiển 32-bit ARM Cortex-M4F trên kit thí nghiệm STM32F407 Discovery và phần mềm MATLAB/Simulink.
  3. Nghiên cứu và thực hành tích hợp thư viện Waijung Blockset vào Simulink để sinh mã tự động, cấu hình các khối ngoại vi phần cứng on-chip (ADC, DAC, Digital I/O, Timer/Counter, PWM, Encoder Read, Timer IRQ, UART, Host Serial).
  4. Kiểm thử thực nghiệm các mô hình điều khiển và giao tiếp dữ liệu giữa board STM32F407 Discovery với máy tính thời gian thực.

Đối tượng nghiên cứu là kit phát triển STM32F407G-DISC1 tích hợp chip STM32F407VGT6 và gói phần mềm mô phỏng mô hình hóa Waijung Blockset chạy trên môi trường MATLAB/Simulink. Phạm vi nghiên cứu tập trung vào việc thiết lập, cấu hình phần cứng ngoại vi và thực thi các thí nghiệm truyền nhận, điều chế tín hiệu điều khiển trên môi trường phòng thí nghiệm.


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

Khung lý thuyết điều khiển hệ thống

Tài liệu hệ thống hóa ba giai đoạn phát triển của lý thuyết điều khiển:

  • Điều khiển kinh điển (Classical Control): Phát triển trước năm 1960, mô tả hệ thống trong miền tần số (biến đổi Fourier) và mặt phẳng phức $s$ (biến đổi Laplace). Phương pháp này chủ yếu áp dụng cho hệ tuyến tính bất biến một ngõ vào – một ngõ ra (SISO), sử dụng các công cụ phân tích biểu đồ Bode, Nyquist và quỹ đạo nghiệm số (QĐNS) để thiết kế các khâu hiệu chỉnh sớm/trễ pha, PID.
  • Điều khiển hiện đại (Modern Control): Phát triển từ năm 1960, mô tả hệ thống trong miền thời gian bằng phương trình không gian trạng thái. Phương pháp này áp dụng tốt cho hệ nhiều ngõ vào – nhiều ngõ ra (MIMO), hệ phi tuyến (thông qua lý thuyết ổn định Lyapunov), thiết kế bộ điều khiển hồi tiếp trạng thái $u(t) = r(t) - Kx(t)$ bằng phương pháp phân bố cực hoặc điều khiển tối ưu LQR.
  • Điều khiển thông minh (Intelligent Control): Bao gồm logic mờ (Fuzzy Logic), mạng thần kinh nhân tạo (Neural Network) và thuật toán di truyền (Genetic Algorithm), cho phép điều khiển các đối tượng phức tạp không xác định được mô hình toán học chính xác.

Cấu trúc cơ bản của hệ thống điều khiển hồi tiếp gồm ba thành phần: thiết bị đo lường (cảm biến thu thập tín hiệu hồi tiếp $c_{ht}(t)$), bộ điều khiển (tính toán sai số $e(t) = r(t) - c_{ht}(t)$ để sinh tín hiệu điều khiển $u(t)$) và đối tượng điều khiển (chịu tác động của $u(t)$ để tạo ra đáp ứng $c(t)$).

Phương pháp nghiên cứu và nguồn dữ liệu

Đề tài sử dụng phương pháp thiết kế dựa trên mô hình (Model-Based Design - MBD) kết hợp thực nghiệm:

  • Mô hình hóa và mô phỏng: Sử dụng hộp công cụ Simulink để trực quan hóa thuật toán và sơ đồ khối.
  • Thực nghiệm phần cứng: Nạp mã tự động xuống kit vi điều khiển thông qua thư viện Waijung Blockset, đo đạc dạng sóng và kiểm chứng hoạt động của các chân tín hiệu ngoại vi.
  • Nguồn tài liệu: Giáo trình Matlab & Simulink (Nguyễn Phùng Quang), Sổ tay tra cứu kỹ thuật STM32F40xxx Reference Manual (RM0090) và Datasheet STM32F407xx từ nhà sản xuất STMicroelectronics.

Thiết kế và triển khai hệ thống

Cấu trúc phần cứng STM32F407 Discovery

Hệ thống sử dụng kit phát triển STM32F407 Discovery với các thông số phần cứng chính:

  • Bộ vi điều khiển: STM32F407VGT6 tích hợp lõi 32-bit ARM Cortex-M4F, tích hợp đơn vị tính toán dấu phẩy động (FPU).
  • Bộ nhớ: 1 MB bộ nhớ Flash, 192 KB SRAM.
  • Mạch nạp tích hợp: ST-LINK/V2 giao tiếp qua cổng USB.
  • Ngoại vi và cảm biến tích hợp: Cảm biến gia tốc 3 trục LIS302DL, cảm biến âm thanh số MP45DT02, 4 đèn LED hiển thị người dùng (LED3 đến LED6), nút nhấn người dùng (User Button) và nút Reset.

Môi trường phần mềm và cấu hình Waijung Blockset

Thư viện Waijung Blockset đóng vai trò cầu nối biên dịch các khối sơ đồ Simulink thành mã nguồn nhúng C và nạp trực tiếp xuống chip thông qua trình biên dịch kết hợp mạch nạp ST-LINK:

  • Giao tiếp ngoại vi hỗ trợ: Khối On-chip Peripherals cho phép cấu hình trực quan ADC, DAC, Digital I/O, Timer, PWM, Encoder, External Interrupts (IRQ), UART.
  • Giao tiếp dữ liệu máy tính: Khối Host Serial (Setup, Tx, Rx) và mô-đun phần cứng chuyển đổi USB-UART CP2102, kết hợp phần mềm Terminal để giám sát luồng dữ liệu thời gian thực.

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

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

Chương 1 trình bày nền tảng lý thuyết điều khiển tự động và các phương pháp thiết kế bộ điều khiển. Tác giả phân tích hai cấu trúc thiết kế cơ bản:

  • Hiệu chỉnh nối tiếp: Đặt bộ điều khiển (P, PI, PD, PID, sớm trễ pha) nối tiếp với hàm truyền hệ hở; sử dụng phương pháp quỹ đạo nghiệm số hoặc biểu đồ Bode để đảm bảo tính ổn định và chỉ tiêu chất lượng quá độ.
  • Điều khiển hồi tiếp trạng thái: Đưa toàn bộ vector trạng thái $x(t)$ về đầu vào thông qua ma trận vector hồi tiếp $K = [k_1, k_2, \dots, k_n]$; sử dụng phương pháp phân bố cực hoặc tối ưu tuyến tính LQR.
  • Bộ điều khiển PID: Phân tích chức năng kết hợp của ba khâu tỉ lệ (P), tích phân (I) và vi phân (D) nhằm giảm độ vọt lố (POT), rút ngắn thời gian xác lập ($t_s$), giảm dao động và triệt tiêu sai số xác lập ($e_{xl} = 0$).

Chương 2: Giới thiệu phần mềm và phần cứng

Nội dung chương 2 khái quát về công cụ phần mềm MATLAB/SIMULINK của công ty The MathWorks cùng các tính năng tính toán ma trận, vẽ đồ thị 2D/3D, mô hình hóa hệ thống động tuyến tính/phi tuyến liên tục và rời rạc. Tiếp đó, tài liệu giới thiệu chi tiết cấu trúc phần cứng kit ARM STM32F407 Discovery, vai trò của bộ xử lý Cortex-M4F, các khối ngoại vi tích hợp sẵn trên bo mạch phục vụ ứng dụng nhúng và hệ thống tự động hóa.

Chương 3: Hướng dẫn sử dụng thư viện Waijung trong MATLAB/Simulink

Chương 3 là phần thực nghiệm trọng tâm của đồ án, hướng dẫn chi tiết cách thiết lập, cấu hình thông số và kiểm chứng các khối chức năng của thư viện Waijung Blockset:

                  +-----------------------------------+
                  |   MATLAB / SIMULINK Environment   |
                  |     (Waijung Blockset Library)    |
                  +-----------------+-----------------+
                                    | (Code Generation)
                                    v
+-----------------------------------------------------------------------+
|                       STM32F407 DISCOVERY BOARD                       |
|                                                                       |
|  [ADC Module]     12-bit Resolution (0 - 4095) <--- Potentiometer     |
|  [DAC Module]     Voltage Output (0 - 3.3V)    ---> Sine/Triangular   |
|  [Digital I/O]    Push-Pull / Open-Drain       ---> LEDs & Buttons    |
|  [Timer / PWM]    14 Timers / Edge-Aligned     ---> LED Dimming       |
|  [Encoder Read]   TIM1-TIM8 (x1, x2, x4 Mode)  <--- Rotary Encoder    |
|  [Timer IRQ]      Hardware Interrupt ISR       ---> Event Control     |
|  [UART Setup/Tx]  Up to 10.5 Mbps (CP2102)     <---> PC Terminal      |
+-----------------------------------+-----------------------------------+
                                    | (USB-UART Communication)
                                    v
                  +-----------------------------------+
                  |    PC Interface / Host Serial     |
                  |  (Real-Time Tuning & Monitoring)  |
                  +-----------------------------------+

1. Bộ chuyển đổi tín hiệu ADC và DAC

  • Khối Regular ADC: Mô-đun ADC của STM32F4 có độ phân giải 12 bit, chuyển đổi điện áp $0\text{ V} \div V_{REF+}$ thành giá trị số nguyên $0 \div 4095$, điện áp nguồn từ $1.6\text{ V}$.
    • Thí nghiệm điều khiển LED bằng biến trở: Tín hiệu từ biến trở đưa vào chân AN5 (PA5), nguồn cấp 3.3V và GND. Thiết lập logic so sánh: điện áp $\ge 0.5\text{ V}$ bật LED 1; $\ge 1.0\text{ V}$ bật LED 2; $\ge 1.5\text{ V}$ bật LED 3; $\ge 2.0\text{ V}$ bật LED 4.
  • Khối Regular DAC: Chuyển đổi dữ liệu số ($0 \div 4095$) hoặc điện áp ($0 \div 3.3\text{ V}$) thành tín hiệu tương tự (điện áp cấp ra từ $0.6\text{ V}$).
    • Thí nghiệm tạo tín hiệu tuần hoàn: Phát sóng tam giác trên kênh DAC1 (chân PA4, biên độ $0 \div 2\text{ V}$) và sóng hình sin trên kênh DAC2 (chân PA5). Sử dụng khối Rate Transition để chuyển đổi giữa miền liên tục và rời rạc; đối với các ứng dụng tần số cao, sử dụng khối Arbitrary Function Generator để giảm tải tính toán lượng giác.
Ngoại vi Độ phân giải / Dải dữ liệu Dải điện áp hoạt động Chân thí nghiệm
ADC 12 bit ($0 \div 4095$) $0\text{ V} \div V_{REF+}$ (Nguồn cấp $\ge 1.6\text{ V}$) Chân AN5 (PA5)
DAC 12 bit ($0 \div 4095$) Điện áp ra từ $0.6\text{ V} \div 3.3\text{ V}$ DAC1 (PA4), DAC2 (PA5)

2. Cổng vào ra số (Digital Input/Output)

  • Cấu hình ngõ vào: Hỗ trợ ba chế độ: Pull-Up (điện trở kéo lên, nhấn nút mức LOW), Pull-Down (điện trở kéo xuống, nhấn nút mức HIGH) và Floating (thả nổi, cần gắn trở ngoài).
  • Cấu hình ngõ ra:
    • Push-Pull Output: Sử dụng cặp P-MOS và N-MOS. Dòng định mức chịu đựng tối đa của các chân GPIO là $25\text{ mA}$ (riêng các chân PC13, PC14, PC15 bị giới hạn tối đa $3\text{ mA}$). Mạch điều khiển LED sử dụng điện trở hạn dòng $R = 660\ \Omega$.
    • Open-Drain Output: Cần nguồn cấp ngoài ($V_{ext}$), cho phép điều khiển mức điện áp khác $V_{DD}$.
  • Thí nghiệm triển khai:
    • Điều chỉnh thời gian sáng LED: Dùng khối Pulse Generator tạo xung vuông chu kỳ $T = 4\text{ s}$ (sáng $1\text{ s}$, tắt $3\text{ s}$), tương ứng độ rộng xung $\text{Duty Cycle} = \frac{1}{4} \times 100% = 25%$.
    • Điều khiển LED bằng nút nhấn: Đọc trạng thái từ nút nhấn qua khối Digital Input và xuất trực tiếp ra khối Digital Output.

3. Bộ định thời và đếm xung (Timer/Counter)

Vi điều khiển STM32F407 có 17 mô-đun kết hợp tín hiệu Clock, trong đó có 14 mô-đun Timer:

  • Bộ đếm Counter: Thanh ghi 16-bit, hoạt động theo các chế độ Up counter (đếm tiến), Down counter (đếm lùi) và Up-Down counter (đếm tiến - lùi). Bộ chia trước Prescaler nhận giá trị từ $0 \div 65535$.
  • Điều chế độ rộng xung (PWM): Tỷ lệ phần trăm độ rộng xung tính theo công thức: $$% \text{ Độ rộng xung} = \frac{t_{ON}}{T} \times 100 = \frac{t_{ON}}{t_{ON} + t_{OFF}} \times 100$$ Thực hiện so sánh giá trị thanh ghi Counter với giá trị đặt (Reference signal). Thí nghiệm điều chỉnh độ sáng LED bằng PWM dùng biến trở đọc qua chân PA5 để thay đổi độ rộng xung phát ra các chân PA0, PA1, PA2.
  • Khối đọc Encoder (Encoder Read): Đọc tín hiệu từ cảm biến góc quay quang học gồm 2 kênh A và B lệch pha nhau $90^\circ$. Xác định chiều quay: kênh A sớm pha hơn kênh B là quay thuận (CW, gán giá trị 0), ngược lại là quay nghịch (CCW, gán giá trị 1). Hỗ trợ chế độ nhân tần số xung $x1, x2, x4$. Đĩa mã hóa 180 xung/vòng ở chế độ $x4$ cho ra 720 vị trí/vòng, đạt độ phân giải góc $\frac{360^\circ}{720} = 0.5^\circ$.
  • Ngắt ngoài Timer IRQ: STM32F4 hỗ trợ 82 nguồn ngắt. Cấu hình các khối Timer IRQ từ TIM2 đến TIM5 theo các mức độ ưu tiên (Priority) để gọi các chương trình con phục vụ ngắt (ISR) điều khiển chớp tắt LED.

4. Chuẩn giao tiếp nối tiếp UART và Host Serial

  • Cấu hình UART Setup & UART Tx: STM32F407 hỗ trợ 6 mô-đun UART:
    • Mô-đun UART1 và UART6 hỗ trợ tốc độ truyền tối đa lên đến $10.5\text{ Mbps}$.
    • Mô-đun UART2, 3, 4, 5 hỗ trợ tốc độ truyền tối đa $5.25\text{ Mbps}$.
    • Các tham số cấu hình: Baud rate ($9600, 115200, \dots$), Data bits (8), Parity (None, Odd, Even), Stop bit ($0.5, 1, 1.5, 2$).
    • Chế độ truyền: Blocking (chờ gửi xong mới thực thi lệnh tiếp theo) hoặc Non-blocking (truyền không đồng bộ). Định dạng gói tin: ASCII Mode, Binary Mode, String Buffer Mode. Ký tự kết thúc gói: CR, LF, CRLF, None.
  • Giao tiếp Host Serial hai chiều: Sử dụng các khối Host Serial Setup, Host Serial Tx, Host Serial Rx chạy ở chế độ mô phỏng vô hạn thời gian (inf mode) trên máy tính. Dữ liệu được điều khiển bằng thanh trượt (Slider) trên Simulink gửi xuống board STM32F4 và truyền ngược trở lại máy tính để hiển thị đồ thị kiểm chứng.

Chương 4: Kết luận

Tổng kết lại toàn bộ các nội dung nghiên cứu lý thuyết và thực hành cấu hình phần cứng STM32F407 kết nối với MATLAB/Simulink; đánh giá mức độ hoàn thành mục tiêu đề tài.


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

Kết quả thực nghiệm

Tài liệu ghi nhận các kết quả thực nghiệm cụ thể sau quá trình triển khai:

  1. Thiết lập thành công môi trường nạp mã và mô phỏng nhúng giữa MATLAB/Simulink và kit STM32F407 Discovery thông qua thư viện Waijung Blockset.
  2. Kiểm chứng chính xác giải thuật đọc điện áp ADC 12-bit theo 4 ngưỡng ($0.5\text{ V}, 1.0\text{ V}, 1.5\text{ V}, 2.0\text{ V}$) để kích hoạt sáng tuần tự 4 LED.
  3. Xuất thành công đồng thời hai dạng sóng tín hiệu tuần hoàn (tam giác $0 \div 2\text{ V}$ và hình sin $0 \div 3.3\text{ V}$) qua 2 kênh DAC1 và DAC2.
  4. Điều khiển chu kỳ phát xung Digital Output ($1\text{ s}$ sáng, $3\text{ s}$ tắt, tương ứng $25%$ chu kỳ) và xử lý đọc tín hiệu nút nhấn ngõ vào Digital Input.
  5. Thực hiện điều chế độ rộng xung PWM đa kênh điều khiển độ sáng LED; giải mã tín hiệu Encoder quang học 2 kênh lệch pha $90^\circ$ ở chế độ nhân xung $x4$ đạt độ phân giải $0.5^\circ$.
  6. Thiết lập ngắt định thời Timer IRQ (TIM2 – TIM5) điều khiển chương trình con; truyền nhận dữ liệu hai chiều giữa vi điều khiển và máy tính qua giao tiếp UART / Host Serial với mô-đun CP2102.

Đóng góp của đề tài

  • Cung cấp tài liệu hướng dẫn kỹ thuật chi tiết về phương pháp tiếp cận thiết kế hệ thống nhúng điều khiển bằng sơ đồ khối Simulink thay cho lập trình mã nguồn thanh ghi truyền thống.
  • Chuẩn hóa quy trình cấu hình các khối chức năng phần cứng STM32F407 bằng thư viện Waijung Blockset, làm cơ sở thực hành cho các bài toán điều khiển tự động thời gian thực.

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

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

  • Nội dung đề tài chủ yếu dừng lại ở mức độ khảo sát, hướng dẫn cấu hình và thực nghiệm từng khối ngoại vi riêng lẻ của vi điều khiển.
  • Chưa áp dụng trực tiếp thuật toán điều khiển tự động hoàn chỉnh (như PID số khép kín, mờ, nơ-ron) trên một mô hình đối tượng cơ điện thực tế (như hệ thống động cơ DC, con lắc ngược hay tay máy).

Hướng nghiên cứu và phát triển

Tác giả đề xuất hai hướng mở rộng tiếp theo:

  1. Nghiên cứu tích hợp các thuật toán điều khiển thông minh nâng cao như điều khiển mờ (Fuzzy Control) và mạng thần kinh nhân tạo (Neural Network) vào mô hình Simulink để nạp xuống phần cứng STM32F4.
  2. Thiết kế và chế tạo mạch công suất phần cứng thực tế nhằm ứng dụng trực tiếp board STM32F407 Discovery vào điều khiển các hệ thống cơ điện trong công nghiệp.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho:

  • Sinh viên ngành Kỹ thuật Điều khiển & Tự động hóa, Kỹ thuật Điện - Điện tử, Cơ điện tử: Sử dụng làm tài liệu thực hành môn học Vi điều khiển, Hệ thống nhúng hoặc Đồ án chuyên ngành.
  • Người nghiên cứu và kỹ sư phát triển hệ thống nhúng: Tham khảo phương pháp thiết kế dựa trên mô hình (Model-Based Design), cách cấu hình các khối ngoại vi STM32F4 bằng Waijung Blockset và phương thức giao tiếp dữ liệu máy tính thời gian thực qua giao thức UART.

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

1. Kit vi điều khiển sử dụng trong đồ án có cấu hình phần cứng như thế nào?

Đồ án sử dụng kit ARM STM32F407 Discovery trang bị vi điều khiển 32-bit STM32F407VGT6 (lõi ARM Cortex-M4F), có $1\text{ MB}$ Flash, $192\text{ KB}$ RAM, tích hợp sẵn mạch nạp ST-LINK/V2, cảm biến gia tốc 3 trục LIS302DL, bộ xử lý âm thanh MP45DT02, nút nhấn người dùng và các cổng vào ra mở rộng.

2. Mô-đun ADC và DAC trên STM32F407 có thông số điện áp và độ phân giải ra sao?

Mô-đun ADC có độ phân giải 12 bit, giá trị số ngõ ra từ $0 \div 4095$, hoạt động với dải điện áp chuyển đổi từ $0\text{ V} \div V_{REF+}$, điện áp nguồn cấp từ $1.6\text{ V}$. Mô-đun DAC có khả năng xuất điện áp tương tự từ $0.6\text{ V} \div 3.3\text{ V}$ tương ứng với giá trị đầu vào $0 \div 4095$.

3. Nguyên lý xác định chiều quay và tăng độ phân giải của khối Encoder Read là gì?

Khối Encoder Read đọc 2 kênh tín hiệu xung vuông A và B lệch pha nhau $90^\circ$. Nếu tín hiệu kênh A sớm pha hơn kênh B thì động cơ quay theo chiều kim đồng hồ (CW), ngược lại là ngược chiều kim đồng hồ (CCW). Độ phân giải được tăng lên nhờ chế độ đếm cả sườn lên và sườn xuống của 2 kênh (chế độ $x4$). Với đĩa mã hóa 180 khe/vòng, chế độ $x4$ cho ra $180 \times 4 = 720$ xung/vòng, tương đương độ phân giải $0.5^\circ/\text{xung}$.

4. Giới hạn dòng điện của các chân GPIO ngõ ra Push-Pull trên STM32F4 là bao nhiêu?

Các chân ngõ ra GPIO ở chế độ Push-Pull chịu được dòng điện tối đa là $25\text{ mA}$. Riêng ba chân PC13, PC14 và PC15 chỉ chịu được dòng tải tối đa là $3\text{ mA}$. Do đó, trong các mạch thí nghiệm điều khiển LED, nhóm tác giả sử dụng điện trở hạn dòng $R = 660\ \Omega$.

5. Tốc độ truyền tối đa của các mô-đun UART trên STM32F407 là bao nhiêu?

STM32F407 hỗ trợ 6 mô-đun UART: mô-đun UART1 và UART6 cho phép thiết lập tốc độ truyền dữ liệu tối đa lên tới $10.5\text{ Mbps}$, trong khi các mô-đun UART2, UART3, UART4 và UART5 hỗ trợ tốc độ truyền tối đa là $5.25\text{ Mbps}$.


Kết luận

Báo cáo Đồ án II "Ứng dụng ARM STM32F4 Discovery và MATLAB/SIMULINK trong thiết kế các bộ điều khiển" của nhóm sinh viên Trường Điện – Điện tử, Đại học Bách khoa Hà Nội đã hệ thống hóa cơ sở lý thuyết điều khiển tự động và triển khai thành công phương pháp sinh mã tự động bằng thư viện Waijung Blockset. Nhóm tác giả đã xây dựng và kiểm chứng thực nghiệm đầy đủ các khối chức năng ngoại vi của kit vi điều khiển STM32F407 bao gồm ADC, DAC, Digital I/O, PWM, Encoder, Timer IRQ và UART. Công trình tạo tiền đề kỹ thuật vững chắc cho việc ứng dụng phần cứng ARM Cortex-M4 vào các hệ thống điều khiển thông minh và mạch công suất thực tế trong tương lai.