西門子應(yīng)用指令_第1頁
西門子應(yīng)用指令_第2頁
西門子應(yīng)用指令_第3頁
西門子應(yīng)用指令_第4頁
西門子應(yīng)用指令_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、西門子應(yīng)用指令一 比較指令 l 比較指令用于兩個操作數(shù)按一定條件的比較。操作數(shù)可以是整數(shù),也可以是實數(shù)(浮點數(shù))。在梯形圖中用帶參數(shù)和運算符的觸點表示比較指令,比較條件滿足時,觸點閉合,否則打開。l 1. 指令格式 l 裝載 LDB= IN1, IN2l 串聯(lián) AB= IN1, IN2l 并聯(lián) OB= IN1, IN2l 操作數(shù)IN1和IN2為整數(shù)l 比較比較運算符:、 l 操作數(shù)類型:字節(jié)比較B(Byte);(無符號整數(shù))l 整數(shù)比較I(Int)/W(Word);(有符號整數(shù))l 雙字比較D(Double Int/ Word);(有符號整數(shù))l 實數(shù)比較R(Real);(有符號雙字浮點數(shù))

2、2. 比較指令程序設(shè)計舉例 l 例整數(shù)(16位有符號整數(shù))比較指令應(yīng)用l 計數(shù)器C0的當(dāng)前值大于或等于1000時,輸出線圈Q0.0通電。 l NETWORK 1l LDW= C0, +1000l = Q0.0二 算術(shù)、邏輯運算指令 l 1 算術(shù)運算指令 l IN1IN2=OUT l IN1IN2=OUTl 加減指令盒由指令類型,使能端EN,操作數(shù)(IN1、IN2)輸入端,運算結(jié)果輸出OUT,邏輯結(jié)果輸出端ENO等組成。 加法運算應(yīng)用舉例 l NETWORK 1l LD I0.0 裝入常開觸點l MOVW VW100, VW200 VW100 VW200l +I +100, VW200 VW20

3、0+100VW200 2. 乘除運算 l l 乘法運算 l 除法運算l MUL I/DIV I為整數(shù)乘除運算,MUL DI/DIV DI雙整數(shù)乘除運算,MUL/DIV整數(shù)乘除的結(jié)果雙整數(shù)輸出,MUL R/DVI R實數(shù)乘除運算 l 指令執(zhí)行的結(jié)果:乘法 IN1*IN2OUTl 除法 IN1/IN2OUT 乘除法指令的應(yīng)用 l NETWORK 1l LDN I0.0 裝入常閉觸點l *R AC1, VD100 實數(shù)乘法l /R VD10, VD200 實數(shù)除法 l 運行結(jié)果: 3 數(shù)學(xué)函數(shù)變換指令 1. 平方根自然對數(shù)指數(shù)指令 l SQRT IN,OUTl /求平方根指令 SQRT(IN)OUT

4、 l LN IN,OUTl /求(IN)的自然對數(shù)指令l LN(IN)OUT l EXP IN,OUTl /求(IN)的指數(shù)指令EXP(IN)OUTl 平方根(自然對數(shù)、指數(shù))指令是把一個雙字長(32位)的實數(shù)(IN)開方(取自然對數(shù)、取以e為底的指數(shù)),得到32位的實數(shù)運算結(jié)果,通過(OUT)指定的存儲器單元輸出。例 求以10為底,150的常用對數(shù),150存于VD100,結(jié)果放到AC1(應(yīng)用對數(shù)的換底公式求解)。 當(dāng)求解以10為底的常用對數(shù)時,用實數(shù)除法指令將自然對數(shù)除以2.302585即可。(LN102.302585) l LD I0.1 使能輸入l LN VD100, AC1 自然對數(shù)l

5、 /Ln(VD100)AC1l LN 10.0, VD200 自然對數(shù)l /Ln(10)VD200l /R VD200, AC1 實數(shù)除法指令l /AC1/VD200VD200 l2. 三角函數(shù) l SIN IN,OUTl /SIN(IN)OUTl l COS IN,OUTl / COS(IN)OUTl TAN IN,OUTl /TAN(IN)OUT例 求65o的正切值 l LDN I0.0 /使能輸入l MOVR 3.14159, AC0 / / 裝 入AC0l /R 180.0, AC0 /得/1800弧度l l *R 65.0, AC0 /將角度轉(zhuǎn)化為弧度 l TAN AC0, AC1

