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

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

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

優(yōu)雅的80個MODBUS通訊的變頻器例子

opkgjew ? 來源:PLC標(biāo)準(zhǔn)化編程 ? 2023-06-05 14:26 ? 次閱讀

0601 【萬泉河】優(yōu)雅的80臺MODBUS通訊的變頻器例子

為什么是80?80是我做的一系列PLC編程的例子,前面做過80個雙聯(lián)開關(guān),80個模擬量的處理?,F(xiàn)在把這個80系列繼續(xù)做下去,準(zhǔn)備控制80臺MODBUS通訊的變頻器。

有人會罵:胡鬧!MODBUS通訊怎么可能帶那么多站點!

沒錯,一條RS485總線肯定帶不了這么多。所以我們打算使用MODBUS TCP轉(zhuǎn)MODBUS RTU的網(wǎng)關(guān)來實現(xiàn)。一個網(wǎng)關(guān)轉(zhuǎn)換出來一條485總線,可以帶10臺RTU(大約),那么8個網(wǎng)關(guān)就可以帶80臺了。當(dāng)然也可以直接買那種一臺網(wǎng)關(guān)帶8路485輸出的網(wǎng)關(guān)。

總之,就不在PLC上擴展RS485口了,反正數(shù)量也不夠,價格也沒有優(yōu)勢。所以,對PLC來說,做的只是MODBUS TCP通訊,當(dāng)然原理和RTU是完全相同的。

都需要輪詢。即, 每條總線上根據(jù)其掛載的RTU的數(shù)量以及需要的讀寫數(shù)據(jù)區(qū)進(jìn)行循環(huán)讀取,而各條總線之間互相不干擾,各自循環(huán)。

很多品牌的變頻器原生支持MODBUS RTU通訊接口,所以這種通訊方案成本造價比較低廉,在工程項目中應(yīng)用比較廣泛。

我們這里控制的是ABB ACS系列的變頻器。演示了針對ABB變頻器所制作的專用的FB模塊。然而后續(xù)也會有插曲,比如實際施工時,因為供應(yīng)商原因或者采購周期原因, 其中的個別幾臺ABB變頻器被替代成了DANFOSS變頻器,然而我們?nèi)绾尾皇芨蓴_,如何通過模塊化的手段,適應(yīng)了這種現(xiàn)場的變更,而沒有被折騰到崩潰。相信有一定工程經(jīng)驗的同行都或多或少會有過這樣的經(jīng)歷。

實現(xiàn)的過程

按照我在宇宙觀的文章里的觀點, 在運行邏輯固定的情況下,一個控制對象完全可以實現(xiàn)模塊化封裝。那么要控制一臺ABB變頻器,我們需要送給它的參數(shù)只有2個:子網(wǎng)號和MODBUS站地址。

6eb3a24a-0196-11ee-90ce-dac502259ad0.png

然后它就該能夠自動完成數(shù)據(jù)的輪詢讀寫。而至于它的數(shù)據(jù)區(qū)的地址,需要的數(shù)據(jù)的數(shù)量,都在這個塊里面了。只需要根據(jù)產(chǎn)品說明書的通訊部分,查閱后設(shè)計好這個FB塊即可。 外圍原本也不需要知道。

而至于485總線的通訊參數(shù)以及網(wǎng)關(guān)的IP地址等,都是在網(wǎng)關(guān)的相關(guān)參數(shù)部分實現(xiàn),具體的設(shè)備對象是不需要每個都錄入的。

在完成通訊功能的基礎(chǔ)上, 控制的其他內(nèi)容, 按照行業(yè)特點和需求,比如有的行業(yè)習(xí)慣于用通訊只讀取狀態(tài)和電流頻率等數(shù)值,而對變頻器啟??刂迫匀恍枰ㄟ^端子實現(xiàn), 那么上述封裝還可以增加IO管腳,這里不再演示。

我這里講到的當(dāng)然不是暢想,而是已經(jīng)完成的歷史。

程序的具體調(diào)用情況:

6ec71672-0196-11ee-90ce-dac502259ad0.png

