當前位置: 首頁 > 工業(yè)控制產(chǎn)品 > 自動化控制 > PLC可編程控制器
發(fā)布日期:2022-04-26 點擊率:1559 品牌:組態(tài)王_Kingview
0.引言
那天有一位問起“循環(huán)移位”指令,因為其新設備里有PLC,他看了一點資料;我告之,多的我也不知道,但移位指令可以說一說。
有計算機基礎(chǔ)知識、或?qū)W過匯編語言的,對PLC移位指令很好理解。而于上了年紀又無基礎(chǔ)者,則須通俗易懂地去解說。
今特把所述內(nèi)容整理了一下,以供后續(xù)參考;目標PLC選用臺達ES2。
1.循環(huán)移位的概念
1)用繩子將一列珠子串起來,然后將繩子兩頭系在一起,珠子就可構(gòu)成一個環(huán);若用手推動珠子,珠子就可以沿著繩子“循環(huán)”移動。
若選珠子為16顆、繩子足夠長,則可把環(huán)拉直,而使珠子排成一排;推動珠子仍可循環(huán),但循環(huán)后仍使珠子成為一條直線。若假設這16顆珠子對應16位二進制數(shù),這就相當于PLC中的一個數(shù)據(jù)“字”。
如果能通過某種方法,使“字”中的位像珠子一樣移動,那么就是數(shù)據(jù)位“循環(huán)”;實現(xiàn)這種移動的指令,就是循環(huán)指令。
2)數(shù)據(jù)位的移動,與珠子的移動,當然不會完全相同;通常,在做循環(huán)移位運算時,會把移動的最末一位記入進位標志M1022。
當進位標志M1022不參與循環(huán)時,就稱為不帶進位,其指令就是不帶進位的指令;若進位標志M1022參與循環(huán),就是帶進位循環(huán),其指令就是帶進位循環(huán)指令。
2.PLC中的循環(huán)移位
1)循環(huán)右移一位的情況。參見附圖1,先使最右邊一位(b0位)為1,其余為0。設每次循環(huán)右移一位,則移位一次后,“1”就被移出并轉(zhuǎn)移到了b15位。
同時,被移出的最末一位的值,將送到M1022;此處僅移一位,則就是原b0位→M1022。
為加深印象,下面結(jié)合具體的指令來進行講解。
2)循環(huán)右移4位的情況。參見附圖2,首先仍使b0位為1,其余為0。移位一次后,原b0位的“1”,到了b12位。
但附圖2的“過程示意”并不準確;因為,數(shù)據(jù)的位并沒有被“移出”在外,而是如串在繩子上的珠子一般,逐位順序移動的。
此時,M1022的值,是原b3的值,因為它是被最末移出的。
3.一個簡單示例(ROR)
1)右循環(huán)移位指令ROR。該指令的目標元件,可以是字元件、也可以是由位組合成的字,故不妨使用K4M0來進行試驗,并通過D0來觀察其值(梯形圖監(jiān)控時),程序參見附圖3。
PLC上電運行時,使M0置1,如附圖1的情況;接通一次X0,稍作延時后,M20接通一個脈沖周期,作為移位信號。接通X1,清零K4M0,相當于停止信號。
該程序,用臺達WPLSoft編程軟件編制。
2)運行程序,監(jiān)控梯形圖,D0顯示為H1(調(diào)整為十六進制顯示);第一次接通X0,D0顯示H8000,說明b15為1,其余為0,與附圖1的演示相同。以后依此類推,其運行結(jié)果可參見附圖4。
第16次移位后,又回到了起始狀態(tài),可以繼續(xù)下一個循環(huán)。
4.結(jié)語
這是一個非常簡單的介紹,不知對入門者有無參考作用。其余移位指令,可仿此試驗理解。
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV