# 🛠️ Mạch Điều Khiển Trung Tâm CNC (PCB Design)

Mạch điều khiển trung tâm là một trong những thành phần cốt lõi của đồ án **"Điều khiển giám sát chạm khắc từ xa với máy CNC"**, được thiết kế nhằm tối ưu hóa không gian phần cứng, giảm thiểu độ trễ giao tiếp và nâng cao tính ổn định cho toàn bộ quá trình gia công mạch in từ xa.

Bo mạch sử dụng cấu trúc điều khiển tập trung với vi điều khiển **ESP32-WROOM-32D** làm trung tâm, tích hợp khối công suất điều khiển động cơ bước và hệ thống hạ áp - lọc nhiễu chuyên dụng.

---

## 📌 Tính Năng Nổi Bật Của Bo Mạch
* **Điều khiển tích hợp:** Sử dụng ESP32 làm vi điều khiển trung tâm đảm nhiệm đồng thời việc nội suy quỹ đạo G-code và băm xung (Hardware PWM/RMT).
* **Hạ áp & Cách ly nguồn thông minh:** Tích hợp IC xung LM2596 và IC ổn áp tuyến tính AMS1117-3.3V giúp tách biệt nguồn sạch cho vi xử lý, tránh hiện tượng nhiễu/reset do dòng xung từ động cơ.
* **Tùy chỉnh vi bước linh hoạt:** Hỗ trợ dãy Jumper để cấu hình chế độ vi bước (Microstepping từ 1/1 đến 1/32) cho driver DRV8825.
* **Chống nhiễu ngoại vi:** Thiết kế mạch lọc nhiễu RC (Resistor-Capacitor) cho các chân tín hiệu công tắc hành trình (Limit Switches) và nút nhấn dừng khẩn cấp (EMG).
* **Tối ưu hóa sóng không dây:** Khu vực xung quanh Antenna của ESP32 được bố trí vùng không gian trống (Clearance) để tối ưu hóa hiệu suất truyền nhận Wi-Fi/WebSockets.

---

## 📐 Thông Số Kỹ Thuật Chi Tiết

| Thành phần khối | Linh kiện sử dụng | Chức năng & Thông số chính |
| :--- | :--- | :--- |
| **Khối xử lý trung tâm** | ESP32-WROOM-32D | SoC lõi kép Xtensa® 32-bit LX6 (80MHz - 240MHz), 4MB Flash, 520KB SRAM. Xử lý đa luồng (Core 0 chạy tác vụ mạng, Core 1 chạy Real-time G-code nội suy). |
| **Khối nguồn (Power)** | LM2596S-ADJ & AMS1117-3.3V | Đầu vào DC (12V/24V). LM2596 hạ áp xuống 5V (relay, quạt). AMS1117 hạ tiếp xuống 3.3V cấp nguồn sạch cho ESP32. |
| **Khối điều khiển trục** | 3 Cụm Driver DRV8825 | Nhận tín hiệu Step/Dir/Enable cấp dòng công suất cao điều khiển 3 động cơ bước Nema 17 (Trục X, Y, Z). |
| **Khối giao tiếp ngoại vi** | OLED (I2C), MicroSD, UART | Cổng I2C kết nối màn hình OLED tại chỗ, khe cắm MicroSD lưu trữ G-code ngoại tuyến, cổng UART (115200 bps) nạp firmware/giao tiếp. |
| **Khối kích hoạt Spindle** | Module Relay & Khối PWM | Chân Digital đóng ngắt nguồn trục chính (Động cơ 775) qua Relay và chân xuất xung PWM điều khiển tốc độ phay. |

---

## 🖼️ Sơ Đồ Thiết Kế Phần Cứng

<img width="750" height="388" alt="image" src="https://github.com/user-attachments/assets/828dba3e-38d9-44db-af5d-0e3eff48c7df" />


### 1. Sơ Đồ Nguyên Lý (Schematic)
Bo mạch được thiết kế nguyên lý chi tiết trên phần mềm **Altium Designer** với việc phân chia khối rõ ràng: Khối nguồn hạ áp, khối vi điều khiển trung tâm ESP32, khối giao tiếp driver trục X/Y/Z, khối kết nối thẻ nhớ SD, và các bộ lọc nhiễu RC ngoại vi.

<img width="781" height="631" alt="image" src="https://github.com/user-attachments/assets/4e1822d9-3027-49d7-a0b3-754e137707dc" />
<img width="582" height="715" alt="image" src="https://github.com/user-attachments/assets/a2c4be71-80e8-4d0b-b8e4-a54f1bdad535" />
<img width="567" height="693" alt="image" src="https://github.com/user-attachments/assets/629bd026-4400-4dba-9979-39dde5d6f7f6" />

### 2. Sơ Đồ Mạch In (PCB Layout)
Mạch được tối ưu hóa đường chạy dây công suất (đường nguồn 12V/24V và đường motor được đi dây kích thước lớn) và phủ đồng GND diện tích rộng ở cả lớp Top và Bottom để giảm thiểu tối đa hiện tượng nhiễu EMI.

<img width="337" height="582" alt="image" src="https://github.com/user-attachments/assets/b1816d38-3bcd-49c2-b84c-a9dd640373cd" />
<img width="322" height="290" alt="image" src="https://github.com/user-attachments/assets/62a4e2f6-2631-4db9-801e-635544582e26" />

### 3. Thành Phẩm Thực Tế
<img width="1280" height="960" alt="z7908839848293_0a060f11ddcdb2a47431b58dbe634509" src="https://github.com/user-attachments/assets/d76f5bb0-012e-4662-8c7a-25b03876ce93" />


https://github.com/user-attachments/assets/b47582dc-52ee-4652-844b-3312ea98d691




