91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

英創(chuàng)信息技術(shù)ModBus通訊協(xié)議軟件包簡(jiǎn)介

英創(chuàng)信息技術(shù) ? 來(lái)源:英創(chuàng)信息技術(shù) ? 作者:英創(chuàng)信息技術(shù) ? 2020-02-14 09:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ModBus通訊協(xié)議簡(jiǎn)介

Modbus協(xié)議是一種已廣泛應(yīng)用于當(dāng)今工業(yè)控制領(lǐng)域的通用通訊協(xié)議。通過此協(xié)議,控制器相互之間、或控制器經(jīng)由網(wǎng)絡(luò)(如以太網(wǎng))可以和其它設(shè)備之間進(jìn)行通信。Modbus協(xié)議使用的是主從通訊技術(shù),即由主設(shè)備主動(dòng)查詢和操作從設(shè)備。一般將主控設(shè)備方所使用的協(xié)議稱為Modbus Master,從設(shè)備方使用的協(xié)議稱為Modbus Slave。典型的主設(shè)備包括工控機(jī)和工業(yè)控制器等;典型的從設(shè)備如PLC編程控制器等。Modbus通訊物理接口可以選用串口(包括RS232RS485),也可以選擇以太網(wǎng)口。其通信遵循以下的過程:

●主設(shè)備向從設(shè)備發(fā)送請(qǐng)求

●從設(shè)備分析并處理主設(shè)備的請(qǐng)求,然后向主設(shè)備發(fā)送結(jié)果

●如果出現(xiàn)任何差錯(cuò),從設(shè)備將返回一個(gè)異常功能碼

英創(chuàng)ModBus通訊協(xié)議軟件產(chǎn)品簡(jiǎn)介

英創(chuàng)公司推出的ModBus通訊協(xié)議軟件產(chǎn)品主要應(yīng)用于英創(chuàng)ARM9嵌入式主板環(huán)境,英創(chuàng)工控主板均帶有豐富的串口、網(wǎng)絡(luò)資源、通用GPIO接口等,同時(shí)具有強(qiáng)大的處理能力。結(jié)合ModBus通訊協(xié)議軟件,就可非常方便地構(gòu)成符合ModBus通訊規(guī)范的主控(Master)及設(shè)備(Slave)的應(yīng)用平臺(tái)。針對(duì)ModBus通訊的主從方式這一特點(diǎn),英創(chuàng)公司的ModBus通訊協(xié)議軟件包分為兩個(gè)可獨(dú)立使用的部分,即“ModBus主控協(xié)議軟件”(簡(jiǎn)稱modbus_Master)以及“ModBus設(shè)備方協(xié)議軟件”(簡(jiǎn)稱modbus_Slave)。目前英創(chuàng)ModBus通訊協(xié)議軟件運(yùn)行于WinCE環(huán)境下,均以C函數(shù)加靜態(tài)LIB庫(kù)的形式提供給客戶。其主要特征如下:

●非常適用于實(shí)時(shí)的工業(yè)應(yīng)用

●可以支持基于串口的ModBus通訊協(xié)議應(yīng)用或TCP的ModBus通訊協(xié)議應(yīng)用

●RTU傳輸模式

●支持大多數(shù)的Modbus功能碼操作,包括對(duì)線圈、離散開關(guān)輸入的位操作,以及對(duì)寄存器的字節(jié)操作

●支持廣播地址

●可以靈活設(shè)置ModBus通訊的超時(shí)時(shí)間

●可以獲取通訊中傳輸協(xié)議的錯(cuò)誤代碼的詳細(xì)信息

英創(chuàng)ModBus協(xié)議軟件通訊關(guān)系圖

英創(chuàng)ModBus協(xié)議軟件支持的功能碼

功能碼 描述
1 讀單個(gè)線圈
2 讀離散量輸入
3 讀多個(gè)寄存器
4 讀輸入寄存器
5 寫單個(gè)線圈
6 寫單個(gè)寄存器
15 寫多個(gè)線圈
16 寫多個(gè)寄存器
22 屏蔽寫寄存器
23 讀/寫寄存器

軟件基本使用方法

