hg8868皇冠下载是一家享誉中外的游戏平台,hg8868皇冠下载品种齐全玩法多样,hg8868皇冠下载也是玩家们非常喜欢的游戏平台,hg8868皇冠下载为您24小时服务!

<menuitem id="f4ovz"><output id="f4ovz"></output></menuitem>
<menuitem id="f4ovz"></menuitem>
      1. <tbody id="f4ovz"></tbody><meter id="f4ovz"></meter>

      2. <meter id="f4ovz"><code id="f4ovz"><var id="f4ovz"></var></code></meter>
      3. <tbody id="f4ovz"><nobr id="f4ovz"></nobr></tbody>
      4. <menuitem id="f4ovz"><delect id="f4ovz"><acronym id="f4ovz"></acronym></delect></menuitem>

        技术天地
        行业应用 首页 > 技术天地 > 行业应用
        基于MX组件的上位计算机与三菱PLC通信
        发表日期:2011-04-20

        基于MX组件的上位计算机与三菱PLC通信

        摘要:

        笔者曾以前拙文基于MS-COMMON组件与上位计算机的通信(杭州自动化10周年论文集,中国工控网等转载),随着FA产品的开放性等市场的要求,上位计算机与PLC的通信还是一个十分广泛的话题。三菱电机推出了MX-Componet组件,使我们开发上位计算机组态等更加方便快揭。

        关键词:通讯,控件,三菱电机

             根据微软权威的软件开发指南MSDN(Microsoft Developer Network)的定义,ActiveX是Micrsoft适应组件对象模型(Component Object Model,COM)开发技术提出的。核心COM允许应用程序之间互相通信和使用彼此的功能,组件对象模型起源于面向对象的编程(Object-oriented programming,OOP)的概念,并把这个模型延伸到操作系统,从而方便任何COM程序对象与其他需要的接口的COM对象通讯。

        目前,在工业控制FA领域,实现人机交互和数据备份的一般选择工业计算机及组态软件。笔者在南京某居住区中水处理项目管理计算机中,选用了Visal Basic6.0作为开发工具,结合三菱电机发布的MX-Component 控件,方便的实现了计算机与三菱PLC的通讯。由于采用三菱MX-Component 控件方面的文献资料比较少,笔者茁文,希望大家指正。

        SW3D5C-ACT-E软件目前版本3.0,支持OS有98,2000,XP等。平台支持VB,VC,VB.NET,VC.NET ,LABVIEW,BC等开发工具。经过安装SW3D5C-ACT-E,系统OCX控件列表内就有相应的驱动OCX:

        一  系统组成构架:


                        中水处理系统组成

        系统描述:由上位计算机,1号从站,2号从站。计算机和PLC之间通过RS-232通讯,直接在PLC编程口读取数据。

        1号站配置:

        电源??椋?nbsp;  Q61P-A2

        主基板:     Q38B

        CPU??椋?nbsp;  Q01CPU

        CCLINK主站:QJ61BT11

        本地输入??椋篞X40

        本地输出??椋篞Y40

        模拟量??椋?nbsp; Q68ADI  采集PH,浊度等信号

        模拟量输出:  Q64DA   控制压滤机,风机,提升泵

        2号站配置:

        电源??椋?nbsp;  Q61P-A2

        主基板:     Q35B

        CPU??椋?nbsp;  Q01CPU

        CCLINK主站:QJ61BT11

        本地输入??椋篞X40

        本地输出??椋篞Y40

        模拟量??椋?nbsp; Q68ADI

        3-12号站

        远程输入输出:AJ65SBTB1-16D,AJ65SBTB1-16T

        分别采集远程水泵运行状态和监视设备。

        系统运行登陆画面


        编写登陆程序。

        标准语法:Open (Communication line opening)

        (1)   Applicable ACT controls

        This function is available for all ACT controls.

        (2)   Feature

        Opens the communication line.

        (3)   Format

        R R

        Visual Basic , Visual C++ ,VBA : lRet = object.Open()

        LonglRetReturned valueOutput

        VBScript : varRet = object.Open()

        VARIANTvarRetReturned value (LONG type)Output

        (4)   Explanation

        The line is connected on the basis of the value set to the property for Open

        method.

        (5)   Returned value

        Normal termination: 0 is returned.

        Abnormal termination: A value other than 0 is returned.

        (Refer to Chapter 6 ERROR CODES.)

        编写程序:

            Dim fLogin As New frmLogin

            fLogin.Show vbModal

            If Not fLogin.OK Then

                '登录失败,退出应用程序

                End

            End If

            Unload fLogin

            frmSplash.Show

        '//////////////////////////

            Open App.Path & "\wecom.txt" For Append As #1

             Print #1, Format(Date) + " " + Format(Time) + "系统开启"

        '//////////////////////////

           frmSplash.Refresh

           Load frmMain

           IRet = frmMain.Q1.Open

        '/////////////////////////

           Print #1, Format(Date) + " " + Format(Time) + "准备与PLC通信"

          

        '/////////////////////////////

          If IRet <> 0 Then

          Print #1, Format(Date) + " " + Format(Time) + "无法链接到PLC"

          Close #1

        '////////////////////////////

                MsgBox "无法链接到PLC,请检查硬件设置!"

        ex:    End

             End If

        '///////////////////////////

        '  Print #1, Format(Date) + " " + Format(Time) + "与PLC通信成功"

          Close #1

         ' Set db = OpenDatabase(App.Path & "\base.mdb")

         ' Set res = db.OpenRecordset("xml")

         '  res.AddNew

         '  res.Fields(0) = "系统开启时间" + Format(Date) + "  " + Format(Time)

         '  res.Update

            Set fMainForm = New frmMain

            Load fMainForm

            Unload frmSplash

            fMainForm.Show


        运行界面

        数据采集,读取位元件,由于采样上来的16个位元件组成一个字读取的,必须在VB程序编写相应的程序,便于在界面反映每个阀门,泵的运行状态。

        标准语法;读数据块

        ReadDeviceBlock (Device batch-read)

        (1)   Applicable ACT controls

        This function is available for all ACT controls.

        (2)   Feature

        Batch-reads data from devices.

        (3)   Format

        Visual Basic , VBA : 

        lRet = object.ReadDeviceBlock(szDevice, lSize, lData(0))

        LonglRetReturned valueOutput

        StringszDeviceDevice nameInput

        LonglSizeNumber of read pointsInput

        实际采集输入状态子程序???/p>

        Dim jy As Integer

         Dim jx As Integer

         Dim jz As Integer

        '将读出的数据分配给数组,注意,这里从Y(1)开始

        '----OUTPUT Y

        '------READ X SATU

        IRet = Q1.ReadDeviceBlock("X0", 5, Wordx(1))

        '------READ Y SATU

        'IRet = Q1.ReadDeviceBlock("Y30", 8, Wordy(1))

          On Error Resume Next

        '   ky = 0

        '  For YI = 1 To 7

        '      Call DecBinX(Wordy(YI), OTY(YI))

        '      For jy = 1 To Len(OTY(YI))

        '        Y(ky + jy - 1) = CBool(Mid$(OTY(YI), 17 - jy, 1))

        '        Next jy

        '        ky = ky + 16

        '      Next YI

                 '-----INPUT X

         ' For i = 1 To 5

          '   Wordx(i) = Int(Rnd * 32766)

          '   Next

           kx = 0

          For xi = 1 To 5

            Call DecBinX(Wordx(xi), OTX(xi))

              For jx = 1 To 16

                 x(kx + jx - 1) = CBool(Mid$(OTX(xi), 17 - jx, 1))

                Next jx

                 kx = kx + 16

               Next xi

             For i = 0 To 7

             Bar1(i).Value = Rnd * i + 60

             Next

         LED1.LEDSTRING = Format(Date) + " " + Format(Time)

        '---------------------------显示处理----------

        '--------------------------------------------

        向PLC写数据块

        标准语法:WriteDeviceBlock (Device batch-write)

        (1)   Applicable ACT controls

        This function is available for all ACT controls.

        (2)   Feature

        Batch-writes data to devices.

        (3)   Format

        Visual Basic , VBA : lRet = object.WriteDeviceBlock(szDevice, lSize, lData(0))

        LonglRetReturned valueOutput

        StringszDeviceDevice nameInput

        LonglSizeNumber of write pointsInput

        LonglData(n)Device values to be writtenInput

        Visual C++  : lRet = object.WriteDeviceBlock(szDevice, lSize,  lplData)

        LonglRetReturned valueOutput

        CStringszDeviceDevice nameInput

        LonglSizeNumber of write pointsInput

        lplDataDevice values to be writtenInput

        Long

        VBScript : varRet = object.WriteDeviceBlock(varDevice, varSize, varData)

        VARIANTvarRetReturned value(LONG type)Output

        VARIANTvarDeviceDevice name(character string type)Input

        VARIANTvarSizeNumber of write points(LONG type)Input

        Device values to be written

        VARIANTvarData Input

        (LONG array type)

        (4)   Explanation

        * The device values for lSize(varSize) are batch-written to the devices, beginning

        with the device specified in szDevice(varDevice).

        * Store the device values to be written in lData (lplData or varData).

        * Reserve an array of lSize (varSize) or more for lData (lplData or varData).

        样例程序:

        For i = 0 To 5

        If Val(Text1(i + 4)) = 0 Then

           MsgBox "参数错误!请重新输入"

           Else

          IData(220 + i) = Val(Text1(i + 4))

        End If

        Next i

        IRet = frmMain.Q1.WriteDeviceBlock("D220", 6, IData(220))

           Text1(10) = Val(Text1(4)) / Val(Text1(5))

           Text1(11) = Val(Text1(6)) / Val(Text1(7))

           Text1(12) = Val(Text1(8)) / Val(Text1(9))

        生成数据报表。


        由于生成报表个性化等特点,更适合中小型监控设备。

        结束语:目前系统已经运行稳定2年多。采用了三菱提供的控件编写上位机器程序,省去了烦琐冗长的通讯部分,开发人员只编写流程处理和工业工程程序???。

        我们可以说,用VB+MX-Component控件构件中小型监控系统是一种经济实用的方案。

        参考文献:1.《MX Component Programming Manual》

                               ------------------------三菱电机

                  2.《Visal Basic6 数据库开发》-----E.winemiller,J.Roff

                               -----------------------清华大学出版

               
          杭州和华电气工程有限公司 版权所有 地址:杭州市西湖区荆山岭路2号汇峰国际D座206 邮箱入口 | 隐私声明 | 联系我们  
          技术热线:0571-88935188、88935199 E-mail:webmaster@hzhehua.com  
        浙ICP备11009523号-1
         
        hg8868皇冠下载小说 有声 好看的言情小说 完美的世界 1993 电影 网络小说排行榜 官场小说排行榜 听中国有声小说 有声
        <menuitem id="f4ovz"><output id="f4ovz"></output></menuitem>
        <menuitem id="f4ovz"></menuitem>
          1. <tbody id="f4ovz"></tbody><meter id="f4ovz"></meter>

          2. <meter id="f4ovz"><code id="f4ovz"><var id="f4ovz"></var></code></meter>
          3. <tbody id="f4ovz"><nobr id="f4ovz"></nobr></tbody>
          4. <menuitem id="f4ovz"><delect id="f4ovz"><acronym id="f4ovz"></acronym></delect></menuitem>