程序中有屏蔽的部分,代表實際應(yīng)用中,如果有設(shè)備減少, 也只需要屏蔽相應(yīng)的調(diào)用,不再需要修改邏輯,數(shù)據(jù)區(qū)的排列,循環(huán)次數(shù)等等。全都不需要。需要的只是將調(diào)用這一行屏蔽。

而在聲明區(qū)

6ed005ac-0196-11ee-90ce-dac502259ad0.png

看到第5臺設(shè)備竟然詭異地變成了DANFOSS, 原因也是現(xiàn)場臨時改動了變頻器的型號,那么我們也只需要簡單修改調(diào)用的FB的數(shù)據(jù)類型。其他的都不需要再動了。

當(dāng)然,為DANFOSS又設(shè)計了專用的FB塊。因為它的控制字,狀態(tài)字地址與ABB都不同,所以當(dāng)然需要專門再定制。

我曾經(jīng)寫過文章計劃將所完成的這套GML MODBUS庫的方法推廣到西門子之外的其它品牌的PLC。然而響應(yīng)者寥寥??上攵疫€是走的太超前了,同行們還都停留在原有的每個項目都去做程序做輪詢,通過讀取數(shù)據(jù)到一個大的數(shù)據(jù)塊,然后控制邏輯中使用的模式。也是我自己曾經(jīng)所采取的方式。

現(xiàn)在計劃逐步放開分享這部分的程序源代碼。包括所有品牌型號的標(biāo)準(zhǔn)化的學(xué)員,以及用量大于等于3臺的WANQ的用戶都可以免費得到。看到文章后可以私下向我索要。各位得到后在此基礎(chǔ)上再發(fā)展研發(fā)的其它產(chǎn)品的模塊,請務(wù)必再回饋我一份。完整的內(nèi)容應(yīng)當(dāng)是一個FB以及這個通訊單元的應(yīng)用說明書。

程序是V17下做的。原本是庫函數(shù)在更低的環(huán)境下做的,調(diào)試也完全沒有問題。只不過我現(xiàn)在電腦上只有V17,所以就用V17演示了。你如果要在低版本下實現(xiàn),需要逐個塊的內(nèi)容逐個復(fù)制遷移到低版本中。大部分程序塊是用SCL寫的, 應(yīng)該還算方便。

西門子之外的其它品牌的標(biāo)準(zhǔn)化的學(xué)員,你也只能得到V17的這個程序版本參考后可以在其它品牌中實現(xiàn)。那些品牌的MODBUS通訊我都沒做過,所以我自己做不了。這些方面的拓展,有勞各位了。SMART 200的GML庫函數(shù)我做過了,但控制對象不是變頻器,這部分的學(xué)員可以私信我獲取,但你需要做個ABB或者其它品牌的變頻器的應(yīng)用回饋我。

除此之外,如果有人要移植到其他品牌中,做的過程中可以咨詢我,我可以給予一些幫助。

而對于用戶之外的更多的同行,如果對這個框架結(jié)構(gòu)感興趣,可以分享一個刪減版,我會把MODBUS 通訊部分的功能塊刪除后再打包后分享。獲取方式我會分享到80系列的QQ群文件中,2個群都已經(jīng)滿員,然而游客也可以直接下載群文件,所以不會再擴展新群。群號到歷史文章中得到?;蛘呶⑿潘叫盼耀@取。

雖然這個分享是有刪減的, 但仍然是有價值的,刪除的只是MODBUS通訊部分的6個功能塊而已。而其他的模塊化的封裝,包括ABB變頻器, DANFOSS變頻器的控制塊,以及我以前提到過的中央報警指示燈HA2的塊,想了想也都保留在里面了,有愛好學(xué)習(xí)的可以參考。

咱們行業(yè)的習(xí)慣,大家還是更習(xí)慣自己的功能塊自己用,用著放心。所以大家可以在參考我提出的思想的基礎(chǔ)上自己補齊并調(diào)試實現(xiàn)。

RS485網(wǎng)絡(luò)中不同子網(wǎng)的MODBUS站號是可以有重復(fù)的,當(dāng)然也可以不重復(fù)。 這些都是隨現(xiàn)場調(diào)試人員而定,只需要對應(yīng)正確就可以。

