西門子S7-1200PLC模塊廣東代理商

用西門子S7-300/400計(jì)數(shù)器擴(kuò)展定時(shí)器的定時(shí)范圍
西門子S7-300/400的定時(shí)器大定時(shí)時(shí)間為9990 s,IEC定時(shí)器(SFB 3~SFB 5)的時(shí)間預(yù)置值的數(shù)據(jù)類型為32位的TIME,單位為ms,大定時(shí)時(shí)間達(dá)T#24D_20H_31M_23S_647MS。
如果需要更長(zhǎng)的定時(shí)時(shí)間,可以使用圖3-81所示的電路。I0.0為0狀態(tài)時(shí),計(jì)數(shù)器C0被復(fù)位。I0.0變?yōu)?/span>1狀態(tài)時(shí),其常開觸點(diǎn)接通,使T11和T12組成的振蕩電路開始工作,計(jì)數(shù)器的預(yù)置值500被送入計(jì)數(shù)器C0;I0.0的常閉觸點(diǎn)斷開,C0被解除復(fù)位。
圖3-81 定時(shí)范圍的擴(kuò)展
振蕩電路的振蕩周期為T11和T12預(yù)置值之和,圖中的振蕩電路相當(dāng)于周期為4h的時(shí)鐘脈沖發(fā)生器。每隔4h,當(dāng)T12的定時(shí)時(shí)間到,T11的常開觸點(diǎn)由接通變?yōu)閿嚅_,其脈沖的下降沿通過減計(jì)數(shù)線圈CD使C0的計(jì)數(shù)值減1。計(jì)滿500個(gè)數(shù)(即2000h)后,C0的當(dāng)前值減為0,它的常閉觸點(diǎn)閉合,使Q5.4的線圈通電。總的定時(shí)時(shí)間等于振蕩電路的振蕩周期乘以C0的計(jì)數(shù)預(yù)置值。
有的插圖中的梯形圖沒有標(biāo)出程序段號(hào),但是相鄰程序段左邊的垂直線是斷開的,以此來表示程序段的分界點(diǎn)。
在“設(shè)置輸入”S的上升沿,PV的預(yù)置值被送入加減計(jì)數(shù)器(Up Down Counter,見圖3-82)。復(fù)位輸入R為1狀態(tài)時(shí),計(jì)數(shù)器被復(fù)位,計(jì)數(shù)器的位輸出Q被復(fù)位,計(jì)數(shù)值被清零。在加計(jì)數(shù)輸入信號(hào)CU的上升沿,如果計(jì)數(shù)值小于999,計(jì)數(shù)器加1。在減計(jì)數(shù)輸入信號(hào)CD的上升沿,如果計(jì)數(shù)值大于0,計(jì)數(shù)值減1。如果兩個(gè)計(jì)數(shù)輸入均為上升沿,兩條指令均被執(zhí)行,計(jì)數(shù)值保持不變。計(jì)數(shù)值大于0時(shí),輸出信號(hào)Q為1狀態(tài);計(jì)數(shù)值為0時(shí),Q亦為0狀態(tài)。

