帶原點(diǎn)位置的小車控制程序
王曾
發(fā)布于2023-02-24 16:45
128
6
標(biāo)簽:PLC實(shí)操案例
一、任務(wù)目標(biāo)
該任務(wù)是位邏輯指令應(yīng)用案例。西門子S7-1200 PLC的位邏輯指令處理對象為二進(jìn)制位信號,主要包括觸點(diǎn)和線圈指令、位操作指令及位檢測指令等。本任務(wù)要求讀者掌握以下幾個(gè)內(nèi)容。
1.置位指令的使用
2.復(fù)位指令的使用
3.復(fù)位優(yōu)先指令的使用
二、任務(wù)描述
如圖2-3-1所示為帶原點(diǎn)位置的小車運(yùn)行控制示意圖,該小車由三相異步電動機(jī)拖動,通過三相異步電動機(jī)的正反轉(zhuǎn)控制來實(shí)現(xiàn)對小車的左行與右行。小車運(yùn)行的控制要如下所示:
(1)系統(tǒng)上電后,需要對小車進(jìn)行回原點(diǎn)操作,按下回原點(diǎn)啟動按鈕后小車開始回原點(diǎn),回原點(diǎn)過程先讓小車到達(dá)左限位,碰到左限位后返回,當(dāng)碰到原點(diǎn)后停止,則回原點(diǎn)結(jié)束。
(2)在原點(diǎn)確定后,按下啟動運(yùn)行按鈕,小車向右運(yùn)行,碰到右限位后,小車切換為左行,碰到左限位后,小車切換回右行,小車在左右限位之間往返運(yùn)行。若按下停止按鈕,小車停止運(yùn)行,當(dāng)再次按下啟動按鈕時(shí),小車會以停止前的方向繼續(xù)運(yùn)行。
圖2-3-1 小車運(yùn)行示意圖
三、相關(guān)知識
本案例主要使用的是置位、復(fù)位、復(fù)位優(yōu)先指令,此處為讀者介紹指令的相關(guān)知識。
1.置位與復(fù)位指令
S:置位指令將指定的地址位置位(變?yōu)?/span>1,并保持)
R:復(fù)位指令將指定的地址位復(fù)位(變?yōu)?/span>0,并保持)
如圖2-3-2所示:置位/復(fù)位指令示例,當(dāng)I0.0為1,Q0.0為1,之后,即使I0.0為0,Q0.0保持為1,直到I0.1為1時(shí),Q0.0變?yōu)?/span>0。
圖2-3-2 置位/復(fù)位指令示例
2.復(fù)位優(yōu)先指令
SR:復(fù)位優(yōu)先指令,如圖2-3-3。如果S輸入端的信號狀態(tài)為“1”,R1輸入端的信號為“0”則置位。如果S輸入端的信號為“0”,R1輸入端的信號狀態(tài)為“1”,則復(fù)位觸發(fā)器。如果兩個(gè)輸入端的RLO狀態(tài)均為“1”,則復(fù)位觸發(fā)器。如果兩個(gè)RLO狀態(tài)均為“0”,保持觸發(fā)器以前的狀態(tài)。用一個(gè)表格(表2-3-4)表示復(fù)位優(yōu)先指令的對應(yīng)關(guān)系。
圖2-3-3 置位/復(fù)位示例
表2-3-4 SR復(fù)位優(yōu)先指令對應(yīng)關(guān)系表
SR復(fù)位優(yōu)先指令
|
輸入狀態(tài)
|
輸出狀態(tài)
|
說明
|
S(I0.0)
|
R1(I0.1)
|
Q (Q0.0)
|
當(dāng)各個(gè)狀態(tài)斷開后,輸出狀態(tài)保持
|
|
1
|
0
|
1
|
|
0
|
1
|
0
|
|
1
|
1
|
0
|
|
四、任務(wù)實(shí)施
本任務(wù)的實(shí)施步驟主要分為PLC接線、IO地址分配以及程序設(shè)計(jì)思路:
1.PLC接線如圖2-3-5
圖2-3-5 PLC接線圖
2.IO地址分配
輸入地址
|
說明
|
輸出地址
|
說明
|
I0.1
|
啟動信號
|
Q0.0
|
小車前進(jìn)
|
I0.2
|
停止信號
|
Q0.1
|
小車后退
|
I0.3
|
回原點(diǎn)信號
|
Q0.2
|
回原點(diǎn)指示
|
I0.4
|
左限位
|
|
|
I0.5
|
右限位
|
|
|
I0.6
|
原點(diǎn)信號
|
|
|
3. 程序設(shè)計(jì)思路:
本任務(wù)中的動作可以看作為具有明顯的順序動作的程序,因此可通過置位指令和復(fù)位指令來實(shí)現(xiàn)對下一個(gè)動作步的標(biāo)志的置位和對上個(gè)動作標(biāo)志的復(fù)位方法來實(shí)現(xiàn)順序動作。另外,任務(wù)中一個(gè)難點(diǎn)在于如何記錄停止前的狀態(tài),可以通過使用下降沿的方式來置位運(yùn)行的標(biāo)志位,當(dāng)下次啟動時(shí),只需要判斷標(biāo)志位的狀態(tài)就可知道停止前的狀態(tài)是如何的?
4.程序設(shè)計(jì)






五、經(jīng)驗(yàn)與總結(jié)
1.在這個(gè)任務(wù)中,主要是流程動作的控制,到達(dá)了一個(gè)步驟之后切換為下一個(gè)步驟,讀者可以使用置位和復(fù)位的方式切換步序。
2.在編寫程序時(shí),若沒有思路,也可以使用找條件的方法理清楚邏輯,例如回原點(diǎn)過程:
小車回原點(diǎn)的條件為:按下了回原點(diǎn)啟動信號。
下車回原點(diǎn)左行條件為:小車正在找原點(diǎn)。
小車回原點(diǎn)左行停止條件為:小車找原點(diǎn)過程中到達(dá)左限位位置。
小車回原點(diǎn)右行條件為:小車正在找原點(diǎn)并且到達(dá)了左限位位置。
小車回原點(diǎn)停止條件為:小車到達(dá)了原點(diǎn)。
3.停止前的方向記錄使用一個(gè)標(biāo)志位結(jié)合復(fù)位優(yōu)先指令標(biāo)識小車停止前的方向。