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

基于RTDX的光電伺服控制軟件調試工具開發

2014-04-29 00:00:00朱文亮廖洪波杜卯春范大鵬
航空兵器 2014年2期

摘要:在光電伺服控制軟件調試過程中為了開發一種連續、實時、直觀的調試工具,需要將DSP環境中的數據實時傳輸到PC環境,利用PC豐富的圖形環境進行數據顯示和圖形繪制。如何實現DSP環境與PC環境之間的實時數據交換成為該調試工具開發中的一個關鍵問題。針對該問題,利用T1公司實時數據交換(RTDX)技術,實現了MATLAB和CCS集成開發環境之間的實時數據交換。

關鍵詞:光電伺服控制;調試工具;RTDX;MATLAB

中圖分類號:TP273 文獻標識碼:A 文章編號:1673-5048(2014)02-0012-04

0、引言

目前,在光電伺服控制軟件調試過程中,為了實現程序中各種寄存器、控制參數等變量的觀察,需要在目標程序中設置斷點,中斷目標程序運行。然而對實時性要求較高的光電伺服控制程序,這種插入斷點的調試方法不能實時反映所關心數據的變化,同時還有可能造成數據錯誤,影響控制算法設計和錯誤分析,給程序調試帶來不便。同樣,在其調試階段,需要在線修改程序中的控制參數,實現外部數據實時導人目標程序,而用傳統調試手段難以實現。針對以上問題,需要設計一個連續、實時、直觀的調試工具來進行光電伺服軟件調試,用以提高調試效率和縮短開發周期。本文針對該調試工具設計過程中PC環境與DSP環境數據實時交換的關鍵問題,通過應用實例說明了采用RTDX技術實現MATLAB和CCS的編程環境之間數據交換的方法。

1、實時數據交換技術RTDX

TI公司的Real Time Data Exchange(RTDX)技術利用DSP的內部仿真邏輯和JTAG接口實現主機與目標機之間的數據交換。它幾乎不占用DSP的系統資源,數據傳送可以在目標程序后臺運行,對目標程序影響很小。它可以在不中斷目標程序運行的前提下向主機實時發送目標DSP上各個寄存器或內存變量的值。而Pc主機也可通過TI公司提供的RTDX相關API函數獲取這些數據,并可對這些數據進行實時分析和可視化顯示。RTDX數據交換原理如圖1所示。

目標DSP為了向主機發送數據必須設定一個輸出通道,通過用戶接口可將數據送到輸出通道以使這些數據立即保存到RTDX目標機的緩存(由RTDX目標函數庫定義)中,然后再將這些數據通過JTAG接口發送到主機。目標機要從主機中獲得數據,首先必須設定輸入通道接收主機發出的命令,從而實現數據傳輸的同步。同時可利用輸出通道完成目標程序向RTDX主機函數庫發送數據,向RTDX主機函數庫發送數據請求及在目標機上提供數據緩存等功能。

2、RTDX應用過程

使用RTDX進行DSP環境和PC環境之間的數據交換時,需要在DSP目標程序和PC主機程序中分別實現。它們之間的數據傳輸格式和傳輸頻率要結合應用需求來定義。

2.1 DSP目標程序RTDX實現

在DSP目標程序中使用RTDX進行數據傳輸,只需在原有的DSP目標程序中加入關于RTDX通道初始化、數據緩存區定義和數據收發的代碼即可。以下是RTDX在DSP程序中的實現過程。

(1)RTDX初始化

首先使用以下宏完成RTDX輸入、輸出通道的創建:

RTDX_CreatelnputChannel(d_jchan);

RTDX_CreateOutputChannel(a_ochan)。其中:d_ichan為輸入通道名:a_ochan為輸出通道名。后面有關RTDX通道的操作函數都要使用它們來指定通道。完成通道創建以后使用以下宏來使能輸入、輸出通道:

RTDX_enableInput(d_ichan);

RTDX_enableOutput(a_ochan)。

(2)創建接收和發送數據緩存區

進行數據發送之前需要定義好接收和發送緩沖區,緩沖區的大小可根據實際應用情況定義,但不可超過RTDX通道最大容量值。定義Readdata[counterl]為接收緩沖區,counterl為緩沖區容量大小,定義Seaddata[counter2]為發送緩沖區。

(3)向RTDX通道讀寫數據

