S7–200 PLC集成脈沖輸出功能的應(yīng)用
S7–200 PLC集成脈沖輸出功能的應(yīng)用
90年代中期,,西門子公司推出了S7系列PLC,,它不僅承襲了在我國得到廣泛使用的S5系列PLC的優(yōu)點(diǎn),還更加注重功能的改進(jìn)和集成,,以方便用戶的使用,。對于現(xiàn)在倍受重視的脈沖輸出,、模擬量控制、閉環(huán)控制,、通訊等,,均提供了與單片機(jī)相類似但更加靈活方便的相應(yīng)指令和使用途徑。
集成脈沖輸出功能的應(yīng)用較廣,,如交流調(diào)速系統(tǒng)中的驅(qū)動(dòng)模板所需的PWM信號源,,數(shù)控系統(tǒng)中用于拖動(dòng)步進(jìn)電機(jī)的驅(qū)動(dòng)模板所需的脈沖串PTO信號源等。在S7-200系列PLC中,,就有相應(yīng)的指令,,從而使這種實(shí)時(shí)控制功能的實(shí)現(xiàn)演變?yōu)樘顚懸粡埍砀瘢賵?zhí)行一條指令,。比起用單板機(jī)或單片機(jī)以匯編語言來實(shí)現(xiàn),,則顯現(xiàn)出其高效且簡單的優(yōu)勢。
二,、集成脈沖輸出的原理與實(shí)現(xiàn)
采用AC/DC/DC型CPU214,,要求在Q0.0上輸出周期和脈沖數(shù)固定的脈沖串(PTO)信號,以控制步進(jìn)電機(jī)驅(qū)動(dòng)器,。驅(qū)動(dòng)器將控制脈沖按照某種方式轉(zhuǎn)換成步進(jìn)電機(jī)線圈的電流,,產(chǎn)生旋轉(zhuǎn)磁場,以使轉(zhuǎn)子只能按固定的步數(shù)來改變其位置,。
要啟動(dòng)集成脈沖輸出功能PT(Q0.0),,首先應(yīng)在相應(yīng)的系統(tǒng)內(nèi)部控制字節(jié)SMB67中按位填入0或1。為便于編程,,現(xiàn)將各種可能的控制字節(jié)值以表格的形式給出,,如表1示。在實(shí)際編程時(shí)只需按所需的功能來查找相應(yīng)的16進(jìn)制數(shù)填表即可,。然后將周期值填入SMW68,,再將脈寬送入SMW70中。最后執(zhí)行PLS指令,。
1,、程序?qū)⒅芷谥翟O(shè)為10ms,主要是為了便于理解和觀測,。另外,,只需3條導(dǎo)線,2只按鈕,,一個(gè)開關(guān)外加一個(gè)功率驅(qū)動(dòng)器和一臺步進(jìn)電機(jī)即可完成本試驗(yàn)(若無功率驅(qū)動(dòng)器和步進(jìn)電機(jī),,也可用示波器觀察Q0.0的脈沖輸出),但應(yīng)指出,,本例程序?qū)⒅芷谥蹈某珊苄〉闹抵?,不需作任何其他的修改即可用于高速PTO信號源,。
2、CPU214上有兩個(gè)集成的模擬量手動(dòng)調(diào)節(jié)旋鈕(Ch0,、1),,這一旋鈕的作用是,可不增加任何額外硬件開銷而能夠在運(yùn)行中進(jìn)行PID參數(shù)的設(shè)定或定時(shí)時(shí)間值的修改以及實(shí)現(xiàn)脈寬的在線修改或給定
三,、語句表程序及分析
1,、初始化(Network 1)
對PTO控制字節(jié)的初始化,即規(guī)定了脈沖周期和脈沖數(shù),;分配中斷事件并開中斷,。
2、旋轉(zhuǎn)方向控制(Network 2-3)
用接在輸入端I0.2的開關(guān)來選擇轉(zhuǎn)動(dòng)方向,。如果I0.2=1,,將輸出Q0.2置成1,電機(jī)逆時(shí)針轉(zhuǎn)動(dòng),。如果I0.2=0,,將輸出Q0.2置成0,電機(jī)順時(shí)針轉(zhuǎn)動(dòng),。為保護(hù)電機(jī)避免漏步,,電機(jī)轉(zhuǎn)動(dòng)方向的改變只能在電機(jī)處于停止?fàn)顟B(tài)(M0.1=0)時(shí)方可進(jìn)行。
3,、聯(lián)鎖控制(Network 4-5)
為保護(hù)人員和設(shè)備的安全,,在按“STOP”按鈕( I0.1)之后,必須規(guī)定驅(qū)動(dòng)器聯(lián)鎖,,將聯(lián)鎖標(biāo)志M0.2置位(M0.2=1),,立即關(guān)斷驅(qū)動(dòng)器。只有在M0.2復(fù)位(M0.2=0)后,,才能重新起動(dòng)電機(jī),。當(dāng)“STOP”按鈕松開后,為防止電機(jī)的意外起動(dòng),,只有在按鈕(I0.0)和“STOP”按鈕都松開后,,才能將M0.2復(fù)位(M0.2 = 0),若要再次起動(dòng)電機(jī),,則必須再發(fā)一個(gè)起動(dòng)信號,。
4、起動(dòng)電機(jī)(Network 6)
若同時(shí)具備(1)按起動(dòng)按鈕,,即輸入端I0.0產(chǎn)生脈沖上升沿;(2)無聯(lián)鎖,,即聯(lián)鎖標(biāo)志M0.2=0,;(3)電機(jī)處于停止?fàn)顟B(tài),,即操作標(biāo)志M0.1=0 三條件,則將M0.1置位,,PLC執(zhí)行PLS指令,,輸出端Q0.0輸出脈沖。
5,、停止電機(jī)(Network 7)
若同時(shí)具備(1)按“STOP”按鈕,,在輸入端I0.1產(chǎn)生脈沖上升沿;(2)電機(jī)處于運(yùn)轉(zhuǎn)狀態(tài),,即操作標(biāo)志M0.1=1兩條件 ,,,則將標(biāo)志M0.1復(fù)位,,并中斷輸出端Q0.0的脈沖輸出,。
6、中斷處理(Network 1)
在初始化程序(Network1的最后)中,,已將中斷程序0賦予中斷事件19,,且全局開中斷(ENI)。則隨著PLS指令的執(zhí)行,,必使Q0.0接通或關(guān)斷,,從而觸發(fā)中斷程序0的執(zhí)行。
7,、中斷程序0(Network 10)
編制中斷程序的原則是越短越好,。在此,只將電機(jī)運(yùn)轉(zhuǎn)標(biāo)志M0.1復(fù)位,。
四,、調(diào)試及討論
1、硬件接線
將起動(dòng)(“START”)按鈕接于控制器(PLC)的輸入端I0.0上,,停止(“ STOP")按鈕接于控制器的輸入端I0.1上轉(zhuǎn)換開關(guān)接于控制器的輸入端上I0.2,,輸出Q0.0,Q0.2分別接功率驅(qū)動(dòng)器的輸入,,以驅(qū)動(dòng)步進(jìn)電機(jī)的運(yùn)轉(zhuǎn),;若無功率驅(qū)動(dòng)器,可將Q0.0接示波器,,以觀察脈沖串(PTO) 輸出,。
2、實(shí)驗(yàn)現(xiàn)象
程序輸入完畢,,將工作模式選中“RUN”,,按起動(dòng)(“START”)按鈕后,可觀察到控制器輸出固定數(shù)目的方波脈沖,,使步進(jìn)電機(jī)按對應(yīng)的步數(shù)轉(zhuǎn)動(dòng),;按停止(“STOP”)按鈕后,,可觀察到控制器無脈沖輸出,步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng),。扳動(dòng)轉(zhuǎn)換開關(guān),,可觀察到步進(jìn)電機(jī)轉(zhuǎn)向的變化。