999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ARM+DSP+FPGA+MCU的高速嵌入式數控系統研究

2013-09-17 12:10:34李松李迪翟振坤
機床與液壓 2013年3期
關鍵詞:嵌入式指令系統

李松,李迪,翟振坤

(華南理工大學機械與汽車工程學院,廣東廣州510640)

數控機床高速加工的運動控制是提高加工質量和加工效率的重要手段,在諸多高速加工的相關技術取得突破的情況下,適應高速加工的CNC控制器的研制成為影響高速加工技術應用的重要課題。與傳統的控制器相比,高速加工對CNC控制器提出新的要求,這些要求主要包括高速處理程序段、高速處理控制信息流、自動平滑加減速、強大工況監控能力、高速通信能力、高可靠性和安全性等方面[1]。目前在數控系統領域主要有兩種實現模式。第一種是基于通用PC機+運動控制卡的模式。使用這種數控技術的PC機價格昂貴、系統資源與需求不匹配、操作系統不適合實時控制、可靠性低、系統核心軟硬件不具有自主知識產權等問題,所以很難適用于中低檔高速數控系統[2-3]。另一方面,近年來嵌入式技術得到了飛速發展,各種高性能的嵌入式微控制器層出不窮,芯片運算速度,不斷提高,片上的集成資源越來越豐富。其中以基于32位RISC架構的ARM核微控制器和數字信號處理器 (DSP)為主代表的嵌入式控制器在工控、消費電子、網絡設備等領域取得了輝煌的市場業績[4]。嵌入式技術具有很好的應用性、很強的適應性、資源利用充分、系統緊湊、開發和調試方便等明顯的特點。因此,國內外許多數控系統開發研究人員對嵌入式技術在數控系統中的應用投入了極大的研究熱情,嵌入式數控技術成為未來數控系統發展的一個嶄新方向[5-7]。為了降低硬件成本,增強穩定性,并能適應高速高精數控系統的多任務和實時性調度,作者開發了一種基于“ARM+DSP+FPGA+MCU”結構的嵌入式數控系統。該系統能夠滿足高速加工對CNC控制器提出新的要求,而且結構輕便,適用性強。

1 總體結構設計

1.1 硬件結構設計

基于“ARM+DSP+FPGA+MCU”結構的嵌入式數控系統,功能框架圖如圖1所示。

圖中ARM使用的是三星公司生產的S3C2440,400MHz主頻,ARM920T內核,負責LCD、串口、以太網和USB接口的處理,運行嵌入式Linux操作系統,實現譯碼、文件系統、網絡、圖形顯示和PLC編輯功能。DSP采用TMS320C6713,是TI公司推出的浮點DSP中的一款芯片。TMS320C6713每周期可以執行8條32位指令;支持32/64位數據;具有300MHz、指令周期的運行速度和 2400MIPS或1800MFLOPS的處理能力[8]。它負責插補計算、電機運動控制和PLC執行系統,通過HPI接口與ARM進行通信,并且通過自身的外部總線 (EMIF)與FPGA模塊通信。FPGA由于其強大的邏輯處理功能,一方面,接受ARM和外部RAM送來的控制指令和數據信息執行運算,產生控制步進電機運轉的脈沖序列,并通過接口將脈沖序列送到電機驅動器或轉化為模擬量輸給驅動器,從而控制電機。另一方面,負責與外圍編碼器相連接,識別其輸出的信號并計數,計數結果存放在寄存器中,供DSP讀取。MCU模塊由高性能、低功耗的AVR 8位微處理器ATmage128和CPLD組成,主要負責系統操作面板、鍵盤、LED等信號的處理,通過串口RS485和主處理器ARM通信。

圖1 功能框架圖

1.2 軟件系統功能模塊

根據一般高速數控機床對數控系統功能的要求,本系統軟件功能模塊劃分如圖2所示。

