亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        常用傳感器+Arduino平臺在物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用探索

        2019-09-10 02:38:44張保新張春霞梁進龍
        現(xiàn)代信息科技 2019年17期
        關(guān)鍵詞:驅(qū)動程序傳感器

        張保新 張春霞 梁進龍

        摘 ?要:典型的傳感器數(shù)據(jù)輸出接口類型,包括模擬型、數(shù)字狀態(tài)型(0、1型)、1-Wire型、I2C型和SPI型。使用這些類型的傳感器及相應(yīng)特定編寫的驅(qū)動程序,Arduino平臺能獲得被測環(huán)境多種狀態(tài)的數(shù)字化表述數(shù)據(jù)。通過適當?shù)臄?shù)據(jù)融合處理、增加信息傳輸(Wi-Fi+4G)及云端應(yīng)用(OneNet平臺)等功能,這種平臺可用于物聯(lián)網(wǎng)的感知層、傳輸層、應(yīng)用層的教學活動之中,也適合實際網(wǎng)絡(luò)的建設(shè)。

        關(guān)鍵詞:傳感器;Arduino;驅(qū)動程序

        中圖分類號:TP212.9;TN92 ? ? 文獻標識碼:A 文章編號:2096-4706(2019)17-0137-03

        Abstract:Typical types of sensors data output interfaces include analog,digital state (0,1),1-Wire,I2C and SPI. Using these types of sensors and the corresponding specific drivers,the Arduino platform can obtain the digital representation data of various states of the environment under test. Through proper data fusion processings,increasing information transmission (Wi-Fi plus 4G) and cloud application (OneNet platform),this platform can be used in the teaching activities. For example,the perception layer,transmission layer, application layer and other aspects of the internet of things,and also suitable for the construction of the actual network.

        Keywords:sensor;Arduino;driver

        0 ?引 ?言

        當前最受關(guān)注的技術(shù)以“云大物智”為首,這里的“物”,是指物聯(lián)網(wǎng)技術(shù)及其應(yīng)用。隨著RFID的誕生,物聯(lián)網(wǎng)就成為人們重點關(guān)注的技術(shù)領(lǐng)域,許多國家將物聯(lián)網(wǎng)的建設(shè)確立為國家戰(zhàn)略;眾多商業(yè)集團在看到物聯(lián)網(wǎng)的巨大發(fā)展前景后,紛紛加大了投資力度;教育領(lǐng)域也紛紛跟進。但由于物聯(lián)網(wǎng)發(fā)展迅速,許多配套的設(shè)施無法跟上現(xiàn)實的需要。既能適合教學需要,又能支撐物聯(lián)網(wǎng)實際建設(shè)需要的平臺,顯然有廣闊的需求空間。本文擬在構(gòu)建這類平臺方面做一些探索。通過對現(xiàn)有的技術(shù)進行分析發(fā)現(xiàn),沒有哪一種技術(shù)(或平臺)能獨立完成物聯(lián)網(wǎng)三層結(jié)構(gòu)的構(gòu)建,只有整合多平臺(如傳感器+Arduino+OneNet),才可以達到目的。

        1 ?Arduino平臺的技術(shù)特點

        Arduino平臺由硬件和軟件兩個部分構(gòu)成。

        1.1 ?硬件

        基于ATmega328P型號單片機構(gòu)建,該芯片的主要特性如下:

        (1)高性能低功耗的AVR8位微處理器,工作頻率可達到20Hz;

        (2)長持久性非易失性內(nèi)存33k Bytes FLASH+1k Bytes EEPROM;

        (3)大容量內(nèi)存:2k Bytes SRAM;

        (4)在線系統(tǒng)可編程能力;

        (5)8比特/16比特計數(shù)器;

        (6)6個PMW端口(模擬輸出);

        (7)6個10比特ADC端口(模擬輸入);

        (8)通信口:USART、SPI、I2C各一個。

        這些先進的、多功能的特性,再加上合理的功能組合(如將USART轉(zhuǎn)換成USB功能),使Arduino平臺越來越受到高校師生的青睞,況且,單獨使用ATmega328P芯片開發(fā)產(chǎn)品,在Arduino的配合下,容易實現(xiàn)目標。

        1.2 ?軟件

        Arduino有自己的軟件開發(fā)IDE,這個軟件的易用性非常高,甚至沒有軟件基礎(chǔ)的人都能掌握。該軟件的另一個特點,就是官方提供了常用元器件的驅(qū)動庫,同時,極客群體也有相當多的貢獻。

        基于以上的特點及其低成本的優(yōu)勢,選擇Arduino平臺作為物聯(lián)網(wǎng)感知層的基礎(chǔ)控件是非常明智的。

        1.3 ?常用傳感器的選擇

        雖然RFID的出現(xiàn),是物聯(lián)網(wǎng)得以成熟的里程碑事件,但大多數(shù)的時間,感知層的感知任務(wù)還得靠各種傳感器來完成。物聯(lián)網(wǎng)的應(yīng)用領(lǐng)域非常廣,用到的傳感器也是五花八門,這里僅以智能家居領(lǐng)域的應(yīng)用為例來選擇傳感器。

        智能家居至少要包括三大功能:家庭安全防范、家庭設(shè)備自動化、家庭通信。

        根據(jù)這些要求,做出如下選擇:

        (1)高精度溫度傳感器(LM35),主要用途:環(huán)境感知和控制;

        (2)人體紅外傳感器(HC-SR50),主要用途:家庭安全;

        (3)溫濕度傳感器(DHT11或DHT20),主要用途:環(huán)境感知和控制;

        (4)光強度傳感器(BH1750),主要用途:改善生活環(huán)境;

        (5)加速度傳感器(ADXL345),主要用途:居家養(yǎng)老等。

        這些傳感器除了能夠完成智能家居中的數(shù)據(jù)感應(yīng)功能外,另一個選擇的理由是,它們的數(shù)據(jù)輸出接口也非常典型,涵蓋了模擬型、數(shù)字狀態(tài)型(0、1型)、1-Wire型、I2C型和SPI型,這些接口是當今傳感器主要采用的數(shù)據(jù)接口,便于構(gòu)建學生知識的完整性。

        2 ?基于Arduino平臺的傳感器驅(qū)動

        通過包含相關(guān)庫函數(shù)、端口設(shè)置、防干擾措施等軟件編程來實現(xiàn)傳感器驅(qū)動。由于大部分傳感器輸出信息均已數(shù)字化,硬件連接電器工藝要求不高;如果使用模擬接口,需要注意抗干擾問題。

        2.1 ?模擬類接口型器件的驅(qū)動

        這類接口的傳感器,使用連續(xù)變化的電壓(或電流)來反應(yīng)其感知物理量的變化情況,如LM35型傳感器。如果是電壓型器件,可以直接讀取其輸出值。對于電流型器件,先進行I/U轉(zhuǎn)換后再讀取,驅(qū)動程序主要語句如下:

        pinMode(n,INPUT); ? ? ? ? ?//定義端口為輸入屬性

        int in = analogRead(n); ? ?//讀取端口模擬數(shù)據(jù)

        注意事項:具體數(shù)值換算方式為inX(5/1024),其中in取值范圍0~1023,5為參考電壓值。n為端口(Pin)號,只能使用A0—A5端口。

        2.2 ?數(shù)字狀態(tài)類接口型器件的驅(qū)動

        這類傳感器的輸出只有兩種狀態(tài):在感知到有人或無人狀態(tài)時,分別用高電平或低電平來表示。如HC-SR50型傳感器,其驅(qū)動程序主要語句如下:

        pinMode(n,INPUT_PULLUP); ? //定義內(nèi)部上拉的輸入口

        int sta = digitalRead(n); ? ? ? //讀取數(shù)字化信息

        注意事項:端口類型設(shè)置成內(nèi)部上拉,避免空接時輸入狀態(tài)不確定。這種配置如果無法與傳感器匹配,可以改用外接上拉(或下拉)10kΩ電阻來進行匹配。

        2.3 ?1-Wire數(shù)字串口類接口型器件的驅(qū)動

        這類接口已經(jīng)數(shù)字化,以某種固定數(shù)據(jù)格式表示數(shù)據(jù),數(shù)據(jù)長度為8~16位。由于是單線通信,數(shù)據(jù)信號實行分時雙向傳輸,時序圖如圖1所示。

        其驅(qū)動程序主要語句如下:

        #include <dht11.h> ? ? ? ? ? ? //加載驅(qū)動庫,分原生與外來兩類庫

        dht11 DHT; ? ? ? ? ? ? ? ? ? ? //聲明具體實例

        #define DHT11Pin 2 ? ? ? ? ? ?//定義通信管腳

        int val = DHT.read(DHT11Pin); ?//讀取傳感器數(shù)值

        注意事項:網(wǎng)上流行有多個版本的DHT11庫,引用時需要注意其細微差別,首選官方庫。數(shù)據(jù)讀出后注意數(shù)據(jù)的后期處理。

        2.4 ?I2C數(shù)字串口類接口型器件的驅(qū)動

        I2C數(shù)字化串口類接口,采用雙線(SDA、SCL)方式進行雙向分時通信,通過串口地址可以識別總線上的不同類型器件,是器件間主要接口類型,時序圖如圖2所示。

        I2C接口,利用這兩條線上信號的變化,實現(xiàn)物理比特傳輸,并按規(guī)定的數(shù)據(jù)格式進行信息交換,完成控制命令和數(shù)據(jù)傳輸。不同廠家定義的數(shù)據(jù)格式略有不同,使用時請閱讀數(shù)據(jù)手冊。

        其驅(qū)動程序主要語句如下:

        #include <Wire.h> ? ? ? ? ?//使用官方Wire庫

        #define Register_2D 0x2D ? ? ? ?//變量定義

        #define Register_X0 0x32

        #define Register_X1 0x33

        #define ADDRESS_BH1750FVI 0x23 ? ?//定義器件的串口地址

        Wire.beginTransmission(ADXAddress); //初始化器件

        Wire.write(Register_2D);

        Wire.write(8); ? ? ? ? ? ? ? ?//測量使能

        Wire.endTransmission();

        Wire.beginTransmission(ADXAddress); //數(shù)據(jù)讀取操作

        Wire.write(Register_X0);

        Wire.write(Register_X1);

        Wire.endTransmission();

        Wire.requestFrom(ADXAddress,2);

        if(Wire.available()<=2)

        {X0 = Wire.read();X1 = Wire.read();}

        注意事項:命令設(shè)置要在程序?qū)Γ╓ire.beginTransmission

        () /Wire.endTransmission())中執(zhí)行,要注意傳感器的響應(yīng)時間,確保其執(zhí)行完命令后再進行下一條操作。器件不同和數(shù)據(jù)格式不同,導致處理方式也不同。

        2.5 ?SPI數(shù)字串口類接口型器件的驅(qū)動

        SPI數(shù)字化串口類接口,采用四線(SDI、SDO、SCLK、CS)或三線、主從方式進行實時雙向通信。主機通過片選信號,實現(xiàn)一主多從的工作模式。圖3為四線制ADXL345型加速度傳感器寫狀態(tài)時序,其他部分不再贅述。由于SPI的協(xié)議較復雜,一些廠家只實現(xiàn)了部分功能,應(yīng)用時注意閱讀原廠數(shù)據(jù)手冊。

        其驅(qū)動程序主要語句如下:

        #include <SPI.h>

        SPI.beginTransaction(SPISettings(4000000,MSBFIRST, SPI_MODE3)); ? //初始化SPI接口 傳輸速率400k、權(quán)重位MSB、工作方式MODE3

        digitalWrite(SSPin,LOW); ? ? //片選置“0”

        SPI.transfer16(0x710B); ? ? //

        digitalWrite(SSPin,HIGH); ? //片選置“1”

        digitalWrite(SSPin,LOW);

        SPI.transfer(rBuffer,7); ? //數(shù)據(jù)傳送(收發(fā)同時進行,多單字節(jié)),一個樣值包括6個數(shù)。

        digitalWrite(SSPin,HIGH);

        注意事項:命令和讀取操作必須在片選的控制下進行(digitalWrite(SSPin,LOW)/ digitalWrite(SSPin,HIGH)),要注意傳感器的響應(yīng)時間,確保其執(zhí)行完命令后再進行下一條操作。器件工作狀態(tài)可選。

        通過上面的程序設(shè)置,傳感器可以正常工作并將數(shù)據(jù)上傳給Arduino平臺,完成數(shù)據(jù)的采集工作。

        3 ?數(shù)據(jù)融合的思考

        物聯(lián)網(wǎng)的一項主要工作,就是如何利用獲得的數(shù)據(jù)(大數(shù)據(jù)),為服務(wù)對象提供更多、更高效的服務(wù),數(shù)據(jù)處理貫穿整個網(wǎng)絡(luò)。由于感知層形成的數(shù)據(jù)量非常龐大,如果不加甄別和篩選,對通信設(shè)施及應(yīng)用服務(wù)器均構(gòu)成重大壓力;這些數(shù)據(jù)的冗余性較高,直接傳送也是沒有必要的;對于實時性要求較高的安全類信息,需要在感知層立即進行分析并啟動相關(guān)處理裝置。在Arduino平臺上,只要實現(xiàn)數(shù)據(jù)的采集與上報、安全類信息的處理即可。

        參考文獻:

        [1] ATmega328P數(shù)據(jù)手冊 [Z].Atmel Corporation,2009.

        [2] ADXL345數(shù)據(jù)手冊 [Z].Analog Devices,Inc.,2010-11.

        [3] LM35數(shù)據(jù)手冊 [Z].National SemiconductorCorporation,2000-11.

        [4]DHT11產(chǎn)品手冊 [Z].廣州奧松電子有限公司,2017-03.

        [5] BH1750FVC數(shù)據(jù)手冊 [Z].ROHM SEMICONDUCTOR,2016-06.

        [6] OneNet.設(shè)備開發(fā)指南 [EB/OL].https://open.iot. 10086.cn/doc/,2019-06-02.

        [7] Arduino.Language Reference [EB/OL].https://www.arduino.cc/reference/en/,2019-06-02.

        作者簡介:張保新(1965.08-),男,漢族,內(nèi)蒙古通遼人,高級工程師,學士學位,研究方向:光通信技術(shù)、物聯(lián)網(wǎng)應(yīng)用技術(shù)。

        猜你喜歡
        驅(qū)動程序傳感器
        康奈爾大學制造出可拉伸傳感器
        簡述傳感器在物聯(lián)網(wǎng)中的應(yīng)用
        電子制作(2019年22期)2020-01-14 03:16:52
        “傳感器新聞”會帶來什么
        傳媒評論(2019年5期)2019-08-30 03:50:18
        跟蹤導練(三)2
        驅(qū)動程序更新與推薦
        驅(qū)動程序更新與推薦
        驅(qū)動程序更新與推薦
        驅(qū)動程序的真心話和大冒險
        亚洲AⅤ樱花无码| 国产xxxxx在线观看| 亚洲综合色自拍一区| 午夜短视频日韩免费| 国产女主播视频一区二区三区| 亚洲精品一区三区三区在线| 中文字幕日本人妻久久久免费| 欧美黑人疯狂性受xxxxx喷水| 久久熟女五十路| 日韩女优一区二区在线观看| 久久婷婷国产综合精品| 99re热视频这里只精品| 国产熟女亚洲精品麻豆| 中文字幕人妻乱码在线| 红桃av一区二区三区在线无码av| 久久精品人人做人人综合| 久久精品国产免费观看99| 97超碰国产一区二区三区| 最近免费中文字幕中文高清6| 欧美金发尤物大战黑人| 亚洲av美女在线播放啊| 色综合久久五十路人妻| 无码精品国产一区二区三区免费| 亚洲色丰满少妇高潮18p| 国产欧美日韩在线观看一区二区三区| 男女视频在线观看一区二区| 国产aⅴ激情无码久久久无码| 日韩成人极品在线内射3p蜜臀| 91精品啪在线看国产网站| 日本不卡不二三区在线看| 在线播放真实国产乱子伦| 美女大量吞精在线观看456| 无码伊人久久大香线蕉| 成人av综合资源在线| 久久久精品一区aaa片| 97成人精品| 日本一区二区高清在线观看| 老熟妇乱子伦牲交视频| 色偷偷久久一区二区三区| 亚洲高清国产品国语在线观看| 成人做爰黄片视频蘑菇视频|