色婷婷AV无码久久精品,久久天天躁狠狠躁夜夜97,羞羞麻豆国产精品1区2区3区,啪影院免费线观看视频,思思久久er99精品亚洲

常州機(jī)器視覺培訓(xùn)

常州上位機(jī)軟件開發(fā)

常州工業(yè)機(jī)器人編程設(shè)計(jì)培訓(xùn)

常州PLC培訓(xùn)

常州PLC

常州PLC編程培訓(xùn)

常州電工培訓(xùn)

常州和訊plc培訓(xùn)中心歡迎您!
當(dāng)前位置:網(wǎng)站首頁(yè) > 技術(shù)資料 技術(shù)資料
用S7-200對(duì)較難命題編程的幾個(gè)實(shí)例與解析
日期:2013-3-27 15:02:34人氣:  標(biāo)簽:常州PLC培訓(xùn) 常州PLC編程 常州電工培訓(xùn)

網(wǎng)上有很多求助PLC編程的帖子,很有探討價(jià)值,我經(jīng)常幫助他們?nèi)ゾ幊,這不僅是幫助他們解決問題,而且對(duì)己也是一種鍛煉與提高,F(xiàn)選出幾個(gè)求助帖,都是具有一定難度的編程命題,它可以使我們?cè)鰪?qiáng)思維,提高編程的技巧和能力,F(xiàn)將這幾個(gè)帖子并同我為之編寫的程序一起貼出,愿與大家共享與探討,如有 不對(duì)之處,請(qǐng)給于指正,本人深表感謝。

一帖:我想做一個(gè)小程序,每半個(gè)小時(shí)循環(huán)一次,每次循環(huán)內(nèi)部又要執(zhí)行20次幾乎相同的操作(第一個(gè)90秒之內(nèi)Q0.0 輸出5秒,Q0.0輸出延時(shí)2Q0.1 輸出0.5秒。第二個(gè)90秒,輸出點(diǎn)變?yōu)?span lang="EN-US">Q0.2Q0.3,以此類推)。我想用一個(gè)子程序,不想書寫20次子程序調(diào)用,只書寫一次子程序調(diào)用,利用循環(huán) 可以實(shí)現(xiàn)不,任何實(shí)現(xiàn)?請(qǐng)高手給我指點(diǎn)指點(diǎn)。期待您的指點(diǎn)。

我的思路:按著樓主要求用S7-200編寫了一個(gè)子程序(SBR_1),該子程序運(yùn)行時(shí)間為半小時(shí),在此時(shí)間內(nèi)重復(fù)執(zhí)行20次類似的控制動(dòng)作,不同點(diǎn)就是輸出口依次下移:第一次輸出口為Q0.0Q0.1,第二次輸出為Q0.2、 Q0.3,第三次輸出為Q0.4、Q0.5……。在主程序中,設(shè)定I0.1為啟動(dòng)命令按鈕,設(shè)I0.2為停止運(yùn)行按鈕。只要按一下I0.1啟動(dòng),程序?qū)⒆?動(dòng)執(zhí)行每半小時(shí)調(diào)一次SBR_1子程序,重復(fù)調(diào)用,直到按下I0.2停止按鈕,程序才終止運(yùn)行。

該子程序共占據(jù)輸出口40個(gè),整整是5個(gè)輸出通道( QB0、QB1…QB5)如按正常編程,這20個(gè)類似動(dòng)作由于輸出口不同,需一一調(diào)用,這樣編出的程序太長(zhǎng)。經(jīng)過反復(fù)思考,我是這樣編程的:

1、 我利用指針指令,首址指向QB0,每執(zhí)行完一個(gè)通道動(dòng)作后,令指針地址加1,這樣循環(huán)5次,其輸出即可由QB0依次移到QB5。

