更新時(shí)間:2024-11-19
訪問(wèn)量:1273
廠商性質(zhì):經(jīng)銷(xiāo)商
生產(chǎn)地址:
品牌 | 其他品牌 | 加工定制 | 是 |
---|---|---|---|
制作工藝 | 集成 | 輸出信號(hào) | 模擬型 |
材料 | 金屬 | 材料物理性質(zhì) | 半導(dǎo)體 |
材料晶體結(jié)構(gòu) | 單晶 |
RS485通訊及Modbus一體化振動(dòng)溫度傳感器
產(chǎn)品概述:
在工業(yè)控制、電力通訊、智能儀表等領(lǐng)域,通常情況下是采用串口通信的方式進(jìn)行數(shù)據(jù)交換。采用的方式是RS232接口,由于工業(yè)現(xiàn)場(chǎng)比較復(fù)雜,各種電氣設(shè)備會(huì)在環(huán)境中產(chǎn)生比較多的電磁干擾,會(huì)導(dǎo)致信號(hào)傳輸錯(cuò)誤。除此之外,RS232接口只能實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通信,不具備聯(lián)網(wǎng)功能,傳輸距離也只能達(dá)到幾十米,不能滿足遠(yuǎn)距離通信要求。而RS485則解決了這些問(wèn)題,數(shù)據(jù)信號(hào)采用差分傳輸方式,可以有效的解決共模干擾問(wèn)題,距離可以到1200米,并且允許多個(gè)收發(fā)設(shè)備接到同一條總線上。隨著工業(yè)應(yīng)用通信越來(lái)越多,1979年施耐德電氣制定了一個(gè)用于工業(yè)現(xiàn)場(chǎng)的總線協(xié)議Modbus協(xié)議,現(xiàn)在工業(yè)中使用RS485通信場(chǎng)合很多都采用Modbus協(xié)議,本節(jié)課我們要講解一下RS485通信和Modbus協(xié)議。
單單使用一塊KST-51開(kāi)發(fā)板是不能夠進(jìn)行RS485實(shí)驗(yàn)的,應(yīng)很多同學(xué)的要求,把這節(jié)課作為擴(kuò)展課程講一下,如果要做本課相關(guān)實(shí)驗(yàn),需要自行購(gòu)買(mǎi)USB轉(zhuǎn)485通信模塊。
18.1 RS485通信
實(shí)際上在RS485之前RS232就已經(jīng)誕生,但是RS232有幾處不足的地方:
1、接口的信號(hào)電平值較高,達(dá)到十幾V,容易損壞接口電路的芯片,而且和TTL電平不兼容,因此和單片機(jī)電路接起來(lái)的話必須加轉(zhuǎn)換電路。
2、傳輸速率有局限,不可以過(guò)高,一般到幾十Kb/s就到極限了。
3、接口使用信號(hào)線和GND與其他設(shè)備形成共地模式的通信,這種共地模式傳輸容易產(chǎn)生干擾,并且抗干擾性能也比較弱。
4、傳輸距離有限,只能通信幾十米。
5、通信的時(shí)候只能兩點(diǎn)之間進(jìn)行通信,不能夠?qū)崿F(xiàn)多機(jī)聯(lián)網(wǎng)通信。
針對(duì)RS232接口的不足,就不斷出現(xiàn)了一些新的接口標(biāo)準(zhǔn),RS485就是其中之一,他具備以下的特點(diǎn):
1、我們?cè)谥vA/D的時(shí)候,講過(guò)差分信號(hào)輸入的概念,同時(shí)也介紹了差分輸入的好處,優(yōu)勢(shì)是可以抑制共模干擾。尤其工業(yè)現(xiàn)場(chǎng)的環(huán)境比較復(fù)雜,干擾比較多,所以通信如果采用的是差分方式,就可以有效的抑制共模干擾。而RS485就是一種差分通信方式,它的通信線路是兩根,通常用A和B或者D+和D-來(lái)表示。邏輯“1”以兩線之間的電壓差為+(0.2~6)V表示,邏輯“0”以兩線間的電壓差為-(0.2~6)V來(lái)表示,是一種典型的差分通信。
2、RS485通信速度快,傳輸速度可以達(dá)到10Mb/s以上。
3、RS485內(nèi)部的物理結(jié)構(gòu),采用的是平衡驅(qū)動(dòng)器和差分接收器的組合,抗干擾能力也大大增加。
4、傳輸距離可以達(dá)到1200米左右,但是他的傳輸速率和傳輸距離是成反比的,只有在100Kb/s以下的傳輸速度,才能達(dá)到通信距離,如果需要傳輸更遠(yuǎn)距離可以使用中繼。
5、可以在總線上進(jìn)行聯(lián)網(wǎng)實(shí)現(xiàn)多機(jī)通信,總線上允許掛多個(gè)收發(fā)器,從現(xiàn)有的RS485芯片來(lái)看,有可以掛32、64、128、256等不同個(gè)設(shè)備的驅(qū)動(dòng)器。
RS485的接口非常簡(jiǎn)單,和RS232所使用的MAX232是類似的,只需要一個(gè)RS485轉(zhuǎn)換器,就可以直接和我們單片機(jī)的UART串行接口連接起來(lái),并且*使用的是和UART一致的異步串行通信協(xié)議。但是由于RS485是差分通信,因此接收數(shù)據(jù)和發(fā)送數(shù)據(jù)是不能同時(shí)進(jìn)行的,也就是說(shuō)它是一種半雙工通信。那我們?nèi)绾闻袛嗍裁磿r(shí)候發(fā)送,什么時(shí)候接收呢?
RS485類的芯片很多,這節(jié)課我們以MAX485為例講解RS485通信
RS485通訊及Modbus一體化振動(dòng)溫度傳感器技術(shù)參數(shù):
從機(jī)地址 1 01 發(fā)送至從機(jī)01
功能碼 1 06 單點(diǎn)保存
地址代碼 2 00 起始地址為 0002
02
寫(xiě)入數(shù)據(jù) 04 00
00
00
64 保存的數(shù)據(jù)為64H
CRC碼 2 9F 由主機(jī)計(jì)算得到的CRC碼
EC
從機(jī)響應(yīng) 字節(jié)數(shù) 舉例
從機(jī)地址 1 01 來(lái)自從機(jī)01
功能碼 1 06 單點(diǎn)保存
地址代碼 2 00 起始地址為 0002
02
操作結(jié)果 1 00 數(shù)據(jù)設(shè)置成功
CRC碼 2 18 由主機(jī)計(jì)算得到的CRC碼
28
表5 功能碼06保存的數(shù)據(jù)及地址表6 個(gè)別寄存器說(shuō)明
地址
內(nèi)容
代碼示例(主機(jī)發(fā)送)
代碼示例(從機(jī)響應(yīng))
0002H
設(shè)置預(yù)裝值
01 06 00 02 00 00 00 00 9E 07(設(shè)置預(yù)裝值為0)
01 06 00 02 00 18 28
0003H
設(shè)置out1設(shè)定值
01 06 00 03 00 00 00 00 A3 C7(設(shè)置out1設(shè)定值為0)
01 06 00 03 00 19 B8
0004H
設(shè)置計(jì)數(shù)啟停狀態(tài)
01 06 00 04 01 DA 48(設(shè)置啟動(dòng)計(jì)數(shù))
01 06 00 04 01 DA 48
000CH
計(jì)數(shù)器清零
01 06 00 0C 01 DD 88(寫(xiě)“1”清零)
01 06 00 0C 01 DD 88(清零成功)
0011H
OUT1控制
01 06 00 11 01 D4 D8(寫(xiě)“1”OUT1動(dòng)作)
01 06 00 11 01 D4 D8(OUT1動(dòng)作完成)
0012H
OUT2控制
01 06 00 12 01 D4 28(寫(xiě)“1”OUT2動(dòng)作)
01 06 00 12 01 D4 28(OUT2動(dòng)作完成)
地址
內(nèi)容
說(shuō)明
0004H
設(shè)置計(jì)數(shù)器啟停
向寄存器寫(xiě)“1” 計(jì)數(shù)器啟動(dòng),“2”計(jì)數(shù)器停止。
000CH
計(jì)數(shù)器清零
向寄存器寫(xiě)“1” 計(jì)數(shù)器清零。
0011H
控制OUT1動(dòng)作
向寄存器寫(xiě)“1” 繼電器動(dòng)作,寫(xiě)“2” 繼電器復(fù)位。
上一篇 : HC-O139加速度傳感器
下一篇 : 一體化振動(dòng)無(wú)線傳感器