ABB机器人仿真软件而开发:Smart组件I/O信号的声明方法
机器人I/O信号说明
Smart组件是RobotStudio软件实现虚拟仿真必不可少的功能,它是机器人I/O信号对仿真对象运动属性控制的连接桥梁。由此可以看出,Smart组件其实就是由I/O信号控制功能与仿真对象的属性配置两大核心功能构成。
对于Smart组件的二次开发也是围绕着这两大核心功能,按照Smart组件的开发标准,I/O信号与仿真对象属性的添加都是在*.xml文件中直接声明。
本期,就先为大家介绍一下Smart组件I/O信号的声明方法。
RobotStudio软件版本:RobotStudio 6.08
SDK版本:RobotStudio SDK.6.08
开发软件版本:Microsoft Visual Studio Professional 2019
项目创建
首先搭建RobotStudio软件二次开发环境,然后使用RobotStudio SDK提供的Smart组件二次开发模板创建开发项目,详细操作步骤请查阅之前发布的文章《RobotStudio软件二次开发:基于C#语言的Smart组件开发基础》。
I/O信号声明方法
I/O信号是Smart组件与仿真环境进行通信的重要元素。在Smart组件二次开发技术中,I/O信号的创建是通过在SmartComponent.xml文件中声明实现的。
SmartComponent.xml文件主要用于在Smart组件中添加组件元素,如I/O信号、仿真对象属性等。使用Smart组件二次开发模板创建的开发项目,SmartComponent.xml文件会自动生成,无需再次添加。
二次开发能够声明的I/O信号均包含在IOSignal类中,并且信号类型可以在IOSignal Type成员中直接枚举,能够枚举的信号类型及机器人信号属性对应关系如下表所示。
I/O信号是在SmartComponent.xml文件中的两个“<Signal>”代码行之间声明的,信号声明代码语句格式如下所示。
public IOSignal(string name, IOSignalType type)
name:指定声明的I/O信号名称,类型为字符串(String)。
Type:指定声明的I/O信号枚举成员类型。
DI、DO、AI、AO、GI、GO类型信号均可声明,声明代码如下图红色方框所示。
完整的I/O信号声明代码如下所示。
<Signals><IOSignal name="DI" signalType="DigitalInput" /><!--声明数字量输入信号--><IOSignal name="DO" signalType="DigitalOutput"/><!--声明数字量输出信号--><IOSignal name="AI" signalType="AnalogInput" /><!--声明模拟量输入信号--><IOSignal name="AO" signalType="AnalogOutput" /><!--声明模拟量输出信号--><IOSignal name="GI" signalType="DigitalGroupInput" /><!--声明组输入信号--><IOSignal name="GO" signalType="DigitalGroupOutput" /><!--声明组输出信号--> </Signals>
I/O信号属性设置
在声明I/O信号过程中也可以对信号的属性进行设置,如数字量信号的初始状态、模拟量信号值的上下限、组信号的初始值等,详细的属性设置如下表所示。
信号属性设置代码是在信号声明代码语句的枚举成员类型后直接编写添加的,如下图红色方框所示。本例中分别对I/O信号的自动重置、最大值、最小值、只读性、可见性、初始值属性进行编写说明。
完整的I/O信号属性设置代码如下所示。
<Signals> <IOSignal name="DI" signalType="DigitalInput" /><!--声明数字量输入信号--><IOSignal name="DO" signalType="DigitalOutput"/><!--声明数字量输出信号--><IOSignal name="AI" signalType="AnalogInput" /><!--声明模拟量输入信号--><IOSignal name="AO" signalType="AnalogOutput" /><!--声明模拟量输出信号--><IOSignal name="GI" signalType="DigitalGroupInput" /><!--声明组输入信号--><IOSignal name="GO" signalType="DigitalGroupOutput" /><!--声明组输出信号--> <IOSignal name="DOautoReset" signalType="DigitalOutput" autoReset="true" /><!--指定信号为自动重置--><IOSignal name="AI0to15" signalType="AnalogInput" minValue="0" maxValue="15" /><!--设定信号最小值与最大值--><IOSignal name="DIReadOnly" signalType="DigitalInput" readOnly="true" /><!--指定信号为只读--><IOSignal name="DIVisible" signalType="DigitalInput" uiVisible="false" /><!--执行信号为初始化不可见--><IOSignal name="DOInit" signalType="DigitalOutput" value="1" /><!--指定信号初始化值为1--> </Signals>
程序编译与测试
在二次开发项目属性的“生成后事件命令行”中修改“TargetPath”对应的目录地址为LibraryCompiler.exe文件所在的目录地址,如D:Program Files (x86)ABB Industrial ITRobotics ITRobotStudio 6.08binLibraryCompiler.exe。若是RobotStudio软件使用默认文件目录安装,则不需要修改。
在RobotStudio软件中创建一个虚拟仿真项目,然后在“基本”菜单栏“导入模型库”下拉菜单中,选择“浏览库文件”。
浏览到编译生成的*.rslib格式的Smart组件二次开发文件,将其加载进来。打开Smart组件的属性对话框,如下图所示,可以看到声明的所有I/O信号以及设置的信号属性。
The End
上一篇:RobotStudio软件:ABB机器人行走轴添加与控制
举报/反馈
上一篇:他把养女抚养长大成人,却拿棍子撵走了女孩的男友,女孩埋怨老爹
下一篇:《新乌龙院之笑闹江湖》:走心电影,让你开怀大笑!
最近更新影视资讯
- 韵府群玉
- 老年临终关怀护理集锦9篇
- 如何评价剧场版动画《和谐(harmony/ハーモニー)》原作:伊藤计划 ?
- 智人战胜尼人的决定性因素 是神灵崇拜与艺术品 在3万7千年前智人击败了远比自己强
- 沈阳参考消息(2017年1月11日)
- 密集架区密集架书库图书馆负一楼期刊阅览区中外文期刊图书馆一楼图书借阅区(A-H
- 费维光:脾胃病17方
- 土耳其身为伊斯兰国家,为什么允许“风俗产业”合法化?
- 高中教师教学反思
- 三观尽毁!90后公务员出轨50岁女上司,聊天言语暧昧,妻子怒举报
- 22应用心理学考研347 首师360有调剂院校吗?
- 铃木凉美女士,你仍期待同时收获怜爱与尊敬吗?
- 团建别墅 | 确认过眼神,是能疯一起的人!Boss,今年年会我们泡私家温
- 《归来》观后感
- 翻译伦理的重要性和译者荣辱观建设研究
- 高二语文期末考试测试题及答案
- 国医大师名单!在北京看中医该找谁,这下全知道!
- 这些年爱过的同人文(BG)
- 荷兰深陷风俗业?日本都要甘拜下风,为何能稳坐世界顶尖位置!
- 戴安娜25年前私密录像首次解密:自述性生活,全英国都被炸懵逼了
- 原创上官婉儿为什么必须死,她做的这件事太无耻,李隆基忍无可忍
- 「医药速读社」Paxlovid临床失败 礼来斥巨资引进Kv1.3抑制剂
- 她是韩国性感女神,靠出演“三级片”走红,今41岁韵味不减当年!
- 电影市场有望点燃 好莱坞大片排队上映
- 评荐《传染病(Contagion)》