基于USS协议的变频器计算机通信设计

更新时间:2023-08-30 15:10:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

通信变频

!"#$%

文章编号!"BB"3CC((@$BB(DB&3BBE"3B)

!"#$$#$%&’()*+,-.)

丁金林!张

浩!刘国海

!"!#"$#

!江苏大学"江苏镇江

摘要!设计了由工控机与西门子变频器组成的计算机调速控制系统"采用基于!"#$%接口的&""协议!利用’语言编程实现工控机()’与多台变频器之间的串行通信!从而实现一台工控机对多台交流电机的远程控制"该系统具有操作灵活方便!可靠性高!应用范围广等特点"

关键词!计算机控制系统$调速$通信设计$变频器$%&&协议$串行通信$远程控制中图分类号!*+,-.#*)/01

文献标志码!2

!"#$%&’()*’"&+,*-,,&./0)&12’(3"2)4*,3.&5,3*,34+)4,1"&677/3"*"("8

41GHI6J3K6J!LMNGHM:9!O1,HP93Q:6

’I6:JR;P,J6S=8;6<T!LQ=JU6:JR

$"$B"&V+Q6J:(

\Q=;=86:K

9:4*3)(*%1J<89WP7=;:79XYP<=8-.79J<89K;T;<=X79XY9;=W9Z1*+:JW-6=X=J;N+;Y==W8=RPK:<98;[

79XXPJ67:<69J79J<89K]=<^==J1*+:JWXPK<6YK=N+<8:J;WP7=8;6;8=K6=W9JP;6JR,--Y89<979K]:;=W9J<Q=.-(?)6J<=8Z:7=[\Q=1*+79J<89K;<Q=;TJ7Q89J6_:<69J9ZXPK<6YK=N+=K=7<89X9<98;]TP;6JR298K:JW+<979XY6K=:79XYP<=8Y89R8:X[

;,<-"314=79XYP<=879J<89K;T;<=X‘;Y==W8=RPK:<69J‘79XXPJ67:<69JW=;6RJ‘<8:J;WP7=8‘,--Y89<979K‘;=86:K79X3XPJ67:<69J‘K9JR3W6;<:J7=79J<89K

!引言

随着现代控制理论!"#$%的发展和通信技术!&%的提

的远程控制功能$以下讨论了基于,--协议的工控机与变频器间的通信!通过它能方便地实现工控机对变频器的远程联网控制和监控功能$通过.-(?)串行通信端口!实现变频器与工控机的通信$该系统具有灵活方便!可靠性高!应用范围广等特点$

高!变频器已经广泛地应用于交流电动机的远程控制!在石油"化工"炼钢"造纸等行业中被广泛使用#通过微机控制变频器’(#)%!利用微机与变频器之间的通信功能实现远距离控制$要实现变频器的计算机控制!首先要有完善的微机监控系统!亦即要实现微机与变频器之间的串行通信$*+与变频器的通信采用西门子标准传动产品的通信模式!有两种通信方式%,--协议和*./012,-34*协议$在此采用基于,--协议的通信模式!通过利用+语言编写通信程序!实现了对西门子变频器567895:;<=8>=7<=8

收稿日期!$BB&#BC#"C"修订日期!$BB(#B$#"E基金项目!江苏省自然科学资金资助项目’2F$BB&B(C(

"系统的总体结构

随着近代工业的不断发展!交流调速取代直流

调速已经成为一种趋势!国内外很多大电器公司竞相开发出性能优异的&适合于交流异步电动机调速的变频调速器@简称变频器A$市场上的变频器种类很多!在此采用西门子公司产的567895:;<=8系列变

通信变频

!"#$%

频器!该变频器遵循!""通信协议"接收来自主机的控制信息"然后反馈信息给主机作为接收信息的应答!变频器在接到计算机发来的命令后"首先检查命令中的起始标志"然后检查命令中的站地址是否与自己的站地址相符"如果不一致"说明计算机是与其他变频器进行通信"从而忽略该命令#如果一致"就响应该命令"将执行结果回送到计算机"并结束这次通信!变频器的物理基本接口是标准的

对串卡进行跳线"选择中断号及地址"以及通信方式!选择中断号与地址时要注意不可冲突"要选择不同的中断号与不同的地址"同时也不能与工控机中其他设备的中断号和地址相同"否则通信无法正常实现!通过=*<与=*>的跳线可以选择#"%..与

#"%&(不同的通信方式!#"%..需要九根信号线"采

用一对一的接线方式"发送与接收数据同时进行"即全双工方式!#"%&(只要接两根信号线"即?@$

#"$%&’接口!#"%&(标准传输的数据一般是半双工

形式"半双工技术容许在同一根电缆上进行数据的双向传输!这就容许用简单$价格便宜的总线电缆进行高速的数据传输!

系统的总体结构如图)所示"利用*+,&--卡通过光电编码盘对电机进行测速"利用&).*/卡测量电机间皮带的张力"把速度和张力的采样数据送到*+处理"从而实现对电机的远程控制"在此利用

A@B与?@A@C"两根线同时发送和接收数据"采用

握手信号判断数据的传输方向与开关!串卡硬件设置完后就可以插入工控机的插槽!

#"1&’接口采用的是一种差分传输方式"各节

点之间的通信都是通过一对%半双工&或两对%全双工&双绞线作为传输介质!根据#"1&’的标准"接收器的接收灵敏度为D.229E"即接收端的差分电压大于$等于D.229E时"接收器输出为高电平#小于$等于D.229E时"接收器输出为低电平#介于D

+语言编程"基于*+,01(提供的#"1&(接口实现

了*+与多台变频器的串行通信接口"成功地实现了单台工控机对多台交流异步电机的灵活控制!这里重点突出工控机通过*+,01(板卡与变频器

.229E之间时"接收器输出为不确定状态!在总线

空闲即传输线上所有节点都为接收状态以及在传输线开路或短路故障时"若不采取特殊措施"则接收器可能输出高电平也可能输出低电平!一旦某个节点的接收器产生低电平就会使串行接收器找不到起始位"而引起通信异常!因此"在硬件上应在整个通信线路的远端进行适当的偏置处理%使接收端的差分电压大于$等于.229E&"以使得总线上所有节点都处于接收状态时"其接收器都输出高电平!

变频器的系统参数设置"可以通过前面板上的薄膜型按键改变和设定参数"以调节出所需要的变频器特性!被选定的参数号和设定值通过1位的

#"1&(的接口部分!#"1&(的驱动器在!""总线上最多可带-.个接收器"在波特率为)22345678时"

通信距离可达到).229#在通信距离为)(9时"波特率可达到)22:45678!在工业现场"#"1&’是应用较多的一种通信方式!图中工控机*+通过

*+,01’%含#"1&’接口&与多台变频器相连"最多可达到-.台!每个变频器被赋予各自的地址码用以

识别身份!这样"上位机就可以通过#"1&’通信线"对挂在上面的所有变频器进行控制操作!

,F?显示屏显示出来!该系统涉及到参数有’!*2>)单元存放串口连接的从站地址"为变频器设定一个独立的地址!"*2>.设置串口连接的波特率"

在此设为<"表示波特率为><22478!#*2>-单元设定串口通信的超时时间"即两次输入电报之间的最大允许间隔!该特性用于发生通信失败时关断变频器!在接收到一个有效报文时开始计时"如果在规定时间内下一个数据报文没有收到"变频器将停机并显示故障码G22&"此单元设为2时控制功能失

!工控机与变频器之间的通信设计

利用*+,01-701’串行通信卡实现工控机;*+

效!$*2>1单元存储串行额定系统设定值"通过串行接口以百分比形式传输到变频器的设定值!%

与变频器之间的通信!*+,01’卡提供两个#"1..7

1&’接口"每个串口有一个)<字的缓冲区!首先要

*2>’单元表示!""的兼容性"存放频率分辨率"2表示2H)的分辨率")表示2H2)的分辨率".表示

!

通信变频

!"#$%

!"#是非比例的!!$%&’单元设定变频器为本机控制或通过串行接口的远程控制"’表示本地控制"&表示远程控制!变频器的型号可以通过$&&(单元查询!通信过程中把$’’&单元设为)"$’’’单元运行显示*""串行总线状态!*""状态码的含义#’’&表示信息正常$’’+收到从站地址$&’’表示起始字符无效$&’&表示超时$&’+表示检测和值错误$&’(

表示不正确信息长度$&’,表示奇偶校验失败!当接收到&个字节时显示闪烁"说明串口连接已建立$如果显示连续闪烁%&’’&"一般表示总线终端故障!

变频器的控制线连接通过两个端子排完成"一个控制端子"一个电源与电机端子"每个端子排由两部分构成!应注意#如果用前面板上的外部-",./接口"就不要用内部的-",./接口’端子+,和+/(!在此采用前面板上的-",./接口"该-",./01型接口是一个%针接口"脚(是脚$2"脚/接’3"脚

中"参数L’%,可设置设定值的变换系数!

数据传输的时间要求#在发送命令字符串时"首字节"9?是字符串的起始标志"但仅有一个起始

"9?还不足以使变频器识别一个命令信号的开始""9?位之前"还要有一个起始间隔时间!这个间隔时

间至少有两个报文帧的运行时间"这是发送一个信息的组成部分!计算机发送完最后一帧任务报文与变频器发送应答报文的间隔时间为响应延迟时间!允许的最大响应延迟时间为+’PF"同时不能小于起始间隔时间!

%工控机与变频器间通信的软件流程设计

图+所示为系统的主流程图"首先对系统初始

化"然后选择电机"根据从站地址判断控制对象!系统可以采用网状结构"或者采用点对点的形式!如果采用网状结构"则只需要一个串行通信卡!如果结成点对点的通信方式"则通信卡的个数由从站的个数决定!一个串行通信卡提供两个-",./通信接口"所以所需串行通信卡的个数是从站数的&Q+!在启动电机之前一定要注意先对变频器初始化"使变频器复位"否则启动电机失败!停止电机时"9#为

)接/3"脚.接41!其接线根据通信方式的不同而

异"在此采用-",./通信方式"只要接两根信号线即可"即脚(’脚$2(接$567,/提供的-",./接口的脚&’08982($其脚.’脚41(接$567,/接口的脚

+’08981($其余悬空不接!

’57;>’或’,7;>(时"再次启动电机则不须对变频

!"#$通信协议简介

*""报文分长报文与短报文"短报文6:;<)"

长报文=:;<’5>’&+(!在此采用长报文格式#

"9?

6:;

80-LM;

JK0

386

"9#

>"#

I55

器初始化!发送报文后一定要有延时"否则变频器来不及反映作出响应!

"9?’值固定为’+>("用于表示一个报文的开始!=:;表示在报文中=:;区域后的字节数!对于@ABCD@EFGHC变频器其通常固定为&+’’5>(!80-是一个包含了从站变频器地址的单字节区域"其位

/是广播位!I55用作报文的校验"将对报文中该区

域以前的所有字节进行异或检验!如果变频器收到一个带有错误结果的报文"它将放弃并拒绝发出应答!JK0设为’"因为@ABCD@EFGHC等通用变频器不使用它!386包含LM;区域中所指定的参数的值!根据参数类型"此数据大小可能乘以&或’N&的系数!可以参考变频器手册确定该参数的系数!LM;用于控制变频器的参数设定!其位&&未使用"设为

’$高四位为控制位"低十位表示参数号值!"9#’控

制字(用于控制变频器的运行!O"#’状态位(表示变频器的当前状态!>"#用于设定对变频器的频率值!它以值&)(.,’,’’’>(代表&’’!!在@ABCD@EFGHC

对电机进行控制时"在起动电机前"令"9#<

’,7)>使变频器复位"复位前状态字’I7+>"复位后为’I(7>$若"9#<’,7R>则起动电机"电机的运

通信变频

!"#$%

行频率为!"#设定!达到频率!返回$%&’!"若

控制字符"(#%以及频率给定值’将全部报文进行异或产生5位校验码#将报文写入串卡发送缓冲区!通过串口发送缓冲区内容!若发送成功!延时后读取串卡接收缓冲区内容"若不成功!则重新发送!直到最大发送次数!返回错误信息#检查返回报文的,44码!若不正确则重新发送报文!直到最大发送次数返回错误信息"若正确则返回调用程序来选择控制命令!从而实现对电机的远程控制#

"(#)$*’+!则电机停止运行!此时!"#的值无

效!返回$,&&!#!"#为频率设定值-主!从.或频率实际值-从!主.#若要进行频率!设置且!取/位小数!可换算成十六进制!填入!"#区#

工控机与变频器间的通信子流程图如图&所示!首先设置通信报文!包括起始字符"(0$$1!%&长度23+$长报文应设为$4!%&变频器$从站%地址&变频器的控制命令$选择启动&停止&查询等命令写入

!结束语

利用4语言编程设计的基于6""通信协议的

方式!能够更好地抑止干扰!提高系统的可靠性#该系统操作直观!灵活方便!工作准确可靠!能实时采集和处理运行数据!具有很大的实用性#相信随着变频调速领域的扩展!这种监控系统将会有更广泛的应用前景#介于6""协议在高速通信时存在一定的缺陷!不能满足高速通信系统的要求!而

784工控机与西门子公司生产的9:;<=9>?@A<BA;@A<变频器之间的通信!已经成功地实现了工控

机对变频器的远程控制!并能实时检测变频器的运行状况!实现了对电机的启动与停止的监测与控制#通过C"*5D串行连接及采用6""通信协议!其远程控制能力能够达到&/台变频器!从而实现一台784对多台变频器的控制#C"*5D采用差动输入

8CE%7,6"能够克服6""的这一缺点!正在利用它进行使用8CE%7,6"现场总线组成高性能变频器

调速系统的研究#

!下转第F5页"

!

通信变频

!"#$%

*G>=*%)7<]<@32A^_XY\‘9(’2a‘&’@263>L

@G(=%>@J)>&’((Qbc%)6GG*(>’&&2>2)=4’d%be‘(’>6(%Jf$gYEeh)j=><5JG2(=>/ek<2)’l%lL<2)’lmlL

*G>=*%)7<]<@32An_oZ$+Emph*G>=*%)7<]=@32An_oDmZXsh

9(’2ah<2)’l*lL<2)’ltlL

*G>=*%)7<]<@32A^_JZ$+tWW^Z$+Empehqr设为奇校验rq*G>=*%)7<]=@32A^_DmZXsh

