色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

DDT變量鏈接到定位變量方法

藍(lán)牙 ? 來(lái)源:工控論壇 ? 作者: 董偉 ? 2021-08-10 09:52 ? 次閱讀

一、概述

工業(yè)控制系統(tǒng)使用中,上位機(jī)組態(tài)軟件、HMI觸摸屏等顯示設(shè)備與控制設(shè)備PLC按指定通訊協(xié)議進(jìn)行數(shù)據(jù)交換是最為基本的功能了,以施耐德Modbus TCP協(xié)議為例,只要提供了支持此協(xié)議的PLC中變量的Modbus寄存器地址和數(shù)據(jù)類型,不管此PLC是哪個(gè)廠家的,都能實(shí)現(xiàn)HMI與PLC之間的數(shù)據(jù)交換。

二、問題的引出

目前PLC編程的主流思路不再是使用基于絕對(duì)地址的定位變量了,而是使用變量名+數(shù)據(jù)類型的非定位變量方式。以施耐德M580為例,其X80的I/O模塊的通道值都是用Device DDT非定位變量表示的,并且不能直接指定%M、%MW等地址與其對(duì)應(yīng)上。

這種表示方式對(duì)于OPC DA/UA及施耐德自己的HMI觸摸屏來(lái)說沒有什么問題,可以直接對(duì)應(yīng)上,但是對(duì)于支持標(biāo)準(zhǔn)Modbus TCP協(xié)議的其它廠家觸摸屏和上位機(jī)組態(tài)軟件來(lái)說就不方便了,因?yàn)樾枰兞繉?duì)應(yīng)上標(biāo)準(zhǔn)Modbus寄存器地址才行。

三、解決辦法

孔乙己說過,回字有四種寫法。同樣的,解決上述問題也有多種方法可以實(shí)現(xiàn)。思路是將M580里面的DDT地址對(duì)應(yīng)到%M及%MW寄存器中,從而能和HMI進(jìn)行MODBUS TCP通訊,

3.1復(fù)制 Device DDT變量類型直接鏈接絕對(duì)地址

此種方法的思路是新建一個(gè)結(jié)構(gòu)體變量,類型輸入與X80 I/O模塊數(shù)據(jù)類型一致如T_U_DIS_STD_IN_32,然后編寫程序鏈接上絕對(duì)地址如%MW10,詳見下圖:

d75927e0-f86d-11eb-9bcf-12bb97331649.png

3.2 ST編程FOR循環(huán)鏈接絕對(duì)地址

第一種方法比較費(fèi)地址數(shù)量,適用于I/O模塊不多,地址富余的工程項(xiàng)目。

如果I/O模塊過多,可以嘗試?yán)肍OR循環(huán)編程批量鏈接地址的方式,如下圖:每一個(gè)I/O模塊使用一個(gè)FOR循環(huán)指令,將通道值(.VALUE)鏈接到%M或者%MW寄存器地址。

這種方式的優(yōu)勢(shì)在于省寄存器地址,不像方法1,不管開關(guān)量還是模擬量,都必須關(guān)聯(lián)%MW寄存器地址,而且不需要的狀態(tài)等DDT變量也必須鏈接%MW寄存器地址。不過,ST編程FOR循環(huán)鏈接絕對(duì)地址有一個(gè)缺點(diǎn),就是因?yàn)镈DT變量名稱太過接近并且I/O模塊通道數(shù)不一樣,修改的時(shí)候容易眼花誤操作。

3.3編寫自定義DFB功能塊鏈接絕對(duì)地址

舉例32通道點(diǎn)X80的DI模塊,DDT中變量眾多,我們只需要轉(zhuǎn)換32個(gè)通道數(shù)值即可;

新建DFB塊DI_EXCHANGE,輸入管腳DI_INT,數(shù)據(jù)類型T_U_DIS_STD_IN_32(調(diào)用DFB時(shí),輸入就可只填寫MOD_DIS_32_2),輸出管腳DO_OUT,數(shù)據(jù)類型ARRAY[0..31] OF EBOOL;

