3.1硬件配置
在840D系统上实现短信功能,在硬件方面,只需添加一个GsM模块(如图2所示),然后购买一张手机卡插到GSM模块上,最后再把GSM模块连接到PCU50.3的串口上。需要注意,PCu50.3也有具体版本的区别,有的版本不带串口,需要另配扩展的串口接口卡。
3.2软件编写
短信发送软件的功能有两点:一是采集数控系统的信息,二是通过串口控制GsM模块,把机床的信息以短信的形式发送给相关人员。本项目程序由于要使用HMI编程包并最终嵌入到HMI AdvaJlced,因此采用Visual Basic作为开发软件。
3.2.1程序界面设计
运行VB,创建标准的工程项目文件。添加一个MScomm控件(默认的工具箱中没有该控件,首先要通过工程/部件菜单把它加入到工具箱中),再设置其串口通信的相关属性。再添加一个SSTab控件(需手动添加到工具箱),将SSTab选项卡的Tabs属性设置为2,即有两个选项卡,一个选项卡的标题设为“通讯信息”,用来设置通信参数;另一个选项卡的标题设为“发送短信”,用来控制发送短信。程序界面外观如图3所示。
3.2.2序关键代码
(1)读取NCU和PLC变量
可以利用label控件与840D数控系统进行通信,关键代码如下:
①读取NCU变量
如下代码,能够读取NCU中的R1参数。
Labell.LinkTopic=g_chNCDDESen,iceName
Labell.LinkItem=”/ChallneL/Parameter/R[1]lI
Labell.LinkMode=1
②读取PLC变量
如下代码,能够读取PLC中的DB2.DBXl80.o变
量,进而判断是否有700000号用户报警。
Labell.LnkTbpic=g—chNCDDEServiceName
Labell.LinkItem=”/Plc/DataBlock/bit[c2,180.0]”
Labell.LinkMode=1
label控件的LinkItem属性指定了变量名。变量名的写法很复杂,在HMI编程包的帮助文档中有详细说明。
(2)短信发送
GSM模块的控制是通过AT指令来实现的,与短信有关的AT指令如表2所示∞J。只需要在程序中通过串口给GSM模块发送相关的AT指令,就能够实现短信的发送。