西門子授權代理-華南區西門子PLC-S7-1500 S7-400PLC 西門子s7 200 smart代理商
| 更新時間 2024-12-02 08:00:00 價格 請來電詢價 PLC觸摸屏代理商 西門子代理商 伺服電機驅動電纜 西門子一級代理商 變頻器直流調速器 西門子一級總代理商 聯系電話 13922889745 聯系手機 18475208684 聯系人 向小姐 立即詢價 |
一、配方寫入PLC
IF "1秤_配方使用".配方寫入 = TRUE THEN
"1_MODBUS TCP數據".MC1.MB_DATA_PTR[0] := "1秤_配方數據塊".自動清零間隔;
"1_MODBUS TCP數據".MC1.MB_DATA_PTR[1] := "1秤_配方數據塊".運行判穩超時;
"1_MODBUS TCP數據".MC1.MB_DATA_PTR[2] := "1秤_配方數據塊".定值方式;
"1_MODBUS TCP數據".MC2.MB_DATA_PTR[0] := "1秤_配方數據塊".配方號;
"1_MODBUS TCP數據".MC2.MB_DATA_PTR[1] := "1秤_配方數據塊".目標值;
"1_MODBUS TCP數據".MC2.MB_DATA_PTR[2] := "1秤_配方數據塊".快加提前量;
"1_MODBUS TCP數據".MC2.MB_DATA_PTR[3] := "1秤_配方數據塊".中加提前量;
"1_MODBUS TCP數據".MC2.MB_DATA_PTR[4] := "1秤_配方數據塊".落差值;
"1_MODBUS TCP數據".MC2.MB_DATA_PTR[5] := "1秤_配方數據塊".零區值;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[0] := "1秤_配方數據塊".加料前延時;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[1] := "1秤_配方數據塊".快加禁判時間;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[2] := "1秤_配方數據塊".中加禁判時間;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[3] := "1秤_配方數據塊".慢加禁判時間;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[4] := "1秤_配方數據塊".定值保持時間;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[5] := "1秤_配方數據塊".夾袋后延時;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[6] := "1秤_配方數據塊".松袋前延時;
"1_MODBUS TCP數據".MC3.MB_DATA_PTR[7] := "1秤_配方數據塊".卸料延時;
"1_MODBUS TCP數據".MC4.MB_DATA_PTR[0] := "1秤_配方數據塊".加料關閉至慢加所需脈沖個數;
"1_MODBUS TCP數據".MC5.MB_DATA_PTR[0] := "1秤_配方數據塊".加料關閉至快加所需脈沖個數;
"1_MODBUS TCP數據".MC6.MB_DATA_PTR[0] := "1秤_配方數據塊".加料電機加速時間;
"1_MODBUS TCP數據".MC6.MB_DATA_PTR[1] := "1秤_配方數據塊".加料電機減速時間;
END_IF;
二、個別數據,點擊寫入數據時觸發定時器,設定若干秒時間進行寫入,平時更新該數據
"IEC_Timer_0_DB_130".TP(IN:="1秤_配方使用".配方寫入,
PT:=#設定時間,
Q=>#脈沖輸出,
ET=>#計時);
IF NOT "IEC_Timer_0_DB_130".Q THEN
"1_MODBUS TCP數據".MC2.MB_DATA_PTR[4] := "1_MODBUS TCP數據".MC8.MB_DATA_PTR[0];
ELSE
END_IF;
三、配方根據配方號進行保存
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 1 THEN
"1秤_配方1" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 2 THEN
"1秤_配方2" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 3 THEN
"1秤_配方3" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 4 THEN
"1秤_配方4" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 5 THEN
"1秤_配方5" := "1秤_配方數據塊";
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 6 THEN
"1秤_配方6" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 7 THEN
"1秤_配方7" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 8 THEN
"1秤_配方8" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 9 THEN
"1秤_配方9" := "1秤_配方數據塊" ;
END_IF;
IF "1秤_配方使用".配方保存 = TRUE AND "1秤_配方使用".配方號 = 10 THEN
"1秤_配方10" := "1秤_配方數據塊" ;
END_IF;
四、配方根據配方號進行寫入
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 1 THEN
"1秤_配方數據塊" := "1秤_配方1" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 2 THEN
"1秤_配方數據塊" := "1秤_配方2" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 3 THEN
"1秤_配方數據塊" := "1秤_配方3" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 4 THEN
"1秤_配方數據塊" := "1秤_配方4" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 5 THEN
"1秤_配方數據塊" := "1秤_配方5" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 6 THEN
"1秤_配方數據塊" := "1秤_配方6";
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 7 THEN
"1秤_配方數據塊" := "1秤_配方7" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 8 THEN
"1秤_配方數據塊" := "1秤_配方8" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 9 THEN
"1秤_配方數據塊" := "1秤_配方9" ;
END_IF;
IF "1秤_配方使用".配方讀取 = TRUE AND "1秤_配方使用".配方號 = 10 THEN
"1秤_配方數據塊" := "1秤_配方10" ;
END_IF;
寫配方數據DB塊時,注意數據格式及數據命名是一樣的,相同的DB塊數據類型,可以使用UDT數據類型(這個本人一開始每想到,簡練的DB塊都是復制粘貼,如果添加一個數據或減少一個數據,那么相關DB塊都用更改,很瑪法)。
聯系方式
- 電 話:13922889745
- 經理:向小姐
- 手 機:18475208684
- 微 信:18475208684