吳明升
(杭州浙達精益機電技術股份有限公司,浙江杭州 311100)
在自動化控制系統中,經常會遇到計數功能,而普通的數字量模塊無法響應快速變化的信號,即無法捕捉到頻率較高的信號[1]。本文主要介紹了基于FM350-1 高速計數模塊的鋼管自動測長系統,FM350-1 高速計數模塊用于在鋼管測長過程中讀取管端距離最后經過那一對光電管時編碼器所統計的脈沖數,根據每個脈沖所對應的鋼管長度與FM350-1 高速計數模塊讀取的脈沖數之積而計算出編碼器值所對應鋼管長度值ΔL。該測長系統應用PLC 控制系統及光電傳感器技術[2],大大降低了設備的故障率,其測長精度達到了±2 mm,超過了世界同類產品的先進水平,在很大程度上降低了成本和工人的勞動強度[3-4]。
鋼管自動測長系統主要由多組發射光電管盒、多組接收光電管盒、液壓缸、對齊檔板、PLC、計算機等部分組成[5],其結構如圖1 所示。

圖1 鋼管自動測長系統的結構
鋼管自動測長系統的工作原理如圖2 所示。當液壓油缸推動鋼管在測長工位的被動輥道組上前進時[6],油缸通過齒輪齒條帶動編碼器旋轉,鋼管前進時鋼管前端每經過一對光電管,編碼器的計數值清零一次,然后一直累加編碼器的計數值[7]。當液壓油缸推到前極限位時[6,8-9],保存這一時刻的光電管狀態和編碼器的計數值。編碼器統計管端距離剛經過的光電管的脈沖數,根據每一個脈沖相應的長度,換算出ΔL 長度。PLC 讀取所有數據用于計算鋼管的長度。
整支鋼管的長度L 可由公式L=L0+ΔL 計算出來[10-11]。其中:L0是鋼管最后經過的光電管距離測長基準點(油缸行程的前極限位)的距離,L0的長度是預先標定好的;ΔL 是管端距離最后經過那一對光電管的距離,ΔL=脈沖數×每個單位脈沖數對應長度,脈沖計數由FM350-1 高速計數模塊來完成。

圖2 鋼管自動測長系統的工作原理
鋼管自動測長系統使用24 V 增量型編碼器,其FM350-1 高速計數模塊的接線如圖3 所示。
M350-1 高速計數模塊支持5 V 和24 V 的增量型編碼器,需要將其側部的連接件設置到正確的位置。A 對應5 V 編碼器,D 對應24 V 編碼器。若沒有正確設置,PLC 上電后,FM350-1 高速計數模塊會出現故障,紅燈亮[12-13]。

圖3 FM350-1 高速計數模塊的接線示意
在FM350-1 高速計數模塊和編碼器正確接線后,在PLC 上電情況下,還需要先對FM350-1 高速計數模塊的硬件組態進行設置,才能進行編程測試,打開STEP7 程序,SIMATIC 300→Hardware→FM350-1 COUNTER,出現如圖4 所示的設置選項,在此可以設置編碼器類型、FM350-1 模塊的計數形式等。

圖4 FM350-1 高速計數模塊的設置選項
Encoders 設置:雙擊Encoders,可按照如圖5所示設置編碼器類型、Signal Evaluation、Count Direction、Max. Count Frequency、Sensor inputs、Monitoring 的參數,在鋼管測長系統中采用24 V Incremental 形式,Sensor inputs 需要根據實際編碼器的類型選擇是Source Output 或Sink Output。

圖5 編碼器設置
Operating Modes 設置:雙擊Operating Modes,可按照如圖6 所示設置計數方向、門控制、操作模式。門控制Gate Control 采用Software Gate,在編程中需要控制此Software Gate 來進行計數。計數方向Counting Range Limits 有兩種設置:“0 to +32 Bits”表示無論編碼器正轉還是反轉,計數值是一直正向累加的;“-31 to +31 Bits”表示編碼器正轉計數值為正向累加,編碼器反轉計數值反向減少。在鋼管自動測長系統中,采用何種計數方式均可。其他設置采用默認設置,無需更改。
農田水利灌溉節水技術在應用過程中,要有完善規范的管理制度。水利工程應用現場管理十分混亂,大部分農牧民群眾基于自身經濟利益出發,不重視應用先進的節水灌溉技術,使得水資源浪費嚴重。農田水利工程屬于公共設施,在多數情況下,很多小型農田水利工程并沒有明確職責范圍和管理單位,在對這些小型農田水利設施進行管理過程中,缺乏明確規定,即便是制定了一些規定,在具體應用過程中也很難得到落實。

