Net class và trace width: khi nào cần đi đường mạch to hơn?
Chia sẻ về net class và chọn độ rộng trace khi layout PCB nhỏ: đường signal, đường nguồn 3V3, 5V, VBAT, GND, via nguồn và checklist nhanh trước khi xuất Gerber.
Chia sẻ

Khi mới layout PCB, rất dễ xem mọi đường nối như nhau: có net trên schematic, kéo được trace qua board, DRC không báo lỗi là xong. Nhưng trong mạch thật, một đường GPIO và một đường cấp nguồn cho ESP32 không nên được đối xử giống nhau.
Net class giúp mình gom các net có cùng yêu cầu thiết kế vào một nhóm. Còn trace width là độ rộng thực tế của đường đồng trên PCB. Hai thứ này liên quan chặt chẽ với nhau: chia net class tốt giúp phần mềm nhắc mình dùng đúng độ rộng trace, đúng clearance và đúng via cho từng nhóm đường quan trọng.
Net class là gì?
Trong schematic, mỗi kết nối thuộc về một net: 3V3, GND, VBAT, I2C_SDA, SPI_MOSI, USB_D+, USB_D-…
Net class là nhóm các net có cùng quy tắc thiết kế. Thay vì chỉnh từng đường một, bạn có thể tạo vài nhóm có ý nghĩa rồi đặt rule chung cho từng nhóm:
Signal: GPIO, I2C, SPI, UART, tín hiệu điều khiển thông thường.Power_3V3: đường 3.3V cấp cho MCU, cảm biến, màn hình nhỏ.Power_5V: USB 5V, VBUS, đường vào regulator.Battery: VBAT, BAT+, đường từ pin Li-Po hoặc mạch sạc.GND: các kết nối mass quan trọng, thường ưu tiên copper plane hơn trace nhỏ.USB: cặpUSB_D+vàUSB_D-.High_Current: motor, LED công suất, loa, heater, sạc pin hoặc tải kéo dòng lớn.
Điểm hay của net class là nó biến một thói quen thủ công thành rule có thể kiểm tra được. Nếu VBAT bị đi bằng trace mảnh như GPIO, DRC hoặc rule setup có thể giúp bạn phát hiện sớm.
Vì sao trace width quan trọng?
Trace trên PCB cũng là dây dẫn, chỉ là dây dẫn rất dẹt. Trace càng hẹp và càng dài thì điện trở càng cao. Khi dòng đi qua, đường đó có thể bị sụt áp, nóng lên, hoặc làm mạch hoạt động chập chờn.
Với board nhỏ như ESP32, cảm biến, màn hình SPI, module âm thanh hoặc mạch sạc pin, không phải đường nào cũng cần đi thật to. Nhưng các đường nguồn chính nên được ưu tiên hơn các đường tín hiệu.
Một cách nhìn đơn giản:
- GPIO, I2C, UART thường mang dòng rất nhỏ.
- SPI cho màn hình có thể cần đi gọn và sạch hơn, nhưng vẫn không phải đường dòng lớn.
3V3cấp cho ESP32 cần rộng hơn trace tín hiệu, vì Wi-Fi/Bluetooth có thể kéo dòng đỉnh.5Vtừ USB-C vàVBATtừ pin nên rộng hơn nữa nếu còn không gian.- Đường loa, motor, LED công suất hoặc đường sạc pin không nên đi bằng trace mảnh.
Nếu board còn nhiều diện tích, đi nguồn rộng hơn thường là lựa chọn dễ sống. Nó không làm thiết kế trở nên cao siêu hơn, chỉ làm đường cấp dòng bớt căng thẳng hơn.

