<sup id="x7dny"><rp id="x7dny"><big id="x7dny"></big></rp></sup>
    • <label id="x7dny"><tt id="x7dny"><tfoot id="x7dny"></tfoot></tt></label>
      <dfn id="x7dny"></dfn>
      <small id="x7dny"><rp id="x7dny"><rt id="x7dny"></rt></rp></small>
      加入收藏 在線留言 聯系我們
      關注微信
      手機掃一掃 立刻聯系商家
      全國服務熱線18475208684
      公司新聞
      基本過程庫(LBP)三:純干貨!手把手教你如何使用LBP_Aggr8庫應用及仿真(附實例程序下載)
      發布時間: 2024-09-06 22:07 更新時間: 2024-12-03 08:00
      觀看基本過程庫(LBP)三:純干貨!手把手教你如何使用LBP_Aggr8庫應用及仿真(附實例程序下載)視頻
      前言

      基本控制庫 (LBP)系列的文章一和文章二(文末有跳轉鏈接),分享了LBP相關的說明及使用實施前的一些通用設置,本系列中所有實例均基于此設置,如未進行設置可能造成編譯報錯,無法使用的情況出現。請在進行實例測試前,先進行基礎設置。

      圖片image-20240826170029776

      01 測試環境

      軟件:

    • TIA Portal V17
    • STEP 7 Professional
    • Wincc Comfort(TP900 Comfort)
    • S7-PLCSIM (仿真工具)
    • S7-PLCSIM Advanced V6.0 (仿真工具)
    • 硬件:

    • CPU 1513-1 PN (仿真環境,非必須)
    • TP900 Comfort (仿真環境,非必須)
    • 注:小編電腦已安裝軟件如下:

      圖片image-20240826111028433

      02 LBP_Aggr8--控制Zui多8個集合

      功能描述:

      該塊管理多達八個集合的自動開/關和切換。以下是可能的模式:

    • 根據優先級順序切換
    • 開啟:釋放的具有Zui高優先級的集合
    • 關閉:運行中的具有Zui低優先級的集合 優先級控制的驅動在參數化了不同的優先級時激活。
    • 考慮運行時間的切換
    • 開啟:釋放的具有Zui短總運行時間的集合
    • 關閉:運行中具有Zui長總運行時間的集合 如果輸入“parSwitchByTime”為TRUE,并且僅適用于具有相同優先級的集合,則此操作模式激活。
    • 考慮周期時間的切換
    • 開啟:釋放的具有Zui短Zui后一個周期時間的集合
    • 關閉:運行中具有Zui長當前周期時間的集合
    • 圖片image-20240826103154302

      輸入參數說明:

      參數數據類型描述
      identNameString[30]識別名稱
      switchCmdBool每個上升沿執行切換
      parSwitchByTimesBool當設置為true時,根據時間控制切換
      requestUInt請求的集合數量(0到8)
      indAggr1 至 indAggr8Byte集合1至8的狀態,位0 - 真:集合就緒,位1 - 真:集合已開啟,位4至7 - 開啟序列中的位置(優先級)
      delayTimeTime開啟延遲時間
      limitSecsDInt時間控制切換的運行時間(如果parSwitchByTimes = true)
      restTimeTime關閉后的休息時間(如果parSwitchByTimes = true)
      resetBool真:重置錯誤

      輸出參數說明:

      參數數據類型描述
      onByte位0-7 – 對集合1-8的開啟(true)或關閉(false)命令
      errNoSwitchBooltrue: 沒有集合可用
      errAggrByte一個或多個集合的錯誤
      switchEnableBooltrue: 開關操作可能
      switchActiveBooltrue: 開關操作活躍
      intErrorWord位0 - true: 系統錯誤(讀取系統時間失敗)

      輸入輸出接口參數(panels):

      參數數據類型描述
      settingsPLCUDT位0-7 – 對集合1-8的開啟(true)或關閉(false)命令
      settingsHMIUDTtrue: 沒有集合可用
      statusHMIUDT一個或多個集合的錯誤
      alarms1WordComfort/Advanced面板離散量報警集合
      alarms2WordComfort/Advanced面板離散量報警集合

      注:panels參數類型為數組,數組大小由鏈接HMI數量決定;

      用戶定義類型--settingsHMI

      參數數據類型描述
      parSwitchByTimesBooltrue: 開關時間控制
      requestUInt所需集合的數量
      priosArray[0..7] of UInt集合1至8的開關順序位置
      delayTimeTime延遲時間(再次開啟前的空閑時間)
      limitSecsTime時間控制開關的Zui大運行時間
      restTimeTime關閉后剩余的運行時間
      noteString[80]參見“note”
      resetBool重置錯誤,開關命令和剩余時間
      opStationString[16]參見“opStation”
      overwriteWord參見“overwrite”位分配:位0 – 開關命令/時間開關/全部開關(“over”)位1 – 開關命令(“cmd”)位2 – 時間開關(“cmd”)位3 – 請求(“over”)位4 – 延遲時間(“over”)位5 – 休息時間(“over”)... 位7 – 限制時間(“over”)位8 – 開關順序位置(“over”)
      opSecsArray[0..7] of Time集合1至8的運行時間
      alarmsInfoUDInt報警信息
      alarmsAckUDInt報警確認

      用戶定義類型--settingsPLC

      參數數據類型描述
      parSwitchByTimesBooltrue: 開關時間控制。
      requestUInt所需集合的數量。
      priosArray[0..7] of UInt集合1到8的開關順序位置。
      delayTimeTime延遲時間(再次開啟前的空閑時間)。
      limitSecsTime時間控制開關的Zui大運行時間。
      restTimeTime關閉后的休息時間。

      用戶定義類型--statusHMI

      參數數據類型描述
      identNameString[30]識別名稱
      nextUpInt下一個要啟動的集合編號。
      nextDownInt下一個要關閉的集合編號。
      diffLimitTime運行時間和Zui大執行時間之間的差異。
      cycleSecsArray[0..7] of Time集合1至8的運行時間(數組字段0對應集合1)。
      restTimesArray[0..7] of Time集合1至8剩余的休息時間(數組字段0對應集合1)。
      readysArray[0..7] of Booltrue: 集合準備就緒可以啟動(數組字段0對應集合1)。
      errorsArray[0..7] of Booltrue: 集合被中斷(數組字段0對應集合1)。
      runCmdsArray[0..7] of Bool集合1至8的啟動命令(數組字段0對應集合1)。
      onsArray[0..7] of Booltrue: 集合已啟動(數組字段0對應集合1)。
      requestUInt請求的集合數量。
      errNoSwitchBooltrue: 沒有集合可用。
      runUpDownBool集合正在啟動或關閉。
      switchenableBooltrue: 開關操作可能。
      03 LBP_Aggr8功能塊在PLC中配置

      LBP_Aggr8功能塊使用步驟如下(新建TIA Portal 項目,添加PLC,并完成系列文章一和文章二中的設置,過程不在贅述);

      1. 在Main程序中調用LBP_Aggr8功能塊,并指定背景數據塊;(相應UDT,自動復制完成)

        圖片image-20240826112750011
      2. 新建全局DB,根據功能塊接口建立IO變量;(實際應用中可使用結構體,實現快速添加)

        圖片image-20240826133459846

        注:參數panels使用數據塊PanelsBlock(庫文件中已有,拖拽使用),數組數量由鏈接HMI數量決定

      04 LBP_Aggr8功能塊在HMI中的應用

      基本控制庫 (LBP)主要應用于相同對象的快速批量處理,因此LBP庫提供了相應的圖形面板庫。本系列實例均基于Wincc Comfort面板進行分享,使用步驟如下:(本實例基于系列文章一和二中的設置進行,因此HMI新建及設置不在贅述

      1. 在HMI變量中新建變量表“LBP_Aggr8”(也可不用新建),并將PLC程序中LBP_Aggr8背景數據塊中“LBP_typeAggr8Sym”數據類型拖入變量表中,并重命名該變量;

        圖片image-20240826151422990
      2. 從項目庫中將“LBP_Aggr8” 及 “LBP_General”畫面模板拖擴HMI畫面導航欄中

        圖片image-20240826161708661
      3. 從項目庫中模板副本中復制“LBP_Templates”到HMI畫面管理中的模板;

        圖片image-20240826143921630
      4. 在項目庫中選擇報警類別,并拖入到HMI報警中

        圖片image-20240826144352529
      5. 從Demo項目中,將HMI報警中與“Aggr8”相關的離線報警全部復制到當前項目中;

        圖片image-20240826145008243

        注:每個FB實例都需要,單獨的一組報警信息;

      6. 將報警信息中的名稱,和HMI確認變量前綴或后綴(Demo中:InstDemo_2_1_instAggr8),批量替換為項目HMI變量中實例名稱;

        圖片image-20240826151804587
      7. 打開HMI根畫面(實際應用中根據需要選擇畫面),并從項目庫中選擇“LBP_SmAggr8”圖例,并拖入到HMI畫面中

        圖片vmware_cAML1PMhc8
      8. 打開圖例屬性窗口,并選擇接口選項,將接口參數與PLC FB背景數據塊中的“statSymbolAggr8”進行鏈接

        圖片image-20240826152745114
      05 LBP_Aggr8功能塊仿真調試

      完成程序和HMI設計,即可使用PLC-Sim進行仿真測試,步驟如下:

      1. 使用PLC-SIM啟動PLC仿真,并啟動該實例,功能塊運行;

        圖片image-20240826170524096
      2. 點擊TP900,啟動仿真器;

        圖片image-20240826170844764
      3. 點擊功能塊圖標,進入樣例測試模板;

        圖片image-20240826170942915
      4. 以上配置仿真測試完成,更多功能請自行測試;

      06 常見問題
      1. LBP_Aggr8拖入后,接口參數數據類型與實際不符,需要更新數據接口;

        圖片image-20240826115203959

        處理方法:打開LBP,點擊功能塊上方警告信息,選擇“編輯類型”后,右鍵出錯的接口選擇“更新界面”問題解決;

        圖片image-20240826115234502圖片image-20240826115256891


      聯系方式

      • 電  話:13922889745
      • 經理:向小姐
      • 手  機:18475208684
      • 微  信:18475208684