王欣怡,鄧鑫宇,柯宇,王旭
(電子科技大學成都學院 智能制造工程系,四川成都,611731)
隨著全球經濟的發展,以及人類命運共同體和生態文明建設的提出,近十年來全球范圍內綠地面積和公園面積逐年增加[1]。草坪的維護需要大量的人力,且勞動成本高,工作效率低,且傳統的割草機器存在極大的安全隱患。智能割草機是可以代替人工修剪和自動化的設備,大大節約了人力、財力以及物力。因此,研究智能割草機技術,具有廣闊的應用價值。
近年來,國內許多高校和企業對智能割草機器人開展了大量研究。例如:2020年,浙江紹興職業技術學院徐偉鋒團隊在設計智能割草機器人時,將傳感系統、驅動系統以及PLC 控制系統等模塊集于一體,提升了割草機器人運行的穩定性[2];2021 年,華南農業大學謝逢博團隊在對果園割草機器人進行路徑規劃時,控制方法確定為橫向偏差修正算法,有效降低了機器人行進的誤差[3];2022 年,煙臺汽車職業工程學院王德蘭采用TRIZ 發明原理,構建了割草機器人的問題和沖突矛盾矩陣,提出了解決技術矛盾的方案,提升割草效率的同時,降低了機器人動作時的故障率[4];2023 年,江蘇科技大學王新彥團隊采用改進Yolov5 算法用于割草機器人的障礙物識別,提升了識別的準確率[5]。從上述研究來看,割草機器人的智能化功能日趨完善,且控制系統的精度越來越高。因此上述研究表明,想要設計合理的智能割草機器人控制系統,需要根據具體的應用場景和使用需求進行針對性設計,合理配置控制系統的對應模塊,從而滿足便捷割草動作的同時,還能提升系統整體的控制精度。
本文以某工業園園區內部草坪為修剪對象,設計割草機器人。園區內的草坪具有面積較大、位置分散、清理高度較小以及不同位置清理要求不同等特點。故割草機器人的設計主要考慮通過刀盤轉速的調整和設置升降結構來適應不同片區的割草環境。同時,還得設計循跡、避障、無線通信等模塊,來實現機器人的行進、人機交互等功能。鑒于此,控制系統的布局中,主控芯片可以選擇STM32 單片機。因為該類型的單片機能耗較低,且內部具有運算速度比較快的處理器和內存,比較適合處理復雜的控制系統[6]。主控芯片確定后,再根據其他的基本功能,可以確定系統的主要模塊。該控制系統的整體布局如圖1 所示。

圖1 系統總體布局

圖2 STM32F103C8T6 最小系統圖
智能割草機的主控芯片的選擇,主要考慮的依據是:(1)強大的處理能力,有高性能的運算;(2)有豐富的儲存器,可以儲存大量的程序代碼和數據;(3)具有較高的抗干擾能力和穩定性,可以在各種惡劣環境下工作。因此,單片機的型號確定為STM32F103C8T6[7]。
驅動模塊的作用是滿足割草機器人輪式結構的行進。當機器人在草坪作業時,根據工作和地形的情況,需要完成前進、后退、轉彎以及制動等動作。故在驅動模塊的設計中,需要選擇電磁轉矩較大、調速性能較好的電機。所以電機的類型可以確定為直流電機。但傳統的直流電機運行效率通常只有70%~80%且存在工作壽命相對短、噪音較大等問題。因此,本文選擇無刷直流電機作為驅動電機,該類型的電機工作效率可達90%以上,且系統性能穩定、噪音較小、可靠性較高。在轉速控制方面,考慮到系統需要較高的控制精度,故采用脈寬調制(PWM)的方法來實現對割草機的轉速調整,根據電機的電感特性,通過對占空比的改變產生不同的波形,來實現對小車電機轉速的改變。由于智能割草機為較大型的機器,所以在綜合考慮續航和效率的情況下,選擇將兩個22.2V 的航模電池并聯來進行整個電路的供電。電機驅動模塊選用的是L298 系列,L298是雙H 橋結構,可以同時驅動兩個直流電機[8],單路可達到7A 大功率,寬電壓輸入為6.5V~27V。將PA4,PA5,PA6,PA7 引腳設置為推挽輸出模式,定義了PA1,PA2 號引腳,作為PWM 的輸出端口,然后將PA4,PA5,PA6,PA7 引腳分別接到電機驅動板的信號輸入引腳上,來控制旋轉方向,再將PA1,PA2 分別接到電機驅動板的PWM 輸入引腳上,從而實現對電機速度的控制,電機接口控制信號邏輯如表1 所示。

