萬歡,趙展,魏雯,賈作文,肖燁,李超,趙雅寧
(蘇州工業職業技術學院,江蘇蘇州,215104)
本文提出了一種面向化工藥品的區域運輸系統的設計,使用意法半導體以Crotex M3內核的32位微控制器作為運輸車輛主控制芯片,與32位Tensilica處理內核的ESP8266連接,構成與服務端通信回路。通信方式采用TCP/IP,使運輸車輛與服務端能夠穩定快速的通信,降低數據傳輸丟包率,保障化工藥品運輸的穩定性。員工可通過桌面服務程序指定運輸車輛的運輸路徑,亦或使服務程序自行規劃運輸路徑。使用區域運輸系統,進行始末地址自動運送,減少運輸過程中人工干預,通過廠區內中控監控運輸車輛運輸過程以及運輸狀態,確保運輸的安全。
區域運輸系統運輸化工藥品能夠有效保障化工廠區內運輸系統規范化、合理化,減少人工干預避免化工藥品對員工健康產生影響,同樣可以減少認為產生的安全隱患,有效保障化工廠區的安全。該系統將運輸配送集成化,只需要通過服務系統進行命令控制,就能夠完成運輸任務。該系統分為AGV車輛系統與服務控制系統兩個部分,AGV車輛系統使用ESP8266通過Wi-Fi與服務控制系統進行交互。AGV車輛系統能夠采集道路信息,包括從紅外傳感器與超聲波傳感器獲取的數據,進行計算判斷躲避運輸道路上的障礙;同時該系統通過控制電機驅動進行控制電機轉速,從而控制車輛車輛行駛。服務控制系統主要進行接受AGV車輛的反饋狀態,通過路徑規劃算法進行判斷與命令。系統總體框圖如圖1所示。

圖1 系統總框圖
硬件電路由三個主要部分組成,分別為以STM32為微控制器的AGV控制系統,H橋式電機驅動和基于ESP8266的Wi-Fi通信模塊。
該系統通過ESP8266的Wi-Fi通信模塊與服務系統進行交互通信,將AGV小車的實時狀態信息通過其反饋至服務端,將服務端的命令進行解析傳遞至AGV控制系統。AGV控制系統通過串口與ESP8266進行數據交互,使用單片機內置PWM控制電機驅動,能夠調節電機轉動方向速度。H橋電機驅動在驅動直流電機中,能夠有足夠的功率進行驅動,有效保障AGV運行時車輛的穩定性。
AGV控制系統使用基于Cortex-M3內核的32位微控制器芯片STM32F103 RET6,該微控制器通過外部8MHz晶振,通過芯片內部倍頻器將主時鐘頻率提高至72MHz,有效提高對信息處理能力與速度,保證對外輸出PWM的穩定性。其內部擁有128KB flash,20KB SRAM,一個高級定時器與三個標準定時器,支持USART、IIC等通信協議[1]。
該控制系統由七個部分組成,分別為電源電路、BOOT電路、復位電路、晶振電路、串口轉換電路、按鍵電路與SWD下載電路。
電源電路由AMS1117線性穩壓器件及其外圍電路組成,在AMS1117輸入端并聯一個小電容抑制高頻雜波、一個電解電容提高AMS1117供電穩定性,輸出端并聯一個小電容抑制輸出端的高頻雜波、電解電容提高AMS1117輸出電源的穩定性。輸出端并聯發光二極管當該供電模塊正常穩定供電時發光二極管將正常發光。電源開關采用單刀雙擲開關,電源供電端串聯上0.5A自恢復保險絲,當控制系統接線錯誤過流過載能夠有效保障系統的安全性。
BOOT電路連接在單片機的BOOT0與BOOT1引腳上,負責配置單片機的啟動模式,當BOOT0為低電平則采用主閃存啟動模式,當BOOT0為高電平若BOOT1為低電平則從系統存儲器啟動,若BOOT1為高電平則從內部SRAM啟動。
復位電路將復位引腳通過電阻與高電平相連,并與微動開關與地相連,開關兩端并聯電容,減小按鍵抖動帶來的影響。當按鍵按下,電容兩端短路進行放電,放電結束后復位引腳與地相連,單片機則自動復位。
晶振電路由兩個晶振組成,分別是高頻晶振與低頻晶振,高頻晶振通過電容與單片機的外部晶振引腳連接,低頻晶振通過電容與單片機的低頻晶振引腳連接。
串口轉換電路是單片機測試時與計算機連接的重要工具,在該設計中采用CH340N為轉換芯片,該芯片無需外部晶振,僅需要外部并聯電容。CH430則將單片機端的USART信號轉換為USB差分信號。
按鍵電路負責調試功能,默認狀態下GPIO通過兩個電阻直接接入低電平,當微動開關按下兩個電阻產生分壓,GPIO端口處電壓升高,起到按鍵開關的作用。
SWD電路為單片機下載電路,通過連接SWD能夠直接對STM32進行調試測試。
硬件電路原理圖如圖2所示。

