新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 一種嵌入式運動控制器的實現(xiàn)

一種嵌入式運動控制器的實現(xiàn)

作者: 時間:2011-09-07 來源:網(wǎng)絡(luò) 收藏
3 系統(tǒng)軟件設(shè)計

本文引用地址:http://butianyuan.cn/article/150256.htm

  軟件設(shè)計采用模塊化設(shè)計方法,程序的總體結(jié)構(gòu)采用以數(shù)據(jù)管理和位置速度控制為主,以I/O端口控制、邏輯控制、插補運算等為中斷任務或子函數(shù)任務的形式。位置速度控制主要負責對實時狀態(tài)的監(jiān)控與調(diào)節(jié);I/O端口控制主要負責掃描輸入端口、設(shè)置輸出端口等輔助性任務。

  DSP控制程序主要由一個定時中斷構(gòu)成,主程序啟動后,首先完成對TMS320F2812的初始化及系統(tǒng)的一些基本配置,并處于等待狀態(tài)。控制功能是在伺服中斷服務程序中的。主程序和伺服中斷服務程序基本流程如圖4所示。

  

運動控制器的主程序和伺服中斷服務程序基本流程

  FPGA主要完成的精插補功能,采用數(shù)字積分法進行插補。把數(shù)字積分法分為3個狀態(tài):

  (1)狀態(tài)WAIT,等待插補信號;

  (2)狀態(tài)L1,判斷總的脈沖數(shù);

  (3)狀態(tài)L2,積分累加器累加一次,如有溢出,相應的輸出脈沖為高電平,剩余累加次數(shù)減1。

  數(shù)字積分法的有限狀態(tài)機如圖5所示。

  

 數(shù)字積分法的有限狀態(tài)機

  觸發(fā)條件T1:沒有啟動信號,下一狀態(tài)為WAIT,無操作;

  觸發(fā)條件T2:有啟動信號,下一狀態(tài)為L1,操作為初始化各寄存器,置忙信號;

  觸發(fā)條件T3:剩余累加次數(shù)大于0,下一狀態(tài)為L2,操作為各軸輸出脈沖為低電平;

  觸發(fā)條件T4:剩余累加次數(shù)為0,下一狀態(tài)為WAIT,操作為各軸輸出脈沖為低電平,清忙標志;

  無觸發(fā)條件:下一狀態(tài)為L1。

  具體方法為:時序電路產(chǎn)生的插補脈沖作為此模塊的累加脈沖,每累加1次,剩余累加次數(shù)減1。當剩余累加次數(shù)為0時,此次插補過程結(jié)束。

  4 結(jié)語

  該運動的結(jié)構(gòu)設(shè)計可以模塊化和易于擴展,這樣可以滿足用戶的各種需求。在軟件部分中,采用有限狀態(tài)機的插補方法,在插補速度處理環(huán)節(jié)做了優(yōu)化,使脈沖輸出更加穩(wěn)定。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

伺服電機相關(guān)文章:伺服電機工作原理



上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