Cùng một board có thể có cả vùng đồng rộng cho đường nguồn hoặc tản nhiệt và các trace mảnh cho tín hiệu thông thường.
Signal và power khác nhau thế nào?
Đường tín hiệu chủ yếu truyền mức logic. Dòng thường rất nhỏ, nên mục tiêu chính là đi dây gọn, tránh nhiễu, tránh vòng lặp không cần thiết và giữ khoảng cách hợp lý với các tín hiệu nhạy cảm.
Đường nguồn thì khác. Nó phải cấp năng lượng cho cả khối mạch. Nếu đường nguồn quá nhỏ hoặc đi vòng quá xa, điện áp tại tải có thể tụt khi ESP32 bật Wi-Fi, màn hình tăng sáng, amplifier phát âm thanh hoặc mạch đang sạc pin.
Khi layout, mình thường ưu tiên:
- Đường nguồn chính đi ngắn và rộng.
- GND dùng plane nếu có thể, thay vì kéo từng trace nhỏ.
- Tụ decoupling đặt sát chân nguồn của IC, với đường về GND ngắn.
- Tránh để nguồn chính đi một vòng lớn quanh board rồi mới tới tải.
- Tránh cho đường nguồn nhiễu chạy sát mic, audio analog, antenna hoặc tín hiệu đo nhỏ.
Đây cũng là lý do bài checklist review PCB trước khi đặt sản xuất nên có mục riêng cho nguồn và ground return, không chỉ kiểm tra footprint.
Gợi ý trace width cho board ESP32 nhỏ
Không có một bảng số duy nhất đúng cho mọi PCB. Độ rộng trace còn phụ thuộc vào dòng tải, chiều dài đường, lớp ngoài/lớp trong, độ dày đồng, nhiệt độ cho phép và khả năng của nhà sản xuất.
Nhưng với các board ESP32 nhỏ, dòng không quá lớn, đồng phổ thông 1 oz, có thể bắt đầu từ các con số thực dụng sau:
| Nhóm đường | Gợi ý ban đầu |
|---|---|
| Signal thông thường | 0.15-0.20 mm |
| I2C, UART, GPIO | 0.15-0.25 mm |
| SPI cho màn hình nhỏ | 0.20-0.30 mm |
| Đường 3V3 chính | 0.40-0.80 mm |
| Đường 5V hoặc VBAT | 0.60-1.00 mm nếu còn không gian |
| Loa, motor, LED công suất, sạc pin | Tính theo dòng thực tế, thường cần rộng hơn nữa |
| GND | ưu tiên copper plane và nhiều via stitching |
Bảng này không thay thế calculator dòng điện hay datasheet. Nó chỉ là điểm khởi đầu để tránh lỗi rất phổ biến: mọi net đều dùng chung một trace width nhỏ.
Khi nào cần trace to hơn?
Hãy tăng độ rộng trace khi đường đó mang dòng lớn, đi xa, hoặc ảnh hưởng trực tiếp đến độ ổn định của mạch.
Các trường hợp hay gặp:
- Đường từ USB-C vào mạch nguồn.
- Đường từ pin Li-Po tới mạch bảo vệ, sạc hoặc regulator.
- Đường từ mạch sạc về pin.
- Đường
3V3cấp cho ESP32, màn hình, cảm biến và amplifier. - Đường cấp cho loa, motor, LED công suất hoặc tải đóng cắt.
- Đường GND chính giữa các khối nguồn và tải.
- Đường có dòng xung cao, dù dòng trung bình nhìn có vẻ không lớn.
Một lỗi khá phổ biến là chỉ nhìn dòng trung bình. ESP32 có thể không ăn quá nhiều dòng trung bình, nhưng dòng đỉnh khi phát Wi-Fi có thể làm đường 3.3V yếu bị sụt áp trong khoảnh khắc ngắn. Multimeter đôi khi không thấy, nhưng board vẫn reset.
Via cũng có thể là nút thắt
Via không phải là đường dẫn vô hạn. Nó cũng có điện trở, cảm kháng và giới hạn dòng. Nếu một đường nguồn rộng đi tới via rất nhỏ, rồi chỉ dùng một via duy nhất để chuyển lớp, via đó có thể trở thành điểm yếu của cả đường nguồn.
Với tín hiệu thông thường, một via nhỏ thường không phải là vấn đề lớn. Với VBAT, 5V, 3V3 chính hoặc GND return, nên cẩn thận hơn:
- Dùng via lớn hơn cho đường nguồn nếu fab cho phép.
- Dùng nhiều via song song khi chuyển lớp cho đường dòng lớn.
- Đặt via gần vùng cần nối, tránh bắt dòng đi vòng qua một cổ chai nhỏ.
- Với GND plane, dùng via stitching để giúp đường hồi tiếp ngắn và liền mạch hơn.
Nếu bạn đã đi một đường 5V rất rộng nhưng sau đó ép toàn bộ dòng qua một via nhỏ, phần trace rộng phía trước không còn giúp được nhiều như bạn nghĩ.

