首页 | 行业资讯| 行业应用 | 数据统计 | 技术聚焦 | 新品速递 | 资料下载| 相关资源 | 研讨培训 | 论坛  
设为首页
加入收藏
| 工控机 | PLC | 工业以太网 | 现场总线 |  数控系统 |  嵌入式系统  | PC-Based | 机器人 |
| 机器视觉 | FCS | 智能仪表 | DCS |  分布式I/O |  线缆及附件  | 机柜 | 伺服系统 | HMI |
| 软件 | 变频与调速 | 电机 | MES | 软启动器传感器 | RFID | 远程测控系统 | 模型仿真 |
 
 
             站内搜索          热门关键字:PLC工控机变频器DSCMES
 
 
游客,你好!| 登 陆 | 注 册
 
 
 您现在的位置: 首页 > 行业应用 > VB与台达触摸屏通信的实现
VB与台达触摸屏通信的实现
    进入论坛  2007-7-14 9:11:00

  中达电通PLC产品处 王乃全

  摘要:本文重点讨论MODBUS ASCII通信协议及通过VB如何实现与台达触摸屏的通信。对于Visual Basic6编程语言亦有简要的介绍。

  关键词:Visual Basic    MODBUS ASCII   HMI

  1 引言

  在自动化工程集成中经常遇到VB与触摸屏通信问题。对于不同的MODBUS通信协议触摸屏产品,无论是通信协议和VB中的编程原理都是一样的,所不同的仅是MODBUS在PLC和HMI中的地址映射不一样。为了集中解决这个问题,本文以台达触摸屏通讯案例为背景,采用了一个比较简单的实例描述如何建立双方的通信,不涉及到更为复杂的VB与HMI的操作和编程技巧。

  2 串行通信基本概念

  2.1通信的种类

  通常通信的形式可以分为两种,并行通信(Parallel Communication)和串行通信(Serial Communication)。所谓并行,既是一次传输量为8位;而串行一次只传1位。这两种不同的通信模式如图1所示。

  图1 两种不同的通信模式

  2.2 串行通信

  常用的串行通信也有两种,分别位RS-232和RS-485。

  (1)RS-232通讯。RS-232的信号准位乃是参考地线而来的,如图2所示,传输端参考接地端1来传送数据;接收端则参考接地端2还原出传送端的信号准备。

  

  图2 RS-232通讯

  由图2可知,由于两个接地端准位不一定一样,而且很容易受到干扰,所以信号在RS-232线路传输时,很容易产生错误。

  (2)RS-485通讯。RS-485的信号传输方式如图3所示。

 

  图3 RS-485通讯

  RS-485的信号将被传送出去时会分成正负两条线路,当到达接收端后,在将信号相减还原成原来的信号;如果将原始的信号表示成(DT),而被分成的信号分别标示成(D+)及(D-),则DT= (D+)-(D-)

  同样地,接收端在接收到信号后,也依据上式还原成原来的样子。如果线路受到干扰,两条线路的信号分别为(D+)+Noise   (D-)+Noise。接收端还原信号为

  (DT)= [(D+)+Noise]-[ (D-)+Noise] 

  与先前结果一样,所以RS-485可以有效的防止噪声的干扰。

  3 Visual Basic控件

  VB是微软的窗口软件,提供了很多接口成员。对象、属性、事件、方法就是四个重要的接口。

  3.1卷标控件

  此控件专用于显示文字,数字用,显示如图4所示。

  3.2按钮控件

  此控件使用率很高,提供一个供系统用户操作用的按钮,如图5所示。

  

  3.3定时器控件

  此控件的最大作用在于固定的时间内会执行所设置的程序代码一次,如图6所示。VB还提供了大量的控件,在此不一一叙述。

  
