應(yīng)用領(lǐng)域 | 電子 |
---|
SIMATIC S7-300,CP 340通訊處理器 帶有RS422/485 接口,包含程序包CD
參考價 | 面議 |
更新時間:2022-08-11 14:21:55瀏覽次數(shù):321
聯(lián)系我們時請說明是化工儀器網(wǎng)上看到的信息,謝謝!
6ES7340-1CH02-0AE0
SIMATIC S7-300,CP 340 通信處理器 帶 RS-422/485 接口 包括項(xiàng)目組態(tài)包 在 CD 上 |
SIEMENS西門子
*,質(zhì)量保證,保修一年
專業(yè)銷售及維修西門子各類工控自動化配件;
:S7-200CN、S7-200SMART、S7-300、S7-400、 S7-1200、S7-1500、ET200、LOGO邏西門子可編程控制器輯控制模塊
西門子HMI人機(jī)界面:觸摸屏
西門子變頻器:MM420、MM430、MM440、G110、G120、6SE70
西門子工業(yè)以太網(wǎng):通訊網(wǎng)卡、通訊電纜、通訊接頭、總線連接器 工控機(jī)、交換機(jī)、自動化軟件等系型號齊全,快速報價,買我們的產(chǎn)品無憂所值,我們的產(chǎn)品都承諾質(zhì)保一年,讓您買的省心舒心,用的放心!
跟我一起玩200 smart PLC
關(guān)于指針及循環(huán)指令的應(yīng)用續(xù)3
昨天下午,看到“找答案”版區(qū)有一個網(wǎng)友提問,說200smart的指針如何使用問題,問題鏈接:
并帖出一程序,問題描述非常詳細(xì),給回答省卻許多不必要的誤解。我看了一下,感覺沒有太大的程序錯誤語法,僅僅只是指針地址偏移處出現(xiàn)了地址區(qū)的錯誤,就回了一個貼,居然還被認(rèn)可了。仔細(xì)想了想感覺不妥,似乎在那里出了一點(diǎn)狀況(大汗淋漓)。在回帖時寫了一句需要驗(yàn)證,又特將此程序剪切下來,回到家里仔細(xì)看起來問題還真不少。
網(wǎng)友的原程序: 經(jīng)過提示,網(wǎng)友已經(jīng)意識到錯誤的出處。
LD Clock_1s
EU //上升沿
LBL 1 //標(biāo)記
MOVD &VB200, VD100
MOVW *VD100, VW300
+D +2, VD200 //尋址加2
+I +1, VW400 //循環(huán)+1次
AW> VW400, 10 //大于等于10次
= M0.0
LDN M0.0 //LD M0.0
JMP 1 //標(biāo)記 //當(dāng)循環(huán)10次上 調(diào)至標(biāo)記1處,
重新進(jìn)行循環(huán),顯然無法清除循環(huán)次數(shù)。
MOVW +0, VW400 //重置循環(huán)計數(shù)器
MOVD +0, VD100 //改此處?? //重置尋址起始位置 //
網(wǎng)友提問的本意應(yīng)該是想通過指針的地址偏移,將地址自VW200開始的10個數(shù)據(jù)利用SM0.1標(biāo)志位的上升沿、指針偏移方式依次寫入到數(shù)據(jù)存儲地址VW300中。
上述程序的錯誤:
首先,取初始指針地址不能每一個秒脈沖都取一次。可以調(diào)用SM0.1取一次初始指針地址或者每10個循環(huán)到達(dá)后再調(diào)用(這個方法我經(jīng)常用的)。
其次,LDN M0.0,根據(jù)網(wǎng)友意圖是當(dāng)經(jīng)過10秒后,清除循環(huán)次數(shù)及指針返回。但是,如果在此處使用LDN,則意義剛好相反,變?yōu)闆]有到達(dá)10始終清零。
再次,調(diào)用跳轉(zhuǎn)指令JMP,顯然有駁于原編程思路,當(dāng)循環(huán)計數(shù)10到達(dá)后,調(diào)用JMP上跳至標(biāo)記“1”處,反而無法將循環(huán)次數(shù)與指針返回。索性刪除這個跳轉(zhuǎn),因?yàn)闆]有必要,原因是循環(huán)10次到達(dá)后,可以通過雙整數(shù)指令的減法將指針返回了初始指針地址。
另外,我在初次回復(fù)中也強(qiáng)調(diào)過關(guān)于循環(huán)次數(shù)比較指令的應(yīng)用。如果是采用AW>10時,指針返回需要上移22個字;如果是采用AW = 10時,指針返回上移20個字的地址,實(shí)際上僅僅是循環(huán)10次與11次的區(qū)別,如果采用的是AW = 10,后應(yīng)該數(shù)據(jù)VW218只能顯示一個掃描周期時間。反之,如果采用的是AW > 10,則有1秒的時間顯示,這個可以根據(jù)實(shí)際需要選擇。
于是,修改了一下網(wǎng)友的程序,將程序下載到cpu驗(yàn)證,圖示:
修改后的程序如下所示:
啟用“狀態(tài)圖表”監(jiān)控程序運(yùn)行情況:
看似一個簡單的指針調(diào)用,實(shí)際上里面的內(nèi)涵還是蠻深奧的,曾經(jīng)有一位*大俠的那一句話,我一直記在心里“書讀的越多,才知道這個書會變的越厚”。希望那位網(wǎng)友能夠看到此貼后改正程序的不合理處,特將此貼通過整理發(fā)上來,讓大家來看看,加深對西門子200(200smart)指針應(yīng)用的理解。
6ES7340-1CH02-0AE0