Nao機器人是個不錯的學習平臺,它有一套不錯的操作系統和開發文檔。
實現Nao打高爾夫的功能需要考慮到很多問題,因爲你的代碼就算在語法、邏輯上沒有問題,
機器人的硬件不一定能滿足你的要求。我們在使用時常遇到的硬件問題有:
機器人關節磨損問題
a、走路不穩,左右搖晃
b、不能走直線
c、擊球動作不一致(這個是因爲齒輪壞了)
d、旋轉轉角誤差大電機發熱
電機發熱是所有Nao機器人的通病。
網卡不穩定,無法連接機器人
頭部處理器發熱
a、圖像處理效果減弱
b、影響程序的運行手指易斷,易鬆動
當然還有軟件問題和外部環境問題
軟件問題:
1、機器人本身的操作系統
2、自身程序算法
3、API的調用
外部環境問題:
1、光線 2、地板(材質、顏色)
3、高爾夫器材(球杆、高爾夫球、球洞)
以上是我在使用Nao機器人遇到的一些問題。
Nao實現擊高爾夫球可以用Choreograph也可以全用代碼。初學的話,我覺得在Choreograph中寫代碼實現自己想要的功能會簡單些。Nao官方文檔中的Naoqi是機器人本身的API,調用它們可以讓你更好的學習使用Nao。Nao實現擊高爾夫球一般需要用用到哪些API呢?
動作(Motion):
angleInterpolationWithSpeed()控制機器人關節動作
setMoveArmsEnabled()移動時是否擺動手臂
moveTo()移動
getAngles()獲取關節角度
angleInterpolation()時間軸控制機器人動作
內存(Memory):
getData()獲取信息
視覺(Visual):
setActiveCamera()設置使用哪個攝像頭
redBallDetected()紅球識別
這只是自己近期學習的一個小總結,學習的路還很長,慢慢積累總會有所收穫。