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

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

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

自定義Modbus通信塊指令的搭建教程

工控論壇 ? 來源:跟我學(xué)PLC吧 ? 2025-01-20 10:37 ? 次閱讀

以下文章來源于跟我學(xué)PLC吧,作者凌云

一、 導(dǎo)讀

Modbus 通信是一種應(yīng)用廣泛的通信協(xié)議 ,在變頻器智能儀表或是其他的一些智能設(shè)備上應(yīng)用的一種通用通信協(xié)議,本文以S7-200SMART系列PLC作為Modbus主站,以西門子V20變頻器和歐姆龍E5EZ的智能溫控儀表作為從站為例,為大家分享如何使用自定義的Modbus RTU的通信程序塊,來實(shí)現(xiàn)快速高效的Modbus通信程序設(shè)計(jì)。同時(shí)在本文的結(jié)尾會(huì)為大家提供參考程序和打包好的Modbus RTU通信塊的庫指令,后續(xù)大家可以把該庫指令添加到自己軟件中的庫指令中,方便后續(xù)直接使用。

二、自定義Modbus通信塊指令介紹

如下圖所示為一條自定義的Modbus通信塊指令,在進(jìn)行Modbus通信時(shí),不管有多少個(gè)從站,都只需要使用一條該指令,使用時(shí)配合數(shù)據(jù)塊對(duì)通信數(shù)據(jù)的定義即可。

909cad4a-d5a5-11ef-9310-92fbcf53809c.png

90b4eb08-d5a5-11ef-9310-92fbcf53809c.png

三、通信程序的設(shè)計(jì)

(1) 硬件需求與接線

90c3ed4c-d5a5-11ef-9310-92fbcf53809c.png

(2) 控制要求說明

實(shí)現(xiàn)對(duì)西門子V20變頻器的運(yùn)行控制,速度調(diào)節(jié)、運(yùn)行狀態(tài)反饋、運(yùn)行速度反饋、輸出電流和輸出電壓監(jiān)控,實(shí)現(xiàn)對(duì)歐姆龍E5EZ的當(dāng)前溫度值PV值監(jiān)控和設(shè)定值SV的調(diào)整。根據(jù)V20變頻器說明書和歐姆龍E5EZ說明書得到對(duì)應(yīng)通信的Modbus 寄存器地址如下圖所示。

90d73848-d5a5-11ef-9310-92fbcf53809c.png

注:通信參數(shù)設(shè)置可根據(jù)V20變頻器說明書和歐姆龍E5EZ說明書來設(shè)置,對(duì)于V20變頻器可通過設(shè)置為鏈接宏Cn11快速完成通信參數(shù)的設(shè)置,需要注意的是要變頻器和智能儀表必須要設(shè)置相同的數(shù)據(jù)位,停止位、起始位、奇偶校驗(yàn)位和波特率。

(3) 在數(shù)據(jù)頁中定義通信數(shù)據(jù)

在數(shù)據(jù)頁中以10個(gè)字節(jié)為單位定義通信需要數(shù)據(jù)和讀寫數(shù)據(jù)存儲(chǔ)的地址,如圖所示:

90e47c06-d5a5-11ef-9310-92fbcf53809c.png

(4)通信程序

調(diào)用自定義的Modbus通信塊指令,完成通信程序的設(shè)計(jì),程序如下圖所示:

91169e3e-d5a5-11ef-9310-92fbcf53809c.png

調(diào)用的庫指令需要為其分配庫存儲(chǔ)器地址,該自定義的Modbus通信塊占用594個(gè)字節(jié)的地址,分配如下圖所示,分配時(shí)需要保證分配的庫存儲(chǔ)器地址在程序的其他地方未被使用。

911eb51a-d5a5-11ef-9310-92fbcf53809c.png

V20控制程序,主要用于完成對(duì)V20變頻器的控制命令給定和速度給定的換算程序,程序如下圖所示:

912db556-d5a5-11ef-9310-92fbcf53809c.png

9145812c-d5a5-11ef-9310-92fbcf53809c.png

四、結(jié)語

使用該自定義的Modbus 通信塊指令,可以無需考慮Modbus通信庫指令的使用和通信輪詢的設(shè)計(jì)方法,只需要定義好需要通信的數(shù)據(jù)區(qū)域即可。

聲明:本文內(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)投訴
  • plc
    plc
    +關(guān)注

    關(guān)注

    5016

    文章

    13359

    瀏覽量

    464592
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6057

    瀏覽量

    136256
  • MODBUS
    +關(guān)注

    關(guān)注

    28

    文章

    1819

    瀏覽量

    77189
  • 指令
    +關(guān)注

    關(guān)注

    1

    文章

    611

    瀏覽量

    35787

原文標(biāo)題:

文章出處:【微信號(hào):gkongbbs,微信公眾號(hào):工控論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    NIOS II自定義指令設(shè)計(jì)之實(shí)例篇

    在【原創(chuàng)】SOPC用戶自定義指令設(shè)計(jì)之軟件篇  和【原創(chuàng)】SOPC用戶自定義指令設(shè)計(jì)之硬件篇 中分別講述了自定義
    發(fā)表于 03-27 17:56 ?3199次閱讀
    NIOS II<b class='flag-5'>自定義</b><b class='flag-5'>指令</b>設(shè)計(jì)之實(shí)例篇

    自定義外設(shè)和自定義指令在SOPC系統(tǒng)中是如何運(yùn)行的?

    自定義外設(shè)和自定義指令在SOPC系統(tǒng)中是如何運(yùn)行的?怎樣去驗(yàn)證?
    發(fā)表于 05-26 06:33

    SOPC中自定義外設(shè)和自定義指令性能分析

    SOPC中自定義外設(shè)和自定義指令性能分析 NiosII是一個(gè)建立在FPGA上的嵌入式軟核處理器,靈活性很強(qiáng)。作為體現(xiàn)NiosII靈活性精髓的兩個(gè)最主要方面,自
    發(fā)表于 03-29 15:12 ?1624次閱讀
    SOPC中<b class='flag-5'>自定義</b>外設(shè)和<b class='flag-5'>自定義</b><b class='flag-5'>指令</b>性能分析

    1602自定義字符

    1602液晶能夠顯示自定義字符,能夠根據(jù)讀者的具體情況顯示自定義字符。
    發(fā)表于 01-20 15:43 ?1次下載

    erlang如何自定義_ERLANG環(huán)境搭建

    本文詳細(xì)介紹了erlang 如何自定義 behaviour以及ERLANG環(huán)境搭建。要定義一個(gè)behaviour,首先你要?jiǎng)?chuàng)建一個(gè)模塊,它必須導(dǎo)出 behaviour_info/1 這個(gè)函數(shù)(注意必須帶u),函數(shù)的
    發(fā)表于 02-23 08:42 ?1527次閱讀
    erlang如何<b class='flag-5'>自定義</b>_ERLANG環(huán)境<b class='flag-5'>搭建</b>

    如何通過LUA實(shí)現(xiàn)自定義串口指令設(shè)置

    本章節(jié)主要講述通過 LUA 實(shí)現(xiàn)自定義串口指令設(shè)置按鈕按下、設(shè)置文本、設(shè)置蜂鳴器響。并在按下按鈕或通過鍵盤輸入數(shù)據(jù)后發(fā)送自定義指令。本文將分為以下是 4 個(gè)階段講述教程 DEMO 是如
    發(fā)表于 10-17 08:00 ?8次下載
    如何通過LUA實(shí)現(xiàn)<b class='flag-5'>自定義</b>串口<b class='flag-5'>指令</b>設(shè)置

    嵌入式的CPU自定義指令有什么特點(diǎn)

    Arm的自定義指令最早將在2020年上半年在ArmCortex?M33CPU中開展,而新的和現(xiàn)有的被許可人將無需支付額外費(fèi)用,因此SoC設(shè)計(jì)人員可以為嵌入式和互聯(lián)網(wǎng)添加自己的指令而不會(huì)出現(xiàn)軟件碎片的風(fēng)險(xiǎn)。
    的頭像 發(fā)表于 02-05 17:32 ?2871次閱讀

    C#與STM32自定義通信協(xié)議

    C#與STM32自定義通信協(xié)議功能:1.可通過C#上位機(jī)對(duì)多臺(tái)STM32下位機(jī)進(jìn)行控制2.自定義上位機(jī)與下位機(jī)通信協(xié)議
    發(fā)表于 12-24 18:59 ?37次下載
    C#與STM32<b class='flag-5'>自定義</b><b class='flag-5'>通信</b>協(xié)議

    自定義視圖組件教程案例

    自定義組件 1.自定義組件-particles(粒子效果) 2.自定義組件- pulse(脈沖button效果) 3.自定義組件-progress(progress效果) 4.
    發(fā)表于 04-08 10:48 ?14次下載

    ArkUI如何自定義彈窗(eTS)

    自定義彈窗其實(shí)也是比較簡(jiǎn)單的,通過CustomDialogController類就可以顯示自定義彈窗。
    的頭像 發(fā)表于 08-31 08:24 ?2259次閱讀

    基于AWTK和AWPLC開發(fā)自定義功能

    AWPLC 是 ZLG 自主研發(fā)的 PLC 系統(tǒng)(兼容 IEC61131-3),本文用定時(shí)器為例介紹一下如何擴(kuò)展自定義功能。
    的頭像 發(fā)表于 10-26 11:50 ?959次閱讀

    labview自定義控件

    labview自定義精美控件
    發(fā)表于 05-15 16:46 ?18次下載

    自定義算子開發(fā)

    一個(gè)完整的自定義算子應(yīng)用過程包括注冊(cè)算子、算子實(shí)現(xiàn)、含自定義算子模型轉(zhuǎn)換和運(yùn)行含自定義op模型四個(gè)階段。在大多數(shù)情況下,您的模型應(yīng)該可以通過使用hb_mapper工具完成轉(zhuǎn)換并順利部署到地平線芯片上……
    的頭像 發(fā)表于 04-07 16:11 ?2842次閱讀
    <b class='flag-5'>自定義</b>算子開發(fā)

    labview超快自定義控件制作和普通自定義控件制作

    labview超快自定義控件制作和普通自定義控件制作
    發(fā)表于 08-21 10:32 ?13次下載

    串口屏LUA教程10-自定義串口指令

    串口屏LUA教程10-自定義串口指令
    發(fā)表于 04-29 13:17 ?16次下載