2016年12月23日 星期五

‧ 2016\12\23\3S Market Daily 智慧產業新聞

3S Market deliver Smart and Valuable information for Business

3S Market 傳遞 智慧應用與價值的商業資訊




今日主題 工業4.0、智慧城市與環保節能、車聯網、經營管理探討
3S Market 最讚報
工業4.0與智慧工廠 




How to install your WiFi system




車聯網與智慧車載 

智慧城市與環保節能

經營管理探討 





                                                                                                                                                                                                                             


.中小企業的救星!不再為管理無線 WiFi AP 所困擾?

中小企業的救星!不再為管理無線WiFi AP所困擾?
NETGEAR ProSAFE WAC720 and WAC730 Wireless AC Product Tour



中小企業的辦公室現在透過WiFi無線連接網路的設備越來越多,而中小企業沒有專門管理網路的人員,所以都面臨了管理無線網路的困擾。

在經濟不景氣的情況下,中小企業怎麼可能會接受購入價格昂貴的無線控制器Thin AP架構呢?但是一般Fat AP管理不便,市場上有什麼好的解決方案呢?

Netgear聽到了!

為了解決中小企業無線網路需求的煩惱,知名美國網通品牌Netgear提供了市場上特有的Ensemble模式。Ensemble群組管理模式,可集中控管高達10台的無線AP,而無需支付額外的授權費,是中小企業追求建置設定簡單,管理方便又經濟實惠的完美解決方案。


Netgear 獨特的Ensemble模式: 
Ensemble模式,就是在沒有硬體控制器的情況下,實現類似硬體控制器的效果。通過虛擬控制器組的統一管理IP,即可同時控制所有AP,進行常見的配置維護工作,如SSID配置、日程監控維護、軟體升級等等。對於中小規模的部署來說,這個功能是比較方便的。

就像是小編的公司,員工人數十幾二十人,就是使用Netgear WAC730商用等級AP。商用的等級、安裝設定卻簡單,很適合沒有資訊人員的中小企業使用。而且Netgear AP同時支援Fat AP,無線控制器,雲端控制模式。為市場提供了建置簡單,管理方便又經濟實惠的完美解決方案。


                                                                                                                                                                                                                             



Netgear XS716E 16埠 10Gb 簡單網管交換器 SWITCH


.解析:機器人系統架構有哪些特殊技巧?

Future Robotics Technology (Full Documentary)





leiphone 作者:Top Liu


按:本文作者Top Liu,易科機器人實驗室系統設計師,機器人技術傳播者,譯著有《機器人編程實戰》、《嵌入式機器人學》等。

機器人編程涉及控制系統的設計與實現,包括環境感知、交互、移動及行為的控制。

一個理想的機器人編程過程包括(假定硬體已經一切就緒):


1.系統架構設計

2.具體功能的算法實現

3.編碼與整合 

由於筆者所從事工作性質,主要集中在:
1.系統設計和
2.算法的研究上,
3.coding的機會並不是很多。

第二個原因是:如果1、2工作完成後,3的工作其實和機器人本身並不大,電腦專業恐怕會做的更好。

因此本文主要就1給出一些總結和建議。

另外,由於所研究的算法過(wu)於(fa)先(ying)進(yong),通常會在專業的學術期刊上發表,在此也不做過多討論。

一、機器人系統架構
「架構可定義為組件的結構,及它們之間的關係,以及規範其設計,和後續進化的原則和指南。簡言之,架構是構造與整合軟體密集型系統的深層次設計。」

系統架構也可稱其為,如何實施解決方案的一個策略性設計(例如基於組件的工程標準、安全)和解決方案做什麼的功能性設計(如算法、設計模式、底層實現)。

解析:机器人系统架构有哪些特殊技巧?
1 機器人功能分解

另外,軟件工程的基本要求包括模塊化、代碼可復用、功能可共享。使用通用的框架,有利於分解開發任務及代碼移植。機器人軟件同樣遵從軟件工程的一般規律。

說白了,架構就是你如何把機器人的功能打散,再如何把代碼組織起來。一個清晰的與項目相匹配的架構,直接決定了你的開發效率,甚至最終功能的成敗。