2、 對(duì) 一個(gè)輸出通道內(nèi)的傳送地址,是采用、指令進(jìn)行的,比如第一次輸出,先將QB00,將MB2=1,MB3=2。當(dāng)運(yùn)行80秒時(shí)將QB0 MB2相或運(yùn)算,其結(jié)果:Q0.0=1,延時(shí)82秒將QB0MB3相或運(yùn)算,其結(jié)果:Q0.0=1,Q0.1=1。當(dāng)運(yùn)行85秒時(shí)將MB2求反送入 MB4,此時(shí)MB4=16#FE,再用QB0MB4相與運(yùn)算,其結(jié)果:Q0.0=0,Q0.1=1,當(dāng)運(yùn)行87秒時(shí)將MB3求反送入MB5,此時(shí) MB5=16#FB,再用QB0MB5相與運(yùn)算,其結(jié)果:Q0.0=0,Q0.1=0,從而達(dá)到在第一個(gè)90秒內(nèi)使Q0.0輸出為1且保持5秒后復(fù)位, 使Q0.1滯后Q0.1兩秒輸出為1且保持5秒復(fù)位的控制要求。第二次動(dòng)作時(shí),先將MW2左移2位,即使MB2=04,MB3=8再重復(fù)上述動(dòng)作,其結(jié) 果:Q0.2=1,延時(shí)5秒復(fù)位,Q0.3滯后二秒輸出為1,保持5秒復(fù)位,從而達(dá)到第二次動(dòng)作時(shí)其輸出下移到Q0.2Q0.3。具體動(dòng)作控制,請(qǐng)見下 面梯形圖:

主程序:

子程序:SBR_1

該程序經(jīng)上機(jī)運(yùn)行(為縮短運(yùn)行時(shí)間按圖中注解的試驗(yàn)時(shí)改動(dòng)數(shù)據(jù)運(yùn)行),動(dòng)作正確,符合命題要求。

二 帖:5個(gè)執(zhí)行動(dòng)作我轉(zhuǎn)換為操作數(shù),姑且定為D10、D20、D30D40、D50,它們每一個(gè)都可能寫入從0 5的數(shù)值。最后執(zhí)行是從15 依次執(zhí)行輸出,是0的不執(zhí)行跳過,不知如何編,請(qǐng)高手指點(diǎn),謝謝了!“……如這一次是按1/2/3/4/5依次動(dòng)作,下一次也許設(shè)置為按5/3/2 /動(dòng)作,再下一次就1/5/2/3/。。。。。、兩次執(zhí)行的間隔時(shí)間可設(shè)定,暫定3秒看設(shè)備運(yùn)轉(zhuǎn)情況而定

我的編程構(gòu)思:

一、PLC的硬件設(shè)置及有關(guān)事項(xiàng)說明:選用S7-200PLC編程。

1、其輸入口:

I1.0 為啟動(dòng)按鈕,

I1.1 為停止動(dòng)作按鈕。

*** 以下的I0.0 ~ I0.5 六個(gè)輸入點(diǎn)是為手動(dòng)設(shè)置參數(shù)的按鈕地址。是為在沒有上位機(jī)或觸摸屏與PLC通訊的條件下,可用這6個(gè)按鈕,對(duì)5路執(zhí)行機(jī)構(gòu)的動(dòng)作順序號(hào)及動(dòng)作間隔時(shí)間進(jìn)行手動(dòng)設(shè)置。其各輸入點(diǎn)定義如下:

I0.0 為設(shè)置第1路執(zhí)行機(jī)構(gòu)執(zhí)行動(dòng)作的順序號(hào)按鈕

I0.1 為設(shè)置第2 ~ 5路執(zhí)行機(jī)構(gòu)執(zhí)行動(dòng)作的順序號(hào)按鈕,設(shè)置值:0~5

I0.2 為設(shè)置第2 ~ 5路執(zhí)行機(jī)構(gòu)執(zhí)行動(dòng)作的順序號(hào)左移8位按鈕

I0.3 為復(fù)位按鈕,即將第1~ 5 路機(jī)構(gòu)的順序號(hào)清0,其作用是為更改5個(gè)機(jī)構(gòu)動(dòng)作的順序號(hào)值做清0準(zhǔn)備。

I0.4 為相鄰二個(gè)機(jī)構(gòu)動(dòng)作時(shí)間間隔值的個(gè)位數(shù)設(shè)置按鈕,設(shè)置值:0~F16進(jìn)制數(shù))

I0.5 將時(shí)間設(shè)定值左移4位按鈕

 

2、其輸出口:

Q0.0 為第1路執(zhí)行機(jī)構(gòu)輸出

Q0.1 為第2路執(zhí)行機(jī)構(gòu)輸出

Q0.2 為第3路執(zhí)行機(jī)構(gòu)輸出

Q0.3 為第4路執(zhí)行機(jī)構(gòu)輸出

Q0.4 為第5路執(zhí)行機(jī)構(gòu)輸出

3、VB10、VB11、VB12、VB13、VB14分別為第1~5執(zhí)行機(jī)構(gòu)動(dòng)作順序號(hào)設(shè)置區(qū)

為節(jié)省設(shè)置按鈕,將VB11、VB12、VB13、VB14合并為一個(gè)雙字存儲(chǔ)器VD11。