表1 電機接口控制信號邏輯
避障模塊的主要目的是讓割草機能夠識別到前方的障礙物,并且能自動避開障礙物繼續完成割草任務。在循跡避障模塊方面,本文選擇用紅外避障模塊,原因在于紅外傳感器能夠較好地適應外界環境的光線、抗干擾性能強、裝配便捷,且使用方便[9]。考慮到循跡避障模塊的運行穩定性,其比較器采用LM393。該模塊的OUT 端口與單片機PB12 引腳連接,在割草機器人工作時,當檢測到前方有障礙物時,電路板上的綠色輸出指示燈被點亮,同時模塊的 OUT 端口持續 輸出低電平信號。割草機的避障距離、前進速度、旋轉角度等,都可以隨著割草機所處的環境而對程序進行適當的調整。循跡避障模塊控制電路如圖3 所示。

圖3 循跡避障模塊控制電路
割草機器人在運行時,為確保主控系統能夠實時掌握其狀態并根據情況做出對應調控。無線通信技術的選擇顯得非常關鍵。本文在該模塊的設計中,選擇藍牙模塊作為無線通信方式。藍牙模塊的類型確定為JDY-31。因為該類型的藍牙模塊完全兼容HC-05/06 從機[10],這樣可以實現Widows、Linux、android 數據透傳,支持使用者通過AT 命令修改設備名以及波特率等指令,方便快捷使用靈活。本藍牙模塊的設計是把PA9 設置成TX引腳,PA10 設置成RX 引腳,然后把藍牙模塊的TX 引腳和單片機上的RX 引腳進行連接。藍牙模塊電路如圖4 所示。

圖4 藍牙模塊電路
智能割草機的刀具驅動主要是讓其針對不同的割草環境來調整刀盤的轉速,從而達到理想的割草效果。割草機的刀具部分設計有升降功能,使用者可以根據自己的需求來選擇留下的草的長度,相對傳統的割草機,本割草機更具有個性化,且可以滿足不同的需求。電動推桿精度高、無污染、維護成本低、環保節能,更能貼合大環境下的生態環保。電機推桿和割草電機的電路設計部分,定義了PC1,PC2,PC3,PC4 引腳為推挽輸出模式,PC1,PC2 和PC3,PC4分別接到電機驅動板上,來控制電機推桿的啟動和割草電機的旋轉。刀具驅動電路如圖5 所示,自動升降系統模塊電路如圖6 所示。

圖5 刀具驅動電路圖

圖6 自動升降系統電路圖
本割草機系統編程采用易讀性和移植性高的C 語言進行編寫,使用Keil μVision5 by ARM 軟件進行代碼編譯以及調試,這款IDEB 被廣泛地用于代碼的編寫和測試。并且使用STM32CubeMX 對主控芯片的引腳進行配置,配置完成后再用Keil5 進行程序的編寫。編程的思想采用模塊化編程思想,模塊化編寫的程序不僅方便進行系統調試,而且方便移植,這樣大大減少了割草機的開發時間。先進行系統的初始化配置包括定時器、延時函數、系統時鐘、串口等。系統初始化完成后割草機進入等待接收命令狀態,當收到模式改變命令時,割草機啟動相應的程序,然后再完成相應的指令。以刀具驅動系統為例,部分主要運行程序如下:

系統的GUI 界面是圖形用戶界面。基本的運行理念為:系統內部將用戶的指令轉換成相應的代碼信息,然后GUI程序開始運行,并創建相對應的消息列隊,最后程序對隊列中的消息進行處理。在本文中 ,GUI 的界面主要有四個部分:(1)電推桿的升降;(2)刀盤的轉動;(3)割草機的運動;(4)割草機的自動模式。整個割草機的控制如圖7 所示,中間部分是控制割草機運動的,當割草機運動到割草區域后,通過點擊電推桿部分的上升或下降就可調整刀盤的高度,刀盤的高度到理想位置后,就可點擊啟動按鈕,然后就可以開始割草。除此外割草機還帶有自動模式,點擊自動模式后割草機就會開始自動割草GUI 界面的基本布局,如圖7所示。

圖7 GUI 界面布局
為了更好地評估割草機,需要對割草機器人的實際性能進行測試。因此,本文制作了割草機器人實物模型,如圖8所示。并對模型展開測試,部分主要的測試內容包括:割草機的電推桿以及割草盤性能測試、機器人適應地形測試、避障性能測試以及割草量測試。部分測試結果如表2 所示。

表2 部分主要測試結果

圖8 割草機器人實物
從表2 所示的最終測試結果來看,割草機預設的功能基本實現,且控制系統的精度符合要求,機器人能夠正常進行工作,即機器人的控制系統設計方案基本合理。
草坪的管理工作對傳統割草機的功能、性能、效率等有著較高的要求,而傳統大功率的割草機污染大、噪音大,應根據生態環境的發展要求對割草機進行創新。本文的智能割草機很大程度上降低了能源的消耗和對環境的污染,且對于普通的割草機來說本文設計的智能割草機更加的安全,且避免了不必要的人力、財力花費,且割草效果良好,為將來割草機的智能化提供了一種可行方案。