福田雷沃國(guó)際重工股份有限公司 趙傳偉
山東科技職業(yè)學(xué)院機(jī)電工程系 徐鈺琨
基于ARM的旋挖鉆機(jī)故障診斷系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
福田雷沃國(guó)際重工股份有限公司 趙傳偉
山東科技職業(yè)學(xué)院機(jī)電工程系 徐鈺琨
為實(shí)現(xiàn)對(duì)旋挖鉆機(jī)電控系統(tǒng)的故障排查,設(shè)計(jì)了一種基于ARM控制的故障診斷系統(tǒng)。該系統(tǒng)中,STM32通過(guò)CAN總線實(shí)時(shí)與旋挖鉆機(jī)主控制器(ECU)進(jìn)行通訊,獲取ECU中的故障代碼和發(fā)動(dòng)機(jī)、液壓泵、各類(lèi)傳感器的數(shù)據(jù),并通過(guò)串口與臺(tái)式電腦或筆記本電腦進(jìn)行通訊,在Visual Basic編制的上位機(jī)程序中顯示各類(lèi)信息,達(dá)到在線診斷的目的。經(jīng)過(guò)測(cè)試,此系統(tǒng)可滿足工廠內(nèi)或作業(yè)現(xiàn)場(chǎng)對(duì)故障在線診斷的需求,除具備使用簡(jiǎn)單、準(zhǔn)確可靠的特點(diǎn)外,在其故障診斷范圍內(nèi)準(zhǔn)確率為100%,具有較強(qiáng)的實(shí)用價(jià)值。
故障診斷系統(tǒng);旋挖鉆機(jī);STM32;CAN總線;Visual Basic
旋挖鉆機(jī)是一種適合樁基礎(chǔ)施工成孔作業(yè)的大型施工機(jī)械設(shè)備。該產(chǎn)品由液壓式伸縮底盤(pán)、工作裝置、液壓系統(tǒng)和電控系統(tǒng)四大部分組成。電控系統(tǒng)采用集成線束來(lái)連接各類(lèi)傳感器、執(zhí)行機(jī)構(gòu)或電控單元,以便實(shí)現(xiàn)整機(jī)的行走、鉆孔、取土[1]。由于電控系統(tǒng)集成化程度較高,只要一個(gè)環(huán)節(jié)出現(xiàn)故障,便會(huì)導(dǎo)致整個(gè)系統(tǒng)出現(xiàn)問(wèn)題。由于系統(tǒng)比較復(fù)雜,給一般維修人員帶來(lái)較大的困難。為了便于快速診斷故障,縮短維修時(shí)間,開(kāi)發(fā)了一套故障診斷系統(tǒng)。
故障診斷系統(tǒng)的主控制器是基于ARM Cortex-M3內(nèi)核的STM32系列微處理器。此處理器具備外圍接口豐富,支持串口和CAN,功耗低等特點(diǎn)。在系統(tǒng)設(shè)計(jì)完成后,通過(guò)實(shí)際的產(chǎn)品測(cè)試表明:該系統(tǒng)可滿足工廠內(nèi)或作業(yè)現(xiàn)場(chǎng)對(duì)故障在線診斷的需求,除具備使用簡(jiǎn)單、準(zhǔn)確可靠的特點(diǎn)外,在其故障診斷范圍內(nèi)準(zhǔn)確率為100%,具有較強(qiáng)的實(shí)用價(jià)值。
旋挖鉆機(jī)電控系統(tǒng)主要由四部分組成:(1)電控單元,包括ECU、工況控制器、發(fā)動(dòng)機(jī)控制器和遠(yuǎn)程通訊模塊;(2)各類(lèi)傳感器,包括傾角傳感器、深度傳感器、壓力傳感器等;(3)執(zhí)行機(jī)構(gòu),包括行走馬達(dá)、桅桿油缸、回轉(zhuǎn)油缸等;(4)控制對(duì)象,包括發(fā)動(dòng)機(jī)、主泵、電磁閥、油缸、顯示器等。從故障發(fā)生的部位來(lái)分,其故障類(lèi)型大致分為傳感器相關(guān)故障、發(fā)動(dòng)機(jī)相關(guān)故障、執(zhí)行機(jī)構(gòu)故障、線束故障四大類(lèi)。[2]當(dāng)故障診斷系統(tǒng)通過(guò)CANBUS總線與旋挖鉆機(jī)電控系統(tǒng)的ECU接通后,整機(jī)則進(jìn)入診斷模式。故障診斷系統(tǒng)可以讀取ECU中各類(lèi)參數(shù)及故障代碼。
故障診斷系統(tǒng)的設(shè)計(jì)原理如圖1所示。主要由旋挖鉆機(jī)ECU、故障診斷儀、電腦或筆記本三部分組成。其中,故障診斷儀通過(guò)CANBUS總線與旋挖鉆機(jī)ECU的CAN診斷接口相連接;故障診斷儀通過(guò)RS232串口接口與電腦或筆記本相連。故障診斷儀的主要作用是解析故障代碼并發(fā)送到上位機(jī)上,同時(shí)由將上位機(jī)需要標(biāo)定的參數(shù)進(jìn)行格式轉(zhuǎn)化后發(fā)送到旋挖鉆機(jī)的ECU中。
圖1 故障診斷系統(tǒng)設(shè)計(jì)原理圖
故障診斷儀主要在車(chē)間使用,同時(shí)為了能在惡劣的工作環(huán)境下使用,其采用STM32F103CBT6微處理器作為主控制芯片。首先,它的電源管理系統(tǒng)比較可靠,可根據(jù)電源的變化選擇三種低功耗模式;其次,封裝形式為L(zhǎng)QFP48,通訊接口比較豐富,具有3個(gè)串口,1個(gè)CAN接口,滿足系統(tǒng)對(duì)于各模塊的通訊要求;最后,體積較小,便于集成[3]。
由于旋挖鉆機(jī)的ECU具備一個(gè)CAN診斷接口,因此, STM32F103CBT6需要通過(guò)CAN收發(fā)器與旋挖鉆機(jī)的ECU進(jìn)行通訊。兩者之間其遵守CANBUS通訊協(xié)議,用CANOPEN或CAN2.0進(jìn)行數(shù)據(jù)通訊,數(shù)據(jù)為自定義的故障診斷代碼或需要標(biāo)定的參數(shù)。[4]
與旋挖鉆機(jī)ECU進(jìn)行數(shù)據(jù)傳輸?shù)闹黧w是CAN接口電路,如圖2所示。在此電路中采用型號(hào)為T(mén)JA1050的CAN總線收發(fā)器。此收發(fā)器通過(guò)它的兩個(gè)有差動(dòng)接收和發(fā)送能力的總線終端可以連接到柴油發(fā)動(dòng)機(jī)的CAN線回路中,從而使STM32F103CBT6微處理器和旋挖鉆機(jī)ECU進(jìn)行通訊。
圖2 CAN接口電路
TJA1050的3號(hào)端口為電源端,采用5V電壓;1號(hào)、4號(hào)端口分別連接STM32F103CBT6的CAN發(fā)送端口(33號(hào)引腳)和CAN接收端口(32號(hào)引腳);8號(hào)端口為工作模式選擇端口,其連接到地可進(jìn)入高速模式(正常工作模式),總線輸出的信號(hào)有固定的斜率,可以盡快的速度節(jié)能型切換,滿足最大的位速率和最大的總線長(zhǎng)度,而且其循環(huán)延遲最小;7號(hào)和6號(hào)端口對(duì)應(yīng)CANH和CANL,為了滿足發(fā)動(dòng)機(jī)CAN總線網(wǎng)路的要求,在兩個(gè)端口間采用120歐的終端匹配電阻。
軟件設(shè)計(jì)的重點(diǎn)是STM32F103CBT6的CAN數(shù)據(jù)接收。RealView MDK是ARM公司專(zhuān)門(mén)針對(duì)嵌入式處理開(kāi)發(fā)的一套軟件,具有完善的設(shè)備調(diào)試和軟件仿真功能。由于STM32F103CBT6本身帶有的大量固件庫(kù)函數(shù),可以提高代碼質(zhì)量,縮短開(kāi)發(fā)周期。在本系統(tǒng)中,重點(diǎn)使用flash、DCC、CAN等固件庫(kù)。其軟件框架采用主函數(shù)和中斷函數(shù)的結(jié)構(gòu)。其中,在主函數(shù)中對(duì)各種功能模塊進(jìn)行初始化,并實(shí)現(xiàn)簡(jiǎn)單的數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)計(jì)算;中斷函數(shù)主要實(shí)現(xiàn)CAN數(shù)據(jù)接收和發(fā)送。
圖3 CAN數(shù)據(jù)接收流程
CAN數(shù)據(jù)接收模塊流程如圖3所示。其中,CAN報(bào)文的接收采用中斷方式。因此,在主函數(shù)的CAN初始化過(guò)程中應(yīng)該通過(guò)調(diào)用STM32固件庫(kù)函數(shù)voidCAN_IT-ConfiG來(lái)開(kāi)啟CAN1的中斷,在接收時(shí)通過(guò)判斷其標(biāo)志位來(lái)確定是否產(chǎn)生的中斷,以此進(jìn)入中斷函數(shù)對(duì)收到的報(bào)文進(jìn)行處理。即:在接收一個(gè)報(bào)文時(shí),其標(biāo)識(shí)符首先與配置在標(biāo)識(shí)符列表模式下的過(guò)濾器相比較,若匹配,報(bào)文就被存放到相關(guān)聯(lián)的FIFO中,并且所匹配的過(guò)濾器的序號(hào)被存入過(guò)濾器匹配序號(hào)中。若不匹配,報(bào)文標(biāo)識(shí)符立即再與配置在屏蔽位模式下的過(guò)濾器進(jìn)行比較,如果報(bào)文標(biāo)識(shí)符與過(guò)濾器中的任何標(biāo)識(shí)符都不匹配,那么硬件就丟棄該報(bào)文,且不會(huì)對(duì)軟件有任何打擾。[5]
為了驗(yàn)證故障診斷系統(tǒng)的準(zhǔn)確性及有效性,在福田雷沃重工的FR630D旋挖鉆機(jī)產(chǎn)品上進(jìn)行測(cè)試。在整機(jī)上每次設(shè)置一個(gè)故障,分別對(duì)發(fā)動(dòng)機(jī)、傾角傳感器、行走馬達(dá)、遠(yuǎn)程通訊模塊等部分進(jìn)行了測(cè)試,測(cè)試結(jié)果如表1所示。
表1 測(cè)試結(jié)果
通過(guò)表1可以看出,對(duì)所有設(shè)定的故障,故障診斷系統(tǒng)都給出了相應(yīng)的故障代碼。特別是遠(yuǎn)程通訊模塊,由于本身具備自檢功能,所有能夠?qū)收线M(jìn)行細(xì)化,提高故障排查的準(zhǔn)確性。對(duì)于一般的故障,根據(jù)故障說(shuō)明可以很快找到相應(yīng)的部件,然后進(jìn)行實(shí)際檢測(cè),就能診斷出故障。通過(guò)對(duì)比多次的測(cè)試結(jié)果,故障診斷系統(tǒng)在測(cè)試期間,準(zhǔn)確率接近100%,并且運(yùn)行穩(wěn)定,沒(méi)有出現(xiàn)死機(jī)等現(xiàn)象,可靠性較高。
(1)該故障診斷系統(tǒng)可滿足工廠內(nèi)或作業(yè)現(xiàn)場(chǎng)對(duì)故障在線診斷的需求,提高了故障診斷的準(zhǔn)確性和有效性,降低了工作強(qiáng)度。
(2)由于其測(cè)試范圍不能覆蓋全部所有可能發(fā)生的故障,同時(shí),在當(dāng)前的一些故障代碼的細(xì)化上還存在不足,需要后續(xù)工作繼續(xù)優(yōu)化。
(3)總之,故障診斷系統(tǒng)實(shí)現(xiàn)應(yīng)有的功能和性能,簡(jiǎn)單易用,可靠性高,具備較強(qiáng)的實(shí)際應(yīng)用價(jià)值。
[1]王興剛,李來(lái)平,趙明凱.旋挖鉆機(jī)智能控制系統(tǒng)研究[J].建筑機(jī)械(上半月),2010(4):90-93.
[2]黎中銀,焦生杰,吳方曉.旋挖鉆機(jī)與施工技術(shù)[M].人民交通出版社,2010.
[3]STMicroelectronics.STM32F103XB Datasheet [M].STMicroelectronics,2012.
[4]杜松穩(wěn).基于單片機(jī)的CAN總線傾角傳感器的設(shè)計(jì)[J].液壓與氣動(dòng),2011(3):87-89.
[5]潘銅,葉小榮,張娜,范建峰.STM32的CAN總線中繼器設(shè)計(jì)及應(yīng)用[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2011,11,46-49.