牛旭,楊蕾,李旭
(中原工學院 電子信息學院,河南 鄭州 450007)
機器人技術興起于20世紀60年代,隨著電子技術的飛速發展,機器人技術也日趨成熟,并且給人們的生產和生活帶來了深刻影響。移動機器人是機器人大家庭中重要的一員,按照移動方式可以分為足式移動機器人、履帶式移動機器人、輪式移動機器人等類型。其中輪式移動機器人是應用最為廣泛的一種機器人(兩輪自平衡車就是輪式移動機器人的一種),它更加智能化,發展前景更為廣闊。
現如今,新冠病毒依舊危害著全世界人民,雖然疫情得到了有效控制,但是醫務人員因為種種原因還是要冒著很大的風險沖在疫情前線。這個時候就體現出平衡車的益處,它可以負載著藥品將其直接送到新冠輕癥患者手上,降低醫護人員感染的概率。目前,以傳統機動車為主的出行方式所帶來的大氣污染和交通擁堵等問題越發突出。短途出行的環境友好型替代品——雙輪智能平衡車逐漸走入人們的視野,智能平衡車以其體積小、操作方便、環境友好等優點得以迅速普及,故此我們設計基于多傳感器的雙輪平衡車遙控系統,這樣可使我們的平衡車更具實用性、獨創性。在某些危機情況下,利用遙控系統控制平衡車,讓它代替我們身處險境完成相關工作。
一個完整的無線遙控系統通常包括發射部分、接收部分和執行部分,三者缺一不可。發射部分包括操作桿(或指令鍵)、調制電路、指令編碼電路、發射傳感器和放大電路。遙控端發送指令,經由指令編碼電路進行指令編碼,使其在信道中傳輸,調制電路要將指令編碼信號加載到高頻載波上,由于信道傳輸中存在損耗,放大電路對調制信號進行功率放大,最后經由發射傳感器實現指令信號的發送。接收部分包括接收傳感器、放大電路、解調電路和指令譯碼電路。接收部分是發射部分的逆過程,實現指令的解讀。執行部分一般為在驅動電路和各種執行電路接收到發射部分的正確指令后,驅動電路聯結執行電路完成相應的操作。
本設計方案在遙控系統可行性的前提下進行探索,采用模塊化的設計邏輯。本次設計中整體系統核心控制單元采用STM 單片機,拓展連接ESP8285Wi-Fi 模塊和電機驅動模塊TB6612FNG。ESP8285 模塊與設備之間需要路由器作為連接中介,模塊從路由器接入互聯網,可對設備進行遠程遙控,從而實現遙控端與單片機的關聯,并且在整個操作過程中雙輪平衡車始終保持平衡站立。通過遙控端發送指令,ESP8285Wi-Fi 模塊在接收到指令后,進行解調、譯碼等處理,再通過內部路由器串口端將指令傳遞給單片機,利用直流驅動電機芯片TB6612FNG,聯結直流電機驅動平衡車完成相應的指令操作,如實現驅動小車前進行駛、后退行駛和左右轉彎等基礎遙控功能,從而實現雙輪平衡車遙控系統方案設計。
整體系統以差速驅動電路為主體,這部分主要由單片機拓展板、電機驅動模塊、兩個直流電機、A/D 轉換以及定時計數器組成。PWM 調速系統主要提供兩項功能:(1)完成整體系統的轉向控制。(2)完成整體系統的轉速控制,從而實現整體遙控系統的差速驅動。單片機通過PWM 技術對模擬輸入信號進行數字編碼(輸入模擬電壓值,輸出的PWM 信號為數字信號),可以模擬產生路脈寬可調的電平信號,從而實現0~2占空比輸入,并由直流電機驅動芯片對電機施加線性電壓,實現電機轉動。為電機驅動設置一個基準電平,在單片機輸入電平信號后,通過二者的對比來控制電機的轉向與轉速,當輸入電平為正且大于基準電平時電機加速,反之電機減速;當輸入電平為負時電機反轉。本設計方案采用差速驅動,平衡車雙輪各安裝一個直流電機,實現左、右輪的差速控制。利用左右車輪電機的轉動方向和轉速不同來完成不同的動作,車體的轉彎就是依照此原理實現的。通過手機控制端發送控制指令,單片機分析處理后調用相關函數來實現前進、轉彎、后退等任務。
本方案主要元器件包括STM32 單片機、STM32F103C8T6核心板、電源模塊、TB6612FNG 電機驅動模塊、ESP8285Wi-Fi 模塊、BT06 藍牙模塊、雙輪平衡車。整體系統核心控制單元為STM 單片機,通過STM32 拓展板連接外設模塊電路。直流電機驅動模塊的核心為TB6612FNG 芯片,同時控制兩路直流電機,實現差速驅動。ESP8285Wi-Fi 模塊作為指令中轉站連接遙控端和單片機,完成遙控系統設計。
電源和單片機開關開啟后,ESP8285Wi-Fi 模塊進入STA模式,通過遙控端發送指令,ESP8285Wi-Fi 模塊在接收到指令后,進行解調、譯碼等處理,再通過內部路由器串口端將指令傳遞給單片機,利用TB6612FNG 電機驅動模塊聯結兩個直流電機,實現差速驅動,完成相應的操作。硬件整體設計框圖如圖1所示。