4 VW30 為相鄰二個(gè)機(jī)構(gòu)動(dòng)作時(shí)間間隔設(shè)置區(qū)?捎冒粹o對(duì)其設(shè)置時(shí)間。VW30也是第一個(gè)執(zhí)行機(jī)構(gòu)的動(dòng)作時(shí)間,2倍的VW30(即VW32)是第二個(gè)執(zhí)行機(jī)構(gòu)的動(dòng)作 時(shí)間,3倍的VW30(即VW34)是第三個(gè)執(zhí)行機(jī)構(gòu)的動(dòng)作時(shí)間,4倍的VW30(即VW36)是第四個(gè)執(zhí)行機(jī)構(gòu)的動(dòng)作時(shí)間,5倍的VW30(即 VW38)是第五個(gè)執(zhí)行機(jī)構(gòu)的動(dòng)作時(shí)間。

5、從按下啟動(dòng)命令開始,先將計(jì)時(shí)器(MW2)清0,再用秒脈沖對(duì)MW2進(jìn)行加1計(jì)數(shù),當(dāng) MW2=VW30時(shí), 第一個(gè)執(zhí)行機(jī)構(gòu)動(dòng)作,當(dāng)MW2=VW32時(shí), 第二個(gè)執(zhí)行機(jī)構(gòu)動(dòng)作……直到MW2=VW38時(shí), 第五個(gè)執(zhí)行機(jī)構(gòu)動(dòng)作為止。那路執(zhí)行機(jī)構(gòu)是第一個(gè)、第二個(gè)動(dòng)作取決它設(shè)定的順序號(hào)。

6、設(shè)MB0為第幾個(gè)機(jī)構(gòu)動(dòng)作標(biāo)記區(qū),按啟動(dòng)按鈕時(shí),將 其清0,每當(dāng)計(jì)時(shí)VW30,MB01,故MB0等于幾就應(yīng)為第幾個(gè)執(zhí)行機(jī)構(gòu)執(zhí)行動(dòng)作,(如:第一次機(jī)構(gòu)動(dòng)作時(shí),MB0=1……第五次機(jī)構(gòu)動(dòng)作 時(shí),MB0=5)。在執(zhí)行動(dòng)作前,先用MB0VB10~VB14比較,那路執(zhí)行機(jī)構(gòu)的順序號(hào)=MB0,那路執(zhí)行機(jī)構(gòu)就動(dòng)作,這樣就可確保動(dòng)作執(zhí)行的的正 確性。

 

詳細(xì)動(dòng)作控制請(qǐng)見以下梯形圖:
二、S7-200編程的梯形圖:

該程序是經(jīng)過上機(jī)運(yùn)行及調(diào)試,證明程序是正確的、好用的。

VB10VD11VW30可由上位機(jī)或觸摸屏設(shè)置,如沒有上位機(jī)或觸摸屏,可用幾個(gè)按鈕與PLC輸入口I0.0~I0.5相連,用按鈕可對(duì)其參數(shù)進(jìn)行設(shè)置,以下就是用按鈕直接在PLC上設(shè)定參數(shù)的程序。這種用PLC輸入口設(shè)置內(nèi)部參數(shù)的方法對(duì)初學(xué)者也是有幫助的。

三帖、這也是網(wǎng)友的求助帖,經(jīng)整理為:

輸入點(diǎn)4個(gè):I0.0、I0.1I0.2、I0.3;  輸出點(diǎn)2個(gè):Q0.0、Q0.1。

要求:

    14個(gè)輸入點(diǎn)分別有脈沖信號(hào)輸入,其四路連續(xù)累計(jì)9個(gè)輸入脈沖信號(hào)的時(shí)間間隔 < 1 分鐘時(shí)。其輸出Q0.0=1,否則Q0.0=0。

    2、4個(gè)輸入點(diǎn)分別有脈沖信號(hào)輸入,其四路連續(xù)累計(jì)15個(gè)輸入脈沖信號(hào)的時(shí)間間隔 < 1 分鐘時(shí)。其輸出Q0.1=1,否則Q0.1=0。

    編程構(gòu)思:本程序采用二個(gè)指針指令,一個(gè)首址為VB100,指針為VD80;另一個(gè)首址

VB200。指針為VD84。初始化將VB0、VB1VW20.。用I0.0~I0.3四個(gè)輸入信號(hào)的

后沿并聯(lián)觸發(fā)M0.0,這樣那路最先出現(xiàn)又最先結(jié)束,將M0.01,M0.0=1開始秒脈沖對(duì)

