胡 偉,韓震宇
(四川大學機械工程學院,四川 成都 610065)
家具為家居環境中的重要組成部分,隨著智能家居的日益興起,傳統的家具形象和功能已不能滿足智能化時代的需求[1]。早在2012 年,智能家居便被列入“十二五”規劃的九大產業,被工信部、發改委和科技部列為未來中國高新技術發展領域的重點方向之一[2]。
當前的智能家居產品,大多是將語音控制、遠程控制及自主調節等控制手段巧妙融入到家具產品中,使之具有自適應、自感應、智能化和多功能化等特點[3],豐富了家具單品的控制方式。但是在如今高房價的居家環境中,單純拓展家具的控制方式已遠遠不夠。在豐富控制方式的同時,房屋空間大小也顯得尤為重要。因此當某種家具不再被使用時,人們希望其能夠自動移動到某個角落,改變其所處的空間位置,使有限的房屋空間被高效利用。
針對以上問題,本文設計了一種可以承載柜體(該系統中為衣柜)的移動底盤,該部件賦予傳統衣柜移動的能力,使其可以沿著特定方向進行平移,以實現空間的分時復用,提高空間的使用效率,且布局靈活可變。這將是滿足人們美好生活需求的一類重要智能產品, 也是未來家具產業功能性產品發展的潮流方向[3]。
本系統由核心控制模塊、人機交互模塊、環境感知模塊以及執行模塊組成。當人們通過人機交互模塊向系統發出指令時,核心控制模塊會對收到的指令進行解析和計算,并將計算結果發送到執行模塊以執行相應的動作。環境感知模塊會在執行器工作時掃描周圍的環境,并將測量數據反饋到核心控制模塊,隨后判斷是否需要改變執行器的當前狀態。
核心控制模塊采用ST 公司的STM32F103 來搭建。其主要功能是對輸入信息進行邏輯判斷并輸出對應指令,控制執行器做出相應的動作。
人機交互模塊使用的是無線控制開關,該無線開關基于ZigBee 模塊而搭建。
環境感知模塊主要包含底盤對自身所在位置的感知,以及對底盤對外界物體的感知。底盤對自身所在位置的感知由三個霍爾開關來實現,而底盤對外界環境的感知則是通過激光雷達測距來實現,底盤如圖1 所示。

圖1 底盤示意圖
執行模塊主要包含3 部分:電機模塊、報警模塊以及燈光模塊。其中電機采用的是兩相步進電機,報警模塊采用的是蜂鳴器,燈光模塊采用繼電器來控制。
如圖1 所示,當主控板收到無線開關發出的移動指令,首先判斷其移動方向,若向B 方向移動,那么此時的激光雷達作用被屏蔽,移動到霍爾開關3 被磁鐵3 觸發,底盤停止移動。若向A 方向移動,那么這時開啟安全防護功能,激光雷達開始工作,通過監測發射和反射激光的相位差來計算反射面到激光雷達的距離,從而判斷其移動路徑上是否存在異物。若其返回的距離值小于柜體的寬度,則說明有異物,底盤隨即停止移動。當再次按下開關,繼續向A 方向移動直到霍爾開關1 被觸發時,關閉安全防護功能。當底盤上的霍爾開關2 被觸發,即到達目標位置,停止移動。
系統硬件設計主要包括執行器選型、主控板設計、ZigBee 無線開關設計三部分。其總體硬件框圖如圖2 所示。

