電氣控制ppt課件
《電氣控制ppt課件》由會(huì)員分享,可在線閱讀,更多相關(guān)《電氣控制ppt課件(118頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第5章S7 200PLC的指令系統(tǒng) 1 5 1S7 200PLC編程基礎(chǔ) SIMATIC指令集是西門子公司專為S7 200PLC設(shè)計(jì)的編程語言 可用梯形圖LAD 功能塊FBD和語句表STL LAD和FBD是一種圖形語言 STL是一種類似于匯編語言的文本型語言 5 1 1編程語言 2 1 梯形圖 LAD 編程語言 梯形圖是與電氣控制相呼應(yīng)的圖形語言 觸點(diǎn) 代表邏輯 輸入 條件 例如開關(guān) 按鈕 內(nèi)部條件能量流僅在觸點(diǎn)閉合時(shí)通過 通常代表邏輯 輸出 結(jié)果 如燈 接觸器 中間繼電器等 當(dāng)有能量流輸入時(shí)才會(huì)有輸出 起始母線 3 類似于普通邏輯功能圖 一般一種功能框表示一種特定的功能 2 功能塊 FBD 編程語言 輸入端是功能塊的條件 輸出端是功能塊的運(yùn)算結(jié)果 4 用助記符來表示PLC的各種控制功能的 3 語句表 STL 編程語言 5 5 1 2數(shù)據(jù)類型 基本數(shù)據(jù)類型及數(shù)據(jù)類型檢查 1位布爾型BOOL 8位字節(jié)型BYTE 16位無符號(hào)型WORD 16位有符號(hào)整數(shù)INT 32位無符號(hào)雙字整數(shù)DWORD 32位有符號(hào)雙字型DINT 32位實(shí)數(shù)型REAL 6 數(shù)據(jù)類型檢查 完全數(shù)據(jù)類型檢查 簡單數(shù)據(jù)類型檢查 無數(shù)據(jù)類型檢查 SIMATIC指令集不支持完全數(shù)據(jù)類型檢查 使用局部變量時(shí) 執(zhí)行簡單數(shù)據(jù)類型檢查 使用全局變量時(shí) 執(zhí)行無數(shù)據(jù)類型檢查 7 2 數(shù)據(jù)長度與數(shù)值范圍 不同的數(shù)據(jù)類型 具有不同的數(shù)據(jù)長度和數(shù)值范圍 見表5 4指令的操作數(shù)具有一定的數(shù)據(jù)和長度 如整數(shù)乘法指令的操作數(shù)是字型數(shù)據(jù) 編程時(shí)需要注意操作數(shù)的數(shù)據(jù)類型和指令識(shí)志符相匹配 8 程序區(qū) 系統(tǒng)區(qū) 數(shù)據(jù)區(qū)程序區(qū)用于存放用戶程序系統(tǒng)區(qū)用于存放有關(guān)PLC配置結(jié)構(gòu)的參數(shù)數(shù)據(jù)區(qū)是S7 200CPU提供的存儲(chǔ)器的特定區(qū)域包括 輸入映像寄存器 I 輸出映像寄存器 Q 變量存儲(chǔ)器 V 內(nèi)部標(biāo)志位存儲(chǔ)器 M 順序控制繼電器存儲(chǔ)器 S 特殊標(biāo)志位存儲(chǔ)器 SM 局部存儲(chǔ)器 L 定時(shí)器存儲(chǔ)器 T 計(jì)數(shù)器存儲(chǔ)器 C 模擬量輸入輸出映像寄存器 AI AQ 累加器AC 高速計(jì)數(shù)器HC 5 1 3存儲(chǔ)區(qū)域 9 1 數(shù)據(jù)區(qū)存儲(chǔ)器的地址表示格式 1 位地址格式數(shù)據(jù)區(qū)存儲(chǔ)器區(qū)域的某一位的地址格式為 Ax yA 存儲(chǔ)區(qū)域標(biāo)識(shí)符 編程元件的名稱x 字節(jié)地址 若有相鄰多字節(jié) 它總是低字節(jié)y 字節(jié)內(nèi)的位地址 Q4 6地址格式 可以編程的元件有 輸入繼電器I 輸出繼電器Q 輔助繼電器M 特殊繼電器SM 變量寄存器V等 10 數(shù)據(jù)區(qū)存儲(chǔ)器區(qū)域的字節(jié) 字 雙字地址格式為 ATxA 存儲(chǔ)區(qū)域標(biāo)識(shí)符 編程元件的名稱T 數(shù)據(jù)長度x 字節(jié) 字或雙字的起始地址VB100表示字節(jié)地址VW100表示字地址 兩個(gè)字節(jié)VB100 VB101 VD100表示的是哪幾個(gè)字節(jié)地址 2 字節(jié) 字 雙字地址格式 11 地址格式 AyA 存儲(chǔ)區(qū)域標(biāo)識(shí)符 模擬相關(guān)的電氣元件的名稱y 元件號(hào)如定時(shí)器T37 T表示定時(shí)器 37定時(shí)器號(hào)計(jì)數(shù)器C1 累加器AC1等 3 其他地址格式 12 1 輸入輸出映像寄存器 I Q 輸入映像寄存器IPLC輸入端子是從外部接收輸入信號(hào)的窗口 每一個(gè)輸入端子與輸入映像寄存器 I 的相應(yīng)位相對(duì)應(yīng) 輸入映像寄存器的狀態(tài)只能由外部輸入信號(hào)驅(qū)動(dòng) 而不能由程序指令修改地址格式如 I0 1 IB4 IW6Cpu226有效范圍 I 0 0 15 7 IB 0 15 IW 0 14 ID 0 12 2 數(shù)據(jù)區(qū)存儲(chǔ)器區(qū)域 13 輸出映像寄存器QPLC輸出端子是PLC向外部負(fù)載發(fā)出控制命令的窗口每一個(gè)輸出端子與輸出映像寄存器的相應(yīng)位相對(duì)應(yīng) 地址格式如 Q0 1 QB4 QW6 QD7Cpu226有效范圍 Q 0 0 15 7 QB 0 15 QW 0 14 QD 0 12 在程序的執(zhí)行過程中 對(duì)于輸入輸出的存取通常是通過映像寄存器 而不是實(shí)際的輸入 輸出端子 系統(tǒng)在執(zhí)行程序時(shí)完全和外界隔開 提高系統(tǒng)抗干擾能力 14 2 內(nèi)部標(biāo)識(shí)存儲(chǔ)器 M 也稱為內(nèi)部線圈 是模擬繼電 接觸器控制系統(tǒng)中的中間繼電器 存放中間操作狀態(tài) 或存儲(chǔ)其他相關(guān)的數(shù)據(jù) M以位為單位使用 也可以字節(jié) 字 雙字為單位使用如M26 7CPU226模塊內(nèi)部標(biāo)志位存儲(chǔ)器的有效范圍為 M 0 0 31 7 MB 0 31 MW 0 30 MD 0 28 15 S7 200中有大量的變量存儲(chǔ)器 用于模擬量控制 數(shù)據(jù)運(yùn)算 參數(shù)設(shè)置及存放程序執(zhí)行過程中控制邏輯操作的中間結(jié)果 變量存儲(chǔ)器可以位為單位使用 也可以按字節(jié) 字 雙字為單位使用 全局有效變量存儲(chǔ)器的數(shù)量與CPU的型號(hào)有關(guān) CPU222為V0 0 V2407 7 CPU224為V0 0 5119 7 CPU226為V0 0 V5119 7 3 變量存儲(chǔ)器 V CPU226的V按字節(jié) 字 雙字有效地址范圍為 16 局部存儲(chǔ)器用來存放局部變量 局部有效 可以用作暫時(shí)存儲(chǔ)器或?yàn)樽映绦騻鬟f參數(shù) 可以作為間接尋址的指針 不能作間接尋址的存儲(chǔ)器區(qū) 如L0 0 LB33 LW44 LD55CPU226模塊內(nèi)部標(biāo)志位存儲(chǔ)器的有效范圍為 L 0 0 63 7 LB 0 63 LW 0 62 LD 0 60 4 局部存儲(chǔ)器 L 17 S用于順序控制 或步進(jìn)控制 順序控制繼電器指令提供控制程序的邏輯分段 從而實(shí)現(xiàn)順序控制 S3 1 SB4 SW10 SD20CPU226模塊內(nèi)部順序控制繼電器存儲(chǔ)器的有效范圍為 S 0 0 31 7 SB 0 31 SW 0 30 SD 0 28 5 順序控制繼電器存儲(chǔ)器 S 18 特殊標(biāo)志位 特殊繼電器 即特殊內(nèi)部線圈 PLC通過特殊繼電器為用戶提供一些特殊的控制功能和系統(tǒng)信息 用戶也可以將對(duì)操作的特殊要求通過特殊繼電器通知PLC 例如可以讀取程序運(yùn)行過程中的設(shè)備狀態(tài)和運(yùn)算結(jié)果信息 利用這些信息實(shí)現(xiàn)一定的控制動(dòng)作 6 特殊標(biāo)志位存儲(chǔ)器 SM 19 有只讀區(qū)域 SM0 0 SM29 7 用戶只能利用其觸點(diǎn) 和可讀寫區(qū)域 SM0 0 RUN監(jiān)控 PLC在RUN時(shí)總為1 SM0 1 初始脈沖 PLC有STOP轉(zhuǎn)為RUN時(shí) SM0 1接通一個(gè)掃描周期 SM0 3 PLC上電進(jìn)入RUN方式時(shí) SM0 3接通一個(gè)掃描周期 SM0 5 秒脈沖 占空比為50 周期為1s 6 特殊標(biāo)志位存儲(chǔ)器 SM 20 定時(shí)器是模擬繼電 接觸器控制系統(tǒng)中的時(shí)間繼電器定時(shí)器的設(shè)定值通過程序預(yù)先輸入 當(dāng)滿足定時(shí)器的工作條件時(shí) 定時(shí)器開始計(jì)時(shí) 定時(shí)器的當(dāng)前值從0開始按照一定的時(shí)間單位 定時(shí)精度 增加 例如對(duì)于10ms定時(shí)器 定時(shí)器的當(dāng)前值每隔10ms加1 當(dāng)定時(shí)器的當(dāng)前值到達(dá)設(shè)定值時(shí) 定時(shí)器動(dòng)作 三種 1ms 10ms 100msCPU22X中的定時(shí)器數(shù)量為256個(gè) 即T0 T255 7 定時(shí)器 T 21 它是用來對(duì)輸入的脈沖個(gè)數(shù)進(jìn)行累計(jì) 實(shí)現(xiàn)計(jì)數(shù)操作 使用計(jì)數(shù)器 要事先在程序中給出計(jì)數(shù)的設(shè)定值 也稱預(yù)置值 當(dāng)滿足計(jì)數(shù)器的觸發(fā)輸入條件時(shí) 計(jì)數(shù)器開始累計(jì)計(jì)數(shù)輸入端的脈沖前沿的次數(shù) 當(dāng)?shù)竭_(dá)設(shè)定值時(shí) 計(jì)數(shù)器動(dòng)作 3種類型 增計(jì)數(shù) 減計(jì)數(shù) 增減計(jì)數(shù)CPU22X中有256個(gè)計(jì)數(shù)器 即C0 C255 8 計(jì)數(shù)器存儲(chǔ)器 C 22 當(dāng)高速脈沖信號(hào)的頻率比CPU掃描的速度更快時(shí)必須要用高速計(jì)數(shù)器 CPU226模塊高速計(jì)數(shù)器的有效范圍 HC 0 5 9 高速計(jì)數(shù)器 HC 23 累加器是用來暫時(shí)存放計(jì)算中間值的存儲(chǔ)器 也可向子程序傳遞參數(shù)或返回參數(shù) S7 200PLC提供了四個(gè)32位的累加器 10 累加器 AC 24 1 立即尋址立即尋址 指令直接給出操作數(shù) 操作數(shù)緊跟操作碼 在取出指令的同時(shí)也就取出了操作數(shù) 立即尋址可以用來提供常數(shù) 設(shè)置初始值等 CPU以二進(jìn)制形式存儲(chǔ)所有常數(shù)指令中可用十進(jìn)制 十六進(jìn)制 ASC 碼或浮點(diǎn)數(shù)形式表示30216 42F INPUT 2 01011101 5 1 4尋址方式 指令中如何提供操作數(shù)或操作數(shù)地址 25 2 直接尋址 所謂直接尋址就是明確指出存儲(chǔ)單元的地址 在程序中直接使用編程元件的名稱和地址編號(hào) 使用戶程序可以直接存取這個(gè)信息 AQ0 1ORBVB33 LB21ORBAC0 VB33MOVWAC0 AQW2MOVDAC1 VD200 26 所謂間接尋址是指不是在指令中直接使用名稱和地址編號(hào) 而是通過使用指針來存取存儲(chǔ)器中的數(shù)據(jù) 可間接尋址的編程元件有 I Q M V S T和C的當(dāng)前值 對(duì)獨(dú)立的位值和模擬量值不能進(jìn)行間接尋址 建立指針對(duì)某一地址間接尋址 必須先為該地址建立指針 指針的長度是雙字長 可用作指針的編程元件有 變量存儲(chǔ)器V 局部變量存儲(chǔ)器L 累加器AC AC0不能 3 間接尋址 27 如 MOVD VB200 VD32MOVD MB10 AC2MOVD AC2 LD14 是地址符號(hào) 與編程元件編號(hào)組合表示對(duì)應(yīng)單元的32位物理地址 VB200只是一個(gè)直接地址編號(hào) 并不是它的物理地址 指令中的第二個(gè)地址數(shù)據(jù)長度必須是雙字長 如 VD LD AC將指令中 VB200改為 VW200或 VD200 由于它們的起始地址相同 所以效果完全相同 28 間接存取在操作數(shù)前加 表示該操作數(shù)為一個(gè)指針 例 建立指針和間接尋址的應(yīng)用方法MOVD VB200 AC1MOVW AC1 AC0 29 修改指針指針的內(nèi)容不會(huì)改變 可用自增或自減等指令修改指針MOVD VB200 AC1INCDAC1INCDAC1 把指針增加兩次指向下一個(gè)字MOVW AC1 AC0 INCDAC1INCDAC1 30 5 1 5用戶程序結(jié)構(gòu) 用戶程序分為 31 5 1 6編程的一般規(guī)則 1 梯形圖由多個(gè)梯級(jí)組成 每個(gè)線圈可構(gòu)成一個(gè)梯級(jí) 每個(gè)梯級(jí)有多條支路 每個(gè)梯級(jí)代表一個(gè)邏輯方程 2 梯形圖中的繼電器 接點(diǎn) 線圈不是物理的 是PLC存儲(chǔ)器中的位 1 ON 0 OFF 編程時(shí)常開 常閉接點(diǎn)可無限次引用 線圈輸出只能是一次 3 梯形圖中流過的不是物理電流而是 概念電流 只能從左向右流 4 用戶程序的運(yùn)算是根據(jù)PLC的輸入 輸出映象寄存器中的內(nèi)容 邏輯運(yùn)算結(jié)果可以立即被后面的程序使用 5 PLC的內(nèi)部繼電器不能做控制用 只能存放邏輯控制的中間狀態(tài) 6 輸出線圈不能直接驅(qū)動(dòng)現(xiàn)場的執(zhí)行元件 通過I O模塊上的功率器件來驅(qū)動(dòng) 32 33 PLC梯形圖語言的編程原則 1 梯形圖由多個(gè)梯級(jí)組成 每個(gè)線圈可構(gòu)成一個(gè)梯級(jí) 每個(gè)梯級(jí)有多條支路 每個(gè)梯級(jí)代表一個(gè)邏輯方程 2 梯形圖中的繼電器 接點(diǎn) 線圈不是物理的 是PLC存儲(chǔ)器中的位 1 ON 0 OFF 編程時(shí)常開 常閉接點(diǎn)可無限次引用 線圈輸出只能是一次 3 梯形圖中流過的不是物理電流而是 概念電流 只能從左向右流 4 用戶程序的運(yùn)算是根據(jù)PLC的輸入 輸出映象寄存器中的內(nèi)容 邏輯運(yùn)算結(jié)果可以立即被后面的程序使用 5 PLC的內(nèi)部繼電器不能做控制用 只能存放邏輯控制的中間狀態(tài) 6 輸出線圈不能直接驅(qū)動(dòng)現(xiàn)場的執(zhí)行元件 通過I O模塊上的功率器件來驅(qū)動(dòng) 34 5 2S7 200PLC的基本指令及編程方法 編程時(shí) 應(yīng)注意各操作數(shù)的數(shù)據(jù)類型及數(shù)值范圍 35 基本指令 起初是指取代傳統(tǒng)繼電器控制系統(tǒng)的那些指令 隨著PLC越來越強(qiáng) 基本指令包含的內(nèi)容也不斷擴(kuò)充 現(xiàn)在 基本指令包括 位操作指令 運(yùn)算指令 數(shù)據(jù)處理指令 表功能指令 轉(zhuǎn)換指令等 基本指令中 位操作指令是最重要的 是其它指令的基礎(chǔ) 其它指令反映了PLC對(duì)數(shù)據(jù)運(yùn)算和數(shù)據(jù)處理的能力 36 5 2 1基本邏輯指令 基本邏輯指令在語句表語言中是指對(duì)位存儲(chǔ)單元的簡單邏輯運(yùn)算 在梯形圖中指對(duì)觸點(diǎn)的簡單連接和對(duì)標(biāo)準(zhǔn)線圈的輸出1 標(biāo)準(zhǔn)觸點(diǎn)指令有LD LDN A AN O ON NOT 37 1 裝入常開指令LD 梯形圖中梯級(jí)必須開始于LD LDN 本指令對(duì)各類內(nèi)部編程元件的常開觸點(diǎn)都適用格式 LDbit 2 裝入常閉指令LD 格式 LDNbit 3 與常開指令A(yù) 與常開指令 即串聯(lián)一個(gè)常開觸點(diǎn) 梯形圖最多有7個(gè)常開觸點(diǎn)串聯(lián)格式 Abit 38 4 與常閉指令A(yù)N 與常閉指令 即串聯(lián)一個(gè)常閉觸點(diǎn) 梯形圖最多有6個(gè)常閉觸點(diǎn)串聯(lián)格式 ANbit 5 或常開指令O 或常開指令 即并聯(lián)一個(gè)常開觸點(diǎn) 梯形圖最多有7個(gè)常開觸點(diǎn)并聯(lián)格式 Obit 6 或常閉指令ON 格式 ONbit 39 7 輸出指令 將邏輯運(yùn)算結(jié)果輸出到指定存儲(chǔ)器位或輸出繼電器對(duì)應(yīng)的映像寄存器位 以驅(qū)動(dòng)本線圈 指令格式 bit 指令不能用于輸入繼電器 并聯(lián)的 指令可以連續(xù)使用 指令的操作數(shù)不能重復(fù)使用 例如 在程序中多次出現(xiàn) Q0 0 是非法的 40 41 邏輯堆棧是S7 200可編程控制器用來分析控制邏輯 用語句表編程時(shí)必須要根據(jù)這一堆棧邏輯進(jìn)行組織程序 用相關(guān)指令來實(shí)現(xiàn)堆棧操作 堆棧 是一組能夠存儲(chǔ)和取出數(shù)據(jù)的暫時(shí)存儲(chǔ)單元特點(diǎn) 后進(jìn)先出 類似于計(jì)算機(jī)中的堆棧 進(jìn)棧時(shí) 數(shù)據(jù)由棧頂壓入 堆棧中數(shù)據(jù)被串行下移一層 棧底 STACK8 原有數(shù)據(jù)丟失 出棧時(shí) 數(shù)據(jù)從棧頂取出 所有數(shù)據(jù)被串行上移一層 在STACK8中裝入一個(gè)隨機(jī)數(shù) 8 可編程控制器中的堆棧 42 棧頂是布爾型數(shù)據(jù)進(jìn)出堆棧的必由之路 棧頂在位運(yùn)算中兼做累加器 對(duì)于簡單的邏輯指令 通常是執(zhí)行進(jìn)棧 出棧操作或簡單的位運(yùn)算 這些運(yùn)算是棧頂與第二個(gè)堆棧的內(nèi)容進(jìn)行與 或 非等邏輯運(yùn)算 43 設(shè)I0 0 1 I0 1 0 I0 2 0 依次執(zhí)行LD O A指令后 堆棧的變化如下表 說明 執(zhí)行LDN AN ON指令時(shí) 是先將操作數(shù)進(jìn)行取反 再進(jìn)行LD A O操作 每執(zhí)行一次LD或LND指令 自動(dòng)進(jìn)行一次進(jìn)棧操作 執(zhí)行A或AN O或ON指令 是將棧頂值與操作數(shù)做相應(yīng)的邏輯運(yùn)算 運(yùn)算結(jié)果存放在棧頂 當(dāng)一個(gè)梯級(jí)掃描結(jié)束 或 指令執(zhí)行完畢 PLC自動(dòng)進(jìn)行出棧操作 將棧頂值存入相應(yīng)的存儲(chǔ)區(qū) 44 45 2 正負(fù)跳變指令 正負(fù)跳變指令在梯形圖中以觸點(diǎn)形式使用 用于檢測(cè)脈沖的正跳變 上升沿 或下跳變 下降沿 利用跳變讓能流接通一個(gè)掃描周期 即可產(chǎn)生一個(gè)掃描周期長度的微分脈沖 用來觸發(fā)繼電器線圈 1 正跳變指令 EU 無操作數(shù) 46 2 正負(fù)跳變指令 2 負(fù)跳變指令 ED 無操作數(shù) 47 3 置位和復(fù)位指令S Set R Reset 置位即置1 復(fù)位即置0 在使用時(shí)需指明三點(diǎn) 操作性質(zhì) 開始位和位的數(shù)量 1 置位指令 將由操作數(shù)指定的位開始 1位至最多255位置 1 并保持 指令格式 Sbit N 2 復(fù)位指令 將由操作數(shù)指定的位開始 1位至最多255位置 0 并保持 指令格式 Rbit N如果對(duì)定時(shí)器計(jì)數(shù)器復(fù)位 則復(fù)位的同時(shí) T或C的當(dāng)前值被清零 48 說明 與 指令不同 S或R指令可以多次使用同一個(gè)操作數(shù) 用S R指令可構(gòu)成S R觸發(fā)器 或用R S指令構(gòu)成R S觸發(fā)器 使用S R指令 需指定操作性質(zhì) S R 開始位 bit 和位的數(shù)量 N 開始位的操作數(shù)為 Q M SM T C V S 數(shù)量N的操作數(shù)為 VB IB QB MB SMB LB SB AC 常數(shù)等 操作數(shù)被置 1 后 必須用R指令清 0 記憶 49 立即操作指令允許對(duì)輸入和輸出點(diǎn)進(jìn)行快速和直接存取 當(dāng)用立即指令讀取輸入點(diǎn)的狀態(tài)時(shí) 相應(yīng)的輸入映像寄存器中的值并未發(fā)生更新 用立即指令訪問輸出點(diǎn)時(shí) 訪問的同時(shí) 相應(yīng)的輸出寄存器的內(nèi)容也發(fā)生更新 操作數(shù)只有 I Q1 立即觸點(diǎn)指令在LD LDN A AN O ON后加 I 形成立即讀輸入指令 執(zhí)行該指令 只是立即讀取物理輸入點(diǎn)的值 不改變輸入映像寄存器的值 LDII0 0 5 2 2立即操作指令 50 2 立即輸出指令 I執(zhí)行該指令 是將棧頂值立即復(fù)制到指令所指定的物理輸出點(diǎn) 同時(shí)刷新輸出映像寄存器的內(nèi)容 IQ0 03 立即置位指令SI執(zhí)行該指令 將從指令指定的位開始至最多128個(gè)物理輸出點(diǎn)同時(shí)立即置 1 并且刷新輸出映像寄存器的內(nèi)容 SIQ0 0 24 立即復(fù)位指令RI執(zhí)行該指令 將從指令指定的位開始至最多128個(gè)物理輸出點(diǎn)同時(shí)立即置 0 并且刷新輸出映像寄存器的內(nèi)容 RIQ0 0 2 51 52 例1 直接啟動(dòng)停車控制 繼電器控制電路圖 I O分配 I0 0 停車I0 1 啟動(dòng)Q0 1 KM 語句表LDI0 1OQ0 0ANI0 0 Q0 0 53 例2 要求用一個(gè)按鈕啟動(dòng) 停止運(yùn)轉(zhuǎn)設(shè)備方案1 設(shè)I0 0是與按鈕相連的輸入繼電器的觸點(diǎn) M0 0 M0 1 M0 2是輔助繼電器 Q0 0是驅(qū)動(dòng)設(shè)備的輸出繼電器 程序和時(shí)序如下 54 方案2 這里采用了上升沿觸發(fā)指令 55 當(dāng)梯形圖的結(jié)構(gòu)比較復(fù)雜 例如涉及觸點(diǎn)塊的操作或者涉及分支結(jié)構(gòu)時(shí) 簡單的位操作指令就無法描述 此時(shí)應(yīng)使用堆棧操作指令包括 ALD OLD LPS LRD LPP LDS 有操作數(shù) 1 堆棧載與指令 觸點(diǎn)塊串聯(lián)指令 ALDALD用于將并聯(lián)電路塊進(jìn)行串聯(lián) 5 2 3復(fù)雜邏輯指令 56 57 2 堆棧載或指令 觸點(diǎn)塊并聯(lián)指令 OLDOLD用于將串聯(lián)電路塊進(jìn)行并聯(lián)連接 58 59 60 3 邏輯入棧指令 分支或主控 LPSLPS用于復(fù)制棧頂?shù)闹挡⑦@個(gè)值推入棧頂 原堆棧中各級(jí)棧值一次下壓一級(jí) LPS用于分支開始 61 4 邏輯出棧指令 分支結(jié)束或主控復(fù)位指令 LPPLPP用于將棧頂?shù)闹祻棾?堆棧第二級(jí)的值成為新的棧頂值 LPP用于將LPS生成的新母線進(jìn)行恢復(fù) 因此必須和LPS配對(duì)使用 62 5 邏輯讀棧指令LRDLRD 用于把堆棧中第二級(jí)的值復(fù)制到棧頂 6 裝入堆棧指令LDSLDS指令在編程時(shí)很少使用 63 應(yīng)用堆棧操作指令對(duì)復(fù)雜邏輯結(jié)構(gòu)的編程舉例 64 1 取非觸點(diǎn)操作 邏輯結(jié)果取反指令 NOTNOT 用來改變能流的狀態(tài) NOT指令用于將NOT指令左端的邏輯運(yùn)算結(jié)果取非 NOT指令無操作數(shù) 5 2 4取非觸點(diǎn)指令和空操作指令 在語句表中 取反觸點(diǎn)指令對(duì)堆棧的棧頂作取反操作 改變棧頂值 65 2 空操作指令NOPNNOP 不影響用戶程序的執(zhí)行 N是標(biāo)號(hào) 0 255 LDI0 0NOP30 66 1 定時(shí)器是由集成電路構(gòu)成 是PLC中重要硬件編程元件 定時(shí)器編程時(shí)提前輸入時(shí)間預(yù)定值 當(dāng)前值達(dá)到預(yù)定值時(shí) 定時(shí)器發(fā)出動(dòng)作 有3種類型定時(shí)器 通電延時(shí)TON 有記憶 保持型 通電延時(shí)TONR 斷電延時(shí)TOF 共256個(gè) 即T0 T255定時(shí)精度3級(jí) 1ms 10ms 100ms 與編號(hào)有對(duì)應(yīng)關(guān)系 定時(shí)時(shí)間T PT S 分辨率等級(jí) 5 2 5定時(shí)器和計(jì)數(shù)器指令 67 68 對(duì)定時(shí)器分辨率的幾點(diǎn)說明 1ms分辨率定時(shí)器啟動(dòng)后 定時(shí)器對(duì)1ms的時(shí)間間隔進(jìn)行計(jì)時(shí) 當(dāng)前值每隔1ms刷新一次 不和掃描周期同步 10ms分辨率定時(shí)器啟動(dòng)后 對(duì)10ms時(shí)間間隔計(jì)時(shí) 在每個(gè)掃描周期內(nèi)對(duì)定時(shí)器當(dāng)前值刷新一次 100ms分辨率定時(shí)器啟動(dòng)后 對(duì)100ms時(shí)間間隔計(jì)時(shí) 只有在定時(shí)器指令執(zhí)行時(shí)才對(duì)當(dāng)前值刷新 69 定時(shí)器指令需3個(gè)操作數(shù) 編號(hào) 設(shè)定值 允許輸入 接通延時(shí)定時(shí)器指令TON On DelayTimer 指令格式 TONTxxx PT 編號(hào) 用定時(shí)器名稱和它的常數(shù)編號(hào) T1 設(shè)定值PT 數(shù)據(jù)類型為INT型 使能輸入 BOOL型 IN端為ON時(shí) 開始計(jì)時(shí) 當(dāng)定時(shí)時(shí)間到 定時(shí)器被置位 其動(dòng)合觸點(diǎn)接通 動(dòng)斷觸點(diǎn)斷開 當(dāng)前值遞增 只要IN端為OFF 定時(shí)器當(dāng)前值立即復(fù)位到0 相應(yīng)的 動(dòng)合觸點(diǎn)斷開 動(dòng)斷觸點(diǎn)閉合 70 定時(shí)器TON舉例 71 上電周期或首次掃描 定時(shí)器為OFF 當(dāng)前值保持指令格式 TONRTxxx PT 有記憶接通延時(shí)定時(shí)器指令TONR Retentive 可用于多個(gè)時(shí)間間隔的累計(jì)定時(shí) IN端為ON時(shí) 開始計(jì)時(shí) 到設(shè)定值時(shí)置位 如果當(dāng)前值小于設(shè)定值而IN端變?yōu)镺FF 當(dāng)前值保持 不復(fù)位 當(dāng)IN端又變?yōu)镺N時(shí) 當(dāng)前值繼續(xù)計(jì)數(shù) 當(dāng)?shù)竭_(dá)設(shè)定值時(shí) 置位 當(dāng)前值并不停止計(jì)數(shù) 它的復(fù)位 需用復(fù)位指令R 72 定時(shí)器TONR舉例 73 斷開延時(shí)定時(shí)器指令TOF Off DelayTimer 用于斷開后的單一間隔定時(shí) 故障發(fā)生后的時(shí)間延時(shí) 指令格式 TOFTxxx PT IN為ON 定時(shí)器位為ON 當(dāng)前值為0 IN為OFF 開始計(jì)時(shí) 只要當(dāng)前值小于設(shè)定值 定時(shí)器始終為0N 當(dāng)?shù)竭_(dá)設(shè)定值 定時(shí)器為OFF 當(dāng)前值等于預(yù)定值 停止計(jì)數(shù) 動(dòng)合觸點(diǎn)斷開 動(dòng)斷觸點(diǎn)閉合 如果使能IN在有從ON到OFF的負(fù)跳變 則可再次啟動(dòng) 74 定時(shí)器TOF舉例 75 舉例 書P75第9題 第一臺(tái)電動(dòng)機(jī)啟動(dòng)10S后 第二臺(tái)電動(dòng)機(jī)自動(dòng)啟動(dòng) 運(yùn)行5s后 第一臺(tái)電動(dòng)機(jī)停止 同時(shí)第三臺(tái)電動(dòng)機(jī)自動(dòng)啟動(dòng) 運(yùn)行15s后 全部電動(dòng)機(jī)停止 試編程 76 2 計(jì)數(shù)器指令計(jì)數(shù)器用來累計(jì)輸入脈沖的數(shù)量 編程時(shí)累計(jì)它的脈沖輸入端電位上升沿 正跳變 個(gè)數(shù) 達(dá)到預(yù)定值PV時(shí) 發(fā)出中斷信號(hào) 普通計(jì)數(shù)器有3種類型 遞增計(jì)數(shù)器CTU 遞減計(jì)數(shù)器CTD 增減計(jì)數(shù)器CTUD 共256個(gè) 編號(hào)C0 C255 線圈編號(hào)只能使用1次 不能重復(fù)使用 最大計(jì)數(shù)值為32767 77 當(dāng)R端為OFF時(shí) 計(jì)數(shù)器對(duì)CU端的輸入脈沖上升沿累加計(jì)數(shù) 當(dāng)前值小于設(shè)定值 計(jì)數(shù)器狀態(tài)始終為OFF 一旦到達(dá)設(shè)定值 計(jì)數(shù)器狀態(tài)變?yōu)镺N 當(dāng)計(jì)到32767 停止計(jì)數(shù) 當(dāng)R端為ON時(shí)計(jì)數(shù)器復(fù)位 遞增計(jì)數(shù)器指令CTU CounterUp 指令格式 CTUCxxx PV 78 LDI0 0LDI0 1CTUC20 3 79 首次掃描時(shí) 計(jì)數(shù)器位OFF 當(dāng)前值為預(yù)設(shè)值PV 計(jì)數(shù)器檢測(cè)到每個(gè)CD輸入的上升沿時(shí) 計(jì)數(shù)器當(dāng)前值減小一個(gè)單位 減到0時(shí) 計(jì)數(shù)器位ON 復(fù)位端有效時(shí) 計(jì)數(shù)器位OFF 當(dāng)前值為預(yù)設(shè)值 而不是0 遞減計(jì)數(shù)器指令CTD CounterDown 指令格式 CTDCxxx PV 80 LDI0 0LDI0 1CTDC8 3LDC8 Q0 0 81 首次掃描時(shí) 計(jì)數(shù)器狀態(tài)為OFF 當(dāng)前值為0 當(dāng)R端為OFF對(duì)CU端脈沖上升沿加1計(jì)數(shù) 對(duì)CD端脈沖減1計(jì)數(shù) 到達(dá)設(shè)定值時(shí) 狀態(tài)位為ON R端為ON 計(jì)數(shù)器復(fù)位 當(dāng)前值寄存器清0 當(dāng)計(jì)數(shù)器計(jì)到最大值32767后 CU端端再輸入1個(gè)脈沖 在這個(gè)脈沖的上升沿 當(dāng)前值寄存器跳變到最小值 32768 如果計(jì)數(shù)到最小值后 CD端又輸入1個(gè)脈沖 在這個(gè)脈沖的上升沿 當(dāng)前值跳變到最大值32767 增減計(jì)數(shù)器指令CTUD指令格式 CTUDCxxx PV 82 83 84 3 定時(shí)器及計(jì)數(shù)器的應(yīng)用和擴(kuò)展 1 擴(kuò)大定時(shí)范圍單個(gè)定時(shí)器最大定時(shí)范圍是32767 S 定時(shí)精度 可通過擴(kuò)展的方法來擴(kuò)大定時(shí)范圍 a定時(shí)器的串級(jí)組合如圖 T35延T1 10S T36延時(shí)T2 20S 總的延時(shí)T T1 T2 30S n個(gè)定時(shí)器串級(jí)組合 可擴(kuò)大延時(shí)范圍為T T1 T2 Tn 85 b定時(shí)器與計(jì)數(shù)器的串級(jí)組合 如圖T34延時(shí)10S M0 0每10S接通1次 即計(jì)數(shù)器每10S計(jì)數(shù)1次 當(dāng)計(jì)數(shù)到達(dá)設(shè)定值2000時(shí) 已實(shí)現(xiàn)延時(shí)2000 10S 20000S 86 2 擴(kuò)大計(jì)數(shù)范圍單個(gè)計(jì)數(shù)器的最大計(jì)數(shù)范圍是32767 可通過計(jì)數(shù)器的串級(jí)組合來擴(kuò)大計(jì)數(shù)器計(jì)數(shù)范圍 如圖C1設(shè)定值為1000C2設(shè)定值為2000當(dāng)達(dá)到C2的設(shè)定值時(shí) 對(duì)輸入脈沖I0 0的計(jì)數(shù)次數(shù)已達(dá)1000 2000 2000000次 87 舉例1 紐子開關(guān)合上后 延時(shí)10小時(shí) 燈亮 開關(guān)撥下后 燈滅 88 例 計(jì)數(shù)器應(yīng)用舉例 產(chǎn)品數(shù)量檢測(cè) 每24個(gè)產(chǎn)品機(jī)械手動(dòng)作1次 要求 每24個(gè)產(chǎn)品機(jī)械手動(dòng)作1次 延時(shí)2s 機(jī)械手電磁鐵切斷 進(jìn)入下一個(gè)循環(huán) 89 電機(jī)起動(dòng)后 R1產(chǎn)生寬度為一個(gè)掃描周期的正脈沖 使C10和T37復(fù)位 每檢測(cè)到一個(gè)產(chǎn)品 I0 2產(chǎn)生一個(gè)正脈沖 使C10計(jì)一個(gè)數(shù) 此程序機(jī)械手動(dòng)作時(shí)傳送帶并為停 如果機(jī)械手動(dòng)作 帶停會(huì)怎樣進(jìn)入下一個(gè)循環(huán) 90 舉例 南北方向的紅綠黃燈 啟動(dòng)之后 紅燈亮 亮了30s 后3s閃亮 閃亮的規(guī)律是亮0 5s滅0 5s 紅燈滅 黃燈亮 亮3s 綠燈亮 亮50s 后3s閃亮 之后循環(huán) 試編程 91 5 2 6順序控制繼電器指令 所謂順序控制 是使生產(chǎn)過程按工藝要求事先安排的順序自動(dòng)地進(jìn)行控制 S7 200CPU含有256個(gè)順序控制繼電器 S 用于順序控制 順序控制開始指令LSCR 順序控制轉(zhuǎn)移指令SCRT 順序控制結(jié)束指令SCRE 92 1 順序控制開始指令LSCR 段開始指令定義一個(gè)順序控制繼電器段的開始 操作數(shù)為順序控制繼電器位Sx y 為本段的段標(biāo)志位 為1時(shí) 允許SCR段工作 2 順序控制轉(zhuǎn)移指令SCRT該指令用來實(shí)現(xiàn)本段和另一段之間的切換3 順序控制結(jié)束指令SCRE一個(gè)SCR段必須用該指令來結(jié)束 指令格式 LSCRbitSCRTbitSCRE 93 例 控制紅 黃 綠三色燈 要求紅燈先亮 2s后綠燈亮 再過3s后黃燈亮 全亮后3min后全部熄滅 當(dāng)Sbit使能位為1時(shí) 允許SCR段工作 SCR是段開始 SCRE是段結(jié)束 94 95 5 2 7移位寄存器指令 如果移位操作使數(shù)據(jù)變?yōu)? 則零存儲(chǔ)器 SM1 0 自動(dòng)置位 移位指令影響特殊存儲(chǔ)器位 SM1 0 零 SM1 1 溢出 移位次數(shù)N為字節(jié)型數(shù)據(jù) 如果超過移位數(shù)據(jù)字長 無效 特點(diǎn) 移位數(shù)據(jù)存儲(chǔ)單元的移出端與SM1 1相連 所以最后移出的位被放到SM1 1位存儲(chǔ)單元 移位時(shí) 移出位進(jìn)入SM1 1 另一端自動(dòng)補(bǔ)0 SM1 1始終存放最后一次被移出的位 96 1 字節(jié)右移指令SRBOUT N 1 右移位指令 SHR是右移符號(hào) 該指令可用數(shù)據(jù)類型為 B W DW N是數(shù)據(jù)移的位數(shù) 這條指令是將IN端的輸入數(shù)右移N位 并對(duì)移出位自動(dòng)補(bǔ)零 最大可移位數(shù)等于數(shù)據(jù)類型指定的位數(shù) 使能有效時(shí) 把字節(jié)輸入數(shù)據(jù)右移N位后 將結(jié)果輸出到OUT所指的字節(jié)存儲(chǔ)單元 最多可移位8次 97 2 字右移指令SRWOUT N 最多16次 3 雙字右移指令SRDOUT N 98 SHL是左移符號(hào) 該指令可用數(shù)據(jù)類型為 B W DW N是數(shù)據(jù)移的位數(shù) 這條指令是將IN端的輸入數(shù)左移N位 并對(duì)移出位自動(dòng)補(bǔ)零 最大可移位數(shù)等于數(shù)據(jù)類型指定的位數(shù) 2 左移位指令 1 字節(jié)左移指令SLBOUT N 使能有效時(shí) 把字節(jié)輸入數(shù)據(jù)左移N位后 將結(jié)果輸出到OUT所指的字節(jié)存儲(chǔ)單元 最多可移位8次 99 2 字左移指令SLWOUT N 最多16次 3 雙字右移指令SLDOUT N 100 例 VB200中內(nèi)容是10101010 執(zhí)行指令SLBVB200 3之后內(nèi)容變?yōu)?SM1 0的內(nèi)容為 SM1 1的內(nèi)容為 101 移位數(shù)據(jù)存儲(chǔ)單元的移出端與另一端相連 同時(shí)又與SM1 1 溢出 相連 所以最后被移出的位被移到另一端的同時(shí) 也被放在SM1 1位存儲(chǔ)單元 實(shí)際移位次數(shù) 移位次數(shù)設(shè)定值 移位數(shù)據(jù)的位數(shù) 3 循環(huán)左移 循環(huán)右移 循環(huán)移位結(jié)果是0 SM1 0置位 最后移動(dòng)位的值同時(shí)進(jìn)入SM1 1 102 1 字節(jié)循環(huán)左移和字節(jié)循環(huán)右移指令 RLB RRB 指令格式 RLBOUT NRRBOUT N 103 2 字循環(huán)左移和字循環(huán)右移指令 RLW RRW 指令格式 RLWOUT NRRWOUT N 104 3 雙字循環(huán)左移和雙字循環(huán)右移指令 RLD RRD 指令格式 RLDOUT NRRDOUT N 105 例 設(shè)AC0 0100000000000001VW200 1110001010101101試求梯形圖程序執(zhí)行后AC0和VW200中的值 并確定SM1 0和SM1 1中的值 106 107 在梯形圖中 這個(gè)指令以功能框的形式編程 有3個(gè)輸入端 DATA為移位寄存器的數(shù)據(jù)輸入端 S BIT為組成移位寄存器的最低位 N為移位寄存器的長度 4 寄存器移位SHRB 特點(diǎn) 移位寄存器的數(shù)據(jù)類型無字節(jié)型 字型 雙字型之分 它的長度N 64 由程序指定 可正可負(fù) 移位寄存器的組成 最低位為S BIT最高位為從最低位算起 向高位數(shù) 第N位就是最高位 108 例如 移位寄存器最低位是S BIT V33 4 N 14那么移位寄存器的組成為 V33 4 V33 7 V34 0 V34 7 V35 0 V35 1 最高位是V35 1 指令格式 SHRBDATA SBIT N SHRBI0 1 V33 4 14 109 N 0時(shí) 為正向移位 即從最低位向最高位移位 N 0時(shí) 為反向移位 即從最高位向最低位移位 移位寄存器指令的功能是 當(dāng)允許輸入端EN有效時(shí) 如果N 0 則在每個(gè)EN的前沿 將數(shù)據(jù)輸入DATA的狀態(tài)移入移位寄存器的最低位S BIT 如果N 0 則在每個(gè)EN的前沿 將數(shù)據(jù)輸入DATA的狀態(tài)移入移位寄存器的最高位 移位寄存器的其它位按照N指定的方向 正向或反向 依次串行移1位 移位寄存器的移出端與SM1 1 溢出 連接 對(duì)特殊繼電器的影響是 當(dāng)移位操作結(jié)果為0時(shí) SM1 0自動(dòng)置位 SM1 1 溢出 的狀態(tài)由移出位決定 110 例 移位寄存器指令應(yīng)用如下 111 112 舉例 根據(jù)下面的梯形圖 試問這個(gè)移位寄存器共有幾位 組成情況如何 移位前移位寄存器各位為0 根據(jù)I0 0和M0 0的波形畫出Q0 0的波圖 113 舉例 用寄存器移位指令 SHRB 設(shè)計(jì)一個(gè)路燈照明系統(tǒng)的控制程序 4路燈按照L1 L2 L3 L4的順序依次點(diǎn)亮 時(shí)間間隔為1小時(shí) 114 5 2 8比較操作指令 比較指令是一種比較判斷 用于比較兩個(gè)符號(hào)數(shù)或無符號(hào)數(shù) 在梯形圖中以帶參數(shù)和運(yùn)算符號(hào)的觸點(diǎn)的形式編程 當(dāng)這兩個(gè)數(shù)比較式的結(jié)果為真時(shí) 該觸點(diǎn)閉合 運(yùn)算符有 不等于 115 指令格式 LDB VB10 VB20ABMB0 MB1OB AC1 116 1 字節(jié)比較 比較兩個(gè)字節(jié)型整數(shù)值 2 整數(shù)比較 比較兩個(gè)一字長整數(shù)值 指令格式 LDW VW10 VW20AWMW0 MW2OW AC2 1160 116 3 雙字整數(shù)比較 比較兩個(gè)雙字長整數(shù)值 指令格式 LDD VD10 VD14ADMD0 MW4OD AC0 1160000 4 實(shí)數(shù)比較 比較兩個(gè)雙字長實(shí)數(shù)值 指令格式 LDR VD10 VD18ARMD0 MW4OR AC0 1160 008 117 5 應(yīng)用舉例一個(gè)自動(dòng)倉庫存放某種雜貨 最多6000箱 需對(duì)所存的貨物進(jìn)出計(jì)數(shù) 貨物多于1000箱 燈L1亮 多于5000箱 燈L2亮 L1 L2分別用Q0 0 Q0 1控制 數(shù)值1000和5000存儲(chǔ)在VW20和VW30字存儲(chǔ)單元中 118- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
30 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 電氣控制 ppt 課件
鏈接地址:http://m.italysoccerbets.com/p-5866983.html