历史上的今天
返回首页

历史上的今天

今天是:2026年01月29日(星期四)

正在发生

2023年01月29日 | 基于NC-Link的机器人远程监控系统研究

2023-01-29 来源:机电信息杂志

摘 要:

为了实现对不同品牌的实时监控以及集中管理,实现机器人的互通互联,设计了一套基于NC-Link的机器人远程监控系统,NC-Link适配器通过机器人的二次开发接口对机器人进行数据采集,然后将采集到的数据通过http协议传输给应用层系统,最终实现机器人和远程客户端的数据传输,并将不同品牌的机器人监控的数据贮存到云端数据库,最后使用VS2017软件设计了机器人的远程监控界面。在远程客户端和适配器端增加时间戳,通过计算两个时间戳之差测得时延为3 ms;通过JMer软件进行压力测试,最终测试结果显示,系统的实时性和可靠性满足要求。

0 引言

随着的进步,传统制造业逐渐开始向着制造过渡,其中智能制造的关键技术在于装备与应用系统的信息交互。由于数控装备属于多源异构的系统,数控装备之间具有非常大的差异,没有统一用于通信的现场总线的标准,导致数据设备之间的信息交互以及数控装备与应用系统的信息交互变得困难。目前,在数控装备互联互通方面,国内外都进行了一定的探索和研究,国外设备通信协议主要有OPC UA协议等,国内设备通信协议有NC-Link协议[1]等。

本文采用国内自主研发的NC-Link技术开发了一套机器人远程监控系统,该系统可以随时访问不同品牌的机器人,实时读取机器人的运动信息。随着现代化进程的加快,工业设备也越来越复杂,设备之间采用的通信协议不一样,增加了统一管理设备数据的难度,为了更好地提高设备之间的协同能力,寻求不同设备之间建立简单的通信方法成为当前的紧急任务。NC-Link采集系统的核心在于如何设计NC-Link适配器,NC-Link适配器可以将底层设备的实时数据以及历史数据传输到远程客户端上,最终实现设备的远程监控功能[2]。该系统可以实现机器人的远程实时监控,从而缩短停机时间,减少突发事故的发生,降低维护和成本,提高生产效率。

1机器人远程监控系统总体构架

本文设计的机器人远程监控系统分成三层,如图1所示,第一层为设备层,中间层为NC-Link层,最上层为应用层。

现场设备层主要由两台机器人构成,提供数控系统所有的原始数据,以及执行应用层的指令。NC-Link层由NC-Link适配器与NC-Link代理器组成,是NC-Link互通互联的最核心部分。其中,NC-Link适配器负责从机器人中读取运行数据然后进行格式解析和转换,再将读取出来的数据以统一的格式发送到NC-Link代理器,NC-Link适配器还能够接收从NC-Link代理器传来的信息,然后将信息发送给指定的数控装备。

整个的数据采集系统由数控装备层、NC-Link层和应用层组成,通过适配器与设备层的工业机器人进行通信,适配器将数据上传至MQTT服务器,路由器将信息传输至阿里云服务器端,通过阿里云服务器将工业机器人的监控数据发送给远程的监控面板。

2工业机器人与远程监控

客户端的通信

工业机器人与远程监控客户端通信的如图2所示,A Server是基于NC-Link适配器开发的一个微服务应用程序,客户端可以直接发送HTTP请求给API Server来实现和数控机床之间的通信功能。API Server和设备之间,通过MQTT服务器进行数据交互,两者需要分别与MQTT服务器建立连接。采用订阅/发布的模式,设备和API Server会从MQTT Server订阅相应内容的topic,MQTT Server接收到相应的topic后推送相应的数据内容给发起订阅的设备或者API Server。客户端应用从API Server通过HTTP请求/响应的方式进行数据交互,最终实现与设备的交互。

3NC-Link适配器设计

适配器是客户端和代理端与机器人进行通信的桥梁。针对华数Ⅲ型机器人的二次开发接口进行适配器设计,适配器从下到上分成三层:数据驱动层、数据字典层、数据接口层。

3.1数据驱动层

数据驱动层是应用层与工业机器人进行通信的桥梁,本文以华数Ⅲ型机器人为例,应用层发送连接请求,适配器收到请求后,调用华数Ⅲ型机器人的二次开发接口进行连接。机器人调用华数Ⅲ型机器人的二次开发接口连接函数isConnected( ),不同的机器人需要调用不同的接口函数。机器人连接代码如图3所示。

3.2数据字典层

