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的光電伺服控制軟件調試工具。該調試工具為開發人員提供了連續、實時、直觀的調試環境,提高了調試效率。

主站蜘蛛池模板: 看国产一级毛片| 特级做a爰片毛片免费69| 久久福利网| 国产高潮流白浆视频| 久久婷婷六月| 波多野结衣一区二区三视频| 国产精品永久久久久| 免费观看国产小粉嫩喷水| 中文无码精品A∨在线观看不卡| 不卡视频国产| 亚洲综合一区国产精品| 欧美一级高清片欧美国产欧美| 免费毛片视频| 亚洲欧美日韩中文字幕在线| 免费aa毛片| 久久人与动人物A级毛片| 精品国产自在现线看久久| 亚洲中文字幕国产av| 97精品久久久大香线焦| www.youjizz.com久久| 国产人人乐人人爱| 国产91色在线| 国产一级妓女av网站| 国产制服丝袜无码视频| 国产97视频在线| 无码AV动漫| 99久久99视频| 国产高清在线丝袜精品一区| 国产欧美在线| 午夜少妇精品视频小电影| 看国产毛片| 亚洲 欧美 中文 AⅤ在线视频| 99re热精品视频中文字幕不卡| 亚洲中文字幕精品| 免费毛片视频| 国产黄网永久免费| 日本AⅤ精品一区二区三区日| 亚洲国产成人精品无码区性色| 中文字幕首页系列人妻| 亚洲日韩精品欧美中文字幕| 亚洲美女一级毛片| 国产丝袜第一页| 中国精品自拍| 日韩区欧美区| 久久久精品无码一二三区| 国产精品成人啪精品视频| 日韩毛片视频| 国产乱人视频免费观看| 成人国产精品网站在线看| 人妻少妇久久久久久97人妻| 欧美视频在线播放观看免费福利资源| 日韩人妻无码制服丝袜视频| 国产成人啪视频一区二区三区| 伊人大杳蕉中文无码| 伊人久久综在合线亚洲91| 真人高潮娇喘嗯啊在线观看| 日韩欧美综合在线制服| 免费无码AV片在线观看国产| 成人国产小视频| 精品少妇人妻一区二区| 99尹人香蕉国产免费天天拍| 亚洲成网777777国产精品| 亚洲美女视频一区| 色婷婷亚洲综合五月| 亚洲三级影院| 九色国产在线| 2020国产精品视频| 在线欧美国产| 欧美日本激情| 91在线激情在线观看| 18禁不卡免费网站| 丰满少妇αⅴ无码区| 亚洲最新在线| 特级毛片8级毛片免费观看| 精品国产污污免费网站| 久久99精品国产麻豆宅宅| 久久一日本道色综合久久| 91精品国产一区| 欧美日韩国产精品综合| 97精品国产高清久久久久蜜芽| 3344在线观看无码| jizz在线观看|