HEXA娛樂開發(fā)日志技術(shù)點000——整理&第一個Skill

HEXA開發(fā)日志目錄

上一篇 HEXA娛樂開發(fā)日志調(diào)研002(調(diào)研完畢)——彈幕獲取方法修正


整理

本項目的基本調(diào)研結(jié)束,把技術(shù)點與具體需求整理如下叁熔。

需求與技術(shù)依賴關(guān)系

需求與技術(shù)依賴關(guān)系本階段的目的是驗證調(diào)研階段的結(jié)論矩桂,并對每個技術(shù)點進行demo沸移,本階段結(jié)束后,再進一步進行詳細的設(shè)計侄榴。針對上圖雹锣,demo的順序從Mind SDK開始,順著圖中箭頭依次進行癞蚕。

Mind SDK

要能夠?qū)崿F(xiàn)簡單HEXA應(yīng)用部署

Golang

要達到移植彈幕姬的編程水平

移植彈幕姬

要能獲取彈幕

C/C++動態(tài)庫使用與OpenCV

運行官方的OpenCV demo

RTMPDUMP

要能對有效地址進行推流蕊爵,可以先不帶stream key

標題解釋

Skill實際上就是官方對于應(yīng)用的稱呼,一個應(yīng)用就稱作一個Skill桦山。

簡單說一下Skill的原理攒射,我理解這個HEXA機器人實際上是以B/S模式工作的,即控制端(手機或電腦)使用瀏覽器恒水,機器人作為服務(wù)器会放,我們通過網(wǎng)頁元素與之交互。后面可以看到寇窑,一個Skill的目錄結(jié)構(gòu)中的文件主要是一個網(wǎng)頁文件和一個go源碼文件鸦概,前者是服務(wù)器發(fā)給控制端的網(wǎng)頁,讓我們通過瀏覽器與機器人交互甩骏,后者決定機器人的控制邏輯窗市。

提要

這次研究的是Mind SDK,它是下圖中這個機器人相關(guān)技術(shù)點中的起點饮笛。這個技術(shù)點demo的目的就是確定我可以將應(yīng)用部署到機器人上咨察,并正常使用,這次用的是官方的例子MovelegsSkill福青,運行后腿會動摄狱,就算demo成功了。其實所有過程按照官方文檔里做就行无午,我這里還要廢話一下媒役,有2個原因:

1.官方文檔是英文的,我這里用中文宪迟;

2.官方也是開始階段酣衷,有些地方說明還是有些坑的,我寫出來提醒后來者次泽。

喜歡看視頻的穿仪,可以看官方視頻(中文的哦):智能機器人開發(fā)入門:可編程全地形機器人HEXA技能開發(fā)實戰(zhàn)教程

成果展示

下圖就是他們的IDE席爽,叫Mind Studio,當然這IDE不是必須的啊片,實際上目前官網(wǎng)文檔沒有提到Mind Studio只锻,而是使用命令行方式,用不用IDE其實沒關(guān)系紫谷,IDE軟件只是對命令行包裝了一下齐饮,用著簡單一點。

請注意一下最下方的log碴里,有successful, Connected這種字樣沈矿,就說明這個應(yīng)用已經(jīng)部署到機器人上面了,下一個問題就是如何運行這個應(yīng)用了咬腋。

Mind Studio

按照上面log指示,在瀏覽器中輸入紅框里那個網(wǎng)址睡互,就可以看到一個僅有2個按鈕的網(wǎng)頁根竿。這時候熟悉Web前端的同學(xué)應(yīng)該能容易的看出,上面IDE圖中就是網(wǎng)頁的代碼就珠,和下面的網(wǎng)頁圖是對得上的寇壳。即使不懂網(wǎng)頁代碼,我們也可以根據(jù)網(wǎng)頁里代碼字面猜一下:

"start"...onclick()...senddata...data:"start"

"stop"...onclick()...senddata...data:"stop"

不難猜到妻怎,兩個按鈕意思是壳炎,在點擊時會發(fā)送數(shù)據(jù)。我們在電腦上點擊按鈕逼侦,理所當然是發(fā)送給機器人咯匿辩,發(fā)送的data就是start和stop兩種命令。

上位機網(wǎng)頁

