Saturday, September 23, 2017

KiCad ตอนที่ 1: แนะนำโปรแกรมออกแบบแผ่นวงจร PCB






KiCad  เป็นโปรแกรมช่วยในการออกแบบแผ่นวงจรพิมพ์ (PCB) ประเภท open source สามารถใช้งานได้ฟรี โดยไม่มีข้อจำกัดใดๆ มีความสามารถทำงานได้หลายอย่าง เริ่มตั้งแต่การ
  • เขียนผังวงจร (Schematics) 
  • ทดสอบการทำงานของวงจร (Simulation) 
  • ออกแบบแผ่นวงจรพิมพ์ (PCB)
  • สร้าง Bill of material, Art work, Gerber file ,แสดงตัวอย่างแผงวงจรในลักษณะ 3D View, สร้าง drilling files และอีื่นที่จำเป็นในการทำแผ่นวงจรพิมพ์
ข้อดี 
  • ใช้งานได้ฟรี โดยไม่มีข้อจำกัดใดๆ  สามารถออกแบบลายวงจรได้ถึง 32 layers และไม่มีลิมิตในเรื่องขนาดของแผ่นวงจร (ฺBoard)
  • ใช้งานได้บน OS หลายชนิด เช่น Linux, Windows, FreeBSD, Apple OS X
  • สามารถสร้าง ลายวงจรที่มีความละเอียดสูงมาก เนื่องจาก เก็บค่าความละเอียดของระยะทาง ในหน่วย นาโนเมตร
  • คู่มือการใช้งาน มีให้ค่อนข้างครบถ้วน และสามารถหาได้ง่ายบนอินเตอร์เน็ต
  • หากไม่เคยใช้โปรแกรมออกแบบ PCB อื่นๆ มาก่อน การใช้ KiCad จัดว่าง่าย
  • มีเครื่องมือในการทำงานครบถ้วน เช่น Electric rule check, export netlist  ไปใช้กับโปรแกรมอื่น, Bill of material, Gerber file ,etc.
  • ในอดีต footprint ของอุปกรณ์มีน้อย แต่ปัจจุบันมีให้เพียงพอต่อการทำงาน และยังสามารถสร้างเพิ่มได้เองโดยง่าย และมีขนาดที่ถูกต้องมาก
  • ด้วยการสนับสนุนจาก CERN (เริ่มสนับสนุนปี 2513) คาดว่าจะทำให้ KiCad มีความสามารถสูงขึ้นอย่างรวดเร็ว โดย CERN ต้องการให้เป็นมาตราฐานในการออกแบบ Open hardware  ขณะนี้ Version 5 กำลังอยู่ระหว่างการพัฒนา โดยจะใช้ Framework ใหม่และ UI ที่ดีขึ้น 
ข้อเสีย
  • ในการใช้งานต้องเชื่อมต่ออินเตอร์เน็ต เพื่อ update ฐานข้อมูล เช่น footprint ของอุปกรณ์ แต่ก็สามารถทำงานแบบออฟไลน์ได้
  • Symbol library ใน Eeschema ยังไม่ update โดยอัตโนมัติแม้จะ online ทำให้หากใช้ KiCad เวอร์ชั่นเก่าๆ (ปัจจุบัน เวอร์ชั่น 4.07)  จะไม่ได้รับการเพิ่มเติม symbol library ใหม่ๆ ส่วน Symbol เก่าที่มีความผิดผลาด ก็จะไม่ได้รับการแก้ไข
  • การ Simulation ใช้งานยาก และผู้ใช้ต้องมีความเข้าใจคำสั่ง PSPICE ในระดับปานกลางถึงขั้นสูง ไม่เหมาะกับมือใหม่  แต่จะมีการปรับให้ใช้งานได้ง่ายขึ้นและสมบูรณ์มากขึ้นใน KiCad 5
  • เพื่อให้ทำงานได้เร็ว ต้องจดจำ หรือกำหนด Hot key ในการทำงานพอสมควร
  • การเปลี่ยนแปลงอุปกรณ์ในโปรแกรมย่อย จะไม่ทำให้เกิดการเปลี่ยนแปลงในโปรแกรมย่อยอื่นๆ เช่น เปลี่ยน footprint ของอุปกรณ์ในโปรแกรมย่อยส่วนเขียนผังวงจร (Shematic) จะไม่ทำให้ footprint ในส่วนสร้างแผ่น PCB เปลี่ยนแปลงโดยอัตโนมัติ ต้องทำการ Update ในโปรแกรมส่วนอื่นด้วย
  • อาจต้องมีการสร้างหรือดัดแปลง footprint ที่ให้มาพอสมควร หากคิดจะทำแผ่น PCB ที่มีลายวงจรขนาดเล็กด้วยตัวเองหรือทำใช้ในบ้าน เช่น footprint ประเภท SMD (surface mount device) ที่ให้มานั้น ต้องมีเครื่องมือในการบัดกรีแบบมืออาชีพ ไม่ค่อยจะเหมาะกับการบัดกรีโดยคน หรือการใช้เครื่องมือที่ไม่ใช่มืออาชีพ
ตัวอย่างการทำงาน
               

   

 
biz.