国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

S7—400PLC系統(tǒng)時(shí)間設(shè)置方法及在煉鋼廠中的應(yīng)用

2017-03-06 21:20:11景志峰劉寧雁
電子技術(shù)與軟件工程 2016年23期
關(guān)鍵詞:數(shù)據(jù)類型

景志峰 劉寧雁

摘 要

主要介紹西門子S7-400PLC 硬件系統(tǒng)中,利用 Step 7編程軟件進(jìn)行對PLC硬件系統(tǒng)進(jìn)行時(shí)間設(shè)定的方法,以及用編程軟件讀取系統(tǒng)時(shí)間的方法。通過這種方法的運(yùn)用,成功地運(yùn)用于武鋼集團(tuán)昆鋼第三煉鋼廠能耗累計(jì)、產(chǎn)量統(tǒng)計(jì)等工作。

【關(guān)鍵詞】PLC Step7 數(shù)據(jù)類型 系統(tǒng)時(shí)間

西門子公司自控系統(tǒng)在武鋼集團(tuán)昆鋼第三煉鋼廠中應(yīng)用非常廣泛,例如4#轉(zhuǎn)爐、3#LF精煉爐等過程系統(tǒng)。西門子S7-400PLC系統(tǒng)具有可靠性高、抗干擾能力強(qiáng)、適用性強(qiáng)等特點(diǎn),而且軟件易學(xué)易用,接口容易,編程語言接近原來的繼電器電路,因此能完全滿足煉鋼廠的生產(chǎn)和發(fā)展需求。

煉鋼廠4#轉(zhuǎn)爐系統(tǒng),采用的是西門子400系統(tǒng)硬件。應(yīng)用西門子公司的Step7 V5.5 SP1 編程軟件,Wincc6.0 SP2的上位監(jiān)控軟件,整個(gè)系統(tǒng)由轉(zhuǎn)爐傾動系統(tǒng)、氧槍升降系統(tǒng)、散裝料下料體統(tǒng)、底吹系統(tǒng)等幾個(gè)主要環(huán)節(jié)組成。本文主要介紹在S7-400PLC系統(tǒng)中,如何對CPU的系統(tǒng)時(shí)間進(jìn)行設(shè)定,如何同步計(jì)算機(jī)時(shí)間,如何運(yùn)用系統(tǒng)功能塊完成系統(tǒng)時(shí)間的讀取。系統(tǒng)時(shí)間如何具體運(yùn)用于煉鋼廠4#轉(zhuǎn)爐能源消耗統(tǒng)計(jì)工作中。

1 PLC時(shí)間的設(shè)定

打開Step7 V5.5 SP1 編程軟件,讓編程軟件處于線監(jiān)控狀態(tài),然后就可以在Step7 V5.5 SP1軟件中進(jìn)行CPU內(nèi)部時(shí)鐘進(jìn)行的設(shè)定。其方法如下:

(1)首先打開Step7 V5.5 管理器,然后打開需要設(shè)定系統(tǒng)時(shí)間的項(xiàng)目。

(2)選中需要設(shè)定系統(tǒng)時(shí)間的CPU模塊。然后選擇Step7 V5.5 項(xiàng)目管理器工具欄中的PLC菜單。

(3) 在PLC菜單的下拉菜單中,選中的診斷/設(shè)置選項(xiàng),在彈出的選項(xiàng)中選擇設(shè)定時(shí)刻選項(xiàng),然后就會彈出設(shè)定時(shí)間的對話框。

(4) 在設(shè)定時(shí)間的對話框中,有兩個(gè)時(shí)間表示。其中PG/PC 時(shí)間選項(xiàng)表示的是計(jì)算機(jī)主機(jī)上的時(shí)間,也就是編程器或者上位機(jī)HMI中的時(shí)間。Modle time表示的是系統(tǒng)硬件內(nèi)的時(shí)間,這個(gè)時(shí)間一般會默認(rèn)為出廠設(shè)置時(shí)間。

(5)從設(shè)定時(shí)間的對話框中,我們看到,PG/PC 時(shí)間和Modle time時(shí)間一般情況下是不一致的。這個(gè)就需要把它們同步了,畢竟調(diào)整PLC硬件內(nèi)的時(shí)間相比于調(diào)整上位機(jī)的時(shí)間要困難的多。在設(shè)定時(shí)間的對話框中,勾選“Take from PG/PC”選項(xiàng),然后應(yīng)用,就能夠把計(jì)算機(jī)時(shí)鐘與硬件內(nèi)時(shí)鐘同步。到此,硬件內(nèi)時(shí)鐘設(shè)定完畢了,如果在程序運(yùn)用中讀取的時(shí)間不準(zhǔn)確,只需要調(diào)整計(jì)算機(jī)時(shí)間就可以了,而無需進(jìn)入到Step7 V5.5 編程軟件中,調(diào)整非常方便。另外,只要保證PLC不要掉電或者掉電的時(shí)候保證PLC的后備電池起作用,那么系統(tǒng)時(shí)間就能保持和計(jì)算機(jī)時(shí)間的一致。

2 PLC時(shí)間的讀取

PLC硬件系統(tǒng)時(shí)間的讀取方法主要是采用西門子編程軟件自帶的系統(tǒng)功能塊SFC1(readsystemclock)來實(shí)現(xiàn)的。SFC1系統(tǒng)功能塊的作用就是讀取當(dāng)前PLC的硬件系統(tǒng)時(shí)間,時(shí)間的數(shù)據(jù)類型----DATE_AND_TIME(簡稱DT)。DT時(shí)間這種數(shù)據(jù)類型是西門子PLC中比較特殊的一種數(shù)據(jù)類型,它長度為64bit,共包含8個(gè)字節(jié),分別是Byte0-Byte7,對應(yīng)年、月、日、時(shí)、分、秒、毫秒、星期, 但每個(gè)字節(jié)內(nèi)的數(shù)據(jù)類型是BCD格式的。

在程序中DT數(shù)據(jù)類型是無法直接使用的,只有根據(jù)DT數(shù)據(jù)類型的存儲情況把相應(yīng)的字節(jié)讀取出來,才可以在系統(tǒng)程序中使用。讀取系統(tǒng)時(shí)間程序如圖2所示。讀取系統(tǒng)時(shí)間也可以使用到Step7中的IEC標(biāo)準(zhǔn)功能比如FC6、FC7、FC8從DT格式中提取出來,但這些都需要在調(diào)用相關(guān)的功能塊,需要分配相關(guān)的存儲空間,對于不太熟悉這些功能塊的編程人員運(yùn)用起來相對麻煩很多。在此介紹的如圖2的提取時(shí)間方法既簡單又實(shí)用,還容易掌握,非常適合廣大編程人員。

圖1中,第一段程序的作用是運(yùn)用SFC1系統(tǒng)功能塊讀取當(dāng)前PLC中的系統(tǒng)時(shí)間,把讀取到的數(shù)據(jù)類型為DATE_AND_TIME(簡稱DT)的時(shí)間數(shù)據(jù),存儲到以DB1.DBX0.0地址開頭的8個(gè)字節(jié)的寄存器中。這8個(gè)字節(jié)寄存器中就存儲了DT數(shù)據(jù)中的年、月、日、時(shí)、分、秒、毫秒、星期等內(nèi)容。第二段程序就是運(yùn)用MOVE指令功能,抓取我們需要用到時(shí)、分、秒的時(shí)間數(shù)據(jù)。把存儲在以DB1.DBX0.0地址開頭的8個(gè)字節(jié)中的時(shí)間數(shù)據(jù),賦值給 DB10的相應(yīng)數(shù)據(jù)區(qū)。

采用MOVE功能所抓取出來的時(shí)間格式是用BCD碼表示的,因此還需要采用BCD_I功能把BCD格式轉(zhuǎn)換成可直接用于比較的整形數(shù)據(jù)格式才行。整形數(shù)據(jù)格式可以在程序中直接比較使用。相對于起始位置0,第3,4,5 字節(jié)分別為小時(shí)、分鐘和秒,這里就需要把DB1.DBB3、DB1.DBB4,DB1.DBB5,這3個(gè)寄存器內(nèi)的數(shù)據(jù)分配到數(shù)據(jù)塊DB10中的DB10.DBW4、DB10.DBW8,DB10.DBW12寄存器中。為什么不直接運(yùn)用DB1.DBX0.0開頭的寄存器內(nèi)容呢?因?yàn)?,我們讀取的系統(tǒng)時(shí)間變化率比較快,直接采用這個(gè)區(qū)域內(nèi)的內(nèi)容的話,容易引起誤差,而且會加大CPU的負(fù)擔(dān),因此需要把數(shù)據(jù)賦值到其它存儲區(qū)域。這里需要注意有一個(gè)字節(jié)寄存器分配到字寄存器中的問題,需要用到高低字節(jié)的概念。

3 應(yīng)用情況

