0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

如何在S7-1200PLC編寫程序時實現(xiàn)流量累積?

PLC技術圈 ? 來源:PLC技術圈 ? 作者:PLC技術圈 ? 2021-03-05 18:18 ? 次閱讀

在使用s7-1200PLC編寫程序的時候,如果項目上需要用到流量累積功能,但是本款PLC并沒有自帶流量累積功能塊。這時,就需要我們組態(tài)工程師自己編寫一個具有流量累積功能程序,或者將該程序封裝為FB塊或者FC塊。本文以封裝FB塊為例。

第一步:在程序塊目錄下單擊添加新塊,彈出添加新塊對話框,選中FB函數(shù)塊,在名稱欄填上需要命名的名字,如:Totalizer,選擇編程需要用的編程語言,本文以SCL語言講解,F(xiàn)B塊的編號可以通過手動或自動生成,然后單擊確認,如下圖所示

第二步:打開新建功能塊,并建立臨時變量,如下圖所示

第三步:程序編寫,如下圖所示:

程序編寫完成后,進行編譯,編譯沒有錯誤時,在FC(FC2,FLOWACCUM)中調(diào)用該FB塊,最后在OB30中斷塊中調(diào)用該FB塊。

第四步:在FC中調(diào)用名字為“Totalizer”的FB塊,并對輸入輸出參數(shù)賦值,如下圖所示

再在OB30中調(diào)用功能塊,OB30中斷塊是循環(huán)中斷塊,循環(huán)時間為100ms,如下圖所示

雙擊循環(huán)中斷OB30中斷塊,在中斷塊中調(diào)用FC2(FLOWACCUM)功能塊,如下圖所示

程序解讀:

變量定義:

變量名:Reset,數(shù)據(jù)類型:Bool,作用:累積清零

變量名:Accum,數(shù)據(jù)類型:Real,作用:存儲累積值

變量名:Total,數(shù)據(jù)類型:Real,作用:存放累計值

變量名:Intervall,數(shù)據(jù)類型:TIME,作用:流量單位中的時間,如m3/h,則:變量為1h=3600s,變量單位:秒

變量名:Intervall_DInt,數(shù)據(jù)類型:Dint,作用:存儲Intervall轉換為Dint數(shù)據(jù)類型后的值

變量名:Intervall_Real,數(shù)據(jù)類型:Real,作用:存儲Intervall_DInt轉換為Real數(shù)據(jù)類型后的值

變量名:Cycle,數(shù)據(jù)類型:TIME,作用:存儲程序循環(huán)時間,單位:秒

變量名:Cycle_DInt,數(shù)據(jù)類型:Dint,作用:存儲Cycle轉換為Dint數(shù)據(jù)類型后的值

變量名:Cycle_Real,數(shù)據(jù)類型:Real,作用:存儲Cycle_DInt轉換為Real數(shù)據(jù)類型后的值

程序代碼

IF #Reset = true THEN //條件為真時

#Accum := 0.000000e000; //累積清零

#Total := 0.000000e000; //累積清零

ELSE

#Intervall_DInt := TIME_TO_DINT(#Intervall);//將時間型變量Intervall轉換為雙整型數(shù)據(jù),并存在變量中

#Intervall_Real := DINT_TO_REAL(#Intervall_DInt);//將雙整型數(shù)據(jù)轉換為實型數(shù)據(jù),并存在變量中

#Cycle_DInt := TIME_TO_DINT(#Cycle);//將時間型變量Cycle轉換為雙整型數(shù)據(jù),并存在變量中,本例為0.1s

#Cycle_Real := DINT_TO_REAL(#Cycle_DInt);//將雙整型數(shù)據(jù)轉換為實型數(shù)據(jù),并存在變量中

#Accum := ((#Value * #Cycle_Real) / #Intervall_Real) + #Accum;//累積計算

#Total := #Accum; //Kopiere Ergebnis nach #Total / Copy result to #Total.//累計值傳遞

END_IF;

原文標題:如何在S7-1200PLC上實現(xiàn)流量累加算法講解

文章出處:【微信公眾號:PLC技術圈】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • plc
    plc
    +關注

    關注

    5004

    文章

    13048

    瀏覽量

    460874
  • 編程
    +關注

    關注

    88

    文章

    3544

    瀏覽量

    93470

原文標題:如何在S7-1200PLC上實現(xiàn)流量累加算法講解

