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

基于FPGA的靜力加載譜生成與控制算法研究

2021-06-30 12:44:36王家樂
計算機測量與控制 2021年6期
關鍵詞:信號

王 萌,張 靜,王家樂

(北京強度環境研究所,北京 100076)

0 引言

結構靜力試驗技術,是用試驗的方法觀察和研究構件或結構在靜載荷作用下的剛度、強度和穩定性,分析其應力分布和變形情況。靜力加載試驗,是用試驗技術和設備模擬復現載荷、邊界條件和疲勞極限,它不僅是驗證結構形式的合理性和結構靜力分析正確性的重要手段,而且為建立新的分析模型和工程理論提供結構特性參數,在產品鑒定、安全評估提供試驗資料和實測數據,為研制新型導彈與運載火箭積累設計資料,對改進結構設計減小結構質量與提高產品可靠性等方面均起著重大作用。

在進行結構靜力試驗中,按試驗載荷類型分類,可分為分布載荷試驗,單一載荷試驗和組合載荷試驗[1]。在加載控制中需要對試驗條件下的載荷進行生成和控制,成熟的多通道靜力加載控制系統基本由國外壟斷,國外相關產品,如MOOG和MTS產品功能完備,可靠性高,但與航天靜力試驗規范、操作流程等并不完全匹配。本文通過分析國內試驗流程,參照經典譜參數設置方式實現譜的生成與控制,開發基于FPGA的可執行的加載譜生成、命令控制算法與程序,滿足現有控制中對加載譜和命令的操作,實現單載荷步和多載荷步的生成與控制[2-3]。

1 加載譜生成算法

在靜力加載試驗中,加載情況多為分級加載、單調緩慢加載和循環加載。每一級加載用一個載荷步表示,多個載荷步組合成為試驗加載譜。在經典譜參數設置中,上位機操作者可以根據試驗需求定義多個不同的目標值,每個目標值為一個數組,用于表示多通道的目標值,然后根據目標值、曲線類型、時間和循環次數等參數定義不同的載荷步。選取不同的載荷步形成一個載荷步組,不同的載荷步組及其重復次數組成一個大載荷步,不同的大載荷步及其重復次數組成一個試驗譜,即加載譜[4-7]。

在譜生成算法中,首先基于以上參數將加載譜組裝成一個個載荷步;第二步獲取一個周期的基本點,1 024或2 048個點;第三步以半周期點為基礎,通過查表、插值算法形成當前控制頻率下的一個載荷步的信號;第四步將各個載荷步的信號進行連接,形成加載譜信號,并根據不同試驗要求實現加載譜生成過程中的各種控制[8-9]。

一個載荷步信號是從起始值到目標值的離散點的集合,形成該信號需要的參數包括曲線類型、所用時間、次數、起始值和目標值。其中曲線類型指從起始值到目標值的曲線形式,如折線和正弦等,圖1為一個周期內的三角波和正弦波曲線樣式;起始值到目標值的過程為半周期波形(0~1);所用時間指信號生成過程中由起始值到達目標值所用的時間;次數是指達到目標值后返回原值再次到達目標值的次數(1~0~1),即循環次數[10-11]。

圖1 曲線基本點

載荷步信號是由基本曲線點通過插值生成的。基本點為一個周期內的1 024個等間隔點(1~1 024)的取值,如圖1所示。為提高精度,也可以在某一種信號中選取2 048個值作為基本點。基本點為0~1~0的過程(不包含首個0點)。在固定采樣頻率下,根據所用時間參數可以計算出載荷步信號離散點的數量N,通過對前半周期基本點進行查表、插值,可以得到0~1的N個離散點,將離散點通過運算可得到由起始值到目標值的離散點。同樣的,通過對后半周期基本點進行查表、插值可得到目標值到起始值的N個離散點,對離散點進行組合即可得到多次到達目標值的離散點,即載荷步信號,如圖2所示[12-14]。

圖2 載荷步算法

在加載譜中,載荷步與載荷步之間是連續的,一個載荷步的起始值為上一個載荷步的目標值或生成中斷后的終值,根據載荷步信號生成算法可以對加載譜中所有相鄰兩個載荷步的離散信號進行連接,最后得到整個加載譜的離散信號。

2 加載譜的FPGA實現

2.1 單載荷步信號生成

