ALAutonomousLife (自主生活)
簡介:ALAutonomousLife (自主生活)模塊是在機器人在自主狀態時自動啓動的一些活動,在同一時間只能運行一個。機器人默認是開啓自主生活的。
如何設置自主生活狀態?
l 如何開關自主生活?
1、雙擊機器人胸部按鈕
2、Choreograph軟件點擊一個心形按鈕
3、在Nao的網頁中
l 開啓自主生活後是怎樣的?
如果它是蹲着,他會站起來;如果他是坐着,他仍然坐;
開啓後他會識別你的臉,等待和你互動
事實上,你想實現自主生活你需要做好一些準備工作,首先需要配置好Basic Channel(基本頻道),就是安裝好一些對話包等安裝包,這個在store裏可以下載或者自己安裝,你安裝的東西越多,會讓你的機器人顯得越智能,怎麼安裝這裏不作介紹。
BasicChannel
那我們什麼時候需要關閉自主生活?
測試新程序或研究機器人的一些功能時可以關閉,這樣就不會影響你的程序運行。
Nao有4種狀態,分別爲Interactive, Solitary, Safeguard and Disabled(互動、孤立、保護和禁用,不知道是不是這樣翻譯的),Interactive,Solitary狀態下任何活動都可以通過ALAutonomousLifeProxy :: switchFocus()啓動,而Safeguard和Disabled任何活動都不可以啓動,Safeguard狀態下可以進入一個更高級別的事件,Disabled狀態可以用ALAutonomousLifeProxy:: setState()退出。
APIs
方法和事件列表
自主生活方式狀態管理:
§ ALAutonomousLifeProxy ::的setState()
手動設置狀態,4種狀態已經在前面說了。
注意:手動從交互狀態更改爲單獨狀態將失敗。
§ ALAutonomousLifeProxy ::的getState()
獲取機器人的生活狀態
§ ALAutonomousLifeProxy :: setRobotOffsetFromFloor()
允許機器人在地板甚至更高的地方
參數:offset—以米爲單位的浮點數值
§ ALAutonomousLifeProxy :: getRobotOffsetFromFloor()
檢索機器人當前的偏移位置
§ ALAutonomousLifeProxy :: setSafeguardEnabled(const std :: string& name)
需要考慮到的保護措施
name—保護的名稱包括:RobotPushed, RobotFell, RobotMoved,CriticalDiagnosis, CriticalTemperature
§ ALAutonomousLifeProxy :: isSafeguardEnabled(const std :: string& name)
判斷保護的措施是否被處理。如果處理了,返回true.
重點活動的管理:
§ ALAutonomousLifeProxy::focusedActivity()
查看當前的重點活動
§ ALAutonomousLifeProxy::switchFocus()
運行某個活動
§ ALAutonomousLifeProxy::stopFocus()
停止某個活動
§ ALAutonomousLifeProxy::stopAll()
停止所有活動
以上純屬個人理解,歡迎各位大神賜教!