喬棟,謝亞龍,楊宏娟,姚濤,張清瑞,李博文
(1.山西大同大學(xué)建筑與測(cè)繪工程學(xué)院,山西大同 037003;2.山西大同大學(xué)煤炭工程學(xué)院,山西大同 037003;3.山西大同大學(xué)機(jī)電工程學(xué)院,山西大同 037003;4.河北工業(yè)大學(xué)機(jī)械工程學(xué)院,天津 300401)
海波發(fā)電工程領(lǐng)域中,波浪作用在波能轉(zhuǎn)換裝置上,會(huì)使其產(chǎn)生隨波浪起伏垂蕩、橫搖與縱搖運(yùn)動(dòng),從而吸收波浪的機(jī)械能。對(duì)波浪浮體的運(yùn)動(dòng)進(jìn)行模擬,將有利于分析波浪發(fā)電裝置的工作情況及波能轉(zhuǎn)化效率。并聯(lián)機(jī)構(gòu)能夠?qū)崿F(xiàn)空間多自由度運(yùn)動(dòng),具有剛度大、承載能力強(qiáng)、運(yùn)動(dòng)精度高等優(yōu)點(diǎn),基于并聯(lián)機(jī)構(gòu)的運(yùn)動(dòng)模擬裝置能較好體現(xiàn)波浪浮體的動(dòng)態(tài)穩(wěn)定性及其可靠性。
近年來(lái),針對(duì)并聯(lián)機(jī)構(gòu)運(yùn)動(dòng)模擬系統(tǒng)的運(yùn)動(dòng)學(xué)、動(dòng)力學(xué)理論以及控制策略的關(guān)鍵性技術(shù)研究較多。波浪浮體運(yùn)動(dòng)仿真方面,王小東等建立了浮體平臺(tái)橫搖運(yùn)動(dòng)模型并在長(zhǎng)峰波隨機(jī)海浪下對(duì)其橫搖運(yùn)動(dòng)進(jìn)行了仿真。周云華等針對(duì)現(xiàn)有船艦海況模擬平臺(tái)指標(biāo)制定上的不足,提出等效搖擺參數(shù)的概念,按照橫搖、縱搖幅值、周期不變的情況,改變等效搖擺參數(shù)。皮陽(yáng)軍等利用六自由度運(yùn)動(dòng)模擬器復(fù)現(xiàn)隨機(jī)海浪譜,對(duì)船載設(shè)備進(jìn)行環(huán)境模擬實(shí)驗(yàn)。李曉、彭利坤基于并聯(lián)六自由度運(yùn)動(dòng)模擬平臺(tái)引入隨機(jī)波浪模型,分析不同風(fēng)浪等級(jí)對(duì)船艦姿態(tài)的影響。楊軍宏等基于ADAMS進(jìn)行了船舶運(yùn)動(dòng)模擬器及其液壓驅(qū)動(dòng)系統(tǒng)的設(shè)計(jì)與動(dòng)力學(xué)仿真。
在并聯(lián)機(jī)構(gòu)控制器的研究中,王益群、張澤強(qiáng)研究了并聯(lián)機(jī)構(gòu)伺服系統(tǒng)對(duì)編碼器的控制,并進(jìn)行了仿真分析。王藝博針對(duì)并聯(lián)機(jī)器人的運(yùn)動(dòng)控制系統(tǒng),對(duì)其核心處理器SPI運(yùn)動(dòng)處理器單元進(jìn)行深入分析。姚莉君等以并聯(lián)機(jī)構(gòu)動(dòng)平臺(tái)為控制對(duì)象,通過(guò)輸入動(dòng)平臺(tái)的規(guī)劃軌跡,以PID作為控制器,調(diào)節(jié)PID參數(shù)使動(dòng)平臺(tái)按照規(guī)定軌跡運(yùn)行。鄭魁敬和趙永生研究并聯(lián)機(jī)床運(yùn)動(dòng)控制技術(shù),采用PMAC運(yùn)動(dòng)控制卡和PC平臺(tái),運(yùn)動(dòng)系統(tǒng)采用“PC機(jī)+運(yùn)動(dòng)控制卡”結(jié)構(gòu)。盧若豐等設(shè)計(jì)了一種基于舵機(jī)的Stewart平臺(tái)設(shè)計(jì),采用Arduino單片機(jī)控制。
不同海洋條件對(duì)浮體會(huì)造成不同程度的搖擺、顛簸、垂蕩等,通常會(huì)呈現(xiàn)垂蕩、縱蕩、橫蕩、橫搖、縱搖、艏搖6種剛體運(yùn)動(dòng)位姿。一般地,風(fēng)力不大于4級(jí)時(shí),海況不大于3級(jí),浮體搖擺度不大于5°,波浪周期為2~4 s。
假定浮體在規(guī)則波中作微幅振蕩,可以將浮體在波浪作用下的運(yùn)動(dòng)和力簡(jiǎn)化成線性問(wèn)題。根據(jù)勢(shì)波理論將波浪的運(yùn)動(dòng)簡(jiǎn)化為正弦函數(shù),可以表示為
(1)
其中:為運(yùn)動(dòng)幅值;為運(yùn)動(dòng)頻率;為運(yùn)動(dòng)相位角。研究中假定波浪浮體的運(yùn)動(dòng)與波浪的運(yùn)動(dòng)變化一致,浮體運(yùn)動(dòng)周期為2~4 s,搖擺角不大于5°。
基于6-RSS并聯(lián)機(jī)構(gòu)構(gòu)型,設(shè)計(jì)了一種波浪浮體運(yùn)動(dòng)模擬器,結(jié)構(gòu)簡(jiǎn)圖如圖1所示。機(jī)構(gòu)通過(guò)6條支鏈與上下兩平臺(tái)連接。支鏈采用球頭拉桿與上下平臺(tái)形成球鉸副,兩端可實(shí)現(xiàn)自由轉(zhuǎn)動(dòng)。下平臺(tái)由兩層固定底座構(gòu)成,作為機(jī)構(gòu)的靜平臺(tái),驅(qū)動(dòng)電機(jī)置于機(jī)座上,從而減小了運(yùn)動(dòng)負(fù)荷。動(dòng)平臺(tái)相鄰鉸點(diǎn)構(gòu)成的長(zhǎng)邊與靜平臺(tái)相鄰鉸點(diǎn)構(gòu)成的短邊相互平行。6個(gè)擺桿長(zhǎng)度相同,舵機(jī)搖臂與擺桿形成曲柄連桿機(jī)構(gòu)。
圖1 6-RSS機(jī)構(gòu)三維模型
建立動(dòng)、靜兩個(gè)坐標(biāo)系:-為靜坐標(biāo)系,即慣性坐標(biāo)系,原點(diǎn)在下平臺(tái)鉸接點(diǎn)所形成的六邊形幾何中心;′-′′′為動(dòng)坐標(biāo)系,原點(diǎn)在上平臺(tái)鉸接點(diǎn)形成的六邊形幾何中心。各支鏈形成的矢量關(guān)系如圖2所示。
圖2 矢量分析簡(jiǎn)圖
下平臺(tái)6個(gè)鉸接點(diǎn),,…,在靜坐標(biāo)系中的坐標(biāo)向量用矩陣表示,其中第1列的第1行至第3行元素分別表示點(diǎn)在靜坐標(biāo)系中的軸、軸、軸的坐標(biāo)量,其余各列與第一列意義相似。
(2)
式中:是下平臺(tái)的鉸接點(diǎn)形成的分布圓的半徑值;為鉸接點(diǎn)相對(duì)于軸的偏移角度,即上平臺(tái)各鉸接點(diǎn)分布角;為下平臺(tái)鉸接點(diǎn)離下平臺(tái)質(zhì)心的高度。為方便下文中的計(jì)算表達(dá)式,將矩陣中三角函數(shù)后的角度值用表示。
上平臺(tái)6個(gè)鉸接點(diǎn)在動(dòng)坐標(biāo)系中的坐標(biāo)向量用矩陣表示,其中第1列的第1行至第3行元素分別表示點(diǎn)在動(dòng)坐標(biāo)系中的′軸、′軸、軸的坐標(biāo)量,其余各列與第一列意義相似。可得:
(3)
式中:是下平臺(tái)的鉸接點(diǎn)形成的分布圓的半徑值;為鉸接點(diǎn)相對(duì)于′軸的偏移角度,即上平臺(tái)各鉸接點(diǎn)分布角;為上平臺(tái)鉸接點(diǎn)離上平臺(tái)質(zhì)心的高度。將矩陣中三角函數(shù)后的角度值用表示。
動(dòng)坐標(biāo)系中的通過(guò)坐標(biāo)變換可以得到慣性坐標(biāo)系中的:
=+
(4)
式中:為旋轉(zhuǎn)矩陣;為上平臺(tái)質(zhì)心在慣性坐標(biāo)系的坐標(biāo)。
描述轉(zhuǎn)動(dòng)剛體相對(duì)參考系的姿態(tài)可以用3個(gè)角度作為廣義坐標(biāo),這3個(gè)角為動(dòng)坐標(biāo)系與靜坐標(biāo)系下的姿態(tài)角(,,),也稱作歐拉角。它們用于描述剛體相對(duì)于靜坐標(biāo)系的姿態(tài),由3個(gè)歐拉角構(gòu)成的旋轉(zhuǎn)矩陣為
(5)
式中:c=cos,c=cos,c=cos,s=sin,s=sin,s=sin,以此類推。
為上平臺(tái)質(zhì)心坐標(biāo)在慣性坐標(biāo)系的坐標(biāo):
=(,,)
(6)
由上式求解可得,即上平臺(tái)6個(gè)鉸接點(diǎn)在慣性坐標(biāo)系中的坐標(biāo),即=,進(jìn)而得到向量。向量分析如圖3所示。
圖3 向量分析簡(jiǎn)圖
若動(dòng)平臺(tái)與靜平臺(tái)中間給定任意點(diǎn),則坐標(biāo)可由以下式子得到:
=[coscoscossincos]
=1,2,…,6
(7)
式中:是舵機(jī)的轉(zhuǎn)角;是向量與正方向的夾角;是舵機(jī)搖臂長(zhǎng)度。向量通過(guò)下式求解:
=-
(8)
聯(lián)立上式,可得唯一未知變量轉(zhuǎn)角。
(9)
因?yàn)閨|=,所以:
(-ccs-sscc+csc+csc+
ss++s-cc)+(-css-
sssc-ccc+css-sc+-
c-cs)+(ss-scc+cc+
--c)=
=2,=2(++)
則原式為
c-c+=0
(10)
因?yàn)槎鏅C(jī)搖臂轉(zhuǎn)角在(0,π/2)之間,所以
(11)
依據(jù)并聯(lián)機(jī)構(gòu)運(yùn)動(dòng)學(xué)反解的數(shù)學(xué)推導(dǎo),在MATLAB/Simulink中建立位姿逆解仿真模型。如圖4所示。
圖4 位姿反解仿真模型
設(shè)置旋轉(zhuǎn)變量與、平移變量均為零,平移變量輸入為=129+6sin(3),即上平臺(tái)在[123,135]區(qū)間內(nèi)上下垂蕩。各舵機(jī)搖臂轉(zhuǎn)角變化仿真結(jié)果如圖5所示。可以看出:、、位置舵機(jī)搖臂轉(zhuǎn)角最大值約為174°,最小值約為141°,、、位置舵機(jī)搖臂轉(zhuǎn)角最大值約為39.6°,最小值約為5.7°,6個(gè)舵機(jī)轉(zhuǎn)角變化趨勢(shì)相同。
圖5 波浪浮體垂蕩運(yùn)動(dòng)舵機(jī)搖臂轉(zhuǎn)角變化
、平移變量輸入為零,平移變量輸入為=129,、旋轉(zhuǎn)變量輸入值為零,角度變量輸入為=(π/40)sin(3),即上平臺(tái)在[-π/40,π/40]區(qū)間內(nèi)繞軸縱搖。仿真結(jié)果如圖6所示,位置舵機(jī)搖臂轉(zhuǎn)角最大值約為35.6°,最小值約為8.3°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為176°,最小值約為137°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為26°,最小值約為16°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為164°,最小值約為154°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為42°,最小值約為3.8°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為172°,最小值約為144°。、、、位置舵機(jī)搖臂轉(zhuǎn)角變化趨勢(shì)相同,、位置舵機(jī)搖臂轉(zhuǎn)角變化趨勢(shì)相同,且、、、與、位置舵機(jī)關(guān)于軸對(duì)稱,且變化趨勢(shì)相反,運(yùn)動(dòng)平臺(tái)實(shí)現(xiàn)了繞軸的縱搖。
圖6 波浪浮體縱搖運(yùn)動(dòng)舵機(jī)搖臂轉(zhuǎn)角變化
、平移變量輸入為零,平移變量輸入為=129。角度變量輸入為=(π/40)sin(3),、角度輸入變量輸入為零,即上平臺(tái)在[-π/40,π/40]區(qū)間內(nèi)繞軸做橫搖運(yùn)動(dòng)。仿真結(jié)果如圖7所示:位置舵機(jī)搖臂轉(zhuǎn)角最大值約為35.6°,最小值約為8.3°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為164°,最小值約為154°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為42°,最小值約為3.8°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為176°,最小值約為137°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為26°,最小值約為16°;位置舵機(jī)搖臂轉(zhuǎn)角最大值約為172°,最小值約為144°。、、位置舵機(jī)搖臂轉(zhuǎn)角變化趨勢(shì)相同,、、位置舵機(jī)搖臂轉(zhuǎn)角變化趨勢(shì)相同,且、、與、、位置舵機(jī)關(guān)于軸對(duì)稱,且變化趨勢(shì)相反,運(yùn)動(dòng)平臺(tái)實(shí)現(xiàn)了繞軸的橫搖。
圖7 模擬波浪橫蕩各舵機(jī)搖臂轉(zhuǎn)角變化曲線
運(yùn)動(dòng)平臺(tái)的控制采用Arduino控制器。在串口監(jiān)視器中分別輸入3個(gè)位移坐標(biāo)變量、、和3個(gè)位姿角、、。系統(tǒng)運(yùn)行代碼計(jì)算對(duì)應(yīng)每個(gè)舵機(jī)轉(zhuǎn)動(dòng)的角度,上平臺(tái)即可實(shí)現(xiàn)相應(yīng)的運(yùn)動(dòng)位置。整體方案包括舵機(jī)執(zhí)行模塊和串口通信模塊。通過(guò)插補(bǔ)完成輪廓起點(diǎn)到終點(diǎn)之間的中間點(diǎn)坐標(biāo)計(jì)算,并進(jìn)行脈沖分配,從而控制6個(gè)舵機(jī)實(shí)現(xiàn)垂蕩、橫蕩、縱蕩3個(gè)自由度的運(yùn)動(dòng)模擬。直線插補(bǔ)流程如圖8所示。上平臺(tái)從(0,0,123)垂蕩運(yùn)動(dòng)到(0,0,135),直線插補(bǔ)函數(shù)值:chabu_line(0,0,123,0,0,135,1,10)。上平臺(tái)繞軸從(0,π/40,0)縱搖運(yùn)動(dòng)到(0,-π/40,0),直線插補(bǔ)函數(shù)值:Ola_angle(0,π/40,0,0,-π/40,0,0,0,129)。即,繞軸縱搖。上平臺(tái)從(π/40,0,0)繞軸縱搖運(yùn)動(dòng)到(-π/40,0,0),直線插補(bǔ)函數(shù)值改為:Ola_angle(π/40,0,0,-π/40,0,0,0,0,129)?;赑ROTUES的控制器設(shè)計(jì)、PROTUES軟件中搭建的控制系統(tǒng)原理分別如圖9、圖10所示。
圖8 直線插補(bǔ)流程
圖9 基于PROTUES的控制器設(shè)計(jì)
圖10 PROTUES軟件中搭建的控制系統(tǒng)原理
控制Stewart運(yùn)動(dòng)平臺(tái)橫搖的程序?qū)階rduino Mega單片機(jī),控制MPU6050加速度計(jì)和陀螺儀的程序?qū)階rduino UNO單片機(jī),機(jī)構(gòu)控制系統(tǒng)垂蕩、橫搖與縱搖運(yùn)動(dòng)位姿變化實(shí)驗(yàn)測(cè)試如圖11所示。
圖11 垂蕩-橫搖-縱搖實(shí)驗(yàn)測(cè)試
實(shí)驗(yàn)測(cè)試中,使運(yùn)動(dòng)平臺(tái)實(shí)現(xiàn)繞軸在[-π/40,π/40]角度之間的橫搖。圖12中MPU6050加速度計(jì)顯示了平臺(tái)繞軸的橫搖角,角度變化從0°到4°,再?gòu)?°到0°;從0°到-4°,再?gòu)?4°到0°,滿足實(shí)驗(yàn)預(yù)期結(jié)果。運(yùn)動(dòng)平臺(tái)實(shí)現(xiàn)繞Y軸發(fā)生縱搖,期望角度變化范圍為[-π/40,π/40],運(yùn)動(dòng)平臺(tái)實(shí)驗(yàn)結(jié)果如圖13所示,縱搖角呈現(xiàn)從0°到-4°,再?gòu)?4°到0°;從0°到4.5°,再?gòu)?.5°到0°的變化趨勢(shì),與期望姿態(tài)變化保持一致。
圖12 橫搖角實(shí)測(cè)值 圖13 縱搖角實(shí)測(cè)值
基于6-RSS并聯(lián)機(jī)構(gòu)的控制系統(tǒng)實(shí)驗(yàn)平臺(tái)可以模擬波浪的垂蕩、縱搖和橫搖3個(gè)自由度的運(yùn)動(dòng),但是從數(shù)據(jù)可以看到,運(yùn)動(dòng)平臺(tái)縱搖運(yùn)動(dòng)角度范圍為(-4°,4.5°),運(yùn)動(dòng)平臺(tái)橫搖運(yùn)動(dòng)角度范圍為(-4°,4°),與實(shí)驗(yàn)輸入的角度值(-π/40,π/40)即(-4.5°,4.5°)存在誤差。分析誤差的原因:(1)來(lái)自于Stewart模型的機(jī)械連接的誤差,比如球面副、轉(zhuǎn)動(dòng)副連接部分,還有上下平臺(tái)連接桿的長(zhǎng)度存在誤差,導(dǎo)致運(yùn)動(dòng)平臺(tái)的角度值不準(zhǔn)確;(2)舵機(jī)的運(yùn)動(dòng)精度問(wèn)題,并聯(lián)機(jī)構(gòu)是6個(gè)舵機(jī),不同舵機(jī)之間存在的誤差導(dǎo)致運(yùn)動(dòng)精度無(wú)法保證;(3)程序可以進(jìn)一步優(yōu)化,使得舵機(jī)的響應(yīng)更加迅速。
結(jié)合多自由度運(yùn)動(dòng)模擬器的工程應(yīng)用背景,設(shè)計(jì)了一種基于6-RSS并聯(lián)機(jī)構(gòu)的波浪浮體運(yùn)動(dòng)模擬裝置,并在給定波浪激勵(lì)下進(jìn)行了浮體的垂蕩、縱搖、橫搖運(yùn)動(dòng)建模與仿真;通過(guò)推導(dǎo)6-RSS型并聯(lián)機(jī)構(gòu)的運(yùn)動(dòng)學(xué)反解模型,獲得了對(duì)應(yīng)給定波浪浮體姿態(tài)下的舵機(jī)輸入驅(qū)動(dòng)角,同時(shí)通過(guò)直線插補(bǔ)完成了浮體運(yùn)動(dòng)的軌跡控制;然后建立了基于PROTUES單片機(jī)的電路仿真模型,完成了波浪浮體平臺(tái)的運(yùn)動(dòng)仿真;最后通過(guò)采用Arduino Mega單片機(jī),MPU6050加速度計(jì)和陀螺儀搭建了運(yùn)動(dòng)實(shí)驗(yàn)平臺(tái),實(shí)驗(yàn)結(jié)果表明浮體在波浪作用下的運(yùn)動(dòng)姿態(tài)能很好地完成復(fù)現(xiàn),驗(yàn)證了所建立模型的正確性。