数据字典层是对机器人的数据进行统一的定义,设备模型是设备实体在信息空间的信息化映射。设备模型的评判标准是工业机器人主要部件的属性信息和状态数据都应该展现出来。机器人的设备模型应该包含以下的设备信息:设备ID、类型和名称等识别标志信息,设备组成部件及部件的下属组件的相关信息,设备轴数、通道数、切削速率等相关信息。

一个完整的数控装备信息模型包括以下五类对象,分别是根对象、设备对象、组件对象、数据对象以及采样通道对象。根对象是模型中最外层的对象,包括其他的四类对象,根对象主要包含信息模型的基本信息,比如信息模型的名称和唯一标志;设备对象用于描述设备中的类型、配置等相关信息;组件对象用于描述设备下组件的参数;数据对象是用来对数控设备的各类相关参数以及采样的数据进行描述,其中包含可修改的数据和不可修改的数据,可修改的数据除了可以查阅外还可以修改,不可修改的数据只能用来查阅;采样通道对象主要用于描述数控设备中可以进行采样的数据以及对应的采集周期。

根据信息交互模型和实际系统建立的工业机器人数据模型如图4所示。

3.3数据接口层

数据接口层的作用主要是与MQTT代理器或客户端进行数据交互。将应用系统、代理器、适配器之间的通信规则统一称为NC-Link接口。NC-Link接口定义了8种,常用的有3种——模型侦测、数据查询以及数据采样[3]。机器人的模型侦测功能测试如图5所示,数据查询功能测试如图6所示,数据采样功能测试如图7所示。

4云端服务器与远程监控界面设计

本文选择B/S架构作为通信的开发架构,应用MySQL数据库技术存储数据和提取报文数据。当智能监控模块发送的数据被云端服务器接收时,对数据进行存储,然后远程监控客户端将存储的数据直观地显示在客户端的人机界面上,从而完成服务器和客户端的交互。

通过语言远程监控客户端的界面如图8所示,通过连接阿里云服务器,从阿里云服务器读取数据。远程监控客户端界面主要采集两个机器人的位置信息和运行状态。

5系统测试

在远程客户端和适配器端增加时间戳,通过计算两个时间戳之差测得单线程时延为3 ms。通过JMeter软件进行服务器的压力测试,结果如表1所示。根据项目管理系统的需求,首先并发用户数从1开始逐渐增加到100,最大并发用户数为500,满足系统的要求[4]。

6结语

本文设计并实现了基于NC-Link协议的工业机器的数据采集系统,目标在于实现不同的机器人协议到NC-Link标准协议的转换,进而实现不同品牌的工业机器人工业设备数据的远程监控。本文通过对数据采集接口进行设计,实现工业机器人不同协议的标准化,可以解决不同品牌的机器人和协议的多样性带来的多样性问题[5]。除此之外,系统测试表明,该系统采集数据的时延为3 ms,满足网络的性能要求。

审核编辑:汤梓红

推荐阅读

史海拾趣

FORYARD公司的发展小趣事

面对日益激烈的市场竞争和客户需求的变化,FORYARD决定实施智能制造转型。公司投入巨资引进先进的自动化生产线和智能管理系统,实现了从原材料采购、生产加工到成品检验的全流程智能化管理。这一转型不仅大幅提高了生产效率和产品质量,还降低了人力成本和运营成本。同时,FORYARD还积极拥抱工业互联网和大数据等新技术,通过数据分析优化生产流程、预测市场需求,进一步提升了企业的竞争力和市场响应速度。

Amkor公司的发展小趣事

在20世纪80年代初,FORYARD公司由一群电子工程师在硅谷创立。起初,公司专注于研发高性能的半导体芯片,但面临激烈的市场竞争和技术壁垒。为了突破重围,FORYARD决定聚焦于低功耗、高集成度的微控制器(MCU)领域。经过数年的潜心研发,公司成功推出了一款具有革命性创新的MCU产品,凭借其出色的性能和价格优势,迅速在智能家居和可穿戴设备市场占据一席之地。这一成功不仅为公司赢得了市场认可,也为后续的技术创新和业务拓展奠定了坚实基础。

A-BRIGHT公司的发展小趣事

在快速发展的同时,A-BRIGHT公司深知品质的重要性。公司加大了对品质管理的投入,引入了先进的生产线和检测设备,并建立了严格的质量管理体系。通过持续改进和优化生产流程,A-BRIGHT的产品质量得到了显著提升,赢得了客户的信任和好评。

德国ACAM公司的发展小趣事