文章出處:【微信號:xue_PLC,微信公眾號:PLC技術圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    plc200的程序怎么轉plc1200

    PLC200的程序轉換為PLC1200的過程涉及到多個步驟,包括硬件配置、軟件設置、程序轉換和調(diào)試等。 引言 PLC200和
    的頭像 發(fā)表于 07-01 10:00 ?685次閱讀

    西門子S7-1200 PLC的指令介紹

    西門子S7-1200 PLC,作為西門子自動化控制產(chǎn)品中的一款緊湊型控制器,憑借其強大的功能和易用性,在工業(yè)控制領域得到了廣泛的應用。S7-1200 PLC不僅具備標準的
    的頭像 發(fā)表于 06-18 14:52 ?2037次閱讀

    西門子S7-1200 PLC的基本功能

    西門子S7-1200 PLC(Programmable Logic Controller)是一款緊湊型、模塊化的可編程邏輯控制器,專為滿足各種自動化應用需求而設計。其強大的功能、靈活的配置以及卓越
    的頭像 發(fā)表于 06-13 11:29 ?1600次閱讀

    S7-1200如何實現(xiàn)內(nèi)部數(shù)據(jù)的掉電保持?

    S7-1200 PLC 可以通過多種方式實現(xiàn)內(nèi)部數(shù)據(jù)的掉電保持,以確保在斷電或重啟后數(shù)據(jù)不會丟失。
    的頭像 發(fā)表于 01-29 16:11 ?6358次閱讀

    透傳網(wǎng)關基于4G/以太網(wǎng)/WIFI聯(lián)網(wǎng)實現(xiàn)西門子S7-1200/1500PLC的遠程監(jiān)控和程序上下載

    【技術分享】遠程透傳網(wǎng)關-單網(wǎng)口快速實現(xiàn)西門子S7-1200/1500 PLC程序遠程上下載
    的頭像 發(fā)表于 01-19 09:30 ?1260次閱讀
    透傳網(wǎng)關基于4G/以太網(wǎng)/WIFI聯(lián)網(wǎng)<b class='flag-5'>實現(xiàn)</b>西門子<b class='flag-5'>S7-1200</b>/1500<b class='flag-5'>PLC</b>的遠程監(jiān)控和<b class='flag-5'>程序</b>上下載

    西門子S7-1200S7-300PLC之間的區(qū)別有哪些?

    S7-1200作為新推出的緊湊型控制器,其產(chǎn)品定位在原有的SIMATIC S7-200和S7-300之間,它與S7-300的區(qū)別主要體現(xiàn)在硬件、通信、工程、存儲器、功能塊、計數(shù)器、定時
    的頭像 發(fā)表于 01-10 10:54 ?951次閱讀
    西門子<b class='flag-5'>S7-1200</b>與<b class='flag-5'>S7-300PLC</b>之間的區(qū)別有哪些?

    西門子plc如何選型 s7-1500和s7-1200區(qū)別

    S7-1200是一種小型的PLC,適用于小型自動化應用。它具有較小的尺寸、較低的成本和中等級別的性能。S7-1200系列提供了多種CPU型號和不同數(shù)量的I/O模塊,可擴展性較強。
    發(fā)表于 01-10 10:48 ?4978次閱讀

    plc西門子s7-1200基礎知識:plcplc之間如何通訊

    S7-1200編程軟件是Siemens TIA Portal,可以用于編寫程序并對PLC進行配置和調(diào)試。此外,還有一些輔助軟件和工具可用于幫助用戶診斷故障和管理數(shù)據(jù)。
    的頭像 發(fā)表于 01-10 10:43 ?2420次閱讀

    組態(tài)王與S7-1200PLC之間 Profinet無線以太網(wǎng)通信

    組態(tài)王與S7-1200PLC之間想要搭建 Profinet無線以太網(wǎng)通信,需要用到以下設備: ● 西門子PLC型號:S7-1200 × 2臺 ● 上位機:組態(tài)王6.55 × 1臺 ● 無線通訊終端
    的頭像 發(fā)表于 01-09 09:21 ?826次閱讀
    組態(tài)王與<b class='flag-5'>S7-1200PLC</b>之間 Profinet無線以太網(wǎng)通信

    介紹S7-1200PLC和V20變頻器的Modbus通訊詳細步驟

    .找一臺帶有RS485通訊模塊的S7-1200PLC和一臺V20變頻器。
    的頭像 發(fā)表于 01-03 18:24 ?1497次閱讀
    介紹<b class='flag-5'>S7-1200PLC</b>和V20變頻器的Modbus通訊詳細步驟

    labview編寫程序的一般步驟

    LabVIEW是一種非常強大的圖形化編程工具,它可用于控制、測量、測試和監(jiān)控應用。編寫LabVIEW程序的一般步驟包括以下幾個方面: 程序需求分析:在開始編寫程序之前,首先需要明確
    的頭像 發(fā)表于 12-29 10:06 ?1764次閱讀

    codeblocks怎么編寫程序

    ::Blocks編寫程序的過程,以使您對其操作有更深入的了解。 首先,我們需要下載并安裝Code::Blocks。您可以在官方網(wǎng)站https://www.codeblocks.org/上找到適用于您的操作系統(tǒng)的安裝程序。安裝過程相對簡單,只需按照向導指示完成即可。 一旦安
    的頭像 發(fā)表于 11-26 10:28 ?1268次閱讀

    怎樣在codeblocks上編寫程序

    何在CodeBlocks上編寫程序,并提供一些有用的技巧和建議。 要在CodeBlocks上編寫程序,首先需要下載和安裝它。你可以從官方網(wǎng)站(http://www.codeblocks.org/)上找到適合你操作系統(tǒng)的安裝包,
    的頭像 發(fā)表于 11-26 09:26 ?1344次閱讀

    PLC西門子S7-200smart和S7-1200的區(qū)別?

    PLC西門子S7-200smart和S7-1200的區(qū)別? 西門子S7-200 smart和S7-1200是西門子公司推出的兩個
    的頭像 發(fā)表于 11-17 11:41 ?9212次閱讀

    虛擬機linux怎么編寫程序

    在虛擬機Linux上編寫程序是一項非常常見且有用的任務。無論是開發(fā)一個簡單的腳本、一個Web應用程序還是一個復雜的軟件項目,Linux提供了強大的工具和環(huán)境來幫助你進行編程。本文將詳細介紹如何在
    的頭像 發(fā)表于 11-17 10:08 ?1507次閱讀