田有益,沈勇
(云南民族大學電氣信息工程學院,云南 昆明 650504)
旋轉(zhuǎn)編碼開關(guān)在日常生活中隨處可見,比如在汽車的車機系統(tǒng)、DVD 播放器、鼠標、音響、家用電器等方面都有著實際的應(yīng)用[1]。大多數(shù)旋轉(zhuǎn)編碼開關(guān)的應(yīng)用都是基于嵌入式開發(fā)使用的,現(xiàn)將其應(yīng)用在基于PLC 開發(fā)的控制系統(tǒng)中,傳統(tǒng)的PLC 項目中對參數(shù)值的調(diào)節(jié)大多使用普通電位器,使用普通電位器作為PLC 的輸入需要使用模擬量輸入接口,且調(diào)節(jié)范圍有限,這無疑增加了PLC 的硬件成本,特別是在需要多個調(diào)節(jié)旋鈕的系統(tǒng)中,而帶按鍵的旋轉(zhuǎn)編碼開關(guān)只需使用PLC 的3 個數(shù)字量輸入點,且按鍵的功能可靈活定義,調(diào)節(jié)范圍廣,在PLC 中有著廣泛的應(yīng)用前景[2-5]。
旋轉(zhuǎn)編碼開關(guān)是通過旋轉(zhuǎn)過程中產(chǎn)生的觸點接通與斷開來實現(xiàn)信號的檢測,根據(jù)觸點接通與斷開的先后順序來檢測自身的旋轉(zhuǎn)方向。帶按鍵的旋轉(zhuǎn)編碼開關(guān)由按鍵和編碼開關(guān)兩部分組成,其外部有4個引腳,如圖1 所示,C 為公共端,根據(jù)需求接地或接電源正極,S 為按鍵的輸出端,A 和B 為編碼開關(guān)的輸出端。當按下按鍵時,C 與S 所在的回路接通,S 端根據(jù)接線方式輸出高電平或低電平[6-8]。當轉(zhuǎn)動旋鈕時,A、B 兩端口輸出兩組具有一定相位差的近似方波脈沖,當順時針轉(zhuǎn)動時,A、B 端口的輸出波形時序如圖2(a)所示;當逆時針轉(zhuǎn)動時,A、B 端的輸出波形時序如圖2(b)所示。
圖1 帶按鍵的旋轉(zhuǎn)編碼開關(guān)
圖2 A、B端口輸出波形
根據(jù)時序圖分析得出:在一個周期內(nèi),當順時針轉(zhuǎn)動旋鈕時,有4 組特征信號,分別為B 為低電平時A 的上 升沿、A 為高電平時B 的上升沿、B 為高 電平時A 的下降沿、A 為高電平時B 的下降沿;當逆時針旋轉(zhuǎn)時,一個周期內(nèi)也有4 組特征信號,分別是A 為低電平時B 的上升沿、B 為高電平時A 的上升沿、A為高電平時B 的下降沿、B 為低電平時A 的下降沿。根據(jù)輸出特征信號可以判斷旋鈕的順時針或逆時針轉(zhuǎn)動,對應(yīng)使用時的增或減,旋轉(zhuǎn)編碼開關(guān)每轉(zhuǎn)動一小格為一個周期,根據(jù)一個周期選取信號的個數(shù)可選用一倍頻、二倍頻、三倍頻和四倍頻[9-13]。對于旋轉(zhuǎn)編碼開關(guān)的使用,最重要的就是判斷旋轉(zhuǎn)方向以及在一個周期內(nèi)提取的信號,而對于按鍵S,則可以根據(jù)需求靈活定義其功能。
實驗的目的是將帶按鍵的旋轉(zhuǎn)編碼開關(guān)接入PLC 中,通過轉(zhuǎn)動旋鈕實現(xiàn)對PLC 中一個寄存器數(shù)值的加減操作,進而實現(xiàn)對參數(shù)的調(diào)節(jié)功能。將按鍵S 定義為切換倍率功能。對于倍率和數(shù)值限制都可進行靈活的定義,實驗時定義為以下情況:按鍵未按下時,倍率為1,順時針轉(zhuǎn)動一個刻度為加1、逆時針轉(zhuǎn)動一個刻度為減1;按下按鍵轉(zhuǎn)動時倍率為10,順時針轉(zhuǎn)動一個刻度為加10、逆時針轉(zhuǎn)動一個刻度為減10;將寄存器數(shù)值最大值限制為100、最小值限制為0,當寄存器數(shù)值等于0 時不再執(zhí)行減操作,當數(shù)值等于100 時不再執(zhí)行加操作。
該研究使用西門子S7-1200 系列PLC,CPU 型號為1214C DC/DC/DC,該PLC 的數(shù)字量輸入端口最低掃描頻率為20 kHz,完全能夠滿足對旋轉(zhuǎn)編碼開關(guān)的信號輸入;使用4 引腳帶按鍵旋轉(zhuǎn)編碼開關(guān);使用明緯LSR-100-24 開關(guān)電源對PLC 及旋轉(zhuǎn)編碼開關(guān)供電;使用TIA Portal V15.1 對PLC 進行編程。硬件接線圖如圖3 所示。
圖3 硬件接線圖
將直流24V 電源正極接至PLC 的L+接線端,負極接至M及1M 接線端;旋轉(zhuǎn)編碼開關(guān)的公共端C 接至直流24V 正極;旋轉(zhuǎn)編碼開關(guān)的A、B 和S 分別接到PLC 數(shù)字量輸入,對應(yīng)PLC 地址中的I0.0、I0.1、I0.2。
在TIA Portal V15.1 編程軟件中使用SCL 語言對PLC 進行編程,選用一倍頻對旋轉(zhuǎn)編碼開關(guān)進行信號提取,即順時針、逆時針轉(zhuǎn)動,每個周期各選取一組特征信號對寄存器數(shù)值進行加減,當B 為低電平時A 的上升沿判定為順時針轉(zhuǎn)動,執(zhí)行加操作;當A為低電平時B 的上升沿判定為逆時針轉(zhuǎn)動,執(zhí)行減操作[14-16],加減判斷流程如圖4 所示。
圖4 加減操作判斷流程
按鍵S 作為加減倍率選擇,S=0 時,倍率為1;S=1時,倍率為10。將PLC 的輸入信號I 區(qū)映射到內(nèi)部地址M 區(qū)時,其內(nèi)部變量表如表1 所示。
表1 PLC內(nèi)部變量表
由于實驗測試程序不復雜,所以直接在組織塊(OB)中采用線性編程進行測試。利用“R_TRIG”指令將A、B 信號的上升沿信號提取至M 區(qū)地址以供使用;使用IF 語句對輸入信號進行邏輯判斷;使用數(shù)學指令對寄存器的輸出結(jié)果進行賦值。部分實驗程序如下:
將程序下載到PLC 中,通過在線監(jiān)視功能監(jiān)視寄存器數(shù)值,剛上電時寄存器數(shù)值“Result”=0(也可將Result 設(shè)置為掉電保持,上電時保持上次斷電前數(shù)據(jù)),當順時針轉(zhuǎn)動開關(guān)時,每轉(zhuǎn)動一個刻度寄存器數(shù)值加1,當數(shù)值等于100 時,順時針轉(zhuǎn)動寄存器數(shù)值不再變化;當逆時針轉(zhuǎn)動開關(guān)時,每轉(zhuǎn)動一個刻度寄存器數(shù)值減1,當數(shù)值等于0 時,逆時針轉(zhuǎn)動數(shù)值不再變化。按下按鍵轉(zhuǎn)動時,順時針旋轉(zhuǎn)數(shù)值加10,逆時針轉(zhuǎn)動數(shù)值減10。經(jīng)反復測試,實驗結(jié)果滿足預(yù)期要求,Result 數(shù)值監(jiān)視過程如圖5 所示。
圖5 Result數(shù)值監(jiān)視過程
在一臺基于提拉法的晶體生長爐中,對籽晶桿提拉速度的調(diào)節(jié)尤為重要,在晶體生長的某個環(huán)節(jié),需要操作人員觀察生長狀態(tài)對籽晶桿的提拉速度,并進行實時調(diào)節(jié),要求速度既可以以0.1 的分度進行調(diào)節(jié),又可以以1.0 的分度進行調(diào)節(jié),且要滿足操作便捷、不影響操作人員觀察晶體生長狀態(tài)的要求。若使用普通的電位器作為調(diào)節(jié)輸入,由于調(diào)節(jié)行程的限制只能以一個固定的調(diào)節(jié)分度對速度進行0~100%的調(diào)節(jié),還需進行模擬量與數(shù)字量的數(shù)值轉(zhuǎn)換,不能選擇粗調(diào)或者精調(diào),需要占用PLC 的模擬量信號輸入端口,在PLC 模塊中,模擬量的輸入模塊成本比數(shù)字量輸入模塊高很多。顯然使用普通電位器進行調(diào)節(jié)不能滿足需求,還會增加硬件成本[17-18]。
將帶按鍵的旋轉(zhuǎn)編碼開關(guān)應(yīng)用到該系統(tǒng)中,利用上述實驗中的方法對軟件進行編程,根據(jù)功能需求修改部分參數(shù),籽晶桿提拉的速度范圍在0~600 mm/h,粗調(diào)分度為1.0 mm/h,細調(diào)分度為0.1 mm/h,粗調(diào)與細調(diào)利用開關(guān)按鍵S 是否按下作為區(qū)分,調(diào)節(jié)的數(shù)值經(jīng)過轉(zhuǎn)換后直接給到對應(yīng)的運動控制指令中,該系統(tǒng)中除了籽晶桿的提拉速度調(diào)節(jié),還有籽晶旋轉(zhuǎn)速度調(diào)節(jié)、坩堝升降、坩堝旋轉(zhuǎn)速度調(diào)節(jié)、背景加熱調(diào)節(jié)、中頻感應(yīng)加熱等參數(shù)的調(diào)節(jié)都使用了該方法,各調(diào)節(jié)參數(shù)在HMI 中進行顯示。根據(jù)用戶使用的反饋,該方法作為調(diào)節(jié)輸入能夠滿足使用需求,調(diào)節(jié)方法方便快捷,圖6 為控制系統(tǒng)操作箱上的旋轉(zhuǎn)編碼開關(guān)。
圖6 系統(tǒng)操作箱上的旋轉(zhuǎn)編碼開關(guān)
文中只介紹了旋轉(zhuǎn)編碼開關(guān)在PLC 中對某個量的增減調(diào)節(jié)作用,除此之外,還可以用于HMI 界面的菜單切換選擇,該用途類似于在車機系統(tǒng)中的應(yīng)用。
該文對一種帶按鍵的旋轉(zhuǎn)編碼開關(guān)進行了介紹,給出了該開關(guān)在PLC 中的一種使用方法并進行了實驗,最后將該方法實際應(yīng)用到一臺晶體生長爐的控制系統(tǒng)中,帶按鍵編碼開關(guān)的使用為PLC 系統(tǒng)的信號輸入提供了一種新的方法,該方法結(jié)構(gòu)簡單、設(shè)計方便、使用靈活,減少了PLC 資源的占用。經(jīng)實踐驗證,帶按鍵的編碼開關(guān)在設(shè)備中工作穩(wěn)定可靠、操作便捷,完全滿足使用需求,在PLC 項目中有一定的推廣價值。