從人類第一台可編程的機器人開發伊始,架構問題就與之相伴而生。早在1996年,Garlan 和 Shaw在《軟件架構:一門新興學科的展望》就總結了移動機器人的基本設計需求, 如:(1) 慎思規劃和反應式行為;(2)容許不確定性;(3)考慮危險;(4)靈活性強。針對這些要求,他們評估了四種用於移動機器人的架構,包括控制迴路(control loop)、分層(layers)、隱式調用(implicit invocation)、黑板(blackboard)。經過了幾十年的實踐,一些架構被逐漸淘汰,一些架構逐漸被完善起來。

注意:現在很多機器人開發者,一上手就是ROS,雖然ROS是一種比較不錯的系統架構,它的基於node的思想,在當時是非常先進的,在今天已成為主流。

但我們也要清楚,它只是其中一種架構,尤其是在小型嵌入式設備上訂製機器人系統時,其他的架構可能會更有效率。

另外Master中央控制模式,也是單機時代的產物,在多機的情形就不是很適用。

1.S-P-A結構
解析:机器人系统架构有哪些特殊技巧?
图2 机器人的“see-think-act”工作模式
 解析:机器人系统架构有哪些特殊技巧?
3 「傳感——計劃——行動」(SPA)結構

機器人天然的工作模式是「see-think-act」,所以自然而然的就形成了「傳感——計劃——行動」(SPA)結構:從感知進行映射,經由一個內在的世界模型構造,再由此模型規劃一系列的行動,最終在真實的環境中執行這些規劃。

與之對應的軟件結構稱為經典模型,也稱為層次模型、功能模型、工程模型或三層模型,這是一種由上至下執行的可預測的軟件結構,SPA機器人系統典型的結構是中建立有三個抽象層,分別稱為行駛層(Pilot)(最低層)、導航層(Navigator)(中間層)、規劃層(Planner)(最高層)。

傳感器獲取的載體數據由下兩層預處理後再到達最高「智慧」層作出行駛決策,實際的行駛(如導航和低層的行駛功能)交由下面各層執行,最低層再次成為與小車的接口,將駕駛指令發送給機器人的執行器。

缺點:這種方法強調世界模型的構造,並以此模型規劃行動,而構造符號模型,需要大量的計算時間,這對機器人的性能會有顯著的影響。

另外,規劃模型與真實環境的偏差,將導致機器人的動作,無法達到預期的效果。

2.基於行為的結構
 解析:机器人系统架构有哪些特殊技巧?
4 基於行為的結構

由於SPA系統過於死板,出現了另一種實現方法:基於行為的方法。基於行為方法前身是反應式系統,反應式系統並不採用符號表示,卻能夠生成合理的複合行為。

基於行為機器人方案,進一步擴展了簡單反應式系統的概念,使得簡單的併發行為,可以結合起來工作。

小歷史:Joe Jones和Daniel Roth於2003年出版的《Robot Programming:A Practical Guide to Behavior-Based Robotics》以及使用基於行為系統的iRobot掃地機器人的大獲成功(通過基於行為的系統可有效實現遍歷、避免在某處卡死等多個目標的達成),標誌著當年基於行為系統結構的統治地位。短短十年間,SLAM的迅速興起,基於地圖的規劃和導航再次興起,很多人似乎忘記了或壓根就沒聽說過Behavior-Based Robotics的存在。

解析:机器人系统架构有哪些特殊技巧?
5 《基於行為的機器人編程》

基於行為的軟體模型,是一種由下至上的設計,因而其結果不易預測,每一個機器人功能性(functionality)被封裝成一個小的獨立的模組,稱為一個「行為」,而不是編寫一整個大段的代碼。因為所有的行為並行執行,所以不需要設置優先級。

此種設計的目的之一,是為了易於擴展,例如便於增加一個新的傳感器,或向機器人程序裡,增加一個新的行為特徵。所有的行為可以讀取載體所有傳感器的數據,但當歸集眾多的行為,向執行器產生單一的輸出信號時,則會出現問題。

最初的行為之間使用固定的優先級,而在現代的應用中,則採用更加靈活的選擇方案。

「基於行為機器人學」主要特點包括(參見《嵌入式機器人學》):

1)感應與動作的緊密耦合
在某種程度上,所有行為機器人的動作,是對刺激的反應,而不是依賴於有意識的規則。回避使用思考規劃,取而代之的,是一些計算簡化的模組,來實現從輸入到執行的映射,此舉有利於快速響應。

基於這個觀察Brooks言簡意概的表達出來,其中的原理——「規劃不過是一種迴避計算下一步要做什麼的方法」。