人機界面模塊運行在應用程序的前臺,主要實現用戶與系統的交互功能,其主要的功能包括機床加工狀態信息顯示 (手動、MDI、自動、手輪、回參考點等方式)、系統參數管理、刀具管理、文件管理、程序輸入、加工仿真、網絡功能等。其數據接口主要是實現與內核模塊各種信息的交互,人機界面模塊從內核模塊讀取系統的狀態信息、報警信息顯示給用戶;同時可以將用戶輸入和對參數的設置修改信息傳送給內核模塊或譯碼模塊,并將用戶的對參數和刀具修改的信息保存到一定的配置文件中;譯碼模塊主要把用戶編制的NC代碼程序翻譯成NC系統可以識別的數控指令信息,經過語法檢查和數據轉換后解釋成CNC數控指令,存放在指定的內存專用區間;刀補功能模塊包括刀具長度和刀具半徑補償。本模塊先進行長度補償后采用C(半徑)刀具補償。C刀具補償需要判斷兩段軌跡之間的轉接情況,根據轉接情況計算相應的運動軌跡;前瞻處理模塊是對連續多段的加工代碼進行預處理,分析其幾何特性,包括相鄰程序段間的轉角,單段長度,在考慮機床各軸的加減速能力的基礎上,獲得程序段內的最大進給速度及最大加速度,同時對程序段間的銜接速度進行優化,使進給速度盡量平滑;插補模塊對譯碼刀補后的CNC數控指令數據進行處理,輸出插補運算的結果,對NC數控指令的執行過程進行控制和調整。其具體功能:CNC數控指令的讀入,前加減速預處理,插補計算,數據輸出;位置控制模塊實現對各個控制軸的位置采集,PID控制,DAC輸出計算等功能;內置PLC模塊接收來自操作面板、機床上的各行程開關、傳感器、按鈕、強電柜里的繼電器以及主軸控制、刀庫控制等有關信號,經處理后輸出去控制相應器件的運行,實現數控系統的I/O的數字邏輯控制及機床S、M、T功能等;通訊信息主要有系統參數信息、報警信息、數控指令信息和機床及操作面板輸入輸出信息。

圖2 軟件系統功能模塊

2 ARM軟件設計

整個ARM系統支持的總體架構如圖3所示,從上到下有依賴關系,由于篇幅限制,文中只對應用程序任務調度和內部通訊進行介紹。

圖3 系統支持的框架結構

2.1 ARM任務調度

應用程序的任務調度采用Linux系統的多線程處理,把各任務功能模塊放入線程體內部運行,直接依靠操作系統自身的多線程調度機制來實現,系統使用任務過程循環、信號量來實現任務線程的同步互斥,使用定時中斷實現多線程的并行處理。內核模塊功能區的任務調度,把內核任務放入中斷服務程序之中,任務的優先級直接依靠對應的中斷優先級,所以內核任務的調度也直接使用Linux內核的模塊調度機制,采用觸發系統實時中斷的方法實現對任務的調度。

2.2 ARM應用層通訊

ARM應用程序內各線程或任務間的通信,主要通過信號量、全局變量、FIFO來進行通信交互;使用信號量完成線程之間的同步與互斥,全局變量和FIFO實現線程間的數據傳遞及其與內核模塊的數據傳遞。在數控加工時,CNC系統各模塊之間需要傳遞大量的數據信息,主要通過各種緩沖存儲區實現數據信息的交換。首先讀入數控加工程序到數控加工程序緩沖器,從中逐個讀入字符,經譯碼處理送到譯碼結果緩沖器,再經一系列插補準備 (包括刀補計算和速度前瞻處理),送到插補緩沖器中,插補程序執行插補運算時,把插補緩沖存儲區的內容讀入到插補工作存儲區,然后用插補工作區的數據進行插補計算,并將結果送到插補輸出寄存器。緩沖區統一數據結構如下 (省略數據類型):

typedef struct{

Flag;//總體

M1[8];//代碼前 M 指令

M2[8];//代碼后 M 指令

ToolNUM;//刀偏

Tooloffset;//刀號

S;//主軸速度,

link;//D0:在此作同標志 //D1:表示換刀

指令段的后段是G0//D2:多段螺紋標志

MainG;//運動類G代碼指令

bRefAndOft;//偏置值

bSwitchG;//G指令模態值

bAxisValidData;//軸映像

bAssociatedData;//軸關聯

AxisInc[AxisNum];//軸增量

FeedVelo;//0.5轉進給F1:分進給F2:

EndVelo;//本段結束速度

Dly;//延時時間

II;//I(圓弧);I(螺紋長軸退尾)

JK;//J(圓弧);K(螺紋短軸退尾)

反沖質子磁譜儀的性能模擬結合了中子探測和反沖質子的動量分析等物理過程。首先,根據中子與反沖聚乙烯靶相互作用機理,采用蒙特卡羅方法模擬不同能量的中子在聚乙烯靶中的輸運過程,獲得反沖質子的能量和角分布;其次,以束流光學計算為基礎,模擬反沖質子在磁分析單元中的色散、偏轉和聚焦過程;最后,獲得反沖質子在焦平面上的空間分布。模擬計算主要分為5個過程:

KInc;//K(圓弧);

RNn;//R(半徑);Nn多頭螺紋偏移角/L;

NextL;//下一段螺距標志

AngleInc;//起始角/下段螺螺紋短軸退尾K

SegAdd;//段地址

INT32SBusy;//忙標志

}InterruptPara;

