RoboDK เป็นแบบจำลองที่ถูกโฟกัสโดยแอพพลิเคชั่นหุ่นยนต์อุตสาหกรรม หมายความว่าโปรแกรมหุ่นยนต์สามารถถูกสร้างขึ้น, จำลองและสร้างออฟไลน์สำหรับแขนหุ่นยนต์เฉพาะและหุ่นยนต์ควบคุม อีกความหมายว่า, RoboDK เป็นซอฟต์แวร์การเขียนโปรแกรมออฟไลน์
เพื่อสร้างโปรแกรมหุ่นยนต์, มันจำเป็นต้องเลือกหุ่นยนต์, โหลดเครื่องมือหุ่นยนต์และใช้หนึ่งหรือมากกว่า CAD เพื่อสร้างลักษณะโปรแกรมโดยการเพิ่มเป้าหมายหรือการใช้เครื่องมือเฉพาะ(เช่นการแปลงโปรแกรม CNC เพื่อโปรแกรมหุ่นยนต์)
หุ่นยนต์อุตสาหกรรมถูกใช้อย่างกว้างขวางในlibraryหุ่นยนต์อุตสาหกรรมได้ถูกจำลองบน RoboDK ในวิธีเดียวกันที่เราปฏิบัติโดยการใช้หุ่นยนต์ควบคุมเฉพาะของผู้ขาย, รวมทั้งการจำกัดแกน, ความรู้สึกของเคลื่อนที่และการเชื่อมต่อแกน
ในส่วนนี้แสดงว่าโปรแกรมหุ่นยนต์สามารถถูก, จำลองและสร้างหุ่นยนต์ควบคุมโดยการใช้ภาพเป็นตัวประสานกับผู้ใช้ RoboDK (GUI)
การเขียนโปรแกรมออฟไลน์ (หรือการเขียนโปรแกรมออฟไลน์) หมายความว่าการเขียนโปรแกรมภายนอกการผลิตโดยสิ่งรอบข้าง การเขียนโปรแกรมออฟไลน์กำจัดการผลิตให้หยุดทำงานโดยสาเหตุจากการเขียนโปรแกรมชั้นร้านค้า (การเขียนโปรแกรมโดยการใช้การสอน pendant) การจำลองและการเขียนโปรแกรมออฟไลน์อนุญาตให้ศึกษาหลายสถานการณ์ของเซลล์งานก่อนการตั้งค่าการผลิตเซลล์ทำงานการความผิดพลาดถูกทำได้โดยทั่วไปในการออกแบบเซลล์งานสามารถถูกคาดการณ์ตามเวลา
การเขียนโปรแกรมออฟไลน์เป็นทางเลือกที่ดีที่สุดเพื่อเพิ่มการกลับมาลงทุนสำหรับระบบหุ่นยนต์และจำเป็นต้องจำลองเครื่องมืออย่างเหมาะสม เวลาสำหรับการนำมาใช้ของโปรแกรมใหม่สามารถถูกตัดจากอาทิตย์เพื่อเป็นวันเดียว, เพื่อทำให้ระบบหุ่นดำเนินการผลิตระยะสั้น
แบบจำลองสามารถทำให้สำเร็จโดยการเพิ่มลำดับของคำแนะนำในโปรแกรม แต่ละคำแนะนำเสนอโค้ดเฉพาะสำหรับตัวควบคุมเฉพาะ, อย่างไรก็ตาม, RoboDK เสนอการใช้ภาพเป็นตัวประสานกับผู้ใช้ (GUI) เพื่อทำการสร้างโปรแกรมอย่างง่ายดาย, โดยทั่วไปแล้ว, ถ้าไม่มีความจำเป็นในการเขียนโค้ดโค้ดเฉพาะเพื่อตัวควบคุมหุ่นยนต์จะเป็นการถูกสร้างอย่างอัตโนมัติเมื่อโปรแกรมได้ถูกสร้างขึ้น
เพื่อสร้างโปรแกรมว่างใหม่โดยการใช้ภาพเป็นตัวประสานกับผู้ใช้RoboDK:
1.เลือกProgram➔ Add Program
โดยทางเลือกหนึ่ง , เลือกปุ่มที่ตรงกันในแถบเครื่องมือ
2.เลือก Tools➔Rename item… (F2)เพื่อเปลี่ยนชื่อโปรแกรม
การกระทำนี้จะสร้างโปรแกรมว่างและอนุญาตให้เพิ่มคำแนะนำใหม่โดยการคลิกขวาที่โปรแกรมหรือการเลือกคำแนะนำจากเมนูโปรแกรมProgram menuในส่วนถัดไปProgram Instructions จัดหาข้อมูลที่เหมาะสมเกี่ยวกับการเพิ่มคำแนะนำ
มันยังเป็นไปได้ที่จะเปิดคำแนะนำใหม่โดยการคลิกขวาที่โปรแกรมหรือจาก Program menu, โดยแสดงในส่วนก่อนหน้านี้
ในส่วนนี้อธิบายคำแนะนำซึ่งถูกสนับสนุนโดย RoboDK การใช้ภาพเป็นตัวประสานกับผู้ใช้สำหรับการเขียนโปรแกรมหุ่นยนต์ออฟไลน์
เลือกProgram➔ Move Joint Instruction เพิ่มเพิ่มคำแนะนำlinear movement ใหม่ อีกทางเลือกหนึ่ง, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ
เว้นแต่เป้าหมายถูกเลือกโดยก่อนเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนที่จะสร้างเป้าหมายใหม่และมันจะถูกเชื่อมต่อ ถ้าเป้าหมายที่ถูกย้ายการเคลื่อนที่จะถูกดัดแปลง
ถ้าคำแนะนำแรกนี้ซึ่งถูกเพิ่มลงในโปรแกรม, คำแนะนำที่มากกว่านั้นจะถูกเพิ่มก่อนคำแนะนำการเคลื่อนที่: Reference Frame selection และTool Frame selection จะทำให้แน่ใจว่าเมื่อโปรแกรมมาถึงคำแนะนำการเคลื่อนที่หุ่นยนต์กำลังใช้การอ้างอิงเหมือนกันและใช้หน้าต่างเครื่องมือที่เคยใช้สร้างเป้าหมายใหม่นี้
เลือกProgram➔ Move Linear Instruction เพื่อเพิ่มคำแนะนำการเคลื่อนที่เส้นตรง โดยอีกทางเลือก, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ
เว้นแต่เป้าหมายถูกเลือกก่อนการเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนที่จะสร้างเป้าหมายใหม่และจะถูกเชื่อมต่อ ถ้าเป้าหมายถูกย้ายและการเคลื่อนที่ถูกดัดแปลง
Joint Moves และ Linear Moves แสดงในรูปแบบเดียวกันและสามารถสลับจากชนิดหนึ่งไปอีกชนิดหนึ่ง
เหมือนกับคำแนะนำ Joint Move, ถ้าเป็นคำสั่งแรกซึ่งถูกเพิ่มในโปรแกรม, มากกว่าสองคำแนะนำจะถูกเพิ่มก่อนคำแนะนำการเคลื่อนที่:Reference Frame selection และ Tool Frame selection.
ตรงกันข้ามกับ Joint Move, การเคลื่อนที่เส้นตรงเหมาะสมสำหรับหุ่นยนต์ลักษณะเฉพาะและการจำกัดแกน ดังตัวอย่าง, หุ่นยนต์ 6แกน ไม่สามารถข้ามความเฉพาะโดยการเคลื่อนที่เส้นตรง ตามรูปดังต่อไปนี้ที่แสดงในตัวอย่างโดยกล่าวว่า Joint5 ใกล้เกินไปที่เป็นความเฉพาะตัว(0 องศา) […] พิจารณาJointแทนตามที่แสดงในรูปดังต่อไปนี้
ถ้าการเคลื่อนที่เส้นตรงไม่ได้จำเป็นต่อการบังคับ, คลิกขวาที่คำแนะนำเคลื่อนที่และเปลี่ยนคำสั่งJoint
อีกทางเลือกหนึ่ง, เป้าหมาย,TCP หรือตำแหน่งของหน้าต่างอ้างอิงจะต้องถูกกำหนดเพื่อหลีกเลี่ยงลักษณะเฉพาะตัว
เลือกProgram➔ Set Reference Frame Instruction เพื่อใช้หน้าต่างอ้างอิงเฉพาะ จะเป็นการอัพเดทในหน้าต่างอ้างอิงที่ให้มาบนตัวควบคุมสำหรับคำแนะนำการเคลื่อนที่ต่อไปนี้ และจะเปลี่ยนหน้าต่างอ้างอิงActiveของหุ่นยนต์ใน RoboDK สำหรับเพื่อการจำลอง มันหมายความว่าคำแนะนำการเคลื่อนที่จำเป็นเป้าหมายเฉพาะ (เป้าหมายคาร์ทีเซียน) จะถูกสร้างกับการตั้งค่าหน้าต่างอ้างอิงสุดท้าย
หน้าต่างอ้างอิงเป็นตัวแปรที่รู้จักกันในชื่อ Work Object (หุ่นยนต์ ABB), UFRAME (หุ่นยนต์ Fanuc), FRAME (สำหรับหุ่นยนต์ Motoman) oหรือ $BASE (สำหรับหุ่นยนต์ KUKA)
เลือกProgram➔ Set Tool Frame Instruction เพื่อใช้หน้าต่างเครื่องมือเฉพาะ (TCP) จะอัพเดทหน้าต่างเครื่องมือที่ให้มาบนโปรแกรมสำหรับคำแนะนำการเคลื่อนที่ดังต่อไปนี้และจะเปลี่ยนหน้าต่างเครื่องมือActiveของหุ่นยนต์ใน RoboDK สำหรับเพื่อการจำลอง นั้นหมายความว่าคำแนะนำการเคลื่อนที่จะทำให้เป้าหมายเฉพาะ (เป้าหมายคาร์ทีเซียน) จะถูกทำด้วยการตั้งค่าหน้าต่างเครื่องมือสุดท้าย
หน้าต่างอ้างอิงรู้จักกันในชื่อToolData (หุ่นยนต์ABB), UTOOL (หุ่นยนต์Fanuc), TOOL (หุ่นยนต์Motoman) or $TOOL (หุ่นยนต์KUKA)
เลือกProgram➔ Move Circular Instruction เพื่อเพิ่มคำแนะนำการเคลื่อนที่เป็นวงกลม อีกทางเลือกหนึ่ง, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ
ยกเว้นแต่สองเป้าหมายที่ถูกเลือกก่อนการเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนย้ายจะไม่สร้างเป้าหมาย, มันจำเป็นต้องเพิ่มมากกว่าสองเป้าหมายโดยแยกจากกันและเชื่อมต่อจากการคำแนะนำเคลื่อนที่เป็นวงกลม, ตามที่แสดงภายในภาพถัดไป
เส้นทางเป็นวงกลมเป็นมุมที่สร้างขึ้นจากจุดที่หุ่นยนต์ถูกตั้งขึ้นโดยผ่านการจุดเป็นวงกลมแรก (เป้าหมาย1 ถูกเชื่อมต่อ) และการจบ ณ จุดสุดท้าย (เป้าหมาย2 ถูกเชื่อมต่อ)
เลือกProgram➔ Set Speed Instructionเพื่อเพิ่มคำแนะนำใหม่ซึ่งเปลี่ยนความเร็ว และ/หรือความเร่ง มันยังสามารถทำความเร็วและความเร่งให้เฉพาะเจาะลงในการร่วมพื้นที่กันและในพื้นที่คาร์ทีเซียน
ทำให้ใช้งานในกรณีที่เหมือนกันได้เพื่อกำหนดความเร็วเฉพาะ และ/หรือ ในโปรแกรม ความเร็วหุ่นยนต์จะถูกปรับใช้จากเวลาที่คำแนะนำถูกใช้งาน
ความเร็วหุ่นยนต์สามารถถูกเปลี่ยนได้ในเมนูพารามิเตอร์: ดับเบิ้ลคลิกที่หุ่นยนต์, จากนั้น, เลือกค่าพารามิเตอร์
เลือกProgram➔ Show Message Instructionเพื่อเพิ่มคำแนะนำใหม่ซึ่งจะแสดงในข้อความบนการสอน pendant
เลือกProgram➔ Pause Instructionเพื่อเพิ่มคำแนะนำใหม่ซึ่งจะพักการดำเนินการโปรแกรมสำหรับบางเลาจะหยุดโปรแกรมจนกระทั่งตัวปฏิบัติการต้องการเริ่มโปรแกรมใหม่อีกครั้ง
เลือกProgram➔ Program Call Instructionเพื่อเพิ่มการเรียกโปรแกรมย่อยจากโปรแกรมล่าสุด
โดยเริ่มต้น, การปิดกันการเรียกนี้เพื่อโปรแกรมเฉพาะแต่อย่างไรก็ตาม, เป็นไปได้ที่จะสลับInsert Codeเพื่อเข้าสู่โค้ดเฉพาะ ณ พื้นที่ของคำแนะนำนี้ อาจจะเป็นประโยชน์สำหรับแอพพลิเคชั่นเฉพาะและตัวควบคุมเฉพาะ
สลับจากProgram Callเป็นStart Threadเพื่อกระตุ้นการเรียกไม่ปิดกันถึงโปรแกรมส่วนย่อย ในกรณีนี้, ตัวควบคุมจะเริ่มต้นใหม่ ในกรณีนี้มีเพียงตัวควบคุมเท่านั้นที่ใช้งานได้และงานเฉพาะสำหรับระบบปฏิบัติการเฉพาะเท่านั้น
เลือกProgram➔ Set or Wait I/O Instructionเพื่อเปลี่ยนสถานะของผลลัพธ์ดิจิตอล (DO) โดยค่าเริ่มต้น, คำแนะนำนี้จะถูกตั้งค่าเป็นSet Digital Outputคำแนะนำนี้อนุญาตให้รอสำหรับผลลัพธ์ดิจิตอล(DI) เพื่อสลับเป็นสถานะเฉพาะ
ชื่อ IO สามารถเป็นตัวเลขหรือค่าอักษรถ้ามันถูกตั้งชื่อเป็นตัวแปรค่า IO Value สามารถเป็นตัวเลข (0 สำหรับผิดและ1 สำหรับถูก) หรือค่าข้อความถ้าถูกตั้งชื่อเป็นสถานะ
ตั้งค่าเพื่อรอการป้อนดิจิตอลเพื่อหยุดการดำเนินการโปรแกรมจนกระทั่งสิ่งที่ป้อนเฉพาะเปลี่ยนค่าเฉพาะ ยิ่งไปกว่านั้น, หุ่นยนต์ควบคุมส่วนใหญ่สนับสนุนการหน่วยเวลาเพื่อเพิ่มความผิดพลาด ถ้าการรอเวลาเกินกว่าค่าเฉพาะ ตรวจสอบทางเลือกเวลาออก (ms) เพื่อเปิดใช้งานลักษณะนี้
หลังจากการป้อนดิจิตอลได้ถูกจำลองขึ้นและผลลัพธ์ดิจิตอลจะสร้างตัวแปรฐานใหม่ เพื่อตรวจสอบสถานะของตัวแปรเหล่านี้ คุณสามารถคลิกขวาที่ฐานและเลือกฐานพารามิเตอร์ อีกทั้งยังสามารถอ่านและดัดแปลงตัวแปรเหล่านี้ผ่าน API
เลือก Program➔ Set Rounding Instructionเพื่อเลือกล้อมรอบความแม่นยำ แม่นยำการล้อมรอบถูกใช้เพื่อทำให้ขอบเรียบระหว่างการเคลื่อนไหวต่อเนื่อง การเปลี่ยนแปลงนี้มีผลกระทบจากเหตุการณ์ที่ถูกดำเนินการภายในโปรแกรม (เหมือนกับทุกคำแนะนำอื่น), ดังนั้นจึงปกติที่จะตั้งค่าเหล่านี้ ณ การเริ่มของโปรแกรม
ปราศจากคำแนะการล้อมรอบ, หุ่นยนต์จะไปถึงด้วยความเร็ว 0 ณ จุดจบของแต่ละการเคลื่อนไหว (เว้นแต่การเคลื่อนไหวต่อไปถูกสัมผัสด้วยการเคลื่อนไหวที่แล้ว)จะเป็นการกระตุ้นความเร่งสูงและการเปลี่ยนแปลงความรวดเร็วเพื่อให้แน่ใจว่าได้ความแม่นยำที่ดีที่สุดของแต่ละการเคลื่อนที่
ค่านี้ยังรู้จักกันในชื่อ Blending radius (หุ่นยนต์ Universal), ZoneData (หุ่นยนต์ABB), CNT/FINE (หุ่นยนต์Fanuc), Cornering (หุ่นยนต์Mecademic) or $APO.CDIS/$APO.CPTP/Advance (หุ่นยนต์KUKA)
RoboDK การทดสอบ path accuracy เพื่อให้มีการเข้าใจที่ดีกว่าของผลกระทบค่าล้อมรอบที่แตกต่างกันด้วยระบบการวัด
เลือกProgram➔ Simulation Event Instructionเพื่อกระตุ้นเหตุการณ์จำลองเฉพาะเหตุการณ์จำลองไม่มีผลกระทบในการสร้างโค้ดและถูกใช้เพื่อกระตุ้นเหตุการณ์เฉพาะเท่านั้น การจำลองเหตุการณ์ซึ่งใช้ภาพเป็นตัวประสานกับผู้ใช้:
●การแนบหรือการถอดสิ่งของจากเครื่องมือหุ่นยนต์
●การแสดงหรือซ่อนสิ่งของหรือเครื่องมือ
●การเปลี่ยนตำแหน่งของสิ่งของและตำแหน่งอ้างอิง
ดังตัวอย่าง, ถ้าหุ่นยนต์ทำการย้ายตำแหน่งเฉพาะเพื่อคว้าจับสิ่งของ เราสามารถตั้งค่าเหตุการณ์Attach objectเพื่อย้ายสิ่งของด้วยกับจากนั้น, หลังจากหุ่นยนต์ไม่มีการเคลื่อนย้ายและมันพร้อมที่จะทิ้งสิ่งของ เราสามารถตั้งค่าเหตุการณ์ Detach objectเพื่อทิ้งสิ่งของเครื่องมือที่ถูกคว้าจับ
ดับเบิ้ลคลิกโปรแกรมเพื่อเริ่มต้นการจำลองโดยทางเลือก:
1.คลิกขวาที่โปแกรม
2.เลือกRun
แถบการจำลองจะปรากฏ ณ ตรงกลางถ้าโปรแกรมถูกดับเบิ้ลคลิก มันเป็นไปได้ที่เลื่อนแบบจำลองเพื่อย้ายการจำลองไปข้างหน้าหรือข้างหลัง โดยการใช้แถบการจำลอง A
RoboDK จำลอง 5 ครั้งได้เร็วกว่าเวลาจริงโดยเริ่มต้น นั้นหมายความความว่าถ้าโปรแกรมใช้เวลา 30 วินาทีเพื่อดำเนินการ มันจะต้องใช้เวลาจำลองใน30/5=6 วินาทีการเพิ่มความเร็วการจำลองเพิ่มอัตราส่วนได้ถึง100 การจำลองธรรมดาและความรวดเร็วสามารถถูกเปลี่ยนได้ใน Tools➔Options➔Motion menu.
ทำตามขั้นตอนต่อไปนี้เพื่อสร้างโปรแกรมหุ่นยนต์ที่จำเป็นต้องทีหุ่นยนต์ควบคุมFollow these steps to generate the robot program required by (ผู้ขายควบคุมหุ่นยนต์เฉพาะ):
1.เลือกProgram
2.เลือกProgram➔Generate Program(s) (F6)
อีกทางเลือกหนึ่ง, คลิกขวาที่โปรแกรมและเลือกGenerate robot program (F6)เพื่อสร้างโปรแกรม
หลายโปรแกรมสามารถถูกเลือกเพื่อสร้างมากกว่าหนึ่งโปรแกรมในเวลาเดียวกัน กดค้าง Ctrl เลือกมากกว่าหนึ่งโปรแกรม การเลือกGenerate Program(s)… (Shift+F6)จะเปิดวินโดว์ให้ถามหาพื้นที่จะบันทึกโปรแกรม
เป็นไปที่จะเคลื่อนย้ายโปรแกรมจากคอมพิวเตอร์ตรงไปสู่หุ่นยนต์โดยตรงทางเลือกนี้จะส่งโปรแกรมหุ่นยนต์ผ่านโปรโตคอลFTP หรือโปโตคอลเฉพาะ, เช่นการใช้ซ็อตเกตการส่งข้อความหรือการเชื่อมต่อเป็นชุด
ขั้นแรก, มันจำเป็นจ้องเข้าสู่ IP หุ่นยนต์และการตั้งค่าFTP ในเมนูการเชื่อมต่อหุ่นยนต์:
1.คลิกขวาที่หุ่นยนต์
2.เลือกConnect to robot… หน้าต่างจะปรากฏด้านบนซ้าย
3.เข้าสู่ IP หุ่นยนต์
4.เลือกMore optionsเพื่อเข้าสู่การตั้งค่า FTP และหนังสือรับรอง FTP (ถ้าจำเป็น)
เมื่อการตั้งค่าเครือข่ายได้ถูกจัดหาและหุ่นยนต์ได้ถูกเชื่อมต่อ, ตามขั้นตอนต่อไปนี้เพื่อเคลื่อนย้ายโปรแกรมถึงหุ่นยนต์โดยตรงจาก RoboDK:
1.คลิกขวาที่โปรแกรม
2.เลือกSend program to robot (Ctrl+F6)
วินโดว์ป็อปอัพจะแสดงผลสำเร็จหรือสถานะล้มเหลว
บทสนทนาจากแบบจำลอง RoboDK เพื่อโปรแกรมหุ่นยนต์เฉพาะถูกทำให้เสร็จโดยหน่วยประมวลผล หน่วยประมวลผลกำหนดโปรแกรมหุ่นยนต์ควรจะถูกสร้างสำหรับหุ่นยนต์เฉพาะ หุ่นยนต์แต่ละตัวมีหน่วยประมวลผล เฉพาะ/เริ่มต้น โดยค่าเริ่มต้นใน RoboDK
เพื่อเลือกหน่วยประมวลผลเฉพาะสำหรับหุ่นยนต์:
1.คลิกขวาที่หุ่นยนต์หรือโปรแกรม
2.เลือกSelect Post Processor
3.เลือกหน่วยประมวลผลจากรายการ
4.เลือก OK
การเปลี่ยนแปลงนี้ถูกใช้ตอนนี้และโปรแกรมสามารถสร้างอีกครั้งเพื่อได้เห็นผลลัพธ์.
หน่วยประมวลผลในRoboDK มีความยึดหยุ่นในการสร้างโปรแกรมหุ่นยนต์ให้สำเร็จสำหรับความต้องการพิเศษ RoboDK มีหน่วยประมวลผลสำหรับยี่ห้อหุ่นยนต์ส่วนใหญ่ หน่วยประมวลผลสามารถถูกดัดแปลงได้อย่างง่ายดาย ข้อมูลเพิ่มเติมเกี่ยวกับหน่วยประมวลผลในdedicated section for post processors