9(’2ah<2)’l’lL<2)’lElL

*G>=*%)7<]<@32A^_Z$+Emph*G>=*%)7<]<@32An_oZ$+tWWh*G>=*%)7<]=@32A^_DmZXsh9(’2ah)j=><5J)>*G9=>)ek

<2)’"L

*G>=*%)7<]<@32An_oXYFtZph9(’2ah<2)’HL

*G>=*%)7<]<@32A^_XYFtZph9(’2ah&’@263>L

@G(=%>@J)>&’((Qbc%)6GG*(>’&)>*G9=>)d%beh(’>6(%Jf$gYEeh=@JG2(=>/u_l%lK*G>=*%)7<]=@32A^_DmZXs‘><@36)5v@&QFXDfgcYVe‘

*G>=*%)7<]<<R1FD.E#_"PI‘qr设置超时"P)’<*%&)rq*G>=*%)7<]<<R1.Dm#_I‘qr刷新rq=@w><)’>2>>(J@&-FXY$mt8-n*G>=*%)eu_IeG’((*(JbY’>6GY’(=23Tbe‘

k

!TCRHC

i

qr设置输入项rqqr设置停止位rq

qr启动校验rqqr转换为偶效验rqqr启动偶校验rrqqr启动奇校验rqqr求消校验rqqr启动校验rq

