曹維杰,趙立宏
(南華大學機械工程學院,湖南衡陽 421001)
在近幾十年來,由于自動化技術的飛速發展和國民物質生活水平的顯著提高,各行業的發展越來越依賴于物資運輸。特別是管道運輸,以其運量大、運輸方便、成本低廉等優點,在國民經濟中占有越來越大的比重,廣泛應用于石油能源、食品加工、城市給排水、農業灌溉、核能等領域。業等領域,已被廣泛使用。由于輸送介質的化學腐蝕、不可抗拒的自然災害及其自身缺陷,極有可能使輸送的物料發生泄漏,造成環境污染、易燃物爆炸、能源浪費等嚴重事故[1-2]。因此,有必要定期檢查、維護和清潔管道內部。管道監測工程需要用到管道機器人,目前,傳統的管道機器人結構由中央控制器、驅動單元、通信模塊、圖像采集模塊、承重體等組成[3-4]。其實施過程如下:操作人員接收管道機器人采集的管道路況信息,及時發出控制指令,實現對其運行軌跡和狀態的控制,以及具體功能。
管道機器人是一種可沿細小管道內部或外部自動行走、攜帶一種或多種傳感器及操作機械,在工作人員的遙控操作或計算機自動控制下,進行一系列管道作業的機、電、儀一體化系統,優點是可以實現快速運動、靈活操縱、準確判斷和較低成本[5]。但傳統的管道機器人存在與管道尺寸不相適應的諸多問題,與管道尺寸不完全匹配,轉彎時容易發生翻車或卡死。通信模塊一般采用無線藍牙通信模塊,在通信距離和工作范圍上受到影響,容易出現傳輸信號受阻,甚至信息傳輸和控制中斷的情況。因此,本文設計一種具有自動棘輪收放的自適應管道機器人來解決上述問題,提高管道機器人的應用性。
本文的目的是設計一套以STM32單片機為主控的自適應管線直徑并配有自動棘輪收放的管線機器人。如圖1所示,為了優化智能車的行駛穩定性,提高其抗傾覆能力,設計了單彈簧自動調節頂輪裝置,為了避免信號傳輸線在管道內糾纏的問題,設計了單向棘輪綁扎裝置,并結合差分驅動控制、電機PWM調速、動態畫面實時傳輸、WiFi接收裝置、無線遙控裝置、精確放料裝置、攝像頭雙自由度萬向節等。該方案的設計分為系統結構設計、系統硬件設計、系統軟件設計和系統測試分析4大部分[6],由以下各章依次展開。
圖1 管道機器人系統實物
該機器人采用傳統智能車的結構,以亞克力板為底盤材料,四輪驅動,采用微型可調速永磁直流減速電機。本文提供了一種管道直徑自適應、棘輪自動收放的管道機器人,包括小車、單向棘輪線束和WiFi接收器,如圖2所示,單向棘輪線束上有數據傳輸線,單向棘輪線束的兩端通過數據傳輸線與小車和WiFi接收器連接。
圖2 系統結構的示意圖
當小車進入管道并開始工作時,單向棘輪束線裝置自動放線,如圖3所示,放線長度由機器人前進的距離所決定,機器人前進多遠則單向棘輪束線裝置就放出多長的線,當小車檢查完畢并返回時,啟動高扭矩電機,使其開始工作,高扭矩電機通過固定軸帶動單向棘輪順時針轉動,收線速度與小車速度一致,小車可順利歸返,當機器人進入管徑大小不同的管道內部時,萬向輪通過鼓簧的壓彈作用,自適應管道的管徑,在管道內部進行行走測試時,如果機器人經過較大障礙物時,單彈簧自動調節頂輪進行壓縮運動,如圖4~5所示,以保證機器人在作業過程中的行駛通過性,如果機器人在管道內部經過炮彈坑時,則單彈簧自動調節頂輪通過鼓簧的伸長來將萬向輪支撐在管道頂部,以保證機器人的徑向支撐力和機器人的防傾覆能力。
圖3 單向棘輪束線裝置的剖面示意圖
圖4 單彈簧自動調節頂輪結構的俯視示意圖
圖5 單彈簧自動調節頂輪結構的主視示意圖
根據設計要求,本系統主要由STM32F103主控模塊、底盤減速直流電機驅動模塊、俯仰電機控制模塊、電源模塊和無線通信模塊組成。機器人硬件設計結構如圖6所示。
圖6 機器人硬件設計結構
無線操作器手柄通過無線通信模塊與STM32F103控制器通信,發送控制指令,控制器根據接收到的控制指令為機器人執行相應的功能。控制器接收控制直流電機命令,然后給直流電機輸出信號,通過調節兩側驅動輪的轉向和速度實現機器人的運動狀態和運動軌跡[7]。擴展板采用專為STM32機器人研制的L298N多功能擴展板,配合STM32核心板無縫對插使用,實現無損擴展,集成雙H橋L298N電機驅動芯片,能實現4個馬達驅動運行和PWM軟件調速,集成了L2M2596S開關電源穩壓芯片,支持6~12 V寬電壓輸入,為整個系統提供穩定的5 V電源。同時還集成了紅外接收頭、有源蜂鳴器、LED顯示、電源開關、支持6路舵機接口、藍牙接口、超聲波、WiFi、紅外循跡、紅外避障和8路5 V輸出等接口。
系統選用嵌入式微處理器STM32F4103,該芯片使用ARM先進架構Cortex-M3內核,32位精簡指令集的核心[8]。運行頻率高達72 MHz,多達112個I/O資源和高容量的RAM存儲,并集成了3個12位ADC-21通道、2個12位DAC、定時器、實時時鐘等在內的整套先進外設。可使用keilC語言編譯并支持TTL下載,支持STLink-SWD在線調試。4個PWM定時器用于驅動底盤4個直流電機,2個PWM定時器用于驅動云臺電機,1個ADC用于底盤雙H橋輸出電流的過流保護,2路通信接口分別用于遙控器接收輸入和調試等。
STM32F103主控模塊原理如圖7所示。
圖7 STM32F103主控模塊原理
設計了一個雙H橋直流驅動電路來控制機器人的運動速度和方向,如圖8所示。L298N是ST公司生產的高壓大電流電機驅動芯片。該芯片采用15腳封裝,既可以驅動直流電機也可以驅動步進電機[9]。一顆驅動芯片可同時控制兩臺直流減速電機做不同的動作,在6~46 V電壓范圍內提供2 A電流,并具有過熱自切和反饋檢測功能。L298N可以直接控制電機。通過主控芯片的I/O輸入設置其控制電平,可以驅動電機正轉和反轉。其特點是操作簡單,穩定性好,能滿足電機的直流大電流驅動條件。同時,L298N芯片由標準邏輯電平信號控制,具有兩個使能控制端,允許或禁止器件工作,不受輸入信號的影響。有邏輯電源輸入端,使內部邏輯電路部分工作在低電壓狀態,可外接檢測電阻,其變化可反饋至控制電路。通過調節STM32F103的I/O輸入對其控制電平進行設定,從而控制機器人兩側驅動輪的轉速,完成機器人在管道內的移動。圖9所示為L298N內部邏輯。
圖8 電機驅動模塊
圖9 L298N內部邏輯
穩定的電源對于一個控制系統來說是至關重要的,關系到系統能否正常運行。系統總的電源供應來自12 V鋰電池,由于電路中的不同電路模塊所需要的工作電壓和電流容量不相同,需要進行電壓調節,驅動輪電機電調為5 V供電,云臺電機5 V供電,單片機STM32F103需要3.3 V低壓供電[10-11]。分別使用DC-DC開關穩壓芯片(LM2596S模塊)和穩壓芯片。LM2596是降壓型電源管理單片集成電路的開關電壓調節器,能夠輸出3 A的驅動電流,轉換效率高,固定輸出版本有3.3 V、5 V、12 V,可調版本可以輸出小于37 V的各種電壓。LM2596S模塊原理和內部邏輯分別如圖9、10所示。
圖10 LM2596S模塊原理
以5 V輸出為例,當VO由于Vi的波動大于5 V時,反饋檢測電阻R1上的電壓將大于1.235 V,此電壓Vr1與基準電壓Vref通過誤差放大器,將Vref-Vr1(為負數)的值放大,這樣即使微小的誤差也會被檢測到。然后送入比較器與一鋸齒波比較,比較器即對應輸出高低電平控制后級的latch,如圖12所示,占空比增大。比較輸出為1時latch輸出低電平,比較輸出為0時latch輸出高電平,相當于對比較器輸出取反,實際latch類似于一個SR觸發器,比較器輸出接到R輸入。那么三極管基極接收到的PWM占空比減小,由BUCK電路的結論可知,占空比減小,輸出電壓減小,從而使輸出處于動態平衡,穩定在5 V。
圖12 比較器狀態
使用KeilμVision 5軟件開發系統選用C語言編程,主要控制模塊程序包括推桿運動程序、傾斜控制程序、驅動輪電機控制程序,以及其他功能電機控制程序。系統配置和初始化程序包括時鐘配置、延時函數初始化、串口初始化、定時器初始化[12-13]。在庫函數中,定義幾個代表機器人不同控制狀態的成員函數。采用ps2無線操作器作為控制器,利用無線通信模塊傳輸控制命令。本設計數據意義對照表1。
表1 數據意義對照表
當有按鍵按下,對應位為“0”,其他位為“1”,例如當鍵“SELECT”被按下時,Data[3]=11111110B。
電機驅動程序流程如圖13所示。機器人啟動后,操作員根據機器人實時狀態操作無線操作器上的功能按鈕對機器人進行實時控制。當無線機械手柄發出動作信號時,控制器評估是否接收到信號,如果接收到信號,則根據接收到的信號評估機器人應該執行什么動作,以控制各個模塊的相互協作,其中包括推桿運動模塊、云臺控制模塊、驅動輪電機控制模塊和其他功能電機控制模塊等[14-15],最終實現機器人與無線操作器按鍵相應的功能。
圖13 電機驅動程序流程
對于自主遙控導航通過性能實驗,采用了以下方案,通過在管道中預設一個終點,利用安裝在機器人上的4自由度攝像頭,確認是否準確到達目的地后,啟動自主遙控導航功能,測試管道機器人的移動,操作如圖14所示。
圖14 遙控和穩定性測試
由于單彈簧頂輪大大增強了機器人的驅動穩定性,單向棘輪線束裝置運行良好,保證了攝像頭采集和輸出信號的穩定性,通過系統集成和經過上述測試得到的數據進行了對比分析。如表2所示。
表2 測試的完成度分析
經過多次測試,確定該管道機器人具有優越的管道驅動穩定性,能夠準確地導航到指定目標點。試驗中出現故障的原因是收放線裝置中的數據線與齒板糾纏在一起導致卡死,導致無法順利到達目標點。遙控導航的效率大于96%,所以導航模塊實現得很好。
本文介紹了一種基于STM32F103具有自適應管道直徑且配有自動棘輪束線裝置的管道機器人,重點闡述了系統結構設計、系統硬件模塊設計、系統軟件設計。其中,在結構設計上,單彈簧自動調節頂輪可使機器人自適應一定范圍大小的管道直徑,提高了機器人在工作過程中的行駛穩定性。單向棘輪束線裝置,避免了信號傳輸線在管道內部纏繞的問題,同時提升了機器人在工作過程中的數據傳輸質量。同時,在硬件模塊設計中,驅動模塊雙H型電路設計為機器人實現二維空間內做任意方向的移動及物料的精準投放、單向棘輪束線控制、攝像頭雙自由度云臺控制等提供了硬件基礎。在系統軟件設計上,選用KeilμVision 5軟件開發系統,采用C語言編程,實現的控制模塊包括推桿的單自由度的往復橫向運動、云臺的雙自由度運動、驅動輪電機的驅動等。同時,通過一系列的誤差分析,其中包括孔徑公差所帶來的誤差、摩擦所引起的誤差、和制造所導致的誤差3部分進行了簡單的分析,確保了整個系統的正常運行。