上位机基于PCSDK获取外轴值

[复制链接]
查看142 | 回复0 | 2024-9-25 13:51:59 | 显示全部楼层 |阅读模式

1.上位机可以通过PCSDK获取机器人的当前位姿或者角度。

2.GetPosition函数返回对应机械装置的Jointtarget类型数据,GetPosition(coordinateSystem)返回机械装置的位姿。

注:根据手册,GetPosition(coordinateSystem)只能返回机器人的末端位姿,即返回的robtarget数据中,外轴值均为0.

3. 如果希望同时获得机器人的位姿和外轴数据,可以参考以下代码,即对于外轴数据,获取对应机械装置的jointtarget数据中的ext

RobTarget rbTarget = new RobTarget(); // 存储机器人JointTarget jTarget = new JointTarget(); // 存储外轴机械装置MechanicalUnitCollection mechanicalUnits = controller.MotionSystem.MechanicalUnits;
foreach (MechanicalUnit m in mechanicalUnits){ if (m.Type == MechanicalUnitType.TcpRobot) { rbTarget = m.GetPosition(CoordinateSystemType.World); } else { jTarget = m.GetPosition();    }}textBox1.Text= "";textBox1.AppendText("x:" + rbTarget.Trans.X.ToString()+"\r\n");textBox1.AppendText("y:" + rbTarget.Trans.Y.ToString() + "\r\n");textBox1.AppendText("z:" + rbTarget.Trans.Z.ToString() + "\r\n");textBox1.AppendText("q1:" + rbTarget.Rot.Q1.ToString() + "\r\n");textBox1.AppendText("q2:" + rbTarget.Rot.Q2.ToString() + "\r\n");textBox1.AppendText("q3:" + rbTarget.Rot.Q3.ToString() + "\r\n");textBox1.AppendText("q4:" + rbTarget.Rot.Q4.ToString() + "\r\n");textBox1.AppendText("ex1:" + jTarget.ExtAx.Eax_a.ToString()); // 显示外轴数据

********************************

如何获取更多经典文章?

关注公众号 ABB机器人实战技巧,点击页面底部的往期经典配置,查看更多经典内容 


点击阅读原文,学习robotstudio仿真,获取完整教学视频

更多内容

★ 如何搜索历史文章

基于pcsdk传输文件到HOME及加载

通过总线发送实数及负整数

★使用定时中断向PLC发送机器人位置

★信号的准确提早触发

★变位机校准

★ABB机器人零位校准的那些秘密

★创建UDP通讯

★旋转姿态的左乘与右乘

通过socket控制机器人启停

上位机仪表盘实时显示机器人速度

机器人画哆啦A梦

上位机实时控制机器人运动之EGM

Python控制ABB机器人运动

通过Excel批量修改EIO文件

带连杆的机器人正运动学计算

制作四连杆机构

机器人PROFINET同时做CONTROLLER和DEVICE

语音控制ABB机器人

★手机访问web控制机器人

★自定义伺服焊枪

★制作输送链抓取搬运码垛工作站

★随机物料产生与抓取

四轴机器人定义TCP

★自定义外部轴-变位机

示教四点完成码垛

★multimove之双机器人与变位机

Robotware6.08碰撞预测启用与关闭

SMB板针脚解释

四六关节耦合限制

求两点间距离

新I/O DSQC1030配置

ABB机器人配置伺服焊枪

转角路径故障不提示设置

外部PLC选择机器人程序

一键回HOME程序

机器人各轴上下限位修改

Wobjdata数据解释

输送链跟踪与视觉的联系

急停与自动停止接线


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则