DIY一款具運(yùn)動(dòng)狀態(tài)追蹤功能的遙控玩具,做守護(hù)天使
3.3系統(tǒng)軟件架構(gòu)
軟件系統(tǒng)分為四個(gè)模塊:
(1)通訊模塊實(shí)現(xiàn)對(duì)無(wú)線(xiàn)通訊模塊的傳感信號(hào)的收發(fā);
(2)運(yùn)動(dòng)模塊實(shí)現(xiàn)對(duì)電機(jī)、電調(diào)的驅(qū)動(dòng),使電機(jī)按照指定的方向和速率轉(zhuǎn)動(dòng),實(shí)現(xiàn)對(duì)飛機(jī)的控制;
(3)運(yùn)動(dòng)控制模塊,通過(guò)參考當(dāng)前的運(yùn)動(dòng)狀態(tài),通過(guò)選擇合適的運(yùn)動(dòng)控制算法,控制電機(jī)的運(yùn)動(dòng)狀態(tài)進(jìn)而控制飛機(jī)的運(yùn)動(dòng)狀態(tài);
(4)主模塊,通過(guò)合理的算法和調(diào)用,實(shí)現(xiàn)各個(gè)子模塊之間的配合,完成系統(tǒng)的功能,滿(mǎn)足系統(tǒng)的要求。
圖6 軟件系統(tǒng)各子模塊
3.4 系統(tǒng)軟件流程
3.4.1通訊系統(tǒng)軟件系統(tǒng)框架設(shè)計(jì)
根據(jù)STM32F103RE處理器特點(diǎn),本系統(tǒng)采用ZigBee模塊作為無(wú)線(xiàn)接收器,串口對(duì)無(wú)線(xiàn)收發(fā)模塊收一發(fā)狀態(tài)轉(zhuǎn)換的控制。處理器控制信號(hào)流程圖如圖 7所示。
圖7 處理器控制信號(hào)流程圖
3.4.2 軌跡計(jì)算流程圖
軌跡計(jì)算總流程如圖8所示,首先由MCU調(diào)用軌跡計(jì)算子程序,在子程序中判斷該時(shí)刻是否為初始時(shí)刻,若該時(shí)刻為初始時(shí)刻則將速度和位移初始化;若該時(shí)刻為非零T時(shí)刻,則通過(guò)一定的數(shù)據(jù)處理算法以及T-1時(shí)刻的速度和位移數(shù)據(jù)來(lái)獲得T時(shí)刻的速度和位移。
圖8 軌跡計(jì)算流程圖
評(píng)論