吳 昊 鄧成中
(西華大學機械工程與自動化學院,四川 成都 610039)
隨著城市建筑規模的不斷擴大,火災事故變得越來越復雜,消防撲救工作難度增大,危險性越來越高。目前,當火災發生時,往往通過消防部門出動消防車,由消防員手動操作車載消防炮進行噴水滅火。但是現有車載消防炮一方面由于流量小、射程有限,不能及時有效地撲滅火災,減少人民生命財產損失;另一方面,由于需要消防員手動操作消防炮,在石油、化工等高度危險的火災現場,不能保障消防救援人員的生命安全。因此,大流量、射程遠的消防炮已成為一種撲救大型危險火災的重要消防裝備[1]。
消防炮的運動分為水平方向的回轉運動和垂直方向的俯仰運動,由兩個方向上的電機驅動實現。由于大流量消防炮的出水流量大,所需驅動力矩也較大,因此一般采用大功率直流電機作為執行元件。本系統采用集成功率驅動芯片,設計了大功率直流電機驅動電路,可以驅動流量高達150 L/s的消防炮,使消防炮最大射程達150 m;系統具有無線遙控功能,通信距離遠,在有障礙物的情況下可達200 m。
系統總體結構框圖如圖1所示。系統主要由主控制器與無線收發模塊、消防炮水平回轉和垂直俯仰控制模塊、消防炮轉動極限位置檢測模塊以及系統電源4個部分組成。

圖1 系統總體結構框圖Fig.1 Overall structure of the system
主控制器LPC1114通過無線收發模塊nRF905接收遙控器(同樣采用nRF905無線收發模塊實現)發出的按鍵命令;通過采用BTN7975B構成的電機驅動電路,控制消防炮水平回轉機構和垂直俯仰機構中的電機進行相應的轉動,實現消防炮的轉動控制。當消防炮炮口對準火源后,系統接收遙控命令,打開消防炮的噴水裝置(消防水泵和電磁閥門)進行噴水滅火。系統采用霍爾開關檢測消防炮水平回轉和垂直俯仰是否到達極限位置。主控制器通過BTN7975B的電流檢測功能實時檢測消防炮在水平和垂直方向上的電機當前工作電流,判斷電機是否發生過載。如發生過載,主控制器一方面對消防炮進行控制,另一方面通過無線收發模塊nRF905在遙控器上進行指示。
主控制器LPC1114是基于Cortex-M0內核的32位MCU,其內核運行頻率高達50 MHz,指令執行速度快、實時性好;功耗極低、性價比高;片上資源豐富,包括32 kB片內Flash程序存儲器、8 kB片內SRAM、2個SSP接口、8通道10位A/D轉換器、1個看門狗定時器、4個通用定時器以及42個通用 I/O口等[2];尤其適用于外圍模塊多、程序代碼量大、響應速度快、抗干擾能力強的系統。
無線收發模塊nRF905的工作電壓為1.9~3.6 V,工作于3個ISM(工業、科學和醫學)頻段:433/868/915 MHz[3]。nRF905 采用 CRC 校驗(循環冗余碼校驗),片內自動完成曼徹斯特編解碼和字頭處理,通信可靠、抗干擾能力強;采用SPI接口(串行外設接口)與微控制器通信,使用非常方便[4]。
主控制器LPC1114與nRF905的連接圖如圖2所示。主控制器LPC1114通過nRF905的模式控制引腳(TRX_CE、PWR_UP、TX_EN)控制 nRF905 的工作模式;通過 nRF905的狀態輸出引腳(CD、AM、DR)監測nRF905的數據收發狀態;通過nRF905的SPI接口引腳(MISO、MOSI、SCK、CSN)與 nRF905 進行數據傳輸,實現系統與遙控器的雙向無線通信。遙控器可以通過發出按鍵命令來控制消防炮的轉動和噴水滅火動作。