3 DSP模塊軟件

3.1 任務調度

DSP功能區主要有4個周期性任務在DSP上面運行:插補模塊任務,位控模塊任務,PLC模塊任務和數據監控管理模塊。各級任務屬性如表1所示。

表1 DSP任務屬性

圖4 任務調度策略

為保證任務調度的強實時性,使用中斷服務程序實現任務調度策略。C6713有14個中斷,分成3種類型:復位中斷(RESET-最高級中斷)、不可屏蔽中斷 (NMI-第二級)、可屏蔽中斷(INT4-INT15-第三級)[8]。C6713響應一個可屏蔽中斷(INT4-INT15)的中斷請求時,進入對應的中斷服務程序,這個中斷服務程序可以設置成可重入的。根據該DSP的這個特點,在可屏蔽中斷 (INT4-INT15)中斷服務程序內部采用中斷嵌套和軟件控制的方法實現搶占式優先級多任務調度策略。如下設計實現N個實時任務的優先級調度。如圖4所示,任務優先級0~N從高到低,每級每個任務有自己的中斷調度時鐘周期,設置每0.25 ms的定時中斷;當進入定時中斷服務程序后,保存相關的寄存器,并開中斷;按優先級從高到低檢查任務是否在執行或可被調度,如果沒有,執行之,否則檢查或調度下一優先級任務;當新的中斷出現后,該層中斷服務程序會保存現場,執行新層的中斷服務程序 (即代碼重入),執行完新層同層高優先級任務后調度低優先級任務,最后退出該次中斷,回到以前保護的現場,繼續執行被中斷的上一層次中斷服務程序。這樣可以實現高優先級的任務,可以在新的中斷層次中中斷上一層次低優先級的任務,同時保證當任務對應的時鐘周期到來時被調度一次,從而達到實現搶占式優先級多任務調度策略的目的。

3.2 DSP實時任務間的通信

DSP實時任務間的通信主要通過全局變量和共享內存來完成通信交互;任務之間的同步與互斥使用全局變量,數據傳遞通信使用共享內存,通信機制如圖5所示。

圖5 DSP實時任務間的通信

4 芯片間的通訊

該系統芯片間的通訊主要有ARM與DSP,FPGA與DSP和ARM與MCU之間通訊,ARM與MCU模塊通過RS485串口通訊,FPGA與DSP通過共享內存進行通訊。文中主要介紹ARM和DSP之間的通訊。

4.1 ARM與DSP的通訊

該系統主要用主機接口HPI(The Host-port Interface)實現ARM與DSP兩個處理器主從式通信。HPI是TMS320C6713芯片接口部件,是一種高效的并行口。對于主處理器ARM來說,DSP的HPI接口對應16位異步存儲接口的I/O設備。ARM通過尋址HPI接口中的數據寄存器 (HPID)、地址寄存器(HPIA)、控制寄存器 (HPIC)訪問DSP的整個存儲空間,與DSP進行握手通信。寄存器是通過HPI接口的HCNTL0、HCNTL1選擇。HHWIL決定讀取的是第1個或第2個半字;HPIC的HWOB決定哪個半字是高半字還是低半字。S3C2440A的nGCS2接到HPI的片選信號 HCS,而 I/O接口 BANK2的地址為0x10000000~0x18000000。LADDR4與 HPI上的 HR/W相連接,LADDR4高低電平對于HPI是讀狀態/寫狀態。S3C2440的中斷 7與 HPI的 HINT相連。HRDY信號經過反相器后與nWAIT相連接,這樣DSP沒有準備好數據的時候可以延長ARM的讀寫周期,使ARM處于等待DSP就緒的狀態。

4.2 HPI驅動設計

ARM采用Linux操作系統。Linux字符驅動主要是填寫file_operation結構體,該結構的成員函數包括open()、write()、read()、close()等[9],因此對 HPI的操作就是數據讀寫的操作。

hpi_read函數部分代碼如下:

5 結論

