我不太明白这个程序,怎么能从两个速度值,通过PID处理后变成变频器的0-10V电压啊
LD SM0.0
CALL PID0_INIT:SBR7, VW_2408,VD_2402 ,M10.1,0.3,VW5000
SBR7
Network 1 // 板链线实际运行速度------PID反馈信号处理
// PID反馈信号处理:因为设定速度在0.0~10.0米/分钟之间,而PID控制器的设定值是整数而不是实数,采用取整或四舍五入的方式都无法保证控制的精确性,所以考虑将设定值乘以1000.0以后再取整并转化为实数,将信号放大并处理后后送至PID控制器,控制精确度就比较高了。当然,既然设定速度乘以了1000,那么反馈值也得乘以1000。
// 将板链线实际运行速度(米/分钟,实数)乘以1000.0得到变量VD2400(实数);
// 将变量VD2400(实数)取整得到变量VD2404(双整数);
// 将变量VD2404(双整数)转换为变量VW2408(整数)------PID控制器只接受整数类型的反馈值。
LD SM0.0
MOVR VD60, VD2400
*R 1000.0, VD2400
ROUND VD2400, VD2404
DTI VD2404, VW2408
Network 2 // 板链线设定速度------PID设定信号处理
// 将板链线设定速度(米/分钟,实数)乘以1000.0得到变量VD2420(实数);
LD SM0.0
MOVR VD40, VD2420
*R 1000.0, VD2420