RoboDK论坛
指数外部轴可打印版本

+ - RoboDK论坛(//www.w5838.com/forum)
+ - - -论坛:RoboDK (EN) (//www.w5838.com/forum/Forum-RoboDK-EN)
+ - - -论坛:RoboDK API (//www.w5838.com/forum/Forum-RoboDK-API)
+ - - -线程:指数外部轴(/ Thread-Index-External-Axis)



指数外部轴- - - - - -DNikolovBA- - - - - -12-10-2020

是否有办法解决索引的7日和8日轴外部使用movJ转盘,关节或类似的命令吗?

我想进行一个操作,然后由一组旋转转盘数量和重复相同的操作。


RE:指数外部轴- - - - - -杰里米- - - - - -12-11-2020

嗨DNikolov,

我认为这将有助于。
我使用这个宏指数运输机,但它是相同的概念。

杰里米


RE:指数外部轴- - - - - -DNikolovBA- - - - - -12-11-2020

杰里米,

你能扩大与转盘上实现。当我转盘设置和有效,我怎么修改移动关节命令封装的两轴转台。拼凑在一起一些代码我想出了以下“笨拙的”代码:

从robolink进口* # RoboDK API
从robodk进口* #机器人工具箱
角= 180
层= 10

RDK = Robolink ()

#获取机器人,参考系和创建一个项目
机器人= RDK。项目(ITEM_TYPE_ROBOT”)
参考= robot.Parent ()

#创建一个新的项目
程序= RDK.AddProgram(测试)

#定义一个参考姿势
# pos = transl (100200300) * rotx(π)

#关掉自动呈现(快)
RDK.Render(假)

#不显示指令(更快)
program.ShowInstructions(假)

#指定您想要使用的参考系
program.setPoseFrame(参考)

xx =(层* 360.0)/角
x = int (xx)

newvalues ={“速度”:200}


因为我在范围(x):
我targetname = '目标%我%
目标= RDK.AddTarget (targetname,参考,机器人)
#目标。setPose (transl (0, 0, 0) * pos)

#设置外部轴
轴=[0,我*角)

#笛卡尔目标RoboDK将忽略机器人关节而不是外部轴
all_axes =[90, 0, 0, 0, 0, -90] +轴
#快速创建一个数组:
# (0,0,0,0,0,0,ext_axis_1, ext_axis_2]

#设置目标和创建一个移动指令
target.setJoints (all_axes)
target.setAsJointTarget ()
program.MoveJ(目标)

#如果你正在创建一个长期计划,这有助于保持树小(快)
如果我% 20 = = 0:
program.ShowTargets(真正的)

program.ShowTargets(真正的)


RE:指数外部轴- - - - - -杰里米- - - - - -12-14-2020

如果你能加入.rdk站,帮助我理解你的代码。

我觉得它可能是更简单的方法。

杰里米


RE:指数外部轴- - - - - -DNikolovBA- - - - - -12-15-2020

杰里米,

是的,我相信我可以作为这个方法更简单为每个索引创建的目标。


RE:指数外部轴- - - - - -杰里米- - - - - -12-15-2020

这里有一个站,应该工作,这里的python代码。

代码:
# - - - - - - - - - - - -常数
ROBOT_NAME = ' Motoman MH50 '
INCREMENT_EXT_1_DEG = 5
INCREMENT_EXT_2_DEG = 20

关节= []

机器人= RDK.Item (ROBOT_NAME itemtype = ITEM_TYPE_ROBOT)

如果robot.Valid ():
关节= robot.Joints ()
关节[6]+ = INCREMENT_EXT_1_DEG
关节[7]+ = INCREMENT_EXT_2_DEG
robot.MoveJ(关节)


杰里米


RE:指数外部轴- - - - - -DNikolovBA- - - - - -12-16-2020

杰里米,

非常感谢。这正是我正在寻找原型的代码。

问候,