โปรแกรมหุ่นยนต์

RoboDK เป็นแบบจำลองที่ถูกโฟกัสโดยแอพพลิเคชั่นหุ่นยนต์อุตสาหกรรม หมายความว่าโปรแกรมหุ่นยนต์สามารถถูกสร้างขึ้น, จำลองและสร้างออฟไลน์สำหรับแขนหุ่นยนต์เฉพาะและหุ่นยนต์ควบคุม อีกความหมายว่า, RoboDK เป็นซอฟต์แวร์การเขียนโปรแกรมออฟไลน์

เพื่อสร้างโปรแกรมหุ่นยนต์, มันจำเป็นต้องเลือกหุ่นยนต์, โหลดเครื่องมือหุ่นยนต์และใช้หนึ่งหรือมากกว่า CADเพื่อสร้างลักษณะโปรแกรมโดยการเพิ่มเป้าหมายหรือการใช้เครื่องมือเฉพาะ(เช่นการแปลงโปรแกรม CNC เพื่อโปรแกรมหุ่นยนต์)

หุ่นยนต์อุตสาหกรรมถูกใช้อย่างกว้างขวางใน libraryหุ่นยนต์อุตสาหกรรมได้ถูกจำลองบน RoboDK ในวิธีเดียวกันที่เราปฏิบัติโดยการใช้หุ่นยนต์ควบคุมเฉพาะของผู้ขาย, รวมทั้งการจำกัดแกน, ความรู้สึกของเคลื่อนที่และการเชื่อมต่อแกน

Robot Programs - ภาพ 1

ในส่วนนี้แสดงว่าโปรแกรมหุ่นยนต์สามารถถูก, จำลองและสร้างหุ่นยนต์ควบคุมโดยการใช้ภาพเป็นตัวประสานกับผู้ใช้ RoboDK (GUI)

การเขียนโปรแกรมออฟไลน์

การเขียนโปรแกรมออฟไลน์ (หรือการเขียนโปรแกรมออฟไลน์) หมายความว่าการเขียนโปรแกรมภายนอกการผลิตโดยสิ่งรอบข้าง การเขียนโปรแกรมออฟไลน์กำจัดการผลิตให้หยุดทำงานโดยสาเหตุจากการเขียนโปรแกรมชั้นร้านค้า (การเขียนโปรแกรมโดยการใช้การสอน pendant) การจำลองและการเขียนโปรแกรมออฟไลน์อนุญาตให้ศึกษาหลายสถานการณ์ของเซลล์งานก่อนการตั้งค่าการผลิตเซลล์ทำงานการความผิดพลาดถูกทำได้โดยทั่วไปในการออกแบบเซลล์งานสามารถถูกคาดการณ์ตามเวลา

การเขียนโปรแกรมออฟไลน์เป็นทางเลือกที่ดีที่สุดเพื่อเพิ่มการกลับมาลงทุนสำหรับระบบหุ่นยนต์และจำเป็นต้องจำลองเครื่องมืออย่างเหมาะสม เวลาสำหรับการนำมาใช้ของโปรแกรมใหม่สามารถถูกตัดจากอาทิตย์เพื่อเป็นวันเดียว, เพื่อทำให้ระบบหุ่นดำเนินการผลิตระยะสั้น

การสร้างโปรแกรม

แบบจำลองสามารถทำให้สำเร็จโดยการเพิ่มลำดับของคำแนะนำในโปรแกรม แต่ละคำแนะนำเสนอโค้ดเฉพาะสำหรับตัวควบคุมเฉพาะ, อย่างไรก็ตาม, RoboDK เสนอการใช้ภาพเป็นตัวประสานกับผู้ใช้ (GUI) เพื่อทำการสร้างโปรแกรมอย่างง่ายดาย, โดยทั่วไปแล้ว, ถ้าไม่มีความจำเป็นในการเขียนโค้ดโค้ดเฉพาะเพื่อตัวควบคุมหุ่นยนต์จะเป็นการถูกสร้างอย่างอัตโนมัติเมื่อโปรแกรมได้ถูกสร้างขึ้น

เพื่อสร้างโปรแกรมว่างใหม่โดยการใช้ภาพเป็นตัวประสานกับผู้ใช้RoboDK:

1.เลือกProgram➔Robot Programs - ภาพ 2 Add Program     
โดยทางเลือกหนึ่ง , เลือกปุ่มที่ตรงกันในแถบเครื่องมือ

2.เลือก Tools➔Rename item… (F2)เพื่อเปลี่ยนชื่อโปรแกรม

การกระทำนี้จะสร้างโปรแกรมว่างและอนุญาตให้เพิ่มคำแนะนำใหม่โดยการคลิกขวาที่โปรแกรมหรือการเลือกคำแนะนำจากเมนูโปรแกรมProgram menuในส่วนถัดไปProgram Instructions จัดหาข้อมูลที่เหมาะสมเกี่ยวกับการเพิ่มคำแนะนำ

Robot Programs - ภาพ 3

คำแนะนำโปรแกรม

มันยังเป็นไปได้ที่จะเปิดคำแนะนำใหม่โดยการคลิกขวาที่โปรแกรมหรือจาก Program menu, โดยแสดงในส่วนก่อนหน้านี้

ในส่วนนี้อธิบายคำแนะนำซึ่งถูกสนับสนุนโดย RoboDK การใช้ภาพเป็นตัวประสานกับผู้ใช้สำหรับการเขียนโปรแกรมหุ่นยนต์ออฟไลน์

Joint Move

เลือกProgram➔Robot Programs - ภาพ 4 Move Joint Instruction เพิ่มเพิ่มคำแนะนำlinear movement ใหม่ อีกทางเลือกหนึ่ง, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ

เว้นแต่เป้าหมายถูกเลือกโดยก่อนเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนที่จะสร้างเป้าหมายใหม่และมันจะถูกเชื่อมต่อ ถ้าเป้าหมายที่ถูกย้ายการเคลื่อนที่จะถูกดัดแปลง

ถ้าคำแนะนำแรกนี้ซึ่งถูกเพิ่มลงในโปรแกรม, คำแนะนำที่มากกว่านั้นจะถูกเพิ่มก่อนคำแนะนำการเคลื่อนที่: Reference Frame selection และTool Frame selection จะทำให้แน่ใจว่าเมื่อโปรแกรมมาถึงคำแนะนำการเคลื่อนที่หุ่นยนต์กำลังใช้การอ้างอิงเหมือนกันและใช้หน้าต่างเครื่องมือที่เคยใช้สร้างเป้าหมายใหม่นี้

Robot Programs - ภาพ 5

การเคลื่อนที่เส้นตรง

เลือกProgram➔Robot Programs - ภาพ 6 Move Linear Instruction เพื่อเพิ่มคำแนะนำการเคลื่อนที่เส้นตรง โดยอีกทางเลือก, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ

เว้นแต่เป้าหมายถูกเลือกก่อนการเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนที่จะสร้างเป้าหมายใหม่และจะถูกเชื่อมต่อ ถ้าเป้าหมายถูกย้ายและการเคลื่อนที่ถูกดัดแปลง

Joint Moves และ Linear Moves แสดงในรูปแบบเดียวกันและสามารถสลับจากชนิดหนึ่งไปอีกชนิดหนึ่ง

เหมือนกับคำแนะนำ Joint Move, ถ้าเป็นคำสั่งแรกซึ่งถูกเพิ่มในโปรแกรม, มากกว่าสองคำแนะนำจะถูกเพิ่มก่อนคำแนะนำการเคลื่อนที่:Reference Frame selection และ Tool Frame selection.

ตรงกันข้ามกับ Joint Move, การเคลื่อนที่เส้นตรงเหมาะสมสำหรับหุ่นยนต์ลักษณะเฉพาะและการจำกัดแกน ดังตัวอย่าง, หุ่นยนต์ 6แกน ไม่สามารถข้ามความเฉพาะโดยการเคลื่อนที่เส้นตรง ตามรูปดังต่อไปนี้ที่แสดงในตัวอย่างโดยกล่าวว่า Joint5 ใกล้เกินไปที่เป็นความเฉพาะตัว(0 องศา) […] พิจารณาJointแทน ตามที่แสดงในรูปดังต่อไปนี้

Robot Programs - ภาพ 7

ถ้าการเคลื่อนที่เส้นตรงไม่ได้จำเป็นต่อการบังคับ, คลิกขวาที่คำแนะนำเคลื่อนที่และเปลี่ยนคำสั่งJoint

Robot Programs - ภาพ 8

อีกทางเลือกหนึ่ง, เป้าหมาย,TCP หรือตำแหน่งของหน้าต่างอ้างอิงจะต้องถูกกำหนดเพื่อหลีกเลี่ยงลักษณะเฉพาะตัว

เลือกProgram➔Robot Programs - ภาพ 9 Set Reference Frame Instruction เพื่อใช้หน้าต่างอ้างอิงเฉพาะ จะเป็นการอัพเดทในหน้าต่างอ้างอิงที่ให้มาบนตัวควบคุมสำหรับคำแนะนำการเคลื่อนที่ต่อไปนี้ และจะเปลี่ยนหน้าต่างอ้างอิงActiveของหุ่นยนต์ใน RoboDK สำหรับเพื่อการจำลอง มันหมายความว่าคำแนะนำการเคลื่อนที่จำเป็นเป้าหมายเฉพาะ (เป้าหมายคาร์ทีเซียน) จะถูกสร้างกับการตั้งค่าหน้าต่างอ้างอิงสุดท้าย

หน้าต่างอ้างอิงเป็นตัวแปรที่รู้จักกันในชื่อ Work Object (หุ่นยนต์ ABB), UFRAME (หุ่นยนต์ Fanuc), FRAME (สำหรับหุ่นยนต์ Motoman) oหรือ $BASE (สำหรับหุ่นยนต์ KUKA)

Robot Programs - ภาพ 10

ตั้งค่าหน้าต่างอ้างอิง

เลือก Program➔Set Reference Frame Instruction เพื่อใช้หน้าต่างอ้างอิงที่ระบุ การทำเช่นนี้จะอัปเดตหน้าต่างอ้างอิงบนตัวควบคุมสำหรับคำสั่งเคลื่อนที่ถัดไป และจะเปลี่ยนหน้าต่างอ้างอิงที่ใช้งานอยู่ (Active reference frame) ของหุ่นยนต์ใน RoboDK เพื่อวัตถุประสงค์ในการจำลอง นั่นหมายความว่าคำสั่งเคลื่อนที่ไปยังเป้าหมายที่ระบุ (เป้าหมายแบบคาร์ทีเซียน) จะอ้างอิงจากหน้าต่างอ้างอิงล่าสุดที่ตั้งค่าไว้

หน้าต่างอ้างอิงเป็นตัวแปรที่รู้จักกันในชื่อ Work Object (หุ่นยนต์ ABB), UFRAME (หุ่นยนต์ Fanuc), FRAME (หุ่นยนต์ Motoman) หรือ $BASE (หุ่นยนต์ KUKA)