德国ACAM公司成立于1996年,总部位于施图登湖,毗邻斯图加特和卡尔斯鲁厄。公司从创立之初,就专注于时间到数字转换技术及其应用的研发。ACAM公司凭借其创新的技术和卓越的研发实力,在极短的时间内就取得了显著的成果。特别是在时间数字转换器(TDC)技术上,ACAM公司成功开发出业界领先的产品,为后续的快速发展奠定了坚实的基础。

ETL [E-Tech Electronics LTD]公司的发展小趣事

在追求经济效益的同时,ETL也积极履行社会责任。公司注重环保和可持续发展,采用环保材料和绿色生产工艺,降低生产过程中的能耗和排放。此外,ETL还积极参与公益事业,为社会做出了积极贡献。这些举措不仅提升了公司的社会形象,也为公司的长远发展奠定了基础。

Eurofarad公司的发展小趣事

Eurofarad始终将品质管理作为公司发展的重要保障。公司建立了完善的质量管理体系,从原材料采购到生产、检测、包装等各个环节都进行严格的质量控制。同时,Eurofarad还注重持续改进,不断优化生产流程和提高生产效率,确保产品的品质和性能始终保持在行业领先水平。

问答坊 | AI 解惑

让我们DIY一个FPGA开发板,预备中

上周发贴:让我们一起DIY个 FPGA开发板, 报名喽~~~ 非常感谢大家的支持,先分享一些资料,再对电路图做完善后与大家共同探讨! 开发板: 1、先做一个简单的FPGA开发板,小试锋芒。以ALTERA的CYCLONE1为核心,采用EP1C6Q240C8,配合EPC1S。以及LC ...…

查看全部问答>

零起点学习STM32F107开发第2讲( 视频:STM32固件库介绍及使用MDK创建工程)

废话不多说了,请看下边视频。随后的教程我也尽量以视频的形式给出,敬请关注!$(\'swf_Y5X\').innerHTML=AC_FL_RunContent(\'width\', \'550\', \'height\', \'400\', \'allowNetworking\', \'internal\', \'allowScriptAccess\', \'never\', \'sr ...…

查看全部问答>

求对txt文件进行删除行操作代码

本人想把一个几万行的txt文件内的,某些行删除,手工太慢。想把带有某些字符(比如一个单词)的行全部删除。操作以后保存退出。 请问用到什么方法?…

查看全部问答>

开机

我的电脑密码记不得,如何解开电脑的密码,在哪里进行操作,登陆密码,各种操作系统的解发,请大家帮助 急急................................…

查看全部问答>

wince bootloader问题

我购买了一块 yc2440的开发板,硬件构成:s3c2440+64M nandflash+64M ram,其他的都不重要了,反正它是用nandflash启动的。我把开发板内存和nandflash都扩容了一倍,成了128M,现在想自己开发一个bootloader,不知如何下手,请各位大侠指点一下。原 ...…

查看全部问答>

问哈关于库连接的问题

   在stdafx.h中加入 //{{包含eSuperMap 类库头文件 #include //}}包含eSuperMap 类库头文件 了后 也在tool---Options加了库文件后 还弹出E:\\eSuperMap\\MyeSuperMap_evc4\\MyeSuperMap_evc4\\stdafx.h(31) : fatal error C1083: Cannot ...…

查看全部问答>

250w功放电源问题

现在在做电机的相关课题,驱动器使用的是普通的功率放大电路,原理上与集成运算放大器相同,目前出现了一个问题: 上周驱动电机时电路正常工作,且带动电机正常运动。经过一段时间后,目前电路不带负载的情况下正常输出波形,但在其带负载后不能正 ...…

查看全部问答>

(++急)有偿请求解决单片机串口多机通信程序问题

各位大侠们,麻烦帮忙看看这个例子,是我毕业设计的题目,由于单片机C编程学得不精,这几天一直在调程序都没法调出来,还请各位大虾们帮帮忙!万分感激!!! 硬件实现功能: 1、从机U2按键按下,在本机显示,同时将按键值送往主机U1,在主机显示 ...…

查看全部问答>

美资企业,招聘 IP protocol engineer(SW 3#)

公司名称: Carrier Access 公司网址: http://www.carrieraccess.com 电子邮箱: lshi@carrieraccess.com,简历请注明信息出处 工作地点: 上海 外语要求: 英文良好 简历接收方式: 英文及中文 学历: 本科以上 职位描述: RESPONSIBILITIES: ...…

查看全部问答>