การออกแบบวงจรสำหรับบอร์ดไมโครคอนโทรลเลอร์
วิกินี้อธิบายกระบวนการออกแบบลายวงจรพิมพ์สำหรับสร้างแผ่นวงจรพิมพ์ให้กับวงจรไมโครคอนโทรลเลอร์ เครื่องมือหลักที่จะนำมาใช้ในกระบวนการนี้ได้แก่โปรแกรม EAGLE ของบริษัท CadSoft Computer Inc.
เนื้อหา
- 1 การตั้งค่าเบื้องต้น
- 2 สร้างโปรเจ็คใหม่
- 3 วาดแผนผังวงจรด้วย Schematic Editor
- 3.1 ส่วนประกอบของหน้าต่าง
- 3.2 แถบคำสั่ง
- 3.3 การขอความช่วยเหลือ
- 3.4 การวางกรอบให้พื้นที่งาน
- 3.5 การเพิ่มอุปกรณ์ลงในวงจร
- 3.6 การเปลี่ยนคุณสมบัติและการลบอุปกรณ์
- 3.7 การตั้งค่าและชื่อให้อุปกรณ์
- 3.8 การสร้างการเชื่อมต่อ (เน็ต)
- 3.9 การกำหนดไฟเลี้ยงให้วงจร
- 3.10 การติดตั้งไลบรารีอุปกรณ์เพิ่มเติม
- 3.11 การใช้บัสเพื่อรวมสัญญาณ
- 3.12 การตรวจสอบความถูกต้อง
- 4 การออกแบบบอร์ดโดยใช้ Board Editor
- 5 สร้างไฟล์คำสั่งสำหรับควบคุมเครื่องกัดลายวงจร
การตั้งค่าเบื้องต้น
- คีย์ด่วน: การใช้การโปรแกรม EAGLE บนสภาพแวดล้อมของ GNOME อาจมีปัญหาเรื่องปุ่มคีย์ด่วนที่เป็นปุ่มเดียวกัน อาทิเช่น EAGLE ใช้ปุ่ม Alt-F2 สำหรับปรับขนาดภาพให้เต็มหน้าจอ แต่ GNOME จะดักปุ่ม Alt-F2 ไว้เนื่องจากเป็นคีย์ด่วนสำหรับเปิดไดอะล็อกซ์ Run หรือการกดปุ่ม Alt ค้างไว้พร้อมกับการลากเม้าส์จะเป็นการเปลี่ยนไปใช้ช่องกริดใน EAGLE ที่ละเอียดขึ้น แต่สำหรับ GNOME จะเป็นการเคลื่อนย้ายหน้าต่าง เป็นต้น ผู้ใช้จึงควรปรับแต่งคีย์เหล่านี้ให้ไม่ซ้ำกัน ซึ่งอาจปรับแต่งใน EAGLE เองหรือ GNOME ก็ได้
- ไดเรคตอรี: ในการเรียกใช้งานครั้งแรก EAGLE ได้ถูกตั้งค่าไดเรคตอรีต่าง ๆ ไว้สำหรับค้นหาข้อมูลเกี่ยวกับโครงงาน ไลบรารีของอุปกรณ์ สคริปต์การทำงานของผู้ใช้ ฯลฯ เนื่องจากงานออกแบบแผ่นวงจรพิมพ์ของเราอาศัยไลบรารีของอุปกรณ์นอกเหนือจากที่ให้มากับ EAGLE เราจึงต้องตั้งค่าไดเรคตอรีนี้ใหม่ ซึ่งทำได้โดยการเปิดไดอะล็อกซ์ Directories จากเมนู Options -> Directories ของหน้าต่าง Control Panel และตั้งค่าของ Libraries เป็น
$EAGLEDIR/lbr:$HOME/eagle/lbr
สร้างโปรเจ็คใหม่
- สร้างไดเรคตอรีชื่อ practicum สำหรับเก็บโปรเจ็ค โดยมีขั้นตอนดังนี้
- จากหน้าต่าง Control Panel ขยายบรรทัดที่ระบุว่า Projects จะพบไดเรคตอรี eagle อยู่ภายใน
- คลิ้กเมาส์ขวาที่ eagle และเลือก New Project เปลี่ยนชื่อโปรเจ็คที่สร้างขึ้นเป็น practicum
- สร้างวงจรชื่อ main โดยมีขั้นตอนดังนี้
- คลิ้กขวาที่ practicum และเลือก New Schematic จะปรากฏหน้าจอสำหรับการวาดแผนผังวงจรดังรูป
- เลือกเมนู File -> Save
วาดแผนผังวงจรด้วย Schematic Editor
เลือกหน้าต่าง Schematic (หรือดับเบิ้ลคลิ้กที่ไฟล์ main.sch ใน EAGLE Control Panel) เพื่อเริ่มต้นการแก้ไขแผนผังวงจร
หมายเหตุ: เพื่อให้ EAGLE สามารถติดตามการแก้ไขวงจรของทั้งบนแผนผังวงจรและบนบอร์ดให้สอดคล้องกัน ไฟล์แผนผังวงจร (.sch) และไฟล์บอร์ด (.brd) ต้องถูกเปิดไว้พร้อมกันเสมอ หากมีการแก้ไขไฟล์ใดไฟล์หนึ่งโดยไม่ได้เปิดอีกไฟล์ค้างไว้จะทำให้ EAGLE สูญเสียความสามารถในการรักษาความสอดคล้องกันของไฟล์ทั้งคู่ทันที
ส่วนประกอบของหน้าต่าง
โปรแกรมแก้ไขแผนผังวงจรของ EAGLE มีลักษณะดังรูป
โปรแกรม EAGLE อนุญาตให้ผู้ใช้เรียกคำสั่งการทำงานได้ทั้งในรูปแบบ graphical user interface (GUI) และ command-line interface (CLI) เช่นการใช้คำสั่ง Move เพื่อเคลื่อนย้ายอุปกรณ์บนพื้นที่การทำงานสามารถทำได้ทั้งการคลิ้กเมาส์ที่รูป หรือพิมพ์คำสั่ง move ในกล่องรับคำสั่งแล้วกด Enter
แถบคำสั่ง
ด้านซ้ายมือของหน้าจอแสดงรายการของเครื่องมือที่มีให้ใน Schematic Editor
- คำสั่ง copy: เพิ่มอุปกรณ์ใหม่ลงไปในวงจรโดยคัดลอกมาจากอุปกรณ์ที่มีอยู่ในวงจรอยู่แล้ว
- คำสั่ง group: รวมอุปกรณ์และส่วนประกอบอื่น ๆ เข้าไว้เป็นกลุ่มชั่วคราว ซึ่งหลังจากนั้นเราสามารถใช้คำสั่งอื่น ๆ อาทิเช่น คำสั่ง move rotate delete กับส่วนประกอบทั้งหมดในกลุ่มพร้อม ๆ กันได้
- คำสั่ง change: อนุญาตให้เราปรับคุณสมบัติของส่วนประกอบในวงจร ซึ่งการเลือกคำสั่งนี้จะมีผลให้เราเลือกคุณสมบัติและค่าต่าง ๆ ที่ต้องการปรับเสียก่อน แล้วจึงค่อยนำเมาส์ไปคลิ้กเลือกอุปกรณ์ที่ต้องการปรับค่า
การขอความช่วยเหลือ
ดังเช่นโปรแกรมทั่วไป เราสามารถเปิดคู่มือการใช้งานจากเมนู Help นอกจากนั้นเรายังสามารถแสดงการใช้งานของคำสั่งใด ๆ โดยพิมพ์ help ชื่อคำสั่ง
ลงไปในกล่องรับคำสั่ง
การวางกรอบให้พื้นที่งาน
แม้เราจะสามารถเริ่มต้นวางอุปกรณ์ลงในพื้นที่ทำงานได้ทันที เราควรวาดเฟรมให้กับงานของเราก่อนเพื่อความเรียบร้อยและสะดวกในการอ้างอิงภายหลัง การวางเฟรมสามารถทำได้โดยการพิมพ์คำสั่งต่อไปนี้ (ตัวเล็กหรือตัวใหญ่ก็ได้) ลงในกล่องรับคำสั่ง
ADD DINA4_L
จะปรากฏเฟรมแบบแนวนอน (landscape) ขนาด A4 ที่เคลื่อนที่ตามเมาส์ ปรับตำแหน่งของเฟรมให้มุมล่างซ้ายวางอยู่ที่พิกัด (0,0) ซึ่งเป็นจุดที่มีสัญลักษณ์ + กำกับอยู่ จากนั้นกดปุ่ม ESC สองครั้งเพื่อสิ้นสุดการใช้คำสั่ง Add
ตามที่ได้กล่าวไปแล้วข้างต้น เราสามารถสั่งงาน EAGLE ให้เพิ่มเฟรมได้โดยคลิ้กเมาส์ที่ปุ่มเครื่องมือ Add จากนั้นจึงป้อนคำว่า DINA4_L ลงในกล่องค้นหาด้านล่างสุดของไดอะล็อกซ์ Add ที่ถูกเปิดขึ้นมา เมื่อกด Enter จะปรากฏรายการอุปกรณ์ที่มีชื่อตรงกับที่ป้อนซึ่งเราสามารถดูรูปและคำอธิบายคร่าว ๆ ได้ กด OK เพื่อเริ่มวางเฟรมลงบนพื้นที่ทำงาน และกด ESC สองครั้งเพื่อยุติการใช้งานคำสั่ง Add
การเพิ่มอุปกรณ์ลงในวงจร
เช่นเดียวกับการเพิ่มเฟรม เราสามารถเพิ่มอุปกรณ์อื่น ๆ ลงไปในแผนผังวงจรได้โดยใช้คำสั่ง Add ซึ่งรองรับการใช้งาน wildcard (*) ในการค้นหาชื่ออุปกรณ์ที่ต้องการได้ อย่างไรก็ตามชื่ออุปกรณ์ส่วนใหญ่จะอยู่ในรูปคำย่อหรือคำอื่น ๆ ที่เราอาจคาดไม่ถึง อีกทั้งอาจเป็นอุปกรณ์ที่มีตัวถังที่ไม่เหมาะสมกับงานของเรา รูปด้านล่างแสดงอุปกรณ์ตัวต้านทานที่มีตัวถังเป็นแบบขาโลหะเจาะทะลุแผ่นวงจร (thru-hole)
ส่วนรูปนี้แสดงอุปกรณ์ตัวต้านทานเช่นเดียวกัน แม้จะมีสัญลักษณ์ที่ใช้ในผังวงจรเหมือนกันทุกประการ แต่ตัวถังเป็นแบบวางบนผิวแผ่นวงจร (surface-mount) จะไม่มีขาโลหะและมีขนาดเล็กกว่ามาก
ดังนั้นการเลือกอุปกรณ์ในช่วงแรกจึงควรเลือกจากไดอะล็อกซ์ Add เพื่อให้เห็นถึงรูปร่างตัวถังและคำอธิบายของอุปกรณ์ เมื่อทราบถึงชื่ออุปกรณ์ที่แน่ชัดแล้วเราจึงใช้คำสั่ง Add ตามด้วยชื่ออุปกรณ์ได้ทันทีโดยไม่ต้องเปิดไดอะล็อกซ์
การเปลี่ยนคุณสมบัติและการลบอุปกรณ์
โปรแกรม EAGLE มีคำสั่งปรับคุณสมบัติ (เช่น move rotate change mirror) และคำสั่งลบ (delete) คำสั่งเหล่านี้สามารถเรียกจากแถบเครื่องมือด้านซ้าย พิมพ์คำสั่งผ่าน CLI หรือคลิ้กเมาส์ขวาที่ตัวอุปกรณ์แล้วเลือกจากป๊อปอัพเมนูก็ได้ แต่ปัญหาที่ผู้เริ่มต้นมักพบคือบ่อยครั้งที่โปรแกรมไม่ทำตามที่สั่งเมื่อเลือกเครื่องมือแล้วคลิ้กเมาส์ลงไปบนตัวอุปกรณ์ สาเหตุที่ทำให้เป็นเช่นนี้คือ EAGLE บังคับว่าการคลิ้กเลือกอุปกรณ์ต้องคลิ้กให้ถูกตำแหน่งที่เรียกว่า origin หรือ handle ของอุปกรณ์นั้น ๆ เท่านั้น ตำแหน่งนี้จะมีสัญลักษณ์เป็นรูป + อยู่บริเวณสัญลักษณ์ของอุปกรณ์ ดังแสดงในภาพประกอบ
การตั้งค่าและชื่อให้อุปกรณ์
อุปกรณ์ทุกตัวที่วางลงไปในวงจรควรระบุค่า (เช่น 330 Ohm, 22 pF) และชื่อ (เช่น R1, C2) เพื่อความสะดวกในการอ้างอิงและประกอบอุปกรณ์ลงบนแผ่นวงจรพิมพ์ในภายหลัง เราทำเช่นนี้ได้โดยใช้คำสั่ง name และ value ตามลำดับ ดังแสดง
การสร้างการเชื่อมต่อ (เน็ต)
ในโปรแกรม EAGLE รวมถึงโปรแกรมออกแบบผังวงจรอื่น ๆ ส่วนของวงจรที่มีการเชื่อมต่อกันทางไฟฟ้าจะถือว่าอยู่บนเน็ต (net) เดียวกัน การสร้างเน็ตเพื่อเชื่อมอุปกรณ์เข้าด้วยกันนั้นสามารถทำได้โดยใช้คำสั่ง net เพื่อเดินสายออกมาจากขาของอุปกรณ์หรือจากเน็ตที่ถูกวาดไว้แล้วก่อนหน้านี้ การทำให้ส่วนของวงจรมีการเชื่อมต่อกันหรือเป็นเน็ตเดียวกันนั้นทำได้สองวิธี ดังนี้
- โยงเน็ตเหล่านั้นเข้าด้วยกันโดยใช้คำสั่ง net หรือ
- ใช้คำสั่ง name ตั้งชื่อเน็ตเหล่านั้นให้เป็นชื่อเดียวกัน
นั่นหมายความว่าส่วนของวงจรที่เราไม่เห็นสายเน็ตโยงถึงกันอาจเชื่อมกันอยู่ก็ได้ หากเน็ตมีชื่อเดียวกัน
เน็ตสองเส้นที่พาดทับกันนั้นจะไม่ถือเป็นเน็ตเดียวกัน การทำให้เป็นเน็ตเดียวกันต้องใช้คำสั่ง junction เพื่อวางจุดเชื่อมต่อทับลงไปบนจุดตัดของเน็ตทั้งคู่ ดังแสดงในรูปด้านล่าง
การกำหนดไฟเลี้ยงให้วงจร
การระบุว่าเน็ตใดเชื่อมต่อกับส่วนที่เป็นไฟเลี้ยงของวงจรทำได้โดยการเชื่อมเน็ตที่ต้องการเข้ากับอุปกรณ์ VCC ซึ่งแทนไฟจากขั้วบวก และอุปกรณ์ GND ซึ่งแทนกราวนด์ (หรือไฟจากขั้วลบ) เน็ตที่เชื่อมต่อกับอุปกรณ์พิเศษเหล่านี้จะถูกกำหนดชื่อให้เป็น GND และ VCC โดยอัตโนมัติ ตามลำดับ เราจึงสามารถวาง GND และ VCC ไว้ได้ทั่ววงจรโดยไม่ต้องเชื่อมสายเข้าด้วยกัน การทำเช่นนี้จะทำให้ผังวงจรดูเป็นระเบียบ ไม่มีเส้นตัดกันไปมามากจนรกรุงรัง วงจรตัวอย่างด้านล่างทั้งคู่มีความหมายเดียวกัน
การติดตั้งไลบรารีอุปกรณ์เพิ่มเติม
โครงงานที่เราจะออกแบบลายวงจรนั้นอาศัยชุดอุปกรณ์ที่ไม่ได้ให้มากับโปรแกรม EAGLE ตั้งแต่แรกเริ่ม ในที่นี้ทางบริษัท CadSoft เองได้รวบรวมไฟล์ไลบรารีเสริมให้เราสามารถดาวน์โหลดมาใช้ในวงจรของเราได้ ไลบรารีที่เราต้องดาวน์โหลดเพิ่มเติมจากเว็บของ CadSoft เพื่อนำมาใช้ในโครงงานมีดังนี้
- atmega8.lbr สำหรับอุปกรณ์ไมโครคอนโทรลเลอร์ ATMega168
- switch-tact.lbr สำหรับอุปกรณ์สวิทช์รีเซ็ต
นอกจากนั้นเรายังต้องการข้อมูลของหัวเชื่อมต่อ USB ซึ่งดาวน์โหลดได้จากลิ้งค์ด้านล่าง
- ดาวน์โหลด USBTYPE-A.lbr พัฒนาโดยนายประธาน สมบูรณ์ นิสิต MCPE13
หลังจากดาวน์โหลดไฟล์เหล่านี้มาแล้วให้นำไปเก็บไว้ในไดเรคตอรี $HOME/eagle/lbr
หลังจากนั้นลองตรวจสอบในหน้าต่าง Control Panel ของ EAGLE จะพบว่าในส่วนของ Libraries จะมีไดเรคตอรีย่อย lbr
ปรากฏขึ้นอีกหนึ่งอัน ภายใต้ไดเรคตอรีย่อยจะมีรายการของไลบรารีที่เราได้ติดตั้งลงไป ไลบรารีเหล่านี้จะยังมีสถานะไม่ถูกใช้งาน เราสามารถบอก EAGLE ว่าจะใช้ไลบรารีเหล่านี้ได้โดยการคลิ้กเมาส์ที่บริเวณวงรีสีแดงตามภาพด้านล่างให้ปรากฏเป็นปุ่มสีเขียวขึ้น
บ่อยครั้งที่เราพบว่ามีอุปกรณ์ที่มีชื่อเดียวกันแต่อยู่ต่างไลบรารีกัน ในการใช้คำสั่ง add เราสามารถระบุทั้งชื่ออุปกรณ์และชื่อไลบรารีพร้อม ๆ กันได้โดยพิมพ์คำสั่ง add อุปกรณ์@ไลบรารี
ตัวอย่างเช่น
หากเราต้องการเพิ่มอุปกรณ์ชื่อ R-EU_0207/10 จากไลบรารีชื่อ resistor ก็สามารถพิมพ์คำสั่ง
add r-eu_0207/10@resistor
เรายังสามารถใช้ wildcard (*) กับรูปแบบข้างต้นได้เช่นกัน
การใช้บัสเพื่อรวมสัญญาณ
บัสเป็นการนำเน็ตหลาย ๆ เน็ตมารวมกันเป็นกลุ่มเพื่อทำให้วงจรดูเป็นระเบียบมากยิ่งขึ้น โดยบัสจะปรากฏเป็นเส้นหนาทึบในวงจร อย่างไรก็ตามการใช้งานบัสในผังวงจรนั้นมีไว้เพื่อความสะดวกในการสื่อความหมายเท่านั้น ไม่ได้มีผลต่อตัวบอร์ดใด ๆ ทั้งสิ้น
การสร้างบัสทำได้โดยใช้คำสั่ง Bus และคลิ้กไปบริเวณพื้นที่ว่างใกล้ ๆ กับกลุ่มเน็ตที่เราต้องการนำมารวมกัน (อย่าวาดบัสทับลงไปบนขาอุปกรณ์ นอกจากจะไม่มีอะไรเกิดขึ้นแล้วยังจะสร้างความสับสนขึ้นได้) บัสจะถูกวาดให้ยาวต่อเนื่องไปเรื่อย ๆ จนกระทั่งกดปุ่ม ESC
แม้บัสที่ถูกสร้างขึ้นจะถูกกำหนดชื่อให้อัตโนมัติ เป็นเรื่องสำคัญมากที่เราต้องกำหนดชื่อให้บัสเสียใหม่เพื่อระบุรายการของเน็ตที่เราต้องการรวมเอาไว้ในบัสนั้น ๆ ซึ่งทำได้โดยการตั้งชื่อบัสด้วยรายชื่อเน็ตที่ต้องการ คั่นด้วยเครื่องหมายคอมม่า (,) เช่น
VCC,GND,IN1,IN2,OUT1,OUT2
เราสามารถใช้สัญลักษณ์ [0..N] เพื่อระบุรายการของเน็ตที่ชื่อมีลักษณะเป็นเลขเรียงต่อกันได้ เช่น
PC[0..5],VCC,GND
หลังจากสร้างบัสแล้วเราควรแปะฉลากแสดงชื่อบัสไว้บนบริเวณบัสด้วย การแปะฉลากทำได้โดยใช้คำสั่ง Label และคลิ้กไปบนบัส จากนั้นจึงเลือกตำแหน่งที่ต้องการวางฉลาก ดังแสดง
เมื่อเราพยายามเชื่อมเน็ตเข้ากับบัส หรือลากเน็ตออกมาจากบัส EAGLE จะแสดงป๊อปอัพเมนูให้เลือกเน็ตที่เราต้องการเชื่อม เนื่องจากการมองบัสจากวงจรจะไม่เห็นเลยว่าภายในบัสมีเน็ตอะไรอยู่บ้าง และเน็ตที่นำมาเชื่อมถูกเชื่อมเข้ากับเน็ตใดในบัส เราจึงจำเป็นต้องแปะฉลากให้กับเน็ตที่เชื่อมอยู่กับบัสโดยใช้คำสั่ง Label เช่นเดียวกัน การวาดเน็ตให้เชื่อมกับบัสนั้นนิยมวาดให้เฉียงลงมา 45 องศาเพื่อให้ผังวงจรอ่านง่ายขึ้น
การตรวจสอบความถูกต้อง
สิ่งสุดท้ายที่ควรตรวจสอบก่อนเข้าสู่กระบวนการออกแบบบอร์ดคือการตรวจความถูกต้องทางไฟฟ้า (electrical rule check) หรือ ERC ซึ่งทำได้โดยใช้คำสั่ง ERC ตัวอย่างของความผิดพลาดที่ EAGLE ตรวจสอบให้ได้แก่
- การปล่อยขาอินพุทของอุปกรณ์ไว้โดยไม่เชื่อมต่อ
- การเชื่อมต่อไฟเลี้ยงที่ไม่เหมาะสมเข้ากับอุปกรณ์ หรือลืมเชื่อม
- ส่วนของวงจรหรือคุณสมบัติต่าง ๆ ที่ไม่สอดคล้องกันระหว่างไฟล์ผังวงจร (schematic) กับไฟล์บอร์ด (board)
แม้ ERC จะรายงานความผิดพลาดได้ในระดับหนึ่ง การที่เราไม่พบความผิดพลาดจาก ERC ไม่ได้หมายความว่าวงจรของเราไม่มีข้อผิดพลาดแต่อย่างใด จึงควรไล่ตรวจสอบวงจรอย่างละเอียดถี่ถ้วนก่อนเริ่มต้นออกแบบบอร์ดในขั้นตอนต่อไป
การออกแบบบอร์ดโดยใช้ Board Editor
หมายเหตุ: เครื่องจักรในกระบวนการผลิตแผ่นวงจรพิมพ์มักรองรับตัวอักษรแบบ Vector เพียงอย่างเดียว เพื่อความปลอดภัยจึงควรปรับตั้งค่าให้โปรแกรม EAGLE ใช้เพียงตัวอักษรแบบ Vector เท่านั้นโดยเปิดไดอะล็อกซ์ User Interface จากเมนู Options -> User Interface และเลือกช่อง Always vector font
ขั้นตอนนี้เป็นการนำเอาอุปกรณ์จากวงจรที่วาดไว้ในผังวงจรมาสร้างเป็นแผ่นวงจรพิมพ์ (printed circuit board - PCB) โดยการวางตำแหน่งอุปกรณ์ให้เหมาะสมบนบอร์ดและเดินลายทองแดงเพื่อเชื่อมอุปกรณ์ต่าง ๆ เข้าด้วยกัน โดยปกติ EAGLE จะเปิดหน้าต่าง Board Editor ค้างไว้โดยอัตโนมัติหลังจากที่เราดับเบิ้ลคลิ้กที่ไฟล์ .sch ในหน้าต่าง Control Panel อย่างไรก็ตามกรณีที่เผลอปิดหน้าต่าง Board Editor ไปก็สามารถเปิดกลับมาใหม่โดยใช้คำสั่ง Board ใน Schematic Editor
การกำหนดขนาดบอร์ด
กรอบที่เห็นในตอนแรกที่เปิดหน้าต่าง Board Editor ขึ้นมาจะเป็นขนาดของบอร์ดตั้งต้น ซึ่งถือเป็นขนาดที่ใหญ่ที่สุดสำหรับโปรแกรม EAGLE ที่เป็นเวอร์ชันแบบฟรีแวร์ (Light Edition) เพื่อความสะดวกในการจัดเตรียมเครื่องกัดลายวงจร ขอให้ทุกกลุ่มปรับบอร์ดให้มีขนาด 3x1.625 นิ้ว (แนวนอน x แนวตั้ง) โดยยึดให้มุมล่างซ้ายอยู่ที่พิกัด (0,0) ตามเดิม
การปรับขนาดบอร์ดทำได้โดยการใช้คำสั่ง Move และคลิ้กที่บริเวณมุมต่าง ๆ ของบอร์ด
การกำหนดกฏเกณฑ์การออกแบบให้สอดคล้องกับเครื่องกัดลาย
ใช้ไดอะล็อกซ์ Design Rules (เมนู Edit -> Design Rules) เพื่อปรับตั้งค่าดังนี้
- ในหน้า Clearance ปรับระยะห่างระหว่างลายทองแดงสองเส้นใด ๆ ให้ไม่ต่ำกว่า 8 mil (8/1000 นิ้ว)
- ในหน้า Restring กำหนดความกว้างของแพดให้เป็น 25% ของรูเจาะ
แอร์ไวร์และลายทองแดง
การเชื่อมโยงที่เกิดขึ้นจากเน็ตจะถูกแสดงผลเป็นเส้นบาง ๆ เรียกว่าแอร์ไวร์ (airwire) ซึ่งแสดงให้เห็นว่าจุดเหล่านี้ต้องเชื่อมต่อกันด้วยลายทองแดง หรือเทรซ (trace) การเดินลายทองแดงสามารถทำได้ทั้งแบบทำด้วยมือโดยใช้คำสั่ง Route หรือทำแบบอัตโนมัติโดยใช้คำสั่ง Auto ซึ่งจะอธิบายต่อไป
รูเจาะสำหรับทำขาตั้ง
แผ่นวงจรพิมพ์ที่บัดกรีและใช้งานอยู่ควรถูกหนุนด้วยขาตั้งเพื่อป้องกันการลัดวงจรที่อาจเกิดขึ้นจากการนำเอาแผ่นวงจรพิมพ์ไปวางบนพื้นผิวโลหะ ดังนั้นเราจึงต้องเตรียมรูเจาะไว้ที่มุมทั้งสี่ของบอร์ด ให้ใช้คำสั่ง Hole เพื่อเจาะรูขนาด 2.8 mm (0.110236 นิ้ว) ไว้ที่มุมทั้งสี่
การวางอุปกรณ์
ก่อนเริ่มต้นเดินลายทองแดง เราควรต้องจัดอุปกรณ์ต่าง ๆ ให้อยู่ในตำแหน่งที่เหมาะสมเสียก่อน การจัดวางอุปกรณ์ควรคำนึงถึงสิ่งต่อไปนี้
- อุปกรณ์ที่มีตำแหน่งเฉพาะที่ ในที่นี้คือหัวเชื่อมต่อ USB ที่ต้องวางให้อยู่บริเวณขอบด้านสั้นด้านใดด้านหนึ่งของบอร์ด โดยวางจุดยึดที่เป็นวงกลมขนาดใหญ่สองวงให้อยู่บริเวณขอบของบอร์ด แต่อย่าชิดขอบมากจนเกินไป สังเกตเส้นแนวตั้งที่ลากพาดสัญลักษณ์ของอุปกรณ์ เป็นส่วนที่แสดงให้เห็นถึงระดับที่ต่างกันของหัวเชื่อมต่อซึ่งต้องจัดให้วางอยู่ในแนวเดียวกันกับขอบของบอร์ด
- อุปกรณ์ที่ควรเข้าถึงได้สะดวก ได้แก่สวิตช์รีเซ็ต จัมเปอร์ และคอนเน็คเตอร์ 10 ขา ควรวางในตำแหน่งที่ไม่มีอุปกรณ์หนาแน่นนัก และควรวางตัวอยู่บริเวณรอบนอกของบอร์ดเพื่อให้เข้าถึงได้สะดวก
- decoupling capacitor เป็นตัวเก็บประจุที่วางคร่อมขาไฟเลี้ยง (VCC และ GND) ของไมโครคอนโทรลเลอร์ ตามที่เห็นจากแผนผังวงจร ตัวเก็บประจุนี้ ทำหน้าที่กรองไฟที่อาจเกิดการกระชากจากการเปลี่ยนระดับโลจิกอย่างฉับพลันของไมโครคอนโทรลเลอร์ เพื่อให้การกรองไฟมีประสิทธิภาพสูงสุด ตัว decoupling capacitor นี้ต้องอยู่ใกล้กับขาไฟเลี้ยงของไอซีให้มากที่สุด และลายทองแดงที่เดินจากตัวเก็บประจุนี้ไปยังขาไอซีควรจะทำให้สั้นที่สุดเท่าที่จะทำได้เช่นกัน
- crystal oscillator เป็นตัวกำเนิดสัญญาณนาฬิกาให้กับไมโครคอนโทรลเลอร์ ควรวางให้ใกล้กับขา XTAL1 และ XTAL2 ของไมโครคอนโทรลเลอร์
- ตัวเก็บประจุแบบน้ำยา เป็นตัวเก็บประจุขนาดใหญ่ที่วางดักหน้าไฟเลี้ยงที่มาจากพอร์ต USB ซึ่งทำหน้าที่กรองไฟให้เรียบสม่ำเสมอก่อนที่จะถูกนำไปเลี้ยงวงจรทั้งหมด ดังนั้นตัวเก็บประจุนี้จึงควรวางไว้ใกล้กับขาไฟเลี้ยงจากพอร์ต USB และลายทองแดงจากขา USB มายังตัวเก็บประจุก็ไม่ควรยาวมากเช่นกัน
- อุปกรณ์ที่เหลือสามารถวางอย่างไรก็ได้ แต่เพื่อความสะดวกในการหาเส้นทางเดินลายทองแดง อุปกรณ์เหล่านี้ควรอยู่ในตำแหน่งและทิศทางที่ทำให้แอร์ไวร์ตัดกันน้อยที่สุดเท่าที่จะทำได้ จงระวังว่า EAGLE จะไม่คำนวณแอร์ไวร์ให้ใหม่ทันทีที่ย้ายหรือหมุนอุปกรณ์ เราต้องหมั่นใช้คำสั่ง Ratsnest เพื่อให้ EAGLE คำนวณเส้นแอร์ไวร์ใหม่
การย้ายอุปกรณ์ทำได้โดยใช้คำสั่ง Move ในระหว่างที่ใช้คำสั่งนี้กับอุปกรณ์ใด ๆ เราสามารถคลิ้กเมาส์ปุ่มขวาเพื่อหมุนอุปกรณ์ไปมาได้
การเดินลายทองแดงด้วยมือ
ใช้คำสั่ง Route เพื่อเริ่มต้นเดินลายทองแดงด้วยมือ โดยมีข้อปฏิบัติดังนี้
- เมื่อเลือกคำสั่ง Route แล้วให้ตั้งความกว้างลายทองแดงให้อยู่ที่ 0.016 นิ้ว
- เดินลายให้กับเน็ตที่เกี่ยวข้องกับไฟเลี้ยงก่อน ซึ่งได้แก่ VCC และ GND โดยในวงจรที่ใช้กระแสสูงควรเพิ่มขนาดของลายทองแดงให้กว้างขึ้น สำหรับโครงงานนี้แล้วความกว้าง 0.016 นิ้วนั้นเพียงพอแล้ว
- เดินลายให้การเชื่อมต่อระหว่าง decoupling capacitor กับขารับไฟเลี้ยงของไมโครคอนโทรลเลอร์มีระยะสั้นที่สุดเท่าที่จะทำได้ ระยะจาก crystal oscillator ไปยังขา XTAL1 และ XTAL2 ก็ควรให้สั้นเช่นกัน
- การเดินลายทองแดงมักนิยมให้หักมุมไม่เกินทีละ 45 องศา แม้การหักมุมที่มากกว่านั้นมักไม่มีผลกระทบมากในงานที่ใช้ความถี่และกำลังไม่สูงนัก แต่ก็ควรยึดเป็นแนวปฏิบัติเพื่อความสวยงาม ในการใช้คำสั่ง Route ครั้งแรก EAGLE จะตั้งการเดินลายเป็นมุมฉาก เราสามารถเปลี่ยนรูปแบบการเดินลายได้โดยคลิ้กเลือกรูปแบบที่แถบเครื่องมือด้านบน หรือคลิ้กเมาส์ขวาเพื่อสลับแบบไปเรื่อย ๆ
- การคลิ้กเมาส์ลงไปที่จุดใด ๆ จะเป็นการเริ่มเดินลายทองแดงจากปลายของแอร์ไวร์ที่ใกล้ที่สุด หากต้องการเริ่มเดินลายทองแดงจากบริเวณขาอุปกรณ์หรือจุดกึ่งกลางของเส้นให้กด Ctrl ค้างไว้แล้วจึงคลิ้กเมาส์
- การลบลายทองแดงที่เดินไว้แล้วสามารถทำได้โดยใช้คำสั่ง Ripup (ไม่ใช่คำสั่ง Delete)
การเดินลายทองแดงอัตโนมัติ
หากเราจัดวางอุปกรณ์ในตำแหน่งที่ดีพอ เราสามารถใช้คุณสมบัติการหาเส้นทางอัตโนมัติของ EAGLE ได้ โดยมีขั้นตอนดังนี้
- กำหนดขนาดลายทองแดงโดยใช้เมนู Edit -> Net classes... หรือคำสั่ง Class จากนั้นปรับความกว้างของลายทองแดงสำหรับ default ให้เป็น 0.016 นิ้ว
- ใช้คำสั่ง Auto เพื่อเปิดไดอะล็อกซ์การหาเส้นทางอัตโนมัติ
- เนื่องจากแผ่นวงจรพิมพ์ที่เราจะสร้างขึ้นเป็นแบบหน้าเดียว ให้กำหนดการเดินลายทองแดงด้านบน (Top) เป็น N/A และการเดินลายทองแดงด้านล่าง (Bottom) เป็น *
- ปรับค่า Routing Grid ให้เหมาะสม ค่าที่ยิ่งละเอียดจะทำให้ EAGLE มีทางเลือกมากขึ้น แต่ก็จะใช้เวลามากขึ้นเช่นกัน หากค่าตั้งต้น 50 ที่ EAGLE กำหนดไว้ไม่ให้ผลที่น่าพอใจอาจทดลองปรับลดลงมาเป็น 25 หรือ 12.5
- พิมพ์คำสั่ง
ripup *
เพื่อลบลายทองแดงทั้งหมดทิ้ง หรือripup ชื่อเน็ต
เพื่อเลือกลบเฉพาะลายทองแดงของเน็ตที่ระบุ
สร้างไฟล์คำสั่งสำหรับควบคุมเครื่องกัดลายวงจร
อยู่ระหว่างการแก้ไข