APP下载

基于NB-IoT模块的机器人监控系统移动应用开发

2021-02-03吴泽枫李成刚宋勇储亚东陈飞翔吴树景

机械制造与自动化 2021年1期
关键词:报警远程单片机

吴泽枫,李成刚,宋勇,储亚东,陈飞翔,吴树景

(南京航空航天大学 机电学院,江苏 南京 210016)

0 引言

随着国内“机器换人”战略的全面推进和发展,机器人在生产制造方面的投入力度逐步加大,出现了数量骤升的现象。虽然机器人具备重复劳动、无需停机的优势,但是在夜以继日的工作过程中,易发生由于零件磨损或机械疲劳等原因导致的机器故障,从而造成机器停机或维修不及时的严重局面,这势必会严重影响到机器人应用企业的生产效益。因此,对本地机器人进行远程监控显得尤为重要,通过机器人监控系统来远程监控机器人的状态参量(关节的角位移、角速度、角加速度、力/力矩等),对数据进行处理分析,一旦发现数据异常,用户可在手机APP中通过机器人运动复现、历史数据查询和超值报警等功能,快速甄别问题所在,从而及时指派维修工程师到本地对机器人进行维护修理,确保机器人稳定运行。

ABB公司研发了机器人远程服务系统[1],该系统通过在机器人终端安装带有GPRS无线通信网络功能的服务箱,远程传输数据。该系统可对机器人进行远程监控、故障诊断和报警。朱心科等人[2]设计了一种水下滑翔机器人监控系统,利用GPRS模块传输数据,实现现场及远程对水下滑翔机器人的监控。以上基于GPRS模块开发的监控系统,大多存在高功耗、高资费等不足。李毅等人[3-4]开发了一套飞行吸附机器人无线监控系统,该机器人的核心处理器利用ZigBee无线通信模块将各种姿态数据发送到客户端PC机上,进行实时显示和控制机器人飞行。但由于ZigBee模块需要通过集中器和网关连入网络,存在现场部署复杂的缺点。随着物联网技术的快速发展,NB-IoT低速率窄带作为IoT(物联网)领域一种新兴的物联网通信技术[5],支持低功耗设备在广域网的蜂窝数据连接。廉小亲等人[6-7]开发了一种基于NB-IoT的空调远程控制系统,该系统采用STM32作为主控制器、NB-IoT技术为核心进行网络传输,并基于华为公司的OceanConnect云平台进行开发,用户通过Web客户端或手机移动端便可对空调进行远程控制。董玉荣等人[8-9]提出一种基于NB-IoT的智慧停车系统,该系统利用NB-IoT模块与地磁传感器采集停车位状态信息,并将信息传输到云端服务器中,用户通过手机APP即可实时查看城市停车位的状态信息,并可进行在线预订、在线支付和车位导航。以上利用NB-IoT模块开发的远程监控系统,既简化了现场安装部署,又同时具有低功耗、低成本、广覆盖、大连接等优势。本文研究一种基于NB-IoT模块的机器人监控系统,具有如下优势:

1)采用NB-IoT模块作为网络数据传输模块,通过采集数据后直接传入网络,简化了现场部署,降低了实施成本,并且可同时连接多个机器人进行监控;

2)云服务器拥有强大计算和海量存储等优点,可对机器人大量的历史状态参量进行存储和处理,有利于维护工程师对其数据进行深入研究和分析;

3)通过使用手机APP可对多个机器人进行远程监控,更加方便快捷;同时对机器人的三维模型进行运动复现(回放机器人的工作过程),使得用户监控机器人更加直观清晰。

1 机器人监控系统架构

整套机器人监控系统架构如图1所示,其工作过程为:

1)机器人控制系统中的硬件终端(51单片机系统和NB-IoT模块)通过串口获取本地机器人的状态参量数据(各关节的角位移、角速度、角加速度、力/力矩等)后,先对数据分析处理,若数据异常则本地直接报警,并进行数据打包;

2)51单片机系统将其数据经串口传到NB-IoT物联网通信模块;机器人监控系统基于TCP/IP网络传输协议和NB-IoT模块,通过LPWAN(低功率广域网络)技术创建Socket通信接口,建立与云服务器的连接,成功后上传数据包;

3)云服务器接收数据包并进行解析,将数据分别插入到MySQL数据库中表格相应的位置;

4)通过移动监测系统,用户可在手机APP中对机器人进行远程监控,实现机器人运动复现、历史数据查询和超值报警、多机器人监测切换等功能。

图1 基于NB-IoT模块的机器人监控系统框架

2 监控系统设计

2.1 机器人控制系统硬件终端电路设计