6、/求正切指令結(jié)果存放到AC1l 3.數(shù)學(xué)函數(shù)變換指令對標(biāo)志位的影響及操作數(shù)的尋址范圍l (1)平方根自然對數(shù)指數(shù)三角函數(shù)運算指令執(zhí)行的結(jié)果影響特殊存儲器位:SM1.0(零),SM1.1(溢出),SM1.2(負),SM1.3(被0除)。l (2)使能流輸出ENO=0的錯誤條件是:SM1.1(溢出),SM4.3(運行時間),0006(間接尋址)。l (3)IN、OUT操作數(shù)的數(shù)據(jù)類型為REAL,尋址范圍見附表1。 3 增1減1計數(shù) l 增1減1計數(shù)器用于自增、自減操作,以實現(xiàn)累加計數(shù)和循環(huán)控制等程序的編制。l 字節(jié)、字、雙字增1l OUT+1OUTl 字節(jié)、字、雙字減1l OUT-1OUT .4

7、邏輯運算指令 l 邏輯運算是對無符號數(shù)進行的邏輯處理,主要包括邏輯與、邏輯或、邏輯異或和取反等運算指令。l l 與(或、異或)指令功能:使能輸入有效時,把兩個字節(jié)(字、雙字)長的輸入邏輯數(shù)按位相與(或、異或) ,得到的一個字節(jié)(字、雙字)邏輯運算結(jié)果,送到OUT指定的存儲器單元輸出。 l 取反指令功能:使能輸入有效時,將一個字節(jié)(字、雙字)長的邏輯數(shù)按位取反,得到的一個字節(jié)(字、雙字)邏輯運算結(jié)果,送到OUT指定的存儲器單元輸出。 例5.18 字或雙字異或字求反字節(jié)與操作編程舉例。 l NETWORK 1 l LD I0.0l MOVW LW10, LW30 LW 10=LW30l ORW L

8、W20, LW30 字或操作 l NETWORK 2l LD I0.1l MOVD VD100, VD120l XORD VD200, VD120 雙字異或操作 l NETWORK 3l LD I0.2l MOVW AC0, AC1l INVW AC1 字取反操作 l NETWORK 4l LD I0.3l MOVB AC0, AC1l ANDB 255, AC1 字節(jié)與操作三 數(shù)據(jù)處理指令 l 數(shù)據(jù)處理指令包括數(shù)據(jù)傳送指令,交換、填充指令,移位指令等。 l 1數(shù)據(jù)傳送l (1.) 單個數(shù)據(jù)傳送 l LADl STL MOV IN,OUT /IN OUT (2). 數(shù)據(jù)塊傳送 l 指令類型:字

9、節(jié)、字或雙字的N個數(shù)據(jù)成組傳送。 l 功能:使能輸入(EN)有效時,把從輸入(IN)字節(jié)開始的N個字節(jié)數(shù)據(jù)傳送到以輸出字節(jié)(OUT)開始的N個字節(jié)、字或雙字中。 例將變量存儲器VW100中內(nèi)容送到VW200中。 l NETWORK 1l LD I0.0 使能輸入l MOVW VW100, VW200 l VW100VW200 2 字節(jié)交換填充指令 l 1、字節(jié)交換指令(SWAY IN)l 使能輸入(EN)有效時,將輸入字(IN)的高、低字節(jié)交換的結(jié)果輸出到(IN)存儲器單元。l 2、字填充(FILL IN,OUT,N)l 使能輸入(EN)有效時,字型輸入數(shù)據(jù)(IN)填充從輸出(OUT)指定單元

