引用
引用第56樓郭懷海于2011-03-13 00:43發(fā)表的 :
你編一個SFC105模擬量計算程序試試。哈哈。
我查一下這個指令是什么意思,我還不怎么熟悉plc指令
PLC 順控指令SFC 的編程方法
順序功能圖(Sequeential Function Chart)是一種新穎的、按照工藝流程圖
進(jìn)行編程的圖形編程語言。這是一種IEC標(biāo)準(zhǔn)推薦的首選編程語言,近年來在
PLC編程中已經(jīng)得到了普及和推廣,
SFC編程的優(yōu)點:
1、在程序中可以很直觀地看到設(shè)備的動作順序。比較容易讀懂程序,因為
程序按照設(shè)備的動作順序進(jìn)行編寫,規(guī)律性較強。
2、在設(shè)備故障時能夠很容易的查找出故障所處在的位置。
3、不需要復(fù)雜的互鎖電路,更容易設(shè)計和維護(hù)系統(tǒng)。
SFC的結(jié)構(gòu):
步+轉(zhuǎn)換條件+有向連接+機器工序的各個運行動作=SFC。
SFC程序的運行從初始步開始,每次轉(zhuǎn)換條件成立時執(zhí)行下一步、在遇到
END步時結(jié)束向下運行。
第一章 單流程結(jié)構(gòu)的編程方法
本教程主要介紹在三菱PLC編程軟件GX Developer中怎編制SFC順序功
能圖。下面以例題1介紹SFC程序的編制法。
例題1:自動閃爍信號生成,PLC 上電后Y0、Y1 以一秒鐘為周期交替閃
爍。本例的梯形圖和指令表,詳細(xì)見附件
呵呵,原來就在本論壇出的說明
例題1:自動閃爍信號生成,PLC上電后Y0、Y1以一秒鐘為周期交替閃爍
這個簡單如圖:
交替輸出
另外看了半天,沒明白sfc105是什么意思
如果sfc是任務(wù)調(diào)用功能,我們只要在每個任務(wù)中設(shè)定任務(wù)標(biāo)記,程序運行要調(diào)用任務(wù)時,把任務(wù)標(biāo)記設(shè)置為真就可以達(dá)到這個功能。
其實也不需要,因為每個任務(wù)都是有條件執(zhí)行的,只要條件不成立,就不會執(zhí)行任務(wù)(雖然程序在掃描循環(huán))
-------------------------
現(xiàn)在明白了sfc105是個數(shù)據(jù)轉(zhuǎn)換功能,其實plc把下面公式固定在里面了,我們只是輸入數(shù)據(jù)然后得出輸出答案:
Y=(X-輸入下限) * (輸出上限-輸出下限) / (輸入上限-輸入下限) +輸出下限
假設(shè)X是10位AD測量后的數(shù)值,數(shù)值范圍是0-1023
我們把它轉(zhuǎn)換成0-100度顯示,
計算順序如下:
1 輸入差值=輸入上限-輸入下限;
2 輸出差值=輸出上限-輸出下限;
3 Y=(X-輸入下限);
4 Y=(X-輸入下限)*(輸出上限-輸出下限);
5 Y=(X-輸入下限)*(輸出上限-輸出下限) / (輸入上限-輸入下限);
6 Y=(X-輸入下限)*(輸出上限-輸出下限) / (輸入上限-輸入下限) + 輸出下限;
工程數(shù)據(jù)轉(zhuǎn)換
這樣就可以得出轉(zhuǎn)換后的數(shù)據(jù),但是有個問題,如果(X-輸入下限)*(輸出上限-輸出下限)值大于65535時,數(shù)據(jù)會溢出;
后來分析發(fā)現(xiàn)Y=(X-輸入下限) * (輸出上限-輸出下限) / (輸入上限-輸入下限) +輸出下限 這種算法有問題,把簡單變復(fù)雜化了
其實就是X值*比例系數(shù)=要顯示的值;
在我們的軟件里面,這些轉(zhuǎn)換無需考慮,我們有個參數(shù)頁面集成了這些功能,并且包含了校正功能(比如更換熱電阻或者熱電偶)可以自動計算出比例系數(shù)和基準(zhǔn)數(shù)
參數(shù)設(shè)置
[ 此帖被sy2kj在2011-04-07 08:38重新編輯 ]