函數RTDX_readNB(d_ichan,(void*)Readdata,sizeof(short))可實現RTDX輸入通道數據非阻塞讀取。使用RTDX_write(a_ochan,Seaddata,500*sizeof(short))可以向RTDX通道發送數據,這里向通道中寫入了500個short類型數據,發送數據個數不應超過RTDX通道容量大小,否則會發送失敗。

在實際應用過程中RTDX只提供了一個數據的傳輸通道,而如何有效地使用這個通道還需要DSP目標程序和PC主機程序定義好數據的傳輸協議來實現。

2.2 MATLAB主機程序實現

PC主機程序是在MATLAB/GUI編程環境實現的。主要實現定時獲取DSP目標程序通過RTDX通道發送上來的數據:實時顯示接收到的數據信息;通過人機交互界面向DSP目標程序發送數據。設計流程如圖2所示。

主機程序首先通過MATLAB Link for CodeComposer Studio的相關API函數與CCS集成開發環境建立雙向和實時數據鏈接,成功建立鏈接后可以通過MATLAB/GUI程序控制執行CCS的命令來進行批處理調試和顯示,然后再進行DSP類型及數量的探測。待探測到目標DSP類型和數量后,程序將進行RTDX通道緩沖區配置、通道初始化等操作。完成這些操作后MATLAB/GUI程序控制CCS運行目標程序,同時啟動數據接收和發送定時器,此時DSP和PC可進行數據的實時交換。以下為MATLAB環境下RTDX的實現過程。

(1)RTDX初始化過程

首先使用configure(cc.rtdx,8192,4)對通道進行配置,配置參數需要根據DSP目標程序通道創建的個數來確定,這里配置緩沖區大小為8192字節,同時配置了4個通道,其中cc.rtdx為MATLAB和CCS建立連接成功后返回的句柄,后面有關RT-DX通道的操作函數都需要把它作為參數來使用。完成配置后,可使用open(cc.rtdx,’a_ochan’,’r’)來打開RTDX讀通道,使用open(cc.rtdx,’d_ichan’,’w’)來打開寫通道,其中a_ochan,d_jchan為DSP目標程序中創建通道時定義的通道名。最后使用以下函數完成RTDX輸入、輸出通道的使能:

enable(cc.rtdx,’d_ichan’);

enable(cc.rtdx,’a_ochan’)。

(2)接收定時器服務函數

TimeUpdateChannelATl( )

在定時服務程序中主要完成實時接收RTDX通道中的數據,并把接收到的數據存人數據緩存區,然后根據數據傳輸協議解析數據并對數據進行處理或圖形繪制。

(3)發送定時器服務函數

TimeUpdateChannelDTl( )

發送定時器服務函數主要實現數據的發送和協議的封包。當PC主機程序需要向DSP發送連續數據時,例如,正弦、方波和鋸齒波等類型的激勵信號時,需要將上述激勵信號離散化處理后再進行發送,發送控制命令時,只需發送按照傳輸協議封包好的數據即可。

3、RTDX應用實例

以某型光電穩定平臺的光電伺服控制軟件調試為背景,結合上文RTDX在DSP目標程序和MATLAB/GUI的實現過程,對光電伺服控制軟件和MATLAB/GUI程序進行修改,對DSP目標程序增加RTDX初始化、配置、收發等相關代碼,對MATLAB/GUI修改有關數據處理和圖形顯示代碼,并根據實際應用需求,實現平臺中各種參數的顯示、狀態控制等功能。

某型光電穩定平臺調試系統構成如圖3所示。軟件構成:MATLAB2011b、CCS3.3;硬件構成:兩軸光電穩定平臺、驅動控制硬件電路、調試PC主機、仿真器和直流穩壓電源等。RTDX應用實現如下:

步驟一,在光電伺服控制軟件中加入RTDX初始化相關函數并定義接收、發送緩沖區數組,數組大小按照RTDX最大容量500定義,同時還需實現平臺數據的傳輸協議,其中上傳數據包括陀螺、編碼器、測速機、跟蹤器數據類型及格式的定義。在伺服控制周期里采集到500個數據后進行數據上傳,因此數據上傳周期為500 ms;Pc機下傳數據包括控制指令和正弦、方波、階躍信號的離散化數據,數據下傳周期由MATLAB/GUI發送定時器設定,根據伺服控制的響應特性,設定下傳周期為10 ms,每個周期發送500個數據。

