lidongdong
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 85 個(gè)
工控威望: 1648 點(diǎn)
下載積分: 3693 分
在線時(shí)間: 91(小時(shí))
注冊(cè)時(shí)間: 2012-05-24
最后登錄: 2013-08-03
查看lidongdong的 主題 / 回貼
樓主  發(fā)表于: 2012-07-14 10:13
PLC內(nèi)部掉電保持寄存器的巧妙利用

我們?cè)谠O(shè)計(jì)小型的PLC控制系統(tǒng)時(shí),常常會(huì)需要在外部改變PLC內(nèi)部的數(shù)據(jù),譬如Counter, Timer或者Data的值,以適應(yīng)生產(chǎn)過程的需要。而且要求系統(tǒng)關(guān)機(jī)以后,這些數(shù)據(jù)還能夠保存在PLC內(nèi)部,當(dāng)下次開機(jī)后,這些數(shù)據(jù)可以被調(diào)出繼續(xù)使用。
現(xiàn)在許多小型的PLC都或多或少地提供了掉電保持寄存器,以便在PLC斷電的時(shí)候,保存用戶想要保存的數(shù)據(jù)。但大多數(shù)時(shí)候,PLC制造廠商為了節(jié)約成本,不可能提供足夠數(shù)量的掉電保持寄存器供系統(tǒng)設(shè)計(jì)人員使用,所以當(dāng)被調(diào)整的數(shù)據(jù)項(xiàng)目超過PLC內(nèi)部的掉電保持寄存器的數(shù)目的時(shí)候,我們不得不減少被調(diào)整的數(shù)據(jù)項(xiàng)目(固定或不用)或者購買具有更多掉電保持寄存器數(shù)目的PLC,這樣的話,就使得生產(chǎn)機(jī)械缺乏靈活性和適應(yīng)性,從而降低產(chǎn)品檔次或增加成本。
本人在設(shè)計(jì)服裝廠用熱風(fēng)縫合機(jī)時(shí)就遇到了這種情況,下面就介紹解決這種問題的一種方法,以便大家設(shè)計(jì)時(shí)參考。
所用PLC:松下FP0-C16T,被調(diào)整數(shù)據(jù):16個(gè),PLC內(nèi)部掉電保持寄存器數(shù)目:10個(gè)『8個(gè)數(shù)據(jù)寄存器(DT1652-DT1659:8個(gè)各16Bit)和2個(gè)字的內(nèi)部繼電器(WR61、WR62:2個(gè)各16Bit)』。如果按常規(guī)的一個(gè)被調(diào)整數(shù)據(jù)占用一個(gè)數(shù)據(jù)寄存器的方法,這顯然不能調(diào)整16個(gè)被調(diào)整數(shù)據(jù),而只能調(diào)整10個(gè)被調(diào)整數(shù)據(jù)。為此,本人專門分析了16個(gè)被調(diào)整數(shù)據(jù)的數(shù)據(jù)調(diào)整范圍,發(fā)現(xiàn)多數(shù)數(shù)據(jù)的調(diào)整范圍只需要從0~255,即0~28-1;而掉電保持?jǐn)?shù)據(jù)寄存器DT1652等內(nèi)部的數(shù)據(jù)大小為216-1,即256×256-1;所以我們可以將一個(gè)被調(diào)整的數(shù)據(jù)只用到數(shù)據(jù)寄存器的低8位,那么該數(shù)據(jù)寄存器的高8位就可以來存儲(chǔ)另一個(gè)被調(diào)整數(shù)據(jù)。
下面就列出該部分的程序:
1、開機(jī)時(shí),分開掉電保持寄存器中高8位和低8位至另外兩個(gè)數(shù)據(jù)寄存器:
其中,R9013是松下FP0系列PLC內(nèi)部所規(guī)定的、在PLC從program狀態(tài)到run狀態(tài)時(shí)只動(dòng)作一個(gè)PLC掃描周期的脈沖繼電器。
指令F65是一個(gè)字與指令,它的作用就是將掉電保持?jǐn)?shù)據(jù)寄存器DT1655內(nèi)的數(shù)據(jù)與十六進(jìn)制數(shù)FF進(jìn)行字與,然后將結(jié)果送到一般數(shù)據(jù)寄存器DT0,這樣就可以分離出掉電保持?jǐn)?shù)據(jù)寄存器DT1655內(nèi)數(shù)據(jù)的低8位;
同樣第二行的字與指令可以分離出掉電保持?jǐn)?shù)據(jù)寄存器DT1655內(nèi)數(shù)據(jù)的高8位。
指令F120是一個(gè)不帶進(jìn)位右移指令,即:對(duì)數(shù)據(jù)字進(jìn)行右移時(shí),對(duì)高位進(jìn)行補(bǔ)零。K8表示右移8位。
指令F0是一個(gè)字傳送指令,就是將一般數(shù)據(jù)寄存器DT10內(nèi)的數(shù)據(jù)傳送到一般數(shù)據(jù)寄存器DT1。
上述程序段的目的就是在開機(jī)時(shí)將掉電保持?jǐn)?shù)據(jù)寄存器DT1655內(nèi)的數(shù)據(jù)分成兩個(gè)被調(diào)整數(shù)據(jù)。

