時間:2020-08-20 10:49:14來源:浙江禾川科技股份有限公司 袁練
信息技術(shù)與傳統(tǒng)制造技術(shù)的深度交融為生產(chǎn)制造的智能化打下了基礎(chǔ),而具體在工控領(lǐng)域的體現(xiàn)就是以(Structured text)ST結(jié)構(gòu)化文本所代表的高級編程語言編程設(shè)計中的廣泛應(yīng)用。它的優(yōu)點是能簡化復(fù)雜的算法方程,進(jìn)行梯形圖難以執(zhí)行的復(fù)雜計算,完成算法方程式的建立。因其對復(fù)雜算法的高適應(yīng)和高移植通用性,ST越來越廣泛應(yīng)用于工業(yè)控制,掌握ST結(jié)構(gòu)本文本設(shè)計已經(jīng)成為了電氣工程師必備要求。但對于未接觸過高級語言的傳統(tǒng)電氣從事人員來說,ST編程是有著一定難度的。故本文提出基于梯形圖編程思維快速實現(xiàn)ST編程的設(shè)計方法。
1.電機(jī)啟動保持停止控制的梯形圖實現(xiàn)與ST轉(zhuǎn)換
下圖所示為電機(jī)的啟動保持停止梯形圖控制程序,包括啟動、停止、自鎖三個觸點和一個輸出線圈,它們的都是開關(guān)型的變量,即只有開和關(guān)2個狀態(tài),在高級語言中,這種數(shù)據(jù)類型叫做BOOL型,即二進(jìn)制開關(guān)變量,即閉合為1(TRUE),斷開為0(FALSE)。如下梯形圖的實質(zhì)可以抽像的理解為“觸點+觸點*觸點=線圈”,即(M0+Y0)*M1=Y0。
在ST等高級語言中M0和Y0的邏輯關(guān)系為或OR,M0和M1邏輯關(guān)系為與AND NOT,NOT表示邏輯關(guān)系非即取反。上述梯形圖算式即可表達(dá)為(M0 OR Y0)AND NOT M1 =Y0,而在ST語言中“=”表達(dá)的是比較2數(shù)值,賦值采用“:=”,同時高級語言采用從右往左賦值。
圖1.1 啟保停控制梯形圖
因此如上梯形圖程序轉(zhuǎn)化為ST標(biāo)準(zhǔn)表達(dá)式為:
圖1.2 啟保停ST程序
同理電機(jī)正反轉(zhuǎn)控制程序亦可實現(xiàn)如下轉(zhuǎn)換:
圖1.3 啟保停ST程序
圖1.4 啟保停ST程序
通過參考如上啟動保持停止和電機(jī)正反轉(zhuǎn)控制程序的轉(zhuǎn)換實例已能實現(xiàn)基本邏輯控制梯形圖程序向ST的轉(zhuǎn)換,即線圈:=觸點的邏輯關(guān)系表達(dá)式。而接下來將逐步對ST的一些應(yīng)用基礎(chǔ)知識進(jìn)行分析。
數(shù)據(jù)類型介紹
下圖所示是ST語言編程最常用的數(shù)據(jù)類型,即開關(guān)型變量BOO型,整數(shù)INT型,小數(shù)浮點型REAL,然后還有基于上述類型的數(shù)據(jù)類型,如UINT、LREAL等等,對于剛?cè)腴T者建議由簡至繁,先重點關(guān)注BOOL、INT、REAL三種數(shù)據(jù)類型。BOOL型用于表示二進(jìn)制,即啟動、停止、開關(guān)等變量,整型一般用于作為步和命名,小數(shù)一般用來映射速度、轉(zhuǎn)矩、位置等物理量,具體如下小車控制實例所示。
圖2.1 三種常用數(shù)據(jù)類型
圖2.2 運(yùn)料小車工作示意
如圖小車的控制動作為,啟動系統(tǒng),小車在A點裝料,裝料完成前往B點卸一半的料,再前往C點卸料,卸料完成,返回A點如此循環(huán)。小車控制系統(tǒng)要考慮的控制IO為輸入:啟動、停止、A位置、B位置、C位置,輸出小車前進(jìn)、小車后退。從工作要求分析可得,此控制對象適宜順序控制編程方法,也就是步進(jìn),而在ST語言里步進(jìn)通過CASE功能語句實現(xiàn)。CASE用法是CASE 運(yùn)行步變量(INT) OF A步(INT): .........;B步.......;當(dāng)運(yùn)行步=A步,則執(zhí)行A步,同理,可適用其它條件,如下程序?qū)嵗尽?/span>
IF...THEN...END_IF為最常用的邏輯判斷語句,它的說明是當(dāng)某某條件成立,則達(dá)到某某結(jié)果,此處要特別算命的是IF是條件成立執(zhí)行,而條件不成立并不會影響以及生成的結(jié)果,這與梯形圖中的開關(guān)邏輯有異。如梯形圖中啟動按鈕閉合(為TRUE)則線圈得電,啟動按鈕斷開(為FALSE)則線圈失電。而IF條件中(IF 啟動 THEN線圈 END_IF)只有當(dāng)啟動為TRUE才會生成線圈TRUE,啟動為FALSE時線圈線圈狀態(tài)不會發(fā)生任何變化。具體可參考下圖2.3所示小車運(yùn)行最簡系統(tǒng):
圖2.3 運(yùn)料小車ST控制程序
3.ST入門基礎(chǔ)邏輯運(yùn)算符介紹
接下來將重點介紹一些常用運(yùn)算符,最常見的邏輯運(yùn)算符有“與AND、或OR、非NOT”,然后就是一些常用的算術(shù)運(yùn)算符“+、-、*、/、=”,這里要特別注意的是在C語言里賦值采用的是“=”,而在ST語言里“=”的意義是用來比較兩變量的大小,ST語言里賦值采用“:=”。了解了如上運(yùn)算符編寫簡單的ST邏輯程序便不在話下,由簡入繁,不斷深入研究。如圖3.1是常用的運(yùn)算符及其優(yōu)先級:
圖3.1 常用運(yùn)算符及其優(yōu)先級
4.ST運(yùn)動控制程序?qū)嵗?/span>
在本節(jié)我們將用如上基本語法達(dá)到運(yùn)動控制系統(tǒng)的實現(xiàn),如下采用圖示,功能塊為運(yùn)動控制中伺服軸使能和點動的功能集合,我們可以通過ST語句實現(xiàn)對其外部輸入的控制,以實現(xiàn)對伺服電機(jī)的正反轉(zhuǎn)控制,如下實例說明了ST入門只要掌握了一些基礎(chǔ)規(guī)則便可實現(xiàn)簡單邏輯和運(yùn)動控制系統(tǒng)的程序的設(shè)計,然后由簡入繁,迅速實現(xiàn)新的編程方法的學(xué)習(xí)。
圖4.1 伺服電機(jī)點動控制實現(xiàn)
總結(jié)
本文粗淺的總結(jié)了一些ST學(xué)習(xí)的小經(jīng)驗,講述了梯形圖編程和ST語言編程的相通之處,如上知識點也是本人在學(xué)習(xí)ST過程中所遇到的問題,剛?cè)腴T時,掌握基礎(chǔ)的通用知識即可,然后不斷使用和實踐就能達(dá)到不斷深化的效果。所以作者建議ST初學(xué)者可參考以上建議,把握通用知識點,觸類旁通,由簡入繁,逐步深入,水到渠成,如有需要詳細(xì)ST教程可前往川禾自動化學(xué)院http://class.hcfa.cn/course/view.php?id=44學(xué)習(xí),內(nèi)有邏輯控制、運(yùn)動控制全系列教程。
標(biāo)簽:
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.wangxinlc.cn)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
相關(guān)資訊
產(chǎn)品新聞
更多>2025-04-30
性能躍升20%!維宏NK300CX Plus數(shù)控系統(tǒng)...
2025-04-11
rpi-image-gen:樹莓派軟件鏡像構(gòu)建的終...
2025-04-08
【產(chǎn)品解讀】全面提升精密制造檢測節(jié)拍...
2025-03-31
激光閃耀 智慧引領(lǐng) | WISE MASER 黑武士...
2025-03-20