图6 定时器控件

  3.4MScomm控件

  要完成VB与PLC等串行设备的通信,MScomm控件是一个很好用的控件。所以在此有必要对MScomm控件做一个较为详细的说明。MScomm非标准控件,要手动添加,步骤如下:选择菜单的【工程】;选择【部件】;在弹出的对话框中做如图选择,在部件选项卡就会出现MScomm控件,如图7所示。MScomm控件基本属性如图8所示。

  

  4 MODBUS ASCII通讯协议(案例)

  Modbus总线通讯协议 分为ASCII和RTU两种。ASCII采用的格式和校验相对简单,本文采用ASCII格式,并仅对使用的功能码进行说明,更多的信息,请参看协议的详细说明。

  4.1 通信格式

 

  4.2 LRC算法

  ADR H+CMD H+DATA H,然后取2的补码

  4.3 功能码

  5 VB与台达HMI通信的实现(案例)

  5.1 控制要求

  (1)PC能控制HMI中某个位地址的启动、停止。

  (2)在HMI上对某个内部寄存器进行数值修改操作,在PC上能同步显示。

  5.2设计思路

  (1)PC控制的内部地址为$2000.0,查看映射表,知道为MODBUS地址为B00001。在PC上按功能码05操作。

  (2)HMI上写入的寄存器地址为$0,查看映射表,知道为MODBUS地址为W40001。在PC上按功能码03操作。

  HMI内部地址与MODBUS地址映射表

   

  用按钮控制$2000.0的启动停止;

  用timer组件不停的读取$0的显示值(十六进制显示,可以转换为十进制);

  用MScomm控件实现PC与PLC的通信。

  5.4代码构成

  (1)LRC算法校验的实现:

  Public Function LRC(str As String) As String

  c = 0

  l = Len(str)   

  For c = c + 1 To l

  c_data = Mid$(str, c, 2)   

  d_lrc = d_lrc + Val("&H" + c_data)

  c = c + 1

  Next c

  If d_lrc > &HFF Then

  d_lrc = d_lrc Mod &H100

  End If

  h_lrc = Hex(&HFF - d_lrc + 1)

  If Len(h_lrc) > 2 Then

  h_lrc = Mid(h_lrc, Len(h_lrc) - 1, 2)

  End If

  LRC = h_lrc

  End Function

  (2)读取$0,也就是W40001数值:

  Private Sub Timer1_Timer()

  MSComm1.Output = ":" + "010300000001" + LRC("010300000001") + Chr$(13) + Chr$(10)

  'MSComm1.Output = ":" + "00050500FF00" + LRC("00050500FF00") + Chr$(13) + Chr$(10)

  inputstring = MSComm1.Input

  Text1.Text = Mid(inputstring, 8, 4)

  End Sub

  (3)控制$2000.0 ON:

  Private Sub Command1_Click()

  MSComm1.Output = ":" + "00050000FF00" + LRC("00050000FF00") + Chr$(13) + Chr$(10)

  End Sub

  (4)控制$2000.0 OFF:

  Private Sub Command2_Click()

  MSComm1.Output = ":" + "000500000000" + LRC("000500000000") + Chr$(13) + Chr$(10)

  End Sub

  (5)HMI中的程序与设置如图9所示(要注意【人机站号】与【控制器】的设置):

 

6 结束语

  VB语言使用的简易为众多工程技术人员与串行设备的通信提供了很大的方便。

  台达触摸屏采用标准的MODBUS协议,这一协议目前广为流行,为大家所熟知,也为大家最终实现通信提供了简化的平台。由于台达所有的机电产品都支持MODBUS协议,所以,掌握了VB与触摸屏通信过程,也就等于掌握了PC与台达所有机电产品的通信。

  参考文献

  [1]VB与RS-232通信实例.

  [2]VB6从入门到精通.

  [3]DOP系列人机界面应用技术手册.

  [4]DVP-Protocal.

  2007-3-15

【发表评论】    【推荐】打印
  相关文章
台达自动化产品在橡塑电缆生产行业的整体解决方案  2007年6月25日
台达自动化技术在精密带刀片皮机上的解决方案  2007年6月14日
基于台达机电技术的同步与张力传动控制解决方案  2007年6月13日
基于台达机电产品的针刺无纺布生产线集成应用  2007年5月17日
 网友评论
  国内新闻
·
艾默生超越有线技术的新思路
·
冯哈伯直流微型电机在高危环境中的应用(英文)
·
冯哈伯微型电机准确控制机械手生产操作(英文)
·
CAN总线培训资料
·
STEP7程序调试手段分析
·
冯哈伯微型电机加速印刷电路板的生产(英文)
更多...
  每周评论
·
宇龙数控仿真系统V3.8破解版
·
HMI在建材行业的应用
·
PLC在塑料机械上的应用
·
通用离散传感器技术的发展简介
·
视觉传感器快速发展中
·
我国的仪器仪表产品与国外的差距
更多...
  热点专题
·
2007年机器视觉专题
·
2007年第十一届广州工控展专题
·
2007年现场总线专题
·
2007年PLC专题
·
运动控制专题
·
智能仪表专题
·
通信网络专题
  技术聚焦
·
在线环保监测系统
·
城市污染源监测SCADA系统
·
水厂投加站加氯机设备的数据采集系统
·
DCS在我国石油化学工业中应用情况
·
动态链接库在LabVIEW中的高级应用
·
便携式仪器的设计经验
更多...
  环球视野
·
Q系列MELSECH网络系统主从站
·
煤气站电气工程图纸
·
三菱工控产品综合介绍
·
SIEMENS 3.2版S7-200编程软件Service Pack3
·
OPC技术综述
·
西门子S7-200 Manual chinese系统中文手册Preliminary
更多...
 
 
  友情连接 

 机床产业网 | 物流产业网 | 汽车电子网 | 汽车产业网 | 中国自动化网 | 慧聪网电气行业 | 中国流体机械网 | 中华印刷机械网 |
 中国工控展览网 | 自动化网 | 中国粉末冶金网 | 中华工控网 | 中国开关网 | 塑料产业网 | 158机床网 | 中国机器人网 | 中国空压机网 |
 中华工程机械网 | 中国机械资讯网 | 中国机械总网 | 中国机械社区 | 中国工程机械商贸网 | 中国工程机械配件网 | 中国工控展览网 |
 大中华制造网 | 我要仪器 | 中国电力网 | 低压电气网

 
 

自动化产业网 版权所有 Copyright (C) 2005-2007 All Rights Reserved