2、開機(jī)之后,將另外兩個(gè)數(shù)據(jù)寄存器的數(shù)據(jù)合并至掉電保持寄存器的高8位和低8位:
   R9014是松下FP0系列PLC內(nèi)部所規(guī)定的、在PLC從program狀態(tài)到run狀態(tài)時(shí)、第二個(gè)PLC掃描周期開始動(dòng)作的脈沖繼電器。
指令F121是一個(gè)不帶進(jìn)位左移指令,K8即左移8位。
   指令F66是一個(gè)字或指令,將一般數(shù)據(jù)寄存器DT20內(nèi)的數(shù)據(jù)與一般數(shù)據(jù)寄存器DT0內(nèi)的數(shù)據(jù)進(jìn)行字或,結(jié)果送掉電保持寄存器DT1655。
由上可以看出,在PLC運(yùn)行的時(shí)候,可以任意改變一般數(shù)據(jù)寄存器DT0和DT1中的數(shù)據(jù),而這些改變也同時(shí)送到了掉電保持寄存器DT1655,這樣,當(dāng)PLC掉電時(shí),所被調(diào)整的數(shù)據(jù)也就被保存了。
通過同樣的方法,我們可以視被調(diào)整數(shù)據(jù)的大小,靈活的使用掉電保持寄存器的每一個(gè)Bit位,從而使我們?cè)诓辉黾映杀镜那闆r下,提高小型PLC控制系統(tǒng)的性能。

SS
ytmfeeqg
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 55 個(gè)
工控威望: 204 點(diǎn)
下載積分: 593 分
在線時(shí)間: 41(小時(shí))
注冊(cè)時(shí)間: 2007-04-24
最后登錄: 2015-11-06
查看ytmfeeqg的 主題 / 回貼
1樓  發(fā)表于: 2012-07-14 12:56
不錯(cuò),將16位掉電保持繼存器通過邏輯指令分成2個(gè)。
中國工控
學(xué)習(xí)
級(jí)別: VIP會(huì)員
精華主題: 0
發(fā)帖數(shù)量: 482 個(gè)
工控威望: 662 點(diǎn)
下載積分: 2147 分
在線時(shí)間: 68(小時(shí))
注冊(cè)時(shí)間: 2007-07-16
最后登錄: 2023-04-05
查看中國工控的 主題 / 回貼
2樓  發(fā)表于: 2012-07-14 22:02
我感覺琢磨這個(gè)有啥意義呢  有幾次編程能把里面的寄存器用干凈了呀 唉,,,, 有這功夫多琢磨琢磨如何簡化程序結(jié)構(gòu)吧
842386283
堅(jiān)持,會(huì)有意想不到的收獲
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 215 個(gè)
工控威望: 354 點(diǎn)
下載積分: 3353 分
在線時(shí)間: 172(小時(shí))
注冊(cè)時(shí)間: 2011-07-17
最后登錄: 2014-10-09
查看842386283的 主題 / 回貼
3樓  發(fā)表于: 2012-07-15 13:18
我同意2樓的,
為興趣而學(xué)習(xí)
西楚大霸
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 79 個(gè)
工控威望: 252 點(diǎn)
下載積分: 409 分
在線時(shí)間: 15(小時(shí))
注冊(cè)時(shí)間: 2009-03-11
最后登錄: 2023-08-14
查看西楚大霸的 主題 / 回貼
4樓  發(fā)表于: 2012-07-15 15:42
富余量大大的
hnwqf
級(jí)別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 317 個(gè)
工控威望: 2436 點(diǎn)
下載積分: 20090 分
在線時(shí)間: 167(小時(shí))
注冊(cè)時(shí)間: 2010-01-17
最后登錄: 2024-06-15
查看hnwqf的 主題 / 回貼
5樓  發(fā)表于: 2012-07-15 15:47
高。。。實(shí)在是高。。。。。。
qq119829
進(jìn)口工控電路板維修,QQ 87404871
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 72 個(gè)
工控威望: 251 點(diǎn)
下載積分: 856 分
在線時(shí)間: 21(小時(shí))
注冊(cè)時(shí)間: 2012-07-16
最后登錄: 2016-07-01
查看qq119829的 主題 / 回貼
6樓  發(fā)表于: 2012-07-16 10:49
用好了 是有好處額
辦理400電話彰★顯企業(yè)實(shí)力QQ979300724
huangyuehua
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 152 個(gè)
工控威望: 340 點(diǎn)
下載積分: 456 分
在線時(shí)間: 79(小時(shí))
注冊(cè)時(shí)間: 2007-06-10
最后登錄: 2020-02-28
查看huangyuehua的 主題 / 回貼
7樓  發(fā)表于: 2012-07-16 11:22
不錯(cuò),挺好的
secgo
玩多了就更不會(huì)玩了~
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 1352 個(gè)
工控威望: 1606 點(diǎn)
下載積分: 67986 分
在線時(shí)間: 218(小時(shí))
注冊(cè)時(shí)間: 2009-03-06
最后登錄: 2024-05-11
查看secgo的 主題 / 回貼
8樓  發(fā)表于: 2012-07-26 18:21
高招啊~~~~~~~~~