當(dāng)前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]1 引言  目前,plc(可編程邏輯控制器)已經(jīng)廣泛應(yīng)用于鋼鐵、石油、化工、電力、建材、機(jī)械制造、汽車、輕紡、交通運(yùn)輸、環(huán)保及文化娛樂等各個(gè)行業(yè)。它具有高可靠性、抗干擾能力強(qiáng)、功能強(qiáng)大、靈活、易學(xué)易用、體積小

1 引言

  目前,plc(可編程邏輯控制器)已經(jīng)廣泛應(yīng)用于鋼鐵、石油、化工、電力、建材、機(jī)械制造、汽車、輕紡、交通運(yùn)輸、環(huán)保及文化娛樂等各個(gè)行業(yè)。它具有高可靠性、抗干擾能力強(qiáng)、功能強(qiáng)大、靈活、易學(xué)易用、體積小、重量輕、價(jià)格便宜的特點(diǎn),在流量計(jì)量方面也有著廣泛的用途,在用于流量累積時(shí)又有其編程的獨(dú)特之處。下面進(jìn)行詳細(xì)的分析和論述,包括在西門子s7-200 cpu上編程的例子。

  2 使用plc顯示流量和計(jì)算累積量

  流量計(jì)輸出的信號一般是脈沖信號或4-20ma電流信號,這兩種信號輸出的都是瞬時(shí)流量(也有用繼電器輸出累積量信號,原理一樣,不再贅述),我們的目的是在plc中計(jì)算和顯示瞬時(shí)流量值和計(jì)算累積量值,當(dāng)輸入信號是脈沖信號時(shí),在計(jì)算瞬時(shí)流量的時(shí)候,必須按照嚴(yán)格的時(shí)間間隔計(jì)算才能保證瞬時(shí)流量的準(zhǔn)確性。因此,計(jì)算瞬時(shí)流量的時(shí)候必須用定時(shí)中斷來進(jìn)行,而且,在plc系統(tǒng)中只能運(yùn)行這一個(gè)中斷程序,不允許再產(chǎn)生其它中斷(即使是低優(yōu)先級的中斷也不允許運(yùn)行),以防止干擾定時(shí)中斷的時(shí)間間隔的準(zhǔn)確性,計(jì)算瞬時(shí)流量就是將這個(gè)時(shí)間段的累計(jì)脈沖個(gè)數(shù)換算成累計(jì)流量,再除以時(shí)間就是瞬時(shí)流量。對于4-20ma輸入只需按照其對應(yīng)的量程進(jìn)行換算就可以直接得到瞬時(shí)流量,而累積流量就是將每個(gè)時(shí)間段內(nèi)的累積流量累加起來,在實(shí)際使用plc編程的過程中必須注意以下幾個(gè)問題:

  (1) 輸入脈沖頻率范圍是否超出plc的接收范圍;

  (2) plc高速計(jì)數(shù)器在達(dá)到最大計(jì)數(shù)值時(shí)如何保證計(jì)算正確;

  (3) 如何保證定時(shí)中斷不受干擾;

  (4) 如何避免計(jì)算累積量的誤差;

  (5) 累積量的最大累積位數(shù);

  (6) 如何復(fù)位累積量。

  下面就最關(guān)鍵的2、4、6問題進(jìn)行詳細(xì)的敘述,以西門子s7-200 cpu224為例,s7-200的cpu224具有6個(gè)單相最大30khz的高速計(jì)數(shù)器,但plc內(nèi)部沒有提供相應(yīng)的算法來計(jì)算頻率,需要使用者自行編程計(jì)算,這就需要在plc高速計(jì)數(shù)器在達(dá)到最大計(jì)數(shù)值時(shí)要保證計(jì)算的正確性。實(shí)際編程時(shí),對高速計(jì)數(shù)器初始化以后就使之連續(xù)計(jì)數(shù),不再對其進(jìn)行任何干預(yù),其高速計(jì)數(shù)器的初始化程序如圖1所示(此段程序應(yīng)放到plc第一個(gè)掃描周期執(zhí)行的程序中執(zhí)行)。

  


  圖1 高速計(jì)數(shù)器的初始化程序

  對于高速計(jì)數(shù)器是否達(dá)到最大計(jì)數(shù)值時(shí)需要判斷,s7-200cpu的高速計(jì)數(shù)器是可以周而復(fù)始地進(jìn)行累計(jì)的,最高位為符號位,最小值為7fffffff。由于計(jì)數(shù)器是一直累加的,不可能出現(xiàn)本次讀取的計(jì)數(shù)值小于上次計(jì)數(shù)值的情況,因此判斷計(jì)數(shù)器當(dāng)前值是否小于前一次的計(jì)數(shù)值,就可以判斷計(jì)數(shù)是否達(dá)到最大值的拐點(diǎn)(7fffffff),如果達(dá)到,則執(zhí)行特殊的計(jì)算以便消除計(jì)算錯(cuò)誤,程序如圖2所示(此程序應(yīng)放在定時(shí)中斷子程序中執(zhí)行)。

  當(dāng)當(dāng)前計(jì)數(shù)值大于等于上次計(jì)數(shù)值時(shí),兩個(gè)計(jì)數(shù)值做差,就得到程序兩次掃描時(shí)間間隔內(nèi)的計(jì)數(shù)差值,同時(shí)將當(dāng)前計(jì)數(shù)值賦值到上次計(jì)數(shù)值上;當(dāng)當(dāng)前計(jì)數(shù)值小于上次計(jì)數(shù)值時(shí),計(jì)算上次計(jì)數(shù)值與7fffffff之間的差值(用減法),以及當(dāng)前計(jì)數(shù)值和7fffffff之間的差值(用加法),然后將兩個(gè)結(jié)果相加就是程序兩次掃描時(shí)間間隔內(nèi)的計(jì)數(shù)差值,從而實(shí)現(xiàn)對累計(jì)計(jì)數(shù)值達(dá)到拐點(diǎn)時(shí)的正確計(jì)算。

  

  圖2 消除計(jì)算錯(cuò)誤程序

  實(shí)際上,在現(xiàn)場應(yīng)用中定時(shí)中斷子程序是采用250ms中斷一次執(zhí)行的,使用smb34進(jìn)行控制的。需要注意的是,系統(tǒng)中必須只保證這個(gè)中斷是唯一存在的,不會受到其他中斷的影響,否則可能會因其它中斷的影響使周期性中斷不準(zhǔn)時(shí),從而影響精度。

  通過以上計(jì)算就得到了250ms內(nèi)流量計(jì)發(fā)過來的脈沖個(gè)數(shù),這個(gè)數(shù)值乘以脈沖當(dāng)量就是250ms內(nèi)的流量值,再除以時(shí)間就是瞬時(shí)流量。另外,在250ms內(nèi)再執(zhí)行累加程序就可以計(jì)算累積流量了。在計(jì)算累積流量過程中需要避免累積過程的計(jì)算誤差,我們知道,流量累積量是一直累積的一個(gè)數(shù)值,一般會累積到8位數(shù),而plc內(nèi)部浮點(diǎn)數(shù)的有效位數(shù)是6位,當(dāng)累積量數(shù)值很大的時(shí)候就會造成一個(gè)大數(shù)和一個(gè)小數(shù)相加,勢必導(dǎo)致小數(shù)的有效位數(shù)丟失,造成很大的累積誤差,因此,要避免大數(shù)和小數(shù)相加的情況出現(xiàn)。解決方法是采用多個(gè)流量累積器,只允許同數(shù)量級的數(shù)值相加,從而避免數(shù)值有效位數(shù)損失,實(shí)際編程中采用了5個(gè)累積器,根據(jù)常用流量情況下,在周期中斷時(shí)間間隔(250ms)內(nèi)流過的流量乘以15作為第一個(gè)累積器的上限,當(dāng)達(dá)到這個(gè)累積器的上限值后,將這個(gè)累積器的值累加到第2個(gè)累積器中,并把第一個(gè)累積器清零,對于第三個(gè)累積器也同樣處理,第4個(gè)累積器用于保存累積量小數(shù)部分?jǐn)?shù)值,第5個(gè)累積器用于保存累積量整數(shù)部分?jǐn)?shù)值,這樣在顯示總累積量時(shí)只需顯示整數(shù)部分和小數(shù)部分就可以了,整個(gè)過程充分避免了累積過程中大數(shù)與小數(shù)相加的情況出現(xiàn)。在實(shí)際工程中,需根據(jù)流量的大小、周期中斷的時(shí)間間隔來確定所用累積器的個(gè)數(shù),而累積器的整數(shù)部分用雙整數(shù)來表示,雙整數(shù)的范圍是-2,147,483,648到+2,147,483,647,可以使累積器的整數(shù)位數(shù)達(dá)到9位。這樣,在顯示累積量時(shí)就可以最多顯示9位整數(shù)的累積量和6位小數(shù)的累積量,總計(jì)15位,從而省略累積器倍乘系數(shù),使讀數(shù)更簡便。

  對累積器需要在一定條件下復(fù)位,累積到最大數(shù)值或手動復(fù)位,在中斷程序中判斷累積量是否達(dá)到或超過最大位數(shù),當(dāng)超過最大數(shù)值時(shí),將各個(gè)累積器清零,清零的觸發(fā)信號也可以是手動觸發(fā)。

  3 結(jié)束語

  本文列出了在plc中計(jì)算和顯示瞬時(shí)流量和計(jì)算累積量時(shí)可能遇到的問題,并以西門子s7-200 cpu 224系列探討了解決辦法,值得進(jìn)行該工作的工程人員借鑒。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