2)避開知識的符號表示
對環境的處理上,不需要構造一個內部模型,以用於執行規劃任務,而是採用真實世界「它自己最好的模型」。機器人直接從觀測中,獲取到未來的行為,而非試圖去生成一個能夠內部操作的世界的抽象表示,並以此作為規劃未來行動的基礎。

3)分解成具有因果意義的單元
行為按照狀態——動作成對出現,設計為對特定的狀態,做出確定的動作反應。

4)併發關聯行為的時變等級調整
為適應所要達成任務目的,在運行期間採用一個控制方案,來改變行為的激活等級。

5)行為選擇
在基於行為系統中,運行著一定數目作為並行進程的行為,每一個行為,可以讀取所有的傳感器(讀動作),但只有一個行為可獲得機器人執行器,或行駛機構的控制權(寫動作)。

因此需要一個全局控制器,在恰當的時機,來協助行為選擇(或是行為激活、或是行為輸出融合)以達到預期的目的。這將系統的設計工作,就從描述系統本身,轉移到定義一個正常工作的系統的輸出上。

說多了,感覺要跑題了。如果你有興趣,並想瞭解更多關於編程機器人來處理未知的東西,推薦Ronald Arkin的《Behavior-Based Robotics》和Thomas Braun的《嵌入式機器人學:基於嵌入式系統的移動機器人設計和應用》。

慎思式的機器人編程方法,從中級到高級的探討,推薦Christopher A. Rouff等人的《Agent Technology from a Formal Perspective》。

一張圖小結一下
解析:机器人系统架构有哪些特殊技巧?

二、混合系統:實踐的產物
解析:机器人系统架构有哪些特殊技巧?

沒有萬靈的結構,混合系統結合了SPA,和反應體系的原理,將多種混合系統,應用於在傳感器和電機輸出間,進行協調來完成任務。

混合結構相結合,最具吸引力的好處可能是:系統按照有利於完成任務的標準進行設計,而非刻板的遵循某一教條。但再複雜的機構,基本上也都是二者的組合。以ROS的導航包為例:

解析:机器人系统架构有哪些特殊技巧?
6 ROS導航包

導航包整體上是SPA結構,左右兩側是感知S,包括傳感器數據/里程計/地圖等,中間框圖是Global和Local兩級規劃P,最後發送cmd_vel給行動A。

如果世界是完美的,那按照規劃的地圖,行進到目的地就完事了。然而基於行為方法,就是為了處理各種意外而生的。當機器人遇到障礙物或是被卡住的時候,內嵌的基於行為的系統,就開始發揮作用。會根據情況,在「行為庫」recovery_behaviors中調用某一預先設定的「行為」來擺脫困境。

解析:机器人系统架构有哪些特殊技巧?
7 recovery_behaviors

默認的行為是:首先,清除機器人地圖指定區域以外的障礙。接下來,如果可能的話,機器人將執行一個原地旋轉清理空間。如果這也失敗了,機器人將更激進地清理地圖,清除一切可以原地旋轉的矩形區域以外的障礙。

這將是另一個就地旋轉緊隨其後。如果這些都失敗了,機器人將認為其目標不可行,停止運行並通知用戶。

當然,你還可以針對各種意外設計更為複雜的recovery_behaviors 「行為庫」以備調用。

三、安全自主機器人應用框架
現在還有一種基於場景和態勢的設計框架SARAA,我覺得很有趣。安全自主機器人應用架構(SARAA,Safe Autonomous Robot Application Architecture, SARAA)是一種強調安全性的自主機器人的開發方法。

解析:机器人系统架构有哪些特殊技巧?
8 SARAA

SARAA機器人總結
在《機器人編程實戰》(2017年出版)書中,詳細介紹了編程一個機器人自主執行其任務、構成了所謂SARAA的7項技術:

軟體機器人框架
ROLL模型
REQUIRE
RSVP
SPACES
STORIES
PASS

我們稱具有這種體系結構的機器人,為SARAA機器人。當正確地實現時,這些編程技術,會產生一個基於知識的機器人控制器。因此,一個SARAA機器人,是一個可以在預先設定的場景和態勢中,自主行動的知識型機器人。其中一個設計思想,是根據場景和態勢,對前提/後置條件的判斷,以提高安全性。

感興趣可訪問Ctest實驗室,SARAA已經用於在開源機器人平台內工作,例如Arduino、Linux和ROS。如果對編程SARAA機器人的場景和態勢,很好理解與恰當定義,則SARAA機器人的設計有助於提升機器人的安全性。