Robot Programs - ภาพ 11

ตั้งค่าหน้าต่างเครื่องมือ

เลือกProgram➔Robot Programs - ภาพ 12 Set Tool Frame Instruction เพื่อใช้หน้าต่างเครื่องมือเฉพาะ (TCP) จะอัพเดทหน้าต่างเครื่องมือที่ให้มาบนโปรแกรมสำหรับคำแนะนำการเคลื่อนที่ดังต่อไปนี้และจะเปลี่ยนหน้าต่างเครื่องมือActiveของหุ่นยนต์ใน RoboDK สำหรับเพื่อการจำลอง นั้นหมายความว่าคำแนะนำการเคลื่อนที่จะทำให้เป้าหมายเฉพาะ (เป้าหมายคาร์ทีเซียน) จะถูกทำด้วยการตั้งค่าหน้าต่างเครื่องมือสุดท้าย

หน้าต่างอ้างอิงรู้จักกันในชื่อToolData (หุ่นยนต์ABB), UTOOL (หุ่นยนต์Fanuc), TOOL (หุ่นยนต์Motoman) or $TOOL (หุ่นยนต์KUKA)

Robot Programs - ภาพ 13

การเคลื่อนที่เป็นวงกลม

เลือกProgram➔Robot Programs - ภาพ 14 Move Circular Instruction เพื่อเพิ่มคำแนะนำการเคลื่อนที่เป็นวงกลม อีกทางเลือกหนึ่ง, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ

ยกเว้นแต่สองเป้าหมายที่ถูกเลือกก่อนการเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนย้ายจะไม่สร้างเป้าหมาย, มันจำเป็นต้องเพิ่มมากกว่าสองเป้าหมายโดยแยกจากกันและเชื่อมต่อจากการคำแนะนำเคลื่อนที่เป็นวงกลม, ตามที่แสดงภายในภาพถัดไป

Robot Programs - ภาพ 15

เส้นทางเป็นวงกลมเป็นมุมที่สร้างขึ้นจากจุดที่หุ่นยนต์ถูกตั้งขึ้นโดยผ่านการจุดเป็นวงกลมแรก (เป้าหมาย1 ถูกเชื่อมต่อ) และการจบ ณ จุดสุดท้าย (เป้าหมาย2 ถูกเชื่อมต่อ)

ตั้งค่าความเร็ว

เลือกProgram➔Robot Programs - ภาพ 16 Set Speed Instructionเพื่อเพิ่มคำแนะนำใหม่ซึ่งเปลี่ยนความเร็ว และ/หรือความเร่ง มันยังสามารถทำความเร็วและความเร่งให้เฉพาะเจาะลงในการร่วมพื้นที่กันและในพื้นที่คาร์ทีเซียน

ทำให้ใช้งานในกรณีที่เหมือนกันได้เพื่อกำหนดความเร็วเฉพาะ และ/หรือ ในโปรแกรม ความเร็วหุ่นยนต์จะถูกปรับใช้จากเวลาที่คำแนะนำถูกใช้งาน

ความเร็วหุ่นยนต์สามารถถูกเปลี่ยนได้ในเมนูพารามิเตอร์: ดับเบิ้ลคลิกที่หุ่นยนต์, จากนั้น, เลือกค่าพารามิเตอร์

Robot Programs - ภาพ 17

แสดงข้อความ

เลือกProgram➔Robot Programs - ภาพ 18 Show Message Instructionเพื่อเพิ่มคำแนะนำใหม่ซึ่งจะแสดงในข้อความบนการสอน pendant

Robot Programs - ภาพ 19

พัก

เลือกProgram➔Robot Programs - ภาพ 20 Pause Instructionเพื่อเพิ่มคำแนะนำใหม่ซึ่งจะพักการดำเนินการโปรแกรมสำหรับบางเลาจะหยุดโปรแกรมจนกระทั่งตัวปฏิบัติการต้องการเริ่มโปรแกรมใหม่อีกครั้ง

Robot Programs - ภาพ 21

การเรียกโปรแกรม

เลือกProgram➔Robot Programs - ภาพ 22 Program Call Instructionเพื่อเพิ่มการเรียกโปรแกรมย่อยจากโปรแกรมล่าสุด

โดยเริ่มต้น, การปิดกันการเรียกนี้เพื่อโปรแกรมเฉพาะแต่อย่างไรก็ตาม, เป็นไปได้ที่จะสลับInsert Codeเพื่อเข้าสู่โค้ดเฉพาะ ณ พื้นที่ของคำแนะนำนี้ อาจจะเป็นประโยชน์สำหรับแอพพลิเคชั่นเฉพาะและตัวควบคุมเฉพาะ

Robot Programs - ภาพ 23Robot Programs - ภาพ 24

สลับจากProgram Callเป็นStart Threadเพื่อกระตุ้นการเรียกไม่ปิดกันถึงโปรแกรมส่วนย่อย ในกรณีนี้, ตัวควบคุมจะเริ่มต้นใหม่ ในกรณีนี้มีเพียงตัวควบคุมเท่านั้นที่ใช้งานได้และงานเฉพาะสำหรับระบบปฏิบัติการเฉพาะเท่านั้น

ตั้งค่า/รอ IO