步驟二,在MATLAB/GUI程序中設計人機交互界面,如圖4所示。需對MATLAB/GUI程序中的接收定時服務函數和發送定時服務函數進行修改,設置接收定時器定時周期為5 ms,并且要小于光電伺服控制程序數據上傳周期,以防止數據丟失。按照傳輸協議,對接收定時服務函數增加數據傳輸協議解析函數,波形繪制函數等。對發送定時服務函數需增加激勵信號波形離散化函數和傳輸協議封包函數。

步驟三,利用MATLAB/GUI程序觀察光電穩定平臺各個傳感器的數據值,并可發送指令實現對光電穩定平臺各種功能的控制,實現對光電伺服控制軟件在線監控與調試,如圖4所示。

在MATLAB/GUI界面上單擊電機上電控制按鈕,運動軸選擇為俯仰軸,運動模式選擇穩定模式,激勵信號選擇為正弦,幅值為60(°)/s,頻率為4 Hz,點擊陀螺數據顯示按鈕,此時可在主機程序界面上觀察激勵信號(虛線)和響應信號(實線)的曲線。可以選擇不同類型的激勵信號和運動模式來實現對光電穩定平臺位置、速度和跟蹤閉環狀態性能的測試。在電機不上電的情況下還可以單獨觀察某個傳感器的數據,判斷它是否正常工作。

4、結論

本文以光電伺服控制軟件的調試為應用背景,針對DSP環境與PC環境實時數據交換的技術問題展開研究。利用RTDX技術實現了CCS3.3與MAT,LAB2011b編程環境之間的實時數據交換,并在MATLAB/GUI環境下開發了基于RTDX的光電伺服控制軟件調試工具。該調試工具為開發人員提供了連續、實時、直觀的調試環境,提高了調試效率。

主站蜘蛛池模板: 亚洲香蕉久久| 国产成人综合日韩精品无码首页| 性喷潮久久久久久久久| 久久国产精品77777| 九九九精品成人免费视频7| 色婷婷综合激情视频免费看| 亚洲日韩在线满18点击进入| 久久黄色免费电影| 免费视频在线2021入口| 欧美亚洲国产精品久久蜜芽| 无遮挡国产高潮视频免费观看| 91精品啪在线观看国产| 亚洲精品卡2卡3卡4卡5卡区| 91精品国产自产在线老师啪l| 国产精品蜜臀| 国产小视频在线高清播放| 青青青视频免费一区二区| 国产精品视频3p| 国产成本人片免费a∨短片| 少妇极品熟妇人妻专区视频| 国产精品福利导航| 在线国产你懂的| 国产精品漂亮美女在线观看| 亚洲精品图区| 欧美日本激情| 一级毛片在线播放| 国产成人91精品| 亚洲成人在线免费观看| 国产人在线成免费视频| 亚洲成年网站在线观看| 国产高潮流白浆视频| 国产精品美乳| 久久久噜噜噜| 久久视精品| 亚洲精品人成网线在线 | 国产精品极品美女自在线网站| 国产高清不卡视频| 欧美黄网站免费观看| 午夜老司机永久免费看片| 国产一区二区三区视频| 国产一区在线视频观看| 农村乱人伦一区二区| 91免费国产在线观看尤物| 欧美丝袜高跟鞋一区二区| 国产微拍一区二区三区四区| 为你提供最新久久精品久久综合| 欧美天堂在线| 国内精品九九久久久精品| 国产毛片片精品天天看视频| 精品成人免费自拍视频| 亚洲综合片| 亚洲人成网7777777国产| 国产不卡国语在线| 99在线观看国产| 国产成人永久免费视频| 国产老女人精品免费视频| 色成人亚洲| 亚洲第一视频区| 成人精品亚洲| 99这里只有精品免费视频| 91网址在线播放| 久久久黄色片| 中文字幕不卡免费高清视频| 亚洲一级无毛片无码在线免费视频| 欧美爱爱网| 久久久久人妻一区精品色奶水 | 国产精品午夜福利麻豆| 日韩中文无码av超清| 亚洲综合久久一本伊一区| 国产产在线精品亚洲aavv| 黄色网站不卡无码| 国产系列在线| 欧美亚洲国产日韩电影在线| 亚洲国产系列| 亚洲人成日本在线观看| 国产99免费视频| 国产日韩欧美精品区性色| 为你提供最新久久精品久久综合| 亚洲国产日韩视频观看| 超碰精品无码一区二区| 久久免费看片| 免费精品一区二区h|