圖2 硬件框圖
該底盤設計負載m=1 000 kg,輪子半徑R=0.05 m,最高運行速度v=0.04 m/s,地面坡度θ<3°,車輪滾動摩擦系數μ=0.02,最大加速度a=0.04 m/s2。運動時所受到的阻力主要由滾動摩擦阻力、加速阻力和地面坡度阻力幾部分構成。
因此可計算出平臺移動所受到的總的阻力為:F總=mgμ+ma+mgsinθ=1 000×9.8×0.02+1 000×0.04+1 000×9.8×sin3°=196+40+512=748 N。取整為750 N,根據作用力和反作用力原理可知,系統需要的驅動力也為750 N,因此可以算出底盤移動所需要的扭矩M=F總×R=750×0.05=37.5 N·m。
在工程設計中常常留出一些余量,因此取整為40 N·m。根據計算結果,這里選用雷賽的兩相步進電機,型號為57CM23,其額定電流為5 A,最大保持轉矩為2.3 N·m。驅動器選用與其配套的雷賽M545D 步進電機驅動器,具有過壓、短路保護功能,15 檔可調細分,可響應最高200 kHz的脈沖頻率。減速器則選用減速比為20 的行星齒輪減速機。那么該組合所能提供的最大扭矩為46 N·m,滿足設計要求。
本系統采用基于Cortex-M3 架構的STM32F103 為主控芯片,該芯片是32 位標準精簡指令集處理器,最高工作頻率可達72 MHz,并集成了 Timer、CAN、ADC、USB、UART以及I/O 等多種豐富的外設功能。在該系統中主要使用到了Timer、UART 以及I/O 這三種外設。
ZigBee 模塊通過串口1 向處理器發送數據,處理器處理指令后,發送一定頻率的高速脈沖和方向信號到步進電機驅動器,驅動步進電機運行。同時通過串口2 來接收激光雷達的反饋距離,通過I/O 口來接收霍爾開關所反饋的開關量信號。結合這兩個外部傳感器的數據和電機當前運行狀態來實時調整電機下一周期的運行狀態。當激光雷達的距離值小于所設定的閾值時,系統觸發安全防護功能,底盤隨即停止移動,同時通過I/O 口控制蜂鳴器和LED 報警。
無線開關是以ZigBee 模塊為核心設計的。ZigBee 是一項新型的無線通訊技術,相較于其他無線通訊技術,ZigBee無線通訊技術擁有低復雜度、低成本和低功耗等優點,因此非常適用于無線開關。在該系統中,低功耗是一個不可忽略的關鍵點。通過實際測試發現,基于TI 公司的CC2530 芯片搭建的ZigBee 模塊,在休眠期間的功耗可低至1 μA,完全滿足無線開關的使用場景。
ZigBee 模塊的內核實際上由一塊增強型的8051 單片機和無線收發芯片構成,因此其具有8051 單片機的大部分功能。無線開關設計要輕薄小巧,因此外圍電路只有4 個按鍵,以及供電電路。使用額定電壓為3 V 的紐扣電池CR2032 來為其供電。該電池具有長續航、紋波小等特點,非常適合用于智能開關等低功耗產品。在實際的開關電路設計中使用的是成都億佰特公司的ZigBee 模塊成品,以縮短開發時間,其電路如圖3 所示。

圖3 無線開關電路圖
軟件設計主要包含以下幾部分的程序:ZigBee 無線通信、運動控制、燈光控制。
ZigBee 無線通訊中最重要的是如何有效降低功耗。在沒有按鍵被按下時,系統進入低功耗模式,此時除了復位和外部中斷,其他由穩壓器供電的所有內部電路全部關閉。當有按鍵被按下時,觸發外部中斷,CPU 內核被喚醒,進入主動模式。中斷服務函數中對標志位置1,主函數中對按鍵進行識別、編碼并發送出去。在發送完畢后再次進入低功耗模式。在ZigBee 的接收端,收到數據時通過串口發送到主控芯片,主控芯片根據收到的信息作出相應決策。
運動控制即對步進電機的狀態進行控制,主要控制參數為發送脈沖的個數和頻率。脈沖個數決定電機轉動步數,即對應著底盤的移動行程,脈沖頻率控制電機的轉速。步進電機的啟停必須有加減速過程,否則會出現丟步、堵轉或超步的現象,從而影響控制精度。這里使用的是梯形加減速算法,即啟動和停止時以相同的加速度進行升降速控制,使底盤平穩啟動和停止。
電機的啟停動作與無線開關及外部傳感器的反饋數據相關。程序流程如圖4 所示,上電以后,系統首先對各個外設進行初始化,隨后對收到的按鍵信息進行循環掃描。當按下“打開”按鍵,底盤開始向圖1 中的B 方向移動,系統依次對外部傳感器的狀態進行判斷,若符合相應的狀態,則執行相應的動作。當按下“關閉”按鍵時,底盤開始向圖1 中的A 方向運行,這個過程中,底盤的運行狀態還會受到激光雷達的影響。除此之外,和“打開”的過程基本相似。

圖4 程序流程圖
在控制電機運行狀態的同時,還要控制衣柜中的照明系統隨著底盤位置的不同打開或關閉。這里采用的策略是:當衣柜剛剛打開時,同時開啟燈光;當衣柜完全關閉時,關閉燈光。
系統對當前智能家具的功能做了一些補充,在豐富控制手段的同時,可在合適的時間將家具放在合適的位置,從而實現對居家環境中空間的分時復用,這一理念在小空間的家庭環境中具有非常廣闊的應用前景。