圖2 硬件原理圖
市面上常見的電機驅動類型一般選用三極管或場效應管作為驅動電路供能原件,三極管能夠精確地控制電流從而控制電機的轉速,當電機功率較大時三極管自身產生的損耗將大大提升,很可能會燒毀三極管。使用場效應管能夠驅動較大功率的電機,將場效應管使用H橋型連接方式通過PWM同樣可以精準的控制。
通過場效應管驅動直流電機的電路采用常見的H橋驅動電路,H橋作為一個典型的直流電機驅動控制電路,能夠采用集成芯片或者分立元件,由于驅動四個行進電機需要較高的電流需求,所以采用分立元件,防止IC因功率過大燒毀。通過H橋并能夠對電機進行多種狀態操作,如正轉、反轉、停止、制動,H橋電路需要對每個橋臂進行精確控制,防止因為同側同時導通導致MOS管燒毀。通過對兩種情況的比較,MOS-H橋型的電機驅動電路能夠作為本設計AGV小車電機的驅動電路,通過各樣詳細參數的比較MOS管更加適配[2]。H橋原理圖如圖3所示。

圖3 H橋原理圖
軟件服務系統共分為兩個部分,分別為通信服務程序與路徑規劃程序,通信服務程序負責信息傳遞,將雙方的消息進行打包傳送,對接收到的數據包進行解包處理。路徑規劃程序負責將當前運輸任務進行規劃,從起始點至終點的路徑自動規劃,減少中間人為干預。
通信服務程序以TCP通信協議,在通信過程中能夠減少丟包概率。通信程序使用C++進行編寫,能夠有效利用內存,減少CPU的資源浪費。
服務器的建立分為六個步驟,首先需要建立套接字,套接字為通信雙方端點的抽象,是連接應用進程與網絡協議棧的橋梁,建立套接字后進行綁定端口號,設定監聽模式等待客戶端連接,同時開辟新線程向客戶端發送數據。
在等待客戶端連接的時候需要將每個客戶端的信息單獨進行處理,將每個客戶端的用戶信息存入容器中,當需要使用時使用迭代器進行索引。每個客戶端的信息傳入路徑規劃方法中,進行路徑規劃,規劃結束則將路徑反饋給客戶端。
在多線程處理中,將兩線程需要同時處理的數據進行加鎖,當不對數據加鎖時,被訪問數據被多個線程同時訪問造成單一數據多次處理,使被處理數據結果處理異常。當加上數據鎖后,多個線程依次獲取訪問權限進行處理避免數據處理異常,保證服務程序的穩定運行。通信處理中減少容器的使用能夠避免內存快速膨脹,當開辟后使用結束的容器需要及時釋放避免內存浪費,避免因內存異常產生不必要的損失。通信部分設計框圖如圖4所示。

圖4 通信部分設計框圖
AGV小車主要用于許多工業和軍事應用。路徑規劃的研究是AGV小車研究中最重要的方面之一。AGV小車的路徑規劃需要在滿足特定優化條件的同時,通過環境找到一條無碰撞路徑,從指定的起始位置到期望的(目標)目標位置。現有的路徑規劃方法,如可見性圖、勢場和單元分解等圖形方法,都是為存在靜止障礙物的靜態環境設計的。在海洋科學研究、工業機器人和軍事作戰應用等實際系統中,機器人通常面臨同時存在移動和靜止障礙物的動態環境。該項目提出了一種基于啟發式的方法來有效地搜索可行的初始路徑。然后將基于啟發式的方法結合到基于模擬退火算法的動態機器人路徑規劃方法中。因此,解決方案的質量以規劃路徑的長度為特征,并且在運行時和離線路徑規劃的基于模擬退火的方法中使用組合啟發式方法來提高解決方案的質量[3]。
本設計基于一種面向化工藥品的區域運輸系統。系統采用意法半導體推出的基于CM3核心的微控制器STM32F103芯片作為主控,電機驅動采用H橋電路,設計中使用雙路的直流電機驅動,該驅動最大承受功率達到160W,能夠使用市場上多數直流電機。另外,采用光耦電路避免因驅動電路損壞單片機,針對欠壓與過流能夠及時切斷保護。通信服務程序負責信息傳遞,將雙方的消息進行打包傳送,對接收到的數據包進行解包處理。路徑規劃程序負責將當前運輸任務進行規劃,從起始點至終點的路徑自動規劃,減少中間人為干預[4]。
系統具有工作狀態穩定、操作方式便捷等特點,在化工藥品運輸中能夠承載高并發情況,滿足區域型的非接觸式化工藥品輸送需求。同時,期望在“智能制造”背景下為進一步實現智慧工廠奠定堅實的基礎,為化工領域從業人員提供有安全保障的工作環境。