发布于 2004-09-01 23:55:58
0楼
反正今天的活也干不完了。多啰嗦几句,如果对初学者有帮助的话。
MM420只支持PPO1(4个Word长的PKW和2个字长的PZD)、PPO3(2个字长的PZD)
MM430,MM440还可以支持PPO2(4个Word长的PKW和6个字长的PZD)和PPO4(6个字长的PZD)甚至PPO5(4个Word长的PKW和10个字长的PZD)。到底选那个,完全根据你控制的需要。如果就有一台两台变频器,完全可以选用PPO3,PPO4,仅仅传送控制字,参数用BOP输入就可以了。如果系统有五台、十台、几十台变频器。还是用PPO1,PPO2比较好,你可以用一个DB保存参数(通过触摸屏直接修改),需要时,通过映像DB,一次发送出去,这样简单方便(注:触摸屏可直接读写DB的浮点数,你不必变换。)。
格式选好后,映像DB就是x2那么大的字长度。一半用于发送,一半用于读取应答数值。
平时不用(不需要修改参数)的时候,你应该在映像DB的PKE的高4位(AK任务识别标志ID)写0=没有任务。你是读参数还是写参数完全看这个AK识别标志。具体参看“大全”的表13-1。有一点要注意:发送后,首先应检查对应AK的应答ID是否是7、8。如果是:有错。请对照表13-3检查应答的数值,找出原因。(方法:直接输出到触摸屏,察看。)
另外,应答的速度可没有Profibus的速度快。你应该等到应答后,在发送下一个参数。
PZD是发送过程数据。第一个PZD是控制字1,就是参数CB收到的控制字1 r2090->实际的控制字1 r0054。这个参数当然不能随便发送了。要有一定的顺序。(见前面的帖子)
第二个PZD是主设定频率。主设定频率发送什么样的格式要看你在变频器端的设定。如果默认,你应该发送IEEE格式的浮点数值。如果你使能了USS规格化P2009(0)=1,那么你发送的最大值=4000H(再大就出错了)。具体4000H是多大频率?就是P2000定义的基准频率。(好像08/2002的大全说的不一样。)对于50Hz电机控制,用4000H精度要高一些。
第三个PZD没有定义,你可以自己定义。在变频器端的参数r2050(2)看到。你可以通过BiCo互联用于自己的目的。例如:附加设定值、PID微调信号、DAC的输出等等。
第四个PZD默认定义为控制字2(好像02/2002的DP通讯说明中说的不一样。)。就是参数CB收到的控制字2 r2091->实际的控制字2 r0055
再往下都没有定义,可以按照第三个PZD自己定义。注意:因为DAC(P0771)的输出可以互联到r2050,所以,可以将一些外部控制通过Profibus DP发送给远端的变频器,再通过变频器的DAC将模拟量信号输出。甚至,有可能将语音信号(8位的电话质量)直接通过Profibus DP发送到变频器的DAC-〉喇叭。
对于远程开关量的控制(对变频器的继电器控制):因为,r2050不能直接互联到P0731、P0732、P0733。所以,要通过控制字的没用的位来做。可以互联到控制字1的第12位和控制字2的第6、7、10、14位。也可以用于先驱动自由功能块的布尔运算,然后驱动输出继电器。
对于PZD的应答是自由定义的,在变频器端P2051(0-7)设定。默认的是应答1是状态字1(r0052=52.0)应答2是实际频率(r0021=21.0)应答3未定义,应答4是状态字2(r0053=53.0)。这些你可以根据需要任意改变。例如:你想看到实际电流值,可以将应答3定义成27.0。如果你想看到变频器的哪个输入端子闭合,可以将应答5定义成722.0(就是那个r0722),这意味着,即便你把变频器所有的数字输入都禁止,也可以看到。因此,你完全可以不用PLC的输入模块,就用远程变频器的数字输入端。同理,你也可以把变频器的ADC当作远端模拟量采集信号(当然不是高速),通过把应答n定义成752.0在PLC读到。
学而时习之,不亦说乎?温故而知新,不亦乐乎?