เลือกProgram➔Robot Programs - ภาพ 25 Set or Wait I/O Instructionเพื่อเปลี่ยนสถานะของผลลัพธ์ดิจิตอล (DO) โดยค่าเริ่มต้น, คำแนะนำนี้จะถูกตั้งค่าเป็นSet Digital Outputคำแนะนำนี้อนุญาตให้รอสำหรับผลลัพธ์ดิจิตอล(DI) เพื่อสลับเป็นสถานะเฉพาะ

ชื่อ IO สามารถเป็นตัวเลขหรือค่าอักษรถ้ามันถูกตั้งชื่อเป็นตัวแปรค่า IO Value สามารถเป็นตัวเลข (0 สำหรับผิดและ1 สำหรับถูก) หรือค่าข้อความถ้าถูกตั้งชื่อเป็นสถานะ

Robot Programs - ภาพ 26

ตั้งค่าเพื่อรอการป้อนดิจิตอลเพื่อหยุดการดำเนินการโปรแกรมจนกระทั่งสิ่งที่ป้อนเฉพาะเปลี่ยนค่าเฉพาะ ยิ่งไปกว่านั้น, หุ่นยนต์ควบคุมส่วนใหญ่สนับสนุนการหน่วยเวลาเพื่อเพิ่มความผิดพลาด ถ้าการรอเวลาเกินกว่าค่าเฉพาะ ตรวจสอบทางเลือกเวลาออก (ms) เพื่อเปิดใช้งานลักษณะนี้

Robot Programs - ภาพ 27

หลังจากการป้อนดิจิตอลได้ถูกจำลองขึ้นและผลลัพธ์ดิจิตอลจะสร้างตัวแปรฐานใหม่ เพื่อตรวจสอบสถานะของตัวแปรเหล่านี้ คุณสามารถคลิกขวาที่ฐานและเลือกฐานพารามิเตอร์ อีกทั้งยังสามารถอ่านและดัดแปลงตัวแปรเหล่านี้ผ่าน API

ตั้งค่าค่าล้อมรอบ

เลือก Program➔Robot Programs - ภาพ 28 Set Rounding Instructionเพื่อเลือกล้อมรอบความแม่นยำ แม่นยำการล้อมรอบถูกใช้เพื่อทำให้ขอบเรียบระหว่างการเคลื่อนไหวต่อเนื่อง การเปลี่ยนแปลงนี้มีผลกระทบจากเหตุการณ์ที่ถูกดำเนินการภายในโปรแกรม (เหมือนกับทุกคำแนะนำอื่น), ดังนั้นจึงปกติที่จะตั้งค่าเหล่านี้ ณ การเริ่มของโปรแกรม

ปราศจากคำแนะการล้อมรอบ, หุ่นยนต์จะไปถึงด้วยความเร็ว 0 ณ จุดจบของแต่ละการเคลื่อนไหว (เว้นแต่การเคลื่อนไหวต่อไปถูกสัมผัสด้วยการเคลื่อนไหวที่แล้ว)จะเป็นการกระตุ้นความเร่งสูงและการเปลี่ยนแปลงความรวดเร็วเพื่อให้แน่ใจว่าได้ความแม่นยำที่ดีที่สุดของแต่ละการเคลื่อนที่

ค่านี้ยังรู้จักกันในชื่อ Blending radius (หุ่นยนต์ Universal), ZoneData (หุ่นยนต์ABB), CNT/FINE (หุ่นยนต์Fanuc), Cornering (หุ่นยนต์Mecademic) or $APO.CDIS/$APO.CPTP/Advance (หุ่นยนต์KUKA)

Robot Programs - ภาพ 29

RoboDK การทดสอบ path accuracy เพื่อให้มีการเข้าใจที่ดีกว่าของผลกระทบค่าล้อมรอบที่แตกต่างกันด้วยระบบการวัด

เหตุการณ์จำลอง

เลือกProgram➔Robot Programs - ภาพ 30 Simulation Event Instructionเพื่อกระตุ้นเหตุการณ์จำลองเฉพาะเหตุการณ์จำลองไม่มีผลกระทบในการสร้างโค้ดและถูกใช้เพื่อกระตุ้นเหตุการณ์เฉพาะเท่านั้น การจำลองเหตุการณ์ซึ่งใช้ภาพเป็นตัวประสานกับผู้ใช้:

การแนบหรือการถอดสิ่งของจากเครื่องมือหุ่นยนต์

การแสดงหรือซ่อนสิ่งของหรือเครื่องมือ

การเปลี่ยนตำแหน่งของสิ่งของและตำแหน่งอ้างอิง

Robot Programs - ภาพ 31

ดังตัวอย่าง, ถ้าหุ่นยนต์ทำการย้ายตำแหน่งเฉพาะเพื่อคว้าจับสิ่งของ เราสามารถตั้งค่าเหตุการณ์Attach objectเพื่อย้ายสิ่งของด้วยกับจากนั้น, หลังจากหุ่นยนต์ไม่มีการเคลื่อนย้ายและมันพร้อมที่จะทิ้งสิ่งของ เราสามารถตั้งค่าเหตุการณ์ Detach objectเพื่อทิ้งสิ่งของเครื่องมือที่ถูกคว้าจับ

Robot Programs - ภาพ 32

ยึดวัตถุ

เหตุการณ์จำลองยึดวัตถุช่วยให้คุณยึดวัตถุเข้ากับเครื่องมือเพื่อจำลองการหยิบ (pick)

เมื่อมีการสั่งการยึดวัตถุเข้ากับเครื่องมือ วัตถุที่ใกล้เครื่องมือที่เลือกมากที่สุดจะถูกยึด โดยค่าเริ่มต้นจะใช้ระยะยอมรับ 200 มม. เพื่อละเว้นวัตถุที่อยู่ไกลกว่าระยะนี้