机器人控制系统的硬件终端电路如图2所示,主要实现将本地机器人状态参量数据打包,经串口UART由NB-IoT模块发送到云服务器的功能。该硬件终端主要包括51单片机、复位电路、晶振电路、NB-IoT模块、蜂鸣器报警电路。其中,51单片机是一种低功耗、高性能的8位微控制器,同时拥有8 K字节系统可编程Flash存储器;该硬件电路配有复位电路和晶振电路,其复位电路用于单片机上电复位和手动按键复位,晶振电路用来产生单片机工作所需的时钟频率,本文中采用11.0592MHz的石英晶振,故其一个机器周期约为1.085μs;NB-IoT模块用于远程数据传输,本文使用的M5310-A是一种工作在频段Band3/Band5/Band8的工业级NB-IoT模块;蜂鸣器报警电路用于现场报警。51单片机、复位电路和晶振电路构成了单片机最小系统板,可以保证单片机系统正常稳定地工作。

图2 硬件终端电路原理图

机器人控制系统中硬件终端电路的设计和实现过程如下:

1)利用C语言在Keil软件中开发51单片机的程序,实现通过异步串口通信获取本地机器人的状态参量数据的功能。本文中设置串行口工作方式为10位异步收发(8个数据位,无奇偶校验,1个停止位),波特率为9600bps;

2)硬件终端中装有蜂鸣器报警电路,51单片机对获取的机器人数据进行判断分析,若数据出现超值等异常情况,机器人控制系统通过控制单片机IO口(P2.0)输出低电平导通三极管PNP,蜂鸣器直接报警,现场提醒维修工程师及时排查问题;

3)51单片机将机器人数据打包后,由串口UART传输到NB-IoT模块,基于TCP/IP网络传输协议,NB-IoT模块利用LPWAN技术通过AT指令连接移动蜂窝网络,经创建Socket通信接口并提出连接云服务器的公网IP和端口Port的连接请求Connect(),通过TCP3次握手获得云服务器的接收请求Accept()后,便可实现远程连接,最后通过Send()将数据包发送至云服务器,发送完成后,关闭Socket。

2.2 云服务器设计

云服务器系统框架图如图3所示,主要实现接收来自机器人控制系统的机器人状态参量数据,并将数据存储到MySQL数据库中的功能。

云服务器的设计和实现过程如下:

图3 云服务器系统框架图

1)本文的云服务器是基于阿里云公司的服务器进行开发,基于TCP/IP网络传输协议,使用C#语言在Visual Studio软件中编程。先在云服务器中创建Socket通信接口(图4),然后利用Bind()方法绑定云服务器本地IP和端口号Port(3306),并进行监听Listen(),一旦接收到来自硬件终端的连接请求Connect(),由TCP3次握手成功后,建立与机器人控制系统的数据通道;

图4 Socket通信流程

图5 MySQL数据库中的tb_robot 1_torque表格

2.3 移动监控系统设计

移动监控系统即手机APP(图6),主要对机器人进行远程监控,实现运动复现、历史数据查询和超值报警、多机器人监测切换等功能。

手机APP的设计和实现过程如下:

1)将机器人模型导入Unity中。在SolidWorks中将机器人三维模型(UR5协作机器人)转成IGS格式,接着导入3d Max软件中,设置尺寸单位和坐标系等参数后,输出为FBX格式,再导入Unity中完成三维模型的可视化。

2)利用C#语言在Unity中开发手机移动应用,利用UI控件设计机器人模型窗口、历史数据查询和超值报警窗口、多机器人监测切换等窗口实现人机交互,并在Visual Studio编辑器编写脚本功能。

3)通过数据库访问技术(SQL语句)对云服务器中MySQL数据库进行操作(如增、删、改、查),实现远程获取本地机器人的状态参量数据。

4) 通过选定日期,在机器人模型窗口中可观察机器人三维模型的运动情况,点击“启动”按钮即可实现运动复现,对机器人的运动过程进行回放,通过“复位”按钮可使机器人回到初始位置;通过历史数据查询和超值报警窗口,可查看机器人各关节在不同时刻对应的状态参量(如力矩),同时,设定力矩阈值,对超值的力矩数据进行标红显示,实现超值报警功能,提醒用户及时处理;另外,通过设计多机器人监测切换窗口,可同时对多个机器人进行监控,并随时切换。

图6 移动监控系统(手机APP)界面

3 结语

基于NB-IoT模块的机器人监控系统利用51单片机经串口获取机器人的状态参量数据,同时对数据进行综合分析处理,若出现异常数据则本地蜂鸣器直接报警,现场提醒本地工程师及时对机器人维护;然后,51单片机通过NB-IoT模块将数据发送到云服务器中的数据库进行存储处理。用户可通过手机APP对机器人进行远程监控,实现机器人运动复现、历史数据查询和超值报警、多机器人监测切换等功能。整套系统硬件终端使用NB-IoT模块具有功耗低、成本低及现场部署简单等优势;手机APP对机器人三维模型进行监控和对多个机器人同时进行监控切换具有可视化效果好、便捷的优点,且该系统结构简单易实施,非常适合各种机器人用户对机器人的远程监控。

猜你喜欢

报警远程单片机
让人胆寒的“远程杀手”:弹道导弹
远程工作狂综合征
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
远程诈骗
LKD2-HS型列控中心驱采不一致报警处理
2015款奔驰E180车安全气囊报警
死于密室的租住者
奔驰E260车安全气囊报警