公司熱線: 18903837318
- 產(chǎn)品詳情
- 聯(lián)系方式
繼飛機電(圖)-全自動變頻柜-新鄭變頻柜 :
PLC控制柜,變頻控制柜,污水處理自控PLC編程是一個容易讓工程師們頭tong的問題。本文將從梯形圖邏輯和PLC掃描、BCD碼以及可復用代碼3個方面詳述PLC編程的小技巧。
梯形圖邏輯和可編程邏輯控制器(PLC)的掃描、二進制編碼的十進制數(shù)(BCD碼)、以及代碼復用,是CONTROL ENGINEERING編輯咨詢委yuan會成員Frank Lamb建議在PLC編程時需要多加留心的地方。作為一家自動化咨詢服務公司的創(chuàng)始人,他認為控制工程師們可以從這3個角度來學習PLC的編程要領。
BCD碼是一種十進制數(shù)的二進制編碼,其中每個數(shù)都用特定的位來表示,通常是4位或8位,這與人類計算的方式大不相同。這種割裂會給可編程邏輯控制器(PLC)的用戶帶來困擾。
梯形圖邏輯與PLC掃描
幾乎所有的PLC都以同樣的方式來處理掃描。首先,CPU將物理輸入讀入內(nèi)存表,通常稱為“輸入表”。該表經(jīng)評估后在程序中使用。不同平臺,使用不同類型的寄存器;在每個掃描周期,按照從左向右,從上到下的順序處理邏輯,同時更新寄存器。包括更新輸出表,新鄭變頻柜,稍后用其驅(qū)動連接到PLC的物理設備。
為實現(xiàn)各種功能,程序可能會調(diào)用不同的子程序,需要注意的是調(diào)用順序很重要。根據(jù)內(nèi)存寄存器和輸出表的位置,物理輸出duo可能會延遲兩個周期。在任何情況下,從程序調(diào)用處開始執(zhí)行所調(diào)用的子程序,子程序執(zhí)行完畢,回到chu調(diào)用該子程序的主程序,繼續(xù)完成chu的掃描周期。大多數(shù)程序,使用一個初始循環(huán)例程,用于調(diào)用所有其它例程。
然而,也有一些程序是固定周期運行,并不是連續(xù)運行的。不過,這種情況并不常見。大多數(shù)程序的配置,都是以快速度連續(xù)運行。執(zhí)行完所有代碼,評估邏輯,并更新所有表(掃描開始時寫入的輸入表除外),將生成的輸出表或寄存器內(nèi)容寫入物理輸出。
需要花費多長時間?這取決于平臺(處理器速度)、程序代碼量、以及所使用的指令類型。在程序中,程序員有時會使用循環(huán)處理,或者重復調(diào)用同一個子程序。所有這些都會影響PLC總掃描時間。通常,在幫助文檔中都會說明不同指令的執(zhí)行時間,但是并沒有涉及到如何估計執(zhí)行所有代碼所需要的時間?;旧线@些說明都太簡單,只能作為參考。
有時,掃描時間可能長達80毫秒。如果掃描時間超過50毫秒(對機器控制項目而言),用戶就應尋求更強大的處理器或使用更高效的代碼。在機器控制項目中,如果掃描時間超過50毫秒,綜合的變頻柜,對輸出響應的影響非常明顯;對于過程控制項目而言,這可能不是特別重要。
二進制編碼的十進制數(shù)
二進制編碼的十進制數(shù)(BCD碼),是一種二進制編碼(通常用4或8位來表示)。對我們?nèi)祟悂碇v,需要在我們的“寄存器”中累加每位,將它們轉(zhuǎn)換為十進制數(shù),這是上帝賦予人類的編程思考方式。
早在使用觸摸屏之前,7段顯示器和指輪開關就被用作人和PLC之間的數(shù)字接口。甚至更早,在使用PLC之前,這些設備也是與電路之間實現(xiàn)數(shù)字接口的唯yi圖形化設備。用戶可以像在ENIAC(第yi電子通用計算機)一樣,移動短接片,但利用這些設備,更容易查看和調(diào)整十進制數(shù)。問題是,它們是輸入/輸出(I/O)密集型的。每個指輪段需要4個輸入(+電源),而每個7段顯示器則需要4個輸出(+2個電源連接)。然而,與使用按鈕和指示燈相比,它更容易與十進制數(shù)中帶符號或無符號整數(shù)連接。
常見的抱怨來自于數(shù)學方面;每個數(shù)據(jù)類型都必須顯式聲明,如果數(shù)據(jù)類型不匹配,則必須對其進行轉(zhuǎn)換。不僅如此,標準計時器和計數(shù)器類型還需將BCD納入到它們的數(shù)據(jù)結(jié)構(gòu)。這是因為這些數(shù)據(jù)結(jié)構(gòu),可以追溯到人們需要處理諸如指輪和7段顯示器的時代。事實上,自動變頻柜,計時器設定值,仍然需要輸入“S5T # 3S”來完成3秒鐘的設定。定時器使用3位BCD來表征數(shù)字(12位),還需要2位BCD來表征時基。對計數(shù)器也是如此,全自動變頻柜,這意味著它們的計數(shù)范圍只能從-999到+999。
每一個4位區(qū)段可以代表0000到1001的數(shù)值;下一個值,不是從1010(有符號或無符號十進制的“10”或十六進制中的“A”)開始,而是直接跳到下一區(qū)段的位。這意味著后6個位組合(A-F)實際上被浪費了——這在BCD結(jié)構(gòu)中是不可能的。
在許多較新的觸摸屏中,仍然使用BCD結(jié)構(gòu)或基礎,但大多數(shù)程序員更傾向于選擇整數(shù)基來表示十進制數(shù)。BCD有點像DOS;工程學校仍然在利用它,但是人們真的不知道它是從哪里來的。參考舊指輪和7段顯示,可能有助于澄清某些神秘事項和選擇BCD的原因。
PLC的可復用代碼,為用戶提供了靈活性,并允許構(gòu)建可從一個應用程序?qū)С龅搅硪粋€應用程序的結(jié)構(gòu)。
PLC可復用代碼的優(yōu)勢
國際電工委yuan會(IEC)在1993年時就頒布了可編程控制器的國際標準IEC 61131,其中的第三部分關于編程語言的標準,規(guī)范了可編程控制器的編程語言及其基本元素。舊的基于寄存器的系統(tǒng)和xinPLC系統(tǒng)之間的一個重要區(qū)別,就是能夠構(gòu)建可復用的代碼塊。支持平臺必須具備3個基本特征:
1.局部變量與全局變量??蓮陀么a必須具有可適用于每個代碼實例的變量;在理想情況下,只需在原始代碼中定義一次數(shù)據(jù)格式。這意味著,不需要為每個實例或調(diào)用重新定義標簽或符號。多次調(diào)用子例程,并更新程序中的地址,雖然這樣可以節(jié)省時間,但這實際上并不是真正的可復用代碼。
2.用戶自定義的數(shù)據(jù)類型(UDT)。創(chuàng)建UDT允許構(gòu)建結(jié)構(gòu)。從一個應用程序?qū)С龅慕Y(jié)構(gòu)可以應用到另一個程序中。它們允許使用通用術語來描述組件,如“速度”、“開始”和“拒絕”。UDT不需要使用基于標簽的系統(tǒng),但是它們確實需要更有效的利用符號。
3.受保護的自保持程序塊。非常重要的是:代碼必須包含在允許變量輸入和輸出的程序塊中,并受到保護,這樣用戶就不能修改實例中的程序。如果修改,需要密碼或軟件密鑰。
利用滿足IEC標準要求的其它PLC語言來編寫程序,也有助于使平臺功能更強大,代碼開發(fā)速度更快。不管平臺是否使用具有局部變量或用戶定制指令的子例程,可復用代碼是快速創(chuàng)建功能強大程序的關鍵部分。許多平臺都允許使用復用代碼,并且每個平臺都有自己的方法。
公眾號(industry-care)推薦閱讀
plc是怎么向執(zhí)行機構(gòu)輸出4~20ma電流的?PLC和變頻器進行配合時所需注意的事項視頻培訓丨PLC的系統(tǒng)故障燈SF燈紅燈亮時,查找故障信息的方法三相交流gan應電動機降ya啟動控制線路的pLC控制原理三菱PLC常用的指令匯總,速存!西門子PLC維修保養(yǎng)的五大步驟3天,你也可成S7-1500PLC編程高手!PLC突發(fā)故障如何下手處理?
單片機和PLC的區(qū)別{控制柜}{配電柜}{鄭州PLC控制柜}
PLC與單片機的差別是:
1、PLC是應用單片機構(gòu)成的比較成熟的控制系統(tǒng),是已經(jīng)調(diào)試成熟穩(wěn)定的單片機應用系統(tǒng)的產(chǎn)品。有較強的通用性。
2、而單片機可以構(gòu)成各種各樣的應用系統(tǒng),使用范圍更廣。單就“單片機”而言,它只是一種集成電路,還必須與其它元器件及軟件構(gòu)成系統(tǒng)才能應用。
3、從工程的使用來看,對單項工程或重復數(shù)的項目,采用PLC快捷方便,成功率高,可靠性好,但成本較高。
4、對于量大的配套項目,采用單片機系統(tǒng)具有成本低、效益高的優(yōu)點,但這要有相當?shù)难邪l(fā)力量和行業(yè)經(jīng)驗才能使系統(tǒng)穩(wěn)定。
從本質(zhì)上說,PLC其實就是一套已經(jīng)做好的單片機(單片機范圍很廣的)系統(tǒng)。
但PLC也有其特點:PLC廣泛使用梯形圖代替計算機語言,對編程有一定的優(yōu)勢。你可以把梯形圖理解成是與匯編等計算器語言一樣,是一種編程語言,只是使用范圍不同!而且通常做法是由PLC軟件把你的梯形圖轉(zhuǎn)換成C或匯編語言(由PLC所使用的CPU決定),然后利用匯編或C編譯系統(tǒng)編譯成機器碼!PLC運行的只是機器碼而已。梯形圖只是讓使用者更加容易使用而已。
如所說,那么MCS-51單片機當然也可以用于PLC制作,只是8位CPU在一些高記應用如: 大量運算(包括浮點運算),嵌入式系統(tǒng)(現(xiàn)在UCOS也能移植到MCS-51)等,有些力不從心而已,不過加上DSP就已經(jīng)能滿足一般要求了,而且同樣使用梯形圖編程,我們可把梯形圖轉(zhuǎn)化為C51再利用KEIL的C51進行編譯。我們也能發(fā)現(xiàn)不用型號的PLC會選用不同的CPU,其實也說明PLC就是一套已經(jīng)做好的單片機系統(tǒng)。
既然如此,當然也可以用單片機直接開發(fā)控制系統(tǒng),但是對開發(fā)者要求相當高(不是一般水平可以勝任的),開發(fā)周期長,成本高(對于一些大型一點的體統(tǒng)你需要做實驗,印刷電路板就需要一筆相當?shù)馁M用,你可以說你用仿針器,用實驗板來開發(fā),但是我要告訴你,那樣做你只是驗證了硬件與軟件的可行性,并不代表可以用在工業(yè)控制系統(tǒng),因為工業(yè)控制系對抗干擾的要求非常高,穩(wěn)定第1,而不是性能第1,所以你的電路板設計必須不斷實驗,改進)。當你解決了上述問題,你就發(fā)現(xiàn)你已經(jīng)做了一臺PLC了,當然如果需要別人能容易使用你還需要一套使用軟件,這樣你可以不需要把你的電路告訴別人。你也不可能告訴別人。
這樣一看PLC其實并不神秘,不少PLC是很簡單的,其內(nèi)部的CPU除了速度快之外,其他功能還不如普通的單片機。通常PLC采用16位或32位的CPU,帶1或2個的串行通道與外界通訊,內(nèi)部有一個定時器即可,若要提高可靠性再加一個看家狗定時器問題就解決了。
另外,PLC的關鍵技術在于其內(nèi)部固化了一個能解釋梯形圖語言的程序及輔助通訊程序,梯形圖語言的解釋程序的效率決定了PLC的性能,通訊程序決定了PLC與外界交換信息的難易。對于簡單的應用,通常以獨力控制器的方式運作,不需與外界交換信息,只需內(nèi)部固化有能解釋梯形圖語言的程序即可。實際上,設計PLC的主要工作就是開發(fā)解釋梯形圖語言的程序?,F(xiàn)在的單片機完全可以取代PLC。以前的單片機由于穩(wěn)定性和抗電磁干擾能力比較的弱和PLC是沒有辦法相比的,現(xiàn)在的單片機可能已經(jīng)做到了高穩(wěn)定性和很強的抗干擾能力在某些領域已經(jīng)實現(xiàn)了替換。
單片機和plc我都做過。
兩個方向都別選,研究生做這兩個方向浪費。
PLC門檻低,大專就夠了,出差出成狗,工資還不上去。 稍微了解一下還行,以后做工控這行工作可能會接觸到。
單片機好一點,一般是做研發(fā),前景也一般,小本就夠了。
嵌入式或者純軟件前景好。
----------------------------------------
我在蘇州,制造業(yè)很發(fā)達,非標設備公司也很多。
工控做了四年,認識的人里面,自動化公司搞PLC的電qi工程師大部分是大專畢業(yè),小本的居多。研究生,真的沒見過。
電qi工程師普遍薪資不高。大公司的靠加班費和差補還有自己想辦法開法票。小公司基本就是靠出差的差補,沒有加班費一說??傊?,想多拿錢,就拼命出差,去環(huán)境惡劣的工廠里蹲著調(diào)試。另外,就算算上差補這些雜七雜八的收入,一個月能拿到一萬的都不多。除非自己出去做私活接項目做。
同一年畢業(yè)的本科同學,搞嵌入式的已經(jīng)年薪十八萬了。純軟開發(fā)或者前端開發(fā)的,基本都在十五萬到二十五萬。還不用頻繁出差。
學plc和單片機都沒毛病,方向是plc你就完犢子了,單片機也是。多學點機器學習什么的,方向得穩(wěn),
你研一了,還只是51水平,是不是拖得太后面啦,至少要上操作系統(tǒng)或者燒dsp吧?,F(xiàn)在很多小學生都開始玩arduino啦。
不過呢,這其實都不重要。。。
工作行業(yè)、方向才是。
學什么也不要學PLC。
理由如下:
1、正如你所說,技術含量不高,換句話講就是門檻低,門檻低則導致有大量的從業(yè)人員,而工作崗位有限,意味的就是供大于求,競爭激烈,于是乎,收入水平就低。以上不討論大牛,討論的是平均水平。
2、工作條件差,常年與機器設備為伍,項目還經(jīng)常要跟土建工作同時進行,場景不做描述自由想象。
3、出差頻率大,時間長。年輕單身的時候出差還不是問題。等到年紀見長,要談戀愛結(jié)婚生娃的年紀,出差就是情侶矛盾乃至家庭矛盾的一大根源。也許是想多了,做工控的收入低,工作差,總出差,應該找不到女(男)朋友,不用擔心產(chǎn)生矛盾。
總而言之,言而總之,別學。
后再給個不成熟的建議吧。
畢業(yè)以后找工作的時候要注意選擇具備“行業(yè)大發(fā)展”、“從業(yè)難度高”、“不出差即可完成”等特征的行業(yè),盡可能的避免機械、電控等等,尤其不要去施工企業(yè)。出差真能把整個人生廢掉的。
那么,在畢業(yè)之前,就往這個方向努力吧。
說點我的見解吧。
很多人說PLC的門檻低,這話本身沒問題,但問題是很多人看不到PLC的門檻高。就像單片機,51的門檻低吧,但很多人知道51之后有STM32,有更廣的空間供你發(fā)展。其實PLC也一樣,你能力出眾,會西門子的400級別的,會模塊化編程,會wincc,會組態(tài)各種畫面,你有能力你可以做一個污水廠或者火電廠的中控,你甚至可以去國外做項目,肯吃苦去發(fā)展中國家做一個火電廠的輸煤中控,難度和報酬完全不比你在公司埋頭寫代碼低。
每個行業(yè)只有能力出眾的人賺的才多。
不請自來地為樓上的大神們補充幾句。
選擇單片機和PLC倒不是很重要,認同樓上說的“方向更重要”。
單片機也好,PLC也罷,DSP也罷,F(xiàn)PGA也罷,只是個控制器而已。你要實現(xiàn)的是從控制器到執(zhí)行器、被控對象、傳感器在內(nèi)的一整套控制系統(tǒng),這還只是一個小系統(tǒng),比如溫度控制。再往大的做就是好多個小系統(tǒng)組成的大系統(tǒng),比如控制這個系統(tǒng)的溫度、濕度、位置等等。你要做到這種大系統(tǒng)才算是研究生期間的科研成果功德圓滿吧。
至于那些高大上的算法,絕大部分華而不實,也用不到實際當中,PID真的能勝任絕大多數(shù)情況。
既然上了研究生,就跟著你的導師好好做項目吧。你也說了,硬件都很貴,你自己買要花很多銀子,而且學的也慢。跟著導師做項目,硬件他出錢,不會還能請教師兄和導師,學的也快,而且導師也會督促你趕項目,給你壓力,學的更快。
別想些亂七八糟的東東了,導師有項目,踏踏實實跟著做,研究生期間真正地搞他四五個項目,找工作的時候一點不怵。我舍友就是跟著導師做了四五個項目,現(xiàn)在好多大企業(yè)搶著要他(我就不多說了,自己跟他一比就是反面教材)。但是,如果你的導師沒有項目的話,您就自謀出路吧。
新鄭變頻柜-繼飛機電-自動變頻柜由鄭州繼飛機電設備有限公司提供。鄭州繼飛機電設備有限公司(www.zzjifei.com)擁有很好的服務和產(chǎn)品,不斷地受到新老用戶及業(yè)內(nèi)人士的肯定和信任。我們公司是全網(wǎng)商盟認證會員,點擊頁面的商盟客服圖標,可以直接與我們客服人員對話,愿我們今后的合作愉快!