一 .立即類指令 二 .中斷指令 三 .高速計數器 四 .高速脈沖輸出 五. 實時鐘指令 六 .PID指令 七. 文本顯示器TD400 1.立即類指令 普通指令是按照時間節(jié)拍去采樣輸入端子狀態(tài),和刷新輸出的這樣對于需要快速處理的問題會造成反映遲緩。例如電子裝置過載能力很差,如果不及時采取措施將造成經濟損失。 立即類指令分為立即輸入和立即輸出兩大類。分別用觸點和線圈表示。 如圖 2.中斷指令 概念: 中段就是終止當前正在運行的程序,去執(zhí)行為立即響應的信號而編制的中斷服務程序,執(zhí)行完畢再返回原先終止的程序并繼續(xù)執(zhí)行。 中斷源 中斷源是指發(fā)出中斷請求的事件,又叫中斷事件。 中斷服務程序 用于處理中斷事件的子程序叫中斷服務程序。中斷服務程序不是由指令調用,而是中斷事件調用。 執(zhí)行中斷流程 編寫中斷服務程序完成后,進行相應的設置:開全局中斷,連接中斷事件即可。 主要分為: (1)中斷源 (2)中斷指令 (3)中斷程序 (4)文本顯示器 (1)中斷源分類: S7-200系列可編程控制器最多有34個中斷源, 分為三大類:通信中斷 輸入/輸出(I/O)中斷 時基中斷 注:1.中斷優(yōu)先級由高到低依次是: 通信中斷、輸入輸出中斷、時基中斷。 每種中斷中的不同中斷事件又有不同的優(yōu)先權。 主機中的所有中斷事件及優(yōu)先級如下表。 如圖 如圖 2.CPU響應中斷的原則 一個程序中總共可有128個中斷。 S7-200在任何時刻,只能執(zhí)行一個中斷程序;在中斷各自的優(yōu)先級組內按照先來先服務的原則為中斷提供服務,一旦一個中斷程序開始執(zhí)行,則一直執(zhí)行至完成,不能被另一個中斷程序打斷,即使是更高優(yōu)先級的中斷程序; 中斷程序執(zhí)行中,新的中斷請求按優(yōu)先級排隊等候,中斷隊列能保存的中斷個數有限,若超出,則會產生溢出。 (2)中斷指令 如圖 中斷程序是為處理中斷事件而事先編好的程序。中斷程序不是由程序調用,而是在中斷事件發(fā)生時由操作系統(tǒng)調用。 注意: (1)在中斷程序中禁止使用DISI、ENI、HDEF、LSCR、END指令。 (2)中斷程序最后一條指令一定是無條件返回指令RETI(省略),也可以是有條件返回指令CRETI結束中斷程序。 編寫由I0.0的上升沿產生的中斷事件的初始化程序。 主程序:電動機起保停電路,I0.0是停止按鈕。 編寫中斷服務程序:中斷發(fā)生后Q0.1置位報 警。 連接中斷:用SM0.1驅動ATCH連接中斷事件0,驅動(ENI)開全局中斷。 如圖 1.定時器中斷 S7-200有2個定時中斷:2個定時器中斷。 定時中斷中斷0事件號10,定時中斷1事件號11,主要用于對輸出端的間隔采樣,由SMB34給出采樣間隔時間,在1~255ms之間。 定時中斷T32中斷和定時器T96中斷,等于設定值發(fā)生中斷。間隔時間可以在1~32000ms之間采樣或定時。 例:編程定時器T32中斷,實現(xiàn)跑馬燈效果 用SM0.1連接開全局中斷ENI和連接事件號21。連接自激勵形式定時器給設定值SMW28。用循環(huán)移位指令編寫子程序。 如圖 三 .高速計數器 采用普通的計數器,其輸入脈沖的頻率要顯著低于PLC掃描的頻率。在進行電動機的轉角控制時,常常使用編碼器輸出電機轉動信息,編碼器的A、B脈沖的頻率很高上百KHz,只能使用PLC內部的高速計數器對脈沖計數。高速計數器計數速度不受掃描的影響,采用中斷方 1.高速計數器介紹 高速計數器在程序中使用時的地址編號用HCn來表示(在非程序中有時用HSCn),HC表編程元件名稱為高速計數器,n為編號。 如圖 1.2高速計數器輸入端的連接 高速計數器中斷事件大致分為3類:當前值等于預設值中斷、輸入方向改變中斷和外部復位中斷。所有高速計數器都支持當前值等于預設值中斷。 如圖 2. 高速計數器的工作模式 如圖 注:高速計數器有6種編號,12種工作模式. HSC0和HSC4有模式0、1、3、4、6、7、8、9、10; HSC1和HSC2有模式0、1、2、3、4、5、6、7、8、9、10、11; HSC3和HSC5只有模式0。 3.高速計數器的控制字和狀態(tài)字 如圖 4.高速計數器的使用 每個高速計數器都有固定的特殊功能存儲器與之相配合,完成高速計數功能。 如圖 4.1高速計數指令 (1)HDEF指令 HDEF,定義高速計數器指令。使能輸入有效時,為指定的高速計數器分配一種工作模式,即用來建立高速計數器與工作模式之間的聯(lián)系。 梯形圖指令盒中有兩個數據輸入端:HSC,高速計數器編號,為0~5的常數,字節(jié)型; MODE,工作模式,為0~11的常數,字節(jié)型。 如圖 (2)HSC指令 HSC,使用高速計數器指令。 使能輸入有效時,根據高速計數器特殊存儲器位的狀態(tài),并按照HDEF指令指定的工作模式,設置高速計數器并控制其工作。 梯形圖指令盒數據輸入端N:高速計數器編號,為0~5的常數,字型。 如圖 5.高速計數器使用原理 原理: 每個高速計數器都有一個32位當前值和一個32位預置值,當前值和預設值均為帶符號的整數值。要設置高速計數器的新當前值和新預置值,必須設置控制字節(jié)令其第五位和第六位為1,允許更新預置值和當前值,新當前值和新預置值寫入特殊內部標志位存儲區(qū)。然后執(zhí)行HSC指令,將新數值傳輸到高速計數器。 6.高速計數器指令初始化 (1)用首次掃描時接通一個掃描周期的特殊內部存儲器SM0.1去調用一個子程序,完成初始化操作。 (2) 在初始化的子程序中,根據希望的控制設置控制字(SMB37、SMB47、SMB137、SMB147、SMB157) (3)執(zhí)行HDEF指令,設置HSC的編號(0-5),設置工作模式(0-11)。 (4) 用新的當前值寫入32位當前值寄存器(SMD38,SMD48,SMD58 ,SMD138, SMD148, SMD158)。 (5)用新的預置值寫入32位預置值寄存器(SMD42 ,SMD52, SMD62, SMD142 ,SMD152, SMD162) (6)、 (7) 、(8)中斷事件(事件13、14、15)與一個中斷程序相聯(lián)系。 (9)執(zhí)行全局中斷允許指令(ENI)允許HSC中斷 (10)執(zhí)行HSC指令使S7-200對高速計數器進行編程。 (11)結束子程序。 高速計數器的應用舉例 (1)主程序 如圖 (2)初始化的子程序 如圖 7.高速計數編程向導 從SETP7編程軟件的主菜單“工具”—指令向導—HSC進入高速計數器編程向導。按照要求一步一步輸入相應參數,就可以完成高速計數器編程,無需記憶相關的特殊功能寄存器。 四、高速脈沖輸出介紹 1.在PLC的應用中可以通過PWM調制方式輸出模擬量,如直流電動機調速;還可以通過設定輸出脈沖的個數用于步進電動機的控制;這些脈沖的頻率較高,這就是高速脈沖輸出。 2.高速脈沖有指定的輸出端,一般是Q0.0和Q0.1,必須是晶體管輸出型PLC,而繼電器輸出的PLC沒有高速脈沖輸出端口。 3.高速脈沖相關的特殊功能繼電器 如圖 (1)高速脈沖串輸出PTO 功能:能夠指定輸出方波的個數,其輸出脈沖的周期由特殊寄存器設定。 1.周期和脈沖數 2.PTO的種類 3.中斷事件類型 4.PTO的使用 如圖 PTO相關的特殊寄存器 SMW68用于設定Q0.0輸出脈沖的周期2~65535ms。 SMW78用于設定Q0.1輸出脈沖的周期。 SMD72用于設定Q0.0輸出脈沖的個數:0~4294976295。 SMD82用于設定Q0.1輸出脈沖的個數。 SM67.3/ SM77.3分別用于設定Q0.0/Q0.1的PTO的時基us或ms。 用于設定Q0.1PTO的時基us或ms。 SM67.6、SM77.6分別用于Q0.0/Q0.1PTO/PWM方式的選擇,0為PTO模式,1為PWM模式。 SM67.7、SM77.7用于設定Q0.0、Q0.1高速輸出0禁止1允許。 (2)PWM調制 PWM調制是輸出頻率和占空比可調的高速脈沖。 利用PWM調制經過濾波可以獲得模擬電量輸出,用于調節(jié)光源亮度或直流電動機的轉速。 周期和脈沖寬度的時基可以微妙或毫秒,設定數值為16位無符號數。周期的范圍在50~65535us到2~65535ms之間,脈沖寬度在0~65535us到0~65535ms之間。 PWM脈沖只能從Q0.0或者Q0.1兩者之間選擇輸出。 相關特殊寄存器 在SMW68(Q0.0輸出)或SMW78(Q0.1輸出)中寫入周期字。 在SMW70(Q0.0輸出)或SMW80(Q0.1輸出)中寫入脈寬值。 注:高速脈沖輸出的編程向導 高速脈沖輸出可以使用編程向導自動生成程序,也可以使用指令編寫程序。 由于需要設定特殊功能寄存器數值,可以設一初始化子程序。 編程向導使用與高速計數器相似。 五、 時鐘指令 利用時鐘指令可以實現(xiàn)調用系統(tǒng)實時鐘或對時鐘進行設定,用于運行記錄、實時控制。 實時鐘指令有兩條:讀實時鐘和設定實時鐘。設定實時鐘是用于對表校準,讀實時鐘可用于定時采樣記錄或實時控制。 T是VBXX開始的8個字 節(jié)緩沖區(qū)。從低到高分 別對應:年、月、日、 時、分、秒、周。 如圖 六、 PID指令 現(xiàn)在很多PLC都有供PID控制用的功能指令。如S7-200的控制指令,它實際運用于PID控制子程序與模擬量輸入/輸出模塊一起使用,可以得到類似于使用PID控制模塊的效果 七. 文本顯示器TD400 文本顯示集簡易鍵盤與LCD顯示于一體,可以通過鍵盤按鍵代替部分操作按鈕,通過顯示屏顯示變量、漢字,還可以對變量進行修改。 使用STEP7的編程向導既可以完成TD400的組態(tài),操作簡單使用方便,成本低應用廣泛。 如圖 例:遞進式練習 任務:1.設計一個用開關指令實現(xiàn)的單按鈕控制。 任務分析:兩個起保停電路,一個實現(xiàn)啟動控制,一個實現(xiàn)停止控制。要用第一條網絡用于停止控制,第二條用于啟動控制。兩個網絡相互控制。 如圖 2.電路改進 用于停止控制的自保還可以去掉。 如果改變順序,則將先執(zhí)行啟動,然后立即執(zhí)行停止,因此電路將不能啟動 如圖 3.單按鈕兩臺電動機控制 第一次按按鈕時,由于Q0.1沒有閉合,因此只能執(zhí)行第三條網絡,啟動第一臺電動機。 第二次按按鈕,由于Q0.0已經閉合,因此第二條網絡被執(zhí)行,啟動第二臺電動機。 第三次按按鈕時,由于Q0.1閉合,因此M0.0閉合,于是第一臺、第二臺停止。 如圖 改造情況如下: 用M0.1的常閉觸點控制Q0.0,實現(xiàn)了第三次按按鈕時,M1停止。 由于停止Q0.0時會影響網絡三,因此用M0.1常閉觸點與Q0.0常開并聯(lián)。為了按第四次時Q0.1能停止,再串M0.0常閉即可。 這樣你能夠做出單按鈕三臺電動機順序啟動、順序停止控制電路么? 如圖 4.采用軟件延時的流水燈控制 內嵌兩個循環(huán),總次數達到900000000次,不能仿真,只能下載到PLC中。 如圖 |
|
來自: 龍之吻6iinxl8c > 《運動控制PLC相關》