sihu国产精品永久免费_日韩午夜在线视频_久久99中文字幕伊人_古代男男嗯…啊h总攻

by海綿
級別: 工控俠客
精華主題: 0
發帖數量: 93 個
工控威望: 2564 點
下載積分: 3537 分
在線時間: 148(小時)
注冊時間: 2021-12-03
最后登錄: 2024-12-22
查看by海綿的 主題 / 回貼
樓主  發表于: 2023-09-02 11:37
下面是SCL寫的模擬量采集,用來調用。放在了FC塊,跑起來也沒什么不一樣,放在FB塊 就是多一個DB塊,里面也就是 當前的傳感器數據 也沒什么重要的東西,所以有了疑問,是放在那個塊比較好呢???

下面SCL使用方法,保存為txt文件,修改文件后綴為scl ,博圖導入外部源文件 就可以生成fc塊了

復制代碼
  1. FUNCTION "模擬量數據處理" : Void
  2. { S7_Optimized_Access := 'TRUE' }
  3. VERSION : 0.1
  4.    VAR_INPUT
  5.       模擬量輸入 : Int;
  6.       傳感器量程上限 : Real;
  7.       傳感器量程下限 : Real;
  8.       模擬量量程上限 : Int;
  9.       模擬量量程下限 : Int;
  10.       傳感器修正值 : Real;
  11.    END_VAR
  12.    VAR_OUTPUT
  13.       傳感器實際值 : Real;
  14.       傳感器修正后結果 : Real;
  15.       傳感器故障 : Bool;
  16.    END_VAR
  17.    VAR_TEMP
  18.       i : Int;
  19.       j : Real;
  20.       k : Int;
  21.    END_VAR
  22. BEGIN
  23.     //數據處理
  24.     IF #模擬量輸入 <= #模擬量量程下限 THEN    //判斷輸入值是否低于模擬量設定下限值
  25.         #傳感器實際值 := #傳感器量程下限;     //輸出直接為浮點數設定值下限
  26.     END_IF;
  27.     IF #模擬量輸入 >= #模擬量量程上限 THEN     //判斷輸入值是否高于模擬量設定上限值
  28.         #傳感器實際值 := #傳感器量程上限;      //輸出直接為浮點數設定值上限
  29.     END_IF;
  30.     IF #模擬量輸入 > #模擬量量程下限 AND #模擬量輸入 < #模擬量量程上限 THEN
  31.         //判斷輸入值是否在設定值限值內
  32.         #i := #模擬量輸入 - #模擬量量程下限;    //實時值與模擬量下限值的差
  33.         #k := #模擬量量程上限 - #模擬量量程下限; //模擬量設定值的區間
  34.         #j := #傳感器量程上限 - #傳感器量程下限; //浮點數設定值的區間
  35.         #傳感器實際值 := #j * #i / #k + #傳感器量程下限;
  36.     END_IF;
  37.     //傳感器數值修正
  38.     #傳感器修正后結果 := #傳感器實際值 + #傳感器修正值; //對實際的的傳感器數值進行結果修正
  39.     //傳感器故障檢測
  40.     IF #模擬量輸入 < #模擬量量程下限 THEN    //判斷輸入值是否低于模擬量設定下限值
  41.         #傳感器故障 := true;                  //輸出傳感器故障
  42.     END_IF;
  43.     IF #模擬量輸入 > #模擬量量程上限 THEN     //判斷輸入值是否高于模擬量設定上限值
  44.         #傳感器故障 := true;                   //輸出傳感器故障
  45.     END_IF;
  46.     IF #傳感器實際值 < #傳感器量程下限 THEN    //判斷結果是否低于傳感器量程設定下限值
  47.         #傳感器故障 := true;                  //輸出傳感器故障
  48.     END_IF;
  49.     IF #傳感器實際值 > #傳感器量程上限 THEN     //判斷結果是否高于傳感器量程設定上限值
  50.         #傳感器故障 := true;                   //輸出傳感器故障
  51.     END_IF;
  52. END_FUNCTION

hstec2002
級別: 論壇先鋒
精華主題: 0
發帖數量: 489 個
工控威望: 1892 點
下載積分: 8465 分
在線時間: 680(小時)
注冊時間: 2021-05-05
最后登錄: 2024-12-20
查看hstec2002的 主題 / 回貼
1樓  發表于: 2023-09-02 14:13
能用FC絕對不用FB
QQ: 2845452345