【正文】
2022/2/11 71 例 8- 1: 6只彩燈分接于 ~ ,開(kāi)始工作后, ,以后每隔 2秒依次點(diǎn)亮 1盞燈直到 6盞燈全亮 2秒后,每隔 2秒熄滅 1盞燈直到 6盞燈全熄 2秒后再循環(huán)。使用功能指令建立這些節(jié)點(diǎn)會(huì)更加方便。 編、譯碼指令可以用于將控制事件編號(hào)后的數(shù)字控制等。比如邏輯字與指令,邏輯字或指令及邏輯字異或指令是數(shù)據(jù)位對(duì)位邏輯處理的指令,可用于實(shí)現(xiàn)輸出口的集中處理。而功能指令作為以數(shù)據(jù)為處理對(duì)象的指令,涉及的是字節(jié)、字元件或雙字元件,因而,在使用功能指令直接處理輸出口的狀態(tài)時(shí),需將輸出口作為位與位間存在聯(lián)系的“數(shù)據(jù)”看待。 2022/2/11 68 1.將通常作為位元件使用的輸出口看作“字”元件,用送數(shù)實(shí)現(xiàn)輸出口的控制 PLC作為工業(yè)控制設(shè)備,其功能主要是實(shí)現(xiàn)輸入口所連接的信號(hào)對(duì)輸出口連接的驅(qū)動(dòng)設(shè)備的控制。 在使用這些指令時(shí)、除了準(zhǔn)確地了解指令的功能外,很重要的內(nèi)容是把握數(shù)據(jù)在存儲(chǔ)區(qū)中的流轉(zhuǎn)及數(shù)據(jù)變化的工程意義。 日期及時(shí)間值采用 BCD碼格式。 解碼指令依據(jù)輸入字節(jié)( IN)的低四位所表示的位號(hào)置輸出字( OUT)的相應(yīng)位為 1,其他清 0。 段碼指令點(diǎn)亮七段碼顯示器中的段,將 IN中指定的字符轉(zhuǎn)換生成一個(gè)點(diǎn)陣存入 OUT. 2022/2/11 60 有效操作數(shù): 欲將整數(shù)轉(zhuǎn)換為實(shí)數(shù),可先用 ITD指令把整數(shù)轉(zhuǎn)換為雙整數(shù),然后再用 DTR指令把雙整數(shù)轉(zhuǎn)換為實(shí)數(shù)。 ROUND取整指令,轉(zhuǎn)換時(shí) 實(shí)數(shù)的小數(shù)部分四舍五入。輸入數(shù)據(jù)的范圍是 0到 9999。輸入數(shù)據(jù)的范圍是 0到 9999( BCD碼)。 2022/2/11 58 DTR IN,OUT EN OUT ENO IN BCD I EN OUT ENO 雙整數(shù)-實(shí)數(shù) IN BCDI OUT LAD STL DI R BCD碼-整數(shù) I BCD EN OUT ENO IN IBCD OUT 整數(shù)- BCD碼 雙字整數(shù)轉(zhuǎn)為實(shí)數(shù)( DTR)指令:將輸入端( IN)指定的 32位有符號(hào)整數(shù)轉(zhuǎn)換成 32位實(shí)數(shù),存入 OUT指定的 存儲(chǔ)單元 中。 雙整數(shù)-整數(shù) 指令是將 輸入端( IN)的有符號(hào)雙整數(shù)轉(zhuǎn)換成整數(shù),并存入 OUT。 整數(shù)-字節(jié)指令是將輸入整數(shù)值轉(zhuǎn)換成字節(jié),存入OUT指定單元中,只有 0到 255中的值被轉(zhuǎn)換,其他值會(huì)溢出。 操作數(shù): 2022/2/11 55 舉例: 2022/2/11 56 七、轉(zhuǎn)換指令 標(biāo)準(zhǔn)轉(zhuǎn)換指令 其中,四舍五入指令及取整指令用于實(shí)數(shù)向整數(shù)的轉(zhuǎn)換,段碼指令用于數(shù)據(jù)轉(zhuǎn)換為七段碼顯示器所需的編碼方式的場(chǎng)合。 FIFO TBL,DATA EN DATA ENO TBL LIFO EN DATA ENO 先進(jìn)先出 TBL LIFO TBL,DATA LAD STL FIFO 后進(jìn)先出 2022/2/11 49 先進(jìn)先出、后進(jìn)先出指令操作數(shù): 2022/2/11 50 后進(jìn)先出指令舉例: 2022/2/11 51 查表指令 FND= TBL,PTN,INDX EN ENO CMD 查表指令 TBL FIND TBL PTN INDX FND TBL,PTN,INDX FND TBL,PTN,INDX FND TBL,PTN,INDX 2022/2/11 52 查表指令 操作數(shù): 2022/2/11 53 查表指令 舉例: 2022/2/11 54 存儲(chǔ)器填充指令 FILL IN,OUT,N EN OUT ENO N 存儲(chǔ)器填充指令 IN FILL N 存儲(chǔ)器填充指令( FILL)用輸入值( IN)填充從輸出( OUT)開(kāi)始的 N個(gè)字的內(nèi)容。后進(jìn)先出 (LIFO)指令從表中移走最后一個(gè)數(shù)據(jù),并將此數(shù)據(jù)輸出到 DATA。 2022/2/11 46 ATT DATA,TBL EN OUT ENO TBL 表指令 DATA LAD STL AD T TBL 表指令 操作數(shù): 2022/2/11 47 表指令 舉例: 2022/2/11 48 先進(jìn)先出、后進(jìn)先出指令 先進(jìn)先出( FIFO)指令從表 (TBL)中移走第一個(gè)數(shù)據(jù),并將此數(shù)據(jù)輸出到 DATA。新填入的數(shù)據(jù)加在表中的上一個(gè)數(shù)據(jù)的后邊。 表指令含填表、查表、先進(jìn)先出和后進(jìn)先出及存儲(chǔ)器填充指令,存儲(chǔ)器填充指令常見(jiàn)于程序初始化。 SBIT--指定最低位 N--指定移位寄存器的長(zhǎng)度和移位的方向(正向 N,反向- N) . SHRB DATA,SBIT,N EN OUT ENO N SWAP EN OUT ENO 移位寄存器 DATA IN SWAP IN LAD STL SHRB 字節(jié)交換 SBIT 字節(jié)交換指令將輸入字的高字節(jié)與低字節(jié)交換 2022/2/11 43 移位寄存器的操作數(shù): 2022/2/11 44 字節(jié)交換操作數(shù): 2022/2/11 45 六、表指令 表指令是存儲(chǔ)器指定區(qū)域中數(shù)據(jù)的管理指令。 字循環(huán)左移 2022/2/11 39 RRD OUT, N EN OUT ENO N ROL- DW EN OUT ENO N 雙字循環(huán)右移 IN IN RLD OUT, N LAD STL ROR- DW 把輸入端( IN)指定 的數(shù)據(jù) 雙字 循環(huán)右移或循 環(huán)左移 N位,結(jié)果存入 OUT單元。 2022/2/11 37 字節(jié)、字、雙字循環(huán)移位指令 RRB OUT, N EN OUT ENO N ROL- B EN OU