Robot Programs - ภาพ 33

หากคุณไม่ระบุระยะยอมรับ ค่าเริ่มต้นส่วนกลางจะถูกใช้ (คุณสามารถเปลี่ยนค่าเริ่มต้นส่วนกลางได้ที่ Tools➔Options➔Maximum distance to attach an object to a robot tool) นอกจากนี้ โดยค่าเริ่มต้น ระยะทางจะถูกตรวจสอบจากตำแหน่ง TCP ไปยังจุดอ้างอิงของวัตถุ หรืออีกทางหนึ่งคือสามารถใช้ระยะทางระหว่าง TCP และรูปทรงของวัตถุได้โดยเลือก Check shortest distance between TCP and the object shape

ปล่อยวัตถุ

เหตุการณ์จำลองปล่อยวัตถุช่วยให้คุณปล่อยวัตถุจากเครื่องมือไปยังวัตถุหรือระบบพิกัดอื่น

คุณควรเลือกเครื่องมือที่ต้องการปล่อยวัตถุออก และระบบพิกัดหรือวัตถุที่ต้องการให้วัตถุนั้นถูกยึดหลังจากปล่อย

เหตุการณ์จำลองปล่อยวัตถุช่วยให้คุณจำลองการวาง/ปล่อย (place/drop) ในงานหยิบและวาง (pick and place) ได้ (ทำงานตรงข้ามกับเหตุการณ์ยึดวัตถุ)

ตัวอย่างเช่น หากหุ่นยนต์เคลื่อนที่ไปยังตำแหน่งที่กำหนดเพื่อจับวัตถุ เราสามารถตั้งค่าเหตุการณ์ยึดวัตถุเพื่อให้วัตถุเคลื่อนที่ไปพร้อมกับหุ่นยนต์ได้ จากนั้นเมื่อหุ่นยนต์เคลื่อนที่เสร็จและพร้อมที่จะปล่อยวัตถุที่จับไว้ คุณสามารถสั่งเหตุการณ์ปล่อยวัตถุเพื่อให้เครื่องมือของหุ่นยนต์ปล่อยวัตถุที่จับอยู่ได้

Robot Programs - ภาพ 34

แสดงวัตถุหรือเครื่องมือ

เหตุการณ์แสดงวัตถุหรือเครื่องมือช่วยให้คุณแสดงวัตถุ เครื่องมือ หรือหุ่นยนต์อย่างน้อยหนึ่งรายการในสภาพแวดล้อมจำลอง

คุณสามารถเลือกได้หลายรายการโดยกดปุ่ม Ctrl ค้างไว้

Robot Programs - ภาพ 35

ซ่อนวัตถุหรือเครื่องมือ

เหตุการณ์ซ่อนวัตถุหรือเครื่องมือช่วยให้คุณซ่อนวัตถุหรือเครื่องมืออย่างน้อยหนึ่งรายการในการจำลอง

คุณสามารถเลือกได้หลายรายการโดยกดปุ่ม Ctrl ค้างไว้

Robot Programs - ภาพ 36

ตั้งค่าตำแหน่งสัมบูรณ์

Set object position (absolute) ช่วยให้คุณอัปเดตตำแหน่งของวัตถุทุกชิ้นที่เลือกเมื่อเหตุการณ์นี้ถูกสั่งการ จุดอ้างอิงหลัก (parent) ที่แต่ละไอเทมยึดอยู่จะไม่ถูกเปลี่ยนแปลง มีเพียงตำแหน่งของแต่ละวัตถุเท่านั้นที่จะถูกอัปเดต

คุณสามารถเลือกได้หลายรายการโดยกดปุ่ม Ctrl ค้างไว้ ตำแหน่งปัจจุบันของไอเทมจะถูกบันทึกเมื่อคุณกด OK

Robot Programs - ภาพ 37

ตั้งค่าตำแหน่งสัมพัทธ์

Set object position (relative) ช่วยให้คุณอัปเดตตำแหน่งและจุดอ้างอิงหลักของวัตถุทุกชิ้นที่เลือกเมื่อเหตุการณ์นี้ถูกสั่งการ จุดอ้างอิงหลักที่แต่ละไอเทมยึดอยู่จะถูกเปลี่ยนแปลงด้วย และตำแหน่งของแต่ละวัตถุก็จะถูกอัปเดตด้วยเช่นกัน

คุณสามารถเลือกได้หลายรายการโดยกดปุ่ม Ctrl ค้างไว้ ตำแหน่งปัจจุบันของไอเทมและไอเทมหลักที่ยึดอยู่จะถูกบันทึกเมื่อคุณกด OK

ความแตกต่างระหว่างคำสั่งนี้กับคำสั่งตำแหน่งสัมบูรณ์คือ คำสั่งนี้จะอัปเดตไอเทมหลักที่แต่ละวัตถุยึดอยู่ด้วย

Robot Programs - ภาพ 38

ตั้งค่าหุ่นยนต์กลับตำแหน่งโฮม

เหตุการณ์ตั้งค่าข้อต่อกลับโฮมจะสั่งให้หุ่นยนต์หรือกลไกที่เลือกเคลื่อนที่ไปยังตำแหน่งข้อต่อ "โฮม" ที่กำหนดไว้ทันที (การเคลื่อนที่นี้จะไม่ถูกจำลองตามเวลา)

มีประโยชน์เมื่อคุณต้องการรีเซ็ตการจำลองและจัดวางสายพานลำเลียงกลับไปยังตำแหน่งเริ่มต้น

