发布于 2007-12-03 15:39:45
0楼
谢谢鼠大哥,我是这样做的,不知对不对,PID按照系统默认值生成的,转速量程是0-4000转/分钟,正常转速3000转/分钟,用一个常数3000/4000,得到的是一个0.0-1.0之间的常数,然后把这个常数连接到PID的反馈端(反馈输入端应该是VD0,由于PID输入端用16进制数,用VW0接到了输入端),设定值为一个常数,设为50.经运行发现无论把转速设为多少,在VW0里显示数值都是在(15000-16000)之间变化,转速设定的常量无论高于或低于设定值(数值2000),通过调节面板观察输出始终为零,,,,
程序如下,希望给指点下,
网络1
LD SM0.0
MOVD 3000, AC0
DTR AC0, AC0
/R 4000.0, AC0
MOVR AC0, PID0_PV:VD0
网络2
LD SM0.0
CALL PID0_INIT:SBR1, VW0, 50.0, VW8