陕西西门子中国授权总代理商-一级代理商

   2023-12-18 340

在工业生产中,人们常常面临着数据采集与管理。作为工厂自动化的三大支柱可编程控制器PLC(Programmable Logic Controller),由于其安全可靠,广泛的用于数据采集与控制。生产过程中,要监视PLC内部的数据与运行状况,选用市场上的人机界面或组态软件,虽然功能丰富,但大都价格昂贵,在一些中小规模的生产场合,人们希望能自己用语言开发一个简易实用的通信程序。微软公司推出的Visual Basic 6.0,开发串行通信程序时,有两种方法,一种是用Windows API函数,另一种是用VB支持的通信控件MSCOMM.OCX。利用Windows API函数是通过调用读写等函数来操作串口。两种比较,使用MSCOMM.OCX控件编程方便,具有更完善的发送和接收功能。这里采用了MSCOMM.OCX控件。

本文根据杭州某包装材料公司原料配料控制系统为背景,简述实现计算机与三菱FX系列PLC通信的实现过程。


二、硬件与选型

日本三菱公司是国际的工厂自动化设备制造商,工业可编程控制器在****占有率一直保持前列。项目选用三菱FX2N-64MR型PLC,SC-09电缆作为计算机与PLC通信的连线。连接电缆的9针端连接在计算机串口上,另一端连接在PLC的RS-422编程口


6ES7 307-1BA01-0AA0电源模块(2A)
6ES7 307-1EA01-0AA0电源模块(5A)
6ES7 307-1KA02-0AA0电源模块(10A)
CPU
6ES7 312-1AE13-0AB0CPU312,32K内存
6ES7 312-1AE14-0AB0
6ES7 312-5BE03-0AB0
6ES7312-5BF04-0AB0CPU312C,32K内存 10DI/6DO
6ES7 313-5BF03-0AB0
6ES7313-5BG04-0AB0CPU313C,64K内存 24DI/16DO / 4AI/2AO
6ES7 313-6BF03-0AB0
6ES7313-6BG04-0AB0CPU313C-2PTP,64K内存 16DI/16DO
6ES7 313-6CF03-0AB0
6ES7313-6CG04-0AB0CPU313C-2DP,64K内存 16DI/16DO
6ES7 313-6CF03-0AM0CPU313C-2DP,64K内存 16DI/16DO组合件(6ES7 313-6CF03-0AB0+6ES7 392-1AM00-0AA0)
6ES7 314-1AG13-0AB0CPU314,96K内存
6ES7 314-1AG14-0AB0CPU314,128K内存
6ES7 314-6BG03-0AB0
6ES7314-6BH04-0AB0CPU314C-2PTP 96K内存 24DI/16DO / 4AI/2AO
6ES7 314-6CG03-0AB0
6ES7314-6CH04-0AB0CPU314C-2DP 96K内存 24DI/16DO / 4AI/2AO
6ES7 314-6EH04-0AB0CPU314C-2PN/DP 192K内存/24DI/16DO/ 4AI/2AO
6ES7 314-6CG03-9AM0CPU314C-2DP 96K内存 24DI/16DO / 4AI/2AO组合件(6ES7 314-6CG03-0AB0+6ES7 392-1AM00-0AA0*2)
6ES7 315-2AG10-0AB0CPU315-2DP, 128K内存
6ES7 315-2AH14-0AB0CPU315-2DP, 256K内存
6ES7 315-2EH13-0AB0
6ES7315-2EH14-0AB0CPU315-2 PN/DP, 256K内存
6ES7 317-2AJ10-0AB0
6ES7317-2AK14-0AB0CPU317-2DP,512K内存


如需读取数据,通过调用GetData子程序。

参数设置程序可参考读取子程序,只是改变命令而已。

Access97数据库中包含三个表单,包括参数表、记录表、报警记录表。

通过如下子程序是将实际称量值(记录表)更新到数据库:


Private Sub SaveData()

Dim i As Integer

Dim valid As Boolean

On Error Resume Next

valid = True

Data1.Recordset.AddNew

Data1.Recordset.Fields("dtime") = TimeSerial(OnHour, OnMinute, OnSecond)

Data1.Recordset.Fields("systime") = Time‘系统时间

Data1.Recordset.Fields("get_xl") = LF(1)‘小料当前称量值

Data1.Recordset.Fields("get_fjs") = LF(2)‘方解石当前称量值

Data1.Recordset.Fields("get_cs") = LF(3)‘长石当前称量值

Data1.Recordset.Fields("get_sys") = LF(4)‘石英砂当前称量值

Data1.Recordset.Fields("get_cj") = LF(5)‘纯碱当前称量值

On Error Resume Next

Data1.Recordset.Update‘更新数据库记录

Data1.Recordset.MovePrevious

End Sub

程序中,LF(i)变量对应为图二系统参数表单中实称值。

保存参数子程序只是对数据库操作,程序结构可参考以上子程序。

上位机与PLC通信质量的好坏,对系统的安全可靠运行影响极大,因此,编写程序时,除了在两者之间的通信协议上保持一致和采取相应的容错技术外,还要考虑系统的整体容错技术,防止系统的不正常。

四、结束语

串行通信是目前计算机与其他设备之间通信广泛采用的方式之一,传送数据准确,程序稳定运行是系统开发的主要目的。本设计中充分利用计算机和PLC的资源,在几乎不增加设备开支的情况下成功的实现上位机与PLC之间的通信


核心提示:西门子plc,西门子触摸屏,西门子变频器,西门子触摸屏
 
标签: 电工电气,工控系统及装备,其他工控系统及装备
反对 0举报 0 收藏 0 打赏 0评论 0
 
同类新闻
  • 联系人:吴远强
  • 地址:上海市金山区枫泾镇环东一路65弄1610室
  • 手机:18616323903
我们的产品