曲線基本點可通過LabVIEW RT中的提供的函數計算出一個周期內的三角波和正弦波基本點數據,通過DMA FIFO存儲到FPGA基本點寄存器的不同地址中,RT同樣通過DMA FIFO將載荷步參數發送到FPGA并存儲在參數寄存器中。FPGA根據載荷步參數,選擇一個波形基本點后對其進行相位累加、查表、線性插值和半周期計數,得到歸一化的載荷步信號,如圖3所示。

圖3 載荷步生成算法FPGA實現

對曲線基本點進行查表、插值是將當前點相位的一部分字節長度作為地址進行查表,一部分字節長度做線性插值運算。每經過一次基本點數據的查表與計算,相位便進行一次累加,累加量與曲線的頻率(由載荷步的時間參數計算獲得)和當前采樣頻率有關。對于正弦信號,其相位角φ、角速度ω和頻率f的關系如下:

(1)

在采樣頻率固定的情況下,對于離散系統而言(采樣周期Δt為固定值),有:

φ(n)=φ0+2πnfΔt

(2)

采樣頻率R=1/Δt,則:

(3)

上述公式表述了歸一化的累加相位pn與曲線頻率f和采樣頻率R之間的關系,相位pn的周期為1,該公式對于三角波同樣適用。

在FPGA程序中,設置pn的數據格式為無符號的32位定點類型,而基本點在寄存器中的存儲類型為無符號16位定點類型。基本點數量為1 024時,每兩個基本點之間需進行27次插值。相位pn的高10位(210=1 024)對應著基本點在寄存器中的存儲地址,可用于查表索引,高10位之后的7位(27),其大小與插值次數對應,每完成兩個基本點之間的所有插值后,便向高10位進1,基本點的存儲地址便加1,插值次數歸零。插值次數n可用于線性插值計算插入點yn:

yn=(ypn10+1-ypn10)×xpn7+ypn10

(4)

其中:ypn10是由相位pn的高10位作為查表的地址從基本點寄存器中索引到的基本點,ypn10+1是緊鄰ypn10的下一個基本點,xp7是由相位pn的后高7位的大小決定的一個[0,1)之間的數值。若基本點數量為2 048,每兩個基本點之間則進行26次插值,相位pn的高11位對應著2 048個基本點的存儲地址,高11位之后的6位,大小與插值次數對應。

查表插值計算在FPGA上是實時進行的,每滿半周期便計數1次,若載荷步參數中循環次數為m,則共計數2m-1后停止計算,并將數值1代替計算出的插值,保持數值1實時輸出。輸出的新數值點同樣為歸一化數據,與目標值和起始值的差值進行比例運算得到從起始值到目標值的具體增量,再與起始值進行累加得到當前載荷步的輸出信號。

2.2 多載荷步信號生成

多載荷步信號生成采用載荷步信號拼接的方式實現。由于試驗譜參數設置比較復雜,在程序實現上,首先在RT上對其參數進行處理,如圖4所示,將目標值添加進入載荷步參數中,載荷步組、大載荷步和載荷譜參數按執行順序組成由載荷步編號形成的數組,通過數組序號可索引到載荷步編號,再根據編號索引到對應的具體載荷步,綜上所述,加載譜是一個個載荷步按順序組成的集合體。

圖4 RT中對試驗譜參數的處理

由于在不同的載荷步組中載荷步可任意組合和重復,在大載荷步中載荷步組也具有重復次數等,所以形成的載荷步編號數組的數量有可能會很大。考慮FPGA的資源問題和載荷步信號之間的連續性,使用兩個參數寄存器或一個參數寄存器的兩個地址分別存儲連續的兩個載荷步參數,在FPGA中通過交替索引和順序更新實現載荷步的連接。如圖5所示,在RT中存儲所有載荷步的參數和載荷步編號數組,試驗加載譜按照載荷步編號數組的索引序號順序生成相應的載荷步信號。開始運行后,按照數組序號的奇偶性分別將第1、2個載荷步的參數和序號(序號分別為0和1)存儲在對應的寄存器或同一寄存器的兩個地址中。按存儲到不同寄存器為例,FPGA首先選擇“參數寄存器0”進行載荷步信號的生成,生成完成后立即切換到“參數寄存器1”生成第2個載荷步,FPGA通過移位寄存器實時存儲生成信號的當前值。第1個載荷步生成完成后的最終值會作為第2個載荷步的起始值,這樣能夠將兩個載荷步順利連接起來。同時FPGA將當前載荷步運行完畢的信息上傳到RT,RT根據該信息將序號為2的載荷步參數和序號下發到FPGA并存儲在“參數寄存器0”中。FPGA通過交替索引和更新寄存器實現所有載荷步之間的順利連接。

圖5 試驗譜運行流程