คุณสามารถเลือกได้หลายรายการโดยกดปุ่ม Ctrl ค้างไว้

Robot Programs - ภาพ 39

เหตุการณ์เคลื่อนย้ายสายพานลำเลียง

เหตุการณ์เคลื่อนย้ายสายพานลำเลียงจำลองการเคลื่อนย้ายสายพานลำเลียงเป็นระยะทางที่กำหนด โดยจำลองผลของการเคลื่อนที่นั้นตามเวลา

มีประโยชน์เมื่อคุณต้องการจำลองการเพิ่มระยะทางเฉพาะเพื่อประมวลผลวัตถุบนสายพานลำเลียง เมื่อสายพานเคลื่อนที่ไปเป็นระยะทางที่กำหนด

Robot Programs - ภาพ 40

สร้างวัตถุ

คำสั่งสร้างวัตถุช่วยให้คุณจำลองตัวป้อนวัตถุ (feeder) โดยการสร้างวัตถุใหม่ในสภาพแวดล้อมจำลอง

คุณควรเลือกวัตถุต้นแบบที่จะสร้าง และจุดอ้างอิงหลักที่ไอเทมนั้นจะถูกยึดไว้

การกระทำนี้มีประโยชน์สำหรับการสร้างวัตถุใหม่บนสายพานลำเลียง

Robot Programs - ภาพ 41

ลบวัตถุ

คำสั่งลบวัตถุจะลบวัตถุออกจากสภาพแวดล้อมจำลอง

คุณควรเลือกวัตถุต้นแบบที่ต้องการลบ เมื่อเหตุการณ์นี้ถูกสั่งการ วัตถุใด ๆ ที่มีชื่อและรูปทรงตรงกับวัตถุนั้นจะถูกลบ วัตถุต้นแบบที่เลือกไว้เองและวัตถุที่ถูกล็อกจะไม่ถูกลบ

คำสั่งนี้ช่วยจัดการล้างวัตถุจำนวนมากที่ถูกสร้างขึ้นโดยคำสั่งสร้างวัตถุ หลังจากการจำลองเสร็จสิ้น

Robot Programs - ภาพ 42

รอวัตถุ

คำสั่งรอวัตถุจะรอให้วัตถุสัมผัสกับวัตถุอื่นเพื่อสั่งการทำงานที่กำหนด

เหตุการณ์นี้มีประโยชน์เมื่อคุณต้องการสั่งการทำงานโดยอิงจากการสัมผัสกันระหว่างวัตถุ มักวางคำสั่งนี้ไว้เดี่ยว ๆ ในโปรแกรมที่ทำงานเป็นลูป ซึ่งจะทำงานที่กำหนดเมื่อวัตถุสัมผัสกับเซนเซอร์

Robot Programs - ภาพ 43

การทำงานที่คุณสามารถสั่งได้เมื่อวัตถุสัมผัสกับเซนเซอร์มีดังนี้:

1.หยุดหุ่นยนต์: คุณควรเลือกหุ่นยนต์หรือกลไกที่ต้องการให้หยุด

2.ลบวัตถุ: วัตถุจะถูกลบออกจากสถานี

3.รอวัตถุเท่านั้น (ตัวอย่างเช่น สามารถใช้เพื่อสั่งให้หุ่นยนต์หยิบวัตถุ)

4.ย้ายวัตถุไปยังระบบพิกัดอื่น ตัวอย่างเช่น การยึดวัตถุจากสายพานลำเลียงหนึ่งไปยังอีกสายพานหนึ่ง

Robot Programs - ภาพ 44

จำลองโปรแกรม

ดับเบิ้ลคลิกโปรแกรมRobot Programs - ภาพ 45เพื่อเริ่มต้นการจำลองโดยทางเลือก:

1.คลิกขวาที่โปแกรม

2.เลือกRun

แถบการจำลองจะปรากฏ ณ ตรงกลางถ้าโปรแกรมถูกดับเบิ้ลคลิก มันเป็นไปได้ที่เลื่อนแบบจำลองเพื่อย้ายการจำลองไปข้างหน้าหรือข้างหลัง โดยการใช้แถบการจำลอง A

Robot Programs - ภาพ 46

RoboDK จำลอง 5 ครั้งได้เร็วกว่าเวลาจริงโดยเริ่มต้น นั้นหมายความความว่าถ้าโปรแกรมใช้เวลา 30 วินาทีเพื่อดำเนินการ มันจะต้องใช้เวลาจำลองใน30/5=6 วินาทีการเพิ่มความเร็วการจำลองเพิ่มอัตราส่วนได้ถึง100 การจำลองธรรมดาและความรวดเร็วสามารถถูกเปลี่ยนได้ใน Tools➔Options➔Motion menu.

Robot Programs - ภาพ 49

สร้างโปรแกรม

ทำตามขั้นตอนต่อไปนี้เพื่อสร้างโปรแกรมหุ่นยนต์ที่จำเป็นต้องทีหุ่นยนต์ควบคุมFollow these steps to generate the robot program required by (ผู้ขายควบคุมหุ่นยนต์เฉพาะ):

1.เลือกProgram

2.เลือกProgramGenerate Program(s) (F6)

อีกทางเลือกหนึ่ง, คลิกขวาที่โปรแกรมและเลือกGenerate robot program (F6)เพื่อสร้างโปรแกรม

Robot Programs - ภาพ 50