為了方便應(yīng)用程序的使用,對(duì)不同的通訊介質(zhì)保持一致的代碼形式,英創(chuàng)所提供的ModBus協(xié)議軟件(包括modbus_Master和modbus_Slave)中的API函數(shù)可以同時(shí)支持基于串口和TCP的Modbus協(xié)議,應(yīng)用程序只需要在調(diào)用初始化函數(shù)時(shí),用不同參數(shù)區(qū)分即可,有關(guān)參數(shù)的說明請(qǐng)參見相應(yīng)的頭文件:modbus_Master.h和modbus_Slave.h

1、modbus_Master的應(yīng)用

作為Modbus客戶端模式的應(yīng)用,主要是準(zhǔn)備請(qǐng)求并向服務(wù)器設(shè)備發(fā)送請(qǐng)求,并等待服務(wù)器的響應(yīng)。在做此類應(yīng)用開發(fā)時(shí),用戶可參考Modbus標(biāo)準(zhǔn)文獻(xiàn)以及被控設(shè)備的通訊接口數(shù)據(jù)手冊(cè),直接調(diào)用英創(chuàng)提供的modbus_Master軟件包提供了相應(yīng)的操作API函數(shù),來(lái)完成對(duì)服務(wù)器設(shè)備的訪問和控制。在進(jìn)行此類應(yīng)用開發(fā)時(shí),用戶只需要包含modbus_master.h/ modbus_master.lib 即可。

2、modbus_Slave的應(yīng)用

作為ModBus服務(wù)器模式的應(yīng)用,主要需要實(shí)現(xiàn)了對(duì)于ModBus應(yīng)用報(bào)文的分析與響應(yīng),但這還只是ModBus整個(gè)通訊的一部分,另一部分是還需要有對(duì)應(yīng)用數(shù)據(jù)的訪問,這部分的內(nèi)容則需要用戶自己來(lái)進(jìn)行定義。為了方便客戶的使用,在modbus_Slave軟件包中通過函數(shù)指針的形式,實(shí)現(xiàn)了這些用戶接口函數(shù)的自動(dòng)加載,將用戶應(yīng)用數(shù)據(jù)處理和ModBus應(yīng)用報(bào)文響應(yīng)關(guān)聯(lián)起來(lái)。用戶只需根據(jù)需求定義這些接口函數(shù)來(lái)實(shí)現(xiàn)相應(yīng)的功能,各個(gè)函數(shù)具體的定義是通過專門的一個(gè)CPP文件:DataProvider.cpp來(lái)實(shí)現(xiàn)。

由此可見在這類的開發(fā)應(yīng)用時(shí),需包含兩個(gè)部分的內(nèi)容,一部分是 modbus_slave.h/ modbus_slave.lib定義的API函數(shù);另一部分是DataProvider.h /DataProvider.cpp定義的用戶數(shù)據(jù)接口函數(shù),其中接口函數(shù)需要用戶在DataProvider.cpp中具體實(shí)現(xiàn)。

為了及時(shí)地響應(yīng)ModBus應(yīng)用報(bào)文,需要注意的是在程序設(shè)計(jì)時(shí)應(yīng)設(shè)計(jì)一個(gè)線程反復(fù)調(diào)用modbus_Slave執(zhí)行函數(shù),該函數(shù)為阻塞模式。

舉例如下:

(1)啟動(dòng)modbus設(shè)備方協(xié)議

hPort = mbusSlave_StartupServer( _T('*'), 1, 10000, mbusSlave_Interface );

或者

hPort=mbusSlave_StartupServer( _T('COM3:9600-8-1-0'),1,10000, mbusSlave_Interface );

(2)線程中調(diào)用執(zhí)行函數(shù)Serverloop 響應(yīng)請(qǐng)求

while( 1 )

{

// 調(diào)用執(zhí)行函數(shù),用于對(duì)ModBus報(bào)文的分析和響應(yīng)。

result = mbusSlave_ServerLoop( hPort );

if( result!=0 ) // 檢查是否返回錯(cuò)誤

{

// 出錯(cuò)處理:本例為獲取并打印錯(cuò)誤代碼的文本信息

wcscpy( szText, mbusSlave_GetErrorText( result ) );

i1 = wcslen( szText );

if( i1>0 )

{

wcstombs( strText, szText, i1 );

printf( ' error code: %s!\n', strText );

}

}

}

