ABB机器人EGM功能简单应用

EGM中使用的是Protocol Buffer2的协议,从Egm.proto模板文件中可以了解到,协议版本没有定义默认为proto2,目前最新版本为proto3。PC安装了RobotStudio 6.08后,在如下路径可以找到egm.proto模板文件。
在这里插入图片描述

C:\ProgramData\ABB Industrial IT\Robotics IT\DistributionPackages\ABB.RobotWare-6.08.0134\RobotPackages\RobotWare_RPK_6.08.0134\utility\Template\EGM

初次使用Protocol Buffer协议格式时,是在项目中使用微服务了解到的。有用到gRpc基于远程过程调用框架,gRPC 是Google 发布的开源 RPC 框架,提供 protocol buffer 编译插件,能够从一个服务定义的 .proto 文件生成客户端和服务端代码。通常 gRPC 用户可以在服务端实现这些API,并从客户端调用它们。使用和了解更多帮助信息可以参考以下两个链接

gRPC 官方文档中文版 http://doc.oschina.net/grpc?t=60132

gRpc入门之旅博客 https://www.cnblogs.com/chillsrc/p/18062504

这里不做详细介绍,主要讲两点,第一点需要用到包,在打开的NuGet包管理界面的中选择“浏览”标签页,在搜索框中输入“google”,找到最新版本Google.ProtocolBuffers,点击安装。如下图
在这里插入图片描述
安装完成后打开.nuget包本地文件夹路径,我电脑在如下位置C:\Users\Administrator.nuget\packages\google.protocolbuffers\2.4.1.555\tools

在这里插入图片描述
第二点复制Egm.proto文件至该文件夹内,win+r输入cmd打开控制台,cd到该路径下。输入以下命令生成.cs文件,详细看截图操作
在这里插入图片描述
如何使用Egm.cs里面的方法,模板里的Egm.proto有注释,更多功能自行尝试,需要获取机器人相关数据,可以参考如下示例代码