10、開始的N個字存儲單元。 N(BYTE)的數(shù)據(jù)范圍0255。 例將從VW100開始的256個字節(jié)(128個字)存儲單元清零。 l NETWORK 1 l LD I0.0 使能輸入l FILL +0, VW100, 128 l 128個字填充0 l 本條指令執(zhí)行結(jié)果:從VW100開始的256個字節(jié)(VW100VW354)的存儲單元清零。 3 移位指令 l 移位指令分為類左、右移位和循環(huán)左、右移位及寄存器移位指令三大類。l 左、右移位和循環(huán)左、右移位指令按移位數(shù)據(jù)的長度又分為字節(jié)型、字型、雙字型三種。l 左、右移位指令(SHL 、SHR )的功能:使能輸入有效時,將輸入的字節(jié)、字或雙字(IN)左、右

11、移N位后(右、左端補0),將結(jié)果輸出到OUT所指定的存儲單元中,最后一次移出位保存在SM1.1。 l 循環(huán)左、右移位指令(ROL 、ROR )的功能:使能輸入有效時,字節(jié)、字或雙字(IN)數(shù)據(jù)循環(huán)左移N位后,將結(jié)果輸出到OUT所指定的存儲單元中,并將最后一次移出位送SM1.1。 3 移位指令l 例 將VD0右移2位送AC0。 l NETWORK 1l LD I0.0 使能輸入l MOVD VD0, AC0 VD0=AC0l SRD AC0, 2 AC0右移2位 l 寄存器移位指令最大移位位數(shù)N數(shù)據(jù)類型(B、W、D)對應(yīng)的位數(shù),移位位數(shù)(次數(shù))N為字節(jié)型數(shù)據(jù)。4.寄存器移位指令l 寄存器移位指令

12、是一個移位長度可指定的移位指令。 l SHRB I1.1, M1.0, +10 l 功能:指令執(zhí)行時,DATA位的值移入移位寄存器。l S-BIT為寄存器的最低位,N為移位寄存器的長度(164)。每次使能有效時,整個移位寄存器移動1位。l N為正值時,左移位(由低位到高位),DATA值從S-BIT位移入,移出位進入SM1.1;l N為負值時右移位(由高位到低位),S-BIT移出到SM1.1,高端補充DATA移入位的值。 l 最高位的計算方法:(N 的絕對值1(S_BIT的位號)/8,余數(shù)即是最高位的位號,商與S_BIT的字節(jié)號之和即是最高位的字節(jié)號。 四 程序控制類指令 l 包括系統(tǒng)控制、跳轉(zhuǎn)

13、、循環(huán)、子程序調(diào)用、順序控制等指令。 l .1 系統(tǒng)控制類指令 l (1.) 暫停指令(STOP) l 使能輸入有效時,立即終止程序的執(zhí)行, l (2.) 結(jié)束指令(END/MEND)l 結(jié)束指令直接連在左側(cè)電源母線時,為無條件結(jié)束指令(MEND),不連在左側(cè)母線時,為條件結(jié)束指令(END)。 l (3.) 看門狗復(fù)位指令(WDR)l 使能輸入有效時,將看門狗定時器復(fù)位。在沒有看門狗錯誤的情況下,可以增加一次掃描允許的時間。若使能輸入無效,看門狗定時器定時時間到,程序?qū)⒅兄巩?dāng)前指令的執(zhí)行,重新啟動,返回到第一條指令重新執(zhí)行。 例暫停(STOP)、條件結(jié)束(END)、看門狗指令應(yīng)用舉例。 l例5

14、.22題圖 2 跳轉(zhuǎn)、循環(huán)指令l (1.) 程序跳轉(zhuǎn)指令(JMP)l l JMP n 跳轉(zhuǎn)指令l l LBL n 跳轉(zhuǎn)標(biāo)號l l 跳轉(zhuǎn)指令(JMP)和跳轉(zhuǎn)地址標(biāo)號指令(LBL)配合實現(xiàn)程序的跳轉(zhuǎn)。使能輸入有效時,使程序跳轉(zhuǎn)到指定標(biāo)號n處執(zhí)行(在同一程序內(nèi)),跳轉(zhuǎn)標(biāo)號n0255。使能輸入無效時,程序順序執(zhí)行。(2.) 循環(huán)控制指令(FOR) l 循環(huán)控制指令,用于描述一段程序的重復(fù)循環(huán)執(zhí)行。l 由FOR和NEXT指令構(gòu)成程序的循環(huán)體。l FOR標(biāo)記循環(huán)開始,NEXT為循環(huán)體結(jié)束。l FOR指令為指令盒格式,主要參數(shù)有使能l 使能輸入EN,當(dāng)前值計數(shù)器INDX,循環(huán)l 次數(shù)初始值INIT,循環(huán)計數(shù)

