GB/T 33263—2016機器人軟件功能組件設(shè)計規(guī)范
標準范圍:
本標準規(guī)定了模塊化和網(wǎng)絡(luò)化構(gòu)建的機器人產(chǎn)品的軟件資源的功能封裝技術(shù),機器人軟件開發(fā)領(lǐng) 域的組件模型和相應(yīng)的設(shè)計規(guī)范,以及機器人組件的集成方法。
本標準適用于機器人軟件開發(fā)領(lǐng)域。非模塊化、網(wǎng)絡(luò)化機器人系統(tǒng)中的機器人軟件開發(fā)和設(shè)計亦可參照使用本標準。
本標準針對機器人產(chǎn)品軟件資源的功能組件化需求,采用模塊化設(shè)計思想規(guī)定了模塊化和網(wǎng)絡(luò)化 構(gòu)建的機器人軟件功能組件框架,包括功能組件的接口描述和狀態(tài)轉(zhuǎn)換,組件化機器人軟件系統(tǒng)的設(shè)計方法,為機器人軟件設(shè)計者和使用者提供參考。
本標準有助于建立一個良好的機器人產(chǎn)業(yè)的生態(tài)環(huán)境。開發(fā)人員可以將來自不同供應(yīng)商的機器人功能組件結(jié)合到一個的應(yīng)用程序中,從而使得機器人和機器人軟件的開發(fā)變得方便和快捷,使得機器人系統(tǒng)變得靈活和。
執(zhí)行狀態(tài)管理:
組件執(zhí)行狀態(tài)描述如下。
———執(zhí)行環(huán)境:是組件內(nèi)線程的抽象表示。線程根據(jù)當前狀態(tài)執(zhí)行組件內(nèi)相關(guān)的工作任務(wù)。
———行為內(nèi)核:負責組件的內(nèi)部邏輯處理。具體包含一個有限狀態(tài)機(FSM)和一個內(nèi)部邏輯單元,用于計算和處理不同時刻組件所處的狀態(tài)模式。
———狀態(tài)自檢:組件可以對自身狀態(tài)自檢,當出現(xiàn)異常時通過異常接口對外通知。
創(chuàng)建狀態(tài):
當前機器人功能組件已經(jīng)被實例化,但是還沒有完全初始化。處于創(chuàng)建狀態(tài)的機器人功能組件可以進行初始化操作,若初始化成功,則組件變遷到非狀態(tài)。
非狀態(tài):
當前機器人功能組件已經(jīng)完全初始化,但是沒有被任何的執(zhí)行環(huán)境所調(diào)用。處于創(chuàng)建狀態(tài)的機器 人功能組件可以進行操作,若成功,則組件變遷到狀態(tài)。
狀態(tài):
當前機器人功能組件被至少一個執(zhí)行環(huán)境調(diào)用,通常當前機器人功能組件的核心功能處于執(zhí)行狀態(tài)。處于狀態(tài)的機器人功能組件可以進行失活操作,若失活成功,則組件變遷到非狀態(tài)。處于狀態(tài)的機器人功能組件若遇到執(zhí)行錯誤,則組件將變遷到與環(huán)境相對應(yīng)的錯誤狀態(tài)。
錯誤狀態(tài):
當前機器人功能組件在一個給定的執(zhí)行環(huán)境遇到問題時,處于錯誤狀態(tài)的機器人功能組件可以被重置,如果重置成功,機器人功能組件的狀態(tài)將會變遷到非狀態(tài),如果重置失敗將還是保持錯誤狀態(tài)。