หลายโปรแกรมสามารถถูกเลือกเพื่อสร้างมากกว่าหนึ่งโปรแกรมในเวลาเดียวกัน กดค้าง Ctrl เลือกมากกว่าหนึ่งโปรแกรม การเลือกGenerate Program(s)… (Shift+F6)จะเปิดวินโดว์ให้ถามหาพื้นที่จะบันทึกโปรแกรม

เคลื่อนย้ายโปรแกรม

เป็นไปที่จะเคลื่อนย้ายโปรแกรมจากคอมพิวเตอร์ตรงไปสู่หุ่นยนต์โดยตรงทางเลือกนี้จะส่งโปรแกรมหุ่นยนต์ผ่านโปรโตคอลFTP หรือโปโตคอลเฉพาะ, เช่นการใช้ซ็อตเกตการส่งข้อความหรือการเชื่อมต่อเป็นชุด

ขั้นแรก, มันจำเป็นจ้องเข้าสู่ IP หุ่นยนต์และการตั้งค่าFTP ในเมนูการเชื่อมต่อหุ่นยนต์:

1.คลิกขวาที่หุ่นยนต์

2.เลือกConnect to robot… หน้าต่างจะปรากฏด้านบนซ้าย

3.เข้าสู่ IP หุ่นยนต์

4.เลือกMore optionsเพื่อเข้าสู่การตั้งค่า FTP และหนังสือรับรอง FTP (ถ้าจำเป็น)

Robot Programs - ภาพ 51

เมื่อการตั้งค่าเครือข่ายได้ถูกจัดหาและหุ่นยนต์ได้ถูกเชื่อมต่อ, ตามขั้นตอนต่อไปนี้เพื่อเคลื่อนย้ายโปรแกรมถึงหุ่นยนต์โดยตรงจาก RoboDK:

1.คลิกขวาที่โปรแกรม

2.เลือกSend program to robot (Ctrl+F6)

วินโดว์ป็อปอัพจะแสดงผลสำเร็จหรือสถานะล้มเหลว

เลือกหน่วยประมวลผล

บทสนทนาจากแบบจำลอง RoboDK เพื่อโปรแกรมหุ่นยนต์เฉพาะถูกทำให้เสร็จโดยหน่วยประมวลผล หน่วยประมวลผลกำหนดโปรแกรมหุ่นยนต์ควรจะถูกสร้างสำหรับหุ่นยนต์เฉพาะ หุ่นยนต์แต่ละตัวมีหน่วยประมวลผล เฉพาะ/เริ่มต้น โดยค่าเริ่มต้นใน RoboDK

เพื่อเลือกหน่วยประมวลผลเฉพาะสำหรับหุ่นยนต์:

1.คลิกขวาที่หุ่นยนต์หรือโปรแกรม

2.เลือกSelect Post Processor

3.เลือกหน่วยประมวลผลจากรายการ

4.เลือก OK

Robot Programs - ภาพ 52Robot Programs - ภาพ 53

การเปลี่ยนแปลงนี้ถูกใช้ตอนนี้และโปรแกรมสามารถสร้างอีกครั้งเพื่อได้เห็นผลลัพธ์.

หน่วยประมวลผลในRoboDK มีความยึดหยุ่นในการสร้างโปรแกรมหุ่นยนต์ให้สำเร็จสำหรับความต้องการพิเศษ RoboDK มีหน่วยประมวลผลสำหรับยี่ห้อหุ่นยนต์ส่วนใหญ่ หน่วยประมวลผลสามารถถูกดัดแปลงได้อย่างง่ายดาย ข้อมูลเพิ่มเติมเกี่ยวกับหน่วยประมวลผลในdedicated section for post processors

การตั้งค่าการสร้างโปรแกรม

คุณสามารถปรับแต่งวิธีการสร้างโปรแกรมสำหรับหุ่นยนต์ของคุณได้

ทำตามขั้นตอนต่อไปนี้เพื่อดูการตั้งค่าการสร้างโปรแกรม:

1.เลือก Tools➔Options.

2.เลือกแท็บ Program

Robot Programs - ภาพ 54

เมนูนี้ช่วยให้คุณปรับแต่งการสร้างโปรแกรมได้ เช่น:

1.แบ่งการเคลื่อนที่แบบข้อต่อออกเป็นขั้นย่อย ๆ

2.แบ่งการเคลื่อนที่แบบเส้นตรงออกเป็นขั้นย่อย ๆ

3.แปลงการเคลื่อนที่แบบวงกลมเป็นการเคลื่อนที่แบบเส้นตรงขนาดเล็ก

4.แบ่งโปรแกรมหุ่นยนต์ขนาดใหญ่ออกเป็นโปรแกรมย่อย

5.ระบุตำแหน่งเริ่มต้นสำหรับบันทึกโปรแกรมหุ่นยนต์

6.ระบุตัวแก้ไขข้อความเริ่มต้นสำหรับโปรแกรมหุ่นยนต์

แปลงการเคลื่อนที่วงกลมเป็นเส้นตรง

คุณสามารถแปลงการเคลื่อนที่แบบวงกลมเป็นการเคลื่อนที่แบบเส้นตรงขนาดเล็กได้อย่างง่ายดายเมื่อสร้างโปรแกรมสำหรับหุ่นยนต์ ซึ่งมีประโยชน์เมื่อตัวควบคุมไม่รองรับการเคลื่อนที่แบบส่วนโค้ง

ทำตามขั้นตอนต่อไปนี้เพื่อสร้างส่วนโค้งเป็นการเคลื่อนที่แบบเส้นตรงขนาดเล็ก:

1.เลือก Tools➔Options.

