在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

一文詳解FC和FB的區別與用法

1bGT_GKYXT1508 ? 2018-01-31 12:45 ? 次閱讀

很多新手都會問,FC和FB到底什么區別呢?該怎么使用呢?其實很簡單啦,仔細閱讀下面內容就能理解哦!
FC塊講解首先,我們從兩者的名字就可以進行區分,可以用一個公式即FB=FC+DB來表示,FB是具有DB背景塊的特殊FC,也就是說FB具有FC的功能,同時擁有一個DB塊。FC全稱是Function函數。注:DB塊 全稱DataBlock 數據存儲區域,類似數據庫中關系表結構。那首先什么函數呢?

函數

函數 f(x)就像機器或黑箱,給予輸入值x便產生唯一輸出值f (x)。x是自變量,f(x)是因變量。舉一個我們常見的公式,求圓的面積,s=π*r*r。輸入r值,便得到圓的面積s,這就是最簡單的函數,r是自變量,s是因變量。

一文詳解FC和FB的區別與用法

圖一 變量聲明

一文詳解FC和FB的區別與用法

圖2 FC函數內容Input:輸入型參數,提供外部輸入接口。類似于函數f(x)中的x,是一個自變量。Input類型參數,是外部變量的拷貝副本,修改其值,外部變量無變化。假設在程序中修改R的值,從圖2編譯信息發現,傳遞的并不是實際參數,所以修改外部接口變量無變化。Output:輸出型參數,提供外部輸出接口。該類型參數由于直接引用外部變量地址,可以修改其值。InOut:輸入輸出型參數,既做輸入又做輸出。同Output類型一樣,可以修改外部接口變量的值。在適當地方,使用InOut類型變量,可以減少占用plc的變量聲明空間。Temp:局部變量,在函數內部使用,不提供外部的接口。我們常常把temp變量用于數據轉換的中間值,或者用于循環變量,比如用于For 或者While循環。由于Temp是局部變量,它的值是隨機,使用必須初始化,對其賦值。Constant:常量,在函數內部使用,意思是恒定不變的變量,只能在聲明處修改。

比如我們這里的π圓周率是固定不變的,可能調用的地方有幾十處,若程序中直接引用3.1415,后期修改,需要把每個地方都修改過去,很麻煩。在聲明處修改π值,所有函數中的π變量都會修改。假設我們在程序中修改π常量,從圖2中編譯信息可以發現,常量不能在程序中修改。Return:函數返回值,存儲計算結果。默認為無返回值,所以聲明為void。在我們的數學知識里面函數應該是要有返回值的,但是在TIA PORTAL可以沒有返回值,我們把這種無返回類型的函數,稱為procedure(過程)。我們這里設置為Real類型,返回圓的面積。有讀者可能有疑問,return變量和Output類型都可以用來存儲計算結果,兩者的區別是什么呢?其中有一個顯著的區別是Output類型輸出參數可以聲明若干個,但是return類型的返回變量,只能聲明一個,且變量名字無法修改。其他區別,等講解SCL的時候,再做解答。在main[OB1]程序塊里面拖動FC1函數,得到如下運行結果:

一文詳解FC和FB的區別與用法

圖3 程序運行結果

圖4 DB塊值監控程序解讀:由于PLC程序是從左到右執行,所以"Func"函數塊的左側是輸入接口,右側是輸出接口。觀察函數塊的內部變量名字,發現和函數中的聲明一一對應,除了變量。Ret_Val是Return接口變量的別名,由于每個函數的名字都不一樣,所以統一用作為函數返回值變量的名稱。程序一是對模擬量值進行轉換,采樣的分辨率下限是0,上限為27648,采樣的數字量值15000,通過調用指定函數把轉換出來的值放在變量<"Data".電壓值>,得到轉換值為0.5425347.把變量<"Data".電壓值>放在FC函數的Inout接口中,利用PLC的掃描周期,通過DB塊可以看到最終值5.425347。若不放在Inout,把其放在Input接口,我們必須在OutPut接口再聲明一個變量,用于存儲最終的轉換值。這樣聲明就可以節省PLC的內存空間了,同樣使程序看起來更簡潔。FC函數塊的代碼內容比較簡單,請自行閱讀理解,若有問題,可以留言。