圖6 操作模式設置
需要注意的是:硬件組態必須設置正確,然后下載到PLC 中;若設置錯誤,FM350-1 高速計數模塊的紅燈會在下載組態后亮;若沒有下載組態,
紅燈就亮。
2.3.1 主要功能塊FC CNT_CTRL Function
FC CNT_CTRL Function 調用前需要在程序中先編寫以下參數設置:
Module address:FM350-1 高速計數模塊在硬件組態中的地址;
Channel address:FM350-1 高速計數模塊使用的通道地址;
User data length:16。
此功能塊FC 中需要注意如下參數[14]:
DB_NO:選用當前程序FM 350-1 高速計數模塊的數據塊;
SW_GATE:軟件門,在計數時需要將此門打開,此信號關閉,將無法計數;
GATE_STP:關軟件門,當不要計數,保持最后編碼器數值時,需要將此信號置1,以防止液壓油缸后退時,FM350-1 高速計數模塊仍然計數,導致測長數據錯誤;
OT_ERR_A:若FM350-1 高速計數模塊出現錯誤,將此信號置1,錯誤便可排除;
OT_ERR:若FM350-1 高速計數模塊出現錯誤,此信號置1;
L_DIRECT:此信號為脈沖信號,每經過一對光電管時,需要將此信號給一個上升沿,以便清零,鋼管經過最后一對光電管時,給一個脈沖信號,記錄最后一段編碼器的數值。
在鋼管自動測長系統中,FM350-1 高速計數模塊的編程如圖7 所示。
2.3.2 編碼器清零問題
鋼管的前端每經過一對光電管時編碼器清零一次。當液壓油缸推到前極限位與前端清零不同時間時,計數模塊可以正確地將0 賦給編碼器計數值;但當清零與停止計數同時間時,由于為保存光電管狀態,碰到前極限位時立刻停止計數,此時清零信號可能只有一個上升沿或有下降沿但還沒將0 賦給計數值,此時編碼器計數值中保留的是上一對光電管離前端的距離,導致計算時多加了一對光電管的距離,即鋼管測長結果偏長450 mm(兩對光電管之間的距離為450 mm)。這是因為編碼器清零需調用FM350-1 高速計數模塊的控制程序,當退出計數程序時,編碼器還沒有完成清零的整個過程,導致光電管狀態與編碼器數值的不同步。為將正確的編碼器值送給上位機計算,先將編碼器計數值存在中間繼電器中,沒有清零信號時,實時讀取編碼器值;清零信號為1 時,中間繼電器清零,這樣即使編碼器中的數值還沒來得及清零,但送給上位機的數值已經為零,保證了計算的正確。
當油缸運行到前極限位時,需要記下此時編碼器的計數和光電管的狀態,同時關閉軟件門,不再計數,油缸后退。這里可能會出現鋼管由于慣性,繼續前進,恰好又碰到一對光電管,此時,若光電管狀態是一直刷新的,就會出現多計算了一對光電管的距離,造成測長不準;所以建議光電管狀態在液壓油缸前極限位有上升沿時記下此時的光電管狀態,此后不再刷新光電管的狀態。

圖7 鋼管自動測長系統FM350-1 高速計數模塊編程
介紹了以FM350-1 高速計數模塊為核心的鋼管自動測長系統,闡述了鋼管自動測長系統的工作原理和FM350-1 高速計數模塊的現場應用。該鋼管自動測長系統在各鋼管生產線上使用中取得了很好的效果,廣泛應用于國內外各大鋼管制造公司,如盧森堡Arcelor Mittal、臺灣中鴻鋼鐵股份有限公司、德國SMS Meer、天津鋼管集團股份有限公司、成都攀成鋼冶金工程技術有限公司、衡陽華菱鋼管有限公司、鞍鋼股份有限公司、煙臺魯寶鋼管有限責任公司等生產現場,其測長精度和性能較好,設備工作穩定故障率低,解決了以前依靠國外進口的困境,在很大程度上降低了成本。
[1] 王永華. 現代電氣控制及PLC 應用技術[M].北京:航空航天出版社,2008.
[2] 王化祥. 傳感器原理及應用[M]. 天津:天津大學出版社,1992.
[3] 汪秋陵. 油管自動測長、稱重、噴標系統的設計[J]. 鋼管,2005,34(4):24-28.
[4] 方文,張軍鋒,聞康,等. 焊接鋼管稱重測長系統的研發[J]. 鋼管,2007,36(3):44-46.
[5] 蔣方炎,徐海明. PLC 在工業集散控制系統中的應用[J]. 機電工程,2000,17(3):88-91.
[6] 曹玉平. 液壓傳動與控制[M]. 天津:天津大學出版社,2002.
[7] 文鋒.自動控制理論[M].北京:中國電力出版社,1998.
[8] 袁子榮. 液壓傳動與控制[M]. 重慶:重慶大學出版社,2002.
[9] 張群生. 液壓與氣壓傳動[M]. 北京:機械工業出版社,2001.
[10] 范渝滎,范正田. 鋼管的稱重與測長[J]. 工業計量,1997,7(4):35-36.
[11] 孫楓. 鞍鋼無縫鋼管廠測長系統設計[J]. 鞍鋼技術,2000(5):30-32.
[12] 趙景波,孫浩洋,管殿柱. 西門子S7-300/400 PLC 快速入門手冊[M]. 北京:化學工業出版社,2012.
[13] 陳忠平. S7-300/400 系列PLC 自學手冊[M]. 北京:人民郵電出版社,2010.
[14] 謝克明,夏路易. 可編程控制器原理與編碼設計[M].北京:電子工業出版社,1987.