Z anti-aliasing ลบขั้นบันไดบนผิวลาดตื้น ด้วยการพิมพ์ micro non-planar
ZAA ขยับความสูงหัวพิมพ์เล็กน้อยภายในชั้น ให้ผิวบนที่ลาด 5–25° เนียนขึ้นราว 3 เท่า (Ra ~80 → ~25 µm) เปิดได้ใน OrcaSlicer 2.4 ขึ้นไป ใช้กับงานไหนได้ ไม่ได้
- ZAA ไม่เปลี่ยน layer height ของทั้งชิ้น แต่ขยับ Z ของเส้นบนผิวบนสุดให้ตามรูปทรงจริง
- ได้ผลชัดกับผิวบนที่ลาด 5–25° เกินราว 25° ขั้นบันไดแคบกว่าความกว้างเส้นแล้ว ZAA ไม่ช่วย
- ผลวัดของ CNC Kitchen: ชั้น 0.2 mm + ZAA หยาบพอ ๆ กับชั้น 0.1 mm แบบปกติ จึงลดเวลาพิมพ์ได้
- ณ ตุลาคม 2026 อยู่ในตัวหลักของ OrcaSlicer ตั้งแต่ 2.4.0 ชื่อ Z contouring ซ่อนอยู่ในโหมด Expert
ผิวโค้งหรือผิวลาดตื้น ๆ บนงานพิมพ์ 3 มิติ มักเห็นเป็นขั้นบันไดชัด ยิ่งลาดน้อยขั้นยิ่งกว้าง Z anti-aliasing (ZAA) แก้ตรงนี้ด้วยการให้หัวพิมพ์ขยับขึ้นลงเล็กน้อยภายในชั้นเดียว เส้นบนผิวบนสุดจึงวิ่งตามรูปทรงจริงแทนที่จะแบนเป็นขั้น ผลวัดของ CNC Kitchen บนผิวลาด 5–25° ความหยาบลดจากราว 80 µm เหลือราว 25 µm
ณ ตุลาคม 2026 ฟีเจอร์นี้อยู่ใน OrcaSlicer ตัวหลักตั้งแต่ 2.4.0 (ตัวเสถียรล่าสุดคือ 2.4.2 และมี 2.5.0 alpha ออกเมื่อ 16 ต.ค.) ชื่อในโปรแกรมคือ Z contouring
ขั้นบันไดมาจากไหน
slicer ปกติตัดโมเดลเป็นแผ่นแบนซ้อนกัน แต่ละชั้นสูงเท่ากัน ผิวที่ลาดจึงกลายเป็นขั้น ความกว้างของขั้นแต่ละขั้นในแนวนอนคำนวณได้จาก
ความกว้างขั้น = layer height ÷ tan(มุมลาด)
ตัวอย่างที่ชั้น 0.2 mm
- ผิวลาด 10°: tan 10° ≈ 0.176 → 0.2 ÷ 0.176 ≈ 1.13 mm ต่อขั้น เห็นเป็นเส้นชัด
- ผิวลาด 25°: tan 25° ≈ 0.466 → 0.2 ÷ 0.466 ≈ 0.43 mm ต่อขั้น
- เส้นพิมพ์จากหัว 0.4 mm กว้างราว 0.42–0.45 mm
ที่ 25° ขั้นแคบเท่าความกว้างเส้นพอดี ตรงกับที่ CNC Kitchen พบว่าเส้นกราฟสองแบบมาบรรจบกันราว 25° เพราะไม่มีที่ให้เลื่อนเส้นแล้ว ผิวที่ชันกว่านี้ ZAA ไม่ช่วย ส่วนผิวลาดตื้นกว่านี้คือที่ที่ ZAA ได้ผลมากที่สุด
ZAA ทำงานยังไง
แนวคิดมาจากงานวิจัยปี 2017 ชื่อ “Anti-aliasing for fused filament deposition” แล้วนักพัฒนาในชุมชนทำเป็น post-processor และ fork ของ slicer ก่อนถูกรวมเข้า OrcaSlicer ผ่าน PR ในรุ่น 2.4.0
หลักการคือ
- เฉพาะ ผิวบนสุดที่หงายขึ้น เท่านั้นที่ถูกแก้ ส่วนอื่นของชิ้นงานพิมพ์แบบเดิม
- slicer เอาจุดของเส้นบนผิวนั้นไปเทียบกับ mesh ต้นฉบับ แล้วปรับค่า Z ให้ตามผิวจริงภายในกรอบเล็ก ๆ
- เปลี่ยนเฉพาะ Z ของเส้น X/Y เหมือนเดิม จึงเรียกว่า micro non-planar ไม่ต้องใช้หัวพิมพ์พิเศษ
ผลพลอยได้ที่ CNC Kitchen บอกไว้คือ ผิวบนที่วิ่งตามรูปทรงทำให้จุดที่ฉีดเกินและจุดที่เป็นโพรงลดลง ขนาดชิ้นงานจึงแม่นขึ้นด้วย
ผลวัดจริง
CNC Kitchen วัดค่าความหยาบ Ra ด้วยเครื่องวัดผิว พิมพ์ PLA ชั้น 0.2 mm
| ชิ้นทดสอบ | แบบปกติ | ZAA |
|---|---|---|
| ผิวลาดตื้น (ช่วง 5–25°) | ราว 80 µm | ราว 25 µm |
| ครึ่งบนของทรงกลม | 50 µm | 21 µm |
| ผิวลาดเกินราว 25° | ใกล้กัน | ใกล้กัน |
อีกข้อที่น่าสนใจคือเรื่องเวลา ชั้น 0.2 mm + ZAA หยาบพอ ๆ กับชั้น 0.1 mm แบบปกติ และชั้น 0.3 mm + ZAA ได้ผิวแทบเท่าชั้น 0.2 mm + ZAA
ลองคิดเป็นเวลา สมมติชิ้นงานสูง 30 mm
- ชั้น 0.1 mm แบบปกติ = 30 ÷ 0.1 = 300 ชั้น
- ชั้น 0.2 mm + ZAA = 30 ÷ 0.2 = 150 ชั้น ผิวบนพอ ๆ กัน
- ชั้นลดลงครึ่งหนึ่ง CNC Kitchen บอกว่าประหยัดเวลาราว 50% “เป็นไปได้จริง” กับบางชิ้น
ตัวเลขนี้ไม่ใช่ทุกงาน เครื่องรุ่นใหม่ที่ถูกจำกัดด้วยอัตราละลายพลาสติก (ดู ความเร็วกับคุณภาพ) จะได้เวลาคืนน้อยกว่าเครื่องรุ่นเก่าที่ถูกจำกัดด้วยความเร็วหัว
ZAA ช่วยผิวบนที่ลาดตื้น ไม่ได้ช่วยผนังตั้ง ถ้างานส่วนใหญ่เป็นผนัง ลด layer height หรือเลือกทิศวางชิ้นยังได้ผลกว่า
เทียบกับวิธีทำผิวเนียนแบบอื่น
| วิธี | แก้อะไร | ต้นทุน |
|---|---|---|
| ลด layer height ทั้งชิ้น | ทุกผิว | เวลาพิมพ์เพิ่มตามจำนวนชั้น |
| variable / adaptive layer height | ช่วงที่โค้ง | เพิ่มชั้นเฉพาะช่วง แต่ทั้งชั้นยังบาง |
| ironing | ผิวบนที่แบนราบ | เพิ่มเวลารีดผิว ไม่แก้ผิวลาด |
| ZAA | ผิวบนที่ลาด 5–25° | เปลี่ยนแค่เส้นบนผิว แทบไม่เพิ่มเวลา |
| ขัด รองพื้น | ทุกผิว | ใช้แรงคน ดู ขัดและทาสี |
วิธีพื้นฐานอื่น ๆ อยู่ในบท ทำผิวงานพิมพ์ให้เนียน
เปิดใช้ใน OrcaSlicer
ตั้งแต่ OrcaSlicer 2.4.0 ไปที่ Print Settings → Quality ต้องสลับเป็นโหมด Expert ก่อน (โหมดใหม่ระหว่าง Advanced กับ Developer) ไม่งั้นไม่เห็นค่าเหล่านี้
| ชื่อในเอกสาร | ตัวแปร | ทำอะไร |
|---|---|---|
| Z contouring | zaa_enabled | เปิด/ปิด ZAA |
| Minimum z height | zaa_min_z | ความสูงชั้นต่ำสุดที่ยอมให้เส้นถูกลดลง |
| Minimize wall height angle | zaa_minimize_perimeter_height | ลดความสูงผนังของผิวบนบนผิวที่ชันกว่ามุมนี้ ค่าตั้งต้น 35° ตั้ง 0 = ปิด |
| Don’t alternate fill direction | zaa_dont_alternate_fill_direction | ให้ทิศเส้นผิวบนเหมือนกันทุกชั้น ลายสม่ำเสมอกว่า |
ลำดับลองครั้งแรก
- เลือกชิ้นที่มีผิวบนโค้งตื้น เช่น ฝาโดม หรือหลังเต่า
- เปิด Z contouring ค่าอื่นปล่อยตามตั้งต้น
- slice แล้วดู preview ผิวบนควรเห็นเส้นโค้งตามผิว ไม่แบนเป็นขั้น
- พิมพ์คู่กัน ชิ้นหนึ่งปิด ชิ้นหนึ่งเปิด แล้วเทียบด้วยนิ้วและแสงเฉียง
ข้อจำกัดที่ต้องรู้
- ผิวคว่ำไม่รองรับ เอกสาร OrcaSlicer ระบุชัดว่าโค้งที่หันลงไม่ถูกแก้
- หัวพิมพ์ลากผิว หัวฉีดกว้างกว่าเส้นที่ฉีด ถ้าเติมผิวจากสูงลงต่ำ หัวจะลากผ่านเส้นที่เพิ่งพิมพ์ ผิวกลับหยาบ CNC Kitchen บอกว่าเติมจากต่ำขึ้นสูงจะดีกว่า แต่บนงานซับซ้อนเลี่ยงยาก
- ยังมีจุดบกพร่อง เช่น ช่องว่างระหว่างชั้นถ้า Z ไม่ถูกตั้งกลับ และ flow ที่เปลี่ยนแบบเป็นขั้น เพราะ G-code ไม่มีคำสั่งไล่ flow แบบนุ่ม ๆ
ข้อผิดพลาดที่เจอบ่อย
- หาไม่เจอในเมนู เพราะยังอยู่โหมด Simple หรือ Advanced ต้องเปิด Expert
- คาดหวังกับผนังหรือผิวชัน ผิวที่ลาดเกินราว 25° แทบไม่ต่าง
- เปิดแล้วไม่ดู preview ฟีเจอร์ยังใหม่ ดู G-code preview ทุกครั้ง โดยเฉพาะชั้นแรก ๆ หลังผิวบน
- ใช้ fork เก่า ถ้าเคยลง fork ทดลองของ ZAA ไว้ ตอนนี้ใช้ OrcaSlicer ตัวหลักแทนได้แล้ว ค่าเก่าในโปรไฟล์อาจไม่ตรงกัน
- ใช้ layer height หนาเกินไปเพราะหวังว่า ZAA จะช่วยหมด ZAA ช่วยผิวบน ผนังข้างยังหยาบตามชั้นหนา
บทถัดไปในชุดนี้: overhang 90° ไม่ใช้ support ด้วยเส้นทางแบบคลื่น
แหล่งข้อมูล
คำถามที่พบบ่อย
ต้องแก้เครื่องหรือเฟิร์มแวร์ไหม
ไม่ต้อง ZAA เป็นแค่ G-code ที่มีแกน Z ขยับไปพร้อม X/Y เครื่อง FDM ทั่วไปทำได้อยู่แล้ว แต่ควรดู G-code preview ก่อนพิมพ์ทุกครั้ง เพราะยังเป็นฟีเจอร์ใหม่
ใช้กับผิวด้านล่างหรือผนังได้ไหม
ไม่ได้ เอกสาร OrcaSlicer ระบุว่าทำเฉพาะผิวบนที่หงายขึ้น ส่วนโค้งคว่ำหรือผิวที่หันลงไม่รองรับ ผนังตั้งยังเป็นขั้นตาม layer height เหมือนเดิม
ต่างจาก ironing ยังไง
ironing รีดผิวบนที่แบนราบให้เรียบ แต่ไม่แก้ขั้นบันไดบนผิวลาด ZAA แก้ขั้นบันไดบนผิวลาดตื้น สองอย่างแก้คนละปัญหา
วงจรและโค้ดในบทความทดสอบกับบอร์ดตัวอย่าง บอร์ดต่างรุ่นอาจใช้ขาต่างกัน ตรวจ pinout ของบอร์ดที่ใช้ก่อนต่อไฟเสมอ