FB塊講解要了解FB和FC的區別,讓我們剖析一下這兩個模塊的變量聲明結構:

一文詳解FC和FB的區別與用法

圖5 FB塊變量聲明

一文詳解FC和FB的區別與用法

圖6 FB占用DB背景塊內部變量通過FB和FC的變量聲明,我們可以看到三個明顯的區別:1、FB塊增加了Static靜態區聲明2、FB增加了保持性和可訪問性選擇上述兩個區別正好說明了FB=FC+DB公式的成立,因為這兩個特性是DB塊才有的特性哦。我們在普通DB塊里面聲明的變量都在Static區聲明,不信的話,你可以打開來看看。我們可以通過訪問FB擁有的背景塊來訪問FB中變量的值。當FC調用結束后,各種接口中聲明的變量值無法保存,FB調用結束后,仍然可以保留變量的值,你可以通過FB的背景DB塊進行訪問。FB的每次調用都會自動生成一個DB塊,想想我們編程當中,進行哪類操作也會有類似行為?其實就是我們用的非常頻繁的定時器操作,每一次拖動定時器都會自動建立一個DB塊。通過<系統資源>查看定時器擁有的DB塊,看看和圖6是否類似。

圖7 定時器DB背景塊結構由于定時器擁有背景塊,當我們停止計時后,PLC無論經過多少個掃描周期,還是可以讀取停止計時時刻的值,這就是擁有DB背景塊的好處,FB塊與此類似。3、FB塊沒有Return接口由于可以通過Output接口存儲返回值,所以沒有Return接口影響不大。

圖8 FB程序增加部分由于程序類似,FB程序只列出增加部分。我們可以看到該程序,每次調用都會把最大電壓值放在變量中,同時添加變量,用于記錄改變電壓的時間。在hmi程序上面,我們可以很方便讀取這兩個變量,來實時獲取當前的最大電壓值和修改時間,是不是很方便?讀者可能會有疑問,如果我自己寫一個FC函數,然后外部添加一個DB塊,不是一樣可以實現此功能嗎?看上去好像講的很有道理呀,不過這個想法是錯誤的。如果你在PLC程序中只調用FB塊一次,那么可以采用此方法。如果你在PLC程序里面,既要比較電壓,還要比較如電流、溫度和濕度等,如果用同一個FC怎么實現呢?用FB可以很好的解決此問題,不明白的,可要仔細想想!

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

    關注

    5031

    文章

    13816

    瀏覽量

    472769
  • DB
    DB
    +關注

    關注

    0

    文章

    48

    瀏覽量

    23077
  • FC
    FC
    +關注

    關注

    1

    文章

    81

    瀏覽量

    42317

原文標題:西門子PLC FC和FB用法講解

