基于MSP430和nRF905的塔吊無(wú)線(xiàn)遙控系統
3 系統軟件設計
系統軟件包括發(fā)射器和接收器軟件。發(fā)射器和接收器軟件的功能劃分對遙控系統性能的影響很大,為提高系統可靠性,加快緊急故障出現時(shí)的恢復速度,所有控制的邏輯處理全部在發(fā)射器中實(shí)現,發(fā)射器的發(fā)送采用定時(shí)發(fā)送和中斷發(fā)送兩種方式:當有按鈕動(dòng)作時(shí),用中斷方式發(fā)送,在隨后的時(shí)間內按定時(shí)方式發(fā)送。接收器僅實(shí)現信號接收、譯碼和驅動(dòng)輸出,當連續3次收不到信息時(shí),接收器自動(dòng)關(guān)閉所有輸出,恢復初始狀態(tài)。這樣做的優(yōu)點(diǎn)是:
?。?) 對發(fā)送器的按鈕控制的捕捉可靠。當中斷信號萬(wàn)一丟失時(shí),接收器失去控制而保持原來(lái)狀態(tài),但隨后的定時(shí)發(fā)送的控制信息會(huì )作出相應的控制。
?。?) 當射頻信號受到干擾或發(fā)射器出現故障而使接收器收不到控制信息時(shí),接收器自動(dòng)關(guān)閉所有輸出而恢復初始狀態(tài),防止事故的擴大,同時(shí)可實(shí)現發(fā)射器關(guān)閉或電能不足時(shí),接收器自動(dòng)關(guān)機.
3. 1 發(fā)射器軟件
發(fā)射器剛上電時(shí),完成的初始化主要包括: I/O端口初始化、無(wú)線(xiàn)芯片配置、打開(kāi)定時(shí)器和I/O 中斷使能。其余的功能主要在定時(shí)中斷和I/O中斷服務(wù)子程序中實(shí)現。中斷服務(wù)子程序的主要功能為:判斷各按鈕的狀態(tài)、按鈕狀態(tài)編碼、編碼狀態(tài)發(fā)送。MSP430微控制器和nRF905通過(guò)SP I口通訊的處理流程如下:
?。?) 微控制器有數據要發(fā)送時(shí)通過(guò)SP I接口,按時(shí)序把接收機的地址和要發(fā)送的數據送傳給nRF905;
(2) 微控制器置高TRX _CE 和TX _ EN, 激發(fā)nRF905的ShockBurstTM發(fā)送模式;
(3) nRF905 按ShockBurstTM 發(fā)送: ①射頻寄存器自動(dòng)開(kāi)啟; ②數據打包(加字頭和CRC校驗碼) ;③發(fā)送數據包; ④當數據發(fā)送完成時(shí),數據準備好引腳被置高。
?。?) AUTO_RETRAN被置高, nRF905不斷重發(fā),直到TRX_CE被置低;
(5) 當TRX_CE被置低, nRF905發(fā)送過(guò)程完成,自動(dòng)進(jìn)入待機模式。
發(fā)射器流程圖,如圖3所示。
圖3 發(fā)射器主程序流程圖
3. 2 接收端軟件
接收器上電初始化主要包括: I/O端口初始化、無(wú)線(xiàn)芯片配置、打開(kāi)定時(shí)器和I/O中斷使能、繼電器輸出使能。其余的功能主要在I/O 中斷服務(wù)子程序中實(shí)現。nRF905進(jìn)入接收模式后,不斷監聽(tīng)接收信號。當收到載波信號時(shí),發(fā)出CD中斷信號;當接收地址正確時(shí),發(fā)出AM中斷信號;當接收數據正確時(shí), nRF905自動(dòng)移去字頭、地址和CRC校驗位,然后把數據準備好引腳置高,發(fā)出DR中斷信號。微控制器中斷服務(wù)子程序通過(guò)SP I口讀取所實(shí)現的主要功能為:判斷各按鈕的狀態(tài)、按鈕狀態(tài)編碼、編碼狀態(tài)發(fā)送。MSP430微控制器通過(guò)SP I口讀取nRF905內的數據,接收端主程序流程圖,如圖4所示。
圖4 接收器主程序流程圖
4 結束語(yǔ)
本系統采用超低功耗MSP430單片機和低功耗無(wú)線(xiàn)收發(fā)芯片nRF905實(shí)現了塔吊無(wú)線(xiàn)遙控系統。系統采用了軟件編碼和硬件譯碼的方式、系統發(fā)射器采用定時(shí)掃描、接收器采用無(wú)記憶輸出控制方式以及電氣互鎖等技術(shù),提高了系統的可靠性和抗干擾能力,系統可廣泛應用于塔吊等一般工業(yè)遙控系統中,該系統的功能在實(shí)踐中得到了應用與驗證。
評論