VW21計(jì)時(shí),計(jì)時(shí)中那路出現(xiàn)輸入信號(hào),其前沿VW2計(jì)時(shí)值送入VD80VD84指針?biāo)?/span>

指的地址中。且判斷輸入脈沖數(shù)(VB0)<=9,如<=9,VB01,指針VD802。同時(shí)判斷

VB1,如VB1<=15,則VB11,指針VD842。且使M0.1=1。

    M0.1=1掃描周期內(nèi),先判斷VB0=9?如=9,再判斷VB3<=60,<=60 則使Q0.0=1

否則使Q0.0=0。同時(shí)又判斷VB1=15?如=15,再判斷VB3<=60,<=60 則使Q0.1=1

否則使Q0.0=0。

    M0.1=1掃描周期內(nèi),如果VB0=10時(shí),用VW2-VW100=MW4,判斷MW4<60  

使Q0.0=1,否則使Q0.0=0,再將VW102為首址的連續(xù)9個(gè)字的內(nèi)容前移到以VW100為首

址的連續(xù)9個(gè)字里。同樣如果VB1=16時(shí),用VW2-VW200=MW6,判斷MW6<60   則使

Q0.1=1,否則使Q0.1=0,再將VW202為首址的連續(xù)9個(gè)字的內(nèi)容前移到以VW200為首址的

連續(xù)9個(gè)字里。詳見梯形圖:

 

 

   四帖:網(wǎng)友求助:“S7-300編程實(shí)現(xiàn)一個(gè)輸入四個(gè)輸出順序輸出:就要希望實(shí)現(xiàn)第一次按i4.1,輸出m1,第二次輸出m2,第三次輸出m3,第四次輸出m4.如此循環(huán)。一次輸出一個(gè)

    回復(fù):我用s7-200編了你所要的梯形圖,上機(jī)運(yùn)行正確無(wú)誤,并將此程序翻譯為S7-300,供你參考.。

                  s7-200梯形圖:

                    S7-300的梯形圖:

 

      對(duì)程序的解析:這二個(gè)程序的編程特點(diǎn)就是巧妙地運(yùn)用循環(huán)左移、與、或等編程指令編寫的。使程序短小精悍。以S7-200程序?yàn)槔寒?dāng)?shù)谝淮伟粹o時(shí)由于M1.0=0,故不執(zhí)行第二網(wǎng)絡(luò)指令,只能執(zhí)行第三網(wǎng)絡(luò)指令,即先將MB0置數(shù)為0001_0001,再將M1.01M1.0=1進(jìn)行與、或運(yùn)算,將MB0的低4位數(shù)0001送入QB0的低4位,使Q0.0=1,而QB0的高4位不受影響(即仍保持原狀態(tài))。當(dāng)?shù)诙伟粹o,由于M1.0=1,程序執(zhí)行第二網(wǎng)絡(luò)指令而不再執(zhí)行第三網(wǎng)絡(luò)指令,即使MB0循環(huán)左移一位,即0010——0010,再進(jìn)行與、或運(yùn)算,將MB0的低4位數(shù)0010送入QB0的低4位,使Q0.1=1,而QB0的高4位仍不受影響……,故可達(dá)到每按一次按鈕,輸出口Q0.0~Q0.3 只有一位輸出,而且是依次循環(huán)輸出的控制目的。

    S7-300沒有字節(jié)循環(huán)指令及字節(jié)與或指令,采用雙字循環(huán)移位、字與、字或等指令完成的,故編程顯得不易被看懂,但二者思路是一樣的,大家按我上述說明去分析一定會(huì)看懂的。  

 

本文網(wǎng)址:

相關(guān)信息:
版權(quán)所有 CopyRight 2006-2017 江蘇和訊自動(dòng)化設(shè)備有限公司 常州自動(dòng)化培訓(xùn)中心 電話:0519-85602926 地址:常州市新北區(qū)府琛商務(wù)廣場(chǎng)2號(hào)樓1409室
蘇ICP備14016686號(hào)-2 技術(shù)支持:常州山水網(wǎng)絡(luò)
本站關(guān)鍵詞:常州PLC培訓(xùn) 常州PLC編程培訓(xùn) 常州PLC編程 常州PLC培訓(xùn)班 網(wǎng)站地圖 網(wǎng)站標(biāo)簽
在線與我們?nèi)〉寐?lián)系
色婷婷AV无码久久精品,久久天天躁狠狠躁夜夜97,羞羞麻豆国产精品1区2区3区,啪影院免费线观看视频,思思久久er99精品亚洲