文章出處:【微信號:GKYXT1508,微信公眾號:工控云學堂】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    西門子PLC編程功能塊FB和功能FC的不同之處是什么

    程序調用(也可以調用其他子程序)。他們的最大區別是,FB與DB配合使用,DB中保存著FB使用的數據,即使FB退出后也會直保留。
    發表于 12-02 14:15

    西門子PLC編程中FBFC區別

    用西門子PLC編程時,可以用到功能塊FB和功能FC(FBFC都是組織塊)資料上說FBFC都可
    發表于 06-20 10:54 ?1.7w次閱讀

    帶你了解PLC中FBFC塊的區別

    本文首先介紹了PLC的FBFC是什么意思及它們的優缺點,其次介紹了PLC中FBFC塊的區別,最后用西門子舉例說明了
    發表于 04-18 18:32 ?3.8w次閱讀

    使用FB65但RFID與PC的連接DB用法區別

    同樣是使用使用FB65但RFID與PC的連接DB用法定的區別: 首先說下什么是FB65:
    的頭像 發表于 12-03 16:28 ?3964次閱讀

    PLC控制中FBFC塊的不同之處

    學習plc時特別難理解FBFC區別用法。接下來,我們來談談它們的區別用法。 帶背景數據塊
    發表于 12-14 14:34 ?4719次閱讀

    OB FC FB塊如何使用

    在學習和使用博途軟件時常常使用到OB FC FB塊那么這樣塊如何使用,今天就給大家帶來FC塊的使用,本文章采用啟保停程序設計。
    的頭像 發表于 08-15 10:44 ?7895次閱讀

    CMake用法詳解

    CMake用法詳解
    發表于 10-25 16:28 ?2次下載

    西門子PLC中FBFC區別、管腳定義、臨時變量

    FBFC區別 1、FB功能塊,帶背景數據塊 FC--功能,相當于函數; 2、
    的頭像 發表于 11-16 16:11 ?8893次閱讀

    詳解西門子PLC中函數FCFB的應用與區別

    本質上,FBFC的實現目的是相同的,無論何種邏輯要求,FBFC均可實現,只是實現方式效率不同,這也和工程師個人編程習慣有關;
    的頭像 發表于 11-25 15:55 ?3825次閱讀

    西門子PLC中函數FCFB的應用與區別

    1、FB功能塊,帶背景數據塊 FC——功能,相當于函數;2、FBFC塊均相當于子程序,既可以調用其它FB
    的頭像 發表于 11-30 16:59 ?3050次閱讀

    西門子FBFC之間的主要區別

    本質上,FBFC的實現目的是相同的,無論何種邏輯要求,FBFC均可實現,只是實現方式效率不同,這也和工程師個人編程習慣有關。
    發表于 12-16 09:58 ?4371次閱讀

    西門子FCFB究竟有啥區別

    ? FBFC區別? ? 1、FB功能塊,帶背景數據塊 FC——功能,相當于函數; 2、
    的頭像 發表于 12-19 15:18 ?5739次閱讀

    PLC編程中OB塊、FC塊、FB塊、DB塊的使用原則

    西門子新加塊中包含組織塊(OB)、函數塊(FB)、函數(FC)、數據塊(DB)
    發表于 05-24 15:01 ?1.8w次閱讀
    PLC編程中OB塊、<b class='flag-5'>FC</b>塊、<b class='flag-5'>FB</b>塊、DB塊的使用原則

    詳解pcb和smt的區別

    詳解pcb和smt的區別
    的頭像 發表于 10-08 09:31 ?4376次閱讀

    西門子TIA Portal中函數FC和函數塊FB的相互轉換

    DC/DC/DC。 設置 IP 地址:192.168.0.1。 設置子網掩碼:255.255.255.0。 第2步: 添加個函數 FC,命名為:MotorFC-FB,作為待轉換的函數 FC
    的頭像 發表于 01-15 10:07 ?1737次閱讀
    西門子TIA Portal中函數<b class='flag-5'>FC</b>和函數塊<b class='flag-5'>FB</b>的相互轉換
    主站蜘蛛池模板: 一级片aaaaaa| 五月婷婷六月色 | 成人伊人青草久久综合网 | 色就是色欧美色图 | 黄色大毛片 | 午夜三级网 | 久久6免费视频 | 国产精品虐乳在线播放 | 80s国产成年女人毛片 | 久久亚洲综合中文字幕 | 黄色日比 | 草草影院私人免费入口 | 欧美成人亚洲欧美成人 | bt天堂在线www最新版资源网 | 天天摸夜夜添狠狠添2018 | 白嫩美女一级高清毛片免费看 | 久草男人天堂 | 色人岛 | 色宅男 | 天天综合网站 | 亚洲成人在线播放 | 色人人| 日本在线一本 | 性视频在线 | 欧美一级视频在线 | 热久在线| 韩国最新三级网站在线播放 | 午夜免费福利在线 | 你懂的福利| 国产精品午夜在线观看 | 国产成人精品免费视频大全可播放的 | 日本免费人成黄页在线观看视频 | 操日韩 | 成人欧美一区二区三区视频不卡 | 在线女同免费观看网站 | 亚洲涩色 | 欧美色欧美亚洲高清在线观看 | 日韩免费毛片 | 午夜国产精品视频 | 亚洲色图21p | 不卡视频免费在线观看 |