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