污水處理設備 污泥處理設備 水處理過濾器 軟化水設備/除鹽設備 純凈水設備 消毒設備|加藥設備 供水/儲水/集水/排水/輔助 水處理膜 過濾器濾芯 水處理濾料 水處理劑 水處理填料 其它水處理設備
上海朕鋅電氣設備公司
西門子6GK7 243-2AX01-0XA0
田敏(銷售工程師) 主營產品(西門子)SIEMENS
手機 可編程控制器(PLC)人機界面(HMI)
數控伺服工業以太網
傳真 數控系統電線電纜
商務2304334979 變頻器伺服驅動
地址上海市金山區楓蘭路128號以上產品全
西門子6GK7 243-2AX01-0XA0 PLC維修
西門子6GK7 243-2AX01-0XA0 銷售
代理
S7-Technology
功能手冊, 03/2008, A5E01078448-06 711
取消激活工藝對象時,需在程序中考慮以下條件:
● 確保先取消激活從屬工藝對象(輸出凸輪、凸輪軌跡和測量輸入)。
● 確保在激活凸輪盤時未使用這些工藝對象。
● 如果想要取消激活用作閥控曲線的凸輪盤,則禁用已分配的液*。
在用戶程序中取消激活工藝對象時,請采用以下步驟:
1. 在要取消激活的工藝對象上終止所有命令。 一直等到所有運動命令均已終止。
2. 取消激活或禁用工藝對象。
3. 使用“MC_ActivateTO"工藝功能取消激活工藝對象。
驅動器或 DP 從站的所有工藝對象都已取消激活后,即可使用“MC_ActivateDPSlave"工藝
功能取消激活相應的 DP 從站。 為此,請遵守『使用 FB 457 MC_ActivateDPSlave 取消
激活/激活 DP 從站』一章中的說明。
說明
取消激活和更新激活后的組態數據
操作期間更改的組態數據即使在更新激活后也會保持不變。 如果在取消激活前沒有執行
必要的重啟,則必須在更新激活后執行重啟。
取消激活工藝對象時,無法更改工藝對象的組態數據。
說明
取消激活和更新激活后的系統變量
將在更新激活后重新初始化系統變量,如同重啟了工藝對象一樣。 重新初始化將產生以
下影響:
? 具有增量編碼器的參考軸將丟失其回原點。
? 就測量輸入而言,先前的測量值將被刪除。
? 基本坐標系或高級坐標系中的位置偏移將被刪除。
說明
如果通過使用“MC_ActivateTO"工藝功能或在 S7T Config 中取消激活軸工藝對象,則相
應的驅動器可指示 S7T Config 中的錯誤,因為與該驅動器的循環通信已停止。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
712 功能手冊, 03/2008, A5E01078448-06
MC_ActivateTO — ErrorID
適用于固件版本為 V4.1.x 或更高版本的集成工藝
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
0000 沒有錯誤 -
8001 內部錯誤 項目/軟件發生故障或不*。
8005 命令已取消,因為命令存儲器正被其
它進程使用
命令容量不足,無法執行該命令。
可能的原因:
? 活動命令的數量已超出限制。
? 以下工藝功能中的活動命令過多:
“MC_CamSectorAdd"
“MC_ReadPeriphery"
“MC_WritePeriphery"
“MC_ReadRecord"
“MC_WriteRecord"
“MC_ReadDriveParameter"
“MC_WriteDriveParameter"
"MC_ReadCamTrackData"
"MC_WriteCamTrackData"
在同一周期內調用這些工藝功能,直到輸出參數 Done、
CommandAborted 或 Error 中有一個變為 TRUE。驗證程
序是否包含不必要的(多余的)命令。
8043 參數值非法 輸入參數 Mode 中的值無效。
8045 在當前狀態下不允許使用該命令 可能的原因:
? 取消激活期間,使用“MC_Power"工藝功能啟用軸。
? 工藝對象的命令尚未完成,例如,仍在執行重啟。
804C 命令輸出率過高 具有相同背景數據塊的命令的輸出率超過了命令接口的容
量。第二個命令被拒絕,以保持*個命令的*性。
如果命令輸出率較高,請務必使用單獨的背景數據塊或再
次請求命令。請注意,盡管接受的*個命令可能處于活
動狀態,但是您可能無法通過狀態輸出對其進行監視。
8050 工藝未準備就緒 ? 在使用斷點進行測試期間(CPU 處于 HOLD 狀態),
工藝功能向工藝輸出了一條新命令。該命令被拒絕。
? 在重啟 OB 中輸出了該命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 713
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8052 在不同運行級別進行塊調用 使用同一背景數據塊,在不同運行級別調用了此工藝功
能。
示例:
在 OB 1 和 OB 35 中都使用背景數據塊 DBx 調用工藝功
能 x。開始工藝功能在 OB 1 中執行,然后由于在 OB 35
中調用它而中斷其在 OB 1 中的執行。由于背景數據塊是
共享使用的,因此將在這兩個調用的輸出參數 ErrorID 中
都指示該錯誤。
預期的錯誤響應:
? 新命令(輸入參數 Execute / Enable 的上升沿或下降
沿)未傳送到集成工藝。
? zui初啟動的命令不能在工藝功能的輸出參數中進行監
視。但是,該命令在集成工藝中可能仍處于活動狀態
注意:
在不同的運行級別使用不同的背景數據塊,或者互鎖工藝
功能的調用。
8053 背景數據塊無效 工藝功能的背景數據塊存在故障(例如,長度錯誤)。
8054 不允許取消激活工藝對象 不能取消激活工藝對象,因為該工藝對象仍在使用。
8057 取消激活/激活命令已激活 一直等到取消激活/激活命令完成后再啟動新命令。
8083 DB 不是工藝 DB 通過輸入參數 Axis 的 DB 未找到或不是工藝 DB。
8084 工藝 DB 無效 ? 在通過輸入參數 Axis 的工藝 DB 的 PLC 中不存在
工藝對象。
? 將當前工藝下載到目標系統,或通過輸入參數 Axis 更
改 DB 號。
? 用戶在工藝 DB(通過輸入參數 Axis )寫入的數
據無效。
? 在“工藝對象管理"(Technology Objects Management)
中,刪除該工藝 DB,然后重新創建一個工藝 DB
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
714 功能手冊, 03/2008, A5E01078448-06
6.7.3 FB 457 MC_ActivateDPSlave — 取消激活/激活 DP 從站
使用 FB 457“MC_ActivateDPSlave"取消激活/激活 DP 從站
適用于固件版本為 V4.1.x 或更高版本的集成工藝
用途
● 如果想臨時或*取消激活 DP(DRIVE) 的已組態 DP 從站,可使用
“MC_ActivateDPSlave"工藝功能。 這在某些情況下很有用,例如,要將工廠單元臨時
從 DP(DRIVE) 分離時。 對于標準操作,無需激活預先未取消激活的 DP 從站。
● 取消激活的 DP 從站不會指示 T-CPU 的總線故障。
● 取消激活的 DP 從站不再參與 DP(DRIVE) 的循環數據交換。 可在 HW Config 中設置
的 DP 周期的zui小時間段仍取決于組態 DP 從站數。
● 如果取消激活的 DP 從站仍保留在 DP(DRIVE), 中,則可通過 S7T Config 的
STARTER 功能繼續對其組態。
● 通過使用 Mode = 0 可以讀出 DP 從站的激活狀態。 如果要檢查當前激活狀態或取消
激活狀態,可在另一個實例中調用“MC_ActivateDPSlave"工藝功能。
適用對象
● DP(DRIVE) 上的任何 DP 從站
要求
● T-CPU 必須處于循環操作狀態(“RUN"狀態)。
● 必須取消激活了引用 DP 從站地址的工藝對象。
超馳命令
MC_ActivateDPSlave 命令不能被其它任何命令取消。
MC_ActivateDPSlave 命令不會取消其它任何命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 715
輸入參數
參數 數據類型 初始值 說明
Diagnostic
address
INT 0 DP 從站的診斷地址(請參見 HW Config 中的條目)
Execute BOOL FALSE 在上升沿處啟動命令
值 = 0: 在 Status 輸出參數中提供 DP 從站的當前激
活狀態。
值 = 1 激活 DP 從站
建立與 DP 從站的循環通信。
Mode INT 0
值 = 2 取消激活 DP 從站
斷開與 DP 從站的循環通信。
輸出參數(狀態輸出)
參數 數據類型 初始值 說明
Done BOOL FALSE 命令已啟動:
? 激活命令已激活
如果 DP(DRIVE) 沒有要激活的 DP 從站,則激活
DP(DRIVE) 上具有連接的 DP 從站。
? 取消激活命令已啟動
如果已從 DP(DRIVE) 刪除要取消激活的 DP 從
站,則總線故障 LED 也會熄滅。 條目“站返
回"(Station return) 將被輸入 CPU 和集成工藝的診
斷緩沖區。
? 激活狀態已讀出
Mode = 0 時調用“MC_ActivateDPSlave"工藝功能可檢
查 DP 從站的激活/取消激活狀態。
Busy BOOL FALSE TRUE 正在執行命令
Error BOOL FALSE FALSE 命令啟動時沒有錯誤。
TRUE 命令啟動時有錯誤。未執行該命令。有關
原因的信息,請參考 ErrorID。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
716 功能手冊, 03/2008, A5E01078448-06
參數 數據類型 初始值 說明
ErrorID WORD 0 輸出參數 Error 的 ErrorID。
Done = TRUE 時,顯示 DP 從站的當前激活狀態。
僅當 Mode = 0 時,才會顯示狀態。
值 = 0 激活狀態未生效,或尚未更新
值 = 1 DP 從站已激活
值 = 2 DP 從站已取消激活或不在 DP(DRIVE) 上
值 = 3 DP 從站正在激活。 激活尚未完成。
如果持續顯示狀態值 3,則說明 DP 從站有
故障。
值 = 4 不顯示狀態值 4。
Status INT 0
值 = 5 DP 從站未連接到 DP(DRIVE)
說明
取消激活 DP 從站前,請確保所連接的所有工藝對象均已取消激活。 為此,請遵守
『MC_ActivateTO — 取消激活/激活工藝對象』一章中的說明。
取消激活了所連接的所有工藝對象后,即可取消激活 DP 從站,然后將其從總線刪除。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 717
MC_ActivateDPSlave — ErrorID
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
0000 沒有錯誤 -
8001 內部錯誤 項目/軟件發生故障或不*。
8005 命令已取消,因為命令存儲器正被其
它進程使用
命令容量不足,無法執行該命令。
可能的原因:
? 活動命令的數量已超出限制
? 以下工藝功能中的活動命令過多:
“MC_CamSectorAdd"
“MC_ReadPeriphery"
“MC_WritePeriphery"
“MC_ReadRecord"
“MC_WriteRecord"
“MC_ReadDriveParameter"
“MC_WriteDriveParameter"
"MC_ReadCamTrackData"
"MC_WriteCamTrackData"
在同一個周期內調用這些工藝功能,直到輸出參數 Done,
CommandAborted 或 Error 中有一個為 TRUE。驗證程序
是否包含不必要的(多余的)命令。
8043 參數值非法 Mode. 輸入參數中的值無效
8050 工藝未準備就緒 ? 在使用斷點進行測試期間(CPU 處于 HOLD 狀態),
工藝功能向工藝輸出了一條新命令。該命令被拒絕。
? 在重啟 OB 中輸出了該命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
718 功能手冊, 03/2008, A5E01078448-06
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8052 在不同運行級別進行塊調用 使用同一背景數據塊,在不同運行級別調用了此工藝功
能。
示例:
在 OB 1 和 OB 35 中都使用背景數據塊 DBx 調用工藝功
能 x。開始工藝功能在 OB 1 中執行,然后由于在 OB 35
中調用它而中斷其在 OB 1 中的執行。由于背景數據塊是
共享使用的,因此將在這兩個調用的輸出參數 ErrorID 中
都指示該錯誤。
預期的錯誤響應:
? 新命令(輸入參數 Execute / Enable 的上升沿或下降
沿)未傳送到集成工藝。
? zui初啟動的命令不能在工藝功能的輸出參數中進行監
視。但是,該命令在集成工藝中可能仍處于活動狀態
注意:
在不同的運行級別使用不同的背景數據塊,或者互鎖工藝
功能的調用。
8053 背景數據塊無效 工藝功能的背景數據塊存在故障(例如,長度錯誤)。
8057 取消激活/激活命令已激活 一直等到取消激活/激活命令完成后再啟動新命令。
8058 無法組態 DP 從站 在 DP 從站激活期間,無法從 DP 主站裝載 DP 從站的組
態。 檢查從站的硬件。
8090 邏輯地址無效 的診斷地址未被分配給任何 DP 從站。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 719
6.7.4 FB406 MC_ReadSysParameter — 讀取參數
使用 FB 406“MC_ReadSysParameter"讀取參數
用途
● MC_ReadSysParameter 工藝功能返回 TO zui重要的系統變量值和組態數據,例如,
軸或輸出凸輪數據。 通過設置參數編號對系統變量和組態數據進行尋址
● 根據讀取的參數的數據類型,將結果傳送至相應的輸出參數。 其它輸出返回 0 值。
● 可以使用輸入參數 Index 訪問參數的多個實例,以下區域存在多個參數:
– 數據集(Dataset_1 到 Dataset_16)
– 編碼器(Encoder_1 到 Encoder_8)
– 同步對象(1 代表同步對象,2 代表疊加的同步對象)
適用對象
● 系統變量和組態數據
要求
● 由參數編號和索引定義的參數必須在 S7T Config 中組態
● 在讀取編碼器參數之前,先檢查編碼器值的有效性。 通過讀取軸或外部編碼器的工藝
DB 中的變量 Statusword.EncoderValid 和 Statusword.CyclicInterface ,可以驗證當
前活動編碼器的值。 如果為軸分配了多個數據記錄,則可以通過使用參數編號 4050
調用“MC_ReadSysParameter"工藝功能來請求其它編碼器的狀態。
超馳命令
MC_ReadSysParameter 命令不能由任何其它命令取消。
MC_ReadSysParameter 命令不取消任何其它命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
720 功能手冊, 03/2008, A5E01078448-06
輸入參數
參數 數據類型 初始值 說明
Axis INT 0 工藝 DB 的編號
Execute BOOL FALSE 在上升沿處請求參數值
ParameterNumber INT 0 要讀取的參數的編號
Index INT 1 多個參數編號(例如,2 代表 Datensatz_2 )
輸出參數(狀態輸出)
參數 數據類型 初始值 說明
Done BOOL FALSE TRUE:根據參數數據類型,可以通過輸出 Value、
ValueDInt,ValueDword1, ValueDword2 或
ValueBool. 使用請求的參數值
Busy BOOL FALSE TRUE:正在執行命令
Error BOOL FALSE TRUE: 命令啟動時有錯誤。該命令被拒絕。
FALSE : 命令啟動時沒有錯誤。
ErrorID WORD 0 輸出參數 Error 的 ErrorID。
Value REAL 0.0 類型為 REAL 時參數的值(其它類型為 0.0 )。
ValueDInt DINT 0 類型為 DINT 時,為參數的值(否則為 0)。
ENUM 值也通過該參數輸出。
ValueDword1 DWORD 0 類型為 DWORD 且長度為 1 DWORD(其它類型為
0)時參數的值。
ValueDword2 DWORD 0 類型為 DWORD 且長度為 2 DWORD(其它類型為
0 )時參數的值。
ValueBool BOOL FALSE 類型為 BOOL 時參數的值(其它類型為
FALSE )。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 721
MC_ReadSysParameter — ErrorID
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
0000 沒有錯誤 -
8001 內部錯誤 項目/軟件發生故障或不*。
8005 命令已取消,因為命令存儲器正被
其它進程使用
命令容量不足,無法執行該命令。
可能的原因:
? 活動命令的數量已超出限制。
? 以下工藝功能中的活動命令過多:
"MC_CamSectorAdd"
"MC_ReadPeriphery"
"MC_WritePeriphery"
"MC_ReadRecord"
"MC_WriteRecord"
"MC_ReadDriveParameter"
"MC_WriteDriveParameter"
"MC_ReadCamTrackData"
"MC_WriteCamTrackData"
在同一周期內調用這些工藝功能,直到輸出參數 Done、
CommandAborted 或 Error 中有一個變為 TRUE。驗證程
序是否包含不必要的(多余的)命令。
8043 參數值非法 涉及輸入參數 ParameterNumber 或 Index.。
8044 命令不受工藝對象支持 例如,將命令發送到 MCDevice DB
8045 在當前狀態下不允許使用該命令 可能的原因:
使用“MC_ActivateTO"工藝功能取消激活了同步軸
804C 命令輸出率過高 具有相同背景數據塊的命令的輸出率超過了命令接口的容
量。第二個命令被拒絕,以保持*個命令的*性。
如果命令輸出率較高,請務必使用單獨的背景數據塊或再
次請求命令。請注意,盡管接受的*個命令可能處于活
動狀態,但是您可能無法通過狀態輸出對其進行監視。
8050 工藝未準備就緒 ? 在使用斷點進行測試期間(CPU 處于 HOLD 狀態),
工藝功能向工藝輸出了一條新命令。該命令被拒絕。
? 在重啟 OB 中輸出了該命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
722 功能手冊, 03/2008, A5E01078448-06
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8052 在不同運行級別進行塊調用 使用同一背景數據塊,在不同運行級別調用了此工藝功
能。
示例:
在 OB 1 和 OB 35 中都使用背景數據塊 DBx 調用工藝功能
x。開始工藝功能在 OB 1 中執行,然后由于在 OB 35 中調
用它而中斷其在 OB 1 中的執行。由于背景數據塊是共享
使用的,因此將在這兩個調用的輸出參數 ErrorID 中都指
示該錯誤。
預期的錯誤響應:
? 新命令(輸入參數 Execute / Enable 的上升沿或下降
沿)未傳送到集成工藝。
? zui初啟動的命令不能在工藝功能的輸出參數中進行監
視。但是,該命令在集成工藝中可能仍處于活動狀態
注意:
在不同的運行級別使用不同的背景數據塊,或者互鎖工藝
功能的調用。
8053 背景數據塊無效 工藝功能的背景數據塊存在故障(例如,長度錯誤)。
8080 參數編號或參數索引無效 工藝對象不支持此參數或參數索引。
8083 DB 不是工藝 DB 通過輸入參數 Axis 的 DB 未找到或不是工藝 DB。
8084 工藝 DB 無效 ? 在通過輸入參數 Axis 定義的工藝 DB 的控制器中不存在
工藝對象。
將當前工藝下載到目標系統,或通過輸入參數 Axis 更
改 DB 號。
? 用戶在輸入參數 Axis 中定義的工藝 DB 中輸入了無效數
據。
在“工藝對象管理"(Technology Objects Management)
中刪除工藝 DB,然后創建一個新的工藝 DB。
8086 參數不可用 可能的原因:
? 在具有值編碼器的系統中訪問增量編碼器參數
? 訪問以下類型編碼器的參數:“編碼器周期性"
? 索引中定義的數據記錄未處于活動狀態。 必須通過調用
“MC_ChangeDataset"來更改數據記錄。
? 當前,工藝對象正在執行重啟。 因此,無法讀取參數。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 723
6.7.5 FB407 MC_WriteParameter — 更改參數
使用 FB 407“MC_WriteParameter"更改參數
用途
● 當 T-CPU 處于 RUN 模式時,可以使用“MC_WriteParameter"工藝功能編輯 TO zui重
要的系統變量和組態數據。 通過設置參數編號對系統變量和組態數據進行尋址。在再
次斷電/通電或 CPU 執行存儲器復位前,更改將一直有效。 例外情況: 在任何情況
下,值編碼器調整期間設置的值都將保留。
● 在輸入參數 Value 、ValueDInt 、ValueDword1 、ValueDword2 和 ValueBool 中,系
統將僅評估與相關工藝參數相符的參數(有關詳細信息,請參考工藝參數列表)。
● 工藝功能僅可以修改由訪問模式“W"(“寫入")標識的工藝參數列表中的參數。
● 可以使用輸入參數 Index 訪問參數的多個實例,以下區域存在多個參數:
– 數據集(Dataset_1 到 Dataset_16)
– 編碼器(Encoder_1 到 Encoder_8)
– 同步對象(1 代表同步對象,2 代表疊加的同步對象)
小心
此工藝功能的使用專門針對有經驗用戶。 錯誤的輸入可能導致不受控制的驅動器
響應!
系統不對您的輸入進行似然性檢查!
錯誤的輸入可能會導致工藝對象不*。
適用對象
● 在 S7T Config 中組態的工藝對象的參數。
請注意,某些參數更改要求重啟系統(有關信息,請參考工藝參數列表的“激活"
列。)
先決條件
● 由參數編號和索引定義的參數必須在系統中可用并且允許寫訪問。 必須使用工藝功能
“MC_ChangeDataset"在 T-CPU 中啟用由索引定義的數據記錄。
● 在寫入編碼器參數(例如,編碼器調整)之前驗證編碼器值。 可以查詢當前激活
的編碼器的編碼器值,并通過軸或外部編碼器的工藝 DB 中的
Statusword.EncoderValid 變量檢查其有效性。 如果為軸分配了多個數據記錄,則可
以通過使用參數編號 4050 調用“MC_ReadSysParameter"工藝功能來請求其它編碼器
的狀態。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
724 功能手冊, 03/2008, A5E01078448-06
超馳命令
MC_WriteParameter 命令不能由任何其它命令取消。
MC_WriteParameter 命令不取消任何其它命令。
輸入參數
參數 數據類型 初始值 說明
Axis INT 0 工藝 DB 的編號
Execute BOOL FALSE 在 Execute 的上升沿處寫入參數
ParameterNumber INT 0 工藝參數的編號
Index INT 1 例如,參數字段編號,2 代表 dataset_2
(如果僅存在一個數據集編號,將忽略該值)。
Value REAL 0.0 如果類型為 REAL,則為參數的新值(否則忽略該
值)。
ValueDInt DINT 0 類型為 DINT 參數的新值(否則忽略該值)。
ValueDword1 DWORD 0 類型為 DWORD 且長度為 1 DWORD 時定義參數的新
值(否則忽略該值)。
ValueDword2 DWORD 0 類型為 DWORD 且長度為 2 DWORD 時定義參數的新
值(否則忽略該值)。
ValueBool BOOL 0 類型為 BOOL 參數的新值(否則忽略該值)。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 725
輸出參數(狀態輸出)
參數 數據類型 初始值 說明
Done BOOL FALSE TRUE :工藝參數已成功更改
Busy BOOL FALSE TRUE:正在執行命令
TRUE : 命令啟動時有錯誤。未執行該命令。有關原
因的信息,請參考 ErrorID。
Error BOOL FALSE
FALSE : 命令啟動時沒有錯誤。
ErrorID WORD 0 輸出參數 Error 的 ErrorID。
注意
觀察參數的有效范圍限制。 工藝參數列表中列出了有效范圍限制。
編輯數據記錄參數時,請注意,數據記錄中的某些參數必須相等:
? 更改結構的參數(例如,不同的控制器類型,如 PV 或 PID 控制器)
? 重要的激活參數(例如,跟蹤監視開/關、DSC 開/關)
如果通過工藝功能“MC_WriteParameter"在運行期間為數據記錄參數分配了無效的值,
則系統將報告組態錯誤。 因此,您應該僅編輯在 S7T Config 中對其進行組態時可以編
譯為*項目的數據記錄參數。
說明
要更改不需要重啟或更改后立即生效的幾個參數,您應該搜集所有參數更改,然后將其激
活。
要執行此操作,請按以下步驟進行操作:
1. 使用 "MC_WriteParameter"將工藝參數 ParameterNumber = 4001
(activationmodechangedconfigdata ) 設置為 COLLECT_CHANGED_CONFIG_DATA
(82). 。
這就形成了對相關工藝對象的所有后續更改的集合。
2. 使用“MC_WriteParameter"更改相關工藝參數。
3. 使用“MC_WriteParameter"將 activationmodechangedconfigdata 設置為
ACTIVATE_CHANGED_CONFIG_DATA (81) 以應用所有更改。
當編輯需要所有數據記錄中的值均相同的工藝參數時,將調用此步驟。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
726 功能手冊, 03/2008, A5E01078448-06
MC_WriteParameter — 示例 —“倍率"
使用“倍率"更改參數的示例
因子可以根據當前運行速度或加速度/減速度進行在線疊加。 速度倍率適用于速度,而加
速倍率適用于加速度和減速度。
設置以下輸入參數值,以設置速度倍率:
ParameterNumber = 4142
Value = 0.0 到 200.0(為百分比值)
為加速/減速倍率設置以下輸入參數值:
ParameterNumber = 4141
Value = 1.0 到 1000.0(為百分比值)
MC_WriteParameter — 示例 —“驅動器控制字"
通過 PROFIBUS 耦合的驅動器使用標準消息幀進行通信。 這些消息幀包含zui多兩個驅動
器控制字。 以下字的內容在 PROFIdrive 標準中。
控制字 STW1 的結構 控制字 STW2 的結構
位 為工藝對象保留 PROFIdrive V3.1 定義 位 為工藝對象保留 PROFIdrive V3.1 定義
0 X 驅動器開(不是 AUS1) 0 任意
1 X 操作條件(不是 AUS2) 1 任意
2 X 操作條件(不是 AUS3) 2 任意
3 X 整流器啟用 3 任意
4 X 斜坡加速生成器已啟用 4 任意
5 X 啟動斜坡函數生成器 5 任意
6 X 設定值啟用 6 任意
7 X 復位數據塊 DBx 的存儲器 7 任意
8 步長距離 1(可選) 8 任意
9 步長距離 2(可選) 9 任意
10 X 所需的控制 10 任意
11 任意 11 任意
12 任意 12 X 主站設備狀態
13 任意 13 X 主站設備狀態
14 任意 14 X 主站設備狀態
15 任意 15 X 主站設備狀態
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 727
可以通過“MC_WriteParameter"設置參數編號 4500 寫入驅動器控制字,或者通過調用
“MC_ReadSysParameter"讀取驅動器控制字。 兩種控制字均可以通過輸出參數
ValueDword1 (未經掩碼)讀取。
使用相應的值和掩碼寫入控制字。 掩碼確定通過寫操作可以訪問控制字的哪些位。 此掩
碼可用于操縱單個或多個位。 未經掩碼的位(值 0)保留其當前狀態。 選擇掩碼的標準
是為此工藝對象保留的位保持不變。
通過輸入參數 ValueDword1 定義控制字 STW1 和 STW2 的值。 控制字 STW1 和
STW2 對應的掩碼值通過輸入參數 ValueDword2 設置。
ValueDword1 的示例
DW#16# 0001 0300
STW2 STW1
ValueDword2 的示例
DW#16# 0FFF FB00
STW2
掩碼
STW1 掩碼
如果要改寫控制字的所有自由位,請為控制字 STW1 設置掩碼值 FB00 。 十六進制代碼
的含義:
F = 1111/寫入位 12 到 15
B = 1011/寫入位 8、9 和 11;保護位 10
0 = 0000/保護位 4 到 7
0 = 0000/保護位 0 到 3
如果要改寫控制字的所有自由位,請為控制字 STW1 設置掩碼值 0FFF 。 十六進制代碼
的含義:
0 = 0000/保護位 12 到 15
F = 1111/寫入位 8 到 11
F = 1111/寫入位 4 到 7
F = 1111/寫入位 0 到 3
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
728 功能手冊, 03/2008, A5E01078448-06
MC_WriteParameter — 示例 —“編碼器調整數據的備份"
基于示例“編碼器調整數據的備份"編輯參數
編碼器調整的數據被保存在 T-CPU 的非易失性存儲器中。 因此,更換 CPU 時這些
數據將丟失。
“MC_ReadSysParameter"和“MC_WriteParameter"工藝功能可用于將編碼器調整的
數據備份到 MMC 卡,以便在更換 CPU 后再將其恢復到 T-CPU 的非易失性存儲器中。
先決條件是,您已在 S7T Config 中設置了“編碼器"類型。
使用“MC_Home"工藝功能完成編碼器調整后,請根據下述內容繼續操作:
備份編碼器調整數據
步驟 說明
1. 通過調用“MC_ReadSysParameter"工藝功能以及讀取下述輸入參數來讀取編碼器調整的當
前值,例如:
? Axis = 相關軸的工藝 DB
? Execute = 用于啟動讀取操作的上升沿
? ParameterNumber = 4010 編碼器調整的參數編號
? ValueDword1= DBx.DBD0 (臨時存儲位置)
? ValueDword2 = DBx.DBD4 (臨時存儲位置)
2. 調用 SFC82“CREA_DBL"以在 T-CPU 的加載存儲器中生成 DBy。 通過輸入參數 ATTRIB 重設
為 0 時,也會在工作存儲器中生成 DB。
3. 調用 SFC84“WRIT_DBL"以將先前備份的編碼器調整的數據寫入新 DB。
更換 CPU 并恢復編碼器調整數據
步驟 說明
1. 更換 T-CPU,然后插入包含組態數據的 MMC。
請注意,啟動 T-CPU 后,可以在 RAM 中獲得編碼器調整的備份 DB。
2. 調用“MC_WriteParameter"工藝功能以將編碼器調整的數據重新存儲到 T-CPU 的非易失性存
儲器中。 使用以下輸入參數:
? Axis = 相關軸的工藝 DB
? Execute =用于啟動寫入操作的上升沿
? ParameterNumber= 4010 = 編碼器調整的參數編號
? ValueDword1 = DBx.DBD0(x = 由 SFC82 生成的 DB 編號)
? ValueDword2 = DBx.DBD4(x = 由 SFC82 生成的 DB 編號)
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 729
MC_WriteParameter — ErrorID
ErrorID 警告 說明/糾正或避免錯誤的方法
0000 沒有錯誤 -
0020 重啟以激活參數更改 更改了一個參數后,通常需要重啟工藝對象。 如果新的參
數值與舊參數值*(例如,參數值“5"被修改為“5"),則
無需重啟。
是否需要重啟的信息包含在工藝數據塊中。
? 對于軸和外部編碼器,RequestRestart 位是在狀態字中
設置的。
? 技術數據塊的 ErrorID 0020 指示輸出凸輪和測量輸入是
否需要重啟。
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8001 內部錯誤 項目/軟件發生故障或不*。
8005 命令已取消,因為命令存儲器正被
其它進程使用
命令容量不足,無法執行該命令。
可能的原因:
? 活動命令的數量已超出限制。
? 以下工藝功能中的活動命令過多:
"MC_CamSectorAdd"
"MC_ReadPeriphery"
"MC_WritePeriphery"
"MC_ReadRecord"
"MC_WriteRecord"
"MC_ReadDriveParameter"
"MC_WriteDriveParameter"
"MC_ReadCamTrackData"
"MC_WriteCamTrackData"
在同一周期內調用這些工藝功能,直到輸出參數 Done、
CommandAborted 或 Error 中有一個變為 TRUE。 驗證程
序是否包含不必要的(多余的)命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
730 功能手冊, 03/2008, A5E01078448-06
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8043 參數值非法 涉及數據類型為 REAL 的所有輸入參數,或者輸入參數
Value、ValueDInt, ValueDword1 或 ValueDword2.
如果與其它參數存在任何交互作用,也可能會出現該錯
誤。
示例:
? 參數 1100
如果減少絲杠螺距(參數 1100),則軸無法再達到zui
大速度。
也要調整zui大速度(參數 8)。
? 參數 2020 和 2021
如果更改傳動系數(參數 2020 或 2021),則軸可能無
法再達到zui大速度。
也要調整zui大速度(參數 8)。
? 參數 8
如果zui大速度(參數 8)小于用于動態跟隨誤差監視的
zui小速度,則增加用于動態跟隨誤差監視的zui小速度
(參數 2072)。
? 選定 ENUM 的值無效
8044 命令不受工藝對象支持 例如,將命令發送到 MCDevice DB
804C 命令輸出率過高 具有相同背景數據塊的命令的輸出率超過了命令接口的容
量。 第二個命令被拒絕,以保持*個命令的*性。
如果命令輸出率較高,請務必使用單獨的背景數據塊或再
次請求命令。 請注意,盡管接受的*個命令可能處于活
動狀態,但是您可能無法通過狀態輸出對其進行監視。
8050 工藝未準備就緒 ? 在使用斷點進行測試期間(CPU 處于 HOLD 狀態),
工藝功能向工藝輸出了一條新命令。 該命令被拒絕。
? 在重啟 OB 中輸出了該命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 731
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8052 在不同運行級別進行塊調用 使用同一背景數據塊,在不同運行級別調用了此工藝功
能。
示例:
在 OB 1 和 OB 35 中都使用背景數據塊 DBx 調用工藝功能
x。開始工藝功能在 OB 1 中執行,然后由于在 OB 35 中調
用它而中斷其在 OB 1 中的執行。由于背景數據塊是共享
使用的,因此將在這兩個調用的輸出參數 ErrorID 中都指
示該錯誤。
預期的錯誤響應:
? 新命令(輸入參數 Execute / Enable 的上升沿或下降
沿)未傳送到集成工藝。
? zui初啟動的命令不能在工藝功能的輸出參數中進行監
視。但是,該命令在集成工藝中可能仍處于活動狀態
注意:
在不同的運行級別使用不同的背景數據塊,或者互鎖工藝
功能的調用。
8053 背景數據塊無效 工藝功能的背景數據塊存在故障(例如,長度錯誤)。
8080 參數編號或參數索引無效 工藝對象不支持此參數或參數索引。
8081 無法更改參數 所選的參數是只讀參數。
請檢查所選參數的編號以及工藝對象的 ID。
8083 DB 不是工藝 DB 通過輸入參數 Axis 的 DB 未找到或不是工藝 DB。
8084 工藝 DB 無效 ? 在通過輸入參數 Axis 定義的工藝 DB 的控制器中不存在
工藝對象。
將當前工藝下載到目標系統,或通過輸入參數 Axis 更
改 DB 號。
? 用戶在輸入參數 Axis 中定義的工藝 DB 中輸入了無效數
據。
在“工藝對象管理"(Technology Objects Management)
中刪除工藝 DB,然后創建一個新的工藝 DB。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
732 功能手冊, 03/2008, A5E01078448-06
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8086 參數不可用 可能的原因:
? 在具有值編碼器的系統中訪問增量編碼器參數
? 訪問以下類型編碼器的參數:“編碼器周期性"
? 索引中定義的數據記錄未處于活動狀態。 必須通過調用
“MC_ChangeDataset"來更改數據記錄。
? 當前,工藝對象正在執行重啟。因此,無法讀取參數。
808B 參數值的 REAL 格式無效 數據類型為 REAL 的輸入參數的值不符合有效的浮點數格
式。
檢查輸入參數值或背景數據塊數據。 不能以浮點格式表示
格式無效的值。 它們以十六進制格式 (DW16# ...) 顯示。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 733
6.7.6 FB450 MC_ReadPeriphery — 讀取工藝 I/O
使用 FB 450“MC_ReadPeriphery"讀取工藝 I/O
受固件版本為 V3.1.x 或更高版本的集成工藝的支持
用途
● “MC_ReadPeriphery"工藝功能用于讀取集成工藝的 I/O 映像區。 示例中顯示了更新
的時間從屬性。
適用對象
● 地址區 0 到 63 中 DP(DRIVE) 上的 DP I/O。
● 位于地址區 0 到 63 的 T-CPU 的集成 I/O
先決條件
● 尋址的 I/O 必須存在于集成工藝的 I/O 映像區 DP(DRIVE) 中。
超馳命令
無法使用任何其它命令取消 MC_ReadPeriphery 命令。
MC_ReadPeriphery 命令不會取消任何其它命令。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
734 功能手冊, 03/2008, A5E01078448-06
輸入參數
參數 數據類型 初始值 說明
Enable BOOL FALSE 只要 Enable = TRUE 就會讀取 I/O 映像區的一個區域。
輸入參數 InputOutput、ByteAddress 和 Data 的更改只
能通過 Enable 的上升沿激活。
要讀取的 I/O 區域的定義:
FALSE : 輸入的 I/O 映像區
InputOutput BOOL FALSE
TRUE : 輸出的 I/O 映像區
ByteAddress INT 0 開始進行讀取的字節起始地址(可能的值:0 ... 63)。
Data ANY -- 讀取數據的目的地。
要讀取的數據長度取決于數據類型和 ANY 指針中的重復
因子。 zui大長度是 64 個字節。
輸出參數(狀態輸出)
參數 數據類型 初始值 說明
DataValid BOOL FALSE TRUE:可以讀取有效數據
(*次成功完成讀取操作時置位)
Busy BOOL FALSE TRUE:正在執行命令
TRUE : 命令啟動時有錯誤。 未執行該命令。 有關原因
的信息,請參考 ErrorID。
Error BOOL FALSE
FALSE : 命令啟動時沒有錯誤。
ErrorID WORD 0 輸出參數 Error 的 ErrorID。
說明
由于集成工藝中命令執行的運行時間和調用“MC_ReadPeriphery"的 OBx 循環的運行時
間,響應時間可能會很長。 因此,應將需要快速響應的 I/O 連接到 T-CPU 的 MPI/DP 接
口。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 735
MC_ReadPeriphery — 示例
下圖中的示例顯示了讀取或裝載 I/O 映像區 DP(DRIVE) 時的時間*性。
在每個命令執行周期開始時,將從位置調節器中裝載輸入的信號狀態并將其寫入輸入的
I/O 映像區。 此裝載操作與“MC_ReadPeriphery"工藝功能無關。 “MC_ReadPeriphery"工
藝功能訪問該 I/O 映像區并向用戶程序提供數據。
該 I/O 映像區將被傳輸到控制器,當通過 Enable = TRUE *次調用
MC_ReadPeriphery 時開始。 同時,輸出參數 Busy 被設置為 TRUE。
MC_ReadPeriphery 命令作為*個命令執行周期時間片中的新命令執行。 新命令在執
行該命令時開始執行。 再次調用 MC_ReadPeriphery 時,I/O 輸入映像區被讀入控制器
輸入。 輸出參數 DataValid 報告 TRUE 狀態。
第二個命令執行周期開始時監視當前的 MC_ReadPeriphery 命令。 命令執行結束時處理
當前命令,其中zui后執行的命令。 第二個命令執行周期的 I/O 輸入映像區在第三次
調用 MC_ReadPeriphery 時被傳輸到控制器。
DB 更新由隨后的 IPO 周期觸發。 此更新直到下一個位置控制周期完成時結束,并由位
置控制中斷。 第三個命令執行周期的時間片在 DB 更新后可用。 由于命令執行的延遲開
始,該更新由下一個位置控制和隨后的 IPO 中斷。 因此,更新的 I/O 映像區在第四次調
用 MC_ReadPeriphery 時不可用。 于是,與第三次調用中使用的相同的 I/O 輸入映像區
被傳輸到控制器。
第四次調用的 I/O 映像區在第五次調用 MC_ReadPeriphery 時可用,并被傳輸到控制
器。 控制器并不讀取第三個命令執行周期的 I/O 映像區。
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
736 功能手冊, 03/2008, A5E01078448-06
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 737
MC_ReadPeriphery — ErrorID
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
0000 沒有錯誤 -
8001 內部錯誤 項目/軟件發生故障或不*。
8005 命令已取消,因為命令存儲器正被
其它進程使用
命令容量不足,無法執行該命令。
可能的原因:
? 活動命令的數量已超出限制。
? 以下工藝功能中的活動命令過多:
"MC_CamSectorAdd"
"MC_ReadPeriphery"
"MC_WritePeriphery"
"MC_ReadRecord"
"MC_WriteRecord"
"MC_ReadDriveParameter"
"MC_WriteDriveParameter"
"MC_ReadCamTrackData"
"MC_WriteCamTrackData"
在同一周期內調用這些工藝功能,直到輸出參數 Done、
CommandAborted 或 Error 中有一個變為 TRUE。 驗證程
序是否包含不必要的(多余的)命令。
800B 無法保留傳輸緩沖區 命令的傳輸緩沖區不足。 可能的補救措施:
? 傳輸緩沖區已被其它的活動工藝功能占用。 防止同時執
行以下工藝功能:
“MC_ReadCamTrackData"
“MC_WriteCamTrackData"
“MC_CamSectorAdd"
“MC_ReadPeriphery"
“MC_WritePeriphery"
“MC_ReadRecord"
“MC_WriteRecord"
“MC_ReadDriveParameter"
“MC_WriteDriveParameter"
? 減小要讀取的 I/O 范圍的大小。
8043 參數值非法 與輸入參數 ByteAddress. 有關
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
738 功能手冊, 03/2008, A5E01078448-06
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
804C 命令輸出率過高 具有相同背景數據塊的命令的輸出率超過了命令接口的容
量。第二個命令被拒絕,以保持*個命令的*性。
如果命令輸出率較高,請務必使用單獨的背景數據塊或再
次請求命令。請注意,盡管接受的*個命令可能處于活
動狀態,但是您可能無法通過狀態輸出對其進行監視。
8050 工藝未準備就緒 ? 在使用斷點進行測試期間(CPU 處于 HOLD 狀態),
工藝功能向工藝輸出了一條新命令。該命令被拒絕。
? 在重啟 OB 中輸出了該命令。
8052 在不同運行級別進行塊調用 使用同一背景數據塊,在不同運行級別調用了此工藝功
能。
示例:
在 OB 1 和 OB 35 中都使用背景數據塊 DBx 調用工藝功能
x。開始工藝功能在 OB 1 中執行,然后由于在 OB 35 中調
用它而中斷其在 OB 1 中的執行。由于背景數據塊是共享
使用的,因此將在這兩個調用的輸出參數 ErrorID 中都指
示該錯誤。
預期的錯誤響應:
? 新命令(輸入參數 Execute / Enable 的上升沿或下降
沿)未傳送到集成工藝。
? zui初啟動的命令不能在工藝功能的輸出參數中進行監
視。但是,該命令在集成工藝中可能仍處于活動狀態
注意:
在不同的運行級別使用不同的背景數據塊,或者互鎖工藝
功能的調用。
8053 背景數據塊無效。 工藝功能的背景數據塊存在故障(例如,長度錯誤)。
8086 參數不可用 當前無法執行讀取/寫入命令;重復該命令。
8088 DB 無效(ANY 指針) ANY 指針指向無效的數據區域。
? 找不到數據塊
? 找不到的起始地址
? 數據區域過短
工藝功能
6.7 工藝功能 — 基本功能
S7-Technology
功能手冊, 03/2008, A5E01078448-06 739
ErrorID 錯誤消息 說明/糾正或避免錯誤的方法
8089 數據長度無效(ANY 指針) 的數據長度無效??赡艿脑颍?br>? 長度超過 64 個字節。
? 的長度加上起始地址定義的地址在 I/O 映像區
DP(DRIVE) 之外。
808C 指針格式無效或不受支持 ANY 指針包含無效的定義。 接受的區域:
I、O、M、DB、DI
接受的數據類型:
BYTE、CHAR、WORD、INT、DWORD、DINT、REAL
808D 數據記錄長度超出范圍 已嘗試傳輸長度超過 240 個字節的數據記錄。 減小 ANY
指針中的長度定義。
6.7.7 FB451 MC_WritePeriphery — 寫入工藝 I/O
您感興趣的產品PRODUCTS YOU ARE INTERESTED IN
環保在線 設計制作,未經允許翻錄必究 .? ? ?
請輸入賬號
請輸入密碼
請輸驗證碼
請輸入你感興趣的產品
請簡單描述您的需求
請選擇省份