基于ARM+DSP+FPGA+MCU嵌入式數控系統,硬件方面減少了系統的外圍器件,具有結構輕便、性價比高、穩定性好等優點。軟件設計方面,該系統具有高性能的高速控制,系統功能強大,軟硬件數據流結構清晰,減少不必要的數據流交互。該系統能夠滿足高速加工對CNC控制器提出的新要求。

【1】劉艷霞,李淑芬.基于ARM的嵌入式數控系統[J].微計算機信息,2006,22(35):90 -91.

【2】朱曉潔,舒志兵.基于ARM+FPGA的嵌入式數控系統[J].機床與液壓,2008,36(7):311 -313.

【3】王田苗,陳友東,孫愷,等.基于UC/OS-2嵌入式數控系統研制[J].北京航空航天大學學報,2006,32(4):471 -480.

【4】周祖德,龍毅宏,劉泉,等.嵌入式網絡數控系統[J].機械工程學報,2007,5(5):1 -7.

【5】ZHOU Z D,YIN Y,LONG Y H,et al.Embedded NC System Based on ARM and DSP[C]//Proceedings of the 2nd IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications,2006:1 -3.

【6】REN Qiang,JIANG Tingbiao.Research on Embedded Networked Numerical Control System Based on ARM and DSP[C]//11th IEEE International Conference on Communication Technology,2008:631 -633.

【7】王應莉.基于ARM+DSP構架的視頻處理系統[D].成都:電子科技大學,2004.

【8】TMS320C6713,TMS320C6713B Floating-Point Digital Signal Processors[R].Texas Instruments Inc.,2004.

【9】CORBET Jonathan,RUBIN Alessandro,KROAH-HARTMAN Greeg.Linux設備驅動程序[M].3版.魏永明,等,譯.北京:中國電力出版社,2006.

猜你喜歡
嵌入式指令系統
聽我指令:大催眠術
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
搭建基于Qt的嵌入式開發平臺
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
Altera加入嵌入式視覺聯盟
主站蜘蛛池模板: 久久99这里精品8国产| 国产精品毛片一区| 2020久久国产综合精品swag| 97在线碰| 色综合久久88色综合天天提莫| 制服丝袜在线视频香蕉| 国产熟女一级毛片| 无码AV动漫| 欧美日韩亚洲国产主播第一区| 99热国产这里只有精品9九| 日韩av在线直播| 视频在线观看一区二区| 国产精品观看视频免费完整版| 午夜天堂视频| 国产丝袜一区二区三区视频免下载| 中文国产成人精品久久| 国产午夜精品一区二区三区软件| 青青国产视频| 播五月综合| 99国产精品免费观看视频| 99在线观看精品视频| 国产69囗曝护士吞精在线视频| 在线网站18禁| 干中文字幕| 狠狠综合久久| 亚洲无码四虎黄色网站| 中文字幕精品一区二区三区视频| 欧美国产日产一区二区| 亚洲精品欧美日本中文字幕| 丁香婷婷综合激情| 日本在线亚洲| 久久综合成人| 亚洲中文精品人人永久免费| 一级看片免费视频| 无码视频国产精品一区二区| 国产91精品久久| 日韩高清在线观看不卡一区二区| 5388国产亚洲欧美在线观看| 国产情侣一区二区三区| 呦女亚洲一区精品| 视频在线观看一区二区| 亚洲人成在线免费观看| 激情乱人伦| 一边摸一边做爽的视频17国产| 国产成人夜色91| 国产成人艳妇AA视频在线| 超清无码熟妇人妻AV在线绿巨人| 囯产av无码片毛片一级| 毛片a级毛片免费观看免下载| 亚洲综合第一页| 国产精品自在线拍国产电影| 欧美中文字幕在线视频 | 成人欧美日韩| 亚洲中文字幕久久精品无码一区| 国产免费黄| 婷婷在线网站| 国产精品太粉嫩高中在线观看| 国产成人资源| 久久黄色影院| 久夜色精品国产噜噜| 精品久久久久无码| 美女内射视频WWW网站午夜 | 91美女视频在线观看| 一区二区三区国产精品视频| 午夜国产精品视频| 美女免费精品高清毛片在线视| 婷婷激情亚洲| AV在线麻免费观看网站| 色香蕉影院| 在线欧美一区| a欧美在线| 亚洲一级毛片在线观播放| 国产无码精品在线| 亚洲AV无码一区二区三区牲色| 亚洲Va中文字幕久久一区| 91视频99| 亚洲品质国产精品无码| 精品自窥自偷在线看| 91在线激情在线观看| 狂欢视频在线观看不卡| 久久人与动人物A级毛片| 亚洲人在线|