在參數寄存器中存儲的載荷步序號信息用于確定當前運行的載荷步在載荷譜中的位置,載荷步數組大小值在開始運行前通過“讀寫節點”發送到FPGA,當載荷步序號等于載荷步數組的大小值-1時,譜段將不再更新,運行完該載荷步后停止運行。

基于以上算法和程序,在FPGA上生成了一個試驗加載譜信號,該譜由三個載荷步組成,如表1和如圖6所示,信號的采樣頻率為2 kHz。載荷步與載荷步之間實現了平滑連接。

表1 加載譜信號參數

圖6 加載譜信號

2.3 載荷步信號控制

在試驗譜信號生成過程中,試驗人員可對其進行控制,包括停止到零、譜的單步調節、單點控制、選擇譜段控制、運行下一載荷步、控制方式切換等。

停止到零是一個特殊的載荷步,其作用是在試驗譜生成過程中停止譜的生成,并將信號恢復到零的過程或譜運行完成后自動恢復到零的過程。停止到零載荷步的目標值為0,次數為1,將其參數存儲到“參數寄存器2”中。當監測到最后一個載荷步(序號等于載荷步數組大小值-1)且運行完畢后,FPGA索引該參數寄存器;或在載荷步生成過程中,通過主動控制直接切換索引,以便能夠在加載完成后或過載狀態下卸載。

在靜力加載試驗中,除實時運行試驗譜外,還能夠進行載荷步的逐級加載,即一次加載只運行一個載荷步然后保持加載值,此時就需要對譜進行“單步調節”。“單步調節”的FPGA實現中,僅需通過DMA FIFO發送該載荷步參數信息且序號參數設置為1,總的載荷步數量設置為1即可,運行完該載荷步后不會觸發停止到零載荷步,實現保持最終加載值的輸出。

譜的“單點控制”與“單步調節”類似,不同之處在于該控制方法可以重新設置目標值、時間、曲線等參數。在RT中需要將其參數重新組裝成載荷步參數,之后按照“單步調節”的方式下發信息,實現上位機操作者的任意加載設置。

“選擇譜段控制”指在設置好的試驗譜中,不需要從第一個載荷步開始生成信號,而是可以任意選擇一個載荷步作為起始載荷步進行加載。根據選擇的譜段信息,在RT中索引到該載荷步和其下一載荷步,將參數和序號下發到FPGA進行信號生成即可,后續試驗譜段的執行與原試驗譜運行方式完全相同。

“運行下一載荷步”指在當前載荷步停止后,根據試驗譜載荷步的順序生成下一個載荷步的信號,生成完成后停止。其在FPGA的實現中與譜的“單步調節”類似,不同之處在于不需要在RT中選擇某個載荷步,而是直接在設置好的試驗譜中選擇下一個序號的載荷步,然后下發參數信息和序號即可。

在靜力加載試驗中,控制方式分為位移控制和力控制兩種,“控制方式切換”是指位移信號和力信號轉換反饋的過程。力控切換到位控時,為保持輸出信號沒有較大的變化(當前位置和受力不變),加載譜需保持當前輸出,等到控制參數切換后輸出信號需立即切換為位移反饋量,同時試驗譜由加載譜更換為位移譜。位移譜一般為相對量,在參數下發到FPGA中后需根據當前反饋轉換為絕對量。

3 加載譜信號分析

由于插值點與實際點有誤差,對于16位插值來說,分辨率為3.05176E-5,如果不是其整數倍,均會導致誤差的存在,16位基本點的取值如表2所示。

表2 16位曲線基本點的取值

正弦基本點中最大間隔為:

sin(n2)-sin(n1)=0.00308228

三角曲線基本點為等間隔,y(n2)-y(n1)=0.001 953 12,得出最大插入點數量為101,為計算方便,在FPGA的實現上進行128(27)次插值,以充分利用16位的分辨率。

控制頻率設置為2 kHz,通過對載荷步時間參數的設置,在FPGA上分別實現0.1 Hz、1 Hz、20 Hz和300 Hz頻率的載荷步生成,選取頻率所產生的信號數據均不為1 024的整數倍或整數分之一,同時最后的輸出值要保證數值1的輸出,查表插值后會產生一個較大的誤差。通過對信號數據和上位機參考數據進行比較,得到的誤差如表3所示,其歸一化誤差均在0.01%以內。在FPGA實現上,為保證控制的一致性,將力控的壓力值和位移控制的長度值均通過靈敏度和數據格式轉換,形成有符號的16位定點數,取值范圍為±16,可與±10 V量程的傳感器匹配。此時起始值與目標值差值的最大比例系數為32,其誤差仍能夠控制在0.01%以內。

