基于A(yíng)RM7的藍(lán)牙接入點(diǎn)的硬件系統(tǒng)結(jié)構(gòu)和軟件流程
1引言
本文引用地址:http://m.butianyuan.cn/article/151670.htm在工業(yè)現(xiàn)場(chǎng)中,由于有些環(huán)境比較惡劣,布線(xiàn)不方便等因素可以采用藍(lán)牙無(wú)線(xiàn)通信技術(shù)來(lái)實(shí)現(xiàn)數(shù)據(jù)的通信。同時(shí),工業(yè)現(xiàn)場(chǎng)中有很多以不同方式互連的設(shè)備,其中包括非智能化簡(jiǎn)單數(shù)據(jù)連接單元 (I/O)、智能化設(shè)備 (比如智能傳感器、單回路控制器和 PLC)和監(jiān)控系統(tǒng) (作為 HMI使用,用于數(shù)據(jù)記錄和監(jiān)控 )等。這些設(shè)備大都是以各種不同的通信協(xié)議和媒介來(lái)互連的,其中有些就可以用藍(lán)牙無(wú)線(xiàn)技術(shù)代替。本文以 AT91R40008為例,結(jié)合 BCM04藍(lán)牙模塊開(kāi)發(fā)了基于藍(lán)牙通信的工業(yè)接入點(diǎn),組建了基于藍(lán)牙通信的閥門(mén)、流量計(jì)、溫度變送器測(cè)試系統(tǒng),實(shí)現(xiàn)了帶有藍(lán)牙通信模塊的工業(yè)設(shè)備和現(xiàn)有的有線(xiàn)網(wǎng)路的通信。
2藍(lán)牙技術(shù)簡(jiǎn)介
藍(lán)牙(bluetooth)是一種短距的無(wú)線(xiàn)通訊技術(shù),電子裝置彼此可以透過(guò)藍(lán)牙模塊而連接起來(lái),省去了傳統(tǒng)的電線(xiàn)。透過(guò)芯片上的無(wú)線(xiàn)接收器,配有藍(lán)牙技術(shù)的電子產(chǎn)品能夠在十公尺的距離內(nèi)彼此相通,傳輸速度可以達(dá)到每秒鐘 1兆字節(jié)。同時(shí),藍(lán)牙支持設(shè)備短距離通信(一般是 10m之內(nèi))。能在包括移動(dòng)電話(huà)、 PDA、無(wú)線(xiàn)耳機(jī)、筆記本電腦、相關(guān)外設(shè)等眾多設(shè)備之間進(jìn)行無(wú)線(xiàn)信息交換。藍(lán)牙的標(biāo)準(zhǔn)是 IEEE802.15,工作在 2.4GHZ頻帶,帶寬為 1Mb/s。
藍(lán)牙技術(shù)在工業(yè)現(xiàn)場(chǎng)上的應(yīng)用大致可以分為四個(gè)方面:
(1) 代替串行線(xiàn)纜。無(wú)線(xiàn)藍(lán)牙連接可以代替當(dāng)前的串行線(xiàn)纜。
(2) 結(jié)合藍(lán)牙和互聯(lián)網(wǎng)技術(shù)。利用藍(lán)牙帶來(lái)的 CPU處理能力,給設(shè)備添加更多功能,如內(nèi)置的 WEB用戶(hù)接口。
(3) 工業(yè)接入點(diǎn)。通過(guò)接入點(diǎn)將數(shù)個(gè)藍(lán)牙設(shè)備連接到傳統(tǒng)的有線(xiàn)網(wǎng)絡(luò)中,比如 IP網(wǎng)絡(luò)(如以太網(wǎng))或者工業(yè)現(xiàn)場(chǎng)總線(xiàn)網(wǎng)絡(luò)(如 Controlnet和 Profibus等)。
(4) 無(wú)線(xiàn)傳感器和起動(dòng)器。利用藍(lán)牙來(lái)將與物理制程關(guān)系昀密切的設(shè)備 (傳感器、起動(dòng)器和簡(jiǎn)單的模擬 /數(shù)字 IO設(shè)備)連接到監(jiān)控系統(tǒng)。
3 藍(lán)牙接入點(diǎn)的系統(tǒng)設(shè)計(jì)
在工業(yè)現(xiàn)場(chǎng)中使用無(wú)線(xiàn)通信技術(shù)。這就要求工業(yè)設(shè)備使用藍(lán)牙功能,并能和現(xiàn)有的以太網(wǎng)或者工業(yè)現(xiàn)場(chǎng)總線(xiàn)網(wǎng)絡(luò)相連。在這里,藍(lán)牙接入點(diǎn)就好像一個(gè) “電話(huà)交換機(jī)”,通過(guò)以太網(wǎng)供電設(shè)備和上位機(jī)進(jìn)行通信,以及通過(guò)無(wú)線(xiàn)方式和工業(yè)現(xiàn)場(chǎng)設(shè)備進(jìn)行數(shù)據(jù)交換,實(shí)現(xiàn)上位機(jī)對(duì)現(xiàn)場(chǎng)設(shè)備的數(shù)據(jù)采集、監(jiān)測(cè)和控制。本文將藍(lán)牙接入點(diǎn)的系統(tǒng)設(shè)計(jì)分為硬件體系結(jié)構(gòu)和軟件設(shè)計(jì)兩個(gè)部分。下面將對(duì)這兩部分進(jìn)行具體說(shuō)明。
3.1 硬件體系結(jié)構(gòu)
該藍(lán)牙接入點(diǎn)包含了微處理器( AT91R40008)、存儲(chǔ)器、藍(lán)牙通信模塊、網(wǎng)絡(luò)通信接口、串口通信等重要組成部分。在該設(shè)計(jì)中,電源使用了以太網(wǎng)供電設(shè)備,該設(shè)備除了用于網(wǎng)口通信,還提供設(shè)計(jì)中所需要的電源。該電源經(jīng)過(guò)電平轉(zhuǎn)換,為微處理器、存儲(chǔ)器、藍(lán)牙通信模塊等提供所需的 +3.3V和+1.8V電源。 32位的微處理器 AT91R40008通過(guò)串口 0和串口 1與串口通信部分和藍(lán)牙模塊進(jìn)行數(shù)據(jù)交換。圖 1為藍(lán)牙接入點(diǎn)的硬件框圖。下面就其具體原理進(jìn)行說(shuō)明。
3.1.1 微處理器 AT91R40008
AT91R40008是 Atmel AT9116的 32位的微控制器系列產(chǎn)品。它以 ARM7TDMI 處理器內(nèi)核為基礎(chǔ)。該處理器有一個(gè)高性能 32位精簡(jiǎn)指令系統(tǒng)和一個(gè)高密度 16位的指令系統(tǒng),同時(shí)具有較低的能耗。AT91R40008具有片上的 SRAM或 ROM、完全可編成的外部總線(xiàn)接口(EBI)、32個(gè)可編程的 I/O口、8個(gè)優(yōu)先級(jí)、4個(gè)外部中斷、2個(gè) USART及 16位的定時(shí)器/計(jì)數(shù)器等特點(diǎn)。除此之外,在內(nèi)部寄存器實(shí)現(xiàn)對(duì)異常情況的快速處理,可以方便的進(jìn)行即時(shí)控制和應(yīng)用編程。
AT91R40008以與外部存儲(chǔ)器的直聯(lián)為特色,由外部 FLASH,經(jīng)過(guò)完全可編程外部總線(xiàn)接口 (EBI)、一個(gè)八位優(yōu)先向量中斷控制器,,及外部數(shù)據(jù)控制器,大大提高了處理器的即時(shí)性能。 AT91R40008使用 Atmel的高密度 CMOS技術(shù), ARM7TDMI 處理器內(nèi)核結(jié)合了片上高速存儲(chǔ)器及其外部設(shè)備,使其具有非常強(qiáng)大的功能。
微處理器部分的設(shè)計(jì)包含系統(tǒng)硬件的啟動(dòng)與復(fù)位,地址總線(xiàn)、數(shù)據(jù)總線(xiàn)的分配和定義,通過(guò)串行線(xiàn)對(duì)藍(lán)牙模塊的讀寫(xiě)等。
系統(tǒng)由外部的 50M鐘振作為時(shí)鐘源向 cpu輸入時(shí)鐘信號(hào)。復(fù)位電路由 10uF的電容、10K的電阻及按鍵組成低電平復(fù)位電路。該復(fù)位電路可實(shí)現(xiàn)上電低電平自動(dòng)復(fù)位或者手動(dòng)復(fù)位。AT91R40008內(nèi)部 ROM為 128K,外部昀大可擴(kuò) 64M的存儲(chǔ)器,由于設(shè)計(jì)需要,在設(shè)計(jì)中擴(kuò)展了一片 2M字節(jié)的 SST36VF160對(duì)大量的軟件程序進(jìn)行存儲(chǔ)。由于 AT91R40008內(nèi)部包含的 SRAM已達(dá) 256K,對(duì)于數(shù)據(jù)存儲(chǔ)已夠用了,所以在外部沒(méi)有進(jìn)行 RAM的擴(kuò)展。網(wǎng)卡芯片 AX88796通過(guò)片選線(xiàn)、中斷線(xiàn)、讀寫(xiě)信號(hào)控制線(xiàn)和地址數(shù)據(jù)總線(xiàn)和 cpu相連,實(shí)現(xiàn)藍(lán)牙接入點(diǎn)和上位機(jī)的網(wǎng)絡(luò)通信。AT91R40008通過(guò)串口 1實(shí)現(xiàn)與藍(lán)牙模塊的數(shù)據(jù)交換,通過(guò)串口 0實(shí)現(xiàn)和上位機(jī)之間的串口調(diào)試。
評(píng)論