圖2 LPC1114與nRF905連接圖Fig.2 Connections between LPC1114 and nRF905
主控制器通過由BTN7975B構成的電機驅動電路,控制消防炮水平回轉和垂直俯仰機構中的大功率直流電機轉動,從而實現消防炮的水平回轉和垂直俯仰運動。
BTN7975B是由Infineon公司推出的大功率H半橋智能集成驅動芯片。它具有以下特點:①通態電阻典型值為16 mΩ,采用PWM方式時驅動電流最大可達60 A[5],驅動信號PWM頻率最大為25 kHz;②內含電流檢測電路、控制驅動電路,以及1個P溝道的高邊MOSFET和1個N溝道的低邊MOSFET;③可以靈活應用于兩相或三相、直流有刷或無刷電機的控制驅動電路中,無需外加電機電流檢測電路,無需驅動便可以直接和MCU接口,簡化了硬件電路設計,使電機控制更加簡單。在過壓、欠壓、超溫、過流和短路的情況下,芯片自動關斷輸入;當電流超過標定的最大電流時,可以通過MCU端的I/O口控制該芯片的使能引腳關斷該驅動芯片,具有良好的電機保護功能[6]。
采用2片BTN7975B組成消防炮水平回轉電機的H全橋驅動電路如圖3所示。消防炮垂直俯仰電機驅動電路與其完全一致。由于BTN7975B內部沒有光電隔離,所以采用光電耦合器PC817與主控制器LPC1114相連實現光電隔離和電平轉換,以防止驅動電路在發生擊穿等故障時損壞與其相連的主控制器等器件[7]。
2片BTN7975B的OUT端分別接在直流電機的正、負兩端,LPC1114的PCON端用于控制BTN7975B的工作模式。LPC1114上電復位后,其I/O口配置為輸出狀態時默認輸出高電平,經反向器7404輸出后變為低電平。PC817中的光敏三極管導通,BTN7975B的INH端變為低電平,芯片不工作,處于睡眠狀態。同理,當LPC1114的PCON端輸出低電平時,INH端變為高電平,芯片處于工作狀態。當PWM1端輸入非零占空比的PWM時,左半橋高邊MOSFET導通,當PWM2端輸入零占空比的PWM時,右半橋低邊MOSFET導通,此時左、右半橋高、低邊各有一個MOSFET導通組成一個回路,電機正轉;當PWM1端輸入零占空比的PWM、PWM2端輸入非零占空比的PWM時,電機將反轉。電機轉速受PWM的控制,占空比是0~1之間的任意值[8]。
2片BTN7975B的ST端輸出的電流通過線性光耦PC817轉換為電壓信號CUR,并送入LPC1114的第0通道10位A/D轉換器中進行模數轉換處理,從而可間接計算得到流過左或右半橋高邊MOSFET的電流(即電機當前工作電流)。當電機工作電流發生變化時,BTN7975B的ST端輸出的電流也會發生變化,從而改變了線性光耦PC817中發光二極管的光照強度,導致光敏三極管的導通能力改變,使得CUR端輸出的電壓隨之變化,從而實時檢測電機當前工作電流。BTN7975B的SR引腳通過下拉電阻接地,改變電阻的大小可以調節BTN7975B內部MOSFET的導通和關斷時間,具有防電磁干擾的功能。

圖3 消防炮水平回轉電機驅動電路Fig.3 The motor driving circuit for horizontal slewing of the fire monitor
消防炮的水平回轉和垂直俯仰運動通常會有一個轉動角度范圍,即轉動極限位置,當消防炮應用于不同場合時,其轉動極限位置也會不同。消防炮水平回轉和垂直俯仰運動極限位置的檢測是通過采用型號為JK8002D的霍爾開關來實現的。消防炮水平回轉極限位置檢測電路如圖4所示。

圖4 消防炮水平回轉極限位置檢測電路Fig.4 Detecting circuit of the limit position of horizontal slewing of the fire monitor
消防炮垂直俯仰極限位置檢測電路與其完全一致。當消防炮水平回轉到極限位置時,霍爾開關中的OC門打開,OUT端輸出的下降沿信號通過光耦PC817進行光電隔離和電平轉換后,送入主控制器LPC1114的WCON端。此時不管遙控器是否繼續發出該方向的轉動控制命令,主控制器都會控制消防炮停止水平回轉運動。其中,光耦PC817中的發光二極管兩端并聯的1 kΩ泄放電阻,用于抑制霍爾開關中的OC門關閉時還存在的微弱導通電流,以防止光耦導通引起誤動作;并聯的0.1 μF電容用于防止電源電壓出現較大波動而損壞光耦。
系統電源電路如圖5所示,消防炮的輸入電源為直流24 V。系統一方面通過開關穩壓集成芯片LM2575,將24 V輸入電源轉換為非隔離的+5 V電源(VDD5),供給電機驅動電路。另一方面通過寬壓輸入隔離穩壓單輸出電源模塊ZY2405WRBD-2W將24 V輸入電源轉換為隔離的+5 V電源,再通過線性穩壓芯片AMS1117-3.3穩壓得到+3.3 V電源,供給主控制器和無線收發模塊,從而實現了主控制器與無線遙控電路和電機驅動電路電源和地的安全隔離。