表3 誤差表

在載荷步連接過程中,控制程序是通過切換參數寄存器的方式實現的,由于參數寄存器中信息的更新需要RT與FPGA相互配合,二者在數據傳輸中存在時間差,該時間差對載荷步的總持續時間有影響。RT與FPGA的交互信息是通過“讀寫節點”進行的,該通訊是實時的,然而RT在對其進行監測時的最大時間間隔為10 ms。為保證RT將新載荷步信息下發并存儲到空閑的參數寄存器中,以實現載荷步的順利連接,每個載荷步的總持續時間不能少于10 ms。通過使用cRIO-9035進行加載譜生成試驗,結合硬件資源實現了八通道加載譜不同目標值的生成與控制過程,各通道采用串行運算方式,單通道循環一次用時約50 ns,綜合其他控制算法FPGA可實現50 kHz控制頻率的信號生成。

4 結束語

本文研究的靜力加載譜生成和控制算法,在FPGA上實現了加載譜的信號生成和控制手段,滿足了當前靜力試驗的加載操作需求。該算法通過利用RT與FPGA的信息交互,合理分配了計算資源。綜合FPGA的資源配置,能夠對控制通道進行擴展。通過對生成的加載譜信號進行分析,其誤差在靜力加載的允許誤差范圍內,滿足靜力加載試驗的單通道或多通道同步控制需求。對于多通道獨立控制,在FPGA上需獨立完成加載譜的寄存和實時解析功能,同時不同通道載荷步的切換與更新互不干擾,生成的加載譜與位控和力控的PID控制算法相配合,以實現靜力加載控制器的試驗驗證。

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 亚洲乱强伦| 欧美97色| 天天做天天爱夜夜爽毛片毛片| 日本国产在线| 国产午夜小视频| 欧美专区日韩专区| 欧美午夜视频| 欧美日韩成人在线观看| 在线观看欧美精品二区| 2021无码专区人妻系列日韩| 国产日本一线在线观看免费| 亚洲中文字幕在线精品一区| 亚洲无线视频| 亚洲Aⅴ无码专区在线观看q| 91久久夜色精品国产网站| 久久一本精品久久久ー99| 国产精品hd在线播放| 国产精品专区第一页在线观看| 国产美女在线观看| 亚洲欧美自拍中文| 制服丝袜一区| 欧美亚洲日韩中文| 精品1区2区3区| 国产在线视频福利资源站| 宅男噜噜噜66国产在线观看| av大片在线无码免费| 日本91视频| 热热久久狠狠偷偷色男同| 国产精欧美一区二区三区| 亚洲资源站av无码网址| 精品视频在线一区| 99中文字幕亚洲一区二区| 99无码中文字幕视频| 国产欧美日韩另类| 亚洲中文字幕精品| 囯产av无码片毛片一级| 六月婷婷激情综合| 日韩欧美国产区| 自拍偷拍欧美日韩| 人妻91无码色偷偷色噜噜噜| 无码精油按摩潮喷在线播放| 香蕉久人久人青草青草| 99在线视频网站| 欧美精品二区| 国产精品免费p区| 国产一级视频久久| 日韩成人午夜| 国产美女精品人人做人人爽| 国产亚洲欧美在线专区| 国产精品久久久久无码网站| 国产一区二区三区在线观看视频| 国产精品高清国产三级囯产AV| 日本人又色又爽的视频| 国产精品污污在线观看网站| 亚洲A∨无码精品午夜在线观看| 香港一级毛片免费看| 色综合久久88色综合天天提莫 | 国产一区三区二区中文在线| 手机在线免费毛片| 人妻中文久热无码丝袜| 成人中文字幕在线| 亚洲精品卡2卡3卡4卡5卡区| 黄色片中文字幕| 91九色视频网| 午夜福利视频一区| 91精品视频播放| 久久精品aⅴ无码中文字幕| 久久中文无码精品| 亚洲一区二区成人| 日韩欧美高清视频| 在线免费观看AV| 少妇高潮惨叫久久久久久| 国产成人精品高清不卡在线| 久久久国产精品免费视频| 最新午夜男女福利片视频| 国产一区亚洲一区| 日韩毛片在线播放| 国产丝袜丝视频在线观看| 国产专区综合另类日韩一区| 中国一级特黄视频| 2021国产v亚洲v天堂无码| 成人福利在线免费观看|