VB串口通讯与开关量的检测与输出.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
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 属性从接收缓冲区读取的字符数。 2. 采集仪表当前数据 提醒:要和仪表通讯,在参数(Comports、Settings)设置上必须相互吻合。 先要打开对象 MSComm1.PortOpen = True MSComm2.PortOpen = True Private Sub MSComm1_OnComm () If MSComm1.CommEvent = comEvReceive Th

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档