結(jié)合家用服務(wù)機(jī)器人的應(yīng)用需求,嵌入式
實(shí)時(shí)控制平臺(tái)遵循實(shí)時(shí)優(yōu)先、分層解耦、功耗可控、模塊化擴(kuò)展的設(shè)計(jì)原則,采用“硬件異構(gòu)協(xié)同+軟件分層調(diào)度”的整體架構(gòu),兼顧實(shí)時(shí)性、可靠性與擴(kuò)展性,避免功能耦合導(dǎo)致的調(diào)度延遲與維護(hù)難度提升。
核心設(shè)計(jì)原則
實(shí)時(shí)性優(yōu)先原則:硬件選用高響應(yīng)速率器件,軟件采用實(shí)時(shí)操作系統(tǒng)內(nèi)核,優(yōu)化任務(wù)調(diào)度機(jī)制,保證關(guān)鍵控制任務(wù)的瞬時(shí)響應(yīng)。
分層模塊化原則:將平臺(tái)劃分為硬件驅(qū)動(dòng)層、系統(tǒng)內(nèi)核層、應(yīng)用接口層、功能任務(wù)層,各層獨(dú)立封裝、相互解耦,便于功能調(diào)試與迭代升級(jí)。
功耗均衡原則:根據(jù)任務(wù)負(fù)載動(dòng)態(tài)調(diào)節(jié)硬件主頻與外設(shè)供電,閑置模塊進(jìn)入低功耗狀態(tài),平衡性能與功耗的關(guān)系。
容錯(cuò)冗余原則:增加傳感器數(shù)據(jù)校驗(yàn)、任務(wù)運(yùn)行監(jiān)控、異常重啟機(jī)制,提升平臺(tái)在復(fù)雜環(huán)境下的運(yùn)行穩(wěn)定性。
硬件架構(gòu)設(shè)計(jì)
平臺(tái)硬件采用主控制器+協(xié)處理器的異構(gòu)分布式架構(gòu),拆分實(shí)時(shí)控制任務(wù)與算力處理任務(wù),提升并行處理效率,降低單控制器負(fù)載壓力。
主控制單元:選用32位高性能嵌入式MCU作為核心控制器,搭載硬件浮點(diǎn)運(yùn)算單元,負(fù)責(zé)全局任務(wù)調(diào)度、復(fù)雜邏輯決策、人機(jī)交互處理、數(shù)據(jù)存儲(chǔ)傳輸?shù)热蝿?wù),支持動(dòng)態(tài)調(diào)頻調(diào)壓,適配不同負(fù)載場(chǎng)景。
實(shí)時(shí)協(xié)處理單元:配置專用低功耗單片機(jī)作為協(xié)處理器,專門負(fù)責(zé)運(yùn)動(dòng)閉環(huán)控制、傳感器高頻采集、脈沖信號(hào)輸出、安全保護(hù)等硬實(shí)時(shí)任務(wù),獨(dú)立于主控制器運(yùn)行,保證
實(shí)時(shí)控制指令的毫秒級(jí)響應(yīng),不受主控制器任務(wù)調(diào)度影響。
外設(shè)接口單元:集成多路UART、SPI、I2C、GPIO、PWM接口,適配視覺(jué)傳感器、激光雷達(dá)、紅外傳感、碰撞開(kāi)關(guān)、電機(jī)驅(qū)動(dòng)、無(wú)線通信等外設(shè)接入,接口采用光電隔離設(shè)計(jì),提升抗干擾能力。
電源管理單元:采用多級(jí)穩(wěn)壓、分域供電方案,為不同模塊提供獨(dú)立供電通路,配置電源使能開(kāi)關(guān)與電量監(jiān)測(cè)電路,實(shí)現(xiàn)功耗精細(xì)化管控。
運(yùn)動(dòng)驅(qū)動(dòng)單元:搭載直流伺服電機(jī)驅(qū)動(dòng)芯片,支持閉環(huán)調(diào)速、位置反饋,實(shí)現(xiàn)機(jī)器人底盤運(yùn)動(dòng)、執(zhí)行機(jī)構(gòu)動(dòng)作的精準(zhǔn)控制。
軟件體系架構(gòu)
軟件體系基于嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)搭建,摒棄前后臺(tái)輪詢模式,實(shí)現(xiàn)多任務(wù)的優(yōu)先級(jí)調(diào)度與并行處理,整體分為四層結(jié)構(gòu),每層各司其職且具備標(biāo)準(zhǔn)化接口。
硬件驅(qū)動(dòng)層:封裝各類外設(shè)的底層驅(qū)動(dòng)代碼,包括傳感器采集驅(qū)動(dòng)、電機(jī)驅(qū)動(dòng)、通信驅(qū)動(dòng)、電源驅(qū)動(dòng)等,采用中斷驅(qū)動(dòng)模式替代輪詢模式,減少CPU空轉(zhuǎn)損耗,提升數(shù)據(jù)交互實(shí)時(shí)性。
系統(tǒng)內(nèi)核層:搭載輕量級(jí)RTOS內(nèi)核,提供任務(wù)管理、中斷管理、內(nèi)存管理、時(shí)鐘管理、進(jìn)程通信等核心服務(wù),內(nèi)置實(shí)時(shí)調(diào)度器,支持搶占式調(diào)度與時(shí)間片輪轉(zhuǎn)調(diào)度,保證高優(yōu)先級(jí)任務(wù)優(yōu)先執(zhí)行。
中間接口層:提供標(biāo)準(zhǔn)化應(yīng)用接口,封裝算法調(diào)用、外設(shè)控制、數(shù)據(jù)傳輸、故障處理等通用功能,屏蔽底層硬件差異,便于上層功能模塊的快速開(kāi)發(fā)與移植。
應(yīng)用任務(wù)層:根據(jù)家用服務(wù)機(jī)器人功能需求,劃分為運(yùn)動(dòng)控制任務(wù)、傳感器采集任務(wù)、避障導(dǎo)航任務(wù)、人機(jī)交互任務(wù)、電源管理任務(wù)、故障檢測(cè)任務(wù)等,各任務(wù)設(shè)置獨(dú)立優(yōu)先級(jí),通過(guò)消息隊(duì)列實(shí)現(xiàn)數(shù)據(jù)交互。