原创 VB串口通讯与开关量的检测与输出

2008-6-20 10:05 3564 8 9 分类: 工程师职场
VB串口通讯与开关量的检测与输出
摘要:本文介绍了以VB和计算机串口在一个小型配料工程中的应用为例。详尽的阐述了串口在配料系统中的应用方法。特别在串口通讯中的开关量的检测和输出要点。极大限度的降低了系统硬件所占工程中的成本。
引言:在一般的配料工程中,要一台上位机对配料过程中所产生的一系列数据进行保存和统计,往往需要检测来自现场的一些开关信号。在应用工程中,在一般的上位机与称量仪表的通讯过程中,一般只用了3个引脚(TXD ,RXD ,GND),而还有6个脚(CD,DSR,CTS,RI,DTR,RTS)没有用到,而这些没有用到的引脚就正好可用于检测和输出开关量。
下面我将介绍基于VB6.0的平台做的一个小项目。
工程概况:该项目是广州科密集团公司用于一种新型耗材的配方研制所用的一个的自动配方管理软件。由于实验场所环境所限制,要求计算机不放在现场(不要求设立专人去操作计算机),只要求操作工人每称量按一下秤台旁边的一个按钮就可以存储当前每物料种类和其相应的重量,使管理系统以这个实验数据为依据,进行整理和加工。最后得出一些综合分析结果,为以后的正式生产提出配方工艺上的要求。因此系统本身就要求负责实时采集仪表的数据;实时采集开关量(按钮和转换开关的状态);实时的提醒操作员当些次配料是否有效果(根据配方来看是否报警也就是开关量的输出);还有存储当前当种物料的配料量,配方的管理,用户日后的数据查询和分析工作等。
根据这种要求,我们可以选择一种RAD工具来作为开发平台。
  


硬件配置:两套计量设备(包含两台定点输出仪表)一台计算机(工控机)
软件:本实例采用Microsoft公司的Visual Basic 6.0作为开发平台。Visual Basic是一种具有可视图形界面的、快速开发工具,同时它也较流行的开发工具。它可以利用Mscomm控件来完成对串口的控制和开关量的采用以及开关量的输出。

先介绍一下这九个引脚所代表的意义:
RXD表示接收数据
TXD表示发送数据
GND表示接地
注:(连接计算机和通讯仪表的接地端,开关量的输入的公共端就用仪表的电源)
CD表示调制解调器通知通计算机有载波被检测到 
DTR表示计算机通知调制解调器可以进行传输
DSR表示调制解调器通知计算机准备就序
RI表示调制解调器通知计算机有电话打来
CTS表示调制解调器通知计算机可送出数据
RTS表示计算机要求调制解调器将数据发出
根据这些引脚的意义,我们将调制解调器当成其它的外部设备, CD、DSR、RTS、RI可以用于开关量的输入引脚。RTS和DTR可用于开关量的输出。
具体方法如下:
   在工程中,添加部件Microsoft Comm Control 6.0控件。

1. 控件属性设置介绍:
 Commport:设置或返回端口号。就是指 通讯的端口号, 用COMM1就设为1, 用COMM2就设为2, 但MSComm控件的最大值是16, 在本项目中同 时用了两个口, 因为需要和两台仪表进行通讯(常用计算机有两个串口, 如果串口不 够用的话, 可以买串口卡)。
 Settings:设置并返回波特率、奇偶校验、数据位、停止位 。参数格式为:"BBBB,P,D,S"。例如“9600, E, 7, 2”;在RS232中双方必须完全一样, 彼此才能顺利的通信。否则的话将不 能正确的接收到来自对方的信号。
 Handshaking:设置并返回硬件握手协议;(设为无)
 InBufferSize:设置并返回接收缓冲区的字节数;
 OutBufferCount:返回在传输缓冲区中等待的字符数。也可以用它来清除传输缓冲区;
 DTREnable:确定在通讯时是否使 Data Terminal Ready (DTR) 线有效(设为有效)。
 RTSEnable:确定在通讯时是否使 Request To Send (RTS) 线有效(设为有效)。
 CommEvent:返回最近的通讯事件或错误。当发生错误或事件会产生OnComm事件。
 InputMode:设置或返回Input 属性取回的数据的类型。它有两个参数, 0 表示以文字形式取回, 1表示以二进制形式取回。(设为0)
 Rthreshold:设置并返回的要接收的字符数。
 Sthreshold:设置并返回传输缓冲区中允许的最小字符数
 InputLen:设置并返回 Input 属性从接收缓冲区读取的字符数。
PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户809173 2009-10-10 10:49

看不到下面啊
相关推荐阅读
用户103503 2008-06-20 10:12
VC环境下三菱PLC与微机的串行通信
摘 要:主要介绍三菱FX系列PLC与上位机之间的通讯协议,并采用CSerial类来实现串行通信,本文给出了程序设计方法和部分源代码。引言可编程控制器(PLC)是集计算机技术、自动控制技术、通信技术为一...
用户103503 2008-06-20 10:10
PLC高速计数功能的应用
PLC高速计数功能的应用     有朋友关心使用PLC进行高速数据采集(如采集旋转编码器的脉冲信号)的方法,以下以FX系列PLC进行说明。欢迎大家进行更深入地探讨,请介绍您的应用经验。  1、功能  ...
用户103503 2008-06-20 10:02
PLC与PC机通讯的VB源程序
PLC与PC机通讯的VB源程序 PLC与PC机通讯的VB源程序大体如下:如下程序采用的是FX232BD通讯模块,协议就是FX通讯协议。‘强制PLC为RUNPrivate Sub command1_Cl...
用户103503 2008-06-18 18:02
FX2系列PLC构成电梯控制系统特性分析
摘要;文中分析了电梯的负载特性,阐述了采用梯形加速曲线的电梯理想速度曲线,结合变频器和PLC的性能,论述了电梯控制系统的构成和工作特性。阐述了电梯速度曲线产生的方法,归纳了由PLC构成的控制系统软件设...
用户103503 2008-06-18 18:00
基于西门子PLC的电梯控制系统
1 引言在常规自动控制系统中,传感器与执行器是独立接线的,多个传感器和执行器构成的系统需要大量导线。通信总线应用到测控系统中,不仅能节省大量的导线,而且可提高系统的可靠性。已被广泛采用的工业总线一般有...
EE直播间
更多
我要评论
1
8
关闭 站长推荐上一条 /3 下一条