圖1 硬件整體設計框圖
雙輪平衡車是智能移動機器人系列的典型裝置,其運作原理是通過檢測平衡車傾斜角度和運行方向,提前調整兩個直流電機的轉向和轉速,從而使雙輪平衡車保持獨立平衡狀態。雙輪平衡車獨立平衡的實現有賴于比例和微分控制,而完成雙輪平衡車行進方向及速度控制則是采用了比例和積分控制,正是基于三種控制算法的最終總疊加,才使雙輪平衡車能保持獨立平衡,整體系統始終處于一種動態的穩定之中。
該平衡車主要包括STM32 核心模塊、直流電機驅動模塊、Wi-Fi 模塊和BT06 藍牙模塊。其中STM32 核心模塊為核心控制模塊,直流電機驅動模塊驅動電機控制小車行動,Wi-Fi 模塊主要用于實現遠程控制,藍牙模塊用于實現串口與藍牙設備之間的數據傳輸。對四個模塊的介紹如下:
(1)STM32 核心模塊。該模塊是一款基于ARM Cortex-M 內核STM32 系列的32 位微控制器,程序存儲器容量是64 KB,需要電壓2 V~3.6 V。外圍設備包括DMA、電機控制PWM、PWM、溫度傳感器。接口類型為CAN、
I2C、SPI、UART、USB。
(2)直流電機驅動模塊。本方案選用TB6612FNG 驅動模塊,TB6612FNG 驅動模塊能夠同時輸出兩路控制信號,對兩個直流電機進行智能控制。該模塊以連續電流的形式輸出電流時,單通道最高可輸出1.2 A,模塊啟動脈沖電流峰值在2.2 A~3 A 之間。具有反轉、正轉、加速、減速等4種電機控制模式,可通過調整輸入脈沖信號的占空比來控制兩路電機的轉向及轉速,從而達到差速驅動。
(3)Wi-Fi 模塊。本方案使用ESP8285Wi-Fi 模塊實現手機遙控端與單片機的連接,采用STA 模式可實現無限遠的遙控距離。ESP8285Wi-Fi(UART—Wi-Fi 串口模塊)專門為硬件聯網設計,在Wi-Fi 與串口設備之間的數據交換中,不會發生數據的丟失和變化,輸入即輸出,并且符合無線網絡標準。與同類產品相比,具有超低功耗和遠距離傳輸等極具競爭力的優勢。
(4)BT06 藍牙模塊。BT06 藍牙模塊專門為智能無線數據傳輸而打造,遵循V3.0 藍牙規范。本模塊支持UART接口,并支持SPP 藍牙串口協議,具有成本低、體積小、功耗低、收發靈敏性高等優點,只需配備少許外圍元件就能實現其強大功能。
軟件設計的核心是雙輪平衡車遙控狀態下的差速驅動部分,包括前進行駛模塊、后退行駛模塊、左右轉彎模塊、電機停止模塊,采用PWM 方式對直流電機進行控制(PWM調速相當于在一定周期內設置判決門限,確定脈沖占空比,從而達到對轉速的控制)。
在操作過程中通過調整電機的轉向和轉速來實現前進行駛、后退行駛、左右轉彎、停止等功能。當兩個電機均為正轉且速度一致時,平衡車表現為前進;當兩個電機均為正轉但左輪電機速度小于右輪電機速度時,平衡車表示為左轉;當兩個電機均為正轉但左輪電機速度大于右輪電機速度時,平衡車表現為右轉;當兩個電機均為反轉且速度一致時,平衡車表現為后退;當兩個電機速度均為0 時,平衡車表現為停止。手機控制端發出相應指令后,平衡車會做出相應的動作。
在程序整體設計中,首先進行系統的初始化設置,其中包括各引腳配置、函數聲明以及傳輸協議,然后進入循環結構,對小車的遙控控制進行了模塊化處理。遙控系統體系設計流程圖如圖2所示,初始時平衡車為獨立平衡站立狀態,按遙控端開啟遙控控制后,相當于單片機收到指令分析處理后進入中斷程序,通過遙控端控制雙輪平衡車動作。由于采用了模塊化設計邏輯,并且STM 單片機使用的編程語言為C 語言,因此本次設計中Wi-Fi 模塊和藍牙模塊電機驅動部分采用相同的中斷程序。二者接口為同一位置,因此只能采用一種遙控方式,同時在遙控控制過程中調用平衡程序,保證平衡車在遙控控制過程中平衡運行。通過遙控端發送指令,Wi-Fi 模塊(藍牙模塊)接收到指令后,進行解調、譯碼等處理,然后利用串口通信將處理過的指令信息傳遞給單片機,單片機分析處理后調用指令對應的庫函數,驅動雙輪平衡車執行相應的操作。

