關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于DSP與FPGA的運動控制器設計

        基于DSP與FPGA的運動控制器設計

        作者: 時間:2009-10-21 來源:網絡 收藏
        (1)輸入輸出開關量接口。輸入信號主要包括限位開關信號LIMX+、LIMX-~LIMU+、LIMU-,伺服報警信號ALMX~ALMU和回零信號HMX~HMU。輸出信號主要包括伺服使能信號SRVX~SRVU和復位信號RSTX~RSTU。當檢測到這些信號后,確定具體觸發的信號,限位信號觸發,則立即停止對應電機該方向的,直到限位消除,電機才能在該方向繼續;回零信號觸發,則電機等待Index信號的輸入后立即讓電機反向運行用戶設定的回零距離作為機械零點;伺服報警信號輸入時,程序立即停止該電機的,直到用戶將報警清除。
          (2)輸出控制脈沖電路。輸出控制脈沖信號為伺服電機的4路脈沖控制輸出信號。此控制采用“脈沖+方向”指令,由于每個控制軸分別有脈沖和方向信號,所以4路共8個輸出信號。輸出控制脈沖信號由輸出,要先經過電平轉換,將的I/O引腳的3.3 V變為5 V,再經過光電隔離,然后再經過施密特觸發器整形后輸出。由于脈沖和方向信號需要進行差分,所以將信號接入差動線驅動器后再輸出。XPLS~UPLS為脈沖信號,XDIR~UDIR為方向信號。差動線驅動器由AM26LS31構成,該電路的功能是將輸入的單極性的方波信號轉化為一對極性相反的電機驅動信號,它的高阻抗輸出狀態在電源掉電時是有保障的。
          (3)反饋脈沖處理電路。伺服電機的編碼器信號直接接入到電機驅動器中,驅動器提供三對差分信號A+、A-、B+、B-、Z+、Z-作為反饋。這三對信號由于受到驅動器內部大電源的干擾,在電機旋轉時,所發出的信號會出現許多毛刺,直接接到中會引起誤判斷,所以三對信號經過差分電路轉化為單路信號A、B、Z。差分電路由AM26LS32構成,該芯片功能與AM26LS31相反,該電路的功能是將輸入的一對極性相反的編碼器反饋信號轉化為單極性的方波信號。A、B兩路為正交編碼脈沖,Z路每轉產生一個低電平脈沖,用于回零時的精確定位。
        2.4 數字量輸入輸出接口模塊
          考慮到系統的可擴展性和的GPIO口的數量,此運動與FPGA上分別設計8路,共16路數字量輸入輸出。運動的所有數字量輸入輸出信號均采用光電隔離處理,并對每一路信號進行相應的數字濾波處理,以消除噪聲信號。數字量輸入通道可以根據用戶的要求自定義用途,用于零點、限位信號的輸入等;數字量輸出通道用于各軸方向、脈沖信號的輸出以及一些外部設備的啟停控制等。
        3 系統軟件設計

        本文引用地址:http://www.104case.com/article/163515.htm

          軟件設計采用模塊化設計方法,程序的總體結構采用以數據管理和位置速度控制為主,以I/O端口控制、邏輯控制、插補運算等為中斷任務或子函數任務的形式。位置速度控制主要負責對實時運動狀態的監控與調節;I/O端口控制主要負責掃描輸入端口、設置輸出端口等輔助性任務。
          控制程序主要由一個定時中斷構成,主程序啟動后,首先完成對TMS320F2812的初始化及系統的一些基本配置,并處于等待狀態。運動控制功能是在伺服中斷服務程序中實現的。主程序和伺服中斷服務程序基本流程如圖4所示。


          FPGA主要完成運動的精插補功能,采用數字積分法進行插補[1]。把數字積分法分為3個狀態:(1)狀態WAIT,等待插補信號;(2)狀態L1,判斷總的脈沖數;(3)狀態L2,積分累加器累加一次,如有溢出,相應的輸出脈沖為高電平,剩余累加次數減1。
          數字積分法的有限狀態機如圖5所示。


          觸發條件T1:沒有啟動信號,下一狀態為WAIT,無操作;觸發條件T2:有啟動信號,下一狀態為L1,操作為初始化各寄存器,置忙信號;觸發條件T3:剩余累加次數大于0,下一狀態為L2,操作為各軸輸出脈沖為低電平;觸發條件T4:剩余累加次數為0,下一狀態為WAIT,操作為各軸輸出脈沖為低電平,清忙標志;無觸發條件:下一狀態為L1。
          具體實現方法為:時序電路產生的插補脈沖作為此模塊的累加脈沖,每累加1次,剩余累加次數減1。當剩余累加次數為0時,此次插補過程結束。
          本文設計了一種通用型四軸伺服運動控制器,該運動控制器的結構設計可以模塊化和易于擴展,這樣可以滿足用戶的各種需求。在軟件部分中,采用有限狀態機的插補方法,在插補速度處理環節做了優化,使脈沖輸出更加穩定。此設計采用了模塊化思想,各電機可以單獨控制,具有較為全面的運動控制功能、較高的控制精度和較快的反應速度,其性能可靠、硬件結構簡單、價格便宜。

        伺服電機相關文章:伺服電機工作原理


        pid控制器相關文章:pid控制器原理



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 吕梁市| 扎兰屯市| 临沧市| 射洪县| 六安市| 勃利县| 荔浦县| 和静县| 德江县| 盐池县| 金湖县| 登封市| 舞阳县| 英德市| 营山县| 尼木县| 卢氏县| 永福县| 长垣县| 万安县| 天长市| 葫芦岛市| 齐齐哈尔市| 宾川县| 东安县| 乌拉特前旗| 日喀则市| 瑞金市| 新乐市| 建水县| 池州市| 高陵县| 和顺县| 饶平县| 元氏县| 和龙市| 仁化县| 两当县| 乌鲁木齐市| 松江区| 崇义县|