圖5 系統電源電路Fig.5 Circuit of power supply of the system
由于消防炮在轉動對準火源以及滅火的過程中會頻繁地啟動和停止電機,加上電機負載慣性大,所以必須對電機的啟停進行特定的加減速控制,才能保證電機啟停時不堵轉[9]。主控制器LPC1114通過電機啟動加速曲線來改變內部定時器的設置值;通過逐漸增大輸入電機驅動電路的PWM的占空比,逐步增大加在直流電機兩端的平均電壓,從而實現電機的平穩啟動。電機啟動加速曲線如圖6所示。

圖6 電機啟動加速曲線Fig.6 Startup accelerating curve of the motor
同理,當電機停轉時,反序改變定時器的設置值,逐步減小輸入電機驅動電路的PWM占空比,實現電機的平穩停轉。系統采用PWM調速方式,一方面實現了電機的平穩啟停,使電機啟停時對系統無沖擊;另一方面又降低了電機的啟動電流,對電機起到了很好的保護作用[10]。
主控制器LPC1114通過BTN7975B的電流檢測功能,實時檢測消防炮在水平和垂直方向上電機的當前工作電流。當電機發生過載時,電流會急劇增大。在消防炮運動過程中,由于電源電壓波動也會引起電機電流出現短時間較大的情況,因此主控制器在設定時間內將采集到的電機工作電流與內部程序設定值進行比較,以判斷電機是否發生過載。如果在設定時間內電機電流恢復正常,則電機繼續正常工作;否則,說明電機當前發生過載,主控制器將控制電機停止轉動。
系統工作流程如圖7所示。

圖7 系統工作流程Fig.7 Working process of the system
消防炮的所有動作都是通過無線遙控實現的,系統運行后處于等待接收命令狀態,即等待接收遙控器發出的按鍵命令。當接收到消防炮轉動方向命令后,主控制器控制消防炮執行相應方向的運動。
在消防炮轉動對準火源的過程中,主控制器實時檢測消防炮在水平和垂直方向上電機的當前工作電流以及消防炮的轉動極限位置。當消防炮水平回轉或垂直俯仰運動到極限位置時,主控制器控制消防炮停止該方向上的轉動;當電機發生過載時,主控制器控制電機停止轉動,并通過無線模塊在遙控器上進行指示。當消防炮炮口對準火源后,消防炮停止轉動,系統啟動消防炮的噴水裝置進行噴水滅火。滅火完畢后,系統關閉噴水裝置停止噴水,重新回到等待接收遙控命令的狀態。
系統采用智能集成功率驅動芯片BTN7975B設計消防炮在水平和垂直方向上大功率直流電機的驅動電路,從而無需額外設計電機電流檢測電路,這不但簡化了系統硬件電路的設計,而且使得電機控制更加簡單。低功耗高性能微控制器LPC1114實時檢測電機當前工作電流,判斷電機是否發生過載,實現了對大流量消防炮在水平和垂直方向上電機的控制和保護。試驗表明,大流量消防炮工作可靠、驅動力矩滿足要求、遙控操作簡單,可應用于大型建筑內的固定式消防系統和裝備消防車輛,具有廣闊的應用前景,在消防領域中將發揮越來越重要的作用。
[1]章勇高,李銀玲,胡愛華,等.一種新型自擺消防炮控制系統的設計[J].工礦自動化,2010(4):32-35.
[2]王威,王少軒.基于Cortex-M0的半導體制冷溫度控制系統設計[J].機電工程技術,2011,40(4):67 -68.
[3]莢慶,王代華,張志杰.基于nRF905的無線數據傳輸系統[J].國外電子元器件,2008(1):29-30.
[4]張曉健,李偉,張小雨.MSP430和nRF905的無線數傳系統設計[J].單片機與嵌入式系統應用,2006(2):68-69.
[5]王名發,江智軍,鄒會權.智能車競賽中直流電機調速系統的設計與比較[J].微型機與應用,2009,28(20):19 -21.
[6]劉貴如,王陸林.BTN7970在直流電機驅動系統中的應用[J].單片機與嵌入式系統應用,2010(8):44-46.
[7]胡發煥,楊杰,邱小童.大功率直流電機驅動電路的設計[J].機械與電子,2009(10):77-80.
[8]游志宇,杜楊,張洪,等.基于場效應管的直流電機驅動控制電路設計[J].國外電子元器件,2008(2):4 -6.
[9]喻興隆,鄧成中.自動消防炮驅動系統的設計[J].消防科學與技術,2010,29(6):510 -512.
[10]汪華章,宰文姣,馬亞寧,等.較大功率直流電機驅動電路的設計與實現[J].西南民族大學學報:自然科學版,2010,36(4):649-654.