單價: | 1100.00元/臺 |
發(fā)貨期限: | 自買家付款之日起 天內(nèi)發(fā)貨 |
所在地: | 直轄市 上海 上海松江 |
有效期至: | 長期有效 |
發(fā)布時間: | 2023-11-22 16:14 |
最后更新: | 2023-11-22 16:14 |
瀏覽次數(shù): | 100 |
采購咨詢: |
請賣家聯(lián)系我
|
西門子擴展模塊6ES7222-1HF32-0XB0西門子擴展模塊6ES7222-1HF32-0XB0
S7-1200 PLC的程序結構,,分為OB塊、FB塊,、FC塊、DB塊,,OB1相當于主程序,F(xiàn)B/FC相當于子程序,。
在S7-200/200 SMART PLC中,,子程序是需要被調用才執(zhí)行的,在S7-1200 PLC中也是一樣的,,我們的FB塊或FC塊需要在OB1中調用后才執(zhí)行,,當然FB中也可以調用FC,或者FC中也可以調用FB,,這就是嵌套調用,。對于S7-1200 PLC,最多可以支持16層的嵌套調用,。
FB或FC在使用時,,都可以使用帶形式參數(shù)與不帶形式參數(shù)的FB/FC,帶參數(shù)的FB/FC可以實現(xiàn)重復調用,,也很方便進行程序的移植,。
1、函數(shù)FC的生成和調用
FC是不含存儲區(qū)的代碼塊,,主要是用于執(zhí)行特定的運算,,或者是使用位邏輯指令執(zhí)行的獨立控制,F(xiàn)C可以在程序的不同位置進行多次調用,,對于重復發(fā)生的任務或動作中利用FC可以實現(xiàn)簡化程序的效果,。FC的建立可以建立帶形式參數(shù)的FC,也可以建立不帶形式參數(shù)的FC,。
我們需要知道的是FC是沒有相關的背景數(shù)據(jù)塊的,,沒有可以存儲參數(shù)值的寄存器,所以我們在調用函數(shù)FC時,,必須要給所有形參分配實參哦,。
添加函數(shù)FC的方法如下:
在項目樹中找到“PLC_1”文件夾,,雙擊“添加新塊”,,然后選擇FC塊,就可以新增一個FC塊了,,我們可以對這個塊進行命名,,選擇塊中程序的設計語言,以及分配這個塊的編號,,當然這個塊編號可以系統(tǒng)自動分配,,也可以我們自己手動分配,。
我們要建立帶形式參數(shù)的FC,還需要在添加的FC塊接口區(qū)中建立相應的變量,,這些變量我們就稱之為形式參數(shù),。
我們在程序接口區(qū)定義變量。在FC的接口參數(shù)中主要有五種變量,,分別是INPUT,、OUTPUT、INOUT,、TEMP和常量Constant,。
如下圖,我們建立好變量并編寫FC內(nèi)部的程序,,最后在OB1中調用這個數(shù)據(jù)運算的FC塊,,我們可以看到在調用時是有分配實參的,是吧?
2,、函數(shù)塊FB的生成和調用
FB塊跟FC塊相比,,不同的地方在于我們在調用函數(shù)塊FB時是需要為它分配背景DB塊的,主要用于存儲塊的參數(shù),。因為FB在調用時會分配對應的DB塊,,所以對于帶形式參數(shù)的FB,在調用時可以不對FB上的管腳賦予實參,。
添加函數(shù)塊FB的方法如下:
在項目樹中找到“PLC_1”文件夾,,雙擊“添加新塊”,然后選擇FB塊,,就可以新增一個FB塊了,,我們可以對這個塊進行命名,選擇塊中程序的設計語言,,以及分配這個塊的編號,,當然這個塊編號可以系統(tǒng)自動分配,也可以我們自己手動分配,。
我們要建立帶形式參數(shù)的FB塊,,同樣的需要建立相應的變量,在FB的接口參數(shù)中主要有六種變量,,分別是INPUT,、OUTPUT、INOUT,、TEMP,、Constant和Static變量,我們可以看到這相對比于FC塊多增了一個靜態(tài)變量Static,。
對于靜態(tài)變量可以用于存儲前一個掃描周期的運算結果,,如果前一掃描周期的運算結果,,在下次運算還需要使用時,就可以把這個變量建立為靜態(tài)變量Static,。
下圖是我們創(chuàng)建接口區(qū)的變量,,然后編寫FB內(nèi)部的程序,然后在OB1中進行調用,,調用時使用單個實例DB的情況,。
西門子擴展模塊6ES7222-1HF32-0XB0西門子交換機代理商西門子觸摸屏代理商西門子CPU模塊代理商西門子電纜電線代理商西門子變頻器代理商西門子電源模塊代理商西門子低壓繼電器代理商西門子PLC模塊代理商
西門子S7-1500 6ES7513-1FM03-0AB0
西門子S7-1500 6ES7515-5FN03-0AB0
西門子S7-1500 6ES7516-3FP03-0AB0
西門子S7-1500 6ES7511-1TL03-0AB0
西門子S7-1500 6ES7515-2TN03-0AB0