Professional Documents
Culture Documents
1-1
บทที่ 1:หุ่นยนต์อุตสาหกรรม
Introduction to COSIMIR
ปัจจุบันและในอนาคตหุ่นยนต์อุตสาหกรรมจะเข้ามามีบทบาทในอุตสาหกรรมมากขึ้น โดยจะ
ทางานแทนมนุ ษย์ในงานต่างๆ เหล่านี้ งานที่อันตราย เช่น งานยกเหล็ กเข้าเตาหลอม งานที่เกี่ยวข้องกับ
สารเคมี งานซ้าซากน่าเบื่อ เช่น งานยกสินค้าจากสายงานการผลิต งานประกอบ งานบรรจุผลิตภัณฑ์งานที่
ต้องการคุณภาพมาตรฐานเดียวกัน เช่น งานเชื่อม งานตัด งานที่ต้องใช้ทักษะความชานาญสูง เช่น งานเชื่อม
แนว เชื่อมเลเซอร์ งานที่ต้องใช้ความละเอียดประณีต เช่น งานประกอบชิ้นส่วนอิเล็กทรอนิกส์ งานตรวจสอบ
(Inspection) ฯลฯ
1-2
บทที่ 1:หุ่นยนต์อุตสาหกรรม
Introduction to COSIMIR
1.1 หุ่นยนต์คืออะไร
หุ่นยนต์ คือ เครื่องจักรที่ถูกควบคุมอัตโนมัติ สามารถเขียนโปรแกรมใหม่ได้ ใช้งานเอนกประสงค์
โปรแกรมการเคลื่อนที่จะต้องสามารถโปรแกรมให้เคลื่อนที่ได้อย่างน้อย 3 แกนหรือมากกว่า หุ่นยนต์อาจจะ
ยึดอยู่กับที่หรือย้ายตาแหน่ง (Mobile) เพื่อใช้ในงานอุตสาหกรรม
1.2 การแบ่งชนิดของหุ่นยนต์
โดยทั่ ว ไปการแบ่ งชนิ ดของหุ่ น ยนต์ จะแบ่ งตามลั ก ษณะรูป ทรงของพื้ น ที่ ท างาน (Envelope
Geometric) แต่ ก่ อ นจะอธิ บ ายชนิ ด ของหุ่ น ยนต์ ข ออธิ บ ายการท างานของจุ ด ต่ อ (Joint) ของหุ่ น ยนต์
อุตสาหกรรมซึ่งในขั้นพื้นฐานมี 2 ชนิดด้วยกัน ดังนี้จุดต่อ (Joint) ทั้งสองแบบเมื่อนามาต่อเข้าด้วยกันอย่าง
น้อย 3 แกนหลักจะได้พื้นที่ทางาน (Work envelope) ที่มีลักษณะแตกต่างกันไป ซึ่งสามารถนามาแบ่งชนิด
ของหุ่นยนต์ได้ดังต่อไปนี้
1. Cartesian (Gantry) Robot
แกนทั้ง 3 ของหุ่น ยนต์จะเคลื่อนที่เป็ นแบบเชิงเส้น (Prismatic) ถ้าโครงสร้างมีลักษณะคล้ าย Overhead
Crane จะเรี ย กว่า เป็ น หุ่ น ยนต์ ช นิ ด Gantry แต่ ถ้ า หุ่ น ยนต์ ไม่ มี ข าตั้ งหรือ ขาเป็ น แบบอื่ น เรีย กว่ า ชนิ ด
Cartesian
ข้อดี
1. เคลื่อนที่เป็นแนวเส้นตรงทั้ง 3 มิติ
2. การเคลื่อนที่สามารถทาความเข้าใจง่าย
1-3
บทที่ 1:หุ่นยนต์อุตสาหกรรม
Introduction to COSIMIR
3. มีส่วนประกอบง่ายๆ
4. โครงสร้างแข็งแรงตลอดการเคลื่อนที่
ข้อเสีย
1. ต้องการพื้นที่ติดตั้งมาก
2. บริเวณที่หุ่นยนต์เข้าไปทางานได้ จะเล็กกว่าขนาดของตัวหุ่นยนต์
3. ไม่สามารถเข้าถึงวัตถุจากทิศทางข้างใต้ได้
4. แกนแบบเชิงเส้นจะ Seal เพื่อป้องกันฝุ่นและของเหลวได้ยาก
การประยุกต์ใช้งาน
2. Cylindrical Robot
ข้อดี
1. มีส่วนประกอบไม่ซับซ้อน
2. การเคลื่อนที่สามารถเข้าใจได้ง่าย
3. สามารถเข้าถึงเครื่องจักรที่มีการเปิด – ปิด หรือเข้าไปในบริเวณที่เป็นช่องหรือโพรงได้ง่าย (Loading) เช่น
การโหลดชิ้นงานเข้าเครื่อง CNC
ข้อเสีย
1. มีพื้นที่ทางานจากัด
2. แกนที่เป็นเชิงเส้นมีความยุ่งยากในการ Seal เพื่อป้องกันฝุ่นและของเหลว
การประยุกต์ใช้งาน
ข้อดี
1. มีปริมาตรการทางานมากขึ้นเนื่องจากการหมุนของแกนที่ 2 (ไหล่)
2. สามารถที่จะก้มลงมาจับชิ้นงานบนพื้นได้สะดวก
1-5
บทที่ 1:หุ่นยนต์อุตสาหกรรม
Introduction to COSIMIR
ข้อเสีย
1. มีระบบพิกัด (Coordinate) และส่วนประกอบ ที่ซับซ้อน
2. การเคลื่อนที่และระบบควบคุมมีความซับซ้อนขึ้น
1-6
บทที่ 1:หุ่นยนต์อุตสาหกรรม
Introduction to COSIMIR
การประยุกต์ใช้งาน
4. SCARA Robot
หุ่นยนต์ SCARA (Selective Compliance Assembly Robot Arm) จะมีลักษณะแกนที่ 1 (เอว) และแกน
ที่ 3 (ข้อศอก) หมุน รอบแกนแนวตั้ง และแกนที่ 2 จะเป็นลักษณะการเคลื่ อนที่ขึ้นลง (Prismatic) ดังรูป
หุ่นยนต์ SCARA จะเคลื่อนที่ได้รวดเร็วในแนวระนาบ และมีความแม่นยาสูง
ข้อดี
1. สามารถเคลื่อนที่ในแนวระนาบ และขึ้นลงได้รวดเร็ว
2. มีความแม่นยาสูง
ข้อเสีย
1. มีพื้นที่ทางานจากัด
2. ไม่สามารถหมุน (rotation)ในลักษณะมุมต่างๆได้
3. สามารถยกน้าหนัก (Payload) ได้ไม่มากนัก
1-7
บทที่ 1:หุ่นยนต์อุตสาหกรรม
Introduction to COSIMIR
การประยุกต์ใช้งาน
เนื่องจากการเคลื่อนที่ในแนวระนาบและขึ้นลงได้รวดเร็วจึงเหมาะกับงานประกอบชิ้นส่วนทางอิเล็กทรอนิกส์
ซึ่งต้องการความรวดเร็ วและการเคลื่ อนที่ก็ไม่ต้องการการหมุนมากนัก แต่จะไม่เหมาะกับ งานประกอบ
ชิ้น ส่วนทางกล (Mechanical Part) ซึ่งส่วนใหญ่การประกอบจะอาศัยการหมุน (Rotation)ในลักษณะมุม
ต่างๆ นอกจากนี้ SCARA Robot ยังเหมาะกับงานตรวจสอบ (Inspection) งานบรรจุภัณฑ์ (Packaging)
ทุ ก แกนการเคลื่ อ นที่ จ ะเป็ น แบบหมุ น (Revolute) รู ป แบบการเคลื่ อ นที่ จ ะคล้ า ยกั บ แขนคน ซึ่ ง จะ
ประกอบด้วยช่วงเอว ท่อนแขนบน ท่อนแขนล่าง ข้อมือ การเคลื่อนที่ทาให้ได้พื้นที่การทางาน ดังรูป
ข้อดี
1. เนื่องจากทุกแกนจะเคลื่อนที่ในลักษณะ ของการหมุนทาให้มีความยืดหยุ่นสูงในการเข้าไปยังจุดต่างๆ
2. บริเวณข้อต่อ (Joint) สามารถ Seal เพื่อป้องกันฝุ่น ความชื้น หรือน้า ได้ง่าย
3. มีพื้นที่การทางานมาก
4. สามารถเข้าถึงชิ้นงานทั้งจากด้านบน ด้านล่าง
5. เหมาะกับการใช้มอเตอร์ไฟฟ้า เป็นชุดขับเคลื่อน
1-8
บทที่ 1:หุ่นยนต์อุตสาหกรรม
Introduction to COSIMIR
ข้อเสีย
1. มีระบบพิกัด (Coordinate) ที่ซับซ้อน
2. การเคลื่อนที่และระบบควบคุมทาความ เข้าใจได้ยากขึ้น
3. ควบคุมให้เคลื่อนที่ในแนวเส้นตรง (Linear) ได้ยาก
4.โครงสร้างไม่มั่นคงตลอดช่วงการเคลื่อนที่ เพราะบริเวณขอบ Work Envelope ปลายแขนจะ
5. มีการสั่น ทาให้ความแม่ยาลดลง
การประยุกต์ใช้งาน
2.0 บทนำ
ซอฟต์แวร์ COSIMIR เป็ นซอฟต์แวร์จำลองกำรทำงำนของระบบแบบสำมมิติที่ทำงำนบนพีซี สำหรับวินโดว์ 95,
98, NT หรือ 2000 ใช้สำหรับออกแบบ workcell เขียนโปรแกรมควบคุมหุ่นยนต์ และจำลองกำรทำงำนของ
workcell
กำรเคลื่อนไหวและหยิบจับชิ้ นงำนทุกขัน้ ตอนจะสำมำรถถูกจำลองเพื่อตรวจสอบและหลีกเลี่ยงกำรชนของ
หุ่นยนต์กบั วัตถุรอบข้ำงและเพื่อลดเวลำในแต่ละรอบกำรทำงำนให้น้อยที่สุด ซอฟต์แวร์ COSIMIR รองรับกำร
ออกแบบ workcell ด้วยไลบรำรี่ที่มีเครื่องจักร หุ่นยนต์ เครื่องมือ สำยพำนลำเลียง อุปกรณ์ป้อนชิ้ นงำนและ
อื่นๆ นอกจำกนี้ ผูใ้ ช้ยงั สำมำรถออกแบบชิ้ นงำนหรืออุปกรณ์อนื่ ๆ ในระบบ CAD แล้วนำเข้ำไปในซอฟต์แวร์
COSIMIR ได้
2.1 COSIMIR family
• COSIMIR Industrial
ควำมสำมำรถ:
1. สำมำรถออกแบบ หุน่ ยนต์ใน workcell เขียนโปรแกรมควบคุมและจำลองกำรทำงำนของ
หุ่นยนต์
2. สำมำรถสื่อสำรกับ คอนโทรลเลอร์ของหุน่ ยนต์ Mitsubishi ได้
ข้อจำกัด:
1. จำลองกำรทำงำนของหุ่นยนต์ของ MITSUBISHI เท่ำนั้น
2. จำลองกำรทำงำนของหุ่นยนต์ได้เพียงหนึ่ งตัวเท่ำนั้น
• COSIMIR Professional
ควำมสำมำรถ:
1. สำมำรถออกแบบ workcell ทัง้ หมด เขียนโปรแกรมควบคุมและจำลองกำรทำงำน ของ
workcell
2. จำลองกำรทำงำนของหุ่นยนต์มำกกว่ำหนึ่ งตัวใน workcell เดียวกัน
3. สำมำรถสื่อสำรกับ คอนโทรลเลอร์ของหุ่นยนต์ Mitsubishi Kuka และ ABB ได้
• COSIMIR Educational
เนื่ องจำกควำมซับซ้อนของระบบอัตโนมัติมำกขึ้ น ทำให้ COSIMIR Educational เข้ำมำมีบทบำททำให้
ผูเ้ รียนเขียนโปรแกรมเพื่อจำลองกำรเคลื่อนที่ของหุ่นยนต์ก่อนที่จะไปใช้กบั ของจริง
ควำมสำมำรถ:
1. สำมำรถออกแบบ หุน่ ยนต์ใน workcell แต่ไม่สำมำรถบันทึกได้ เขียนโปรแกรมควบคุมและ
จำลองกำรทำงำนได้
2. สำมำรถดำวน์โหลดมำใช้ได้โดยไม่มีค่ำใช้จำ่ ยที่ www.festo.com/didactic
แล้วเลือกที่ Service > Software > Software Demos > COSIMIR Demo
ข้อจำกัด:
1. ไม่สำมำรถสื่อสำรกับคอนโทรลเลอร์ของหุ่นยนต์ได้
2. จำลองกำรทำงำนของหุ่นยนต์ได้เพียงหนึ่ งตัว
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-2
Introduction to COSIMIR ภำษำที่เขียน
2.3.2 หน้ำต่ำงย่อย
Workcell window (หน้าต่างแสดง workcell)
Workcell จะถูกแสดงในรูปกรำฟฟิ กในหน้ำต่ำงนี้ ผูใ้ ช้สำมำรถเปิ ดหน้ำต่ำง
workcell เพิ่มเติมได้อีกโดยกำรเลือกที่คำสัง่ View > New
Joint Coordinates
หน้ำต่ำง Joint Coordinates แสดงตำแหน่ งของข้อต่อหุ่นยนต์แต่ละข้อต่อ
หน่ วยเป็ นองศำสำหรับข้อต่อที่หมุนได้ และเป็ นมิลลิเมตรสำหรับข้อต่อที่
เคลื่อนที่เป็ นเส้นตรง
สำมำรถเปิ ดหน้ำต่ำงนี้ โดยเลือกคำสัง่ Extras > Robot Position > Show Joint
Coordinates หรือ กด F7
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-5
Introduction to COSIMIR ภำษำที่เขียน
World Coordinates
หน้ำต่ำงนี้ แสดงตำแหน่ งและทิศทำงของ จุดศูนย์กลำงของกริปเปอร์ (Tool
Center Points) ใน world coordinates นอกจำกนี้ ยังมีกำรระบุตำแหน่ ง
ทิศทำง และ configuration ของหุ่นยนต์ในบรรทัดล่ำงสุดของหน้ำต่ำง
สำมำรถเปิ ดหน้ำต่ำงนี้ โดยเลือกคำสัง่ Extras > Robot Position > Show World
Coordinates หรือ กด Shift+F7
เมื่อ ดับเบิลคลิ๊ก ลงบนหน้ำต่ำงนี้ จะปรำกฏ dialog box “Set World
Coordinates” ผูใ้ ช้สำมำรถระบุตำแหน่ งในแกน X, Y และ Z และทิศทำงของข้อ
ต่อแล้วดูผลที่เกิดขึ้ นกับหุ่นยนต์ได้
Teach-In
หน้ำต่ำง Teach-In ในโหมด Joint coordinates จะแสดงแถบเลื่อนของข้อต่อ
และมีปุ่มสองปุ่ มในแต่ละข้อต่อเพื่อเคลื่อนที่ขอ้ ต่อแต่ละข้อซึ่งเมื่อกดปุ่ มเหล่ำนี้
หุ่นยนต์จะเคลื่อนที่ตำมที่เรำกำหนด ถ้ำปุ่ มถูกกดค้ำงเอำไว้ หุ่นยนต์จะเร่ง
ควำมเร็วจนถึงระดับควำมเร็วที่ปรับเอำไว้ (override) แล้วรักษำควำมเร็วที่
ระดับนั้นและหลังจำกนั้นค่อยๆ ลดควำมเร็วลงจนเหลือศูนย์หลังจำกที่ปล่อย
ปุ่ ม
ผูใ้ ช้สำมำรถเปลี่ยนโหมดจำก Joint coordinate เป็ น World coordinate หรือ
Tool coordinates
สำมำรถเปิ ดหน้ำต่ำงนี้ โดยเลือกคำสัง่ Extras > Teach-In หรือกด F8
Inputs/Outputs
หน้ำต่ำงนี้ แสดงสถำนะของกำรอินพุท/เอำท์พุทของคอนโทรลเลอร์
สถำนะปั จจุบนั ของอินพุท/เอำท์พุทถูกแสดงถัดจำกชื่อ สัญญำณ 0 ถูกแสดงด้วย
สีแดง สัญญำณ 1 ถูกแสดงด้วยสีเขียว ค่ำของอินพุทถูกแสดงในวงเล็บ [ ] เช่น
[1] หมำยถึงอินพุทถูกต่อกับเอำท์พุท ถ้ำสัญญำณอินพุทถูกเปลี่ยนสถำนะ ค่ำ
ของอินพุทจะถูกแสดงในวงเล็บ <>
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-6
Introduction to COSIMIR ภำษำที่เขียน
Controller Selection
แสดงสถำนะของคอนโทรลเลอร์ทุกตัวใน workcell ผูใ้ ช้สำมำรถเลือก
คอนโทรลเลอร์หลักและสังเกตกำรทำงำนของคอนโทรลเลอร์อื่น ตำแหน่ งของ
หุ่นยนต์ อินพุท เอำท์พุท และ Teach-In ที่ปรำกฏสำหรับคอนโทรลเลอร์หลัก
สำมำรถเปิ ดหน้ำต่ำงนี้ โดยเลือกคำสัง่ Execute > Controller Selection
Robot Program
หน้ำต่ำงนี้ จะแสดงโปรแกรมสำหรับหุ่นยนต์ซึ่งจะปรำกฏชื่อหุ่นยนต์บนหน้ำต่ำง
สำมำรถเปิ ดหน้ำต่ำงนี้ โดยเลือกคำสัง่ Menu > Open
Position List
หน้ำต่ำงนี้ จะแสดงรำยกำรตำแหน่ งต่ำงๆ ของหุ่นยนต์ หัวข้อบนหน้ำต่ำงแสดง
ชื่อหุ่นยนต์เจ้ำของตำแหน่ งต่ำงๆ ในที่นี้ คือ RV-E2
สำมำรถเปิ ดหน้ำต่ำงนี้ โดยเลือกคำสัง่ Menu > Open
User Input/Output
หน้ำต่ำงนี้ จะปรำกฏขึ้ นโดยอัตโนมัติถำ้ ในโปรแกรมมีคำสัง่ อ่ำนหรือส่งข้อมูล
ผ่ำน Serial interface เนื่ องจำกเป็ นกำรจำลอง ข้อมูลจะไม่ถูกส่งผ่ำนไปยัง
อุปกรณ์จริงผ่ำน serial interface แต่จะถูกส่งไปยังหน้ำต่ำงนี้ เมื่อข้อมูลถูกแสดง
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-7
Introduction to COSIMIR ภำษำที่เขียน
คำสัง่ นี้ ใช้ในกำรเคลื่ อนที่ มุมมองของวัตถุ (View and reference point) จะใช้ได้กบั หน้ำต่ำงที่
กำลังทำงำนอยู่ (active) ซึ่งมีมุมมองของวัตถุอยู่ เครื่องหมำยจะแสดงแกนที่มุมมองสำมำรถ
เคลื่อนที่ตำมแกนนั้นได้ ลูกศรที่เป็ นเส้นประหมำยถึง ไม่สำมำรถเคลื่อนที่ตำมแกนนั้นได้
วิธีกำรเรียกคำสั ่ง Move และวิธีใช้งำน
1. เรียกคำสัง่ Move ด้วยกำรเลือกที่ไอคอนบน tool bar หรือ View > Move หรือ คลิ๊กขวำที่
วินโดวส์ของworkcellแล้วเลือกคำสัง่ Move
2. เมื่อเลือกคำสัง่ Move แล้ว เลื่อนเมำส์มำที่วินโดวส์workcellจะปรำกฏสัญลักษณ์
หมำยควำมว่ำ คำสัง่ Move พร้อมใช้งำน
3. คลิ๊กซ้ำยเพื่อเคลื่อนที่แนวแกน X และ Z หรือคลิ๊กขวำเพื่อเคลื่อนที่แนวแกน X และ Y
• Rotate
• Zoom
3. คลิ๊กซ้ำยแล้วเลื่อนเมำส์ตำมลูกศรในสัญลักษณ์เพื่อขยำยมุมมองหรือคลิ๊กซ้ำยแล้วเลื่อน
เมำส์ในทิศทำงตรงกันข้ำมกับลูกศรในสัญลักษณ์เพื่อลดมุมมอง หรือถ้ำต้องกำรขยำย
เฉพำะส่วน ให้นำเมำส์คลิ๊กในบริเวณที่ตอ้ งกำร หลังจำกนั้นกด CTRL+Shift พร้อมกัน
แล้วคลิ๊กขวำพร้อมกับลำกเมำส์จะปรำกฏกรอบสีดำเพื่อเลือกบริเวณที่ตอ้ งกำรขยำย
หลังจำกนั้นปล่อยเมำส์ บริเวณที่เลือกไว้จะถูกขยำยขึ้ น
นอกจำกนี้ สำมำรถคลิ๊กขวำที่รปู แล้วเลือกมุมมองเป็ น Front view, Rear view, Top view,
Left side view, และ Right side view ดังรูป 2.3.3a
รูป 2.3.3a
หมำยเหตุ:
Full format: ใช้คำสั ่ง full format เพื่อดู workcell แบบเต็มหน้ำต่ำงจำกมุมมอง
ปั จจุบนั
Rendering: คำสัง่ rendering เปลีย่ นลักษณะภำยนอกของวัตถุทกุ ชิ ้นในหน้ ำต่ำงworkcell
โดยลักษณะภำยนอกมี 3 แบบ คือ
a) Wireframe:
b) Filled:
c) Flat-shaded:
รูป 2.3.3e: No floor รูป 2.3.3f: Grid only รูป 2.3.3g: Filled Grid
• Compile
ใช้คำสัง่ compile เพื่อให้ compiler แปลงโปรแกรมจำกภำษำระดับสูง (High-level
language) เช่น MRL และ Melfa Basic IV เป็ นภำษำที่ระดับกลำง (Intermediate-level
language)
ผู้ใช้ สำมำรถเรี ยกคำสัง่ Compile ได้ ที่บน Tool bar และ Execute > Compile
• Compile + Link
ใช้คำสัง่ นี้ เพื่อให้ compiler แปลงโปรแกรมจำกภำษำระดับสูงเป็ นภำษำระดับกลำง และ
linker จะแปลงโปรแกรมจำกภำษำระดับกลำงเป็ น IRDATA code
ผู้ใช้ สำมำรถเรี ยกคำสัง่ Compile + Link ได้ ที่บน Tool bar และ Execute > Compile + Link
• Start
ใช้คำสัง่ Start เพื่อเริ่มกำรอ่ำนโปรแกรมโดยหุ่นยนต์จะเคลื่อนที่ตำมคำสัง่ ในโปรแกรม โดย
จะอ่ำนโปรแกรม 1 รอบ
ผูใ้ ช้สำมำรถเรียกคำสัง่ Start ได้ที่บน Tool bar และ Execute > Start
• Start Cycle
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-10
Introduction to COSIMIR ภำษำที่เขียน
• Stop
ใช้คำสัง่ Stop เพื่อหยุดกำรอ่ำนโปรแกรม คำสัง่ นี้ จะใช้ได้ก็ต่อเมื่อมีกำรอ่ำนโปรแกรมอยู่ ผูใ้ ช้
สำมำรถเรียกคำสัง่ Stop ได้ที่บน Tool bar
• Next Step
ใช้คำสัง่ Next Step เพื่ออ่ำนคำสัง่ ถัดไปในโปรแกรม โดยยกเว้นคำสัง่ ต่อไปนี้ : Path
smoothing, ตั้งค่ำสัญญำณเอำท์พุท, อ่ำนค่ำสัญญำณอินพุท, กำรเรียกโปรแกรมย่อย
• โหมดหรือรูปแบบในกำรกำหนดตำแหน่ งในกำรเคลื่อนที่ให้หุ่นยนต์
รูปแบบในกำรกำหนดตำแหน่ งในกำรเคลื่อนที่มี 3 แบบ คือ แบบ XYZ Jog, แบบ Joint Jog และ
แบบ Tool Jog
• XYZ Jog
รูปแบบกำรกำหนดตำแหน่ งในกำรเคลื่อนที่แบบ XYZ Jog อิงตำมระบบพิกดั จุดแบบ Base
coordinate system ซึ่งมีจุดกำเนิ ดตั้งอยูท่ ี่ฐำนของหุ่นยนต์ (ดูรปู 2.2.1)
หน้ำต่ำงของรูปแบบกำรกำหนดตำแหน่ งในกำรเคลื่อนที่แบบ XYZ Jog จะปรำกฏดังรูป 2.3.2a
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-11
Introduction to COSIMIR ภำษำที่เขียน
• Tool Jog
รูปแบบกำรกำหนดตำแหน่ งในกำรเคลื่อนที่แบบ Tool Jog อิงตำมระบบพิกดั จุดแบบ Tool
coordinate system ซึ่งมีจุดกำเนิ ดตั้งอยูท่ ี่ศนู ย์กลำงของกริปเปอร์ของหุ่นยนต์ (ดูรปู 2.2.1
ประกอบ)
รูป 2.3.8a:
2.3.9 Help
นอกเหนื อจำกคำสัง่ ข้ำงต้นแล้วยังมีคำสัง่ อื่นอีกมำกมำยที่ยงั ไม่ได้กล่ำวถึงในหนังสือเล่มนี้ ดังนั้นถ้ำ
ผูท้ ี่สนใจคำสัง่ อื่นๆ สำมำรถเปิ ดดูได้จำก Help ซึ่งจะมีคำอธิบำย ในหน้ำต่ำง Help (ดังรูป 2.3.9a)
จะประกอบไปด้วยแท็บ 4 แท็บ คือ Contents, Index, Search และ Favorites
โดยที่แท็บ Content บรรจุเนื้ อหำโดยเรียงตำมหัวเรื่อง
แท็บ Index บรรจุเนื้ อหำโดยเรียงตำมลำดับตัวอักษร
แท็บ Search สำหรับค้นหำคำสัง่ ที่ตอ้ งกำร
แท็บ Favorites สำหรับเก็บเนื้ อหำที่ใช้บ่อยๆ
หมำยเหตุ: Help จะปรำกฏขึ้ นพร้อมกับโปรแกรมสำหรับกรณีของ Cosimir educational
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-15
Introduction to COSIMIR ภำษำที่เขียน
รูป 2.3.9a:
รูป 2.4.1a:
รูป 2.4.1d:
รูป 2.4.1e:
รูป 2.4.1h:
ขัน้ ตอนที่ 6: เมื่อได้ท้งั สำมตำแหน่ งที่ตอ้ งกำรให้บนั ทึก Position List ใน C:/My Documents
ชื่อ example 2_1.POS
หมำยเหตุ: นอกจำกจะบันทึกตำแหน่ งแล้ว ยังสำมำรถใส่คำอธิบำย (Comment) ลงไปใน
ตำแหน่ งต่ำงโดยเลือกที่ตำแหน่ งที่ตอ้ งกำรใส่คำอธิบำยแล้วคลิ๊กขวำ เลือก Properties ดังรูป
2.4.1i หลังจำกนั้นจะปรำกฏหน้ำต่ำง dialog box ดังรูป 2.4.1j เพื่อใส่คำอธิบำย เมื่อใส่
คำอธิบำยเสร็จเรียบร้อยแล้วจะหน้ำต่ำง Position Lists จะปรำกฏข้อควำมคำอธิบำยดังรูป
2.4.1k
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-19
Introduction to COSIMIR ภำษำที่เขียน
รูป 2.4.1i:
รูป 2.4.1j:
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-20
Introduction to COSIMIR ภำษำที่เขียน
รูป 2.4.1k:
หมวดกำรควบคุมตำแหน่งและกำรเคลื่อนที่
คำสัง่ ที่อยูใ่ นหมวดนี้ ที่ใช้บ่อยๆ ได้แก่
MO Move
MS Move Straight
OVR Override
SP Speed
TI Timer
หมำยเหตุ: คำสัง่ ทั้งหมดที่อยูใ่ นหมวดนี้ อยูใ่ น COSIMIR Help
COSIMIR Programming Movemaster Command Position and control command
คาสั่ง: MO (Move)
การทางาน: เคลื่อนปลำยสุดของกริปเปอร์ไปยังตำแหน่ งที่ตอ้ งกำรโดยเคลื่อนแบบคำนวณตำมแกน
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-22
Introduction to COSIMIR ภำษำที่เขียน
ตัวอย่าง 1: แสดงตัวอย่างการใช้คาสั่ง
10 SP 15 ‘ตั้งค่ำควำมเร็วที่ 15’
20 MO 1 ‘เคลื่อนที่ไปตำแหน่ งที่ 1 แบบ กำรเคลื่อนที่แบบคำนวณตำมแกน’
30 MS 5 ‘เคลื่อนที่ไปตำแหน่ งที่ 5 แบบ กำรเคลื่อนที่แบบเส้นตรง’
40 MS 6 ‘เคลื่อนที่ไปตำแหน่ งที่ 6 แบบ กำรเคลื่อนที่แบบเส้นตรง’
ตัวอย่าง:
10 SP 30 ‘กำหนดระดับควำมเร็วที่ 30 ซึ่งเทียบเท่ำกับอัตรำส่วนควำมเร็ว 100% ในคำสัง่
OVR โดยดูจำกตำรำงที่ 2.1’
20 OVR 80 ‘ตั้งค่ำอัตรำส่วนควำมเร็วเท่ำกับ 80%’
30 MO 2 ‘เคลื่อนที่ไปตำแหน่ งที่ 2 โดยเคลื่อนที่แบบคำนวณตำมแกน ’
40 ED ‘จบโปรแกรม’
คาสั่ง: SP (Speed)
การทางาน: กำหนดระดับควำมเร็ว (Operation speed), ควำมเร่ง/ ควำมหน่ วงและตั้งค่ำกำรเคลื่อนที่อย่ำง
ต่อเนื่ อง
รูปแบบ: SP <speed level> [,<H/L>[,<CNT setting>]]
คาศัพท์: <speed level>
กำหนระดับควำมเร็ว มีต้งั แต่ 0 ถึง 30
<H/L>
กำหนดระดับควำมเร่ง/ควำมหน่ วง
H: ควำมเร่ง/ ควำมหน่ วง สูง (มำกที่สุด คือ 0.2 วินำที)
L: ควำมเร่ง/ ควำมหน่ วง ตำ่ (มำกที่สุด คือ 0.4 วินำที)
<CNT setting>
กำหนดสภำวะกำรทำงำนของโหมดกำรเคลื่อนที่อย่ำงต่อเนื่ อง (continuous path mode)
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-25
Introduction to COSIMIR ภำษำที่เขียน
0: โหมดกำรเคลื่อนที่อย่ำงต่อเนื่ องหยุดทำงำน
1: โหมดกำรเคลื่อนที่อย่ำงต่อเนื่ องทำงำน
คาอธิบาย:
(1) กำหนดระดับควำมเร็วได้ 31 ค่ำ คือตั้งแต่ 0 ถึง 30 และกำหนดค่ำเวลำควำมเร่ง/ ควำมหน่ วง ได้
2 ระดับคือ สูงและตำ่
(2) ระดับควำมเร็วจะถูกกำหนดเป็ นอัตรำส่วน (%) กับควำมเร็วรอบที่มำกที่สุดของแต่ละข้อสำหรับ
กำรเคลื่อนที่แบบคำนวณตำมแกน และอัตรำส่วนกับควำมเร็วที่มำกที่สุดของปลำยสุดของแขน
(650 มม/ วินำที) สำหรับกำรเคลื่อนที่แบบเส้นตรง
(3) เวลำควำมเร่ง คือ เวลำที่มำกที่สุดสำหรับหุ่นยนต์ที่จะมีควำมเร็วที่มำกที่สุด เพรำะฉะนั้น ถ้ำ
ควำมเร็วในกำรเคลื่อนที่ มีคำ่ ไม่ถึงควำมเร็วสูงสุด ค่ำเวลำควำมเร่งจะน้อยกว่ำค่ำที่ระบุเอำไว้
(4) ระยะทำงที่เคลื่อนที่ในระหว่ำงที่มีควำมเร่ง/ ควำมหน่ วง จะถูกกำหนดโดยควำมเร็วที่กำหนดและ
ควำมเร็วที่กำหนดเอำไว้อำจจะไม่ถึงที่กำหนดเอำไว้ถำ้ ระยะทำงในกำรเคลื่อนที่ส้นั
(5) สำหรับกำรเคลื่อนที่แบบเส้นตรง ปลำยสุดของแขนจะเคลื่อนที่ที่ควำมเร็วคงที่ ในบำงกรณี อำจมี
เสียงเตือนเนื่ องจำกข้อต่อใดข้อต่อหนึ่ งมีค่ำควำมเร็วมำกที่สุดแล้ว
(6) เมื่อกำหนดค่ำควำมเร็วและเวลำควำมเร่ง/ ควำมหน่ วง แล้ว ค่ำนั้นจะยังคงอยูจ่ นกระทัง่ มีคำสัง่
SP ที่มรี ะดับควำมเร็วต่ำงไปจำกค่ำเดิม ค่ำตั้งต้นในโปรแกรม (default) คือ SP 12, H ค่ำเวลำ
ควำมเร่ง/ ควำมหน่ วง ของครั้งล่ำสุดยังคงอยูเ่ มื่อไม่ได้กำหนดค่ำควำมเร่งอีกครั้ง
(7) เมื่อกำหนดให้โหมดกำรเคลื่อนที่อย่ำงต่อเนื่ องทำงำน หุน่ ยนต์จะเคลื่อนที่อย่ำงต่อเนื่ องโดย
ปรำศจำกควำมเร่งและควำมหน่ วง จนกระทัง่ เจอคำสัง่ SD หรือ SP คำสัง่ ใหม่ซึ่งจะทำให้โหมดกำร
เคลื่อนที่อย่ำงต่อเนื่ องหยุดทำงำน
ควำมเร็วในกำรเคลื่อนที่ของ ควำมเร็วในกำรเคลื่อนที่ของ
SP กำรเคลื่อนที่แบบคำนวณตำม กำรเคลื่อนที่แบบเส้นตรง
แกน (%) (mm/s)
0 0.1 0.2
1 0.4 2.7
2 0.6 3.8
3 0.8 5.3
4 1.1 7.3
5 1.5 9.8
6 2.0 13.3
7 2.7 17.8
8 3.7 23.8
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-26
Introduction to COSIMIR ภำษำที่เขียน
ควำมเร็วในกำรเคลื่อนที่ของ ควำมเร็วในกำรเคลื่อนที่ของ
SP กำรเคลื่อนที่แบบคำนวณตำม กำรเคลื่อนที่แบบเส้นตรง
แกน (%) (mm/s)
9 4.9 31.7
10 6.5 42.4
11 8.2 53.1
12 9.7 63.3
13 11.6 75.3
14 13.7 89.2
15 16.2 105.2
16 19.0 123.7
17 22.2 144.5
18 25.9 168.1
19 29.8 193.8
20 34.2 222.0
21 40.7 264.8
22 47.3 307.6
23 53.9 350.4
24 60.5 393.2
25 67.1 436.0
26 73.7 478.8
27 80.2 521.6
28 86.8 564.4
29 93.4 607.2
30 100.0 650.0
ตัวอย่าง:
10 SP 8 ‘กำหนดระดับควำมเร็วในกำรเคลื่อนที่เท่ำกับ 8 ’
20 MO 5 ‘เคลื่อนที่ไปตำแหน่ งที่ 5 แบบ กำรเคลื่อนที่แบบคำนวณตำมแกน’
30 SP 10 ‘กำหนดระดับควำมเร็วในกำรเคลื่อนที่เท่ำกับ 10’
40 MS 7 ‘เคลื่อนที่ไปตำแหน่ งที่ 5 แบบ กำรเคลื่อนที่แบบเส้นตรง’
50 ED ‘จบโปรแกรม’
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-27
Introduction to COSIMIR ภำษำที่เขียน
คาสั่ง: TI (Timer)
การทางาน: หยุดกำรเคลื่อนที่ตำมช่วงเวลำที่กำหนด
รูปแบบ: TI <timer counter>
คาศัพท์: <Timer counter>
ตั้งระยะเวลำในกำรหน่ วงซึ่งมีค่ำตั้งแต่ 0 ถึง 32767 (หน่ วยเป็ น 0.1 วินำที)
คาอธิบาย:
(1) หุ่นยนต์จะหยุดทำงำนตำมช่วงระยะเวลำที่กำหนดซึ่งเท่ำกับ timer counter*0.1 วินำที (ระยะเวลำ
ในกำรหน่ วงมำกที่สุด เท่ำกับ 3267.7 วินำที)
(2) คำสัง่ จะถูกใช้ก่อนและหลังจำกที่กริปเปอร์เปิ ดหรือปิ ดสำหรับกำรหยิบจับชิ้ นงำน
(3) ค่ำตั้งต้น (default) เท่ำกับศูนย์
ตัวอย่าง:
10 MO 1,0 ‘เคลื่อนที่ไปตำแหน่ งที่ 1’
20 TI 5 ‘หน่ วงเวลำ 0.5 วินำที’
30 GC ‘กริปเปอร์ปิด’
40 TI 10 ‘หน่ วงเวลำ 1 วินำที’
50 MO 2 ‘เคลื่อนที่ไปตำแหน่ งที่ 2’
60 ED ‘จบโปรแกรม’
หมวดกำรควบคุมโปรแกรม
คำสัง่ ที่อยูใ่ นหมวดนี้ ที่ใช้บ่อยๆ ได้แก่
ED End
GT Goto
หมำยเหตุ: คำสัง่ ทั้งหมดที่อยูใ่ นหมวดนี้ อยูใ่ น COSIMIR Help
COSIMIR Programming Movemaster Command Program control command
คาสั่ง: ED (End)
การทางาน: จบโปรแกรม
รูปแบบ: ED
คาอธิบาย:
(1) คำสัง่ ED จะอยูท่ ำ้ ยสุดของโปรแกรม
ตัวอย่าง:
100 SP 3 ‘กำหนดค่ำควำมเร็วในกำรเคลื่อนที่เท่ำกับ 3’
110 MO 3 ‘เคลื่อนที่ไปตำแหน่ งที่ 3’
120 MO 5 ‘เคลื่อนที่ไปตำแหน่ งที่ 5’
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-28
Introduction to COSIMIR ภำษำที่เขียน
130 ED ‘จบโปรแกรม’
คาสั่ง: GT (Go To)
การทางาน: ข้ำมไปบรรทัดที่กำหนดโดยไม่มีเงื่อนไข
รูปแบบ: GT <Line number>
คาศัพท์: <Line number>
กำหนดบรรทัดที่จะข้ำมไป สำมำรถใส่จำนวนบรรทัดที่จะไปได้ต้งั แต่ 1 ถึง 9999
คาอธิบาย:
(1) คำสัง่ GT ทำให้โปรแกรมข้ำมไปยังบรรทัดที่กำหนด
(2) จะมีเสียงเตือนดังขึ้ นในขณะที่คอนโทรลเลอร์อำ่ นคำสัง่ GT ในกรณีที่ไม่มีบรรทัดที่กำหนดให้ขำ้ ม
ไป
ตัวอย่าง:
10 MO 1 ‘เคลื่อนที่ไปตำแหน่ งที่ 1’
20 GT 100 ‘กระโดดไปบรรทัดที่ 100 โดยไม่มีเงื่อนไข’
.
.
100 MO 12 ‘เคลื่อนที่ไปตำแหน่ งที่ 12’
110 MO 15 ‘เคลื่อนที่ไปตำแหน่ งที่ 15’
.
.
หมวดกำรควบคุมกริปเปอร์
คำสัง่ ที่อยูใ่ นหมวดนี้ ที่ใช้บ่อยๆ ได้แก่
GC Grip Close
GO Grip Open
หมำยเหตุ: คำสัง่ ทั้งหมดที่อยูใ่ นหมวดนี้ อยูใ่ น COSIMIR Help
COSIMIR Programming Movemaster Command Hand control command
หมวดกำรควบคุมตำแหน่งและกำรเคลื่อนที่
คำสัง่ ที่อยูใ่ นหมวดนี้ ที่ใช้บ่อยๆ ได้แก่
DLY Delay
MOV Move
MVS Move Straight
OVRD Override
SPD Speed
หมำยเหตุ: คำสัง่ ทั้งหมดที่อยูใ่ นหมวดนี้ อยูใ่ น COSIMIR Help
COSIMIR Programming Melfa-Basic IV Command Melfa-Basic IV position and motion
control command
หมวดกำรควบคุมโปรแกรม
คำสัง่ ที่อยูใ่ นหมวดนี้ ที่ใช้บ่อยๆ ได้แก่
END End
GOTO Go to
IF THEN ELSE If Then Else
หมำยเหตุ: คำสัง่ ทั้งหมดที่อยูใ่ นหมวดนี้ อยูใ่ น COSIMIR Help
COSIMIR Programming Melfa-Basic IV Command Melfa-Basic IV program control
command
ตัวแปร: M_IN
การทางาน: สำมำรถอ่ำนค่ำสัญญำณอินพุทเท่ำนั้น
รูปแบบ: M_IN (Bit Number) = bit signal input
หมำยเหตุ: bit signal input 0=off, 1=on
ตัวอย่าง: IF M_IN(1) = 0 THEN 100 ‘ถ้ำค่ำสัญญำณอินพุทบิทที่ 1 มีค่ำเป็ นศูนย์ ให้ขำ้ ม
ไป บรรทัดที่ 100’
<Process>
บทที่ 2: ทำควำมรูจ้ กั กับซอฟต์แวร์และ 2-38
Introduction to COSIMIR ภำษำที่เขียน
หมวดกำรควบคุมกริปเปอร์
คำสัง่ ที่อยูใ่ นหมวดนี้ ที่ใช้บ่อยๆ ได้แก่
HCLOSE Hand Close
HOPEN Hand Open
หมำยเหตุ: คำสัง่ ทั้งหมดที่อยูใ่ นหมวดนี้ อยูใ่ น COSIMIR Help
COSIMIR Programming Melfa-Basic IV Command Melfa-Basic IV hand control
commands
3.1 ขั้นตอนกำรสร้ำงโมเดล
ขัน้ ตอนการสร้างโมเดลมีสองวิธี คือ การเรียกจากไฟล์ตวั อย่าง หรือการสร้างโมเดลเอง
3.1.1 ขั้นตอนกำรเรียกโมเดลจำกไฟล์ตวั อย่ำง
การเรียกไฟล์ตวั อย่างมีอยู่ 2 วิธี คือ
1) เปิ ดจากไดเร็กทอรี่ที่ลงซอฟต์แวร์ COSIMIR Educational ไว้ หรือ
2) เปิ ดจาก COSIMIR Help
วิธีกำรที่ 1: เปิ ดจำกไดเร็กทอรี่ที่มีซอฟต์แวร์ COSIMIR Educational อยู่
1. หลังจากเข้าโปรแกรม COSIMIR Education ให้ไปที่ File>Open เลือกไดเร็กทอรี่ที่ซอฟต์แวร์ COSIMIR
Educational อยูแ่ ล้วจะปรากฏหน้าต่าง (Window) ดังรูป 3.1.1a
หมำยเหตุ: โดย default จะอยูใ่ น C:/Program files/COSIMIR Educational
รูป 3.1.1a
รูป 3.1.1b
3-2
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป 3.1.1c
รูป : 3.1.1d
รูป: 3.1.1e
3-3
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป: 3.1.1f
รูป: 3.1.1g
3-4
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
3. หลังจากนั้นจะปรากฏหน้าต่างดังรูป 3.1.1h ให้เลือก ‘Open this file from its current location’ จาก
นั้นคลื๊ก OK เมื่อคลิ๊ก OK แล้วจะปรากฏหน้าต่างเช่นเดียวกับรูป 3.1.1e
หมายเหตุ: สาเหตุที่ไม่สามารถเลือก ‘Save this file to disk’ ได้เนื่ องจากข้อจากัดของซอฟต์แวร์
Cosimir Educational ที่ไม่สามารถบันทึกโมเดลได้
รูป: 3.1.1h
3.1.2 ขั้นตอนกำรสร้ำงโมเดลเอง
1. หลังจากเปิ ดโปรแกรม COSIMIR Educational แล้ว ใช้คาสัง่ File> Project Wizard จะปรากฏ
หน้าต่างดังรูป 3.1.2a
รูป: 3.1.2a
3-5
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
2. ใส่ชื่อ Project Name ซึ่งชื่อของ Project Name จะเป็ นชื่อของโมเดล Position Lists และ
โปรแกรมโดยอัตโนมัติ ทั้งสามไฟล์จะมีชื่อไฟล์เหมือนกันแต่คนละนามสกุล
3. หลังจากนั้นกดปุ่ ม Next แล้วจะปรากฏหน้าต่างดังรูป 3.1.2b
4. เลือกรุ่นของหุ่นยนต์, จานวนการ์ดอินพุทเอาท์พุท (I/O interface card), จานวนกริปเปอร์
และ ภาษาที่จะใช้ในการเขียนโปรแกรม
5. หลังจากนั้นกดปุ่ ม Finish แล้วจะปรากฏหน้าต่างดังรูป 3.1.2c ซึ่งมีท้งั หน้าต่างโมเดล
Position Lists และโปรแกรม โดยในที่นี้เลือกหุ่นยนต์ RV-2AJ
รูป: 3.1.2b
รูป: 3.1.2c
3-6
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป: 3.1.3a
รูป 3.1.3b
รูป 3.1.3c
3-8
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป: 3.1.3d
6. หลังจากกดปุ่ ม Add แล้ว Push Cylinder จะกลายเป็ นหนึ่ งในวัตถุของ workcell แต่เมื่อสังเกต
จากรูป 3.1.3e จะเห็นว่า Push Cylinder ยังไม่ปรากฏใน workcell เนื่ องจากอยูภ่ ายในฐานของ
หุ่นยนต์
รูป: 3.1.3e
3-9
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป: 3.1.3f
รูป: 3.1.3g
3-10
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
9. กาหนดตาแหน่ งในแกน x, y และ z เท่ากับ 500 mm, 500 mm และ 70 mm ตามลาดับ จะได้
โมเดลดังรูป 3.1.3h
รูป: 3.1.3h
3.2 ขั้นตอนกำรกำหนดตำแหน่งในกำรเคลื่อนที่
เมื่อได้โมเดลเรียบร้อยแล้ว ขัน้ ตอนต่อไปคือการกาหนดตาแหน่ งต่างๆ ให้กบั หุ่นยนต์ซึ่งมีขน้ั ตอนดังต่อไปนี้ คือ
1. เปิ ดหน้าต่างสาหรับบันทึกตาแหน่ งโดยใช้คาสัง่ File> New จะปรากฎหน้าต่าง “New” ให้เลือก MRL
Position List หรือ Position Lists (COSIMIR position lists) ดังรูป 3.2.1a ถ้าผูเ้ รียนสร้างโมเดลเองให้ขา้ ม
ขัน้ ตอนที่ 1 และ 2 ได้เลย
หมายเหตุ: MRL Position Lists มีนามสกุลเป็ น .POS และ Position Lists มีนามสกุลเป็ น .PSL ซึ่งทั้งสอง
ไฟล์สามารถบันทึกตาแหน่ งได้แต่ในกรณีที่ผเู้ รียนเลือกใช้ Position Lists ก่อนทาการคอมไพล์กบั
โปรแกรมต้องเปลี่ยนเป็ น MRL Position lists เพื่อให้เข้ากับภาษา MRL และ Melfa Basic IV
MRL Position Lists และ Position Lists มีคุณสมบัติต่างกันดังต่อไปนี้ คือ
3-11
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
a) ชื่อตาแหน่ งใน Position Lists สามารถเป็ นตัวหนังสือหรือตัวเลขก็ได้ เช่น P901 หรือ 901
ในขณะที่ชื่อตาแหน่ งใน MRL Position Lists ต้องเป็ นตัวเลขเท่านั้น เช่น 901 เป็ นต้น
b) Position Lists สามารถระบุตาแหน่งโดยใช้ world coordinate joint coordinate หรื อ MRL-5 joint
coordinate นอกจากนี ้ยังสามารถอ้ างถึงตาแหน่งโดยการอิงจากวัตถุ (Relative to object หรื อ
object coordinate) ซึง่ คุณสมบัตินี ้ทาให้ เราสามารถปรับตาแหน่งใน Position Lists โดยอิงจากการ
เปลีย่ นแปลงของวัตถุนนๆั ้ ใน workcell แต่ในส่วนของ MRL Position Lists ระบุตาแหน่งโดย world
coordinate เท่านัน้ โดยรวมแล้ ว Position Lists เป็ นเครื่ องมือสาหรับการกาหนดตาแหน่งต่างๆ ซึง่
ทาได้ ง่ายกว่า MRL Position Lists เพราะมีคณ ุ สมบัติอื่นๆ เพิ่มมากขึ ้น อย่างไรก็ตาม เมื่อทดสอบ
ตาแหน่งต่างๆ เรี ยบร้ อยใน Position Lists เรี ยบร้ อยแล้ วให้ ทาการเปลีย่ นเป็ น MRL position lists
รูป 3.2.1a
รูป 3.2.1b
3-12
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป: 3.2.1c
รูป: 3.2.1d
รูป: 3.2.1e
3.3 ขั้นตอนกำรเขียนโปรแกรม
1. เปิ ดหน้าต่างสาหรับเขียนโปรแกรมโดยใช้คาสัง่ File > New จะปรากฏหน้าต่าง dialog box ดังรูป 3.3.1a เลือก
ภาษาที่จะใช้เขียนคือ Movemaster Command Program หรือ Melfa Basic IV
รูป: 3.3.1a
3-14
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป: 3.3.1b
3. วางแผนในการเขียนโปรแกรม
วิธีการเขียนโปรแกรมอย่างเป็ นระบบเริ่มจาก
1) เข้าใจ (โจทย์) ปั ญหา
2) วิเคราะห์ปัญหา: ศึกษาปั ญหาโดยแบ่งเป็ นปั ญหาย่อยๆ และหาข้อมูลขาเข้า (input) และข้อมูลขาออก
(output) ของปั ญหา
3) ออกแบบขัน้ ตอนการเขียนโปรแกรม (algorithm)
4) พัฒนาโปรแกรม: แปลงขัน้ ตอนการแก้ปัญหาเป็ นภาษา MRL หรือ Melfa Basic IV
5) ทดสอบโปรแกรม: เมื่อทาการตรวจสอบความถูกต้องของโปรแกรมแล้วให้บนั ทึกโปรแกรม
ในกรณีที่เลือกใช้ภาษา MRL ใช้คาสัง่ compile+Link บน tool bar เพือ่ แปลงโปรแกรมเป็ น IRDATA Code
หลังจากนั้นใช้คาสัง่ Start บน tool bar เพื่อรันโปรแกรม
สาหรับกรณีของภาษา Melfa Basic IV จะมีขน้ั ตอนของ Project Management ที่เพิ่มเติมขึ้ นมา Project
management ช่วยในเรื่องการจัดการไฟล์โปรแกรมซึ่งใช้ภาษาในการเขียนที่ต่างกันกล่าวคือ ในหนึ่ งโปรเจกท์
ผูเ้ รียนสามารถเลือก Melfa Basic IV ในการรันโปรแกรมในครั้งแรก และในครั้งถัดไปสามารถเลือกภาษาที่
ต่างไปจาก Melfa Basic IV ได้ Project Management สามารถรองรับภาษา V+, RAPID, KRL และ Melfa
Basic IV แต่ไม่รองรับภาษา MRL
ขัน้ ตอนของ Project Management มีดงั ต่อไปนี้
a) ใช้คาสัง่ Execute > Project Management จะปรากฏหน้าจอดังตัวอย่างในรูป 3.3.1c
b) กดปุ่ ม ‘Add New Project’ แล้วเลือกไดเร็กทอรี่ที่จะบันทึกโปรเจกท์ดงั ตัวอย่างในรูป 3.3.1d
3-15
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
c) เลือกแท็บ ‘Files’ แล้วใส่ ‘Source Files’ คือ โปรแกรมและ Position Lists ให้กบั โปรเจกท์ โดยใช้
ปุ่ ม ‘Add Files’ เพื่อเลือกไฟล์โปรแกรมและ Position Lists ที่ได้บนั ทึกไว้ เสร็จแล้วจะได้ดงั
ตัวอย่างในรูป 3.3.1e และเลือกโปรแกรมจาก compile mode เป็ น main program
d) ทาการคอมไพล์โปรเจกท์โดยใช้คาสัง่ Compile Project
e) รันโปรแกรมโดยใช้คาสัง่ Start บน tool bar
รูป 3.3.1c:
Project Management
Dialog Box
รูป: 3.3.1d
3-16
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป: 3.3.1e
รูป: 3.3.2b
รูป 3.3.3a
3-19
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
ตำรำงที่ 3.3.2: ตำรำงแสดงอินพุทและเอำท์พทุ ของ workcell พร้อมคำอธิบำย
อินพุท คำอธิบำย เอำท์พทุ คำอธิบำย
0 ตรวจสอบว่ากริปเปอร์อยูใ่ นสภาวะปิ ด 0 ปิ ดกริปเปอร์
1 ตรวจสอบว่ามีฝาอยูใ่ นแมกกาซีน A 1 ให้ฝาชิ้ นถัดไปพร้อมที่จะถูกเลื่อนออก
2 ตรวจสอบว่ามีลกู สูบขนาดใหญ่ 2 ให้กระบอกสูบเลื่อนฝาออกมา
3 ตรวจสอบว่ามีลกู สูบขนาดเล็ก 3 ให้ลกู สูบขนาดใหญ่ชิ้นถัดไปพร้อมที่จะถูกเลื่อนออก
4 ตรวจสอบว่ามีสปริงอยูใ่ นแมกกาซีน B 4 ให้ลกู สูบขนาดเล็กชิ้ นถัดไปพร้อมที่จะถูกเลื่อนออก
5 ตรวจสอบว่ามีชิ้นงานเป็ นสีดา 5 ให้สปริงชิ้ นถัดไปพร้อมที่จะถูกเลื่อนออก
6 ตรวจสอบว่ามีสปริง 6 ให้กระบอกสูบเลื่อนสปริงออกมา
7 ตรวจสอบว่าฝาถูกกระบอกสูบเลื่อนออกมาแล้ว
8 ตรวจสอบว่าสปริงถูกกระบอกสูบเลื่อนออกมาแล้ว
9 ตรวจสอบว่ามีชิ้นงานอยูใ่ นถาด
10 ‘*********************************************************************************************
20 ‘***EXAMPLE 3.2: I/O COMMUNICATION AND STRUCTURED PROGRAMMING***
30 ‘*********************************************************************************************
40 ‘*MAIN PROGRAM*
50 GOSUB 110 ‘INITIALIZE
60 GOSUB 160 ‘ASSEMBLE HOUSING
70 GOSUB 370 ‘ASSEMBLE CAP
80 MOV P901 ‘HOME POSITION
90 END ‘END PROGRAM
3-21
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
100 ‘*INITIALIZE*
110 OVRD 70 ‘SPEED
120 MOV P901 ‘HOME POSITION
130 M_OUT(0)=0 ‘GRIPPER OPEN
140 RETURN ‘RETURN TO MAIN PROGRAM
รูป 3.3.4b
ขั้นตอนกำรเขียนโปรแกรม
ขัน้ ตอนที่ 1: เข้าใจปั ญหา
ขัน้ ตอนที่ 2: วิเคราะห์ปัญหา
เนื่ องจากปั ญหานี้ ยังไม่มีความซับซ้อนเท่าใดนักจึงสามารถใช้เทคนิ ค sequential programming
ได้ อย่างไรก็ตามตัวอย่างนี้ มีการสร้างวัตถุเพิ่มในโมเดล และวัตถุเหล่านี้ มีการติดต่อสื่อสารเพื่อ
แลกเปลี่ยนข้อมูลกับคอนโทรลเลอร์ของหุ่นยนต์ผ่านอินพุทและเอาท์พุท
1. ตรวจสอบว่าวัตถุที่เลือกมามีอินพุทและเอาท์พุทใดบ้าง
โมเดลนี้ ประกอบไปด้วย หุ่นยนต์ Mitsubishi RV-2AJ, Socket และ BoxStackRed ซึ่ง
ประกอบด้วย Push Cylinder จาก Model Explorer สามารถตรวจสอบอินพุท เอาท์พุทเดิมที่
กระบอกสูบมีอยู่ ดังรูป 3.3.4c
3-24
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
จากรูป 3.3.4c จะพบว่า RV-2AJ มีอินพุทที่ยงั ไม่ใช้งานตั้งแต่บิต 0 ถึง 255 บิตที่ 900 ถึง 907
เกี่ยวกับกริปเปอร์ เช่นเดียวกันกับเอาท์พุทในรูป 3.3.4d หมายเหตุ: ในที่นี้จะใช้อินพุทและ
เอาท์พุทบิตที่ 901 คือ HCLOSED1 และ HCLOSE1 ตามลาดับ
จากรูป 3.3.4e จะพบว่า PushCylinder มีอินพุทบิด 0 และ 1 คือ MoveOut และ MoveIn
ตามลาดับ เอาท์พุทบิด 0 และ 1 คือ IsMovedOut และ IsMovedIn ตามลาดับ
BoxStackRed มีอินพุทบิด 0 คือ NextPart และเอาท์พุทบิด 0 คือ PartAvail
Gripper มีอินพุทบิด 0 คือ Close และเอาท์พุทบิด 0 คือ Closed
Socket ไม่มีอินพุทและเอาท์พุท
รูป 3.3.4c
รูป 3.3.4e
รูป 3.3.4d
3-25
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
3. เชื่อมโยงความสัมพันธ์อินพุทและเอาท์พุทของหุ่นยนต์และวัตถุอนื่
3-26
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
รูป 3.3.4k
รูป 3.3.4l
รูป 3.3.4m
3-28
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
หมายเหตุ: ในกรณีที่อินพุทหรือเอาท์พุทของวัตถุใดไม่พอให้ใช้งานต้องทาการเพิ่มอินพุทหรือเอาท์พุท
สามารถทาได้โดยคลิ๊กขวาที่วตั ถุน้ัน New > Input หรือ output > Digital (System) ดังรูป 3.3.4o
ข้อแตกต่างระหว่าง Digital I/Os และ Digital (System) I/Os คือ Digital (System) I/Os จะถูก
ประมวลผลและจัดการโดยอุปกรณ์ภายในของระบบนั้น ซึง่ ผูเ้ รียนสามารถดูสถานะของอินพุทและ
เอาท์พุทเหล่านี้ ได้แต่ไม่สามารถบังคับค่าอินพุทหรือเอาท์พุทได้ เช่นในกรณีของ Push cylinder ระบบ
ภายในจะควบคุม Push cylinder เคลื่อนที่เข้าออก
สาหรับ Digital I/Os จะถูกควบคุมโดยผูใ้ ช้หรือโปรแกรม อินพุทและเอาท์พุทประเภทนี้ จะถูกเขียนและ
อ่านโดยโปรแกรม เช่น ในกรณีของ Push button ผูเ้ รียนกดปุ่ มโดยเปลี่ยนค่าจาก 0 เป็ น 1 ซึ่งผูเ้ รียน
ควบคุมค่าอินพุทเอาท์พุทได้
รูป 3.3.4o
3-30
บทที่ 3: ซอฟต์แวร์ COSIMIR Educational
Introduction to COSIMIR
4.0.1 หุ่นยนต์
หุน่ ยนต์ที่ใช้ อ้างอิงในคูม่ ือนี ้เป็ นหุน่ ยนต์มิตซูบิชิ รุ่น RV-2AJ ซึง่ เป็ นหุน่ ยนต์อตุ สาหกรรมถูกออกแบบมาให้ ใช้ ได้
กับงานทุกประเภท (all-purpose industrial robot) RV-2AJ ถูกพัฒนาขึ ้นมาจากรุ่น RV-M1 มีความรวดเร็วและ
แม่นยาในการทางานเพิม่ มากขึ ้น มีแกนทังหมด ้ 5 แกน คือ แกนที่ 1, 2, 3, 5 และ 6แต่ละแกนเคลือ่ นที่ด้วยเซอร์ โว
มอเตอร์ (AC servo motor)
หมายเหตุ: รายละเอียดของสเปกหรื อคุณสมบัติอื่นๆ ของหุน่ ยนต์ขอให้ ผ้ เู รี ยนศึกษาเพิ่มเติมจากคูม่ ือที่มาพร้ อมกับ
หุน่ ยนต์
หุน่ ยนต์รุ่น RV-2AJ ถูกนาไปใช้ ในอุตสาหกรรมต่อไปนี ้ อุตสาหกรรมอิเล็กทรอนิกส์ที่ต้องการเครื่ องจักรที่มีความ
แม่นยาสูง อุตสาหกรรมอาหาร เครื่ องสาอางและยา และการศึกษาและการวิจยั
4-2
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
4.0.2 คอนโทรลเลอร์
คอนโทรลเลอร์ ของหุน่ ยนต์ RV-2AJ เป็ นรุ่น CR2-571 ภาษาที่รองรับ คือ MELFA BASIC IV และ MOVEMASTER
COMMAND สามารถบันทึกโปรแกรมได้ 88 โปรแกรม และสามารถบันทึกตาแหน่งได้ 2, 500 ตาแหน่ง
7) CHANG DISP… เมื่อกดปุ่ มนี ้ หน้ าจอจะเปลีย่ นรายละเอียดที่แสดง โดยเรี ยงตามลาดับมีดงั นี ้ คือ หมายเลขโปรแกรม
หมายเลขบรรทัดของโปรแกรม ความเร็ ว override นอกจากนี ้ยังทาหน้ าที่แสดง หมายเลข error
ที่เกิดขึ ้น
8) End button…ทาหน้ าทีจ่ บการอ่านโปรแกรมที่บรรทัดสุดท้ ายหรื อเมื่อเจอคาสัง่ END ไฟ LED สีแดงจะติดตลอดขณะ
ระหว่างการทางานหนึง่ รอบ
9) SVO.ON switch… เมื่อกดปุ่ มนี ้ เซอร์ โวมอเตอร์ จะเริ่ มต้ นทางานโดยมีไฟ LED สีเขียวติดตลอดเวลาที่ เซอร์ โวมอเตอร์
ทางาน
10) SVO.OFF switch… เมื่อกดปุ่ มนี ้ เซอร์ โวมอเตอร์ จะหยุดทางานโดยมีไฟ LED สีแดงติดตลอดเวลาที่ เซอร์ โวมอเตอร์
หยุดการทางาน
11) STATUS.NUMBER (display panel)…หน้ าจอทาหน้ าที่แสดงหมายเลข error หมายเลขโปรแกรม หมายเลขบรรทัด ค่า
เปอร์ เซ็นต์ความเร็ ว override
14) MODE changeover switch…ทาหน้ าที่เปลีย่ นโหมดการทางานของหุน่ ยนต์ โดยมี 3 โหมดดังต่อไปนี ้
AUTO (Op.)… เป็ นโหมดสาหรับการทางานของคอนโทรลเลอร์ เท่านัน้
TEACH…เป็ นโหมดที่ใช้ ร่วมกับการทางานของ TB เท่านัน้
AUTO (Ext.)… เป็ นโหมดสาหรับการสัง่ งานคอนโทรลเลอร์ จากอุปกรณ์ภายนอก (คอมพิวเตอร์ ) เท่านัน้
15) UP/ DOWN switch… ทาหน้ าที่เปลีย่ นรายละเอียดที่แสดงบนหน้ าจอขึ ้นลง
รูปที่ 4.0.3a: ภาพด้ านหน้ าของ TB รูปที่ 4.0.3b: ภาพด้ านข้ างและด้ านหลังของ TB
4-6
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
3) กดปุ่ ม [MENU] ที่ TB หน้ าจอที่ TB จะปรากฏดังรูปที่ 4.1.1c ใช้ ปมุ่ [ADD ], [RPL/ ], [DEL/ ] และ
[HAND/ ] เพื่อเลือ่ นเคอร์ เซอร์ ไปยังฟั งก์ชนั่ ที่ต้องการ
4) เลือกหมายเลข 1 ‘TEACH’ แล้ วกดปุ่ ม [INP/ EXE] เพื่อตอบตกลง หน้ าจอที่ TB จะปรากฏดังรูปที่ 4.1.2d
7) เริ่ มต้ นการกาหนดตาแหน่ง โดยใช้ มือซ้ ายกดปุ่ ม Deadman switch พร้ อมกับปุ่ ม [STEP/MOVE] ค้ างไว้ จนได้
ยินเสียง เซอร์ โวมอเตอร์ ทางานและไฟ LED สีเขียวติดที่ปมุ่ SVO.ON switch ซึง่ หมายความว่า เซอร์ โวมอเตอร์
อยูใ่ นสภาพพร้ อมทางานแล้ ว
และใช้ มือขวากดปุ่ ม [TOOL] หรือ [JOINT] หรื อ [XYZ] เพื่อเลือกรูปแบบการเคลือ่ นที่
8) โดยที่มือซ้ ายยังกด Deadman switch พร้ อมกับปุ่ ม [STEP/MOVE] อยู่ ใช้ มือขวากดปุ่ ม [Jog operation]
key จานวน 12 ปุ่ มเริ่มจาก [-X (J1) ถึง +C(J6)]
ในกรณีที่เลือกใช้ การเคลือ่ นที่แบบ XYZ mode ให้ ใช้ ปมต่ ุ่ อไปนี ้…
[-X (J1)] และ [+X (J1)] ทาหน้ าที่เคลือ่ นที่ไปในแกน X- และ X+ ตามลาดับ
[-Y (J2)] และ [+Y (J2)] ทาหน้ าที่เคลือ่ นที่ไปในแกน Y- และ Y+ ตามลาดับ
[-Z (J3)] และ [+Z (J3)] ทาหน้ าที่เคลือ่ นที่ไปในแกน Z- และ Z+ ตามลาดับ
ในกรณีที่เลือกใช้ การเคลือ่ นที่แบบ Joint mode ให้ ใช้ ปมต่ ุ่ อไปนี ้…
[-X (J1)] และ [+X (J1)] ทาหน้ าที่เคลือ่ นที่ตามแกนที่ 1 ไปในทิศทาง – และ+ตามลาดับ
4-9
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
[-Y (J2)] และ [+Y (J2)] ทาหน้ าที่เคลือ่ นที่ไปในแกนที่ 2 ไปในทิศทาง – และ+ตามลาดับ
[-Z (J3)] และ [+Z (J3)] ทาหน้ าที่เคลือ่ นที่ไปในแกนที่ 3 ไปในทิศทาง – และ+ตามลาดับ
[-A (J4)] และ [+A (J4)] ทาหน้ าที่เคลือ่ นที่ไปในแกนที่ 4 ไปในทิศทาง – และ+ตามลาดับ
[-B (J5)] และ [+B (J5)] ทาหน้ าที่เคลือ่ นที่ไปในแกนที่ 5 ไปในทิศทาง – และ+ตามลาดับ
[-C (J6)] และ [+C (J6)] ทาหน้ าที่เคลือ่ นที่ไปในแกนที่ 6 ไปในทิศทาง – และ+ตามลาดับ
หมายเหตุ: ในกรณีที่ยงั ไม่ได้ ยินเสียง เซอร์ โวมอเตอร์ ทางานแล้ วกดปุ่ มใดปุ่ มหนึง่ ของ [Jog Operation] key
จะเกิด error ขึ ้น
ในกรณีที่ต้องการเปิ ดหรื อปิ ดกริ ปเปอร์ ให้ กดปุ่ ม [HAND/ ] ค้ างไว้ แล้ วกด [-C (J6)] เพื่อปิ ดกริ ปเปอร์ หรื อ
[+C (J6)] เพื่อเปิ ดกริ ปเปอร์ โดยไม่ที่ต้องกดปุ่ ม Deadman switch และ [STEP/MOVE]
9) เมื่อได้ ตาแหน่งที่ต้องการ ให้ บนั ทึกตาแหน่งโดยปล่อยปุ่ ม Deadman switch และ [STEP/MOVE]
10) ใส่หมายเลขตาแหน่ง เช่น P1, P2, … โดยใช้ ปมุ่ [POS CHAR] เพื่อป้อนหมายเลขและ ปุ่ ม [ADD ], [RPL/
], [DEL/ ] และ [HAND/ ] เพื่อเลือ่ นเคอร์ เซอร์ ไปยังตาแหน่งที่ต้องการ
11) เมื่อใส่หมายเลขตาแหน่งเรียบร้ อยแล้ วให้ กดปุ่ ม Deadman switch และ [STEP/MOVE] ค้ างไว้ แล้ วกดปุ่ ม
[ADD ] 2 ครัง้ เพื่อบันทึกตาแหน่ง
12) ทาซ ้าขันตอนที
้ ่ 7) ถึง 11) ใหม่ทกุ ครัง้ ทีต่ ้ องการเพิม่ ตาแหน่ง
4.1.2 วิธีการแสดงตาแหน่ ง
ในกรณีที่กาหนดตาแหน่งต่างๆ ครบเรี ยบร้ อยแล้ ว ต้ องการตรวจสอบว่าตาแหน่งต่างๆ อยู่ ณ ที่ตาแหน่งใดบ้ าง มี
วิธีการตรวจสอบดังต่อไปนี ้
1) บิดกุญแจที่คอนโทรลเลอร์ มาที่ตาแหน่ง ‘TEACH’ ดังรูปที่ 4.1.1a
2) บิดกุญแจที่ TB มาที่ตาแหน่ง ‘ENABLE’ ดังรูปที่ 4.1.1b
3) กดปุ่ ม [MENU] ที่ TB หน้ าจอที่ TB จะปรากฏดังรูปที่ 4.1.1c ใช้ ปมุ่ [ADD ], [RPL/ ], [DEL/ ] และ
[HAND/ ] เพื่อเลือ่ นเคอร์ เซอร์ ไปยังฟั งก์ชนั่ ที่ต้องการ
4) เลือกหมายเลข 1 ‘TEACH’ แล้ วกดปุ่ ม [INP/ EXE] เพื่อตอบตกลง หน้ าจอที่ TB จะปรากฏดังรูปที่ 4.1.2d
5) ใส่หมายเลขโปรแกรมที่ต้องการตรวจสอบตาแหน่ง
6) กดปุ่ ม [POS CHAR] จะปรากฏหน้ าจอดังรูป 4.1.2g
7) ใส่หมายเลขตาแหน่งที่ต้องการตรวจสอบ เช่น P1, P2, …
8) ใช้ มือซ้ ายกดปุ่ ม Deadman switch พร้ อมกับปุ่ ม [STEP/MOVE] ค้ างไว้ จนได้ ยินเสียง เซอร์ โวมอเตอร์ ทางาน
และไฟ LED สีเขียวติดที่ปมุ่ SVO.ON switch ซึง่ หมายความว่า เซอร์ โวมอเตอร์ อยูใ่ นสภาพพร้ อมทางานแล้ ว แล้ ว
ใช้ มือขวากดปุ่ ม [INP/ EXE] ค้ างไว้ จนกว่าหุน่ ยนต์จะเคลือ่ นที่กลับสูต่ าแหน่งที่กาหนดไว้
หมายเหตุ:
• ในกรณีที่กดปุ่ ม [INP/ EXE] ก่อนได้ ยินเสียง เซอร์ โวมอเตอร์ ทางาน จะทาให้ เกิด error
• ในบางกรณี หุน่ ยนต์ไม่สามารถกลับสูต่ าแหน่งที่กาหนดให้ ได้ เนื่องจากข้ อจากัดขององศาการ
หมุนของแต่ละข้ อซึง่ เป็ นผลมาจากการออกแบบโครงสร้ างหุน่ ยนต์จากบริ ษัทผู้ผลิต
4-10
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
4.1.3 วิธีการลบตาแหน่ ง
1) ให้ หน้ าจอปรากฏตาแหน่งที่ต้องการลบ โดยใส่ตาแหน่งที่ต้องการลบ แล้ วกดปุ่ ม [INP/ EXE] เช่น ดังในรูป
4.1.3a
MS.POS (P1 )
X : +232.03 รูปที่ 4.1.3a: หน้ าจอ TB แสดงตาแหน่งที่
Y : +64.24 ต้ องการลบ
Z : +436.24
2) กดปุ่ ม [STEP/MOVE] ค้ างไว้ แล้ วกดปุ่ ม [DEL/ ] หนึง่ ครัง้ แล้ วปล่อย จะได้ ยินเสียงบี๊บ 3 ครัง้ เพื่อเป็ นการ
เตือน และจะปรากฏข้ อความเตือนดังรูป 4.1.3b
MS.POS (P1 )
รูปที่ 4.1.3b: หน้ าจอ TB แสดง
ข้ อความเตือนการลบ
DELETE?
3) ยังคงกดปุ่ ม [STEP/MOVE] ค้ างไว้ แล้ วกดปุ่ ม [DEL/ ] หนึง่ ครัง้ เพื่อยืนยันการลบ หลังจากนันจะได้
้ ยินเสียง
บี๊บและที่ด้านล่างหน้ าจอจะปรากฏข้ อความ ‘EXECUTING’ เพื่อแจ้ งว่าได้ ทาการลบตาแหน่งเรี ยบร้ อยแล้ ว
4.1.4 วิธีการบันทึกตาแหน่ งทับตาแหน่ งเดิม (replace)
1) ให้ หน้ าจอปรากฏตาแหน่งทีต่ ้ องการแทนทีด่ ้ วยตาแหน่งอื่น โดยใส่ตาแหน่งที่ต้องการแทนที่ แล้ วกดปุ่ ม [INP/
EXE] เช่น ดังในรูป 4.1.3a
2) กดปุ่ ม [STEP/MOVE] ค้ างไว้ แล้ วกดปุ่ ม [RPL/ ] หนึง่ ครัง้ แล้ วปล่อย จะได้ ยินเสียงบี๊บ 3 ครัง้ เพื่อเป็ นการ
เตือน และจะปรากฏข้ อความเตือนดังรูป 4.1.4a
MS.POS (P1 )
รูปที่ 4.1.4a: หน้ าจอ TB แสดง
ข้ อความเตือนการแทนที่
REPLACE?
3) ยังคงกดปุ่ ม [STEP/MOVE] ค้ างไว้ แล้ วกดปุ่ ม [RPL/ ] หนึง่ ครัง้ เพื่อยืนยันการแทนที่ หลังจากนันจะ
้
ได้ ยินเสียงบี๊บและทีด่ ้ านล่างหน้ าจอจะปรากฏข้ อความ ‘EXECUTING’ เพื่อแจ้ งว่าได้ ทาการแทนที่
ตาแหน่งเรี ยบร้ อยแล้ วโดยได้ นาตาแหน่งที่อยูถ่ ดั ไปมาเป็ นตาแหน่งที่ถกู แทนที่ แล้ ว โดยทีต่ าแหน่งที่อยู่
ถัดไปยังคงอยู่
4-11
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
4.2 การเขียนโปรแกรม
1. หลังจากเปิ ดโปรแกรม COSIMIR Industrial แล้ว ใช้คาสัง่ File> Project Wizard จะปรากฏหน้าต่างดังรูปที่
4.2.1a หมายเหตุ: เสียบ Hardlock ขณะใช้ งานโปรแกรม COSIMIR Industrial ตลอดเวลา
2. ใส่ชื่อ Project Name ซึ่งชื่อของ Project Name จะเป็ นชื่อของโมเดล Position Lists และโปรแกรมโดยอัตโนมัติ
ทั้งสามไฟล์จะมีชื่อไฟล์เหมือนกันแต่คนละนามสกุล ซึ่งทั้งสามไฟล์จะถูกเก็บไว้ที่ C:\Program Files\COSIMIR
Industrial\Projects ซึ่งสามารถเปลี่ยนสถานที่เก็บไฟล์เหล่านี้ ได้
ใส่ชื่อโปรแกรม ใส่ชื่อผูเ้ ขียนโปรแกรมในช่อง ‘Created by’ และชื่อย่อผูเ้ ขียนโปรแกรมในช่อง ‘Initials’ ดังตัวอย่าง
ในรูป 4.2.1b
รูปที่ 4.2.1d:
4-15
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
แบบฝึ กหัดที่ 4.2a: จงเขียนโปรแกรมโดยใช้ ตาแหน่งจากแบบฝึ กหัดที่ 4.1a โดยให้ หนุ่ ยนต์เคลือ่ นที่จากจุดที่ 1 ไปจุดที่ 5
แบบฝึ กหัดที่ 4.2b: จงเขียนโปรแกรมโดยใช้ ตาแหน่งจากแบบฝึ กหัดที่ 4.1b โดยให้ หนุ่ ยนต์เคลือ่ นที่หยิบชิ ้นงานจากสถานที่หนึง่
ไปวางอีกสถานที่หนึง่
Input bit bit number Pin Output bit bit number Pin
0 8 13 0 8 1
1 9 14 1 9 2
2 10 15 2 10 3
3 11 16 3 11 4
4 12 17 4 12 5
5 13 18 5 13 6
6 14 19 6 14 7
7 15 20 7 15 8
Input bit bit number Pin Output bit bit number Pin
0 8 40 0 8 10
1 9 41 1 9 11
2 10 42 2 10 12
3 11 43 3 11 13
4 12 44 4 12 35
5 13 45 5 13 36
6 14 46 6 14 37
7 15 47 7 15 38
พินที่เหลือถูกใช้ สาหรับการจ่ายไฟให้ กบั คอนโทรลเลอร์ ควบคุมเซอร์ โวมอเตอร์ เป็ นต้ น ซึง่ รายละเอียดความสัมพันธ์ทงหมดั้
อยูใ่ นตารางที่ 2 ใน ภาคผนวก หน้ า A-16
หมายเหตุ: การที่เราจะทราบว่าอินพุทบิทไหนวิ่งผ่านพินไหนแล้ วเป็ นบิทหมายเลขใดในการเขียนโปรแกรมนันขึ ้ ้นอยูก่ บั การ์ ด
I/O ที่ติดตังในคอนโทรลเลอร์
้
รูป 4.2.2c แสดงตัวอย่างการเชื่อมต่อระหว่างระบบกับอุปกรณ์ภายนอก ระบบรับสัญญาณอินพุทจาก start button
และส่งสัญญาณเอาท์พทุ ให้ วาล์ว start button เป็ นต่อเข้ ากับอินพุทบิทที่ 0 ของ I/O terminal ซึง่ เป็ นบิทหมายเลข 8
(M_IN(8)) เป็ นหมายเลขสาหรับอ้ างอิงในการเขียนโปรแกรม (ดูตาราง 4.2.1 ประกอบ) เมื่อกดปุ่ มสตาร์ ทจะมีสญ ั ญาณค่า
4-18
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
‘1’ เข้ ามาที่อินพุทบิทที่ 0 (M_IN(8) = 1) โดยสัญญาณจะวิ่งผ่านพินที่ 13 ของพอร์ ท I/O terminal ผ่านสายสือ่ สารแบบ
ขนาน และเข้ าสูค่ อนโทรลเลอร์ โดยที่คอนโทรลเลอร์ รับสัญญาณ M_IN(8) = 1 ผ่านอินพุทบิทที่ 0 พินที่ 40 ของ
คอนโทรลเลอร์ (ดูตาราง 4.2.2 ประกอบ)
โซลินอยด์วาล์วต่อเข้ ากับเอาท์พทุ บิทที่ 0 ของ I/O terminal ซึง่ เป็ นบิทหมายเลข 8 (M_OUT(8)) เป็ นหมายเลขสาหรับอ้ างอิงใน
การเขียนโปรแกรม (ดูตาราง 4.2.2 ประกอบ) เมื่อคอนโทรลเลอร์ สง่ สัญญาณค่า ‘1’ สัญญาณจะวิง่ จากพินที่ 10 ของพอร์ ท
คอนโทรลเลอร์ เข้ าพินที่ 1 ของพอร์ ท I/O terminal (ดูตาราง 4.2.1 ประกอบ) ผ่านทางเอาท์พทุ บิทที่ 0 (M_OUT(8) = 1) โซลิ
นอยด์วาล์วได้ รับสัญญาณค่า ‘1’ วาล์วก็เกิดการเปลีย่ นห้ อง ลมอัดเคลือ่ นที่เข้ าสูก่ ระบอกสูบ เมือ่ คอนโทรลเลอร์ สง่ สัญญาณค่า
‘0’ วาล์วและกระบอกสูบจะกลับสูส่ ภาวะปกติ
แบบฝึ กหัดที่ 4.2c: จงเขียนโปรแกรมโดยใช้ ตาแหน่งจากแบบฝึ กหัดที่ 4.1b และใช้ start button และวาล์วและกระบอกสูบเป็ น
อินพุทและเอาท์พทุ ตามลาดับ โดยมีเงื่อนไขดังต่อไปนี ้ เมื่อกดปุ่ ม start button หุน่ ยนต์เริ่ มทางานเคลือ่ นที่ไปหยิบชิ ้นงานจาก
pallet ใส่ socket เมื่อวางชิ ้นงานเสร็ จเรี ยบร้ อยแล้ วกลับสูต่ าแหน่งเริ่ มต้ น แล้ วกระบอกสูบเคลือ่ นที่ออกและกลับ จบหนึง่ รอบการ
ทางาน
รูปที่ 4.3.1a:
หน้ าต่าง Communication Port
รูปที่ 4.3.1b:
หน้ าต่าง Communication Port
รูปที่ 4.3.1c:
หลังจากนันกดปุ่
้ ม OK การถ่ายโอนข้ อมูลจะเริ่ มต้ น และเมือ่ การถ่ายโอนข้ อมูลเสร็ จสิ ้นจะปรากฏตาแหน่งในหน้ าต่าง
Position list ดังรูป 4.3.1e
รูปที่ 4.3.1e:
รูปที่ 4.3.1d:
8) เมื่อต้ องการยกเลิกการติดต่อสือ่ สาร ให้ ใช้ คาสัง่ Execute > Init Connection ก่อนถอดสาย personal
computer cable
4.3.2 การกาหนดตาแหน่ งบนซอฟต์ แวร์ ด้วย Jog operation
เป็ นฟั งก์ชนั่ สาหรับการกาหนดตาแหน่งบนซอฟต์แวร์ โดยที่หนุ่ ยนต์จริ งจะเคลือ่ นที่ไปด้ วย ขันตอนการก
้ าหนด
ตาแหน่งบนซอฟต์แวร์ มีดงั ต่อไปนี ้
ขันตอนที
้ ่ 1) – 5) เหมือนในหัวข้ อ 4.3.1
6) ใช้ คาสัง่ Execute > Jog operation จะปรากฏหน้ าต่างดังรูป 4.3.2a
หมายเหตุ: รูป 4.3.2b คือ หน้ าต่างการกาหนดตาแหน่งบนซอฟต์แวร์ ที่เคยใช้ กนั ใน COSIMIR Education
ซึง่ หุน่ ยนต์จริ งจะไม่เคลือ่ นที่ตามไปด้ วย การเรี ยกหน้ าต่างนี ้ใช้ คาสัง่ Extras > Teach-In
แต่อย่างไรก็ตามฟั งก์ชนั่ การทางานของปุ่ มต่างๆ ยังคงเหมือนเดิม
4-22
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
ขันตอนการให้
้ หนุ่ ยนต์แสดงตาแหน่งที่กาหนดบนซอฟต์แวร์ มีดงั ต่อไปนี ้
1) – 5) เหมือนในหัวข้ อ 4.3.1
6) ดับเบิ ้ลคลิก๊ ที่ตาแหน่งที่ต้องการให้ หนุ่ ยนต์แสดงผล
7) ใช้ คาสัง่ Execute > COSIMIR Position -> Robot แล้ วหุน่ ยนต์จะเคลือ่ นที่ไปยังตาแหน่งที่ระบุไว้
ขันตอนการให้
้ โมเดลแสดงตาแหน่งของหุน่ ยนต์มีดงั ต่อไปนี ้
1) – 5) เหมือนในหัวข้ อ 4.3.1
6) ใช้ Jog operation ดังรูป 4.3.2a เคลือ่ นที่หนุ่ ยนต์จริ ง
7) ใช้ คาสัง่ Execute > Robot Position -> COSIMIR แล้ วโมเดลจะเคลือ่ นที่ไปยังตาแหน่งของหุน่ ยนต์จริ ง
4.3.3 การดูสภาวะการทางานของหุ่นยนต์
A) การดูสภาวะอินพุทและเอาท์ พุท (I/O Monitor)
เป็ นฟั งก์ชนั่ ในการมอนิเตอร์ ดสู ภาวะอินพุทและเอาท์พทุ ซึง่ มีขนตอนในการเรี
ั้ ยกดูดงั ต่อไปนี ้
ขันตอนที
้ ่ 1) ถึง 5) เหมือนในหัวข้ อ 4.3.1
6) ใช้ คาสัง่ Extras > I/O Monitor แล้ วจะปรากฏหน้ าต่าง I/O Monitor ดังรูป 4.3.3a
4-23
บทที่ 4: ซอฟต์แวร์ COSIMIR Industrial
Introduction to COSIMIR
• ตรวจสอบให้ แน่ใจว่าโปรแกรมทางานถูกต้ อง
ขันตอนในการสตาร์
้ ทคอนโทรลเลอร์ ในโหมดอัตโนมัติ มีดงั ต่อไปนี ้
1) บิดกุญแจที่ TB มาที่ตาแหน่ง ‘DISABLE’ ดังรูปที่ 4.4.1a
3) กดปุ่ ม [CHANG DISP] ที่หน้ าแผงคอนโทรลเลอร์ สองครัง้ หน้ าจอจะปรากฏความเร็ ว override ดังรูป 4.4.1c
4) กดปุ่ ม [UP] หรื อ [DOWN] เพือ่ เปลีย่ นค่าความเร็ ว override ในตัวอย่างเปลีย่ นค่าความเร็ วเป็ น 10 ดังรูป 4.4.1d
6) กดปุ่ ม [UP] หรื อ [DOWN] เพือ่ เลือกโปรแกรมที่ต้องการ ในตัวอย่างเปลีย่ นเป็ นโปรแกรมหมายเลข 1 ดังรูป 4.4.1f
7) กดปุ่ ม [START] ที่หน้ าแผงคอนโทรลเลอร์ เพื่อเริ่ มต้ นการทางาน และกดปุ่ ม [STOP] เพื่อหยุดการทางาน
5-1
บทที่ 5: Programming Language (MELFA Basic IV)
Introduction to COSIMIR
Software “COSIMIR Industrial” เป็ น Software ลิขสิทธิ์ ที่ใช้ สำหรับควบคุมกำรทำงำนของ Robot อุตสำหกรรม โดยมีฟังก์ชนั กำร
o สำมำรถสร้ ำง Mechanical Work Cell เพื่อแสดงผลกำรจำลองกำรทำงำนได้ เช่น ระบบ Conveyor, Sensors, Actuators,
ฯลฯ
1. สัญลักษณ์ ‘
เมื่อปรำกฏสัญลักษณ์ ’ หน้ ำอักษรใดๆ ในแต่ละบรรทัด หมำยควำมว่ำข้ อควำมหลังสัญลักษณ์นนเป็
ั ้ นคำอธิบำย จะไม่เกี่ยวข้ อง
กับโปรแกรม
2. Position ในโปรแกรม
หลังจำกทำกำร Teach Position ที่จำเป็ นให้ กบั Robot แล้ ว ภำยในโปรแกรม MELFA Basic IV จะเรี ยกชื่อตำแหน่ง Position แต่
คำนวณหำระยะทำง และทิศทำงกำรเคลือ่ นที่ที่เหมำะสมที่สดุ โดยปกติจะเป็ นกำรเคลือ่ นทีใ่ นแนวเส้ นโค้ ง (Joint interpolation)
คำสัง่ MVS เป็ นคำสัง่ ให้ Robot ทำกำรเคลือ่ นที่ไปยังตำแหน่งทีก่ ำหนดเช่นกัน แต่กำรใช้ คำสัง่ เคลือ่ นที่แบบ MVS นี ้จะเป็ นกำร
สัง่ ให้ Robot เคลือ่ นที่จำกตำแหน่งปั จจุบนั ไปยังตำแหน่งที่กำหนดตำมแนวเส้ นตรง (Linear interpolation) ซึง่ กำรใช้ คำสัง่ กำร
เคลือ่ นที่เป็ นแนวเส้ นตรงแบบนี ้จะมีประโยชน์อย่ำงมำกในบำง Application เช่นกำรสัง่ ให้ Robot เคลือ่ นที่ไปตำมแกนแนวดิ่ง (Z)
A B
4. คำสั่ง IF…THEN…
คำสัง่ IF…THEN เป็ นคำสัง่ ทีใ่ ช้ สำหรับกำรสร้ ำงเงื่อนไขให้ โปรแกรมทำงำนตำมทีก่ ำหนด เมื่อเงื่อนไขเป็ นจริ งให้ ไปทำคำสัง่ อย่ำง
หนึง่ และเมื่อเงื่อนไขเป็ นเท็จก็ให้ โปรแกรมกระโดดไปทำงำนตำมคำสัง่ อีกอย่ำงหนึง่ เช่น กำรใช้ คำสัง่ IF…THEN ในกำรเช็ค
Status Bit ว่ำเมื่อไรก็ตำมที่ Bit แสดงสถำนะเป็ น 1 ก็ให้ โปรแกรม Robot เคลือ่ นที่
5-4
บทที่ 5: Programming Language (MELFA Basic IV)
Introduction to COSIMIR
ไปเรื่ อยๆ
ตัวอย่ ำง
5. คำสั่ง GOTO…/GOSUB…RETURN
คำสัง่ GOTO เป็ นคำสัง่ ให้ โปรแกรมข้ ำมไปทำงำนตำมบรรทัด (Line Number) ในโปรแกรมที่กำหนด
คำสัง่ GOSUB เป็ นคำสัง่ ที่สงั่ ให้ โปรแกรมข้ ำมไปทำงำนยังโปรแกรมย่อยทีก่ ำหนด โดยในโปรแกรมย่อยแต่ละโปรแกรมจะต้ องมี
หัวของโปรแกรมย่อย
ตัวอย่ ำง
6. คำสั่ง OVRD…
คำสัง่ OVRD เป็ นคำสัง่ ที่ใช้ ในกำรเพิ่มหรื อลด Override Speed ของกำรเคลือ่ นที่ของ Robot โดยกำรคำนวนกำรเพิ่มหรื อลด
8. คำสั่ง DLY…
คำสัง่ DLY เป็ นคำสัง่ เพื่อให้ โปรแกรมทำกำรหน่วงเวลำทำงำนเพือ่ ให้ Robot ทำงำนทันกันกับคำบเวลำในโปรแกรม เช่นในกำร
เคลือ่ นที่ไปหยิบจับชิ ้นงำน ณ ตำแหน่งๆ หนึง่ นัน้ หลังจำกที่ Robot เคลือ่ นที่มำถึงตำแหน่งที่ต้องกำรแล้ ว ต้ องมีกำร Delay หน่วง
นันจะใช้
้ งำนง่ำยกว่ำ คือไม่ต้องมีกำรกำหนดตัวแปรเพือ่ นำมำใช้ ในโปรแกรม เพียงแต่กำหนดตัวเลขแสดงควำมเร็ วที่ต้องกำรเป็ น
ภำยในโปรแกรมได้ นอกเหนือไปจำก Position ที่ทำกำร Teach ไว้ แล้ ว สำหรับกำรเคลือ่ นที่ที่สำคัญจะแบ่งเป็ น 4 แกนหลักๆ
ทังนี
้ ้กำรกำหนดตำแหน่ง Offset ในกำรให้ Robot เคลือ่ นที่นนั ้ ก็สำมำรถทำได้ โดยให้ เคลือ่ นที่เป็ น Vector ผลรวมของกำร
เคลือ่ นที่ทงสองหรื
ั้ อสำมแกนในเวลำเดียวกันได้ โดยเรำสำมำรถกำหนดค่ำ Position ที่ต้องกำรเข้ ำไปในแต่ละแนวแกน จำกนัน้
Controller ภำยในจะทำกำรคำนวณทิศทำงกำรเคลือ่ นที่ที่เหมำะสมให้ เอง เช่นต้ องกำรเคลือ่ น Robot ให้ หำ่ งจำกตำแหน่ง P2 ไป
40 MOV P1
50 DLY 1
60 AUXPOS = P1 + VECXY
70 MOV AUXPOS
:
5-9
บทที่ 5: Programming Language (MELFA Basic IV)
Introduction to COSIMIR
ตัวอย่ ำง ต้ องกำรให้ Robot เคลือ่ นที่ไปในตำแหน่ง Offset เหนือ Position P1 (+100.00, +150, +30.00, +0.00,
+0.00) ไปตำมแนวแกน Z เป็ นระยะ 100 mm. แล้ วทำกำรหมุนหัว Gripper ไปตำมทิศทำงตำมเข็ม
นอกจำกนี ้ยังมีคำสัง่ กำร Define ตำแหน่ง bit ของ input และ output อีกวิธีหนึง่ เพื่อนำเงื่อนไงกำรแสดงผลสถำนะ on/off โดยใช้
ตัวอย่ ำง กำหนดเงื่อนไขให้ สภำวะเริ่มต้ นกำรทำงำน Lamp output Bit ที่ 8 มีสถำนะเป็ น ON (1)
และเมื่อมีเงื่อนไขถ้ ำ Input Bit ที่ 8 เป็ น OFF (0) จะส่งผลให้ Lamp output Bit ที่ 8 ดังกล่ำวเปลีย่ น