本發(fā)明涉及虛擬現(xiàn)實技術領域,尤其涉及一種運動座椅控制方法及系統(tǒng)。
背景技術:
隨著虛擬現(xiàn)實(virtualreality,vr)技術的發(fā)展,出現(xiàn)了越來越多的六自由度動感游戲模擬裝置,例如運動座椅。運動座椅包括運動平臺和座椅兩部分,運動平臺可帶動座椅模擬vr場景中的翻滾、俯仰等多種動作,使得用戶坐在運動座椅上可以擁有逼真的臨場體驗感。
現(xiàn)有運動座椅模擬vr場景中的翻滾、俯仰等多種動作的過程包括:將vr場景中的運動數(shù)據(jù)解析為地面坐標系三個方向上的線加速度和繞所述地面坐標系三個方向的角速度;采用濾波器洗出設計,從各方向的線加速度或角速度中過濾出各方向上體感較明顯的線加速度或角速度;再將過濾出的各方向上的線加速度或角速度反解為運動平臺的位移量;根據(jù)所述位移量控制運動平臺運動,以帶動座椅實現(xiàn)相應的動作。
通過上述過程,運動座椅基本上可以原樣跟隨vr場景中的動作。但是,當vr場景中的動作變化較快或動作幅度較大時,運動座椅原樣跟隨vr場景中的動作,會使運動體感較生硬,不夠柔和;另外,當vr場景中的動作變化較慢或動作幅度較小時,運動座椅原樣跟隨vr場景中的動作,運動座椅的運動幅度較小,運動體感不明顯。
技術實現(xiàn)要素:
本發(fā)明的多個方面提供一種運動座椅控制方法及系統(tǒng),用以解決運動體感生硬、不柔和或體感不明顯的缺陷,提供更加柔化、明顯的運動體感。
本發(fā)明提供一種運動座椅控制方法,包括:
接收vr場景中的動作數(shù)據(jù),并根據(jù)所述vr場景中的動作數(shù)據(jù),生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù);
確定所述至少一個方向中具有中位點的方向,作為可回退方向;
當所述可回退方向上的動作參數(shù)小于所述可回退方向上的參數(shù)臨界值時,控制所述運動平臺在所述可回退方向上以小于所述可回退方向上的參數(shù)臨界值的動作參數(shù)帶動所述座椅回退至所述可回退方向的中位點。
可選地,在所述控制所述運動平臺在所述可回退方向上以小于所述可回退方向上的參數(shù)臨界值的動作參數(shù)帶動所述座椅回退至所述可回退方向的中位點之后,所述方法還包括:
當所述可回退方向上的動作參數(shù)重新大于或等于所述可回退方向上的參數(shù)臨界值時,控制所述運動平臺在所述可回退方向上以所述可回退方向上的動作參數(shù)帶動所述座椅自所述中位點開始動作。
可選地,所述根據(jù)vr場景中的動作數(shù)據(jù),生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù),包括:
將所述vr場景中的動作數(shù)據(jù),解析為地面坐標系的x軸、y軸、z軸方向上的線加速度和繞x軸、y軸、z軸方向上的角速度;
其中,所述地面坐標系的原點位于所述運動平臺的上支架平臺的中心位置;所述y軸為垂直于地面的坐標軸;所述x軸為與所述y軸垂直,且與初始狀態(tài)的運動座椅的橫向軸線平行的坐標軸;所述z軸為與所述y軸垂直,且與初始狀態(tài)的運動座椅的縱向軸線平行的坐標軸。
可選地,所述確定所述至少一個方向中具有中位點的方向,作為可回退方向,包括:
從所述地面坐標系的x軸、y軸、z軸方向和所述繞x軸、y軸、z軸方向中,確定所述y軸方向以及所述繞y軸方向作為所述可回退方向。
可選地,所述當所述可回退方向上的動作參數(shù)小于所述可回退方向上的參數(shù)臨界值時,控制所述運動平臺在所述可回退方向上以小于所述可回退方向上的參數(shù)臨界值的動作參數(shù)帶動所述座椅回退至所述可回退方向的中位點,包括:
當所述y軸方向上的線加速度小于所述y軸方向上的線加速度臨界值時,控制所述運動平臺在所述y軸方向上以小于所述y軸方向上的線加速度臨界值的線加速度帶動所述座椅回退至所述y軸方向的中位點;和/或
當所述繞y軸方向上的角速度小于所述繞y軸方向上的角速度臨界值時,控制所述運動平臺在所述繞y軸方向上以小于所述繞y軸方向上的角速度臨界值的角速度帶動所述座椅回退至所述繞y軸方向的中位點。
可選地,所述控制所述運動平臺在所述y軸方向上以小于所述y軸方向上的線加速度臨界值的線加速度帶動所述座椅回退至所述y軸方向的中位點,包括:
按照所述y軸方向?qū)淖儞Q關系,將小于所述y軸方向上的線加速度臨界值的線加速度變換為所述運動平臺帶動所述座椅上下動作時的位移值;
根據(jù)所述運動平臺帶動所述座椅上下動作時的位移值,驅(qū)動所述運動平臺帶動所述座椅上下動作,直至所述y軸方向的中位點;
所述控制所述運動平臺在所述繞y軸方向上以小于所述繞y軸方向上的角速度臨界值的角速度帶動所述座椅回退至所述繞y軸方向的中位點,包括:
按照所述繞y軸方向?qū)淖儞Q關系,將小于所述繞y軸方向上的角速度臨界值的角速度變換為所述運動平臺帶動所述座椅偏航動作時的偏航角;
根據(jù)所述運動平臺帶動所述座椅偏航動作時的偏航角,驅(qū)動所述運動平臺帶動所述座椅偏航動作,直至所述繞y軸方向上的中位點。
可選地,所述運動座椅控制方法還包括:
按照所述x軸方向?qū)淖儞Q關系,將所述x軸方向上的線加速度變換為所述運動平臺帶動所述座椅翻滾動作時的翻滾角,根據(jù)所述運動平臺帶動所述座椅翻滾動作時的翻滾角,驅(qū)動所述運動平臺帶動所述座椅翻滾動作;和/或
按照所述z軸方向?qū)淖儞Q關系,將所述z軸方向上的線加速度變換為所述運動平臺帶動所述座椅俯仰動作時的俯仰角,根據(jù)所述運動平臺帶動所述座椅俯仰動作時的俯仰角,驅(qū)動所述運動平臺帶動所述座椅俯仰動作;和/或
按照所述繞x軸方向的變換關系,將所述繞x軸方向上的角速度變換為所述運動平臺帶動所述座椅俯仰動作時的俯仰角,根據(jù)所述運動平臺帶動所述座椅俯仰動作時的俯仰角,驅(qū)動所述運動平臺帶動所述座椅俯仰動作;和/或
按照所述繞z軸方向的變換關系,將所述繞z軸方向上的角速度變換為所述運動平臺帶動所述座椅翻滾動作時的翻滾角,根據(jù)所述運動平臺帶動所述座椅翻滾動作時的翻滾角,驅(qū)動所述運動平臺帶動所述座椅翻滾動作。
本發(fā)明還提供一種運動座椅控制系統(tǒng),包括:
運動座椅控制裝置以及與所述運動座椅控制裝置適配的游戲平臺;
其中,所述運動座椅控制裝置包括:
生成模塊,用于接收vr場景中的動作數(shù)據(jù),并根據(jù)所述vr場景中的動作數(shù)據(jù),生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù);
確定模塊,用于確定所述至少一個方向中具有中位點的方向,作為可回退方向;
控制模塊,用于在所述可回退方向上的動作參數(shù)小于所述可回退方向上的參數(shù)臨界值時,控制所述運動平臺在所述可回退方向上以小于所述可回退方向上的參數(shù)臨界值的動作參數(shù)帶動所述座椅回退至所述可回退方向的中位點;
所述游戲平臺用于獲取所述vr場景中的動作數(shù)據(jù),并將獲取的所述vr場景中的動作數(shù)據(jù)發(fā)送至所述運動座椅控制裝置。
可選地,所述控制模塊還用于:
當所述可回退方向上的動作參數(shù)重新大于或等于所述可回退方向上的參數(shù)臨界值時,控制所述運動平臺在所述可回退方向上以所述可回退方向上的動作參數(shù)帶動所述座椅自所述中位點開始動作。
可選地,所述生成模塊還用于:
將所述vr場景中的動作數(shù)據(jù),解析為地面坐標系三個方向上的線加速度和繞所述地面坐標系三個方向上的角速度。
本發(fā)明中,當可回退方向上的動作參數(shù)小于參數(shù)臨界值時,可以控制運動平臺帶動座椅回退到該方向的中位點,因此能夠利用運動座椅動作速度較慢或速度變化較慢、用戶無明顯體感的時機,使運動座椅回退到可回退方向的中位點,以為下次動作做好準備,柔化了運動體感,解決了現(xiàn)有技術存在的運動體感生硬、不柔和或體感不明顯的缺陷。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本發(fā)明的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:
圖1為本發(fā)明一實施例提供的運動座椅控制方法的流程示意圖;
圖2為本發(fā)明又一實施例提供的運動座椅的結構示意圖;
圖3為本發(fā)明又一實施例提供的運動座椅在y軸方向上的動作速度曲線圖;
圖4為本發(fā)明又一實施例提供的運動座椅控制系統(tǒng)的模塊結構圖。
具體實施方式
為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明具體實施例及相應的附圖對本發(fā)明技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
以下結合附圖,詳細說明本發(fā)明各實施例提供的技術方案。
圖1為本發(fā)明一實施例提供的運動座椅控制方法的流程示意圖。如圖1所示,該方法包括以下步驟:
s101:接收vr場景中的動作數(shù)據(jù),并根據(jù)vr場景中的動作數(shù)據(jù),生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù)。
s102:確定所述至少一個方向中具有中位點的方向,作為可回退方向。
s103:當所述可回退方向上的動作參數(shù)小于所述可回退方向上的參數(shù)臨界值時,控制所述運動平臺在所述可回退方向上以小于所述可回退方向上的參數(shù)臨界值的動作參數(shù)帶動所述座椅回退至所述可回退方向的中位點。
本實施例中,運動座椅包括運動平臺以及位于運動平臺之上的座椅,在用戶坐在座椅上準備體驗vr游戲時,首先由一游戲平臺加載并運行vr游戲。可選地,游戲平臺可以為一vr頭戴設備或電腦。在游戲平臺運行vr游戲的過程中,可以實時獲取vr場景中的動作數(shù)據(jù),并將獲取的vr場景中的動作數(shù)據(jù)發(fā)送至運動座椅。進而運動座椅可以接收vr場景中的動作數(shù)據(jù),通過運動平臺帶動座椅以模擬vr場景中的動作。
可選地,vr場景中的動作數(shù)據(jù)可以包括但不限于攝像機的運動數(shù)據(jù)、三維點坐標數(shù)據(jù)等。這些動作數(shù)據(jù)一般相對于龐大的運動場景或攝像機而言,不能直接供較小的運動平臺使用??蛇x地,可以將vr場景中的動作數(shù)據(jù)生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù)。
其中,運動平臺帶動座椅動作所需的動作參數(shù)可以是適配座椅的運動所對應的動作參數(shù)。至少一個方向為運動平臺帶動座椅所能夠動作的方向。
在一示例中,至少一個方向包括垂直地面向上的方向,則在垂直地面向上的方向上,運動平臺帶動座椅動作所需的動作參數(shù)可以是適配運動座椅垂直地面向上動作所對應的動作參數(shù),例如,位移-20cm-20cm、速度0.3m/s等。
在另一示例中,至少一個方向包括繞穿過運動座椅的地心軸的方向,則在繞穿過運動座椅的地心軸的方向上,運動平臺帶動座椅動作所需的動作參數(shù)可以是適配運動座椅在繞穿過運動座椅的地心軸的方向上動作所對應的動作參數(shù),例如,角度5°、角速度10°/s等。
對至少一個方向中的每個方向來說,可以具有中位點,也可以不具有中位點。對于具有中位點的方向來說,從該方向的中位點開始,運動平臺可以帶動座椅朝正方向動作也可以朝負方向動作。優(yōu)選地,正、負方向能夠動作的最遠距離相同。其中,至少一個方向中具有中位點的方向,可作為本實施例中的可回退方向。
當在可回退方向上,運動平臺帶動座椅動作的速度較慢或者速度變化較慢時,帶給用戶的體感比較不明顯。此時,可以利用運動座椅動作速度較慢或速度變化較慢的時機,使運動座椅回退到可回退方向的中位點,以為下次動作做好準備。
可選地,判斷可回退方向上的動作參數(shù)是否小于可回退方向上的參數(shù)臨界值,其中,可回退方向上的參數(shù)臨界值可以根據(jù)用戶體感的敏感度確定。若是,意味著運動平臺根據(jù)可回退方向上的動作參數(shù)進行動作時,用戶無明顯體感。此時,可以生成一控制信號,以控制運動平臺在可回退方向上以小于可回退方向上的參數(shù)臨界值的動作參數(shù)帶動座椅回退至可回退方向的中位點。同樣的,由于運動平臺回退時依照的動作參數(shù)小于可回退方向上的參數(shù)臨界值,用戶也無明顯體感,避免使用戶的體感不真實。
可選地,不同的可回退方向上的參數(shù)臨界值可以相同也可以不同。本領域技術人員能夠理解的是,可回退方向上的動作參數(shù)以及可回退方向上的參數(shù)臨界值可能包括正負兩種情況,為方便比較,本實施例以及下述實施例中在比較可回退方向上的動作參數(shù)與可回退方向上的參數(shù)臨界值的大小時,均使用絕對值進行比較。
本實施例中,當可回退方向上的動作參數(shù)小于參數(shù)臨界值時,可以控制運動平臺帶動座椅回退到該方向的中位點,因此能夠利用運動座椅動作速度較慢或速度變化較慢、用戶無明顯體感的時機,使運動座椅回退到可回退方向的中位點,以為下次動作做好準備,柔化了運動體感,解決了現(xiàn)有技術存在的運動體感生硬、不柔和或體感不明顯的缺陷。
本實施例達到了以下技術效果:降低運動平臺所需的運動空間,減少硬件設計成本,提高運動座椅的可靠性;而且,控制運動平臺以小于可回退方向上的參數(shù)臨界值的動作參數(shù)回退,用戶也無明顯體感,避免運動平臺體感的不真實。
在上述實施例或下述實施例中,可以在運動平臺帶動座椅動作的整個過程中,始終執(zhí)行可回退方向上的動作參數(shù)與可回退方向上的參數(shù)臨界值的大小判斷操作,并根據(jù)判斷結果控制運動平臺是否帶動座椅執(zhí)行回退操作,直到運動座椅停止動作?;诖?,在控制運動平臺在可回退方向上以小于可回退方向上的參數(shù)臨界值的動作參數(shù)帶動座椅回退至可回退方向的中位點之后,vr場景中的動作仍在繼續(xù),運動平臺仍需帶動座椅在各方向上動作。對于可回退方向,結合實際應用場景,可分為以下兩種情況:
第一種情況:在運動平臺帶動座椅回退至可回退方向的中位點之后,基于后續(xù)vr場景中的動作所生成的可回退方向上的動作參數(shù)依舊小于可回退方向上的參數(shù)臨界值,此時,即使控制運動平臺以該可回退方向上的動作參數(shù)帶動座椅動作,用戶也無明顯體感。因此,可以不必控制運動平臺帶動座椅在可回退方向上動作,即運動平臺繼續(xù)處于可回退方向的中位點位置。
第二種情況:與第一種情況相反,在運動平臺帶動座椅回退至可回退方向的中位點之后,基于后續(xù)vr場景中的動作所生成的可回退方向上的動作參數(shù)重新大于或等于可回退方向上的參數(shù)臨界值時,此時,需要生成控制信號以控制運動平臺在可回退方向上以可回退方向上的動作參數(shù)帶動座椅自中位點開始動作。
可選地,若在運動平臺帶動座椅回退至中位點之前,判定基于后續(xù)vr場景中的動作所生成的可回退方向上的動作參數(shù)重新大于或等于可回退方向上的參數(shù)臨界值,則可以控制運動平臺在可回退方向上以可回退方向上的動作參數(shù)帶動座椅自當前位置開始動作。
在上述實施例或下述實施例中,根據(jù)vr場景中的動作數(shù)據(jù),生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù),包括:將vr場景中的動作數(shù)據(jù),解析為地面坐標系三個方向上的線加速度和繞地面坐標系三個方向上的角速度。地面坐標系三個方向分別為x軸方向、y軸方向和z軸方向;相應地,繞地面坐標系三個方向分別為繞x軸方向、繞y軸方向和繞z軸方向。
圖2為本發(fā)明又一實施例提供的運動座椅的結構示意圖。如圖2所示,運動平臺包括上支架平臺、基本驅(qū)動軸和下支架平臺。地面坐標系的原點位于運動平臺的上支架平臺的中心位置;y軸為垂直于地面的坐標軸;x軸為與y軸垂直,且與初始狀態(tài)的運動座椅的橫向軸線平行的坐標軸;z軸為與y軸垂直,且與初始狀態(tài)的運動座椅的縱向軸線平行的坐標軸。其中,初始狀態(tài)的運動座椅為未執(zhí)行任何動作的運動座椅。
基于此,地面坐標系三個方向上的線加速度包括x軸方向上的線加速度、y軸方向上的線加速度和z軸方向上的線加速度;繞地面坐標系三個方向的角速度包括繞x軸方向上的角速度,即俯仰角速度、繞y軸方向上的角速度,即偏航角速度和繞z軸方向上的角速度,即翻滾角速度。其中,俯仰角可以用α表示,偏航角可以用β表示,翻滾角可以用γ表示。
考慮到在過山車等相關vr場景中的動作加速度或角速度一般比較大,運動平臺的動作能力有限??蛇x地,可以將解析出的地面坐標系三個方向上的線加速度和繞地面坐標系三個方向上的角速度,乘以對應方向的倍率,進而生成運動平臺帶動座椅動作所需的地面坐標系三個方向上的線加速度和繞地面坐標系三個方向上的角速度。
可選地,對應方向的倍率可由vr場景中對應方向的最大動作數(shù)據(jù)與運動平臺在對應方向上的最大動作數(shù)據(jù)確定。例如,vr場景中在繞x軸方向上的最大角速度為10°/s,運動平臺在繞x軸方向上的最大角速度為5°/s?;诖?,可以將解析出的繞x軸方向上的角速度乘以0.5,以得到運動平臺帶動座椅動作所需的繞x軸方向上的角速度。又例如,vr場景中在y軸方向上的最大加速度為100m/s2,運動平臺在y軸方向上的最大加速度為1m/s2。基于此,可以將解析出的y軸方向上的加速度乘以0.01,以得到運動平臺帶動座椅動作所需的y軸方向上的加速度。
接著,可以確定上述六個方向中,至少一個具有中位點的方向,作為可回退方向。然后,在可回退方向上的動作參數(shù)小于可回退方向上的參數(shù)臨界值時,控制運動平臺在可回退方向上以小于可回退方向上的參數(shù)臨界值的動作參數(shù)帶動座椅回退至可回退方向的中位點。
根據(jù)人體的體感,當y軸方向上的加速度較小,即y軸方向上的速度變化較小時,人體的體感不明顯;同樣地,當繞y軸方向的偏航角速度較小時,人體的體感也不明顯?;诖耍瑑?yōu)選地,確定至少一個方向中具有中位點的方向,作為可回退方向,包括:從地面坐標系的x軸、y軸、z軸方向和繞x軸、y軸、z軸方向中,確定y軸方向以及繞y軸方向作為可回退方向。
基于此,在可回退方向上的動作參數(shù)小于可回退方向上的參數(shù)臨界值時,控制運動平臺在可回退方向上以小于可回退方向上的參數(shù)臨界值的動作參數(shù)帶動座椅回退至可回退方向的中位點,包括以下兩種實施方式中的至少一種。
第一種實施方式:當y軸方向上的線加速度小于y軸方向上的線加速度臨界值時,控制運動平臺在y軸方向上以小于y軸方向上的線加速度臨界值的線加速度帶動座椅回退至y軸方向的中位點。
可選地,y軸方向的線加速度臨界值可以為y軸方向的人體臨界感應值。在實際操作中,考慮到有些人體感應較敏感,可以將y軸方向上的線加速度臨界值設為略小于y軸方向的人體臨界感應值的值。例如,y軸方向的人體臨界感應值為0.28m/s2,可以將y軸方向的參數(shù)臨界值設為0.22m/s2。進一步可選地,為了在運動平臺在y軸方向上回退的過程中,避免重復生成控制信號,可以將控制運動平臺在y軸方向上的線加速度設為大于y軸方向上的參數(shù)臨界值0.22m/s2且小于y軸方向的人體臨界感應值0.28m/s2的值,例如0.25m/s2。
圖3為本發(fā)明又一實施例提供的運動座椅在y軸方向上的動作速度曲線圖,實線為根據(jù)vr場景中的動作數(shù)據(jù)生成的y軸方向上的速度曲線。虛線為運動平臺在y軸方向上的速度曲線。由圖中可見,在0時刻,二者均處于y軸方向上的中位點,且二者的速度均為0m/s。在0-t1時間段內(nèi),運動平臺在y軸方向上的加速度與根據(jù)vr場景中的動作數(shù)據(jù)生成的y軸方向上加速度保持一致。在t1-t2時間段內(nèi),根據(jù)vr場景中的動作數(shù)據(jù)生成的y軸方向上加速度小于0.22m/s2,則運動平臺以小于0.25m/s2(未示出)的加速度回退至中位點。在t2-t3時間段內(nèi),根據(jù)vr場景中的動作數(shù)據(jù)生成的y軸方向上加速度重新大于0.28m/s2,則運動平臺以根據(jù)vr場景中的動作數(shù)據(jù)生成的y軸方向上加速度自中位點開始動作。在t3-t4時間段內(nèi),根據(jù)vr場景中的動作數(shù)據(jù)生成的y軸方向上加速度小于0.22m/s2,則運動平臺以小于0.25m/s2(未示出)的加速度回退至中位點。
一般在直升機等相關飛行游戲中,在y軸上的動作時間較長或速度比較大,運動平臺難以模擬?;谏鲜龇治?,可以通過運動座椅在y軸方向上的加速度,模擬vr場景中y軸方向上的加速度。
可選地,可以先按照y軸方向?qū)淖儞Q關系,將小于y軸方向上的線加速度臨界值的線加速度變換為運動平臺按照該小于y軸方向上的線加速度臨界值的線加速度帶動座椅上下動作時的位移值,再根據(jù)運動平臺帶動座椅上下動作時的位移值,驅(qū)動運動平臺帶動座椅上下動作,直至y軸方向的中位點。
在一示例中,可以根據(jù)牛頓運動學公式得到運動平臺帶動座椅上下動作時的位移值:y=v0*t+a*t2/2。要得到位移值y,需要確定當前時刻運動平臺在y軸方向上的速度v0、小于y軸方向上的線加速度臨界值的線加速度a和動作時間t。其中,a可以設為0.25m/s2,a的正負情況可根據(jù)運動平臺的位置與y軸方向的中位點的相對位置確定。v0可以通過速度檢測設備檢測得到,或者通過運動平臺在前面時刻的位移值計算得到,例如為0.1m/s。對于t的確定來說,可選地,可以周期性生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù),例如每隔20ms生成y軸方向上的線加速度。基于此,可以將t設為20ms。于是,運動平臺帶動座椅上下動作時的位移值可以計算得到,為2.05cm。
可選地,在根據(jù)運動平臺帶動座椅上下動作時的位移值,驅(qū)動運動平臺帶動座椅上下動作時,運動座椅配置的運動平臺不同,驅(qū)動的方式不同。例如,圖2示出的運動座椅的運動平臺包括6個基本驅(qū)動軸,通過6個基本驅(qū)動軸伸縮長度的不同,可以實現(xiàn)運動座椅的各種動作。基于此,對于圖2示出的運動座椅而言,首先將運動平臺帶動座椅上下動作時的位移值經(jīng)運動反解,分別得到6個基本驅(qū)動軸的伸縮長度,進而驅(qū)動6個基本驅(qū)動軸進行相應伸縮長度的伸縮,以帶動座椅上下動作。又例如,運動座椅的運動平臺包括3個基本驅(qū)動軸,此時,可將運動平臺帶動座椅上下動作時的位移值經(jīng)運動反解,分別得到3個基本驅(qū)動軸的伸縮長度,進而驅(qū)動3個基本驅(qū)動軸進行相應長度的伸縮,以帶動座椅上下動作。
需要說明的是,本實施例中運動平臺的結構不限于基本驅(qū)動軸,還可以為制動器等結構。
第二種實施方式:當繞y軸方向上的角速度小于繞y軸方向上的角速度臨界值時,控制運動平臺在繞y軸方向上以小于繞y軸方向上的角速度臨界值的角速度帶動座椅回退至繞y軸方向的中位點。
可選地,繞y軸方向上的角速度臨界值可以為繞y軸方向上的人體臨界感應值。在實際操作中,考慮到有些人體感應較敏感,可以將繞y軸方向上的角速度臨界值設為略小于繞y軸方向上的人體臨界感應值的值。例如,繞y軸方向上的人體臨界感應值為2.6°/s,可以將繞y軸方向上的參數(shù)臨界值設為2°/s。進一步可選地,為了在控制運動平臺在繞y軸方向上回退的過程中,避免重復生成控制信號,可以將控制運動平臺在繞y軸方向上的角速度設為大于繞y軸方向上的參數(shù)臨界值2°/s且小于繞y軸方向上的人體臨界感應值2.6°/s的值,例如2.3°/s。
一般在vr游戲場景中,繞y軸方向上的角度比較大,甚至超過360度,運動平臺難以模擬?;谏鲜龇治觯梢酝ㄟ^運動座椅在繞y軸方向上的偏航角速度,模擬vr場景中繞y軸方向上的偏航角速度。
可選地,可以按照繞y軸方向?qū)淖儞Q關系,先將上述小于繞y軸方向上的角速度臨界值的角速度變換為運動平臺按照該小于繞y軸方向上的角速度臨界值的角速度帶動座椅偏航動作時的偏航角,再根據(jù)運動平臺帶動座椅偏航動作時的偏航角,驅(qū)動運動平臺帶動座椅偏航動作,直至回退到繞y軸方向上的中位點。
在一示例中,可以根據(jù)角度計算公式β=β0+v_β*t,得到運動平臺帶動座椅偏航動作時的偏航角。要得到偏航角β,需要確定當前時刻運動平臺在繞y軸方向上的偏航角度β0、小于繞y軸方向上的角速度臨界值的角速度v_β以及動作時間t。其中,v_β可以設為2.2°/s,v_β的正負情況可根據(jù)運動平臺的位置與繞y軸方向上的中位點的相對位置確定。β0可以通過角速度檢測設備檢測得到,或者根據(jù)前面時刻運動平臺的偏航角和偏航角速度計算得到,例如為3°。對于t的確定來說,可以與上述示例相同,設為20ms。于是,運動平臺帶動座椅偏航動作時的偏航角可以計算得到,為3.044°。
可選地,當至少一個方向上的動作參數(shù)包括y軸方向上的線加速度以及繞y軸方向上的角速度時,可以分別執(zhí)行y軸方向上的線加速度與y軸方向上的線加速度臨界值的大小比較操作,以及繞y軸方向上的角速度與繞y軸方向上的角速度臨界值的大小比較操作。進而根據(jù)上述兩種實施方式,控制運動平臺帶動座椅進行回退操作。
上述實施例中,可以將y軸方向上的加速度變換為運動平臺帶動所述座椅上下動作時的位移值,以及將繞y軸方向的角速度變換為運動平臺帶動所述座椅偏航動作時的偏航角,但不限于此。
可選地,本發(fā)明又一實施例提供的運動座椅控制方法還包括以下四種可選實施方式中的至少一種:
第一種實施方式:按照x軸方向?qū)淖儞Q關系,將x軸方向上的線加速度變換為運動平臺帶動座椅翻滾動作時的翻滾角,根據(jù)運動平臺帶動座椅翻滾動作時的翻滾角,驅(qū)動運動平臺帶動座椅翻滾動作。
當人體在x軸方向上勻速運動時,運動的體感不明顯;若人體在x軸方向上,根據(jù)非0的線加速度運動時,運動的體感較明顯。而且,人體往往隨著在x軸方向上的線加速度變化,呈現(xiàn)繞z軸方向的翻滾動作。若x方向上的加速度越大,繞z軸方向上的翻滾角度越大。
基于此,x軸方向?qū)淖儞Q關系可以為x軸方向上的線加速度與繞z軸方向上的角度的對應關系。所述對應關系可以根據(jù)人體的敏感程度設置。例如,x軸方向上的線加速度1m/s2對應繞z軸方向上的角度6度。繼而,可以確定模擬x軸方向上1m/s2的線加速度,需要6度的翻滾角。
然后,根據(jù)運動平臺帶動座椅俯仰動作時的翻滾角,經(jīng)運動反解為基本驅(qū)動軸的伸縮長度,進而驅(qū)動基本驅(qū)動軸進行相應伸縮長度的伸縮,以帶動座椅翻滾動作。
第二種實施方式:按照z軸方向?qū)淖儞Q關系,將z軸方向上的線加速度變換為運動平臺帶動座椅俯仰動作時的俯仰角,根據(jù)運動平臺帶動座椅俯仰動作時的俯仰角,驅(qū)動運動平臺帶動座椅俯仰動作。
與第一種實施方式類似,人體也會隨著在z軸方向上的線加速度變化,呈現(xiàn)繞x軸方向的俯仰動作。若z軸方向上的加速度越大,繞x軸方向上的俯仰角度越大。
基于此,z軸方向?qū)淖儞Q關系可以為z軸方向上的線加速度與繞x軸方向上的角度的對應關系。所述對應關系可以根據(jù)人體的敏感程度設置。例如,z軸方向上的線加速度1m/s2對應繞x軸方向上的角度3°。繼而,可以確定模擬x軸方向上1m/s2的線加速度,需要3°的俯仰角。
然后,根據(jù)運動平臺帶動座椅俯仰動作時的俯仰角,經(jīng)運動反解為基本驅(qū)動軸的伸縮長度,進而驅(qū)動基本驅(qū)動軸進行相應伸縮長度的伸縮,以帶動座椅翻滾動作。
第三種實施方式:按照繞x軸方向的變換關系,將繞x軸方向的角速度變換為運動平臺帶動座椅俯仰動作時的俯仰角,根據(jù)運動平臺帶動座椅俯仰動作時的俯仰角,驅(qū)動運動平臺帶動座椅俯仰動作。
一般vr場景中的繞x軸方向的角度比較小,可以在運動平臺上實現(xiàn)。因此,可以將繞x軸方向的角速度換算成繞x軸方向的角度,將換算出繞x軸方向的角度作為運動平臺帶動座椅俯仰動作時的俯仰角。
可選地,可使用公式α=α0+v_α*t,將繞x軸方向的角速度換算成俯仰角。其中,α0為當前時刻繞x軸方向上的俯仰角度,例如為5°。t為動作時間,與上述示例相同,設為20ms。v_α為繞x軸方向的角速度,可以根據(jù)vr場景中的動作數(shù)據(jù)生成,例如為5°/s?;诖?,可以計算得到俯仰角為5.1°。
然后,根據(jù)運動平臺帶動座椅俯仰動作時的俯仰角,驅(qū)動運動平臺帶動座椅俯仰動作。具體實現(xiàn)方式與第二種實施方式相同,此處不再贅述。
第四種實施方式:按照繞z軸方向的變換關系,將繞z軸方向的角速度變換為運動平臺帶動座椅翻滾動作時的翻滾角,根據(jù)運動平臺帶動座椅翻滾動作時的翻滾角,驅(qū)動運動平臺帶動座椅翻滾動作。
與第三種實施方式類似,一般vr場景中的繞z軸方向的角度比較小,可以在運動平臺上實現(xiàn)。因此,可以將繞z軸方向的角速度換算成繞z軸方向的角度,將換算出的繞z軸方向的角度作為運動平臺帶動座椅翻滾動作時的翻滾角。
可選地,可使用公式γ=γ0+v_γ*t,將繞z軸方向的角速度換算成翻滾角。其中,γ0為當前時刻繞z軸方向上的俯仰角度,t為動作時間。v_γ為繞z軸方向的角速度。γ0、t、v_γ的參數(shù)值的獲取過程與第三種實施方式中α0、t、v_α的獲取過程類似,此處不再贅述。
根據(jù)運動平臺帶動座椅翻滾動作時的翻滾角,驅(qū)動運動平臺帶動座椅翻滾動作。具體實現(xiàn)方式與第一種實施方式相同,此處不再贅述。
本實施例中,可以將x軸方向上的線加速度以及z軸方向的線加速度分別通過翻滾角和俯仰角模擬,無需在x軸方向上或z軸方向上線性運動,可以降低運動平臺所需的運動空間,減少運動成本,提升可靠性。
本發(fā)明實施例還提供一種運動座椅控制系統(tǒng)200,運動座椅控制系統(tǒng)200包括運動座椅控制裝置220和與運動座椅控制裝置適配的游戲平臺210??蛇x地,運動座椅控制裝置220以動態(tài)鏈接庫的形式加載至游戲平臺210中,以便于修改。
游戲平臺210用于獲取vr場景中的動作數(shù)據(jù),并將獲取的vr場景中的動作數(shù)據(jù)發(fā)送至運動座椅控制裝置220。
運動座椅控制裝置220包括生成模塊201、確定模塊202以及控制模塊203。
其中,生成模塊201,用于接收游戲平臺210發(fā)送的vr場景中的動作數(shù)據(jù),并根據(jù)vr場景中的動作數(shù)據(jù),生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù)。
確定模塊202,用于確定生成模塊201生成的動作參數(shù)的至少一個方向中具有中位點的方向,作為可回退方向。
控制模塊203,用于當生成模塊202生成的可回退方向上的動作參數(shù)小于可回退方向上的參數(shù)臨界值時,控制運動平臺在可回退方向上以小于可回退方向上的參數(shù)臨界值的動作參數(shù)帶動座椅回退至可回退方向的中位點。
本實施例中,當可回退方向上的動作參數(shù)小于參數(shù)臨界值時,可以控制運動平臺帶動座椅回退到該方向的中位點,因此能夠利用運動座椅動作速度較慢或速度變化較慢、用戶無明顯體感的時機,使運動座椅回退到可回退方向的中位點,以為下次動作做好準備,柔化了運動體感;同時,降低運動平臺所需的運動空間,減少硬件設計成本,提高運動座椅的可靠性;而且,控制運動平臺以小于可回退方向上的參數(shù)臨界值的動作參數(shù)回退,用戶也無明顯體感,避免運動平臺體感的不真實。
可選地,控制模塊203在控制運動平臺在可回退方向上以小于可回退方向上的參數(shù)臨界值的動作參數(shù)帶動座椅回退至可回退方向的中位點后,還用于:當生成模塊202生成的可回退方向上的動作參數(shù)重新大于或等于可回退方向上的參數(shù)臨界值時,控制運動平臺在可回退方向上以可回退方向上的動作參數(shù)帶動座椅自中位點開始動作。
可選地,生成模塊201在根據(jù)vr場景中的動作數(shù)據(jù),生成運動平臺帶動座椅動作所需的至少一個方向上的動作參數(shù)時,具體用于:
將vr場景中的動作數(shù)據(jù),解析為地面坐標系的x軸、y軸、z軸方向上的線加速度和繞x軸、y軸、z軸方向上的角速度;
其中,所述地面坐標系的原點位于所述運動平臺的上支架平臺的中心位置;y軸為垂直于地面的坐標軸;x軸為與y軸垂直,且與初始狀態(tài)的運動座椅的橫向軸線平行的坐標軸;z軸為與y軸垂直,且與初始狀態(tài)的運動座椅的縱向軸線平行的坐標軸。
可選地,確定模塊202在確定至少一個方向中具有中位點的方向,作為可回退方向時,用于:從地面坐標系的x軸、y軸、z軸方向和繞x軸、y軸、z軸方向中,確定y軸方向以及繞y軸方向作為可回退方向。
進一步可選地,控制模塊203包括第一控制單元和/或第二控制單元。
其中,第一控制單元用于:當y軸方向上的線加速度小于y軸方向上的線加速度臨界值時,控制運動平臺在y軸方向上以小于y軸方向上的線加速度臨界值的線加速度帶動座椅回退至y軸方向的中位點。
第二控制單元用于:當繞y軸方向上的角速度小于繞y軸方向上的角速度臨界值時,控制運動平臺在繞y軸方向上以小于繞y軸方向上的角速度臨界值的角速度帶動座椅回退至繞y軸方向的中位點。
可選地,第一控制單元在控制運動平臺在y軸方向上以小于y軸方向上的線加速度臨界值的線加速度帶動座椅回退至y軸方向的中位點時,具體用于:按照y軸方向?qū)淖儞Q關系,將小于y軸方向上的線加速度臨界值的線加速度變換為運動平臺帶動座椅上下動作時的位移值;根據(jù)運動平臺帶動座椅上下動作時的位移值,驅(qū)動運動平臺帶動座椅上下動作,直至y軸方向的中位點。
第二控制單元在控制運動平臺在繞y軸方向上以小于繞y軸方向上的角速度臨界值的角速度帶動座椅回退至繞y軸方向的中位點時,具體用于:按照繞y軸方向?qū)淖儞Q關系,將小于繞y軸方向上的角速度臨界值的角速度變換為運動平臺帶動座椅偏航動作時的偏航角;根據(jù)運動平臺帶動座椅偏航動作時的偏航角,驅(qū)動運動平臺帶動座椅偏航動作,直至繞y軸方向上的中位點。
可選地,本實施例提供的運動座椅控制裝置220還包括第一驅(qū)動單元、第二驅(qū)動單元、第三驅(qū)動單元、第四驅(qū)動單元中的至少一種。
其中,第一驅(qū)動單元用于:按照x軸方向?qū)淖儞Q關系,將x軸方向上的線加速度變換為運動平臺帶動座椅翻滾動作時的翻滾角,根據(jù)運動平臺帶動座椅翻滾動作時的翻滾角,驅(qū)動運動平臺帶動座椅翻滾動作。
第二驅(qū)動單元用于:按照z軸方向?qū)淖儞Q關系,將z軸方向上的線加速度變換為運動平臺帶動座椅俯仰動作時的俯仰角,根據(jù)運動平臺帶動座椅俯仰動作時的俯仰角,驅(qū)動運動平臺帶動座椅俯仰動作。
第三驅(qū)動單元用于:按照繞x軸方向的變換關系,將繞x軸方向的角速度變換為運動平臺帶動座椅俯仰動作時的俯仰角,根據(jù)運動平臺帶動座椅俯仰動作時的俯仰角,驅(qū)動運動平臺帶動座椅俯仰動作。
第四驅(qū)動單元用于:按照繞z軸方向的變換關系,將繞z軸方向的角速度變換為運動平臺帶動座椅翻滾動作時的翻滾角,根據(jù)運動平臺帶動座椅翻滾動作時的翻滾角,驅(qū)動運動平臺帶動座椅翻滾動作。
本實施例中,可以將x軸方向上的線加速度以及z軸方向的線加速度分別通過翻滾角和俯仰角模擬,無需在x軸方向上或z軸方向上線性運動,可以降低運動平臺所需的運動空間,減少運動成本,提升可靠性。
以上所述僅為本發(fā)明的實施例而已,并不用于限制本發(fā)明。對于本領域技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原理之內(nèi)所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的權利要求范圍之內(nèi)。