S7-400PLC系統(tǒng)一般在上電后,系統(tǒng)時(shí)間默認(rèn)是從 1999年1月1日開始計(jì)時(shí),這個(gè)是西門子公司出廠設(shè)備的時(shí)候就確定的時(shí)間,有些因?yàn)楫a(chǎn)品批次的不同,這個(gè)系統(tǒng)默認(rèn)時(shí)間稍微有點(diǎn)不太一樣。但總的來說,這個(gè)時(shí)間對于我們編程或者運(yùn)用來說沒有多大的意義而且非常的不方便。比如,在系統(tǒng)出故障的情況下,我們需要調(diào)取CPU的診斷緩沖區(qū)來的確定故障發(fā)生時(shí)間,以便進(jìn)一步查明故障,但因?yàn)橄到y(tǒng)時(shí)間和當(dāng)?shù)貢r(shí)間對應(yīng)不起來,根本無法判斷什么時(shí)候出的故障,往往還需要根據(jù)默認(rèn)時(shí)間去推算出故障的時(shí)間,既費(fèi)時(shí)又不準(zhǔn)確。因此,通過本文介紹的方法,需要讓系統(tǒng)時(shí)間和計(jì)算機(jī)時(shí)間同步。

另外,在程序控制中如果需要用到系統(tǒng)時(shí)間來完成一些控制要求的時(shí)候,也可以通過本文介紹的方法來讀取PLC系統(tǒng)時(shí)間。把抓取出來的系統(tǒng)時(shí)間數(shù)據(jù),在程序中通過比較指令來設(shè)置時(shí)間觸發(fā)點(diǎn),以便于在設(shè)定好的具體時(shí)間點(diǎn)觸發(fā)相應(yīng)的程序控制從而完成任務(wù)。在武鋼集團(tuán)昆鋼第三煉鋼廠4#轉(zhuǎn)爐的能源消耗統(tǒng)計(jì)工作中,就成功的運(yùn)用了PLC系統(tǒng)時(shí)間。在設(shè)定的具體時(shí)間點(diǎn)來實(shí)現(xiàn)自動班累計(jì)和日累計(jì)能源消耗統(tǒng)計(jì)工作的。之前,4#轉(zhuǎn)爐的班累計(jì)和日累計(jì)能源消耗的統(tǒng)計(jì)工作是讓操作人員在規(guī)定的時(shí)間點(diǎn),在上位機(jī)或者操作站上用手動按鈕清零的方式來完成的。這種操作存在人的不穩(wěn)定因素,非常容易造成班累計(jì)和日累計(jì)能源消耗統(tǒng)計(jì)不準(zhǔn)確,人為誤差嚴(yán)重,而且實(shí)際運(yùn)行下來的結(jié)果也幾乎沒有準(zhǔn)確過。為此,采用讀取PLC系統(tǒng)時(shí)間的方法,然后運(yùn)用比較時(shí)令來設(shè)定準(zhǔn)確的時(shí)間點(diǎn),每當(dāng)系統(tǒng)時(shí)鐘為0:05:00時(shí),就觸發(fā)一個(gè)標(biāo)志位。運(yùn)用這個(gè)標(biāo)志位來自動完成日累計(jì)、班累計(jì)清零工作。這樣不但減少了操作人員的勞動量,也提高了能源消耗統(tǒng)計(jì)的準(zhǔn)確性,為4#轉(zhuǎn)爐的穩(wěn)定生產(chǎn)打下良好的基礎(chǔ)。

作者單位

1.昆明工業(yè)職業(yè)技術(shù)學(xué)院 云南省安寧市 650302

2.武昆集團(tuán)安寧公司煉鋼廠 云南省安寧市 650302

猜你喜歡
數(shù)據(jù)類型
詳談Java中的基本數(shù)據(jù)類型與引用數(shù)據(jù)類型
如何理解數(shù)據(jù)結(jié)構(gòu)中的抽象數(shù)據(jù)類型
基于自定義XML數(shù)據(jù)類型的研究
范疇數(shù)據(jù)類型上的子類型*
在.NET環(huán)境下進(jìn)行nashRemoting開發(fā)
基于PBBLOB實(shí)現(xiàn)的文件操作
四川省| 行唐县| 广饶县| 北辰区| 长沙市| 屯门区| 公安县| 肇州县| 固原市| 缙云县| 嘉禾县| 谢通门县| 沁源县| 慈溪市| 信丰县| 南阳市| 罗江县| 松潘县| 宁远县| 乌拉特中旗| 安福县| 东光县| 井研县| 定南县| 页游| 应城市| 苍南县| 邯郸市| 济阳县| 台中市| 衢州市| 濮阳市| 留坝县| 宝应县| 克东县| 南木林县| 济南市| 云南省| 大连市| 司法| 巴东县|