1 引言
在組合機床、專用機床、自動生產線、印染機械、紡織機械、包裝機械、輕工機械等機械設備中,有一些設備它們不僅需要邏輯控制而且需要精確的位移控制。為此,人們采用一臺經濟型數控系統來控制位移量,再加上一臺可編程邏輯控制器來進行邏輯控制的1+1的方案。這顯然是不經濟和不方便的。目前,經濟型數控系統中最流行的的CPU是MCS-51系列單片機。該單片機內部有一個布爾處理器,具有強大的邏輯處理功能。我們可以充分利用它的這個能力,通過軟件使經濟型數控系統同時具有數控和可編程邏輯控制器的功能,以實現知識經濟的增長,滿足用戶的需求。用一個CPU既完成數控又完成邏輯控制,不僅經濟、方便,而且比1+方案的可靠性也增加了。
2 工作原理
本系統是在原經濟型機床數控系統的基礎上,擴展了一個可編程邏輯控制模塊,融PLC(可編程控制器)和MNC(微機數控)為一體,既可以實現條件控制(邏輯控制)、順序控制、定時/計數控制,又可以實現點位的精確控制和兩個座標的運動軌跡控制。
2.1 系統硬件組成
由于PLC邏輯控制部分是用軟件實現的,故其支持硬件非常簡單,只要能完成開關量的輸入輸出就可以了。系統以8032單片機作為控制核心,包括PLC控制及座標運動控制兩大部分。
圖1中的數控部分具有兩坐標聯動數控系統的全部功能,包括直線、斜線和圓弧插補,各種螺紋加工,自動對刀功能等,并采用國際標準(IS)指令編程。PLC部分具有開關量輸入輸出各32點,內部輔助繼電器168點(其中128點可用作特殊繼電器),定時器/計數器16點。PLC 指令20 條,采用梯形圖編程。另外, PLC輸入輸出各點狀態均有指示燈顯示,便于用戶不帶負載調試程序。用戶程序容量為32KB。
2.2 PLC程序執行過程
PLC 程序執行過程分為輸入采樣(或處理)、程序執行和輸出刷新(或處理)三個階段。在輸入采樣階段,系統以掃描方式按順序將所有輸入端的輸入狀態(開或關,即“1”或“0”)讀入到輸入映像寄存器中寄存起來,原寄存器中的內容被刷新。在程序執行階段,系統對程序按順序進行掃描。每掃描到一條指令時,所需要的輸入狀態或其它元素的狀態分別從輸入映像寄存器和元素映像寄存器中讀出。執行結果則寫入到元素映像寄存器中。對于每個元素來說,元素映像寄存器中的內容,會隨程序執行的進程而變化。程序執行完后是輸出刷新階段,它是系統的實際輸出階段。此時,系統將元素映像寄存器中所有輸出繼電器的狀態送到輸出鎖存電路,再去驅動用戶輸出設備(負載)。
2.3 PLC模塊對輸入/輸出的處理規則
(1)輸入映像寄存器的數據,取決于輸入端在上一個工作周期的輸入采樣階段所刷新的狀態。
(2)輸出映像寄存器(包括內部元素映像寄存器)中的狀態,由程序中輸出指令的執行結果決定。
(3)輸出鎖存電路中的數據,由上一個工作周期的輸出刷新階段送入到輸出鎖存電路中的數據來確定。
(4)輸出端子上的輸出狀態,由輸出鎖存電路中的數據來確定。
(5)程序執行過程中所需的輸入/輸出狀態(數據),由輸入、輸出映像寄存器中讀出。
2.4 與PLC有關的數控指令
2.4.1 PLC開始指令M23
PLC程序塊是與數控指令混合在一起編寫的。為了區別PLC 程序塊與數控指令,本系統規定每一個具有一組邏輯運算功能的獨立的PLC程序塊,必須以M23 指令開始,以END指令結束。
2.4.2 發信指令M21
該指令用于向某指定編號的I/O 口發出電平信號
格式:M21L
L值為I/O口的編號,取值范圍在1~255 內。例如:M21 L001 表示系統向001號的I/O口發出電平信號,該信號延續0.5s 。
如果用戶有一個獨立的可編程邏輯控制器,也可通過M21 指令實現數控主機與PLC 主機的輸出聯接。
2.4.3 收信指令M22
該指令用于取某指令編號的I/O 口的信號格式:M22 L
L值為I/O 口的編號,取值范圍在1~255 內。
例如:M22 L035表示系統取35號I/O口信號。如果用戶有一個獨立的可編程邏輯控制器,通過M22指令可以實現數控主機與PLC主機的輸入聯接。
3 PLC軟件
為了在數控系統中實現開關量的可編程邏輯控制,PLC功能軟件由如下幾個部分構成。
3.1 PLC指令模塊
本系統共有20條PLC指令,每一條指令是一個獨立模塊,供系統執行時調用。其中有邏輯運算指令8條、輸出指令2條、置位復位指令2 條、微分指令2 條、計數器指令1條、定時器指令1條、移位指令1條、程序跳轉指令2 條和程序結束指令1條。
3.2 PLC編輯程序
PLC 編輯程序是數控系統編輯程序的一部分。由于數控指令與PLC 指令格式不同,因此在編輯中要對用戶輸入的指令加以區分,以便分別處理。用戶編程時可按梯形圖采用繼電器邏輯語言編程。
3.3 PLC顯示程序
由于數控指令與PLC 指令格式不同,因此在顯示時也要對這兩種指令加以區分,以便分別處理。
3.4 PLC開始程序
M23 指令是系統的PLC開始程序。該程序首先對PLC邏輯程序塊進行語法檢查,從M23指令的下一條指令開始檢查到END指令結束。如有錯,則程序停止執行并給出出錯顯示。如無錯,則調PLC主程序。
3.5 PLC主程序
PLC 主程序塊是數控程序中的一部分,它執行完畢后面可能還有指令要執行。為此,本系統的END指令必須后跟一個繼電器編號。繼電器可以是內部繼電器,也可以是外部繼電器。該繼電器的狀態應當是整個PLC邏輯塊(從M23指令開始,到END指令結束)的結果狀態。當該狀態為“1”時,表示PLC程序塊執行完畢。系統將根據END指令后的繼電器狀態來決定是繼續循環,還是結束PLC程序返回。
4 結論
用軟件實現可編程邏輯控制,并通過實施一些新的軟件處理方法把該軟件融入單片機數控系統中,經濟有效地解決了數控系統中輸入輸出開關量的控制。由于采用單機控制,使得控制系統成本大大降低。由于聯接環節減少,使得控制系統的可靠性得到提高。該方法已用于國產經濟型數控系統,實踐證明能滿足用戶的需求。
(審核編輯: 智匯張瑜)
分享