發布日期:2022-10-09 點擊率:72
常見的通信方式及線路數量(常見四大類線路或協議)
UART: VCC GND TXD RXD ——通用串行數據總線,用于異步雙向通信
USART: VCC GND TXD RXD SCK ——同步單向通信,半雙工單線通信
SPI: VCC GND CS MOSI MISO SCK ——串行外設接口,同步高速全雙工總線
I2C: VCC GND SDA SCK ——雙向二線制同步串行總線
1-wrie: VCC+GND+SDA+SCK合并為單線
在串行通信系統中通常具備:
1.時鐘信號線 2.數據信號線 3.控制信號線 4.設備電源線、
RXD– 接受數據串行輸入 TXD– 發送數據輸出
SCK/SCLK/SCL– 時鐘信號線 SDA– 數據信號線
SDO/MOSI – 主設備數據輸出,從設備數據輸入 SDI/MISO – 主設備數據輸入,從設備數據輸出
SCLK – 時鐘信號,由主設備產生;
1-wrie協議
達拉斯半導體公司提出的一種技術,將時鐘線,數據線,控制線和電源線合并為一根線,只要符合單總線協議的器件都能以從機的身份掛接到單總線上與主機進行通信,這種串行總寫是半雙工通信方式,要求總線上所有器件都遵“一套規則”。
————————————————————————————————————————————————————————————
DS18B20
單線式數字溫度傳感器,測溫范圍為+125℃— -55℃。每個設備都有唯一的64位光刻ROM序列,用于區別對象;寬電壓器件支持供電3.0v-5.5v,支持外部供電和“寄生”,測溫的分辨率可由用戶設置,可實現高精度測量具有溫度報警功能,用戶可根據需要設置上下限,設定的限值掉電后不丟失。測量結果直接輸出數字溫度信號,同時可傳輸CRC校驗碼。支持多網點功能,可用于多點布置系統。
1.寄生接法
DS18B20的寄生方式是在DQ引腳為高電平時“竊取”電源,同時將部分能量存儲在內部的電容里。(見圖寄生電源電路單元)
所以,上拉電阻!!一定要接上,使電平多處于高電平蓄電。
B、為了使DS18B20準確完成溫度轉換,當溫度轉換發生時,IO口必須提供足夠大的功率。
DS18B20的工作電流高達1mA,5K的上拉電阻使得IO口沒有足夠的驅動能力。
正常接法
DS18B20內部結構
64位光刻ROM
即每個DS18B20的身份證號碼,如果你只用到了一個DS181B20,你可以不關注它。
DS18B20設備ROM指令一覽
DS18B20的功能指令
是用來實現設備功能操作的,比如啟動溫度轉換,配置轉換的分辨率,配置設備的溫度限制報警功能。
轉換分辨率問題
分辨率的配置實際時通過配置高速暫存器中的byte4配置寄存器來實現的,配置寄存器的R0(位5)和R1(位6)的取值就決定了設備當前的溫度轉換分辨率,溫度轉換分辨率越高,最大轉換時間就越長,繁殖最大轉換時間就越短。部分斷電記憶。
溫度值放置
1.裝載在Byte0和Byte1中。在高字節中的高5位是符號位,用S表示。如果溫度值位正數,則S位均為0;若為負數,則S位均為1。
2.如果DS18B20配置為12位轉換分辨率,溫度寄存器的所有位都是有效的,對于11位分辨率,位0未定義。對于10位分辨率,位0和位1未定義,對于9位分辨率,位2,位1和位0未定義。12=S+11,11=S+10;
3.若溫度為+125℃轉換為二進制數位()B,將這二進制數按照DS18B20溫度數值的存儲格式依次填入,由于+125℃是正溫度,所有符號位S都是0,小數部分2e-1至2e-4(溫度值低位LSB位0至位3)位也為0,可以按照如圖所示方式裝入溫度值數據:
4。若溫度為負數,需轉換為二進制碼將二進制碼依次填入DS18B20的高低兩個字節中,并且符號位S全為1的形式,我們將該帶有符號位的二進制碼取反得到反碼,并且在反碼的基礎+1得到補碼。
5.實際計算溫度=分數最小份值。若我們從單總線上取回溫度數據()B,將其轉換為十進制為(2000)D,2000*0.0625=125。 12位分辨率為0.0625,11位0.125,10位0.25。
溫度限值
“溫度限值”就是高溫闕值和低溫闕值。當實際采樣測量的溫度值超過高溫限值或者低于低溫限值,對應的DS18B20就會發出報警信號,只可設置整數闕值。高速暫存器中的Byte2和Byte3這兩個字節用來存儲高溫限值Th和低溫限值Tl,EEPROM也有兩個字節與之對應用來保存配置值,以防斷電丟失。
以上為DS18B20的數據格式及轉換,指令,結構,數據組織,轉換都清楚后,接下來是DS18B20讀寫及時序編程。
ds18b20采集數據的過程
1.發送初始化時序——主機發送復位脈沖且從機正確回復應答脈沖的過程
請求: 主機通過拉低單線480us以上, 產生復位脈沖, 然后釋放該線, 進入Rx接收模式. 主機釋放總線時, 會產生一個上升沿脈沖.
DQ : 1 -> 0(480us+) -> 1
響應: DS18B20檢測到該上升沿后, 延時15~60us, 通過拉低總線60~240us來產生應答脈沖.
DQ: 1(15~60us) -> 0(60~240us)
接收響應: 主機接收到從機的應答脈沖后, 說明有單線器件在線. 至此, 初始化完成.
DQ: 0
初始化DS18B20
發送ROM操作指令——當有多個DS18B20連接在同一個IO口上時,通過ROM指令指定DS18B20
初始化玩完成后,按照DS18B20操作順序,主機發送ROM指令,發送相關指令到單總線上就是“寫”的過程,由于單總線上讀寫都必須是逐位操作,即把待寫的命令寫過程也分為了寫“1”過程和寫“0”過程,只要按照時序要求的“寫時隙”將總線置高或置低即可。
而只有一個DS18B20時,我們通常直接發送“跳過ROM”
2.寫數據時序
寫時隙
寫“0” 最小采樣時間15us用于從機反應,在60us后從機反應主機寫0;
寫“1”時主機拉高數據線DQ恢復高電平,接著將數據線DQ先拉低保持15us后, 將數據線DQ拉高;
寫一個字節(1Byte=8bit,循環8次寫1個位時序,字節從最低位到最高位)
寫“0” 寫“1” ——分析時序寫
3.寫數據時序
讀時隙
從機收到相關指令后也應該“回答”,這時候就要設計到讀時隙,之際只有在發出讀時隙時1-wire總線上的相關設備才能向主機逐位傳輸數據。所以,當主機已經發送ROM指令和相關功能指令后,必須馬上產生讀時序將DS18B20的結果數據取回。
讀一個字節
4.獲取溫度流程
復位(初始化) 2.是否讀取ID 3.發送溫度轉換命令(0x44) 4. 延時 5. 復位(初始化)是否讀取ID 7. 讀取溫度的高、低字節 8. 計算
配置DS18B20的GPIO接口
應用領域:智能溫控系統、環境控制系統、加熱控溫設備、電廠、工業工程
1、精密等級:PT100、 PT1000、DIN Class C(±0.5℃)、B(±0.3℃)、A(±0.15℃)、AA(±1/3B
0.1℃)、
3A(±1/10B 0.03℃)、DS18B20、NTC、PTC
2、測量范圍:-200...1000℃
3、保護管:φ3.3mm、φ4mm、φ5mm、φ6mm、φ8mm、φ9mm、φ10mm、(長度:30mm至500mm、超長定制)
4、輸出信號:RTD鉑電阻,二線,三線,四線,數字信號;
5、變送后信號:4-20mA、0-10V、0-5V
6、連接電纜:低溫耐高溫電纜、PVC、硅膠、PTFE(鐵氟龍)、金屬云母線、金屬玻纖線
7、可選項目:可選雙支鉑電阻、保護管材料316、310S不銹鋼
8、連接過程:G1、G1/2、G1/4、M20X1.5、M27X2
智能溫控系統用溫度傳感器、環境控制系統用溫度傳感器、加熱控溫設備用溫度傳感器、電廠用溫度傳感器、工業工程用溫度傳感器
相關產品:智能溫控系統 , 環境控制系統 , 加熱控溫設備 , 電廠 , 工業工程
RS485紅外線測溫度傳感器探頭模塊Modbus協議
北京西星光電科技有限公司
介紹
感謝您選擇MQ系列溫度傳感器。
紅外溫度傳感器可以不接觸目標而通過測量目標發射的紅外輻射強度計算出物體的表面溫度。非接觸測溫是紅外測溫儀zui大的優點,使用戶可以方便地測量難以接近或移動的目標。
MQ系列溫度傳感器為一體化集成式紅外溫度傳感器,傳感器、光學系統與電子線路共同集成在不銹鋼殼體內;MQ系列易于安裝,金屬殼體上的標準螺紋可與安裝部位快速連接;同時MQ系列還有各型選件(例如吹掃器、安裝支架、可調安裝支架、吹掃保護套等)以滿足各種工況場合要求。
參數描述基本性能
保護等級 IP65 (NEMA-4)
環境溫度 0 ~60°C
存儲溫度 -20 ~ 80°C
相對濕度 10 – 95%(不結露)
材料 不銹鋼
電纜長度 1.5 m (標準) , 其它特殊規格(定制)
電氣參數
工作電源 24 VDC
zui大電流 50mA
輸出信號 4 ~ 20mA
c.測量參數
光譜范圍 8 ~ 14 μm
溫度范圍 -50 ~350°C、-50-1800°C、0-150°C、0-300°C
0-500°C、0-600°C、0-1000°C、0-1200°C
光學分辨率 20:1 (可定制50:1)
響應時間 150 ms (95%)
測溫精度 測量值的±1%或±1.5℃,取大值
重復精度 測量值的±0.5%或±1℃,取大值
尺寸 113mm×ф18mm(長度*直徑)
發射率 0.95固定
RS485紅外線測溫度傳感器探頭模塊Modbus協議
工作原理及注意事項紅外測溫原理
任何物體都向外輻射紅外能量,輻射強度隨著溫度的變化而變化。紅外測溫儀一般使用波長在0.8μm-18μm范圍內的紅外輻射能量。
紅外溫度傳感器是一種光電子傳感器,它接收紅外輻射并將其轉化成電信號,經電子線路放大器、線性化、信號處理,顯示或輸出溫度。b.被測量點的zui大距離和尺寸。
被測目標的尺寸和紅外測溫儀的光學特性決定了被測目標和測量頭之間的zui大距離。為了避免測量誤差,被測目標應盡量充滿探測頭的視場。因此,應保持被測點始終小于被測物體或至少與被測目標相同尺寸。
環境溫度
MQ系列紅外溫度傳感器可以在環境溫度0-60℃范圍內工作。否則,請選用冷卻保護套。
鏡頭清潔
儀器的鏡頭必須保持清潔,避免因粘有灰塵、煙塵等污染物而導致測量誤差甚至損壞鏡頭,若鏡頭粘有灰塵,可用擦鏡紙蘸無水酒精擦拭。
電磁干擾
為了防止電磁方面的干擾,請保證以下
措施:
請在安裝時盡量使紅外溫度傳感器遠離電磁場源(比如電動機、馬達、大功率電纜等),如有必要可加金屬套管。
安裝
a 機械安裝
MQ系列金屬殼體帶M18×1螺紋,可用于直接安裝,也可通過使用安裝支架進行安裝,可調安裝支架能夠使測量頭的調節更加方便。
在調整被測目標與測量頭時必須確保光路無遮擋。b 電氣安裝 接線
4-20mA輸出采用兩線制:棕線接24V;藍線為電流輸出
0-5V輸出采用四線制:紅接+24V電源正;黑接0V電源負;白線為信號輸出+;黃線為信號輸出-
RS485輸出四線制:紅接+12V電源正;黑接0V電源負;白線為信號輸出A+;黃線為信號輸出B-
對于4~20mA的模擬信號輸出。為兩線制環路電流輸出方式,其與顯示器或控制器的連接,有以下兩種典型應用(連接法):
6 包裝清單
標準配件:
MQ系列溫度傳感器(含1.5米長的電纜),固定螺母,用戶手冊。
請檢查產品包裝是否有損壞,有任何損壞請立即通知當地的代理商,并請保留損壞的包裝供檢查。
您可以在產品的標簽上找到產品的序列號。當您客戶服務部要求維護、定購配件或維修時請出示序列號。
維修
當您使用MQ系列溫度傳感器時遇到任何問題時,請的服務部門。我們的客戶服務人員將就如何設置溫度傳感器工作,標定過程以及維修方面給予您。
經驗證明,上述的這些問題都可以通過解決,請您在決定將儀器寄回給我們之前先與我們的客戶服務部門取得。
8 保證
每臺儀器都經過質量檢驗程序,如果發生任何問題,請立刻服務商。
儀器從出廠起保質期為12個月,過保質期后,生產商另外保證在6個月以內維修或更換元件。如果私自拆開儀器或因使用不當引起的損壞不在保修范圍。
在保修期內若儀器出現問題,可以免費更換,標定或修理,期間發生的運費由發貨人承擔。生產商有權選擇修理儀器或更換元件。如果儀器故障是由于用戶的使用不當造成的,用戶必須負擔維修費用,在這種情況下用戶可以事先詢問維修費用。
目錄一、DS18B201. DS18B20簡介2. 電路原理圖3. 內部結構內部完整結構框圖存儲器結構二、單總線(1-Wire BUS)1. 單總線簡介2. 電路規范3. 單總線的時序結構4. DS18B20操作流程5. DS18B20數據幀6. 溫度的存儲格式三、編碼實現1. 單總線部分2. DS18B20模塊3. main.c部分
一、DS18B20
1. DS18B20簡介
DS18B20是一種常見的數字溫度傳感器,其控制命令和數據都是以數字信號的方式輸入輸出,相比較于模擬溫度傳感器,具有功能強大、硬件簡單、易擴展、抗干擾性強等特點
測溫范圍:-55°C 到 +125°C
通信接口:1-Wire(單總線)
其它特征:可形成總線結構、內置溫度報警功能、可寄生供電
2. 電路原理圖
其中1和3號引腳分別連接和,而二號引腳則用于使用1-Wire(單總線)接口進行通信。
即:
3. 內部結構
內部完整結構框圖
64-BIT ROM:作為器件地址,用于總線通信的尋址
SCRATCHPAD(暫存器):用于總線的數據交互
EEPROM:用于保存溫度觸發閾值和配置參數
其中配置寄存器可以配置溫度變化的精度值。
存儲器結構
當我們希望修改EEPROM中存儲的內容時,我們需要先將數據寫入到暫存器中,然后再發送一條指令使從機將暫存器中的數據寫入到EEPROM中。
二、單總線(1-Wire BUS)
由于DS18B20使用的通信接口是1-Wire,因此我們需要學習1-Wire相關的通信協議,這樣才能使單片機和它進行通信。
1. 單總線簡介
單總線(1-Wire BUS)是由公司開發的一種通用數據總線
一根通信線:DQ
異步、半雙工
單總線只需要一根通信線即可實現數據的雙向傳輸,當采用寄生供電時,還可以省去設備的VDD線路,此時,供電加通信只需要DQ和GND兩根線
2. 電路規范
設備的DQ均要配置成開漏輸出模式
DQ添加一個上拉電阻,阻值一般為4.7KΩ左右
若此總線的從機采取寄生供電,則主機還應配一個強上拉輸出電路
3. 單總線的時序結構
① 初始化:
主機將總線拉低至少480us
然后釋放總線,等待15~60us
存在的從機拉低總線60~240us以響應主機
最后從機將釋放總線
對應的信號時序圖:
② 發送一位:
主機將總線拉低60~120us,然后釋放總線,表示發送0;
主機將總線拉低1~15us,然后釋放總線,表示發送1。
從機將在總線拉低30us后(典型值)讀取電平,整個時間片應大于60us
對應的信號時序圖:
③ 接收一位:
主機將總線拉低1~15us,然后釋放總線
然后主機在拉低后15us內讀取總線電平(盡量貼近15us的末尾)
讀取為低電平則為接收0,讀取為高電平則為接收1 ,整個時間片應大于60us
對應的信號時序圖:
④ 發送一個byte和接收一個byte:
這個過程和使用I2C發送和接收一個字節的數據的過程類似,都是重復發送一位或接受一位8次即可發送或接受一個byte的數據了:
注意發送和接收到的數據都是低位在前的。
4. DS18B20操作流程
初始化:從機復位,主機判斷從機是否響應
ROM操作:ROM指令+本指令需要的讀寫操作
功能操作:功能指令+本指令需要的讀寫操作
對應的ROM操作和功能操作的指令如下:
ROM指令
功能指令
SEARCH ROM [0xF0]
ConVERT T [0x44]
READ ROM [0x33]
WRITE SCRATCHPAD [0x4E]
MATCH ROM [0x55]
READ SCRATCHPAD [0xBE]
SKIP ROM [0xCC]
COPY SCRATCHPAD [0x48]
ALARM SEARCH [0xEC]
RECALL E2 [0xB8]
READ POWER SUPPLY [0xB4]
各個功能指令的作用:
ConVERT T:使用溫度傳感器更新溫度值
WRITE SCRATCHPAD:將各個EEPROM中的值寫入到暫存器中
READ SCRATCHPAD:讀取暫存器中的值
COPY SCRATCHPAD:將暫存器中的內容復制到EEPROM中
RECALL E2:將EEPROM中的內容復制到暫存器中
READ POWER SUPPLY:讀取設備的供電模式【獨立供電|寄生供電】
5. DS18B20數據幀
① 溫度變換:初始化→跳過ROM →開始溫度變換
② 溫度讀取:初始化→跳過ROM →讀暫存器→連續的讀操作
6. 溫度的存儲格式
里面的溫度是使用補碼形式存儲的,具體的例子如下:
溫度表示的范圍是-55到+125度
三、編碼實現
1. 單總線部分
我們將這部分編寫到模塊中
首先是DQ引腳,根據電路原理圖我們可以知道他對應的是芯片的引腳,因此先把它定義出來:
① 初始化:
可以發現,我們的代碼中出現了和,這兩句代碼分別是操作終端系統的總開關進行關閉和開啟中斷系統的,因為在單總線發送信號的過程中,如果突然來了中斷,CPU轉而運行中斷程序,那么延時就會受到巨大的影響:
例如當前運行到delay 70μs的位置,此時來了一個中斷信號,當運行完中斷程序回來的時候,可能就已經延時了10ms了,這對單總線通信的影響是致命的,故我們在使用單總線發送或接受信號時都需要先關閉中斷。
tips:其中的延時代碼都是使用stc-isp軟件進行生成的,在生成代碼時需要注意晶振和8051指令集的選擇:
② 發送一位:
③ 接收一位:
④ 發送一個byte和接收一個byte:
2. DS18B20模塊
首先我們把需要的命令和依賴的模塊(OneWire模塊)添加進來:
① 溫度轉換:
② 溫度讀取:
3. main.c部分
這樣我們就可以實時地展示溫度了。
tips:在開頭進行一次溫度轉換并的原因是:溫度轉換是需要一定的時間的,如果我們不進行延時而直接取出溫度值就會得到初始值25.0。
下一篇: PLC、DCS、FCS三大控
上一篇: 電氣控制線路圖控制原