上面這個網(wǎng)頁成功打開后榛丢,機器人就會做出對應(yīng)的行為铲球。當然,機器人做了啥不重要晰赞,我也沒看代碼稼病,不能確認它做的對不對,重點在于它確實能對我點擊按鈕這件事有響應(yīng)掖鱼,說明這次程序部署是有效的然走。

demo步驟

步驟目前有2種,一種是按照官方文檔做戏挡,另一種是按照我踩過的坑做芍瑞。我的環(huán)境是Mac OS。

一增拥、官方步驟

官方步驟我沒有完整驗證啄巧,我的步驟主要使用的IDE寻歧,比較簡單,希望用IDE的同學(xué)可以直接到后面看我的步驟秩仆。

1.安裝Docker

Docker相關(guān)的東西我也不懂码泛,Mind SDK依賴它,大概就是能像java虛擬機一樣抹平平臺差異的一種東西澄耍,反正按照Docker官網(wǎng)裝就行了噪珊,Mac平臺也就是下載個img文件,裝完它運行了就行了齐莲。

2.安裝Mind SDK

這步很簡單痢站,在控制臺中輸入下面兩句,即下載SDK并增加SDK主程序的執(zhí)行權(quán)限选酗。

$ sudo curl -o /usr/local/bin/mind https://cdn-static.vincross.com/downloads/mind/latest/mind-`uname -s`-`uname -m`

$ sudo chmod +x /usr/local/bin/mind

之后可以在控制臺里敲mind看看阵难,確認安裝成功,成功啥樣子就看看官方文檔

3.更新依賴庫

這一步看不出在更新什么芒填,官網(wǎng)說是更新Docker容器呜叫,以及一些需要的庫等,總之是不更不行殿衰,因為后面不管干啥朱庆,都要先更新,這一步是跳不過的闷祥。

$ mind upgrade

要注意的是娱颊,這一步很慢,可能要幾到幾十分鐘凯砍,控制臺會顯示正在下載幾項內(nèi)容箱硕,已經(jīng)下了多少。如果網(wǎng)速很慢有可能會覺得它卡死了果覆,不過我也不知道有什么別的辦法颅痊,還是得等。

4.登陸

這一步我不知道有什么用局待,先照做就是了斑响。

$ mind login <郵箱> <密碼>

5.創(chuàng)建Skill

此步驟的官方說明

從這一步開始,創(chuàng)建自己的Skill钳榨,比如創(chuàng)建一個helloworld舰罚。

$ mind init helloworld

$ cd helloworld

init就是創(chuàng)建一個應(yīng)用,實際上就是構(gòu)造了初始工程結(jié)構(gòu)薛耻,可以看一下前面圖中IDE左側(cè)的紅框营罢,或者官網(wǎng)的說明,就3個文件,最重要的就是網(wǎng)頁文件和go源碼文件饲漾,也就是本文開頭說的一個用來交互蝙搔,一個是機器人的控制邏輯。

下面2個命令很好理解考传,就是編譯和打包吃型,當你把代碼擼完,就可以進行開始下面的動作了僚楞。

$ mind build? # Will build an ARM binary into robot/skill

$ mind pack? ? # Will pack the Skill as an mpk file.

6.部署

現(xiàn)在勤晚,上位機的工作基本完成了,下面就是真正的部署了泉褐。

$ mind scan

10.0.0.51 HEXA

10.0.0.76 HEXA4XMZ

不難看出赐写,scan就是找出局域網(wǎng)內(nèi)的所有HEXA機器人,官方這個例子掃出了2臺膜赃,他們的ip和名字都不同挺邀。

$ mind set-default-robot HEXA4XMZ

$ mind get-default-robot # Just to be sure

HEXA4XMZ

$ mind run

set-default-robot顧名思義,就是設(shè)置默認的機器人财剖,我們得確定一會兒玩的是哪一臺機器人悠夯,get-default-robot就是問一下目前要被玩的機器人是哪臺。

run執(zhí)行后躺坟,這個Skill機會被部署到機器人里面,并開始運行了乳蓄,順利的話咪橙,控制臺里也能看到像成果展示里IDE一樣的log,也會有一個地址虚倒,瀏覽器打開它就可以使用應(yīng)用了美侦。

二、我的步驟

我是趟過了一些小坑魂奥,就因為我先打開的是官方的IDE網(wǎng)頁菠剩,而不是官方文檔網(wǎng)頁。我以為IDE一下載耻煤,跑一下官方例子具壮,應(yīng)該就是點幾個按鈕的事,結(jié)果被坑住幾下哈蝇,后來看到官方文檔頁面棺妓,照做幾步才順利進行,下面就是我的步驟和坑點炮赦。

