本發(fā)明涉及船模自動控制技術(shù)領(lǐng)域,具體涉及一種柔性六自由度繩牽引的船模水池試驗控制方法和系統(tǒng)。
背景技術(shù):
船模拖曳水池試驗是水動力學(xué)實驗的一種解決方案,是使用船舶模型(簡稱:船模)試驗獲得船艦的運動、航速、推進功率及其他性能的試水池,試驗是由電動拖車牽引船模進行。拖曳方式有拖車式、重力式等。拖曳水池主要通過研究阻力和推進對各種船舶或節(jié)能設(shè)備(例如:電機節(jié)能設(shè)備、水處理節(jié)能設(shè)備)進行船型與推進系統(tǒng)的優(yōu)化設(shè)計。水池的尺度和拖曳速度可容納高速船(例如單體、多體、半滑行艇,滑行艇、表面效應(yīng)船等)的大型、自推進船模試驗。通過造波器產(chǎn)生的規(guī)則波和不規(guī)則波可檢驗船舶耐波性和舒適性。
請參閱圖1所示,為現(xiàn)有技術(shù)提供的拖車式船模試驗池示意圖。船模通過剛性支撐桿與拖車連接,船模的運動均由拖車驅(qū)動,拖車上設(shè)置有阻力儀,拖車通過滑動電弓和滑線連接,但由于剛性支撐桿的重量,會對船模產(chǎn)生一個向下的壓力,使得船模的姿態(tài)無法明顯地隨著波浪的變化而變化,導(dǎo)致測試數(shù)據(jù)存在誤差。
近年來,繩牽引并聯(lián)機構(gòu)以其精度高、承載力大、干擾小、重量輕以及慣性小等優(yōu)點,在醫(yī)療康復(fù)、重物裝卸、海底打撈、航空風(fēng)洞試驗等方面得到了實際應(yīng)用,和上述應(yīng)用領(lǐng)域不同的是,在進行船模阻力試驗時,船模除了受到空氣阻力,更多的受力來自于水流阻力和浮力,流體對船模的復(fù)雜作用效應(yīng),增加了繩長和繩拉力的控制難度;此外,船模阻力試驗要求航行過程中控制船模姿態(tài)不變。綜上所述,船模拖曳水池試驗過程中使用的繩牽引支撐機構(gòu)對繩長控制及船模姿態(tài)控制精度均提出了更高的要求。
目前繩牽引并聯(lián)機構(gòu)在其應(yīng)用領(lǐng)域內(nèi)均只針對繩長或姿態(tài)軌跡的控制精度單獨展開研究。例如文獻“萬曉正.平面繩牽引并聯(lián)機構(gòu)的控制研究[D].哈爾濱:哈爾濱工程大學(xué),2010”建立了基于DSPACE(Digital Space,數(shù)字空間)的三自由度平面繩牽引機器人的仿真平臺,上位機采用DSPACE半物理仿真平臺,下位機采用Atmegal128單片機,采用力/位并行閉環(huán)控制方法實現(xiàn)了機器人的三自由度運動。文獻“李世華.五自由度并聯(lián)機器人機構(gòu)控制研究[D].江蘇:江蘇大學(xué),2007”搭建了由計算機、固高控制卡、無刷直流電動機及驅(qū)動器、角位移傳感器等組成的五自由度并聯(lián)機器人試驗平臺,采用模糊控制算法實現(xiàn)機器人的五自由度運動。
但是上述兩種控制方法均用于無外力干擾下的運動控制,也沒有考慮到繩牽引并聯(lián)機構(gòu)中繩索為柔性情況下的精度控制,上述機器人的自由度運動控制和船模的阻力試驗場景具有很大差別,船模除了受到空氣阻力,更多的受力來自于水流阻力和浮力,流體對船模的復(fù)雜作用效應(yīng)致使上述繩牽引并聯(lián)機構(gòu)應(yīng)用于船模拖曳水池試驗時無法實現(xiàn)繩長控制以及船模姿態(tài)角控制的精確度,目前尚未給出繩牽引并聯(lián)機構(gòu)應(yīng)用于船模拖曳水池試驗時的船??刂品椒?。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種柔性六自由度繩牽引的船模水池試驗控制方法和系統(tǒng),用于在繩牽引并聯(lián)機構(gòu)應(yīng)用于船模拖曳水池試驗時對船模進行精確控制。
為了達到上述目的,本發(fā)明采用這樣的如下技術(shù)方案:
一方面,本發(fā)明提供一種柔性六自由度繩牽引的船模水池試驗控制方法,船模由電動拖車使用繩牽引并聯(lián)支撐機構(gòu)進行牽引運動,所述船模水池試驗控制方法包括:
主回路控制器通過所述船模內(nèi)配置的姿態(tài)角傳感器獲取到所述船模的姿態(tài)反饋信號,所述姿態(tài)反饋信號包括:采集所述船模當(dāng)前姿態(tài)得到的姿態(tài)角;
所述主回路控制器根據(jù)預(yù)置的目標(biāo)姿態(tài)角和所述姿態(tài)反饋信號計算所述船模分別連接的各個牽引繩的繩長調(diào)整量,并將計算出的每個牽引繩的繩長調(diào)整量發(fā)送給副回路控制器;
所述副回路控制器從所述主回路控制器獲取到所述船模分別連接的每個牽引繩的繩長調(diào)整量,以及通過所述每個牽引繩對應(yīng)的伺服電機分別獲取到脈沖反饋信號;
所述副回路控制器根據(jù)所述每個牽引繩的繩長調(diào)整量和每個伺服電機的脈沖反饋信號計算出所述船模分別連接的各個牽引繩的脈沖調(diào)整量,然后所述副回路控制器將計算出的每個牽引繩的脈沖調(diào)整量發(fā)送給各個牽引繩對應(yīng)的驅(qū)動器,由所述驅(qū)動器按照所述脈沖調(diào)整量控制對應(yīng)的伺服電機進行轉(zhuǎn)動,從而通過伺服電機的轉(zhuǎn)動控制傳動機構(gòu)的運動距離,實現(xiàn)對牽引繩的繩長變化控制,再通過牽引繩的繩長變化調(diào)整所述船模的當(dāng)前姿態(tài)。
另一方面,本發(fā)明提供一種柔性六自由度繩牽引的船模水池試驗控制系統(tǒng),船模由電動拖車使用繩牽引并聯(lián)支撐機構(gòu)進行牽引運動,所述船模水池試驗控制系統(tǒng)包括:主回路控制器和副回路控制器,所述主回路控制器和所述副回路控制器之間建立有通信連接,其中,所述主回路控制器,用于執(zhí)行前述一方面所述的主回路控制器執(zhí)行的步驟;所述副回路控制器,用于執(zhí)行前述一方面所述的副回路控制器執(zhí)行的步驟。
采用上述技術(shù)方案后,本發(fā)明提供的技術(shù)方案將有如下優(yōu)點:
本發(fā)明實施例中,針對傳統(tǒng)剛性支撐機構(gòu)下船模姿態(tài)變化不明顯、系統(tǒng)響應(yīng)速度慢等問題,提出采用繩牽引并聯(lián)支撐機構(gòu),將繩牽引并聯(lián)機構(gòu)應(yīng)用于船模拖曳水池試驗,改變了現(xiàn)有技術(shù)中使用剛性支撐桿連接船模和電動拖車,船模由電動拖車使用繩牽引并聯(lián)支撐機構(gòu)進行牽引運動,采用串級控制方法,由主回路控制器和副回路控制器共同用于對船模由繩牽引并聯(lián)支撐機構(gòu)進行牽引運動的控制。具體的,主回路控制器根據(jù)預(yù)置的目標(biāo)姿態(tài)角和姿態(tài)反饋信號計算船模分別連接的各個牽引繩的繩長調(diào)整量,并將計算出的每個牽引繩的繩長調(diào)整量發(fā)送給副回路控制器,副回路控制器根據(jù)每個牽引繩的繩長調(diào)整量和每個伺服電機的脈沖反饋信號計算出船模分別連接的各個牽引繩的脈沖調(diào)整量,然后副回路控制器將計算出的每個牽引繩的脈沖調(diào)整量發(fā)送給各個牽引繩對應(yīng)的驅(qū)動器,由驅(qū)動器按照脈沖調(diào)整量控制對應(yīng)的伺服電機進行轉(zhuǎn)動,從而通過伺服電機的轉(zhuǎn)動控制傳動機構(gòu)的運動距離,實現(xiàn)對牽引繩的繩長變化控制,再通過牽引繩的繩長變化調(diào)整船模的當(dāng)前姿態(tài)。本發(fā)明實施例中,副回路控制器控制牽引繩的長度,主回路控制器控制船模的姿態(tài),實現(xiàn)了使用繩牽引并聯(lián)支撐機構(gòu)應(yīng)用于船模時的繩長控制及船模姿態(tài)的精確控制。
附圖說明
圖1為現(xiàn)有技術(shù)中船模水池試驗控制方法使用剛性支撐桿的拖車式船模試驗池示意圖;
圖2為本發(fā)明實施例提供的柔性六自由度繩牽引的船模水池試驗控制方法的系統(tǒng)實現(xiàn)流程方框圖;
圖3為本發(fā)明實施例中船模所在坐標(biāo)系的示意圖;
圖4為本發(fā)明實施例提供的柔性六自由度繩牽引的船模水池試驗控制系統(tǒng)的硬件結(jié)構(gòu)示意圖;
圖5為本發(fā)明實施例提供的柔性六自由度繩牽引的船模水池試驗控制系統(tǒng)的整體軟件流程圖;
圖6為本發(fā)明實施例提供的柔性六自由度繩牽引的船模水池試驗控制方法中的副回路控制器單獨控制程序流程圖;
圖7為本發(fā)明實施例提供的生產(chǎn)者與消費者模式的示意圖;
圖8為本發(fā)明實施例提供的柔性六自由度繩牽引的船模水池試驗控制系統(tǒng)的組成結(jié)構(gòu)示意圖。
具體實施方式
本發(fā)明實施例提供了一種柔性六自由度繩牽引的船模水池試驗控制方法和系統(tǒng),用于在繩牽引并聯(lián)機構(gòu)應(yīng)用于船模拖曳水池試驗時對船模進行精確控制。
為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點能夠更加的明顯和易懂,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,下面所描述的實施例僅僅是本發(fā)明一部分實施例,而非全部實施例?;诒景l(fā)明中的實施例,本領(lǐng)域的技術(shù)人員所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,以便包含一系列單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于那些單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它單元。
現(xiàn)有技術(shù)中的繩牽引并聯(lián)機構(gòu)雖然有在于機器人試驗的方法,但是目前的控制方法均用于無外力干擾下的運動控制,也沒有考慮到繩牽引并聯(lián)機構(gòu)中繩索為柔性情況下的精度控制,上述機器人的自由度運動控制和船模的阻力試驗場景具有很大差別,船模除了受到空氣阻力,更多的受力來自于水流阻力和浮力,流體對船模的復(fù)雜作用效應(yīng)致使上述繩牽引并聯(lián)機構(gòu)應(yīng)用于船模拖曳水池試驗時無法實現(xiàn)繩長控制以及船模姿態(tài)角控制的精確度,本發(fā)明實施例可以解決繩牽引并聯(lián)機構(gòu)應(yīng)用于船模拖曳水池試驗時的船模精確控制問題,
本發(fā)明實施例提供的方法可應(yīng)用于船模拖曳水池阻力試驗,繩牽引并聯(lián)機構(gòu)作為船模支撐機構(gòu)可實現(xiàn)支撐機構(gòu)的控制系統(tǒng)獨立于拖車控制系統(tǒng),支撐機構(gòu)的控制系統(tǒng)可較好地控制船模的姿態(tài)隨著波浪的變化而變化,再現(xiàn)波浪的變化情況,提高測試數(shù)據(jù)的準(zhǔn)確性。本發(fā)明涉及一種六自由度繩牽引并聯(lián)機構(gòu)的運動控制方法,主要是實現(xiàn)船模繩牽引支撐機構(gòu)的柔性運動控制,用于實現(xiàn)船模的姿態(tài)控制,改變傳統(tǒng)船模水池試驗所采用的剛性支撐的拖曳模式。
本發(fā)明實施例中,船模和電動拖車之間使用繩牽引并聯(lián)支撐機構(gòu)進行連接,本發(fā)明實施例中的繩牽引并聯(lián)支撐機構(gòu)可以實現(xiàn)船模的六自由度控制,六自由度繩牽引并聯(lián)機構(gòu)表示的是該并聯(lián)機構(gòu)由繩索驅(qū)動,可實現(xiàn)六自由度運動,船模繩牽引支撐機構(gòu)表示的是該機構(gòu)用于支撐船模,該機構(gòu)由繩索驅(qū)動,機構(gòu)具有串聯(lián)機構(gòu)和并聯(lián)機構(gòu)之分,本發(fā)明實施例中的支撐機構(gòu)采用并聯(lián)機構(gòu)形式。并聯(lián)機構(gòu)是指動平臺和定平臺通過至少兩個獨立的運動鏈相連接,機構(gòu)具有兩個或兩個以上自由度,且以并聯(lián)方式驅(qū)動的一種閉環(huán)機構(gòu)。并聯(lián)機構(gòu)的組成可以包括:固定基座、具有n自由度的末端執(zhí)行器、不少于兩個獨立的運動鏈(即驅(qū)動器)。
針對現(xiàn)有技術(shù)存在的上述問題,本發(fā)明提供一種基于串級控制的船模姿態(tài)角控制方法,旨在提高船模姿態(tài)角控制精度和系統(tǒng)工作頻率。本發(fā)明提供的柔性六自由度繩牽引的船模水池試驗控制方法,船模由電動拖車使用繩牽引并聯(lián)支撐機構(gòu)進行牽引運動,船模水池試驗控制方法可以包括如下步驟:
步驟1、主回路控制器通過船模內(nèi)配置的姿態(tài)角傳感器獲取到船模的姿態(tài)反饋信號,姿態(tài)反饋信號包括:采集船模當(dāng)前姿態(tài)得到的姿態(tài)角;
步驟2、主回路控制器根據(jù)預(yù)置的目標(biāo)姿態(tài)角和姿態(tài)反饋信號計算船模分別連接的各個牽引繩的繩長調(diào)整量,并將計算出的每個牽引繩的繩長調(diào)整量發(fā)送給副回路控制器;
步驟3、副回路控制器從主回路控制器獲取到船模分別連接的每個牽引繩的繩長調(diào)整量,以及通過每個牽引繩對應(yīng)的伺服電機分別獲取到脈沖反饋信號;
步驟4、副回路控制器根據(jù)每個牽引繩的繩長調(diào)整量和每個伺服電機的脈沖反饋信號計算出船模分別連接的各個牽引繩的脈沖調(diào)整量,然后副回路控制器將計算出的每個牽引繩的脈沖調(diào)整量發(fā)送給各個牽引繩對應(yīng)的驅(qū)動器,由驅(qū)動器按照脈沖調(diào)整量控制對應(yīng)的伺服電機進行轉(zhuǎn)動,從而通過伺服電機的轉(zhuǎn)動控制傳動機構(gòu)的運動距離,實現(xiàn)對牽引繩的繩長變化控制,再通過牽引繩的繩長變化調(diào)整船模的當(dāng)前姿態(tài)。
在本發(fā)明實施例中,船模水池試驗控制系統(tǒng)采用串級控制方式,共包括有主回路控制器和副回路控制器,副回路控制器控制牽引繩的長度,主回路控制器控制船模的姿態(tài),實現(xiàn)了使用繩牽引并聯(lián)支撐機構(gòu)應(yīng)用于船模時的繩長控制及船模姿態(tài)的精確控制。
請參閱圖2所示,表示船模水池試驗控制方法的系統(tǒng)實現(xiàn)流程方框圖,以繩牽引并聯(lián)支撐機構(gòu)具有8根牽引繩來牽引船模為例進行說明,每根牽引繩上都配置有驅(qū)動器和伺服電機,Angle_r(k)是指給定船模姿態(tài)角,Pi(k)是指8根牽引繩繩長改變量,K為增益,Angle_y(k)是指船模姿態(tài)角輸出。伺服電機和驅(qū)動器是實現(xiàn)船模姿態(tài)控制的動力部件,運動控制卡發(fā)送脈沖給驅(qū)動器和伺服電機,電機轉(zhuǎn)動相應(yīng)的角度,控制直線導(dǎo)軌的運動距離,從而控制繩長的變化。
圖2所示,采用串級控制結(jié)構(gòu),在Clipper運動控制卡內(nèi)置PID反饋和速度/加速度前饋復(fù)合控制器(即副回路控制器)的基礎(chǔ)上,建立了基于船模姿態(tài)角反饋的閉環(huán)控制。副回路控制器對8根牽引繩的長度進行控制,8根牽引繩替換圖1中的支撐桿,控制精度由Clipper內(nèi)置的控制算法決定。主回路控制器控制船模姿態(tài)角。主回路控制器根據(jù)Angle_r(k)和姿態(tài)反饋信號得到e(k),再通過姿態(tài)角傳感器(羅經(jīng)儀)反饋3個旋轉(zhuǎn)角度(即姿態(tài)角),經(jīng)主回路控制器計算后得到各繩長的調(diào)整量(Δui(k))送副回路控制器。主回路采用PID和單神經(jīng)元PID控制算法進行嘗試。PID和單神經(jīng)元PID是兩種不同的控制算法,單神經(jīng)元PID是神經(jīng)網(wǎng)絡(luò)和PID算法的結(jié)合,具有自適應(yīng)和自學(xué)習(xí)功能。
在本發(fā)明的一些實施例中,步驟4中副回路控制器將計算出的每個牽引繩的脈沖調(diào)整量發(fā)送給各個牽引繩對應(yīng)的驅(qū)動器之后,本發(fā)明實施例提供的方法還包括如下步驟:
A1、主回路控制器通過姿態(tài)角傳感器獲取到船模由牽引繩牽引后的姿態(tài)反饋信號;
A2、主回路控制器根據(jù)船模由牽引繩牽引后的姿態(tài)反饋信號判斷船模調(diào)整后的當(dāng)前姿態(tài)是否達到預(yù)置的目標(biāo)姿態(tài);
A3、若船模調(diào)整后的當(dāng)前姿態(tài)達到預(yù)置的目標(biāo)姿態(tài),則主回路控制器結(jié)束對船模的姿態(tài)控制調(diào)整;
A4、若船模調(diào)整后的當(dāng)前姿態(tài)沒有達到預(yù)置的目標(biāo)姿態(tài),主回路控制器根據(jù)預(yù)置的目標(biāo)姿態(tài)角和船模由牽引繩牽引后的姿態(tài)反饋信號再次計算船模分別連接的各個牽引繩的繩長調(diào)整量,并將計算出的每個牽引繩的繩長調(diào)整量再次發(fā)送給副回路控制器。
其中,步驟A1至A4描述了主回路控制器對船模姿態(tài)角的實時控制過程,若通過主回路控制器和副回路控制器的控制,船模調(diào)整后的當(dāng)前姿態(tài)達到預(yù)置的目標(biāo)姿態(tài),則主回路控制器結(jié)束對船模的姿態(tài)控制調(diào)整,若船模調(diào)整后的當(dāng)前姿態(tài)沒有達到預(yù)置的目標(biāo)姿態(tài),則重新觸發(fā)執(zhí)行步驟1至步驟4直至船模調(diào)整后的當(dāng)前姿態(tài)達到預(yù)置的目標(biāo)姿態(tài),則主回路控制器結(jié)束對船模的姿態(tài)控制調(diào)整。其中,副回路控制器在主回路控制器的觸發(fā)下繼續(xù)向驅(qū)動器發(fā)送每個牽引繩的脈沖調(diào)整量。
在本發(fā)明的一些實施例中,步驟1主回路控制器通過船模內(nèi)配置的姿態(tài)角傳感器獲取到船模的姿態(tài)反饋信號之前,本發(fā)明實施例提供的方法還包括如下步驟:
B1、副回路控制器通過船模內(nèi)配置的姿態(tài)角傳感器獲取到船模的初始姿態(tài)信號,初始姿態(tài)信號包括:采集船模的初始姿態(tài)得到的初始姿態(tài)角;
B2、副回路控制器根據(jù)船模的初始姿態(tài)信號和預(yù)置的目標(biāo)姿態(tài)角計算船模在各個時刻的姿態(tài)角;
B3、副回路控制器通過運動學(xué)模型將船模在各個時刻的姿態(tài)角轉(zhuǎn)換為在各個時刻船模分別連接的每個牽引繩的脈沖調(diào)整量,然后副回路控制器將轉(zhuǎn)換得到的每個牽引繩的脈沖調(diào)整量發(fā)送給各個牽引繩對應(yīng)的驅(qū)動器,由驅(qū)動器按照脈沖調(diào)整量控制對應(yīng)的伺服電機進行轉(zhuǎn)動,從而通過伺服電機的轉(zhuǎn)動控制傳動機構(gòu)的運動距離,實現(xiàn)對牽引繩的繩長變化控制,再通過牽引繩的繩長變化調(diào)整船模的當(dāng)前姿態(tài);
B4、當(dāng)副回路控制器單獨控制船模的時間結(jié)束時,觸發(fā)執(zhí)行如下步驟:主回路控制器通過船模內(nèi)配置的姿態(tài)角傳感器獲取到船模的姿態(tài)反饋信號。
在步驟B1至步驟B4的實現(xiàn)場景下,步驟1執(zhí)行之前,本發(fā)明實施例還可以單獨采用副回路進行控制。由于姿態(tài)角控制程序需要進行姿態(tài)角軌跡及運動學(xué)計算比較費時,其中,運動學(xué)計算是已知船模在某一時刻相對于局部坐標(biāo)系的位姿計算8根牽引繩的有效長度。PMAC指令發(fā)送函數(shù)需要2~3ms的反饋時間,姿態(tài)角反饋采用無線傳輸方式亦比較費時,以及AD數(shù)據(jù)采集等因素,控制系統(tǒng)的采樣周期比較大,導(dǎo)致控制程序無法正常運行,故先采用副回路控制器單獨進行控制,當(dāng)運行時間結(jié)束時,再采用主副回路對姿態(tài)角進行調(diào)整。本發(fā)明實施例中步驟1至步驟4中是指采用主副回路控制器同時控制時主回路的作用。由于控制系統(tǒng)的采樣周期比較大,若一開始就使用主副回路控制器聯(lián)合控制,控制程序無法正常運行,故可以先采用副回路控制器對船模姿態(tài)進行控制,步驟1至步驟4中是兩個控制器起作用,步驟B1至步驟B4是副回路控制器起作用,本發(fā)明實施例不僅提高了船模姿態(tài)控制精度,加快系統(tǒng)的反應(yīng)速度,還增強了系統(tǒng)的抗干擾能力、自適應(yīng)能力,對于繩牽引并聯(lián)機構(gòu)控制系統(tǒng)具有通用性。
在本發(fā)明實施例中,當(dāng)副回路控制器的運行時間結(jié)束時,再采用主副回路對姿態(tài)角進行調(diào)整。副回路控制器對8根牽引繩的長度進行控制,控制精度由PMAC內(nèi)置的控制算法決定。主回路控制器控制船模姿態(tài)角。判斷船模是否到達目標(biāo)姿態(tài)角,到達目標(biāo)姿態(tài)角,則運行結(jié)束,未到達目標(biāo)姿態(tài),則繼續(xù)反饋船模姿態(tài)角至主回路控制器,直至運行到目標(biāo)姿態(tài)角。
進一步的,在本發(fā)明的另一些實施例中,步驟B2副回路控制器根據(jù)船模的初始姿態(tài)信號和預(yù)置的目標(biāo)姿態(tài)角計算船模在各個時刻的姿態(tài)角,包括:
B21、通過如下公式計算計算船模在各個時刻的姿態(tài)角:
其中,船模在各個時刻的姿態(tài)角包括:船模在各個時刻的俯仰角、橫傾角和旋轉(zhuǎn)角,a(t)表示船模在t時刻的俯仰角,b(t)表示船模在t時刻的橫傾角,c(t)表示船模在t時刻的旋轉(zhuǎn)角,
船模的初始姿態(tài)角包括:船模的初始俯仰角、初始橫傾角和初始旋轉(zhuǎn)角,a0表示船模的初始俯仰角,b0表示船模的初始橫傾角,c0表示船模的初始旋轉(zhuǎn)角,
船模的目標(biāo)姿態(tài)角包括:船模的目標(biāo)俯仰角、目標(biāo)橫傾角和目標(biāo)旋轉(zhuǎn)角,ad表示船模的目標(biāo)俯仰角,bd表示船模的目標(biāo)橫傾角,cd表示船模的目標(biāo)旋轉(zhuǎn)角,
T為副回路控制器單獨控制船模的總時間,t為0~T內(nèi)的任意一時間點,t按照預(yù)置的步長從0增加到T。
其中,副回路控制器實現(xiàn)本控制方法中,可以采用分時方法給定船模姿態(tài)角,防止8根牽引繩的運動速度過快。船模姿態(tài)角運動軌跡函數(shù)如上述公式(1),其中a(t)、b(t)、c(t)為各個時刻船模的姿態(tài)角,a0、b0、c0為船模的初始姿態(tài)角,ad、bd、cd為給定的目標(biāo)姿態(tài)角;T為總的運行時間,t為0~T內(nèi)的某一時間點,程序中t是一個自增10的時間序列數(shù),t以步長10從0增加到T,t的單位是ms。
如圖3所示為設(shè)計的機構(gòu)及坐標(biāo)系示意圖,將一長方框體固定在被控船模的上層建筑,8根牽引繩與長方體的8個角相連接,上下各4根牽引繩驅(qū)動,其中Ai(i=1,2,…,8)為8根牽引繩與滑輪的接觸點,Gi(i=1,2,…8)為8根牽引繩與長方框體的接觸點,虛線V2V4、V2V6、V8V4和V8V6用于放置4個伺服電機和直線導(dǎo)軌,可實現(xiàn)船模沿X軸、Y軸和Z軸三個方向移動及繞X軸、Y軸和Z軸三個方向轉(zhuǎn)動的六自由度運動。被控船模下方4根牽引繩與機架接觸點A2、A4、A6、A8形成的平面與船模的水線面相平或高于水線面,保證牽引繩和框架處于水流上方,不會對水流造成干擾。8個電機和8個直線導(dǎo)軌分別放置在支撐桿A1A3、A1A5、A3A7、A5A7、V2V4、V2V6、V4V8和V6V8上,8根支撐桿均可以上下移動,可根據(jù)試驗現(xiàn)場進行調(diào)整,確保8個電機和8個直線導(dǎo)軌不會對水流造成干擾,以及不會被弄濕。采用笛卡爾坐標(biāo)系同時對支撐機構(gòu)建立全局坐標(biāo)系和局部坐標(biāo)系,以便建立支撐機構(gòu)中各控制繩索的運動學(xué)模型。其中全局坐標(biāo)系以框架和底板地板接觸面的幾何中心O為原點,局部坐標(biāo)系以船模幾何中心點G為坐標(biāo)原點。
進一步的,在本發(fā)明的另一些實施例中,步驟B3副回路控制器通過運動學(xué)模型將船模在各個時刻的姿態(tài)角轉(zhuǎn)換為在各個時刻船模分別連接的每個牽引繩的脈沖調(diào)整量,包括:
B31、獲取船模分別連接的各個牽引繩的一端與滑輪的連接點Ai在全局坐標(biāo)系下的坐標(biāo)(XAi,YAi,ZAi),和另一端與船模的連接點Gi在局部坐標(biāo)系下的坐標(biāo)(xGi,yGi,zGi);
B32、根據(jù)Gi在局部坐標(biāo)系下的坐標(biāo)(xGi,yGi,zGi)計算出Gi在全局坐標(biāo)系下的坐標(biāo)OGi為:
其中,XG表示船模的重心G在全局坐標(biāo)系下的坐標(biāo),R為坐標(biāo)旋轉(zhuǎn)矩陣;
B33、根據(jù)Gi在全局坐標(biāo)系下的坐標(biāo)OGi和船模分別連接的各個牽引繩的一端與滑輪的連接點Ai計算出船模分別連接的每個牽引繩的向量為:
對向量進行取模計算得到船模分別連接的每個牽引繩的繩長調(diào)整量再將船模分別連接的每個牽引繩的繩長調(diào)整量轉(zhuǎn)換為船模分別連接的每個牽引繩的脈沖調(diào)整量。
具體的,將各個時刻船模姿態(tài)角代入運動學(xué)模型得到每個時間點8根牽引繩對應(yīng)的繩長改變量,并換算成脈沖量發(fā)送給PMAC運動控制卡。Clipper運動控制卡是PMAC運動控制卡的一種。
運動學(xué)模型為:已知8根牽引繩與滑輪的連接點Ai(i=1,2,…,8)在全局坐標(biāo)系的坐標(biāo)(XAi,YAi,ZAi),Gi(i=1,2,…,8)在局部坐標(biāo)系中的坐標(biāo)(xGi,yGi,zGi),通過坐標(biāo)旋轉(zhuǎn)矩陣可求得Gi在全局坐標(biāo)系中的坐標(biāo)為前述的公式(2),R為機構(gòu)的坐標(biāo)旋轉(zhuǎn)矩陣,Ai是8根牽引繩與滑輪的接觸點,在全局坐標(biāo)系中的坐標(biāo)是已知且固定的。Gi是8根牽引繩與船模的連接點,在局部坐標(biāo)系中的坐標(biāo)是已知且固定的。XG表示船模重心G在全局坐標(biāo)系中的坐標(biāo)。OGi的物理含義是Gi在全局坐標(biāo)系中的坐標(biāo),通過坐標(biāo)旋轉(zhuǎn)矩陣計算得到。
在本發(fā)明的一些實施例中,R為坐標(biāo)旋轉(zhuǎn)矩陣,R的實現(xiàn)方式舉例說明如下:
另外再結(jié)合公式(4),向量的模為所要求的8根牽引繩長度,8根牽引繩有8個向量,每個向量的模就是8根牽引繩對應(yīng)的繩長。
進一步的,在前述執(zhí)行步驟B1至步驟B4的實現(xiàn)場景下,在本發(fā)明的另一些實施例中,本發(fā)明實施例提供的方法還包括:
C1、副回路控制器通過船模分別連接的每個牽引繩上配置的拉力傳感器獲取到每個牽引繩的拉力信號,并實時顯示和存儲每個牽引繩的拉力信號。
其中,每個牽引繩上還可以設(shè)置拉力傳感器,則可以采集到拉力信號,副回路控制器實時顯示和存儲每個牽引繩的拉力信號,從而可以通過副回路控制器的顯示確定每個牽引繩在各個時刻的拉力信號。
在本發(fā)明的一些實施例中,主回路控制器和船模內(nèi)配置的姿態(tài)角傳感器之間建立有無線通信連接,步驟1主回路控制器通過船模內(nèi)配置的姿態(tài)角傳感器獲取到船模的姿態(tài)反饋信號,包括:
D1、主回路控制器通過無線通信連接從姿態(tài)角傳感器接收到船模的姿態(tài)反饋信號。
具體的,為了防止有線傳輸方式對牽引船模的八根牽引繩產(chǎn)生干擾,姿態(tài)角傳感器(例如陀螺儀)采集的船模姿態(tài)信號利用無線傳輸方式傳輸?shù)街骰芈房刂破鳎⑦M行數(shù)據(jù)解析和存儲。
進一步的,在前述執(zhí)行步驟1至步驟4的實現(xiàn)場景下,在本發(fā)明的另一些實施例中,本發(fā)明實施例提供的方法還包括:
E1、主回路控制器通過船模分別連接的每個牽引繩上配置的拉力傳感器獲取到每個牽引繩的拉力信號,并實時顯示和存儲每個牽引繩的拉力信號。
其中,每個牽引繩上還可以設(shè)置拉力傳感器,則可以采集到拉力信號,主回路控制器實時顯示和存儲每個牽引繩的拉力信號,從而可以通過主回路控制器的顯示確定每個牽引繩在各個時刻的拉力信號。
請參閱圖4所示,圖4表示控制系統(tǒng)的硬件結(jié)構(gòu)圖,控制系統(tǒng)的硬件平臺可以通過傳動模塊、電機驅(qū)動模塊、運動控制模塊、姿態(tài)測量模塊、牽引繩拉力測量模塊以及為系統(tǒng)供電的供電模塊等六部分組成。上位機通過以太網(wǎng)或串口和運動控制卡進行通信,通信建立成功時,根據(jù)運動學(xué)模型計算得到8根牽引繩的繩長變化量,向運動控制卡發(fā)送由8個繩長變化量換算得到的8路脈沖量或模擬量以控制8個伺服電機的轉(zhuǎn)動量和轉(zhuǎn)速,脈沖量其取值總是不斷的在0(低電平)和1(高電平)之間交替變化的數(shù)字量,模擬量是指連續(xù)變化的物理量??刂?個傳動機構(gòu)(例如直線導(dǎo)軌)運動,同步驅(qū)動8根牽引繩長度的變化,實現(xiàn)船模姿態(tài)的控制。其中,供電模塊主要是為伺服系統(tǒng)和信號放大器(這個模塊是和數(shù)據(jù)采集卡連在一起的,用于放大拉力傳感器信號以及濾波)提供安全和穩(wěn)定的電源。陀螺儀和拉力傳感器主要是完成船模姿態(tài)和牽引繩拉力的測量,為船模姿態(tài)的控制提供反饋量,以及為船模阻力的計算提供數(shù)據(jù)。為了防止有線傳輸方式對牽引船模的八根牽引繩產(chǎn)生干擾,陀螺儀采集的船模姿態(tài)信號利用無線傳輸方式傳輸?shù)缴衔粰C,并進行數(shù)據(jù)解析和存儲;8路拉力傳感器采集的拉力信號經(jīng)AD數(shù)據(jù)采集卡進行A/D轉(zhuǎn)換后通過USB傳輸?shù)缴衔粰C。限位開關(guān)用于回零和防止超限,限位是指超過滾珠絲桿的有效行程。
本發(fā)明實施例中,采用串級控制結(jié)構(gòu),在Clipper運動控制卡內(nèi)置PID反饋和速度/加速度前饋復(fù)合控制器的基礎(chǔ)上,建立了基于船模姿態(tài)角反饋的閉環(huán)控制。副回路控制器對8根牽引繩的長度進行控制,控制精度由Clipper內(nèi)置的控制算法決定。主回路控制器控制船模姿態(tài)角。主回路控制器通過姿態(tài)角傳感器(羅經(jīng)儀)反饋3個旋轉(zhuǎn)角度(即姿態(tài)角),經(jīng)主回路控制器計算后得到各繩長的調(diào)整量(Δui(k))送副回路控制器。主回路控制器采用PID和單神經(jīng)元PID控制算法進行嘗試。
在圖4所示硬件結(jié)構(gòu)中,伺服電機和驅(qū)動器是一個整體,每個電機配一個驅(qū)動器,PMAC運動控制卡發(fā)送脈沖給驅(qū)動器,從而驅(qū)動電機轉(zhuǎn)動。滾珠絲桿是用來改變繩長的,絲桿的一端與電機連接,電機的轉(zhuǎn)動帶動絲桿的轉(zhuǎn)動,控制絲桿上的滑塊平行運動,滑塊帶動繩子運動,限位開關(guān)可以設(shè)置16個,每個牽引繩上設(shè)置2個,限位開關(guān)的作用是防止滑塊超過絲桿的有效行程。
請參閱圖5所示,為控制系統(tǒng)整體軟件流程圖,系統(tǒng)上電后,初始化Clipper運動控制卡和A/D數(shù)據(jù)采集卡,包括建立和上位機的通訊,使能伺服電機,設(shè)置控制器參數(shù)、串口參數(shù)和數(shù)據(jù)采集卡參數(shù)。給定目標(biāo)姿態(tài)角和運行時間,進行位置逆解計算和脈沖量換算,發(fā)送脈沖給副回路控制器進行控制,并采集姿態(tài)角和拉力信號,實時顯示和存儲;運行時間到時,采用主副回路進行控制。反饋姿態(tài)角到主回路控制器,進行位置逆解計算和脈沖量換算,發(fā)送脈沖給副回路控制器進行控制,并采集姿態(tài)和拉力信號,實時顯示和存儲。判斷被控模型是否到達目標(biāo)姿態(tài)角,到達目標(biāo)姿態(tài)角,則運行結(jié)束,未到達目標(biāo)姿態(tài),則繼續(xù)反饋被控模型姿態(tài)角至主回路控制器,直至運行到目標(biāo)姿態(tài)角。
請參閱圖6所示,為副回路單獨控制程序流程圖,首先給定初始姿態(tài)角參數(shù)ad、bd、cd、a0、b0、c0和運行總時間T,創(chuàng)建數(shù)值隊列;根據(jù)式(1)計算a(t),將(X(0),Y(0),Z(0),a(t),b(0),c(0))代入公式(2)到式(4)計算繩長變化量S1,S2,…,S8;將繩長變化量轉(zhuǎn)換為脈沖量,發(fā)送對應(yīng)脈沖量控制被控模型的俯仰角;將時間t寫入隊列,并令t自加10,當(dāng)t等于T時,結(jié)束控制程序,并解除隊列的引用。采集程序從隊列中讀取時間t,t小于T時,采集并顯示俯仰角;當(dāng)t等于T時,結(jié)束采集程序。
在本發(fā)明的一些實施例中,請參閱圖7所示,為了降低數(shù)據(jù)采集程序和控制程序之間的耦合,保證控制程序的正常運行,采用生產(chǎn)者與消費者軟件設(shè)計模式,其原理如圖7所示,其中,控制進程為生產(chǎn)者,數(shù)據(jù)采集進程為消費者,兩者之間通過隊列緩沖區(qū)進行通信,只有控制進程運行后,數(shù)據(jù)采集進程才采集數(shù)據(jù),兩者之間是相互獨立的。
接下來請參閱圖8所示,為本發(fā)明實施例提供的一種柔性六自由度繩牽引的船模水池試驗控制系統(tǒng),船模由電動拖車使用繩牽引并聯(lián)支撐機構(gòu)進行牽引運動,所述船模水池試驗控制系統(tǒng)包括:主回路控制器和副回路控制器,所述主回路控制器和所述副回路控制器之間建立有通信連接,
其中,所述主回路控制器,用于執(zhí)行前述實施例中所述的主回路控制器執(zhí)行的步驟;
所述副回路控制器,用于執(zhí)行前述實施例中所述的副回路控制器執(zhí)行的步驟。
進一步的,在本發(fā)明的一些實施例中,所述船模內(nèi)設(shè)置有運動控制卡,所述副回路控制器通過所述運動控制器向所述船模分別連接的每個牽引繩對應(yīng)的驅(qū)動器發(fā)送控制信號以及采集反饋信號。
本發(fā)明實施例中,針對傳統(tǒng)剛性支撐機構(gòu)下船模姿態(tài)變化不明顯、系統(tǒng)響應(yīng)速度慢等問題,采用繩牽引并聯(lián)支撐機構(gòu)。針對船模繩牽引支撐機構(gòu)對繩長控制及船模姿態(tài)控制精度要求高,采用串級控制方法,副回路控制8根牽引繩的長度,主回路控制船模姿態(tài),不僅提高了船模姿態(tài)控制精度,加快系統(tǒng)的反應(yīng)速度,還增強了系統(tǒng)的抗干擾能力、自適應(yīng)能力,對于繩牽引并聯(lián)機構(gòu)控制系統(tǒng)具有通用性。
另外需說明的是,以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。另外,本發(fā)明提供的裝置實施例附圖中,模塊之間的連接關(guān)系表示它們之間具有通信連接,具體可以實現(xiàn)為一條或多條通信總線或信號線。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
通過以上的實施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來實現(xiàn),當(dāng)然也可以通過專用硬件包括專用集成電路、專用CPU、專用存儲器、專用元器件等來實現(xiàn)。一般情況下,凡由計算機程序完成的功能都可以很容易地用相應(yīng)的硬件來實現(xiàn),而且,用來實現(xiàn)同一功能的具體硬件結(jié)構(gòu)也可以是多種多樣的,例如模擬電路、數(shù)字電路或?qū)S秒娐返?。但是,對本發(fā)明而言更多情況下軟件程序?qū)崿F(xiàn)是更佳的實施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在可讀取的存儲介質(zhì)中,如計算機的軟盤、U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。
綜上所述,以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照上述實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對上述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。