引言
手輪,即手搖脈沖發(fā)生器.在數(shù)控系統(tǒng)中,刀具微動.工件對刀.工作臺的隨動.機床原點的修正等這些功能通常是通過手輪操作來實現(xiàn)的.手輪主要由光電編碼器.坐標軸選擇開關和增量倍率選擇開關組成,用于手搖方式控制數(shù)控機床相應坐標軸的移動.但傳統(tǒng)的有線手輪的連接線的接頭處容易斷裂,使用時間長了容易出現(xiàn)連接不可靠的問題,同時因為受到連接線的影響,用戶無法圍繞機床自由移動.如今無線通信技術越來越成熟,無線產(chǎn)品也越來越多,由此可見,可以基于無線技術研發(fā)一種新型無線手輪來改善現(xiàn)有手輪的性能.本次設計了一種基于工業(yè)級內(nèi)置硬件鏈路層協(xié)議的低成本無線芯片nRF24L01的無線手輪.手輪使用無線傳輸后,杜絕了連線斷裂的問題,能提高手輪的使用壽命.擺脫有線連接的束縛,使用者可以移動自由,操作方便,能提高工作效率.
1 設計原理
本次設計的無線手輪,由手持發(fā)射端和機床接收端兩部分構(gòu)成,工作原理如圖1所示.發(fā)射端由單片機控制器采集手輪產(chǎn)生的差分信號和按鍵產(chǎn)生的控制信號,經(jīng)過編碼后通過無線方式發(fā)送出去.接收端則由單片機控制nRF24L01接收由手持發(fā)送端發(fā)過來的信號.經(jīng)過解碼后還原成差分脈沖信號和按鍵控制信號并輸出用于控制機床移動.
2 硬件設計
2.1 控制信號的采集
信號的采集由Atmel公司的Atmega16單片機來完成.
ATmega16單片機采用Harvard結(jié)構(gòu),內(nèi)置WDT,具有高速.低功耗,可直接驅(qū)動LED.SSR或繼電器等特點,具有很高的性價比,故選用該單片機.發(fā)送端需要采集的信號有4路差分脈沖信號和按鍵控制信號.當手輪上的光電編碼器轉(zhuǎn)動時,將會產(chǎn)生4路脈沖信號(A+,A-,B+,B-),其中A+和A-.B+和B-分別是極性相反兩路信號.在手持端,使用四重差分線接收器AM26C32 將這四路脈沖信號轉(zhuǎn)變成兩路差分脈沖信號(A,B),從而方便MCU對信號進行處理.脈沖A和脈沖B不僅能反映光電編碼器轉(zhuǎn)動的格數(shù),同時還能反映光電編碼器轉(zhuǎn)動的方向.當光電編碼器正轉(zhuǎn)時,A 相超前B相90°,反轉(zhuǎn)時,B 相超前A 相90°.圖2 給出正轉(zhuǎn)時脈沖A.B 的波形圖.
2.2 nRF24L01無線收發(fā)
無線收發(fā)部分的核心芯片采用nRF24L01 芯片.
nRF24L01 是一款工作在2.4~2.5 GHz 世界通用ISM 頻段的單片無線收發(fā)器芯片.輸出功率.頻道選擇和協(xié)議的設置可以通過SPI接口進行設置.具有極低的電流消耗.該芯片支持多點間通信,最高傳輸速率達2 Mb/s.
該器件采用GFSK調(diào)制,128個頻點可供選擇,片內(nèi)自己生成報頭和CRC校驗碼,具有出錯自動重發(fā)功能.這些特性使得由nRF24L01構(gòu)建的無線設備具有成本低.速率高.傳輸可靠等優(yōu)點.由于nRF24L01工作在2.4 GHz這個國際規(guī)定的免費頻段,不需要向國際相關組織繳納任何費用,這就為2.4 GHz技術可發(fā)展性提供了有利條件.
nRF24L01支持多點間通信,最高傳輸速率達2 Mb/s.
嵌入的鏈路層控制減少了MCU 的復雜性和成本,并且提高了數(shù)據(jù)傳輸?shù)目煽啃?,它采用SOC方法設計只需要少量的外圍元件便可組成射頻收發(fā).nRF24L01及外圍電路原理圖如圖3所示.
通過SPI 接口,MCU 可以很方便地控制nRF24L01無線模塊.SPI接口是一種同步串行通信接口,CSN 是芯片選擇管腳,當該管腳為低電平時,SPI 接口可以通信,反之不能通信.MOSI 和MISO 為數(shù)據(jù)傳輸管腳,MOSI用于數(shù)據(jù)輸入,MISO用于數(shù)據(jù)輸出.SCK為同步時鐘,在時鐘的上升沿或下降沿數(shù)字數(shù)據(jù)被寫入或讀出.
ATmega16 內(nèi)部有一個可工作于主機/從機模式的硬件SPI串行接口,但由于ATmega16的工作電壓為5 V,而nRF24L01 的工作電壓為1.9~3.6 V,因此ATmega16 的SPI接口與nRF24L01 的SPI接口間應串接一個2 kΩ左右的限流電阻,以免燒毀芯片.
2.3 控制信號的還原
機床接收端收到由手持端發(fā)送過來的信號后,需要將其還原成相應的控制信號.接收到的兩路差分脈沖信號只需要經(jīng)過差分信號輸出器AM26C31便可還原成4 路脈沖信號.而坐標軸選擇信號和增量倍率選擇信號的邏輯高電平為24 V,因此需要將控制信號的電平進行轉(zhuǎn)換,本次設計中通過光耦來實現(xiàn).為了增強驅(qū)動能力,將控制信號經(jīng)過大功率達林頓管后再輸出.該部分電路原理圖如圖4所示.
3 軟件設計
3.1 手持發(fā)送端軟件設計
發(fā)送端控制器完成初始化后,把nRF24L01配置成PTX工作模式.然后不斷檢測按鍵是否按下,若有按鍵按下,則執(zhí)行相應的操作.同時啟動定時器,每隔一段時間讀取一次差分信號狀態(tài)并向機床接收端發(fā)送一次數(shù)據(jù),將手持端的狀態(tài)發(fā)送給接收端.發(fā)送端軟件流程圖如圖5所示.
nRF24L01的數(shù)據(jù)傳輸模式有ShockBurst和EnhancedShockBurst 兩種數(shù)據(jù)包.后者比前者多了一個確認數(shù)據(jù)傳輸?shù)男盘枺WC數(shù)據(jù)傳輸?shù)目煽啃?現(xiàn)按后一種模式初始化,nRF24L01發(fā)送數(shù)據(jù)包后,自動切換到接收模式以接收返回的確認信號,當收到確認信號后,IRQ 引腳產(chǎn)生中斷信號,如果沒收到返回信號,則自動重新發(fā)送,如果重新發(fā)送的次數(shù)超過在設定值時,也會在IRQ引腳產(chǎn)生中斷信號,MCU通過查詢STATUS寄存器的值,即可判斷是發(fā)送完成中斷,還是重發(fā)次數(shù)超限中斷.
3.2 機床接收端軟件設計
機床接收端軟件流程圖如圖6 所示.接收端控制器完成初始化后,把nRF24L01 配置成PRX 工作模式.
接收到數(shù)據(jù)包后,由硬件解析地址數(shù)據(jù)和信息數(shù)據(jù),當接收到有效信息數(shù)據(jù)后,在IRQ引腳產(chǎn)生中斷通知處理器讀取數(shù)據(jù).控制器首先核對數(shù)據(jù)中識別碼部分是否有效,若有效則將控制信號還原.否則,丟棄該數(shù)據(jù)包.
4 設備對碼
由于2.4 GHz頻段沒有使用授權限制,目前家用電器.手機.無線網(wǎng)絡都集中在此頻段,干擾問題難以避免.
為了避開干擾,采用了設備對碼技術.在發(fā)送端和接收端同時按下對碼鍵后,發(fā)送端隨機生成一個8位的識別碼發(fā)送給接收端,機床接收端收到后發(fā)送確認對碼成功信號給手持發(fā)送端,并將該識別碼保存在E2PROM中.在正常工作狀態(tài)下,發(fā)送端在發(fā)送數(shù)據(jù)時將識別碼作為數(shù)據(jù)的一部分,一起發(fā)送.接收端在接收到信號時核對識別碼,若相同則進行相應處理,否則不作出響應.這樣做可以在很大程度上減少干擾.
5 結(jié)語
本文介紹了基于nRF24L01的數(shù)控機床無線手輪的硬軟件設計要點.由于考慮到工控場合的特殊性,在設計時著重考慮了系統(tǒng)的穩(wěn)定性.本次設計的無線手輪在其正常工作距離內(nèi)能夠穩(wěn)定的將手持端產(chǎn)生的差分脈沖信號和按鍵控制信號發(fā)送給接收端,從而正??刂茩C床的移動.在信號傳輸不穩(wěn)定時也不會造成機床誤操作.手輪的最大工作距離主要取決于天線在選擇.經(jīng)測試,使用PCB板載天線,空曠直線傳播距離在15 m左右,而在有障礙物的環(huán)境下,其傳輸距離也可達5~10 m.如果使用功放和外置天線,傳輸距離可達幾百米。
-
單片機
+關注
關注
6067文章
44992瀏覽量
650580 -
控制器
+關注
關注
114文章
17113瀏覽量
184352 -
無線
+關注
關注
31文章
5555瀏覽量
176056
發(fā)布評論請先 登錄
NRF24L01無線模塊的相關資料分享
高速無線射頻芯片nRF24L01及其應用
NRF24L01 無線通信芯片資料

基于nRF24L01的數(shù)據(jù)無線傳輸系統(tǒng)的設計與實現(xiàn)
nrf24l01無線模塊傳輸距離分析
nRF24L01無線模塊使用教程之經(jīng)典使用程序詳細資料合集免費下載
微雪電子NRF24L01 RF Board 2.4G無線模塊簡介

nRF24L01無線通信模塊使用簡介

NRF24L01無線通信介紹

評論