Mind Studio

1.安裝Docker和IDE安裝與登陸

安裝Docker同官方步驟怜跑,IDE也是無腦安裝,然后點界面上右上角那個地方登陸自己的賬號吠勘,點擊左上方的device list選好默認機器人就可以了性芬。安裝IDE這一動作實際上完成了上面官方步驟里的2峡眶、4步。

如果沒有安裝Docker植锉,也能打開IDE辫樱,只是基本不能用,很多關(guān)鍵操作會提醒你檢查Docker狀態(tài)汽煮。也就是說搏熄,如果你像我一樣先打開了官方IDE那個頁面,裝好了IDE就連接機器人時暇赤,如果對Docker一無所知心例,立刻得懵逼,這就是第一個坑鞋囊。

2.更新依賴庫

這一步同官方步驟3止后,也是用upgrade命令。

但是要注意溜腐,IDE安裝的Mind SDK與官方步驟中安裝的位置不同译株,在Mac平臺,我找到的SDK的主程序在

/Applications/MIND Studio.app/Contents/Resources/mind-Darwin-x86_64

如果覺得我還沒有講清楚的話就直接敲下面的命令挺益,如果遇到permission問題就在命令最前面加上sudo

$ cd /usr/local/bin

$ ln -s <SDK主程序路徑> mind

3.build and run Skill

這就是第二個坑歉糜,因為如果傻天真的以為IDE可以傻瓜式操作,就會在點界面上那個小紅框里的運行按鈕時卡住望众,沒有任何反饋匪补,就在那卡著。就像命運經(jīng)常無緣無故地改變或停滯烂翰,沒有誰有義務(wù)告訴你為什么夯缺。

入這個坑就是因為沒有做步驟2,只要完成了步驟2甘耿,這一步就很順利踊兜。

從結(jié)果上看,我覺得如果有耐心佳恬,卡住的時候捏境,只要一直等待,也可能完成殿怜,因為我猜那個時間實際上就是在更新典蝌。

總結(jié)

1.機器人工作模式為B/S,我們是B头谜,它是S;

2.我的demo步驟比較簡單骏掀,大部分工作由IDE完成,自己只要安裝Docker和更新依賴庫即可。


下一篇 HEXA娛樂開發(fā)日志技術(shù)點001——上位機成功獲取彈幕

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末截驮,一起剝皮案震驚了整個濱河市笑陈,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌葵袭,老刑警劉巖涵妥,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異坡锡,居然都是意外死亡蓬网,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進店門鹉勒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來帆锋,“玉大人,你說我怎么就攤上這事禽额【庀幔” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵脯倒,是天一觀的道長实辑。 經(jīng)常有香客問我,道長藻丢,這世上最難降的妖魔是什么剪撬? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮悠反,結(jié)果婚禮上婿奔,老公的妹妹穿的比我還像新娘。我一直安慰自己问慎,他們只是感情好,可當我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布挤茄。 她就那樣靜靜地躺著如叼,像睡著了一般。 火紅的嫁衣襯著肌膚如雪穷劈。 梳的紋絲不亂的頭發(fā)上笼恰,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天,我揣著相機與錄音歇终,去河邊找鬼社证。 笑死,一個胖子當著我的面吹牛评凝,可吹牛的內(nèi)容都是我干的追葡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼宜肉!你這毒婦竟也來了匀钧?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤谬返,失蹤者是張志新(化名)和其女友劉穎之斯,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體遣铝,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡佑刷,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了酿炸。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瘫絮。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖梁沧,靈堂內(nèi)的尸體忽然破棺而出檀何,到底是詐尸還是另有隱情,我是刑警寧澤廷支,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布频鉴,位于F島的核電站,受9級特大地震影響恋拍,放射性物質(zhì)發(fā)生泄漏垛孔。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一施敢、第九天 我趴在偏房一處隱蔽的房頂上張望周荐。 院中可真熱鬧,春花似錦僵娃、人聲如沸概作。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽讯榕。三九已至,卻和暖如春匙睹,著一層夾襖步出監(jiān)牢的瞬間愚屁,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工痕檬, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留霎槐,地道東北人。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓梦谜,卻偏偏與公主長得像丘跌,于是被迫代替她去往敵國和親袭景。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容