圖2 遙控系統設計流程
本方案基于雙輪平衡車平臺,連接ESP8285Wi-Fi 無線模塊,實現真正意義上的物聯網控制。在初次Wi-Fi 配置成功后,在后面遙控距離沒有限制,只要是在有網絡的地方即可遙控平衡車。以STM32 拓展板為核心控制單元的整體遙控系統如圖3所示,實驗環境為空曠無雜物的場地,該遙控系統基本能夠實現設計任務指標。

圖3 系統整體實物圖
啟動平衡車,使其保持整體直立5 s 左右,系統進行初始化。雙輪平衡車調用平衡程序,保持平衡站立,Wi-Fi 無線模塊上的藍色指示燈常亮,表示模塊進入待連接狀態,手機遙控端連接無線模塊發出的熱點,輸入對應的IP 和端口地址,指示燈閃亮,表示已連接。此時相當于中斷進入遙控程序中,與此同時調用平衡程序,手機遙控端發出指令后,單片機調用相應的遙控程序模塊,通過PWM 調速函數,實現左右電機的差速驅動,從而實現平衡車的遙控控制。藍牙模塊應用原理同上,把Wi-Fi 模塊換成藍牙模塊,在系統啟動后,基于手機配對通過藍牙遙控平衡車,藍牙遙控方式有三種,分別為按鍵遙控、重力遙控和搖桿遙控。藍牙遙控內容包含前后左右行駛、旋轉、PID 調試等。
本文設計一款基于多傳感器的雙輪平衡車遙控系統,多次的實驗表明,在四周空曠無遮擋物的環境下,整體遙控系統可實現遠距離遙控(ESP8285Wi-Fi 模塊設置為STA模式,在STA 模式下可實現長距離遙控,遙控距離可達數千米之遠)。在復雜的工作環境中,該系統可控制平衡車代替人類進行危險的工作,具有一定的應用推廣價值和現實意義。