之前英創(chuàng)公司提供的ModBus通訊協(xié)議軟件,均是以C函數(shù)加靜態(tài)庫(kù)(modbus.lib或libmodbus.a文件)的形式提供給客戶。隨著越來(lái)越多的客戶使用,英創(chuàng)將ModBus通訊協(xié)議,特別是主控協(xié)議軟件(簡(jiǎn)稱modbus_Master)以動(dòng)態(tài)庫(kù)(modbus_Master.dll或libmbusmaster.so文件)的形式預(yù)裝到英創(chuàng)嵌入式工控主板內(nèi)核系統(tǒng)中,以方便客戶應(yīng)用程序的調(diào)用。預(yù)裝Modbus協(xié)議的工控主板包括英創(chuàng)ESM系列所有主板(ESM6802、ESM6800、ESM335x、ESM928x等)。

相關(guān)參考資料

4~20mA電流環(huán)采集應(yīng)用方案 WinCE下的Modbus主控通訊協(xié)議軟件
WinCE下的Modbus設(shè)備方協(xié)議軟件 英創(chuàng)嵌入式Linux工控主板支持Modbus主控協(xié)議軟件
Linux下的Modbus設(shè)備方協(xié)議軟件介紹 ESM6802支持Qt MODBUS程序開發(fā)
在英創(chuàng)主板中預(yù)裝Modbus通訊協(xié)議

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11758

    瀏覽量

    219009
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6107

    瀏覽量

    37071
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RT-Thread Vector軟件包:嵌入式開發(fā)的動(dòng)態(tài)數(shù)組容器 | 技術(shù)集結(jié)

    RT-Thread Vector軟件包:嵌入式開發(fā)的動(dòng)態(tài)數(shù)組容器 | 技術(shù)集結(jié)
    的頭像 發(fā)表于 01-25 09:33 ?5374次閱讀
    RT-Thread Vector<b class='flag-5'>軟件包</b>:嵌入式開發(fā)的動(dòng)態(tài)數(shù)組容器 | <b class='flag-5'>技術(shù)</b>集結(jié)

    瑞薩靈活配置軟件包FSP 6.2.0版本的更新內(nèi)容

    FSP(Flexible Software Package)靈活配置軟件包是瑞薩電子(Renesas)為RA系列微控制器(MCU)家族開發(fā)的軟件包。FSP自發(fā)布以來(lái)經(jīng)過了數(shù)年的更新,現(xiàn)在已經(jīng)來(lái)到了6.2.0版本。
    的頭像 發(fā)表于 12-11 16:42 ?947次閱讀
    瑞薩靈活配置<b class='flag-5'>軟件包</b>FSP 6.2.0版本的更新內(nèi)容

    元服務(wù)發(fā)布選擇待發(fā)布軟件包

    ;gt; 版本信息”下待發(fā)布的版本。 進(jìn)入“軟件版本”區(qū)域,點(diǎn)擊“版本選取” 5.彈出窗口將展示已上傳的、通過檢查的軟件包,選擇待發(fā)布的軟件包,點(diǎn)擊“選取”。 說明 如果發(fā)現(xiàn)沒有您需要
    發(fā)表于 11-03 17:10

    在linux中使用env時(shí)如何下載軟件包?

    在windows的env中可以直接使用pkgs —update去下載軟件包,Linux環(huán)境下這個(gè)指令好像不生效,那么Linux環(huán)境下的軟件包下載指令是什么呢?
    發(fā)表于 10-11 09:23

    Pico Technology發(fā)布Python軟件包pyPicoSDK

    近日,全球領(lǐng)先的基于 PC 的儀器供應(yīng)商Pico Technology 官方發(fā)布了 pyPicoSDK,這是一款旨在簡(jiǎn)化 PicoScopes 應(yīng)用的 Python 軟件包。pyPicoSDK 在
    的頭像 發(fā)表于 09-29 15:03 ?946次閱讀

    如何使用menuconfig添加配置micro-ros軟件包

    請(qǐng)問有沒有最新的rtthread移植micro-ros移植使用教程,使用menuconfig添加配置micro-ros軟件包?
    發(fā)表于 09-25 06:37

    ENV不能添加rt_vsnprintf_full軟件包怎么解決?

    想在bsp工程打印浮點(diǎn)數(shù),結(jié)果找不到rt_vsnprintf_full軟件包 問題復(fù)現(xiàn) 使用env-windows-v2.0.0 執(zhí)行pkgs --upgrade 打開menuconfig找不到rt_vsnprintf_full軟件包 使用/搜索找到
    發(fā)表于 09-24 06:04

    RT-thread studio添加新的軟件包和新的文件出錯(cuò)怎么解決?

    從模板工程中,添加新的軟件包時(shí),點(diǎn)擊同步scons配置至項(xiàng)目出現(xiàn)報(bào)錯(cuò) 另外,添加新創(chuàng)文件夾后,點(diǎn)擊添加至構(gòu)建,并沒有效果 是否是需要新建Sconscript文件
    發(fā)表于 09-19 06:02

    ENV添加micropython軟件包出現(xiàn)異常的原因?

    的python27.dll和platformenv_releasedenvtoolsPython27換一下。結(jié)果還是錯(cuò)誤?。 沒辦法了,就行下一步添加micropython軟件包。按照教程走出現(xiàn)了這個(gè)東西我直接
    發(fā)表于 09-12 08:06

    添加mbedtls軟件包scons失敗怎么解決?

    我按照官網(wǎng)的步驟來(lái)添加mbedtls的軟件包,進(jìn)行scons為什么會(huì)出現(xiàn)這個(gè)問題,我用的芯片是stm32f407vet6,在keil5里面編譯倒是沒問題 整個(gè)項(xiàng)目是基于lwip聯(lián)網(wǎng)的,網(wǎng)絡(luò)通訊
    發(fā)表于 09-10 06:17

    大彩講堂:VisualTFT軟件modbus協(xié)議下的告警應(yīng)用

    VisualTFT軟件modbus協(xié)議下的告警應(yīng)用
    的頭像 發(fā)表于 07-01 17:40 ?1205次閱讀
    大彩講堂:VisualTFT<b class='flag-5'>軟件</b><b class='flag-5'>modbus協(xié)議</b>下的告警應(yīng)用

    科普|信創(chuàng)是什么?一文讀懂“信息技術(shù)應(yīng)用創(chuàng)新”戰(zhàn)略

    什么是信創(chuàng)?信創(chuàng),即“信息技術(shù)應(yīng)用創(chuàng)新”,是國(guó)家推動(dòng)IT系統(tǒng)自主可控、安全可控的重要戰(zhàn)略工程。它不僅是技術(shù)層面的創(chuàng)新,更承載著保障國(guó)家網(wǎng)絡(luò)安全、推動(dòng)產(chǎn)業(yè)升級(jí)和實(shí)現(xiàn)數(shù)字主權(quán)的重任。簡(jiǎn)單來(lái)
    的頭像 發(fā)表于 06-13 10:06 ?8214次閱讀
    科普|信<b class='flag-5'>創(chuàng)</b>是什么?一文讀懂“<b class='flag-5'>信息技術(shù)</b>應(yīng)用創(chuàng)新”戰(zhàn)略

    RT-Thread Studio更新軟件包為什么不成功呢?

    RT-Thread Studio更新軟件包出現(xiàn) MESSAGE cmd_package_update 462 WARNING Error message : local variable
    發(fā)表于 05-27 06:53

    Modbus轉(zhuǎn)Profinet網(wǎng)關(guān):工控機(jī)的“逆襲神器”

    工控機(jī)的軟件中讀取Modbus設(shè)備的數(shù)據(jù),或者向Modbus設(shè)備寫入數(shù)據(jù),觀察數(shù)據(jù)是否能夠正確顯示或生效。如有問題,根據(jù)錯(cuò)誤信息調(diào)整配置參數(shù),直至
    發(fā)表于 05-20 16:50

    如何下載do on stack軟件包AN3942SW.zip?

    有誰(shuí)知道在哪里/如何下載 do on stack 軟件包AN3942SW.zip
    發(fā)表于 03-21 06:33