另外,同一個子網(wǎng)上,也有可能不僅僅掛變頻器,還會掛其他的儀表等設(shè)備,只需要在一個子網(wǎng)內(nèi)不與現(xiàn)有設(shè)備的MODBUS站號沖突即可。但在程序的編寫方面,則是在另外的環(huán)節(jié),比如我有可能再寫一個80臺電能表的例子。然而與變頻器毫無關(guān)系。即便同處一個485網(wǎng)絡(luò),也不需要再去協(xié)調(diào)輪詢周期。

即, 那些把循環(huán)指令當(dāng)核心算法的同行們可以知道了,循環(huán)只是在通訊邏輯內(nèi)部實現(xiàn)的,不需要時刻掛在腦門上。

審核編輯:湯梓紅

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

    關(guān)注

    5006

    文章

    13107

    瀏覽量

    461462
  • 變頻器
    +關(guān)注

    關(guān)注

    251

    文章

    6466

    瀏覽量

    143971
  • MODBUS
    +關(guān)注

    關(guān)注

    28

    文章

    1757

    瀏覽量

    76760
  • 通訊
    +關(guān)注

    關(guān)注

    9

    文章

    890

    瀏覽量

    34810
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3565

    瀏覽量

    93536

原文標(biāo)題:0601 【萬泉河】優(yōu)雅的80個MODBUS通訊的變頻器例子

