登錄  |  注冊
河北華利機械配件有限公司

數控系統中手輪信號處理方法

2015/10/9 13:36:14

        前言
        在數控系統中, 刀具微動、工件對刀、工作臺的隨動、機床原點的修正等這些功能通常是通過手輪操作來實現的, 這一功能給機床操作人員帶來了很多方便, 使得手輪在數控機床中應用十分廣泛。但手輪在微幅左右搖擺時, 容易產生抖動, 造成輸出脈沖不準, 導致機床誤動作, 輕則造成加工工件報廢, 重則危及到操作者的人身安全, 所以在機床加工過程中,精度及可靠性顯得尤其重要。筆者在實際數控系統應用中, 總結、試驗了一種結構嚴謹的手輪信號處理的方法。
        1 手輪工作原理
        手輪又稱手搖脈沖發生器, 它實質上是一個增量式編碼器, 是一種光電式的位置控制元件。在手輪轉動情況下, 光柵盤與旋轉軸同速轉動, 經過由發光元件組成的檢測裝置, 將其轉過的角度大小轉變為含有位置和方向信息的脈沖序列, 在程序控制下能驅動數控機床各軸運動。手輪每旋轉一個刻度得到具有一組相位相差90°的A、B信號, 如圖2所示。正轉時, A相超前B相90°, 反轉時, B相超前A相90°。
        2 手輪信號處理
        手輪輸出信號處理電路有分立元件、專用芯片、單片機、可編程邏輯器件等很多種實現方法。但對于多軸數控系統而言, 若采用分立元件來完成包括手輪信號在內的一系列編碼器信號, 則需要較多的元器件, 導致結構復雜, 功耗增加, 穩定性下降等缺點。目前常采用復雜的可編程邏輯器件CPLD來實現手輪信號鑒相與濾波的功能。它由鑒相、去抖電路、延時電路、16位可逆計數器、輸出緩沖器以及數據總線構成。以下針對各部分電路的功能加以敘述。
        2.1 鑒相電路原理鑒相電路的作用是獲得手輪的轉動方向, 產生計數器的計數方向信號。由手輪工作原理可知, 在每個信號周期內, A信號脈沖和B信號脈沖相差90°, 輸出信號如圖2所示。手輪方向信息定義為:若A信號脈沖超前B信號脈沖90°, 手輪正方向移動;若A信號脈沖滯后B信號脈沖90°,手輪反方向移動。
        2.2 手輪信號
        鑒相、去抖電路設計為了剔除由于各種干擾因素而導致手輪輸出脈沖帶有的雜波, 保證輸出信號的可靠性和有效性, 在計數器計數之前必須進行去抖處理。一般采用兩種方法來改善濾除雜波的能力:一是使用施密特觸發器當輸入極, 借由施密特觸發器對波形整形的能力來濾除雜波;二是利用多級延時的方法來完成濾波功能。同樣, 鑒相也可以采用常用的方法:D觸發器和門電路來實現。這些方法實現起來比較簡單, 但抗干擾能力差?;谝陨系姆治? 為了更好地實現手輪信號的鑒相與濾波的工作, 本文采用了狀態機加標志判別的方法。
        經過在實際工作中的反復試驗, 證明使用這種方式來實現手輪的鑒相、去抖工作, 比以往的方法效果要好。從圖2可知:旋轉一個刻度, 理想的情況是A、B信號組合共有4種狀態, 當正轉時, BA的狀態為:00※01※11※10;當反轉時, BA狀態為:00※10※11※01。為了敘述方便, 令S1 =00、S2 =01、S4 =11、S3 =10, FP和FN是作為正轉和反轉對應狀態的標志, 當完成從前一狀態到下一狀態轉變后, 相應位置1。若正轉或反轉連續完成4個狀態, 則有1 個脈沖輸出, 即Q=1, 并規定正方向旋轉時, 方向信號D=1, 反則D=0。
        下面將分項說明手輪信號狀態轉換圖, 并以采用CPLD實現為例, 說明設計過程。
        當前狀態為S1時:
        (1)若前一狀態為S1, 置正轉標志FP=0001,FN=0001, 則Q=0;
        (2)若前一狀態為S3, 且FP=1111, 則Q=1,D=1, 手輪正轉一個刻度;
        (3)若前一狀態為S2, 且FN=1111, 則Q=1,D=0, 手輪反轉一個刻度;
        (4)若前一狀態為S4, 此狀態為無效狀態, 重置FP=0001, FN=0001, Q=0, 手輪有干擾信號過來, 不記數。
        當前狀態為S2時:
        (1)若前一狀態為S4, 且FN=0111, 則置FN=1111, FP清零, 手輪信號完成從S4狀態到S2狀態的轉換, 屬于一個周期的中間過程, 手輪刻度未發生變化, Q=0;
        (2)若前一狀態為S1, 且FP=0001, 則置FP=0011, FN清零, 手輪信號完成從S1狀態到S2狀態的轉換, 結果同上;
        (3)若前一狀態為S3, 此狀態為無效狀態, 重置FP=0001, FN=0001, Q=0, 手輪有干擾信號過來, 不記數。
        當前狀態為S4時:
        (1)若前一狀態為S3, 且FN=0011, 則置FN=0111, FP清零, 手輪信號完成從S3狀態到S4 狀態的轉換, 屬于一個周期的中間過程, 手輪刻度未發生變化, Q=0;
        (2)若前一狀態為S2, 且FP=0011, 則置FP=0111, FN清零, 手輪信號完成從S2狀態到S4狀態的轉換, 屬于一個周期的中間過程, 手輪刻度未發生變化, Q=0;
        (3)若前一狀態為S1, 此狀態為無效狀態, 重置FP=0001, FN=0001, Q=0, 手輪有干擾信號過來, 不記數。
        當前狀態為S3時:
        (1)若前一狀態為S1, 且FN=0001, 則置FN=0011, FP清零, 手輪信號完成從S1狀態到S3 狀態的轉換, 屬于一個周期的中間過程, 手輪刻度未發生變化, Q=0;
        (2)若前一狀態為S4, 且FP=0111, 則置FP=1111, FN清零, 手輪信號完成從S4狀態到S3狀態的轉換, 屬于一個周期的中間過程, 手輪刻度未發生變化, Q=0;
        (3)若前一狀態為S2, 此狀態為無效狀態, 重置FP=0001, FN=0001, Q=0, 手輪有干擾信號過來, 不記數。
        2.3 延時電路
        由可逆計數器工作原理可知, 在計數之前, 要先判別方向, 在此可以用D觸發器使手輪脈沖信號比方向滯后一個時鐘周期。
        2.4 16位可逆計數器
        16位可逆計數器的作用是記錄手輪正反方向的位移脈沖;以鑒相后的方向信號作為正向、反向計數判別, 以經過濾波、延時后的純凈信號為計數脈沖。
        2.5 緩沖器
        輸出緩沖器的作用是防止內部信號和外部總線沖突, 保護外部總線。
        3 結束語
        本文在手輪信號處理中引進的狀態機的概念, 有效地消除了手輪微幅左右搖擺時引起的信號抖動, 為可逆計數器提供準確的方向信號和計數脈沖, 保證數控系統獲得正確的手輪計數值。筆者已使用HDL語言實現了該方法, 并在數控系統中使用, 手輪操作準確, 取得理想的使用效果。該方法還有很強的通用性, 可以用于其它增量式編碼器和光柵尺信號的處理。
華利膠木手輪