手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp.Net编程>列表

用VB远程控制可编程控制器

来源:互联网 作者:西部数码 时间:2008-04-09
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
  摘要:本文介绍利用VB远程控制三菱A系列可编程控制器的运行,主要包括可编程控制器的设置、可编程控制器控制命令以及VB应用程序,并给出了系统的实现方法与示例程序。

  关键词:三菱PC,串行通信,Visual Basic 6.0。

  1. 引言

  可编程控制器(Programmable Controller,简称PC)是一种数字运算操作的电子设备。它使用了可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作指令,通过数字或模拟输入/输出组件控制各种类型的机械或生产过程。PC具有功能齐全、应用灵活、操作维修容易方便和稳定可靠等特点,因此广泛用于工业现场控制。其典型应用方案是:采用PC作为下位机实现过程的自动控制,以微机为上位机,完成工业流程和工艺参数的显示以及控制参数的修改等功能。但是在一些危险和恶劣环境下,需要用微机远程控制PC系统的运行和停止。本文结合作者所开发的危险环境下控制系统,以三菱A2A 可编程控制器为例介绍VB远程控制三菱A系列可编程控制器的运行,并给出系统实现方法与示例程序。

  2. 系统设置与协议

  为进行系统控制需进行硬件和软件设置,这部分内容是系统实现的关键。系统利用RS232通讯接口线将PC(利用AJ71UC24通讯模块,25针)与微机的串行通信口(COM1,9针)进行连接。

  2.1AJ71UC24的通信控制协议

  PC的通讯模式(mode)开关设置为1。以下是Melsec-A PC 格式1通信协议的格式:



  其中:RR为控制PC启动命令,RS为控制PC停止命令。

  AJ71UC24通信模块所使用的主要控制字以及含义



  2.2 AJ71UC24设置:

  AJ71UC24的通讯参数设置均通过其DIP开关设置,本例的参数设置如下:波特率:9600,数据位:8,停止位:1,有求和效验,可以进行在线写。DIP开关设置如下表:

开关 设置 开关 设置 开关 设置 开关 设置 开关 设置 开关 设置 SW11 OFF SW12 ON SW13 ON SW14 OFF SW15 ON SW16 ON SW17 OFF SW18 OFF SW21 ON SW22 ON SW23 ON SW24 OFF
  2.3 PC的运行开关设置

  若实现利用VB程序进行PC控制,必须将PC的运行开关设置在ON的位置。运行开关设置与对应的控制结果如下表:



  2.4 VB通信功能设计与实现

  VB通过MSCOMM控件控制串行口,该控件屏蔽了通讯过程中的底层操作程序,用户只需设置和监视控件的属性和事件,就可很方便地实现串行异步通讯,它有事件驱动通信和查询通信两种方式,通过检查InBufferCount属性值来判断输入缓冲区中是否接受到相应数目的字符,为实现所述通信,应在窗体中加入一个通讯控件MSComm,控件的参数设置要与上述PC通讯模块AJ71UC24的设置相同。控制命令的传输采用即时传送方法。

  3. 软件编程与实现

  监控微机主要供系统管理人员对PC进行系统运行的控制。下面主要列出微机对PC进行控制有关的程序。本例是以单个PC为例,PC站号为00H,PC号为FFH。:

  该功能的实现必须将PC运行开关扳到RUN位置。通过在Form中加入两个option按钮实现:第一选项为启动,命令为"RR";第二选项为停止,命令为"RS"。

Private Sub Option1_Click(Index As Integer)
 Dim An_Msg, Kzh_Cmd ,rd, rdf, temp, temp1 As String
 Dim i, rdd As Long
 Select Case Index
  Case 0
   Kzh_Cmd = "RR" '启动PC系统
  Case 1
   Kzh_Cmd = "RS" '关闭PC系统
 End Select
 Screen.MousePointer = 11
 If MSComm1.PortOpen = False Then
  MSComm1.PortOpen = True
 End If
 MSComm1.InputLen = 0
 rd = Chr$(5) "00FF" Trim(Kzh_Cmd) "0"
 rd=rd Xy_hj(rd) '其中Xj_hj字符串效验求和函数
 MSComm1.Output = rd
 Do
  dummy = DoEvents()
 Loop Until MSComm1.InBufferCount >= 5
 rdf = MSComm1.Input
 temp = Mid(rdf, 1, 5)
 If temp<> Chr$(6) "00FF" Then
  MsgBox "命令运行失败!!!", 16
 End If
 Screen.MousePointer = 0
End Sub

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS