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

基于 PCI-1240U 的數控機床手輪功能的實現

2014/11/5 13:58:05
        源于開放式數控系統的可擴展性、可重用性、可移植性、互換性等優點,基于PC的開放式數控系統成為當前數控技術的主要發展潮流。中國臺灣Ad-vantech公司的PCI-1240U系列運動控制卡是一款專門應用于一般精確運動的可編程軸步進/脈沖型伺服運動控制卡。由于其性價比較高,因此被廣泛應用于工業領域。與普通機床相比,對于所有的數控機床而言,盡管其精度和加工效率明顯提高,但是其在刀具微動、工件對刀和對工作臺的運動控制等功能方面,仍存在欠缺。為改變這種狀況,手輪應運而生。手輪全名叫手搖脈沖發生器,它是一種光電式的位置控制元件,在轉動情況下,其轉動的角度大小和轉動方向轉變為含有脈沖和方向信息的脈沖序列,機床通過其產生的脈沖序列信號的頻率和脈沖個數實現控制軸的運動速度和位移控制,它的有無直接關系到數控機床的使用性能和加工效率。因而,在數控系統的開發過程中,如何基于PCI-1240U運動控制卡實現手輪功能是普遍存在的一個問題。
        本文主要介紹了基于“PC+PCI-1240U運動控制卡”的手輪控制系統的硬件結構,并開發了其控制程序,為基于PCI-1240U的手輪功能的實現提供了相關的技術支持,具有一定的參考價值。
1    硬件結構
        本文研發的數控機床是由工控機、PCI-1240U運動控制卡、步進電動機驅動器、三坐標精密工作臺、手輪等單元組成。
        多軸控制卡PCI-1240U是基于PC平臺的開放性高速四軸運動PCI控制卡,簡化了步進和脈沖伺服運動控制,可以顯著提高電動機的運動性能。該卡采用日本NOVA公司的MCX314運動ASIC芯片,能夠實現2/3軸線性插補、2軸圓弧插補、T/S曲線加速/減速、手輪和慢進功能等;此外,該卡在執行這些運動控制功能控制電動機時,不會增加處理器的負擔。PCI-1240U運動控制卡提供了接線端子ADAM-3952,方便了對PCI-1240U板卡上的接口進行轉接。
        ADAM-3952是位置轉接板。脈沖發生器可以通過ADAM-3952的nEXOP+/nEXOP-與PCI-1240U相連,用來驅動伺服單元和獲取編碼器反饋信號等信息。CN1是PCI-1240U與外部設備機械連接的唯一接口,可通過PCL-10251總線與兩塊ADAM-3952轉接板的CN1或CN4相連,這樣,PCI-1240U共包含4組通道,每一通道對應一套伺服驅動系統,即它可以驅動4臺步進電動機。每一通道包括模擬量輸入/輸出引腳、數字量輸入/輸出引腳等。本系統為三坐標系統,共有3臺步進電動機,占用板子的3個通道。手輪的進給軸和進給倍率控制線沒有對應的接口,這里將其接入到IN1、IN2和IN3口并通過相應的軟件進行管理。當手搖脈沖發生器產生的脈沖信號送到PCI-1240U后,經PCI-1240U運算處理所得的結果結合用戶的初始化設置,驅動相應的執行元件運動。
        為了滿足手輪驅動模式下數控機床的各軸的獨立運動及倍率的選取功能,選擇HandWheelMode3模式。
        這里巧妙的運用了板卡所提供的IN口的輸入狀態作為判斷條件,進行軸和倍率的切換。其中,將手輪的軸切換開關對應的X、Y、Z的三根接線S0、S1、S2分別接到ADAM-3952的U-IN1、U-IN2、U-IN3接口;倍率切換開關對應的×1、×10、×100的三根接線P0、P1分別接入ADAM-3952的X-IN3、Z-IN3接口。各個通道的IN口初始電平為高電平,接通時變為低電平。
        PCI-1240U專門提供了MotionUtility功能,可以通過設置其中的參數,進行簡單的手輪功能的調試。
2    程序控制設計
2.1    程序結構
        本系統是主從式雙系統結構,有上位PC機和下位PCI-1240U控制卡組成。它們各有自己的CPU、存儲器和外部設備,但是分工不同,PC機可以完成人機交互界面、系統任務管理和機床狀態變量的讀取并能進行運算的功能;而PCI-1240U卡的DSP負責運動控制、I/O管理。
2.2    程序實現
        根據PCI-1240U運動控制卡的DLL可知,調用函數P1240MotDI(BYTEbyBoard_ID,BYTEbyReadDI-Axis,BYTE*lpReturnValue),這個函數用來獲取PCI-1240U指定軸通道IN口的當前狀態值,將其存放在lpReturnValue所指向的字節型內存地址中。通過調用外部驅動模式函數P1240MotExtMode(BYTEbyBoard_ID,BYTEbyAssignmentAxis,BYTEbyExternalMode,LONGlPulseNum),實現對驅動軸、驅動模式、手輪脈沖對應到步進電動機上的脈沖數等參數的設定。手輪的上位機程序一方面用于通過VC編程設定手輪驅動模式下進給軸和倍率的選取。
        另一方面系統運行時需要實時監測手輪控制的運動軸和進給倍率開關的狀態。這里利用VisualC++里的Timer定時器控件,在程序運行時,計時器控件每隔0.1s對PCI-1240U設定軸的IN1、IN2、IN3進行讀取,后將其返回給程序,從而實現進給軸和進給倍率的切換。
3    驗證
        在以上硬件搭建的小型數控磨床中,工作臺能準確跟隨手輪的動作進行相應的運動,且運動連續平穩;利用上位機的VC++編程,可以方便地進入手輪驅動模式和退出手輪驅動模式的切換,同時實現了手輪驅動模式下的進給軸的切換以及進入/退出手輪模式(軸選擇開關在OFF檔上,則退出手輪驅動模式)的切換,通過撥動倍率開關,可以方便地調節某一指定軸的隨動平臺的移動速度,從而更加方便了刀具微動、工件對刀以及對工作臺運動的控制等。
4    結語
        手輪功能的實現對數控機床而言,很大程度上方便了操作者,提高了工作效率。本文構建了以PCI-1240U運動控制卡和工控機為硬件核心的數控系統,利用VC++編程技術實現了手輪模式切換、控制軸切換和倍率切換等功能。該方法在實際中得到了應用,適合于所有基于PCI-1240U的數控系統。
華利膠木手輪