文章出處:【微信號:PLC標(biāo)準(zhǔn)化編程,微信公眾號:PLC標(biāo)準(zhǔn)化編程】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Labview Modbus變頻器通信問題。

    新人小白求教。之前只用過Labview做過信號測量和處理。沒有涉及到通信這塊內(nèi)容。最近在做一Labview和變頻器通過Modbus通信直接控制電機轉(zhuǎn)速的畢業(yè)設(shè)計。這里電腦(Labview)作為
    發(fā)表于 08-26 21:09

    西門子S7200與變頻器MODBUS通訊實例詳解

    西門子S7200與變頻器MODBUS通訊實例詳解
    發(fā)表于 12-11 17:04 ?21次下載

    西門子S7-200與變頻器Modbus RTU通訊調(diào)試說明

    西門子S7-200與-Danfoss-VLT2800變頻器Modbus-RTU通訊調(diào)試說明。
    發(fā)表于 04-22 14:46 ?84次下載

    ABB變頻器ACS510MODBUS通訊梯形程序

    ABB變頻器ACS510MODBUS通訊梯形程序說明。
    發(fā)表于 05-07 14:05 ?87次下載

    什么是變頻器通訊

    變頻器通訊
    的頭像 發(fā)表于 04-04 16:30 ?1435次閱讀
    什么是<b class='flag-5'>變頻器</b><b class='flag-5'>通訊</b>

    MODBUS與臺達(dá)變頻器通訊

    MODBUS與臺達(dá)變頻器通訊1
    發(fā)表于 04-10 09:53 ?1次下載
    <b class='flag-5'>MODBUS</b>與臺達(dá)<b class='flag-5'>變頻器</b><b class='flag-5'>通訊</b>

    200plc與施耐德ATV610變頻器modbus通訊

    200plc與施耐德ATV610變頻器modbus通訊1,讀寫變頻器的內(nèi)部參數(shù) 2,控制變頻器正反轉(zhuǎn),停止,讀電壓電流 3,設(shè)置
    發(fā)表于 04-10 10:51 ?13次下載
    200plc與施耐德ATV610<b class='flag-5'>變頻器</b><b class='flag-5'>modbus</b><b class='flag-5'>通訊</b>

    變頻器與PLC的通訊設(shè)計步驟

    PLC與變頻器通訊設(shè)計需要了解所使用的PLC和變頻器的具體型號及其通訊接口和協(xié)議。以下是一通用的設(shè)計步驟:
    的頭像 發(fā)表于 09-11 14:42 ?1826次閱讀
    <b class='flag-5'>變頻器</b>與PLC的<b class='flag-5'>通訊</b>設(shè)計步驟

    PLC通過Modbus轉(zhuǎn)Profinet網(wǎng)關(guān)與合康變頻器Modbus通訊配置案例

    PLC通過Modbus轉(zhuǎn)Profinet網(wǎng)關(guān)(XD-MDPN100)與合康變頻器Modbus通訊,實現(xiàn)了兩設(shè)備之間的數(shù)據(jù)交互。Profin
    的頭像 發(fā)表于 10-17 14:15 ?617次閱讀
    PLC通過<b class='flag-5'>Modbus</b>轉(zhuǎn)Profinet網(wǎng)關(guān)與合康<b class='flag-5'>變頻器</b><b class='flag-5'>Modbus</b><b class='flag-5'>通訊</b>配置案例

    上位機通過Modbus轉(zhuǎn)Profinet網(wǎng)關(guān)與CGV300變頻器通訊配置案例

    上位機通過Modbus轉(zhuǎn)Profinet網(wǎng)關(guān)(XD-MDPN100)與CGV300變頻器通訊的案例可以實現(xiàn)兩不同的通信協(xié)議之間的互聯(lián)互通。在這個案例中,上位機通過
    的頭像 發(fā)表于 10-26 09:13 ?736次閱讀
    上位機通過<b class='flag-5'>Modbus</b>轉(zhuǎn)Profinet網(wǎng)關(guān)與CGV300<b class='flag-5'>變頻器</b><b class='flag-5'>通訊</b>配置案例

    上位機通過Modbus轉(zhuǎn)Profinet網(wǎng)關(guān)與變頻器Modbus通訊配置案例

    上位機與變頻器Modbus通訊是通過Modbus轉(zhuǎn)Profinet網(wǎng)關(guān)來實現(xiàn)的。這個網(wǎng)關(guān)可以理解為一通信翻譯
    的頭像 發(fā)表于 10-25 20:55 ?881次閱讀
    上位機通過<b class='flag-5'>Modbus</b>轉(zhuǎn)Profinet網(wǎng)關(guān)與<b class='flag-5'>變頻器</b><b class='flag-5'>Modbus</b><b class='flag-5'>通訊</b>配置案例

    S7-1200和V20變頻器MODBUS通訊實例

    V20變頻器通過RS485線纜與PLC連接,使用標(biāo)準(zhǔn)的MODBUS通信協(xié)議進(jìn)行通訊,通過modbus通訊,PLC給V20
    的頭像 發(fā)表于 11-21 15:59 ?2072次閱讀
    S7-1200和V20<b class='flag-5'>變頻器</b>的<b class='flag-5'>MODBUS</b><b class='flag-5'>通訊</b>實例

    PLC與變頻器Modbus通訊方法

    在現(xiàn)代工業(yè)自動化系統(tǒng)中,PLC(可編程邏輯控制)與變頻器之間的通信是至關(guān)重要的。這種通信使得PLC能夠?qū)崟r監(jiān)控和控制變頻器的運行狀態(tài),實現(xiàn)高效、準(zhǔn)確的自動化控制。Modbus作為一種
    的頭像 發(fā)表于 06-14 15:59 ?1009次閱讀

    Profinet轉(zhuǎn)Modbus網(wǎng)關(guān)運用在DCS系統(tǒng)中與變頻器通訊案例

    通過Profinet轉(zhuǎn)Modbus網(wǎng)關(guān)(XD-MDPN100),實現(xiàn)DCS系統(tǒng)與變頻器之間的無縫通訊,現(xiàn)場監(jiān)控變頻器運行情況。Profinet轉(zhuǎn)Mo
    的頭像 發(fā)表于 08-10 17:28 ?589次閱讀
    Profinet轉(zhuǎn)<b class='flag-5'>Modbus</b>網(wǎng)關(guān)運用在DCS系統(tǒng)中與<b class='flag-5'>變頻器</b>的<b class='flag-5'>通訊</b>案例

    變頻器通訊梯形程序

    ABB變頻器ACS510MODBUS通訊梯形程序
    發(fā)表于 09-25 11:22 ?1次下載