系统人机界面
对于一个有实际应用价值的PLC控制系统来讲,除了硬件和控制软件之外,还应有便于用户操作的方便的人机界面。用户可以通过人机界面与计算机、PLC进行信息交换,向PLC控制系统输入数据、信息和控制命令,而PLC控制系统又可以通过人机界面在计算机上回送控制系统的数据和有关信息。友好的人机界面要求美观易懂、操作简单、具有引导功能并且能真实再现控制设备的状态以及准确地采集所需参数的数据。
本着上述设计人机界面的原则,采用VB6.0的控件组合及原代码可以为监控系统设计众多界面。其中主界面如图1所示。通过此监控界面,可以对被控对象进行远程起停控制,实现通信参数设定、变频器参数设定、速度实时查询以及历史数据存储等功能。
以下是用VB编制的部分程序代码:
(1)正转按钮程序代码
Private Sub Command1_Click ( )
Zhdata = Array(1,1)
Dim nByte ( ) As Byte
ReDim nByte (Ubound(Zhdata) +4) As Byte
nByte(0) = 103
nByte(1) = UBound(Zhdata) + 1
fcs = nByte(1)
For i = 2 To UBound(Zhdata) + 2
nByte(i) = Zhdata(i - 2)
fcs = fcs Xor nByte(i)
Next
nByte(i) = fcs
nByte(i + 1) = 71
MSComm1.Output = nByte
End Sub
(2)历史记录部分程序代码
Private Sub cmdAdd_Click()
Data1.Recordset.AddNew
End Sub
Private Sub cmdUpdate_Click()
Data1.UpdateRecord
Data1.Recordset.Bookmark = Data1.Recordset.LastModified
End Sub
3.2 通信口发送数据
上位机的数据发送主要包括:
(1)行车起停控制命令。按下操作界面上的正转、反转和停止按钮时,引发Click事件,从而在单击事件中打开通信口,发送具有特定含义的字符。PLC接收到字符后,执行相应的操作。
(2)实时查询速度命令。在表单上安排定时器控件Timer,当定时时间到,执行定时器事件Timer( ),定时2秒向PLC发送速度查询命令,PLC读取特定单元内存储的速度值后,上传到界面上用于接收数据的文本框以显示速度值。
4 PLC程序设计
西门子S7-200系列PLC拥有多种通信协议,其中PPI协议、MPI协议与S7协议属公司内部协议、不公开,但西门子提供了自由口通信模式。自由口模式允许应用程序控制S7-200 PLC的串行通信口使用自定义通信协议与多种类型的智能设备通信,即在自由口模式下,S7-200 PLC处于RUN方式时,用户可以用自由口发送/接收指令或发送接收中断指令结合自定义通信协议编写程序控制通信端口操作。本系统选用了这种自由口模式,这样可以使控制系统配置更加灵活、方便。[1]
整个PLC通信程序包括主程序、初始化子程序、校验子程序、读写数据子程序以及接收完成、发送完成中断程序。其中主程序是PLC实现接收、发送功能的主框架。初始化子程序用于设置自由口通信的相关参数。校验子程序采用的是异或校验码,为了防止数据信号传输错误,数据在发送前和接收到后都要采用异或运算进行校验。读写数据子程序用于将PLC中的数据发给上位机和把上位机传来的数据写入PLC。接收完成中断程序会将接收到的数据还原并保存,而在发送完成中断程序中要完成复位相应标志位,校验码寄存器清零等工作。
以下是部分PLC初始化子程序:
LD SM0.0
MOVB 9, SMB30
MOVB 16#EC, SMB30
MOVB 103, SMB88
MOVB 71, SMB89
MOVW +1000, SMW92
MOVB 100, SMB94
ATCH INT0, 23
ATCH INT1, 9
ENI
RCV VB100, 0
版权所有:大林机器视觉培训所有 备案号:苏ICP备14016686号-9
本站关键词:上位机培训 机器视觉软件开发培训 上位机运动控制培训 深度学习培训 网站标签