Visual Components

Разные фишки

Разные фишки

Step size

Шаг робота в симуляции

Во вкладке Home

image.png

Параметр Size

image.png

Разные фишки

Захват инструментом

Часто бывает, что робот не захватывает деталь инструментом

 

image.png

 

Кликаем на робота

Выбираем Action Configuration

 

image.png

Определяем Detection volume. Часто его нужно увеличить по Z

 

Дальше задаем TCP для нужного TOOL, нажав на шестеренку справа от него

image.png

Смена инструмента ( Tool mount/dismount)

По умолчания 33 выход отвечает за отцепление инструмента

https://www.youtube.com/watch?v=OsxlazzAXss

image.png

Все данные по умолчанию

Отцепление инструмента

image.png

 

Для того чтобы взять другой инструмент нужно использовать другой выход - 34

Также предварительно нужно с помощью Wizard сделать из него End Effector

image.png

 

Конвейер ( Conveyor)

Добавляем конвейер

Добавляем датчик ( conveyor sensor)

Добавляем статичную деталь для движения по конвейеру делаем snap to конвейер и attach to конвейер

image.png

image.png

 

Добавляем python скрипт, чтобы деталь ехала по конвейеру

 

Выбираем конвейер, вкалдка моделинг, Behaviours

image.png

В коде скрипта для 4.8 добавить:

def OnRun():
    comp = getComponent()
    path = comp.findBehaviour("One-WayPath__HIDE__")  # Проверьте имя!
    part = app.findComponent("Part0")
    
    if not path:
        print("Ошибка: путь 'One-WayPath__HIDE__' не найден!")
    if not part:
        print("Ошибка: объект 'Part0' не найден!")
    
    if path and part:
        path.grab(part)  # Или другой метод перемещения

Управление кастомными servo

image.png

from vcScript import *

comp = getComponent()
servo = comp.findBehaviour("Servo Controller")

def OnSignal( signal ):
  pass

def OnRun():
  servo.setJointTarget(0,-342.0)
  servo.setJointTarget(1,-10.0)
  servo.setJointTarget(2,400.0)
  servo.setJointTarget(3,-512.0)
  servo.setJointTarget(4,-172.0)
  servo.setJointTarget(5,122)
  servo.setMotionTime(1.0)
  print servo.calcMotionTime()
  servo.move()