欧美人与禽2O2O性论交,秋霞免费视频,国产美女视频免费观看网址,国产成人亚洲综合网色欲网

MODBUS協(xié)議軟件開發(fā)(modbus協(xié)議實(shí)現(xiàn))

MODBUS協(xié)議軟件開發(fā)(modbus協(xié)議實(shí)現(xiàn))

1、相關(guān)話題:第四次工業(yè)革命

我國提出了中國制造2025計(jì)劃,同樣,德國也提出了工業(yè)4.0計(jì)劃,無疑,這是當(dāng)前最熱門的技術(shù)方向之一,甚至有很多人將之稱為“第四次工業(yè)革命”。

到現(xiàn)在為止,人類歷史上共出現(xiàn)四次工業(yè)革命

第一次工業(yè)革命:以蒸汽機(jī)的發(fā)明為標(biāo)志,發(fā)源地是英國;第一次工業(yè)革命使得英國成為全球第一強(qiáng)國;

第二次工業(yè)革命:以內(nèi)燃機(jī)的發(fā)明為標(biāo)志,發(fā)源地是德國;第二次工業(yè)革命使得德國一躍成為全球強(qiáng)國,美國也緊緊抓住第二次工業(yè)革命的機(jī)遇,成為全球第一強(qiáng)國;

第三次工業(yè)革命:以計(jì)算機(jī)技術(shù)為標(biāo)志,發(fā)源地是美國;第三次工業(yè)革命讓美國保持了數(shù)十年全球霸主的地位。

目前全球各國關(guān)注的第四次工業(yè)革命,普遍的觀點(diǎn)是以“AI 制造”為標(biāo)志,從目前的發(fā)展態(tài)勢來看,最可能取得第四次工業(yè)革命成功的國家是中國或美國。

第四次工業(yè)革命方興未艾,使得制造業(yè)的提升成為全球關(guān)注的中心,大量從事軟件開發(fā)的工程師,也將目光投向工業(yè)制造,因此PLC與MODBUS也越來越熱。

2、可編程邏輯控制器PLC

PLC,Programmable Logic Controller,可編程邏輯控制器。

PLC可以被看成用在工業(yè)控制的微處理器,PLC包含CPU、內(nèi)存、I/O、數(shù)模轉(zhuǎn)換單元。

PLC具有穩(wěn)定性高、可擴(kuò)展性強(qiáng),因而在工業(yè)控制領(lǐng)域得到廣泛應(yīng)用。

與此同時(shí),PLC為工程技術(shù)人員提供圖形化編程接口,學(xué)習(xí)起來非常容易,不需要計(jì)算機(jī)專業(yè)知識也能進(jìn)行工業(yè)控制的程序編寫,因此深受工程技術(shù)人員的喜愛。

3、MODBUS協(xié)議

PLC的應(yīng)用,使得工業(yè)制造的數(shù)字化提升了一大步。如何利用收集的數(shù)據(jù),進(jìn)行分析,然后對工業(yè)制造過程進(jìn)行優(yōu)化,是工業(yè)制造能力提升的關(guān)鍵。

MODBUS協(xié)議1979年由德國施耐德電氣公司(準(zhǔn)確講是施耐德公司的前身Modicon公司)發(fā)表,隨即得到廣泛的關(guān)注與應(yīng)用。

MODBUS協(xié)議的提出,是為了讓擁有PLC能力的自動化設(shè)備,進(jìn)一步擁有通信能力。

MODBUS協(xié)議得到廣泛應(yīng)用的原因有:

(1)免費(fèi);

(2)易于使用;

(3)應(yīng)用的可擴(kuò)展能力強(qiáng)。

4、MODBUS協(xié)議

MODBUS協(xié)議很容易獲得,進(jìn)入modbus官網(wǎng),即可下載協(xié)議文檔。

當(dāng)前最新的版本是《Modbus_Application_Protocol_V1_1b3》,僅有50頁,感興趣的讀者可以自行下載和閱讀。

5、MODBUS協(xié)議的層次

MODBUS雖然應(yīng)用于工業(yè)制造領(lǐng)域,但是協(xié)議對網(wǎng)絡(luò)承載層的適應(yīng)性很強(qiáng)。

從網(wǎng)絡(luò)分層的角度來看,我們可以把MODBUS看成應(yīng)用層協(xié)議。這兩年來,我接觸過下面類型MODBUS協(xié)議:

MODBUS on TCP

MODBUS on UDP

MODBUS on RS-232

MODBUS on RS-422

MODBUS on RS-485

上述各種MODBUS協(xié)議實(shí)現(xiàn),很容易實(shí)現(xiàn)互聯(lián)互通。

下圖是MODBUS的網(wǎng)絡(luò)分層圖:

MODBUS協(xié)議軟件開發(fā)(modbus協(xié)議實(shí)現(xiàn))MODBUS協(xié)議軟件開發(fā)(modbus協(xié)議實(shí)現(xiàn))

6、MODBUS協(xié)議定義

MODBUS協(xié)議有兩種模式:MODBUS RTU和MODBUS ASCII,前者為二進(jìn)制格式,后者為ASCII格式??紤]到MODBUS RTU格式更緊湊,處理起來速度更快,實(shí)際使用中,主要采用MODBUS RTU。

MODBUS協(xié)議定義了兩個名詞:

ADU,Application Data Unit,應(yīng)用數(shù)據(jù)單元;

PDU,Protocol Data Unit,協(xié)議數(shù)據(jù)單元

考慮到MODBUS數(shù)據(jù)報(bào)文幀僅僅由四部分組成,非常緊湊,實(shí)際使用中,大多數(shù)開發(fā)人員并不關(guān)心ADU和PDU這兩個名詞。

MODBUS數(shù)據(jù)報(bào)文幀的格式如下:

MODBUS協(xié)議軟件開發(fā)(modbus協(xié)議實(shí)現(xiàn))

MODBUS數(shù)據(jù)報(bào)文幀四個部分的含義:

Additional addres:附加地址,用于標(biāo)識終端設(shè)施的地址;使用附加地址,MODBUS支持對多個終端通過總線收集數(shù)據(jù)、設(shè)置參數(shù);

Function code:功能碼,標(biāo)識對終端進(jìn)行的操作;

Data:報(bào)文幀包含的數(shù)據(jù)(可以為空);

Error check:CRC16校驗(yàn)碼。

7、MODBUS協(xié)議軟件的開發(fā)

由于MODBUS協(xié)議實(shí)在太簡單,并且由于MODBUS與承載層沒有相關(guān)性,導(dǎo)致MODBUS的軟件開發(fā)特別容易,接到一個從未做過的新任務(wù),往往不到一天就可以初步開發(fā)完成。

這是我前段時(shí)間寫過的一段代碼,你會發(fā)現(xiàn),它簡直簡單到極點(diǎn):

adubytes[0] = slaveId;aduBytes[1] = FUNCTION_CODE_READ_HOLDING_REGISTERS;aduBytes[2] = (byte)((startAddress >> 8) & 0xFF);aduBytes[3] = (byte)(startAddress & 0xFF);aduBytes[4] = (byte)((registerQuantity >> 8) & 0xFF);aduBytes[5] = (byte)(registerQuantity & 0xFF);long crcValue = CommonUtil.getCrcValue(aduBytes, 0, 6);aduBytes[6] = (byte)(crcValue & 0xFF);aduBytes[7] = (byte)((crcValue >> 8) & 0xFF);

天有點(diǎn)晚了,隨手寫了這篇文章,希望對MODBUS的開發(fā)者有用。

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
公眾號
公眾號
在線咨詢
分享本頁
返回頂部