編寫邏輯程序,采用ST編程方式,把輸入點(diǎn)的值一個(gè)一個(gè)賦值到輸出,鏈接到%M寄存器,然后在MAST里面程序段中調(diào)用DI_EXCHANG即可,實(shí)現(xiàn)32點(diǎn)的DI模塊的通道值批量鏈接到了%M中。

同樣的,32點(diǎn)DO模塊的處理方法是類似的,新建X80_DDO_32,定義輸入IN1,數(shù)據(jù)類型T_U_DIS_STD_OUT_32,輸出OUT1,OUT2,數(shù)據(jù)類型INT,編寫ST程序鏈接上%M寄存器,在MAST里面調(diào)用新建的功能塊X80_DDO_32即可。

這些DFB功能塊做好后直接右鍵導(dǎo)出的功能塊類型XDB格式,可以再導(dǎo)入到其它程序段中直接調(diào)用即可,移植方便,無(wú)須再次制作此DFB塊。

四 小結(jié)

針對(duì)M580的X80 I/O模塊的通道值都是用Device DDT非定位變量表示,并且不能直接指定%M、%MW等地址與其對(duì)應(yīng)上,但是觸摸屏和上位機(jī)組態(tài)軟件來(lái)說需要變量對(duì)應(yīng)上標(biāo)準(zhǔn)Modbus寄存器地址的問題,提出了3種解決方法。這3種方法特點(diǎn)明確,各有優(yōu)劣。

復(fù)制 Device DDT變量類型直接鏈接絕對(duì)地址法簡(jiǎn)單明晰,適合剛?cè)胧┠偷戮幊檀箝T的初級(jí)工程師;ST編程FOR循環(huán)鏈接絕對(duì)地址法和編寫自定義DFB功能塊鏈接絕對(duì)地址法對(duì)工程師編程水平要求稍高,通用性更強(qiáng),適合對(duì)施耐德Unity軟件編程操作有一定了解的工程師使用。

不管白貓還是黑貓,能夠抓住老鼠的貓就是好貓,同樣,不管使用何種方法操作,能耐解決實(shí)際問題就是工程師能力的體現(xiàn),解決上述問題的方法也不止這三種,更多的可能性等待你去探索實(shí)踐。

編輯:jq

聲明:本文內(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)注

    5031

    文章

    13735

    瀏覽量

    472220
  • DFB
    DFB
    +關(guān)注

    關(guān)注

    1

    文章

    31

    瀏覽量

    10038
  • OPC
    OPC
    +關(guān)注

    關(guān)注

    7

    文章

    357

    瀏覽量

    47049
  • HMI
    HMI
    +關(guān)注

    關(guān)注

    9

    文章

    630

    瀏覽量

    49688

原文標(biāo)題:施耐德M580系列的X80 I/O模塊通道值非定位Device DDT變量鏈接到定位變量方法

