- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Windowsxp下单台PC与多台变频器的串行通信控制.doc
Windows xp下单台PC与多台变频器的串行通信控制------------------------
?
摘 要:介绍了西门子MicroMaster变频器的RS-485通信协议,利用VB6.0中的ActiveX控件MSComm6.0通信控件实现
Windows xp下单台微机与多台变频器的串行通信控制,并能实时检测各个变频器的运行状态。
关键词:变频器、PC机、VB6.0、ActiveX控件、RS-485、事件驱动
一、前言
在许多数控设备中,经常要用变频器去控制交流电机的转速、转向。在某些地方,需要用一台工控PC机灵活地控制多台变频器,以达到控制各交流电机的目的。针对这一需要,一些公司(如德国的西门子、日本东芝、三菱等公司)推出了带有RS485通信接口的变频器,使用户能够方便灵活地选择变频器的强大功能。
在Windows xp下开发工控软件,可以利用Windows xp的丰富资源,方便地生成各种菜单及美观大方的图形界面,软件产品质量高且开发周期短。Visual Basic6.0是Microsoft公司推出的功能强大的Windows开发软件,只能在Windows环境下运行开发32位的应用程序。但在Windows环境下,系统完全接管了各种硬件资源,不允许用户直接控制串行口的中断管理。如何在Windows环境下开发微机的底层资源,已成为当今工业控制软件的一大热点和难点。
本文利用VB6.0的ActiveX控件——Microsoft Communication控件,方便地实现Windows xp环境下与多台西门子MicroMaster变频器的串行通信接口,成功地实现了用单台PC机对多台交流异步电动机的灵活控制。
二、系统的总体设计
图1为系统的总体方框图,这里只重点突出PC机与变频器RS485的接口部分。RS485的驱动器可带32个接收器,在波特率为 100Kbps时,通信距离可达到1.2km;通信距离为15m,波特率可达到10Mbps 。在工业现场,RS485是应用较多的一种通信方式。图中PC机通过RS485接口卡与多个变频器相连接,最多达到32台。每个变频器被赋予各自的地址码用以识别身份,这样上位机便能通过RS485通信线,对挂在上面的变频器进行控制操作。
三、变频器的串口通信协议
对于西门子MicroMaster变频器。其通信方式为RS-485,波特率最高可达19200bps;1位起始位,8位数据位,1位奇偶效验位,1位停止位。变频器接收控制的通信协议如下:
STX:起始字符,02H。
LGE:发送字节数,对于MicroMASTER,为0CH(12个字节)。
ADR:变频器的地址码,取值范围为0-31(bit:0-4位),bit5为1时为广播发送。
PKE:为一16位的字,用来控制变频器的运行参数设置,各bit的含义如下:
对于MicroMaster,控制位为0001时,读变频器的参数;控制位为0010时,写参数到变频器的RAM和EEPROM。bit11未用,置为0。变频器的参数值详见说明书。
IND:为16位的字,未用,置为0。
VAL:为16位的变频器参数,与PKE一起将运行参数写入到变频器中。
STW:为16位的字,用来控制变频器的运行动作。各位的具体含义详见说明书。
HSW:为16位的字,用来控制变频器的输出频率。满频的值为16384(400HZ)对应100%的输出频率,最大满频的值为32767,即200%的输出频率。当取值为32768-65535时,表示反向的输出频率从0-200%变化,电机反转。
BBC:效验字符,为前面所有字节的异或和。
若变频器#2(地址码为02H)以满频的25%输出频率,则以上各参数的值如下:
同时,变频器也向上位机回送状态数据,其通信协议如下:
与上位机向北变频器发送的控制字相比,变频器回送的状态字只是以ZSW代替了STW,HIW代替了HSW,其余字的含义是一样的。
ZSW:为16位的字,用来指示变频器的当前运行状态。各位的具体含义详见说明书。
HIW:为16位的字,代表变频器的输出频率,其定义与HSW是一样的。
因此,对于变频器能通过面板按键的设置功能,通过以上的通信协议也一样能实现。并且通过RS-485通信线最多能同时控制32台变频器,同时各变频器的运行状态也能实时地回送给上位机,这就大大地方便了用户,增加了控制系统的灵活性。
四、Viscal Basic 6.0下对变频器进行串行通信控制
1、VB6.0中的ActiveX控件MSComm
在Windows环境下,操作系统完全接管了各种硬件资源,不允许用户直接控制串行口的中断管理。以往程序员只能通过数目众多的API函数来控制串口。 VB6.0下提供了一个Activ
文档评论(0)