圖3-82 加減計(jì)數(shù)器
如果在設(shè)置計(jì)數(shù)器時(shí)(在S信號(hào)的上升沿)CU或CD輸入為1,即使它們沒有變化,下一個(gè)掃描周期也會(huì)計(jì)數(shù)。
圖3-80是用計(jì)數(shù)器線圈指令設(shè)計(jì)的加計(jì)數(shù)器。“設(shè)置計(jì)數(shù)值”線圈SC( Set Counter Value)用來設(shè)置計(jì)數(shù)值,圖中I1.2的常開觸點(diǎn)由斷開變?yōu)榻油〞r(shí),預(yù)置值3被送入C3的計(jì)數(shù)器字。
圖中標(biāo)有CU的線圈為加計(jì)數(shù)器線圈(Up Counter Coil),標(biāo)有CD的線圈為減計(jì)數(shù)線圈( Down Counter Coil)。在I1.3的上升沿,如果當(dāng)前計(jì)數(shù)值小于999,計(jì)數(shù)值加1。復(fù)位輸入I1.4為1時(shí),計(jì)數(shù)器被復(fù)位,計(jì)數(shù)器位和計(jì)數(shù)值被清零。
圖3-80 加計(jì)數(shù)器線圈指令
圖3-78 加計(jì)數(shù)器
下面是圖3-78的電路對(duì)應(yīng)的語句表:
A I 0.0 //在I0.0的上升沿
CU C 0 //加計(jì)數(shù)器C0的當(dāng)前值加1
BLD 101 //空操作指令,與顯示有關(guān)
A I 0.1 //在I0.1的上升沿
L C#3 //計(jì)數(shù)器的預(yù)置值3被裝入累加器1的低字
S C 0 //將預(yù)置值裝入計(jì)數(shù)器C0
A I 0.2 //如果I0.2為1
R C 0 //復(fù)位C0
L C 0 //將C0的十六進(jìn)制計(jì)數(shù)當(dāng)前值裝入累加器1的低字
T MW 0 //將累加器1的內(nèi)容傳送到MW0
LC C 0 //將C0的BCD碼計(jì)數(shù)當(dāng)前值裝入累加器1的低字
T MW 2 //將累加器1的內(nèi)容傳送到MW2
A C 0 //如果C0的當(dāng)前值非0
= Q 4.0 //Q4.0為1狀態(tài)
S_CU與S_CD分別是加計(jì)數(shù)器( Up Counter)與減計(jì)數(shù)器(Down Counter)方框指令(見圖3-78和圖3-79)。S為計(jì)數(shù)器的設(shè)置輸入端,PV為預(yù)置值輸入端,CU和CD分別為加計(jì)數(shù)脈沖和減計(jì)數(shù)脈沖輸入端,R為復(fù)位輸入端;Q為計(jì)數(shù)器位輸出端,CV端輸出十六進(jìn)制格式的當(dāng)前計(jì)數(shù)值,CV_BCD端輸出當(dāng)前計(jì)數(shù)值的BCD碼。

圖3-78 加計(jì)數(shù)器
圖3-79 減計(jì)數(shù)器
計(jì)數(shù)器的CU、CD、S、R、Q為BOOL(位)變量,PV、CV和CV_BCD為WORD(字)變量。各變量均可以使用I、Q、M、L、D存儲(chǔ)區(qū),PV還可以使用計(jì)數(shù)器常數(shù)C#。
在“設(shè)置”輸入信號(hào)S的上升沿,將PV端的值送入計(jì)數(shù)器字。在加計(jì)數(shù)脈沖輸入信號(hào)I0.0的上升沿,如果當(dāng)前計(jì)數(shù)值小于999,計(jì)數(shù)值加1。在減計(jì)數(shù)輸入信號(hào)I0.3的上升沿,如果計(jì)數(shù)值大于0,計(jì)數(shù)值減1。
“復(fù)位”輸入信號(hào)R為1時(shí),計(jì)數(shù)器被復(fù)位,當(dāng)前計(jì)數(shù)值被清零,輸出Q變?yōu)?/span>0狀態(tài)。
當(dāng)前計(jì)數(shù)值大于0時(shí),計(jì)數(shù)器位(即輸出Q)為1狀態(tài);當(dāng)前計(jì)數(shù)值為0時(shí),輸出Q為0狀態(tài)。
表3-10 計(jì)數(shù)器指令
用“設(shè)置”輸入S設(shè)置計(jì)數(shù)器時(shí)(在S信號(hào)的上升沿),如果加計(jì)數(shù)輸入信號(hào)CU為1狀態(tài),即使CU沒有變化,下一個(gè)掃描周期也會(huì)加計(jì)數(shù)。用“設(shè)置”輸入S設(shè)置計(jì)數(shù)器時(shí),如果減計(jì)數(shù)輸入信號(hào)CD為1狀態(tài),即使CD沒有變化,下一個(gè)掃描周期也會(huì)減計(jì)數(shù)。
計(jì)數(shù)器一般用來在計(jì)了預(yù)置值的脈沖個(gè)數(shù)后,進(jìn)行某種操作。為了實(shí)現(xiàn)這一要求,簡(jiǎn)單的方法是首先將預(yù)置值送人減計(jì)數(shù)器,計(jì)數(shù)值減為0時(shí),其常閉觸點(diǎn)閉合,用它來完成要做的工作。如果使用加計(jì)數(shù)器,需要增加一條比較指令,來判斷計(jì)數(shù)值是否等于預(yù)置值。
西門子S7-1200PLC模塊廣東代理商