2.เลือกแท็บ Program

3.เลือก Avoid arcs

4.ระบุ Maximum arc size (mm) ซึ่งกำหนดขนาดของการเคลื่อนที่แบบเส้นตรงตามแนวส่วนโค้ง

Robot Programs - ภาพ 55

แบ่งโปรแกรมหุ่นยนต์ขนาดใหญ่

โปรแกรมหุ่นยนต์ขนาดใหญ่อาจเกินขีดจำกัดของตัวควบคุมหุ่นยนต์ของคุณ ขีดจำกัดของตัวควบคุมอาจเป็นขนาดไฟล์หรือจำนวนบรรทัดต่อโปรแกรม ตัวอย่างเช่น โปรแกรมหุ่นยนต์สำหรับงาน robot machining หรือการพิมพ์ 3 มิติอาจมีโค้ดหลายพันบรรทัด

ในกรณีนี้ ควรแบ่งโปรแกรมที่ยาวเช่นนี้ออกเป็นโปรแกรมย่อยที่เล็กลง รวมถึงโปรแกรมหลักหนึ่งโปรแกรมที่เรียกใช้โปรแกรมย่อยเหล่านั้น

ทำตามขั้นตอนต่อไปนี้เพื่อแบ่งโปรแกรมยาวโดยอัตโนมัติ:

1.เลือก Tools➔Options➔Program.

2.เลือก Limit the maximum number of lines per program และระบุจำนวนบรรทัดสูงสุดต่อไฟล์ที่ต้องการสร้าง

Robot Programs - ภาพ 56

รวมโปรแกรมย่อยเข้าในโปรแกรมหลัก (Inline)

เมื่อคุณสร้างโปรแกรมที่เรียกใช้โปรแกรมย่อย RoboDK จะสร้างคำสั่งเรียกใช้โปรแกรมย่อยนั้นโดยอัตโนมัติ ในทางกลับกัน คุณสามารถปรับแต่งผลลัพธ์ของโปรแกรมเพื่อรวมเนื้อหาของโปรแกรมย่อยเข้าไปในโปรแกรมหลักโดยตรง เพื่อหลีกเลี่ยงการเรียกใช้โปรแกรมได้

ทำตามขั้นตอนต่อไปนี้เพื่อรวมโปรแกรมย่อยเข้าในโปรแกรมหลัก เพื่อหลีกเลี่ยงการเรียกใช้โปรแกรมออฟไลน์:

1.เลือก Tools➔Options.

2.เลือกแท็บ Program

3.เลือกตัวเลือก Inline subprograms

นับจากนี้ เมื่อคุณสร้างโปรแกรมที่มีโปรแกรมย่อยอยู่ เนื้อหาของโปรแกรมย่อยเหล่านี้จะถูกรวมเข้าไปในโปรแกรมแรก/โปรแกรมหลักโดยตรง

Robot Programs - ภาพ 57

หน่วยประมวลผล เทียบกับ ไดร์เวอร์

หน่วยประมวลผลและไดร์เวอร์หุ่นยนต์ใช้วิธีที่แตกต่างกันในการเคลื่อนที่หุ่นยนต์ หน่วยประมวลผลสามารถสร้างโปรแกรมแบบออฟไลน์ได้ ในขณะที่ไดร์เวอร์ช่วยให้สามารถสื่อสารกับหุ่นยนต์ได้แบบเรียลไทม์

หน่วยประมวลผล ใช้สำหรับการเขียนโปรแกรมออฟไลน์ และมีหน้าที่แปลงโปรแกรมหุ่นยนต์ของ RoboDK ให้เป็นภาษาโปรแกรมดั้งเดิมของตัวควบคุมหุ่นยนต์ที่เกี่ยวข้อง ตัวอย่างเช่น หน่วยประมวลผล ABB จะสร้างไฟล์ .mod สำหรับตัวควบคุม IRC5 หน่วยประมวลผลมักจะรวมถึงการอัปโหลดโปรแกรมไปยังตัวควบคุมหุ่นยนต์ ซึ่งมักทำผ่าน FTP ฟังก์ชันต่อไปนี้ของโปรแกรมจะถูกจัดการโดยหน่วยประมวลผล:

1.Generate Robot Program

2.Generate Robot Program as…

3.Send Program to Robot

4.Start on Robot (เมื่อใช้ร่วมกับไดร์เวอร์)

Robot Programs - ภาพ 58

ไดร์เวอร์หุ่นยนต์ ช่วยให้คุณควบคุมหุ่นยนต์จากคอมพิวเตอร์ได้จากระยะไกลผ่าน RoboDK ซึ่งช่วยให้คุณสามารถสั่งคำสั่งโปรแกรมจาก RoboDK ไปยังตัวควบคุมหุ่นยนต์ได้แบบเรียลไทม์ รวมถึงความสามารถในการเรียกใช้โปรแกรมระยะไกลบนตัวควบคุมด้วย ตัวอย่างเช่น ไดร์เวอร์ ABB จะส่งคำสั่งการเคลื่อนที่ผ่านการสื่อสารแบบซ็อกเก็ต ฟังก์ชันต่อไปนี้จะถูกจัดการโดยไดร์เวอร์:

1.เปิดใช้งานตัวเลือก Run on Robot จากนั้นดับเบิลคลิกเพื่อรันโปรแกรมบนหุ่นยนต์โดยใช้ไดร์เวอร์

2.Start on Robot (เมื่อใช้ร่วมกับหน่วยประมวลผล)

Robot Programs - ภาพ 59