新四季網

基於WebRTC的機器人遙作業系統的製作方法

2023-05-24 15:41:56 1


本發明涉及一種基於webrtc的機器人遙作業系統,屬於機器人領域。



背景技術:

遙操作是一個古老的話題,自從提出至今對它的研究就一直沒有間斷。隨著科學和時代的發展,機器人遙操作在諸如太空、深海探測,遠程的病房監控等領域內,都發揮著不可替代的作用。藉助於internet資源的諸多便利條件,人們對網絡機器人的需求必然會日益擴大。而新興的html5技術,又給網絡機器人的遙操作開闢了一個新的發展方向。

webrtc是一項基於html5的在瀏覽器內部進行實時的音視頻通訊的技術。實現了基於網頁的視頻會議,只通過瀏覽器內部進行javascript就可以達到實時通訊的能力,而且不需要瀏覽器提供任何形式的插件。webrtc提供了視頻會議的核心技術,包括音視頻的採集、編解碼、傳輸和顯示,而且還支持跨平臺的調用。

當前存在的網絡機器人遙作業系統設計是多種多樣的,各生產廠家分別用自己的手段和方法來實現控制信號和音視頻信號的傳輸。音視頻信號有些使用了第三方的開源軟體,如skype;有些使用了自己定製的音視頻傳輸軟體;有些使用了flash等音視頻的傳輸工具。而對於控制信號一般使用socket或xmlsocket;或者自己定製遙操作控制軟體。這些遙作業系統的主要問題在於需要先在客戶端安裝控制軟體或者瀏覽器插件,不能實現跨平臺訪問,而且也不能實現機器人運動狀態變量對流媒體信號的調節。otorob考慮了機器人的所處場景,根據場景和機器人的速度來調節視頻流的參數,來達到節省帶寬的目的;drrobotx80則是考慮了機器人的傳感器信息,將障礙物作為機器人運動時的感興趣信息,當檢測到障礙物時增大視頻流的幀率,以達到保證用戶體驗性的目的;pr2則利用ros平臺搭建遙作業系統,用websocket傳遞控制信號,使用mjpegserver搭建流媒體伺服器,客戶端使用html插件來實現。上述所說遙作業系統,增加了機器人的狀態變量對流媒體傳輸的控制,達到了良好的效果,但是問題依然是對客戶端要求過高,而且沒有考慮網絡狀況。pr2雖然基於html5技術開發,但是其流媒體傳輸編碼效率較低,而且本身也需要插件的支持。



技術實現要素:

本發明提供一種基於webrtc的機器人遙作業系統,不僅客戶端能夠在瀏覽器內與機器人進行音視頻交互,而且利用webrtc開原始碼開源出解析度和幀率的接口,用於通過雲臺相機的轉角位置、距離傳感器的感知信息和機器人的速度控制機器人端的視頻流解析度和幀率。

本發明解決其技術問題所採用的技術方案是:

一種基於webrtc的機器人遙作業系統,包括機器人、客戶端和nodejs伺服器,機器人頭部安裝有雲臺相機,通過二自由度轉動獲取環境視頻信號,機器人上安裝有麥克風,用於獲取環境的音頻信號,機器人周圍裝有距離傳感器,用於探測距離機器人較近障礙物的信息,機器人的頂部安裝有顯示器和音箱,用於呈現遙操作者的音視頻信號,機器人底部安裝在移動平臺上;客戶端使用支持webrtc功能的瀏覽器向機器人發出控制指令和音視頻信號,同時接收機器人發送的控制指令和音視頻信號;nodejs伺服器分別向機器人、客戶端完成音視頻流報文的互換和轉發;

作為本發明的進一步優選,控制指令的傳輸遵循websocket協議,包括控制移動平臺的運動指令和控制雲臺相機轉角運動的指令;

作為本發明的進一步優選,客戶端用支持webrtc功能的瀏覽器,通過javascript調用實現與機器人的實時音視頻傳輸,機器人用webrtc的開原始碼,並開源出解析度和幀率的參數,音視頻傳輸前首先完成兩端初始化報文的傳輸,兩端在添加完sdp消息響應後向nodejs伺服器傳輸基於websocket的sdp消息,描述本端地址和埠信息,nodejs伺服器完成報文的互換和轉發,一旦對端的報文到達便進行webrtc的音視頻點對點傳輸;

作為本發明的進一步優選,客戶端遙操作指令包括雲臺相機轉角的運動指令和移動平臺的運動指令,客戶端控制雲臺相機的轉角和底部移動平臺的運動速度,機器人周圍的距離傳感器實時檢測距離機器人障礙物的信息;機器人視頻的解析度根據云臺相機轉角位置、距離傳感器的信息和機器人運動速度進行調節。

通過以上技術方案,相對於現有技術,本發明具有以下有益效果:

本發明提出了一種基於webrtc的機器人遙作業系統,該系統客戶端的瀏覽器內部進行與機器人端進行音視頻交互,機器人端不僅利用webrtc的開原始碼與客戶端傳輸音視頻,還在webrtc的開原始碼上封裝了上層調用,通過雲臺相機的轉角位置,距離傳感器的感知信息和機器人的運動速度調節機器人端的流媒體傳輸解析度和幀率。

附圖說明

下面結合附圖和實施例對本發明進一步說明。

圖1是本發明的優選實施例的硬體結構圖;

圖2是本發明的優選實施例的webrtc傳輸算法流程圖;

圖3是本發明的優選實施例的移動平臺的流媒體傳輸方法流程圖。

具體實施方式

現在結合附圖對本發明作進一步詳細的說明。這些附圖均為簡化的示意圖,僅以示意方式說明本發明的基本結構,因此其僅顯示與本發明有關的構成。

