IfvarCycle(1)="1"AndvarLogging(1)="1"ThenlngRow=3IfRange("INDATA!A3").Value>3ThenlngRow=Range("INDATA!A3").ValueEndIfForlngRow=lngRowTo65500IfCells(lngRow,1)=""ThenExitForRange("INDATA!A3").Value=lngRow+1NextRSIchan=DDEInitiate("RSLinx","N1")f810data=DDERequest(RSIchan,"F8:10")f811data=DDERequest(RSIchan,"F8:11")f812data=DDERequest(RSIchan,"F8:12")f816data=DDERequest(RSIchan,"F8:16")f818data=DDERequest(RSIchan,"F8:18")f817data=DDERequest(RSIchan,"F8:17") f820data=DDERequest(RSIchan,"F8:20")f821data=DDERequest(RSIchan,"F8:21")f822data=DDERequest(RSIchan,"F8:22")f823data=DDERequest(RSIchan,"F8:23")f824data=DDERequest(RSIchan,"F8:24") varResults=DDERequest(RSIchan,"F8:25")DDETerminate(RSIchan)Cells(lngRow,1).Value=f810dataCells(lngRow,2).Value=f811dataCells(lngRow,3).Value=f812dataCells(lngRow,4).Value=f816dataCells(lngRow,5).Value=f818dataCells(lngRow,6).Value=f817dataCells(lngRow,7).Value=f820dataCells(lngRow,8).Value=f821dataCells(lngRow,9).Value=f822dataCells(lngRow,10).Value=f823dataCells(lngRow,11).Value=f824dataCells(lngRow,13).Value=Now()EndIfEndSub
(三)、 在VB中实现调用EXCEL后台数据库
因为前期已经实现了VB与PLC的通讯可以实时看到数据的状态了,随后又实现了EXCEL与PLC的通讯也可以实时看到数据的状态,但这两种方法都有其局限性:前者可看、可控但因无数据库无法实现数据的存储,后者可看、可查但因无可执行程序无法实现可控。只有二者结合在一起才能扬长避短充分发挥功效。于是在VB中实现调用EXCEL后台数据库这种方式就应运而生了,这种方式即充分发挥了VB可控的一面又实现了EXCEL对数据的强大处理能力可以说上位机真正实现了对PLC可看、可查、可控的功能。VB与EXCEL的连接方法如下: 1、在工程中引用Microsoft Excel类型库:从"工程"菜单中选择"引用"栏; 选择Microsoft Excel 9.0 Object Library(EXCEL2000),然后选择"确定"。表示在工程中要引用EXCEL类型库。 2、在通用对象的声明过程中定义EXCEL对象: Dim xlApp As Excel.Application Dim xlBook As Excel.WorkBook Dim xlSheet As Excel.Worksheet 3、在程序中操作EXCEL表常用命令: Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象 Set xlBook = xlApp.Workbooks.Open("文件名") '打开已经存在的EXCEL工件簿文件 xlApp.Visible = True '设置EXCEL对象可见(或不可见) Set xlSheet = xlBook.Worksheets("表名") '设置活动工作表 xlSheet.Cells(row, col) =值 '给单元格(row,col)赋值 xlSheet.PrintOut '打印工作表 xlBook.Close (True) '关闭工作簿 xlApp.Quit '结束EXCEL对象 Set xlApp = Nothing '释放xlApp对象 xlBook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏 xlBook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏利用以上命令可以很轻松的实现VB与EXCEL的连接功能在此不再赘述。
五、 结束语
VB因其功能强大、操作简洁近几年在诸多领域得到了广泛的应用,尤其因其对DDE技术的完美支持更凸显出在自动控制方面的优势。通过它我们能很方面的实现上位机与PLC的数据通讯,更能与数据库进行完美对接,真正实现了上控机对DX发射机 可看、可查、可控。希望通过此文对广大一线工作人员有所帮助。
【参考文献】
[1]范逸之,陈立元.Visual Basic与RS-232串行通信控制[M].北京:清华大学出版社,2002:92-130
[2]李玉东,李刚.Visual Basic 6.0中文版控件大全[M].电子工业出版社 ,2008:36-64
[3]ALLEN-BRADLEY.SLC500 ANDMICROLOGIX1000指令集参考手册[M].ALLEN-BRADLEY公司内部资料 2005
[4]童爱红.Visual Basic 6.0程序员指南[M].清华大学出版社,2008:35-94
2/2 首页 上一页 1 2 |