输入:实时扭矩值 #Act_Torque_1
输出:平滑后的扭矩平均值 #Mittelwert_B1
目的:对扭矩信号进行低通滤波,消除噪声波动
// 滑动平均值计算(简化版)
// 假设 #Buffer 是一个 REAL 数组,#Bereich_Laenge 是窗口大小
// 1. 数据前移(丢弃最旧的)
FOR #i := 0 TO #Bereich_Laenge - 2 DO
#Buffer[#i] := #Buffer[#i + 1];
END_FOR;
// 2. 新数据入队
#Buffer[#Bereich_Laenge - 1] := #Act_Torque_1;
// 3. 求和并计算平均值
#Mittelwertsumme := 0.0;
FOR #i := 0 TO #Bereich_Laenge - 1 DO
#Mittelwertsumme += #Buffer[#i];
END_FOR;
#Mittelwert_B1 := #Mittelwertsumme / REAL(#Bereich_Laenge);
用豆包研究公司老外用STL语言写的plc程序时,豆包帮我翻译成了SCL语言,感觉这个程序虽然简短但是功能却很实用,分享给大家。