Khi đường nguồn hoặc GND phải đổi lớp, nhiều via song song thường tốt hơn ép toàn bộ dòng qua một via nhỏ.
Thiết lập net class trong EasyEDA Pro hoặc KiCad
Dù dùng EasyEDA Pro, KiCad hay công cụ PCB khác, nên tạo sẵn vài net class trước khi layout. Tên không cần giống hệt nhau, miễn là bạn hiểu vai trò của từng nhóm.
Một cấu hình đơn giản:
| Net class | Dùng cho | Gợi ý trace width |
|---|---|---|
Signal | GPIO, I2C, UART | 0.15-0.20 mm |
Display_SPI | SPI màn hình | 0.20-0.30 mm |
Power_3V3 | 3.3V chính | 0.40-0.80 mm |
Power_5V | USB 5V, VBUS | 0.60-1.00 mm |
Battery | VBAT, BAT+ | 0.60-1.00 mm hoặc hơn |
USB | D+, D- | theo rule USB, không chỉ theo độ rộng dòng |
High_Current | motor, LED, loa, sạc | tính theo dòng thực tế |
Với USB, điểm quan trọng không chỉ là trace to hay nhỏ. Cặp D+/D- cần được route như differential pair: đi gần nhau, khoảng cách đều, chiều dài hợp lý và tránh vùng nhiễu. Vì vậy, mình thường tách USB thành net class riêng, thay vì để chung với signal thường.
Những lỗi hay gặp khi đi trace nguồn
Một số lỗi rất dễ gặp khi mới layout PCB:
- Dùng trace quá nhỏ cho đường
3V3chính. - Đường nguồn đi vòng xa vì ưu tiên đường tín hiệu trước.
- Tụ lọc nguồn được đặt đúng trên schematic nhưng quá xa IC trên layout.
- Chỉ dùng một via nhỏ cho đường cấp nguồn quan trọng.
- GND bị chia cắt bởi khe, keepout hoặc routing, làm đường hồi tiếp phải đi vòng.
- Đường nguồn nhiễu chạy sát mic, audio analog, antenna hoặc đường ADC.
- Quên kiểm tra lại net class trước khi xuất Gerber.
Những lỗi này không phải lúc nào cũng làm board chết ngay. Khó chịu hơn, chúng thường tạo lỗi chập chờn: reset ngẫu nhiên, màn hình nháy, audio nhiễu, cảm biến đọc sai hoặc USB không ổn định.
Checklist nhanh trước khi chốt PCB
Trước khi xuất Gerber, mình thường tự hỏi:
- Các net nguồn chính đã được gán đúng net class chưa?
VBAT,5V,3V3có bị đi quá mảnh không?- Đường cấp dòng lớn có đi qua một via quá nhỏ không?
- Nếu chuyển lớp cho nguồn, đã dùng đủ via song song chưa?
- GND đã có plane hợp lý chưa, hay đang bị cắt thành nhiều đảo nhỏ?
- Tụ decoupling có đặt sát chân nguồn của IC không?
- Đường nguồn chính có đi vòng quá xa không?
- DRC đã pass với đúng rule của nhà sản xuất PCB chưa?
Với board nhỏ, làm tốt những điểm này đã giúp layout ổn hơn rất nhiều. Không cần biến mọi đường thành highway ngay từ đầu. Điều quan trọng là biết đường nào cần ưu tiên: nguồn, pin, tải dòng lớn, ground return và các cặp tín hiệu có yêu cầu riêng như USB.
Kết luận
Net class không chỉ là một mục cấu hình trong phần mềm PCB. Nó là cách bạn nói với công cụ rằng: đường này chỉ là tín hiệu nhỏ, đường kia đang cấp dòng cho cả board, đường nọ cần đi theo rule riêng.
Khi mới bắt đầu, hãy chia net class đơn giản, chọn trace width có khoảng an toàn và ưu tiên đường nguồn trước khi board quá chật. Một trace nguồn rộng hơn, một GND plane liền mạch hơn, vài via song song đúng chỗ - những thứ nhỏ này thường quyết định prototype có chạy ổn hay phải debug rất mệt sau khi nhận PCB.
Tài liệu tham khảo
Các nguồn dưới đây là tài liệu nền để kiểm tra lại thuật ngữ, thông số và khuyến nghị kỹ thuật trước khi áp dụng vào prototype thật.
Chia sẻ
Tiếp tục khám phá
Đọc tiếp
Bài viết liên quan
Ground plane trong PCB: GND không chỉ là một đường nối
Giải thích ground plane trong PCB, đường hồi dòng, lỗi layout GND, via stitching, đường tụ decoupling và kiểm tra copper pour.
Chọn tụ điện cho mạch điện tử: nhìn đơn giản nhưng rất dễ sai
Cách chọn tụ điện cho người mới: điện dung, điện áp định mức, tụ decoupling, ceramic, electrolytic, DC bias và mạch ESP32.
Checklist review PCB trước khi đặt sản xuất: những thứ hay bị bỏ sót
Checklist review PCB trước khi đặt fab: schematic, ERC, footprint, clearance, nguồn, antenna, USB differential pair, silkscreen, Gerber và BOM.