มันยังเป็นไปได้ที่จะเปิดคำแนะนำใหม่โดยการคลิกขวาที่โปรแกรมหรือจาก Program menu , โดยแสดงในส่วนก่อนหน้านี้
Tip: เลือกคำแนะนำเฉพาะเพื่อเพิ่มคำแนะนำใหม่หลังจากเลือกคำแนะนำแล้ว
Tip: อีกทั้งยังสามารถ ลากและปล่อยคำแนะนำภายในโปรแกรมหรือระหว่างโปรแกรมที่แตกต่างกันเพื่อเรียงลำดับใหม่
ในส่วนนี้อธิบายคำแนะนำซึ่งถูกสนับสนุนโดย RoboDK การใช้ภาพเป็นตัวประสานกับผู้ใช้สำหรับการเขียนโปรแกรมหุ่นยนต์ออฟไลน์
เลือกProgram➔ Move Joint Instruction เพิ่มเพิ่มคำแนะนำlinear movement ใหม่ อีกทางเลือกหนึ่ง, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ
เว้นแต่เป้าหมายถูกเลือกโดยก่อนเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนที่จะสร้างเป้าหมายใหม่และมันจะถูกเชื่อมต่อ ถ้าเป้าหมายที่ถูกย้ายการเคลื่อนที่จะถูกดัดแปลง
ถ้าคำแนะนำแรกนี้ซึ่งถูกเพิ่มลงในโปรแกรม, คำแนะนำที่มากกว่านั้นจะถูกเพิ่มก่อนคำแนะนำการเคลื่อนที่: Reference Frame selection และTool Frame selection จะทำให้แน่ใจว่าเมื่อโปรแกรมมาถึงคำแนะนำการเคลื่อนที่หุ่นยนต์กำลังใช้การอ้างอิงเหมือนกันและใช้หน้าต่างเครื่องมือที่เคยใช้สร้างเป้าหมายใหม่นี้
Note: คลิกขวาที่คำแนะนำการเคลื่อนที่และเลือกTarget options… (F3) เพื่อเปิดเมนูทางเลือกเป้าหมายเป้าหมายสามารถถูกดัดแปลงจากวินโดว์นี้หรือมาโดยตรง
เลือกProgram➔ Move Linear Instruction เพื่อเพิ่มคำแนะนำการเคลื่อนที่เส้นตรง โดยอีกทางเลือก, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ
เว้นแต่เป้าหมายถูกเลือกก่อนการเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนที่จะสร้างเป้าหมายใหม่และจะถูกเชื่อมต่อ ถ้าเป้าหมายถูกย้ายและการเคลื่อนที่ถูกดัดแปลง
Joint Moves และ Linear Moves แสดงในรูปแบบเดียวกันและสามารถสลับจากชนิดหนึ่งไปอีกชนิดหนึ่ง
เหมือนกับคำแนะนำ Joint Move, ถ้าเป็นคำสั่งแรกซึ่งถูกเพิ่มในโปรแกรม, มากกว่าสองคำแนะนำจะถูกเพิ่มก่อนคำแนะนำการเคลื่อนที่:Reference Frame selection และ Tool Frame selection .
Important: มันถูกแนะนำให้เก็บการเคลื่อนที่แรกของแต่ละโปรแกรมโดยการใช้เป้าหมาย Joint Move มันจะตั้งค่าอย่างเหมาะสมตามองค์ประกอบที่ต้องการ จากการเคลื่อนที่หนึ่งและทำให้แน่ใจว่าหุ่นยนต์จริงจะเคลื่อนที่ในทางเดียวกันกับที่ถูกจำลอง
ตรงกันข้ามกับ 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)
Note: ตัวควบคุมเฉพาะสนับสนุนการตั้งค่าหน้าต่างอ้างอิงซึ่งใช้ตัวเลขหน้าต่างอ้างอิง (เช่นตัวควบคุม Fanuc และ Motoman ). ในกรณีนั้น, ชื่อของหน้าต่างอ้างอิงสามารถเสร็จสิ้นด้วยตัวเอง(เช่นFrame 4 เพื่อตั้งค่า the frame index 4)
เลือกProgram➔ Set Tool Frame Instruction เพื่อใช้หน้าต่างเครื่องมือเฉพาะ (TCP) จะอัพเดทหน้าต่างเครื่องมือที่ให้มาบนโปรแกรมสำหรับคำแนะนำการเคลื่อนที่ดังต่อไปนี้และจะเปลี่ยนหน้าต่างเครื่องมือActive ของหุ่นยนต์ใน RoboDK สำหรับเพื่อการจำลอง นั้นหมายความว่าคำแนะนำการเคลื่อนที่จะทำให้เป้าหมายเฉพาะ (เป้าหมายคาร์ทีเซียน) จะถูกทำด้วยการตั้งค่าหน้าต่างเครื่องมือสุดท้าย
หน้าต่างอ้างอิงรู้จักกันในชื่อToolData (หุ่นยนต์ABB), UTOOL (หุ่นยนต์Fanuc), TOOL (หุ่นยนต์Motoman) or $TOOL (หุ่นยนต์KUKA)
Note: ตัวควบคุมเฉพาะสนับสนุนการตั้งค่าหน้าต่างเครื่องมือโดยการใช้ตัวเลขเครื่องมือ (เช่นตัวควบคุม Fanuc และ Motoman) ในกรณีนั้น, ชื่อของหน้าต่างเครื่องมือสามารถเสร็จสิ้นได้ด้วยตัวเลข(เช่น Tool 4 เพื่อตั้งค่า tool index 4)
เลือกProgram➔ Move Circular Instruction เพื่อเพิ่มคำแนะนำการเคลื่อนที่เป็นวงกลม อีกทางเลือกหนึ่ง, เลือกปุ่มที่เหมือนกันในแถบเครื่องมือ
ยกเว้นแต่สองเป้าหมายที่ถูกเลือกก่อนการเพิ่มคำแนะนำ, คำแนะนำการเคลื่อนย้ายจะไม่สร้างเป้าหมาย, มันจำเป็นต้องเพิ่มมากกว่าสองเป้าหมายโดยแยกจากกันและเชื่อมต่อจากการคำแนะนำเคลื่อนที่เป็นวงกลม, ตามที่แสดงภายในภาพถัดไป
เส้นทางเป็นวงกลมเป็นมุมที่สร้างขึ้นจากจุดที่หุ่นยนต์ถูกตั้งขึ้นโดยผ่านการจุดเป็นวงกลมแรก (เป้าหมาย1 ถูกเชื่อมต่อ) และการจบ ณ จุดสุดท้าย (เป้าหมาย2 ถูกเชื่อมต่อ)
Important: มันเป็นไปได้ที่จะทำวงกลมเต็มให้สำเร็จด้วยคำแนะนำที่เป็นวงกลมหนึ่ง วงกลมเต็มจะต้องหมุนภายในสองการเคลื่อนที่เป็นวงกลมแยกกัน
เลือกProgram➔ Set Speed Instruction เพื่อเพิ่มคำแนะนำใหม่ซึ่งเปลี่ยนความเร็ว และ/หรือความเร่ง มันยังสามารถทำความเร็วและความเร่งให้เฉพาะเจาะลงในการร่วมพื้นที่กันและในพื้นที่คาร์ทีเซียน
ทำให้ใช้งานในกรณีที่เหมือนกันได้เพื่อกำหนดความเร็วเฉพาะ และ/หรือ ในโปรแกรม ความเร็วหุ่นยนต์จะถูกปรับใช้จากเวลาที่คำแนะนำถูกใช้งาน
ความเร็วหุ่นยนต์สามารถถูกเปลี่ยนได้ในเมนูพารามิเตอร์: ดับเบิ้ลคลิกที่หุ่นยนต์, จากนั้น, เลือกค่าพารามิเตอร์
Note: หุ่นยนต์ควบคุมไม่ทุกตัวสนับสนุนการตั้งความเร่งอย่างแม่นยำ
Important: การตั้งค่าความเร็วที่ถูกต้องสำคัญเพื่อคำนวณอย่างแม่นยำในโปรแกรมเวลา (cycle time) ข้อมูลเพิ่มเติมดูใน
cycle time section
เลือกProgram➔ Show Message Instruction เพื่อเพิ่มคำแนะนำใหม่ซึ่งจะแสดงในข้อความบนการสอน pendant
Note: หุ่นยนต์ควบคุมไม่ทุกตัวสนับสนุนการแสดงข้อความบนการสอนpendant จากโปรแกรมในกรณีนั้น, คำแนะนำจะไม่มีผลใดๆ
เลือกProgram➔ Pause Instruction เพื่อเพิ่มคำแนะนำใหม่ซึ่งจะพักการดำเนินการโปรแกรมสำหรับบางเลาจะหยุดโปรแกรมจนกระทั่งตัวปฏิบัติการต้องการเริ่มโปรแกรมใหม่อีกครั้ง
Note: ตั้งค่าหารหยุดหน่วงเวลาถึง -1 เพื่อหยุดโปรแกรมจนกรทั่งตัวปฏิบัติการต้องการเริ่มโปรแกรมใหม่อีกครั้ง ในกรณีนั้น, คำแนะนำจะถูกตั้งอย่างอัตโนมัติว่า Stop
Important: ในแบบจำลอง, 5 วินาทีสำหรับพักจะใช้เวลา 1 วินาทีเพื่อจำลองสำหรับอัตราส่วนการจำลองเริ่มต้นของ 5 ข้อมูลเพิ่มเติมสามารถดูใน
Simulation section เลือกProgram➔ Program Call Instruction เพื่อเพิ่มการเรียกโปรแกรมย่อยจากโปรแกรมล่าสุด
โดยเริ่มต้น, การปิดกันการเรียกนี้เพื่อโปรแกรมเฉพาะแต่อย่างไรก็ตาม, เป็นไปได้ที่จะสลับInsert Code เพื่อเข้าสู่โค้ดเฉพาะ ณ พื้นที่ของคำแนะนำนี้ อาจจะเป็นประโยชน์สำหรับแอพพลิเคชั่นเฉพาะและตัวควบคุมเฉพาะ
Tip: เลือกSelect program เพื่อเติมช่องข้อความอย่างอัตโนมัติ มิฉะนั้น, การจับคู่ข้อความควรจะทำงานด้วย ถ้ามีการจับคู่ชื่อกับโปรแกรมส่วนย่อยซึ่งถูกใช้ในคำแนะนำ, คำสั่งย้อยจะถูกจำลองใน RoboDK
Tip: ป้อนเส้นหลายเส้นเพื่อตั้งค่าอัตโนมัติคำแนะนำเรียกโปรแกรมหลายอันในแถว
สลับจากProgram Call เป็นStart Thread เพื่อกระตุ้นการเรียกไม่ปิดกันถึงโปรแกรมส่วนย่อย ในกรณีนี้, ตัวควบคุมจะเริ่มต้นใหม่ ในกรณีนี้มีเพียงตัวควบคุมเท่านั้นที่ใช้งานได้และงานเฉพาะสำหรับระบบปฏิบัติการเฉพาะเท่านั้น
Tip: โปรแกรามหลักถูกใช้สำหรับการจำลองเท่านั้น อาจจะใช้การเริ่มต้นใหม่เพื่อเริ่มจำลองของหลายโปรแกรม ณ เวลาเดียวกัน (สำหรับตัวอย่างเมื่อหุ่นยนต์สองตัวหรือมากกว่านั้นได้ถูกจำลอง)
เลือกProgram➔ Set or Wait I/O Instruction เพื่อเปลี่ยนสถานะของผลลัพธ์ดิจิตอล (DO) โดยค่าเริ่มต้น, คำแนะนำนี้จะถูกตั้งค่าเป็นSet Digital Output คำแนะนำนี้อนุญาตให้รอสำหรับผลลัพธ์ดิจิตอล(DI) เพื่อสลับเป็นสถานะเฉพาะ
ชื่อ IO สามารถเป็นตัวเลขหรือค่าอักษรถ้ามันถูกตั้งชื่อเป็นตัวแปรค่า IO Value สามารถเป็นตัวเลข (0 สำหรับผิดและ1 สำหรับถูก) หรือค่าข้อความถ้าถูกตั้งชื่อเป็นสถานะ
Note: คำแนะนำนี้ยังสนับสนุนการตั้งค่าผลลัพธ์อนาล็อก (AO) หรือการรอสำหรับการป้อนอนาล็อก (AI) บนหุ่นยนต์ควบคุมบางตัวในกรณีนั้น, ยังวามารถจัดหาค่าตัวเลขทศนิยมหรือข้อความเฉพาะแทนที่ตัวเลข
ตั้งค่าเพื่อรอการป้อนดิจิตอลเพื่อหยุดการดำเนินการโปรแกรมจนกระทั่งสิ่งที่ป้อนเฉพาะเปลี่ยนค่าเฉพาะ ยิ่งไปกว่านั้น, หุ่นยนต์ควบคุมส่วนใหญ่สนับสนุนการหน่วยเวลาเพื่อเพิ่มความผิดพลาด ถ้าการรอเวลาเกินกว่าค่าเฉพาะ ตรวจสอบทางเลือกเวลาออก (ms) เพื่อเปิดใช้งานลักษณะนี้
Tip: มันเป็นการฝึกฝนที่ดี, ดังตัวอย่าง, ถ้าหุ่นยนต์มีฮาร์ดแวร์เฉพาะบนเซลล์ (เช่นตัวจับและตัวหมุนผสม), เปิดใช้งานฮาร์ดแวร์เฉพาะนี้เพื่อใช้ผลลัพธ์ดิจิตอล(DO), เมื่อการรอสำหรับการป้อนดิจิตอลเฉพาะ (DI) ได้เปลี่ยนเป็นสถานะเฉพาะ
หลังจากการป้อนดิจิตอลได้ถูกจำลองขึ้นและผลลัพธ์ดิจิตอลจะสร้างตัวแปรฐานใหม่ เพื่อตรวจสอบสถานะของตัวแปรเหล่านี้ คุณสามารถคลิกขวาที่ฐานและเลือกฐานพารามิเตอร์ อีกทั้งยังสามารถอ่านและดัดแปลงตัวแปรเหล่านี้ผ่าน API
เลือก Program➔ Set Rounding Instruction เพื่อเลือกล้อมรอบความแม่นยำ แม่นยำการล้อมรอบถูกใช้เพื่อทำให้ขอบเรียบระหว่างการเคลื่อนไหวต่อเนื่อง การเปลี่ยนแปลงนี้มีผลกระทบจากเหตุการณ์ที่ถูกดำเนินการภายในโปรแกรม (เหมือนกับทุกคำแนะนำอื่น), ดังนั้นจึงปกติที่จะตั้งค่าเหล่านี้ ณ การเริ่มของโปรแกรม
ปราศจากคำแนะการล้อมรอบ, หุ่นยนต์จะไปถึงด้วยความเร็ว 0 ณ จุดจบของแต่ละการเคลื่อนไหว (เว้นแต่การเคลื่อนไหวต่อไปถูกสัมผัสด้วยการเคลื่อนไหวที่แล้ว)จะเป็นการกระตุ้นความเร่งสูงและการเปลี่ยนแปลงความรวดเร็วเพื่อให้แน่ใจว่าได้ความแม่นยำที่ดีที่สุดของแต่ละการเคลื่อนที่
ค่านี้ยังรู้จักกันในชื่อ Blending radius (หุ่นยนต์ Universal), ZoneData (หุ่นยนต์ABB), CNT/FINE (หุ่นยนต์Fanuc), Cornering (หุ่นยนต์Mecademic) or $APO.CDIS/$APO.CPTP/Advance (หุ่นยนต์KUKA)
Note: ตั้งค่าการล้อมรอบถึง -1 เพื่อกระตุ้นการเคลื่อนที่ที่ดี นั้นหมายความว่าหุ่นยนต์จะไม่หมุนรอบขอบทาง
Tip: ค่าการล้อมรอบสูงจะทำให้แน่ใจว่าความเร็วคงที่ผ่านหุ่นยนต์ในการเปลี่ยนแปลงของการสูญเสียความแม่นยำบนขอบทาง ขึ้นอยู่กับแต่ละแอพพลิเคชั่น, เป็นปกติที่จะหาความพอดีระหว่างความแม่นยำและความเร็วที่ดี
RoboDK การทดสอบ path accuracy เพื่อให้มีการเข้าใจที่ดีกว่าของผลกระทบค่าล้อมรอบที่แตกต่างกันด้วยระบบการวัด
เลือกProgram➔ Simulation Event Instruction เพื่อกระตุ้นเหตุการณ์จำลองเฉพาะเหตุการณ์จำลองไม่มีผลกระทบในการสร้างโค้ดและถูกใช้เพื่อกระตุ้นเหตุการณ์เฉพาะเท่านั้น การจำลองเหตุการณ์ซึ่งใช้ภาพเป็นตัวประสานกับผู้ใช้:
● การแนบหรือการถอดสิ่งของจากเครื่องมือหุ่นยนต์
● การแสดงหรือซ่อนสิ่งของหรือเครื่องมือ
● การเปลี่ยนตำแหน่งของสิ่งของและตำแหน่งอ้างอิง
ดังตัวอย่าง, ถ้าหุ่นยนต์ทำการย้ายตำแหน่งเฉพาะเพื่อคว้าจับสิ่งของ เราสามารถตั้งค่าเหตุการณ์Attach object เพื่อย้ายสิ่งของด้วยกับจากนั้น, หลังจากหุ่นยนต์ไม่มีการเคลื่อนย้ายและมันพร้อมที่จะทิ้งสิ่งของ เราสามารถตั้งค่าเหตุการณ์ Detach object เพื่อทิ้งสิ่งของเครื่องมือที่ถูกคว้าจับ
Note: เหตุการณ์เฉพาะสามารถูกจำลองโดยการใช้ macros (ประสบการณ์การเขียนโปรแกรมจำเป็นต้องมี) ดังตัวอย่าง, การใช้ API เป็นไปได้ที่จะทำวัตถุให้ปรากฏขึ้นโดยการลุ่ม ณ พื้นที่เฉพาะสำหรับการหยิบและวางการจำลอง
Note: เมื่อแนบวัตถุในเครื่องมือ, วัตถุที่ใกล้ที่สุดถูกแนบถ้าไม่มีที่ไกลกว่าจากระยะทางที่ให้ ระยะทางเป็น 200 มิลลิเมตรโดยเริ่มต้นและสามารถถูกเปลี่ยน: Tools➔Options➔Maximum distance to attach an object to a robot tool อีกทั้ง, โดยเริ่มต้น, ระยะทางถูกตรวจสอบจากสถานที่ TCP เพื่ออ้างอิงวัตถุอีกทางเลือกหนึ่ง, ยังสามารถใช้ระยะทางระหว่าง TCP และวัตถุเรขาคณิตโดยการเลือก ตรวจสอบระยะทางสั้นที่สุดระหว่าง TCP และรูปร่างวัตถุ