15、終值FINAL。l (NEXT)l 工作原理:l 使能輸入(EN)有效,循環(huán)體開始執(zhí)行,執(zhí)行到NEXT指令時返回,每執(zhí)行一次循環(huán)體,當(dāng)前計數(shù)器(INDX)增1,達到終值(FINAL)時,循環(huán)結(jié)束。 (3.)子程序調(diào)用指令(SBR) l 子程序可以多次被調(diào)用,也可以嵌套(最多8層),還可以遞歸調(diào)用(自己調(diào)自己)。l CALL SBR0子程序調(diào)用l l l CRET條件返回l RET無條件返回(自動)l 例循環(huán)、跳轉(zhuǎn)及子程序調(diào)用指令應(yīng)用程序。 l NETWORK 1 l LDW= AC0, +100l JMP 10 跳轉(zhuǎn)l NETWORK 2 l LD M0.0l FOR VW100, +1, +

16、20 循環(huán)開始l NETWORK 3 l LD I0.0l CALL SBR_0 調(diào)用子程序l NETWORK 4 l NEXT 循環(huán)返回l NETWORK 5 l LD I0.1l S Q0.0, 1 位置1l NETWORK 6 l LBL 10 標(biāo)號例循環(huán)、跳轉(zhuǎn)及子程序調(diào)用指令應(yīng)用程序。 l 子程序 SUB0l NETWORK 1l LD SM0.0l INCW VW200 l VW200增1l l NETWORK 2l LD I0.2l CRET 條件返回 4. 帶參數(shù)的子程序調(diào)用指令 l 子程序可能有要傳遞的參數(shù)(變量和數(shù)據(jù)),這時可以在子程序調(diào)用指令中包含相應(yīng)參數(shù),它可以在子程序與

17、調(diào)用程序之間傳送。 l 帶參數(shù)子程序調(diào)用指令示例 l 局部變量表中的變量有IN、OUT、l IN/OUT和TEMP等4種類型。l 子程序最多可傳遞6個參數(shù),傳遞l 的參數(shù)在子程序局部變量表中定義。l EN和IN1的輸入為布爾型能流輸入,l 地址參數(shù)VB100是將一個雙字l 無符號的值傳遞到子程序。l 子程序調(diào)用時,輸入?yún)?shù)被拷貝到局部存儲器。子程序完成時,從局部存儲器拷貝輸出參數(shù)到指定的輸出參數(shù)地址。 4. 帶參數(shù)的子程序調(diào)用指令 l 局部變量表 l IN類型:將指定位置的參數(shù)傳入子程序。 l OUT類型:從子程序的結(jié)果值(數(shù)據(jù))傳入到指定參數(shù)位置。l IN/OUT類型:將指定位置的參數(shù)傳到子程序,從子程序來的結(jié)果值被返回到同樣的地址。l TEMP類型:局部存儲器只用作子程序內(nèi)部的暫時存儲器,不能用來傳遞參數(shù)。 5.4.3 順序控制指令 l順序控制指令格式 l LSCR Sx.y 步開始 l SCRT Sx.y 步轉(zhuǎn)移 l SCRE 步結(jié)束 l順序控制指令可以將程序功能流程圖轉(zhuǎn)換成梯形圖程序 例5.24編寫紅綠燈順序控制程序l步進條件為時間步進型。狀態(tài)步的處理為點紅、熄綠燈,同時啟動定時器,步進條件滿足時(時間到)進入下一步,關(guān)斷上一步。 S0.0點紅熄綠S0.1T38置位T37置位熄紅點綠 等待啟動I0.01l1第

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論