如圖1所示,本發明的一種基於webrtc的機器人遙作業系統,包括機器人、客戶端和nodejs伺服器,機器人頭部安裝有雲臺相機,通過二自由度轉動獲取環境視頻信號,機器人上安裝有麥克風,用於獲取環境的音頻信號,機器人周圍裝有距離傳感器,用於探測距離機器人較近障礙物的信息,機器人的頂部安裝有顯示器和音箱,用於呈現遙操作者的音視頻信號,機器人底部安裝在移動平臺上;客戶端使用支持webrtc功能的瀏覽器向機器人發出控制指令和音視頻信號,同時接收機器人發送的控制指令和音視頻信號;nodejs伺服器分別向機器人、客戶端完成音視頻流報文的互換和轉發;

作為本發明的進一步優選,控制指令的傳輸遵循websocket協議,包括控制移動平臺的運動指令和控制雲臺相機轉角運動的指令;

作為本發明的進一步優選,客戶端用支持webrtc功能的瀏覽器,通過javascript調用實現與機器人的實時音視頻傳輸,機器人用webrtc的開原始碼,並開源出解析度和幀率的參數,音視頻傳輸前首先完成兩端初始化報文的傳輸,兩端在添加完sdp消息響應後向nodejs伺服器傳輸基於websocket的sdp消息,描述本端地址和埠信息,nodejs伺服器完成報文的互換和轉發,一旦對端的報文到達便進行webrtc的音視頻點對點傳輸;

作為本發明的進一步優選,客戶端遙操作指令包括雲臺相機轉角的運動指令和移動平臺的運動指令,客戶端控制雲臺相機的轉角和底部移動平臺的運動速度,機器人周圍的距離傳感器實時檢測距離機器人障礙物的信息;機器人視頻的解析度根據云臺相機轉角位置、距離傳感器的信息和機器人運動速度進行調節;若檢測到障礙物在雲臺相機的視野範圍內,則提高機器人端視頻流的解析度和幀率;反之則保持預先設定的解析度和幀率進行傳輸。另外,機器人端視頻流的解析度根據移動平臺速度進行調節,並且在一定範圍內速度越大、解析度越高。

如圖2所示,是webrtc傳輸算法流程圖,對於客戶端和伺服器的webrtc程序,主要由以下幾步調用組成:

(1)捕獲本地的音視頻流;一路回送給本地顯示,一路用於rtp傳輸;

(2)設置視頻流的解析度和幀率;這步在機器人端peerconnection完成,將peerconnection中決定視頻解析度和幀率的函數調用提取出來,用於構造流媒體參數調節算法的接口,調節機器人端視頻流的解析度和幀率;

(3)添加sdp消息響應;為了傳輸webrtc流媒體的報文,需要構造基於websocket的sdp消息,用於描述本次的會話名、帶寬信息、媒體類型、傳輸協議、媒體格式、埠和地址等方面的內容,並設置本端的消息響應機制。該報文用於流媒體傳輸的初始化。一旦構造好sdp消息就向nodejs伺服器發送。nodejs伺服器完成消息的轉發,並且完成傳輸情況的監聽;

(4)使用websocket將構造好的sdp消息傳輸到對端;

(5)兩端接收到sdp消息後執行相應的消息處理,並按照消息中的對端埠和地址傳輸捕捉到的音視頻流。

如圖3所示為移動平臺的流媒體傳輸方法流程圖,由雲臺相機的轉角位置(設該方向距離機器人正前方偏轉d度)和機器人距離傳感器的信息可知在距離傳感器的感知範圍內是否存在障礙物,以及該障礙物是否在機器人云臺相機的視野範圍內(d-δ,d+δ),若在該角度範圍內存在障礙物,則按照下式調節視頻流的解析度和幀率:

其中,video.interval為視頻流兩幀之間的時間差,反映出幀率信息,f1>f2>f3。dis(s,p)為根據云臺相機的位置p和傳感器的信息s確定的在雲臺相機的視野範圍內(d-δ,d+δ)障礙物距離機器人的距離。

同時,速度檢測模塊實時檢測機器人當前運行的線速度和角速度,考慮到機器人運動時遙操作者對視頻流的清晰度感知不明顯,為了降低運動場景的網絡帶寬,確定如下機器人發送端的視頻解析度決定公式:

其中,v為機器人運行的線速度,w為機器人運行的角速度。

若機器人存在速度,同時障礙物也存在與雲臺相機的視野範圍內,則最終機器人端發送的視頻流的解析度和幀率按照兩種方式的加權可得:

video.width=f(v,w,s,p)=m*video.height=m*g(v,w,s,p)=u*video.widthl+v*video.widthvvideo.interval=k(s,p)=video.intervall

其中,u,v分別為傳感器標定係數和速度標定係數。

本技術領域技術人員可以理解,除非另外定義,這裡使用的所有術語(包括技術術語和科學術語)具有與本申請所屬領域中的普通技術人員的一般理解相同的意義。還應該理解的是,諸如通用字典中定義的那些術語應該被理解為具有與現有技術的上下文中的意義一致的意義,並且除非像這裡一樣定義,不會用理想化或過於正式的含義來解釋。

本申請中所述的「和/或」的含義指的是各自單獨存在或兩者同時存在的情況均包括在內。

本申請中所述的「連接」的含義可以是部件之間的直接連接也可以是部件間通過其它部件的間接連接。

以上述依據本發明的理想實施例為啟示,通過上述的說明內容,相關工作人員完全可以在不偏離本項發明技術思想的範圍內,進行多樣的變更以及修改。本項發明的技術性範圍並不局限於說明書上的內容,必須要根據權利要求範圍來確定其技術性範圍。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