UdpClient _udpServer = new UdpClient(6511);var remoteEP = new IPEndPoint(IPAddress.Any, 6511); while (true){var data = _udpServer.Receive(ref remoteEP);//先启动C#程序,再启动机器人程序MessageBox.Show($"Seq={robot.Header.Seqno.ToString()} tm={robot.Header.Tm.ToString()}  pos= {robot.FeedBack.Cartesian.Pos}");}

机器人通讯设置需要设置6511端口
在这里插入图片描述
机器人Rapid代码如下

PROC main()MoveJ p100,v1000,fine,MyTool\WObj:=wobj0;EGMReset egmID1;waittime 1;EGMGetId egmID1;egmSt1:=EGMGetState(egmID1);IF egmSt1<=EGM_STATE_CONNECTED THEN   EGMSetupUC ROB_1,egmID1,"default","UCdevice"\pose;ENDIFEGMActPose egmID1\Tool:=MyTool,corr_frame_offs,EGM_FRAME_WORLD,corr_frame_offs,EGM_FRAME_WORLD\x:=egm_minmax_lin1\y:=egm_minmax_lin1\z:=egm_minmax_lin1\rx:=egm_minmax_rot1\ry:=egm_minmax_rot1\rz:=egm_minmax_rot1\LpFilter:=20\MaxSpeedDeviation:=30;EGMRunPose egmID1,EGM_STOP_HOLD\x\y\Z\CondTime:=3\RampInTime:=0.05;ENDPROC

对Rapid中EGM相关指令不熟悉可以参考,RobotStudio中帮助手册
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/51374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ISP-LSC

1. 概述 Lens shading分为两个部分&#xff0c;亮度均匀性&#xff08;luma shading correction&#xff09;&#xff0c;色彩均匀性&#xff08;colour shading correction&#xff09;。 lens 的各位置和中心的透射率不同&#xff1a;luma shading lens 对不同光谱的shift 不…

11. kubernetes资源——configmap配置映射

kubernetes资源——configmap配置映射 一、configmap配置映射1、创建configMap&#xff0c; 存MySQL配置2、创建MySQL pod 一、configmap配置映射 存放配置文件内容 1、创建configMap&#xff0c; 存MySQL配置 apiVersion: v1 kind: ConfigMap metadata:name: test-mysql-co…

NOILinux2.0安装

NOI官方已发布NOILinux2.0&#xff0c;可是如何安装使用呢&#xff1f;我来教你。 首先下载VMWare和NOILinux2.0的ios&#xff0c;当然你用什么虚拟机软件都可以。这里我用的是VMware。 NOIlinux2.0的下载链接&#xff1a; NOI Linux 2.0发布&#xff0c;将于9月1日起正式启用…

Cesium 体积云效果

Cesium 体积云效果&#xff08;局部&#xff09; 原理&#xff1a;RayMarching光线步进噪声&#xff0c;需要修改源码让cesium支持3D纹理&#xff08;texImage3D&#xff09; 源码修改思路&#xff1a;Cesium中使用Sampler3D&#xff0c;3D纹理&#xff0c;实现体渲染 感谢思…

Debian12 安装Docker 用 Docker Compose 部署WordPress

服务器准备&#xff1a; 以root账号登录&#xff0c;如果不是root&#xff0c;后面指令需要加sudo apt update apt install apt-transport-https ca-certificates curl gnupg lsb-release添加GPG密钥&#xff0c;推荐国内源 curl -fsSL https://mirrors.aliyun.com/docker…

图的遍历:深度优先搜索(DFS)

引言 图遍历是指按照一定的顺序访问图中的每个顶点。遍历图的两种主要方法是深度优先搜索&#xff08;Depth-First Search, DFS&#xff09;和广度优先搜索&#xff08;Breadth-First Search, BFS&#xff09;。本文将详细介绍深度优先搜索的定义、算法及其实现。 深度优先搜…

【Sklearn-驯化】一文搞懂很难的条件随机场系列算法:hmm、crf以及实践

【Sklearn-驯化】一文搞懂很难的条件随机场系列算法&#xff1a;hmm、crf以及实践 本次修炼方法请往下查看 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合&#xff0c;智慧小天地&#xff01; &#x1f387; 免费获取相…

【Python从入门到进阶】61、Pandas中DataFrame对象的操作(二)

接上篇《60、Pandas中DataFrame对象的操作&#xff08;一&#xff09;》 上一篇我们讲解了DataFrame对象的简介、基本操作及数据清洗相关的内容。本篇我们来继续讲解DataFrame对象的统计分析、可视化以及数据导出与保存相关内容。 一、DataFrame的统计分析 在数据分析和处理中…

C#与欧姆龙PLC 通信——fins udp协议

前言 欧姆龙PLC在工控领域占有很大的市场份额,在上位机编程领域,实现上位机和欧姆龙PLC的通信也是必备的技能,上位机和PLC可以通过fins udp和fins tcp协议通信,本文介绍的是fins udp协议,该协议具有传输速度快的特点,为了帮助大家学习fins udp协议,我编写了“欧姆龙Fin…

从零开始学习网络安全渗透测试之基础入门篇——(四)反弹SHELL不回显带外正反向连接防火墙出入站文件上传下载

一、反弹SHELL 反弹SHELL&#xff08;Reverse Shell&#xff09;是一种网络攻击技术&#xff0c;它允许攻击者在一个被入侵的计算机上执行命令&#xff0c;即使该计算机位于防火墙或NAT&#xff08;网络地址转换&#xff09;之后。通常&#xff0c;当攻击者无法直接连接到目标…

堡垒机介绍

堡垒机&#xff0c;也被称为跳板机、跳板服务器或堡垒服务器&#xff0c;是一种网络安全设备&#xff0c;它在网络安全领域扮演着重要角色。以下是关于堡垒机的详细解析&#xff1a; 一、定义与功能 定义&#xff1a;堡垒机是一种用于控制和管理网络安全的重要工具&#xff0…

不要对数组使用多态

类继承的最重要的特性是你可以通过基类指针或引用来操作派生类。这样的指针或引用具有行为的多态性&#xff0c;就好像它们同时具有多种形态。C允许你通过基类指针和引用来操作派生类数组。不过这根本就不是一个特性&#xff0c;因为这样的代码几乎从不如你所愿地那样运行。 假…

基于OPENMV实现一个单目测速测试

1、测试平台&#xff1a;OpenMV4H7Plus开发板​ 使用的相机是 MT9V034 相机对应为752x480黑白图像&#xff0c;为全局快门 2、测速的时候&#xff0c;仅选取最大物体的抓取&#xff0c;这里采用了几个步骤&#xff1a; ①、直接计算灰度的帧差 ②、对帧差进行阈值处理以获取mot…

【代码随想录训练营第42期 Day7打卡 LeetCode 454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和

目录 一、做题心得 二、题目及题解 454.四数相加II 题目链接 题解 383. 赎金信 题目链接 题解 15. 三数之和 题目链接 题解 18. 四数之和 题目链接 题解 三、小结 一、做题心得 今天是代码随想录训练营打卡的第七天&#xff0c;做的也是同昨天一样的哈希表部分…

CUDA编程之grid和block详解

CUDA 文章目录 CUDAgrid和block基本的理解1维 遍历2维 遍历3维 遍历3维 打印对应的thread grid和block基本的理解 Kernel&#xff1a;Kernel不是CPU&#xff0c;而是在GPU上运行的特殊函数。你可以把Kernel想象成GPU上并行执行的任务。当你从主机&#xff08;CPU&#xff09;调…

使用Chainlit接入通义千问快速实现一个多模态的对话应用

开通灵识服务 首先需要到阿里云-模型服务灵积开通账户&#xff0c;获得apiKey 模型服务灵积 https://dashscope.aliyun.com/ 进入控制台 &#xff0c;在API-KEY管理里&#xff0c;创建一个新的API-KEY,然后保存起来&#xff0c;后面会用到。 模型服务灵积服务所有API文档地址…

数据结构:构建数字世界的基石

在数字化时代&#xff0c;数据已成为推动社会进步与经济发展的核心驱动力。而数据结构&#xff0c;作为计算机科学的基础与核心&#xff0c;是存储、组织和管理这些海量数据的基石。无论是简单的应用程序还是复杂的系统架构&#xff0c;都离不开高效、灵活的数据结构支持。本文…

KUKA机器人外部自动IO信号经验分享

个人名片 &#x1f393;作者简介&#xff1a;java领域优质创作者 &#x1f310;个人主页&#xff1a;码农阿豪 &#x1f4de;工作室&#xff1a;新空间代码工作室&#xff08;提供各种软件服务&#xff09; &#x1f48c;个人邮箱&#xff1a;[2435024119qq.com] &#x1f4f1…

k8s学习--k8s集群部署kubesphere的详细过程

文章目录 kubesphere简介k8s群集部署kubespere环境准备工作一、配置nfs二、配置storageclass三、kubesphere开启服务(devops) kubesphere简介 下面是官方文档描述 KubeSphere 是在 Kubernetes 之上构建的面向云原生应用的分布式操作系统&#xff0c;完全开源&#xff0c;支持多…

【python】最新版抖音js逆向拿到数据,非常详细教程(附完整代码)

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…