i

(’>6(%Jf$gYEe‘(’>6(%JF+cEe‘’’

ii

@<3*)’JG@=3’e‘<3*)’J@&e‘’’

qr关闭传送文件rq

><)’>2>>(J@&-FXY$mt8-n*3&>=*e‘qr恢复端口设置rq

qr关闭串口rq

需要注意$!在"Xg=%6x环境下-处理器J硬件e和内核J软件e均不提供内存管理机制!程序的地址空间等同于内存的物理地址空间(在程序中可直接对Dqt地址进行操作!而不需要申请和释放Dqt空间!但需要用户自己检查所操作的Dqt地址的占用情况(#在设计中将信息家电监控状态信息放在q

"Xg=%6xq2GGq=%@*(:2>=*%下!先键入:2a’!生成可以指向文件!然后复制到"Xg=%6xq(*:&=)aq9=%下!

再回到刚才的目录!键入:2a’!编译成功后才可以烧写到用户的fg$YV中(

!结束语

由于串行通信广泛应用在嵌入式设备中!以往

的文章只是泛泛地介绍串行通信设计的某个方面(以上结合实际工程项目!从硬件电路的搭建)应用软件的编写两个方面着手!详细讲解了嵌入式设备的的串行通信的设计要点(这对于在嵌入式设备中!特别是基于"Xg=%6x的系统中应用串行通信有重要的参考意义(

参考文献!

R"C

邹思轶7嵌入式g=%6x设计与应用R.C7北京$清华大学出版社!

HIIH$NHO\P7

孟臣!李敏7c$+F多串口扩展器TZHTT\WZ及其应用R0C7单片机及嵌入式系统应用!HIIT%P#yH"OHN7

王学龙7嵌入式g=%6x系统设计与应用!.C7北京$清华大学出版社-HII"$T\SOMI"7

!

!上接第SM页"

参考文献!

!"#

$%&’()*%+,-.’/’($0-123’%456’32.$-!"#$78’9:2;<5=%’<**(&=%2>’&:*>=*%<*%>(*3?=2’3’<>(*%=<3=%’;)52@>=%AB0C7DEEEF(2%)D%&$GG3=<2>=*%-HII"J"KLHMNOHPM7BH#!TC

刘国海Q戴先中7直接转矩控制系统的神经网络控制R0C7电工技术学报!HII""S#$"TO"N7

""""""""""""""""""""""""""""""""""""""""""""""

2<*::6%=<2>=*%G(*>*<*3@*(2%=%@*(:2>=*%<*::6%=<2>=*%G(*<’))=%A)/)>’:R0C7DXXY;X*%@’(’%<’Z(*<’’&=%A)Q"HIIO"HIT7RMCRPC

曾毅!蒋宏!张复涛7变频器网络通信效率的提高方法R0C7电气传动!HIIH%H&$M"OMT7

范玉璋!张健7微机对多台变频器通信和监控的设计与实现R0C7计算技术与自动化!"[[[%T&$TPOT\7

"[[M!T$

+/68*%U*602’;V*7W’)=A%2%&G’(@*(:2%<’’?2362>=*%*@

!!

本文来源:https://www.bwwdw.com/article/slti.html

Top