文章出處:【微信號(hào):TalkBT,微信公眾號(hào):藍(lán)牙】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 0人收藏

    評(píng)論

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

    飛凌嵌入式ElfBoard ELF 1板卡-uboot編譯鏈接文件uboot.lds

    。uboot.lds中規(guī)定了整個(gè)uboot的程序入口點(diǎn)(此入口點(diǎn)可以在Makefile文件中進(jìn)行了更改,將入口地址定位到了內(nèi)存中0X87800000位置),鏈接器以這個(gè)入口點(diǎn)為基點(diǎn),將各個(gè).o文件中代碼段.text
    發(fā)表于 05-22 11:20

    基于 IAR Embedded Workbench 的自研 MCU 芯片軟件函數(shù)與變量內(nèi)存布局優(yōu)化精控方法

    的函數(shù)和變量指定section放置方法與操作流程,兼具過程記錄與詳細(xì)說明,旨在打造一份實(shí)用的參考指南,助力開發(fā)者精準(zhǔn)掌控程序的內(nèi)存分布與執(zhí)行邏輯。文檔涵蓋從默認(rèn)section表的介紹,到多種放置手段的闡釋,以及實(shí)際配置示例的展示,為后續(xù)的開發(fā)工作奠定堅(jiān)實(shí)基礎(chǔ)。
    的頭像 發(fā)表于 04-30 16:38 ?191次閱讀
    基于 IAR Embedded Workbench 的自研 MCU 芯片軟件函數(shù)與<b class='flag-5'>變量</b>內(nèi)存布局優(yōu)化精控<b class='flag-5'>方法</b>

    Ansible Playbook中的變量使用技巧

    在inventory中定義的連接變量(比如ansible_ssh_user);優(yōu)先級(jí)第二。
    的頭像 發(fā)表于 04-15 10:26 ?210次閱讀

    在starvision2上移植FreeRTOS,objdump后發(fā)現(xiàn)static變量的地址是0,怎么解決?

    鏈接腳本還是什么的問題。objdump后發(fā)現(xiàn)static變量的地址是0。 沒太搞懂是為什么。下面是我的鏈接腳本 OUTPUT_ARCH("riscv"
    發(fā)表于 03-10 07:21

    EE-88:使用21xx編譯器在C中初始化變量

    電子發(fā)燒友網(wǎng)站提供《EE-88:使用21xx編譯器在C中初始化變量.pdf》資料免費(fèi)下載
    發(fā)表于 01-13 15:54 ?0次下載
    EE-88:使用21xx編譯器在C中初始化<b class='flag-5'>變量</b>

    圖紙模板中的文本變量

    “ ?文本變量和系統(tǒng)自帶的內(nèi)置變量,可以幫助工程師靈活、高效地配置標(biāo)題欄中的信息,而不用擔(dān)心模板中的文字對(duì)象被意外修改。 ? ” 文本變量的語(yǔ)法 文本變量以?${VARIABLENAM
    的頭像 發(fā)表于 11-13 18:21 ?547次閱讀
    圖紙模板中的文本<b class='flag-5'>變量</b>

    如何在文本字段中使用上標(biāo)、下標(biāo)及變量

    在KiCad的任何文本字段中,都可以通過以下的方式實(shí)現(xiàn)上標(biāo)、下標(biāo)、上劃線以及顯示變量及字段值的描述: 文本變量“文本變量”可以在 原理圖設(shè)置->工程->文本變量 中設(shè)置。下圖中設(shè)置了一
    的頭像 發(fā)表于 11-12 12:23 ?523次閱讀
    如何在文本字段中使用上標(biāo)、下標(biāo)及<b class='flag-5'>變量</b>

    變量機(jī)器人宣布完成Pre-A與Pre-A+輪融資

    近日,具身智能創(chuàng)業(yè)公司自變量機(jī)器人(X Square)宣布連續(xù)完成Pre-A與Pre-A+輪融資,總?cè)谫Y額達(dá)到億元級(jí)別。這一消息標(biāo)志著自變量機(jī)器人在具身智能領(lǐng)域的發(fā)展邁出了堅(jiān)實(shí)的一步。 本輪融資由德
    的頭像 發(fā)表于 11-06 11:20 ?1131次閱讀

    Linux環(huán)境變量配置方法

    Linux上環(huán)境變量配置分為設(shè)置永久變量和臨時(shí)變量兩種。環(huán)境變量設(shè)置方法同時(shí)要考慮環(huán)境Shell類型,不同類型的SHELL設(shè)置臨時(shí)
    的頭像 發(fā)表于 10-23 13:39 ?578次閱讀

    Xilinx設(shè)計(jì)工具怎么設(shè)置環(huán)境變量

    如果您不確定如何設(shè)置環(huán)境變量,嘗試"1" 或 "TRUE"。
    的頭像 發(fā)表于 10-22 13:32 ?538次閱讀

    通過工業(yè)智能網(wǎng)關(guān)實(shí)現(xiàn)中間變量表達(dá)式的快速配置

    組態(tài)平臺(tái)的主要功能之一就是監(jiān)控下位機(jī)數(shù)據(jù)變量的變化,并通過綁定的控件進(jìn)行展示。比如,很多時(shí)候,組態(tài)上的圖形控件可能只綁定了一個(gè)溫度變量,那么超過80度就會(huì)自動(dòng)告警。但這個(gè)控件也有可能綁定多個(gè)變量
    的頭像 發(fā)表于 10-08 17:10 ?568次閱讀
    通過工業(yè)智能網(wǎng)關(guān)實(shí)現(xiàn)中間<b class='flag-5'>變量</b>表達(dá)式的快速配置

    Keil中變量不被初始化方法

    有些時(shí)候在我們的應(yīng)用過程中要求變量有連續(xù)性,或者現(xiàn)場(chǎng)保留,例如Bootloader跳轉(zhuǎn),某種原因的復(fù)位過程中我們有些關(guān)鍵變量不能被初始化,在不同的編譯環(huán)境下有不同的設(shè)置,本文就這個(gè)操作做總結(jié),分別
    的頭像 發(fā)表于 08-30 11:47 ?1310次閱讀
    Keil中<b class='flag-5'>變量</b>不被初始化<b class='flag-5'>方法</b>

    技術(shù)干貨驛站 ▏深入理解C語(yǔ)言:基本數(shù)據(jù)類型和變量

    在C語(yǔ)言中,數(shù)據(jù)類型和變量是編程的基礎(chǔ),也是理解更復(fù)雜概念的關(guān)鍵。數(shù)據(jù)類型決定了變量的內(nèi)存分配、存儲(chǔ)范圍和操作方式,而變量則是存儲(chǔ)數(shù)據(jù)的容器。本篇文章將從基本數(shù)據(jù)類型和變量兩個(gè)方面,帶
    的頭像 發(fā)表于 07-26 17:53 ?2607次閱讀
    技術(shù)干貨驛站 ▏深入理解C語(yǔ)言:基本數(shù)據(jù)類型和<b class='flag-5'>變量</b>

    請(qǐng)問ENV設(shè)置環(huán)境變量怎么保存?

    我按照手冊(cè)設(shè)置好了環(huán)境變量 可是如果重啟一下env窗口 剛剛設(shè)置的又清掉了 請(qǐng)問下有沒有人知道怎么保存這個(gè)環(huán)境變量
    發(fā)表于 07-09 06:24

    鴻蒙開發(fā):訂閱系統(tǒng)環(huán)境變量的變化

    系統(tǒng)環(huán)境變量是指:在應(yīng)用程序運(yùn)行期間,終端設(shè)備的系統(tǒng)設(shè)置(例如系統(tǒng)的語(yǔ)言環(huán)境、屏幕方向等)發(fā)生變化。
    的頭像 發(fā)表于 06-11 21:56 ?550次閱讀
    鴻蒙開發(fā):訂閱系統(tǒng)環(huán)境<b class='flag-5'>變量</b>的變化
    主站蜘蛛池模板: 久久囯产精品777蜜桃传媒 | 精品久久免费视频 | 亚洲色欲啪啪久久WWW综合网 | 快播黄色电影 | 性生生活大片又黄又 | 中文字幕人成人乱码亚洲影视S | 亚洲免费一区二区 | 偷窥自拍性综合图区 | 伦理片 a在线线版韩国 | 国产激情文学 | 国产手机精品一区二区 | 久久黄视频 | 亚洲青青草 | 国产成人一区免费观看 | 精品一区二区三区高清免费观看 | 永久adc视频年龄确认 | 特级毛片全部免费播放免下载 | 最近中文字幕mv手机免费高清 | 老司机深夜福利ae 入口网站 | 日本又黄又裸一级大黄裸片 | 69精品人妻一区二区三区蜜桃 | 暖暖日本在线手机免费完整版 | 播色屋97超碰在人人 | 无敌在线视频观看免费 | 国产午夜精品理论片久久影视 | 日韩在线av免费视久久 | 日本一区不卡在线播放视频免费 | 拍床戏被肉高H纯肉H在水 | 99久久国产露脸国语对白 | 精品国产精品人妻久久无码五月天 | chinese耄耋70老太性 | 最近的2019中文字幕国语HD | 日本工口生肉全彩大全 | 好吊妞在线成人免费 | 99视频在线观看免费 | 99re6在线视频国产精品欧美 | 少妇被阴内射XXXB少妇BB | 97色伦图片97色伦图影院久久 | 在线免费观看a视频 | 99久久婷婷国产麻豆精品电影 | 自拍偷拍12p |

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品