




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、TwinCAT PLC ControlIEC 61131-3 編程編程熱線電話:熱線電話Q:2900048702022-3-6德國倍福電氣有限公司上海代表處Page 2TwinCAT RuntimeTwinCAT System ManagerTwinCAT PLCTwinCAT NC/CNCTwinCATTotal Windows Control and Automation Technology2022-3-6德國倍福電氣有限公司上海代表處Page 3 國際上承認的標準國際上承認的標準 逐步的在不遠的將來所有供應商將采用它逐步的在不遠的將來所有供應商將采用它 統一的
2、結構統一的結構, 語言和操作處理方式將來自所有供應商語言和操作處理方式將來自所有供應商 它節(jié)省你的時間它節(jié)省你的時間 統一的軟件模式和數據類型概念統一的軟件模式和數據類型概念 對來自不同的對來自不同的PLC類型你只需學習一次類型你只需學習一次 減少了誤解和錯誤減少了誤解和錯誤 標準的函數和功能塊標準的函數和功能塊 測試軟件的可重復使用性測試軟件的可重復使用性IEC(International Electrotechnical Commission)61131-3是 IEC 61131國際標準的第三部分,是第一個為工業(yè)自動化控制系統的軟件設計提供標準化編程語言的國際標準。IEC 61131-3的
3、優(yōu)勢的優(yōu)勢2022-3-6德國倍福電氣有限公司上海代表處Page 4 支持安全和高質量編程設計支持安全和高質量編程設計 輕松和舒適的結構輕松和舒適的結構 數據類型避免了編程錯誤數據類型避免了編程錯誤 對每個問題提供了最佳編程語言對每個問題提供了最佳編程語言 一致的一致的 5 種編程語言規(guī)范種編程語言規(guī)范 文本和圖形語言文本和圖形語言 高級語言的可用性高級語言的可用性 不同語言混合編程不同語言混合編程 IEC 61131-3的優(yōu)勢的優(yōu)勢2022-3-6德國倍福電氣有限公司上海代表處Page 5 PLCopen是使是使PLC軟件不依靠于供應商和獨立于產品的世界軟件不依靠于供應商和獨立于產品的世界組
4、織組織. 它通過發(fā)布和強化它通過發(fā)布和強化IEC 61131-3 軟件開發(fā)標準軟件開發(fā)標準, 給工業(yè)給工業(yè)控制系統的用戶帶來很大的價值控制系統的用戶帶來很大的價值. IEC 61131 標準給出了可依據的準則標準給出了可依據的準則 資格證書給用戶提供了通向真正資格證書給用戶提供了通向真正 IEC 61131-3 編程系統的引編程系統的引導導 (例如例如 PLC開放資格表列出符合該標準的產品開放資格表列出符合該標準的產品)PLCopen國際組織是國際組織是一個獨立于制造商和產品的國際組織,一個獨立于制造商和產品的國際組織,總部位于荷蘭。致力于總部位于荷蘭。致力于IEC 61131標準的推廣并取得
5、了很大成功。標準的推廣并取得了很大成功。PLCopen 組織組織2022-3-6德國倍福電氣有限公司上海代表處Page 6 為消除混亂為消除混亂, PLCopen. 已規(guī)定了已規(guī)定了3 層具有特性建立的編譯層具有特性建立的編譯 . 已規(guī)定了鑒定資格程序已規(guī)定了鑒定資格程序. 有了資格測試協會有了資格測試協會. 開發(fā)好的測試軟件開發(fā)好的測試軟件, 在成員中共享在成員中共享. 已規(guī)定了證書程序已規(guī)定了證書程序. 并有了已被鑒定產品的成員并有了已被鑒定產品的成員PLCopen 組織組織2022-3-6德國倍福電氣有限公司上海代表處Page 7應用程序應用程序FB變量變量編碼體編碼體功能塊功能塊變量變
6、量編碼體編碼體功能塊功能塊變量變量編碼體編碼體應用程序應用程序FB變量變量編碼體編碼體功能塊功能塊變量變量編碼體編碼體功能塊功能塊變量變量編碼體編碼體整個編譯層整個編譯層 (未來目標未來目標)可轉載的應用程序攜帶層攜帶層(正在進行正在進行)可轉載的函數 (功能塊) 庫基本層基本層 (已存在已存在)可轉載的最小系統PLCopen 組織組織2022-3-6德國倍福電氣有限公司上海代表處Page 8IEC61131-1 通用信息(1992)IEC61131-2 裝置要求與測試(1992) IEC61131-3 編程語言(1993)IEC61131-4 用戶導則(1995)IEC61131-5 通信服
7、務規(guī)范(2000)IEC61131-7 模糊控制編程軟件工具實施(2000)IEC61131-8 IEC61131-3語言實現導則(2001)2000年8月由PLCopen組織向IEC提出增加IEC61131-X 功能 安全性,目前尚處在草案階段。IEC 61131 概況2022-3-6德國倍福電氣有限公司上海代表處Page 9 在這個標準中的定義和術語在這個標準中的定義和術語 相關相關 / 參照參照 IEC 標準的列表標準的列表 可編程控制器系統的主要功能特性可編程控制器系統的主要功能特性通用信息通用信息IEC 61131 標準 第1部2022-3-6德國倍福電氣有限公司上海代表處Page
8、10 對可編程控制器和關聯外設的電氣對可編程控制器和關聯外設的電氣,機械和功能要求機械和功能要求 服務服務, 儲存和運輸條件儲存和運輸條件 廠商提供的資料廠商提供的資料 為確認可編程控制器和關聯外設資格的測試方法和程序為確認可編程控制器和關聯外設資格的測試方法和程序裝置要求與測試裝置要求與測試IEC 61131 標準 第2部2022-3-6德國倍福電氣有限公司上海代表處Page 11 軟件軟件-, 通訊通訊- 和和 編程編程-模式模式 5 種內部連接編程語言的定義種內部連接編程語言的定義 兩種文本和兩種圖形語言的語法和語句兩種文本和兩種圖形語言的語法和語句: 指令表指令表 (IL), 結構化文
9、本結構化文本 (ST), 梯形圖梯形圖 (LD) 和功能塊圖和功能塊圖(FBD) 順序功能圖順序功能圖 (SFC) -為組建程序結構為組建程序結構編程語言編程語言IEC 61131 標準 第3部2022-3-6德國倍福電氣有限公司上海代表處Page 12幫助用戶在幫助用戶在: 利用可編程控制器標準的其它部分利用可編程控制器標準的其它部分 為應用程序詳細說明需求為應用程序詳細說明需求 選擇和實現系統選擇和實現系統用戶導則用戶導則IEC 61131 標準 第4部2022-3-6德國倍福電氣有限公司上海代表處Page 13 基于基于 MMS (制造商信息規(guī)范制造商信息規(guī)范)通信服務規(guī)范通信服務規(guī)范I
10、EC 61131 標準 第5部2022-3-6德國倍福電氣有限公司上海代表處Page 14 從上至下或從底向上的編程從上至下或從底向上的編程 以程序組織單元為單位以程序組織單元為單位 (POUs) Program Organization Unit 逐級構建程序逐級構建程序良好的結構良好的結構IEC 61131 主要特性2022-3-6德國倍福電氣有限公司上海代表處Page 15 編譯器探測不同數據類型的分配編譯器探測不同數據類型的分配 減少編程錯誤減少編程錯誤強大的數據類型測定強大的數據類型測定IEC 61131 主要特性2022-3-6德國倍福電氣有限公司上海代表處Page 16 不同的任
11、務具有不同的優(yōu)先級和不同的不同的任務具有不同的優(yōu)先級和不同的PLC循環(huán)時間循環(huán)時間全執(zhí)行控制全執(zhí)行控制IEC 61131 主要特性2022-3-6德國倍福電氣有限公司上海代表處Page 17 功能流程圖功能流程圖 具有步驟具有步驟, 動作和轉移的流序動作和轉移的流序 可選分枝和同步分枝流程可選分枝和同步分枝流程復雜的流程控制復雜的流程控制IEC 61131 主要特性2022-3-6德國倍福電氣有限公司上海代表處Page 18 用戶定義數據元素用戶定義數據元素 包含不同的基本的或用戶定義的數據元素包含不同的基本的或用戶定義的數據元素 通過自己的通過自己的POU傳遞數據結構傳遞數據結構 數據結構數
12、據結構IEC 61131 主要特性2022-3-6德國倍福電氣有限公司上海代表處Page 19 兩種文本語言(兩種文本語言(IL,ST) 三種圖形語言三種圖形語言 (FBD,LD,SFC) 針對問題選擇適當的語言針對問題選擇適當的語言靈活的語言選擇靈活的語言選擇IEC 61131 主要特性2022-3-6德國倍福電氣有限公司上海代表處Page 20 服從服從 IEC 61131-3標準標準 基本層鑒定基本層鑒定 (PLCopen) 輸入輸入/輸出接口輸出接口獨立于供應商的軟件獨立于供應商的軟件IEC 61131 主要特性2022-3-6德國倍福電氣有限公司上海代表處Page 21變量功能塊FB
13、配配 置置FB2程序程序 P1程序程序 P2任務任務1任務任務2資源資源訪問路徑訪問路徑FB1FB4程序程序 P3程序程序 P4任務任務3任務任務4資源資源FB3全局和直接地址變量全局和直接地址變量通訊功能通訊功能IEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 22 最高層,最高層,描述了整個控制系統的架構。描述了整個控制系統的架構。 一個配置可被比作一個可編程控制器系統。一個配置可被比作一個可編程控制器系統。在一個配置里可以定義一個或幾個資源。在一個配置里可以定義一個或幾個資源。 在在TwinCAT 中中 一個或多個一個或多個PLC配置配置 Configu
14、rationIEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 23 一個配置有一個或多個資源一個配置有一個或多個資源 “實質實質” PLC: 自己的全局變量自己的全局變量, POU, 任務等任務等. 在在 TwinCAT: 就是一個就是一個 PLC 運行核運行核 (Runtime)資源資源 ResourcesIEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 24 對一個相關程序的周期的執(zhí)行對一個相關程序的周期的執(zhí)行,實施控制單元實施控制單元 一個資源有一個或多個任務一個資源有一個或多個任務 有優(yōu)先級時序排列(有優(yōu)先級時序排列(
15、03,共四個級別),共四個級別) 優(yōu)先權和循環(huán)時間優(yōu)先權和循環(huán)時間 任務調用一個或多個程序任務調用一個或多個程序 任務決定了所關聯程序的時間調度。任務決定了所關聯程序的時間調度。任務任務 TaskIEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 25程序,是根據控制器過程的需要,包含了函數和功能塊的程序,是根據控制器過程的需要,包含了函數和功能塊的一個邏輯組合的一個邏輯組合的POU。任務調用程序任務調用程序 程序調用功能塊和函數程序調用功能塊和函數TwinCAT: 程序調用其它程序程序調用其它程序程序程序 ProgramIEC 61131 軟件模型2022-3
16、-6德國倍福電氣有限公司上海代表處Page 26 程序調用功能塊程序調用功能塊 功能塊可調用功能塊或函數功能塊可調用功能塊或函數 FB 有輸入有輸入, 輸出變量輸出變量 FB 有運算法則有運算法則:每次每次FB被執(zhí)行被執(zhí)行,就是運行一段程序編碼就是運行一段程序編碼功能塊功能塊 (FB) Function BlockIEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 27 程序或功能塊可調用函數程序或功能塊可調用函數 函數有輸入變量函數有輸入變量, 和一個輸出變量和一個輸出變量 函數有運算法則函數有運算法則:每次函數被執(zhí)行每次函數被執(zhí)行,就是運行一段程序編碼就是運
17、行一段程序編碼 函數可以調用另外的函數,但不能調用功能塊函數可以調用另外的函數,但不能調用功能塊函數函數 FunctionIEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 28FB: 例程例程, 全部數據分配內存地址全部數據分配內存地址 函數函數: 沒有指定的內存分配地址沒有指定的內存分配地址 FB: 多個輸出變量或沒有輸出變量多個輸出變量或沒有輸出變量函數函數: 一個輸出變量一個輸出變量FB:可調用功能塊或函數:可調用功能塊或函數函數函數:可調用函數,但不能調用功能塊可調用函數,但不能調用功能塊功能塊和函數之間的區(qū)別功能塊和函數之間的區(qū)別IEC 61131
18、軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 29 變量在一個變量在一個POU (程序程序, 功能塊或函數功能塊或函數)中定義說明中定義說明. 只能在這個只能在這個POU中訪問中訪問局部變量局部變量IEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 30 變量在一個資源變量在一個資源(PLC 運行核運行核-runtime)中定義說明中定義說明 每個每個POU都可訪問都可訪問全局變量全局變量IEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 31 具有具有固定地址的變量固定地址的變量 地址:輸入地址:輸入 (I),
19、 輸出輸出 (Q) , 標記標記 (M) 類型:位類型:位 (X), 字節(jié)字節(jié) (B), 字字 (W) , 雙字雙字 (D) 例如例如: %IW12, %QX1.1, %MB5直接描述變量直接描述變量IEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 32 所有變量被初始化所有變量被初始化 默認初始值或用戶定義的初始值被分配給所有變量默認初始值或用戶定義的初始值被分配給所有變量 使能所有任務使能所有任務, 開始執(zhí)行任務開始執(zhí)行任務“冷冷“ 啟動啟動IEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 33 不進行變量初始化不進行變量
20、初始化 原值被使用原值被使用使能所有任務使能所有任務, 開始執(zhí)行任務開始執(zhí)行任務“熱熱“ 啟動啟動IEC 61131 軟件模型2022-3-6德國倍福電氣有限公司上海代表處Page 34 字母不分大小寫字母不分大小寫 (abc = Abc = ABC) 語法術語關鍵字是敏感字母語法術語關鍵字是敏感字母, 總是大寫字母總是大寫字母 沒有特殊的國家字符沒有特殊的國家字符 限制字符設定限制字符設定IEC 61131 共有特性2022-3-6德國倍福電氣有限公司上海代表處Page 35 第一個字符不能是數字第一個字符不能是數字 不能連續(xù)使用多于一個的下劃線不能連續(xù)使用多于一個的下劃線 (_) 允許的允
21、許的: ab_c, AB_de, _AbC 不允許的不允許的: 1abc, _abc, a_bc 頭頭 32 個字符有意義個字符有意義 標識符標識符IEC 61131 共有特性2022-3-6德國倍福電氣有限公司上海代表處Page 36 特殊字特殊字( 如如 FUNCTION) 被保留被保留語法術語關鍵字總是大寫字母語法術語關鍵字總是大寫字母 你不能使用語法術語關鍵字作標識符你不能使用語法術語關鍵字作標識符 語法術語關鍵字語法術語關鍵字IEC 61131 共有特性2022-3-6德國倍福電氣有限公司上海代表處Page 37 注釋語用注釋語用 (* 和和 *) 框住框住 可將注釋語放在任何地方可
22、將注釋語放在任何地方, 但不能插在語句中但不能插在語句中 對語句表對語句表 (IL)有些限制有些限制 注釋語允許幾行表示注釋語允許幾行表示 注釋語不允許嵌套注釋語不允許嵌套注釋注釋IEC 61131 共有特性2022-3-6德國倍福電氣有限公司上海代表處Page 38 不同的基本的數據類型不同的基本的數據類型 數據類型有整數數據類型有整數, 浮點數浮點數, 位和位組位和位組, 時間和日期值時間和日期值 和字符串和字符串數據類型數據類型IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 39類型名類型名描述描述 占用內存占用內存 SINT短整型短整型 8 IN
23、T整型整型16 DINT雙整型雙整型 32 LINT長整型長整型 64(not available) USINT無符號短整型無符號短整型 8 UINT無符號整型無符號整型16 UDINT無符號雙整型無符號雙整型 32 ULINT無符號長整型無符號長整型 64(not available)整型整型IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 40 允許十進制允許十進制, 十六進制十六進制(16#), 八進制八進制(8#) 和和 二進制二進制(2#) 表示表示 可用下劃線可用下劃線 (_) 作單元分隔作單元分隔 對對INT的十進制表示的十進制表示:-123
24、, +234, 0, 1_000 對對INT的十六進制表示的十六進制表示: 16#F1, 16#0A_1B 對對INT的二進制表示的二進制表示:2#0001_0011_0111_1111整型表示整型表示IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 41類型名類型名描述描述 占用內存占用內存 REAL實數實數 32 LREAL 長實數長實數 64 浮點數類型浮點數類型IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 42 十進制小數或指數表示十進制小數或指數表示 1000.23 ; 1.23e3 ; 1.23E3 和
25、和 1.23E03 是同樣的是同樣的浮點數浮點數 (實數實數) 表示表示IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 43類型名類型名描述描述 占用內存占用內存 TIME時間時間 32時間數據類型時間數據類型IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 44 在文字前加在文字前加 TIME#, t# 或或 T# 允許溢出允許溢出 (例如例如 25 小時小時) 使用使用d 表示天表示天, h 表示小時表示小時, m 表示分表示分, s 表示秒和表示秒和 ms 表示毫秒表示毫秒 可使用下劃線可使用下劃線 (_) 作
26、單元分隔作單元分隔 T#2d_26h_4m_12s_123ms持續(xù)時間表示持續(xù)時間表示IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 45類型名類型名 描述描述 占用內存占用內存DATE 日期日期32TIME_OF_DAY或或 TOD 一天中的時間一天中的時間32DATE_AND_TIME或或 DT 日期和時間日期和時間32日期和時間數據類型日期和時間數據類型IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 46 用用 DATE# 或或 D# 表示日期表示日期 用用 TIME_OF_DAY# 或或 TOD# 表示一天
27、中的時間表示一天中的時間 用用 DATE_AND_TIME# 或或 DT# 表示日期和時間表示日期和時間 日期日期: D#1998-12-07 表示表示 7th July 1998 一天中的時間一天中的時間: TOD#12:00:00.123日期和時間日期和時間: DT#1998-12-07-12:00:00.123日期和時間表示日期和時間表示IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 47類型名類型名描述描述 占用內存占用內存STRING字符串字符串 取決于字符長度(取決于字符長度(N+1)Byte字符串數據類型字符串數據類型IEC 61131 基
28、本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 48 用用 引括字符引括字符 用用 $ 插到特殊字符前插到特殊字符前 (換行換行$L , 制表制表$T等等)字符串表示字符串表示:this is a line feed character $L 空字符串空字符串: 字符串表示字符串表示IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 49類型名類型名描述描述 占用內存占用內存BOOL bit 1BYTE 8 位位 8WORD16 位位 16DWORD32 位位 32LWORD64 位位 64 (not available)位和位組數據類型位
29、和位組數據類型IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 50 TRUE 或或 1 FALSE 或或 0 用十進制用十進制, 十六進制十六進制, 八進制八進制 或或 二進制表示二進制表示 字字 - WORD:234, 16#ff, 2#1001_1100_0011_1111位和位組表示位和位組表示IEC 61131 基本數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 51 根據基本數據類型或其它用戶定義的數據類型建立自己根據基本數據類型或其它用戶定義的數據類型建立自己 的數據類型的數據類型 用一個用一個 TYPE . END_TYPE
30、 結構框架定義你的數據類結構框架定義你的數據類TYPEmyOwnReal :REAL;END_TYPETYPEmyArray:ARRAY0.1000 OF BOOL;END_TYPE IEC 61131 派生數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 52 根據基本數據類型或其它用戶定義的數據類型建立自己的根據基本數據類型或其它用戶定義的數據類型建立自己的 數據結構類型數據結構類型 用一個用一個 STRUCT . END_STRUCT 結構框架定義你的結結構框架定義你的結 構數據類型構數據類型 TYPE myStruct:STRUCTstatus:BOOL;inputVal
31、ue:REAL;END_STRUCTEND_TYPEIEC 61131 派生數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 53 建立自己的枚舉數據類型建立自己的枚舉數據類型 用括弧中的變量數值定義你的枚舉數據類型用括弧中的變量數值定義你的枚舉數據類型TYPE Modes:(Initialisation := 0, Running := 1, Idle, Reset, Faulty);END_TYPE Initialisation = 0, Running = 1.IEC 61131 派生數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 54 數組是一個具有同樣數
32、據類型數組是一個具有同樣數據類型(基本類型或用戶定義類型基本類型或用戶定義類型)的的 數值集合數值集合 允許三維數組允許三維數組TYPE matrix:ARRAY1.23, 0.1 OF INT;END_TYPEIEC 61131 派生數據類型2022-3-6德國倍福電氣有限公司上海代表處Page 55 具有基本類型或用戶定義類型的局部和全局變量具有基本類型或用戶定義類型的局部和全局變量 用一個用一個 VAR.END_VAR 結構框架聲明變量結構框架聲明變量 同樣數據類型的變量用逗號列出同樣數據類型的變量用逗號列出 VARa,b,c :REAL;d,e:BOOL;f:ARRAY1.12 OF
33、BOOL;END_VARIEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 56 在在程序程序,函數或功能塊函數或功能塊(FB)中的中的輸入變量輸入變量 用一個用一個 VAR_INPUT.END_VAR 結構框架聲明變量結構框架聲明變量VAR_INPUTa,b,c:REAL;END_VARIEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 57 在程序和功能塊在程序和功能塊(FB)中的中的輸出變量輸出變量 用一個用一個 VAR_OUTPUT.END_VAR 結構框架聲明變量結構框架聲明變量VAR_OUTPUTd,e:INT;END_VAR
34、IEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 58在程序和功能塊在程序和功能塊(FB)中的輸入和中的輸入和輸出變量輸出變量 在在 POU內部允許更改變量內部允許更改變量 用一個用一個 VAR_IN_OUT.END_VAR 結構框架聲明變量結構框架聲明變量VAR_IN_OUTx:STRING;END_VARIEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 59 全局變量全局變量 允許從所有允許從所有 POU 中讀寫的變量中讀寫的變量用一個用一個 VAR_GLOBAL.END_VAR 結構框架聲明變量結構框架聲明變量VAR_GLOBA
35、Lvar:UDINT;END_VARIEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 60 變量屬性變量屬性 RETAIN:在關電后在關電后,值被保存值被保存.并且并且TwinCAT啟動啟動 后后,值恢復值恢復. CONSTANT:值不能被修改值不能被修改 AT:變量被指配存儲器位置變量被指配存儲器位置 (固定地址固定地址)IEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 61 直接表示變量直接表示變量 以字符以字符 % 起始起始 第二個字符為第二個字符為 I 對應對應 輸入地址區(qū)輸入地址區(qū)INPUT, Q 對應對應 輸出地址區(qū)輸出地
36、址區(qū)OUTPUT和和 M 對應對應 內存地址區(qū)內存地址區(qū)MEMORY 標識符標識符 AT 地址地址 :數據類型數據類型 ;%I%Q%MAT標識符標識符XBWDByteData typeByteBitIEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 62 直接表示變量直接表示變量 第三個字符為第三個字符為 X 對應對應 位位, B 對應對應 字節(jié)字節(jié), W 對應對應 字字, D 對應對應 雙字和雙字和 L 對應對應 長字長字 (not available). 例如例如: %IB24, %QX1.1, %MW12IEC 61131 變量2022-3-6德國倍福電氣有限
37、公司上海代表處Page 63 直接表示變量直接表示變量 地址可以交迭地址可以交迭 %MB12 是是%MW12 的第一個字節(jié)的第一個字節(jié),也是也是%MD12 的第一個字節(jié)的第一個字節(jié) %MX12.0 是是 %MB12 的第一位的第一位IEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 64 變量初值設定變量初值設定 每個變量在啟動期間被賦初值每個變量在啟動期間被賦初值 所有變量可改變默認初值所有變量可改變默認初值 VARa:INT := 13;b:STRING := this is a string;c:REAL := 1.1;END_VARIEC 61131 變量2
38、022-3-6德國倍福電氣有限公司上海代表處Page 65 派生數據類型變量的初值設定派生數據類型變量的初值設定 結構結構: 用括弧和對每個成員名賦初值用括弧和對每個成員名賦初值VARa: myStruct := (status := TRUE,inputValue := 2.5);END_VARIEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 66 派生數據類型變量的初值設定派生數據類型變量的初值設定 數組數組: 使用逗號分隔設定多重初值使用逗號分隔設定多重初值VARa: ARRAY1.10 OF INT :=1, 2, 2, 4, 5, 6, 7, 8, 9,
39、10;END_VARIEC 61131 變量2022-3-6德國倍福電氣有限公司上海代表處Page 67 內部數據不存儲內部數據不存儲 幾個輸入值幾個輸入值 一個輸出值一個輸出值 用戶定義的函數可以用各種語言編輯代碼用戶定義的函數可以用各種語言編輯代碼 (除了除了SFC) 函數名必須是返回值的名函數名必須是返回值的名IEC 61131 函數2022-3-6德國倍福電氣有限公司上海代表處Page 68例如例如FUNCTION Average:REAL(* variable declaration *)VAR_INPUTIN1, IN2:REAL;END_VAR(* code body progr
40、ammed in ST *)Average := (IN1 + IN2)/2;END_FUNCTION返回值的返回值的數據類型數據類型返回值名返回值名= 函數名函數名IEC 61131 函數2022-3-6德國倍福電氣有限公司上海代表處Page 69 超載函數超載函數 一些函數可以處理不同的數據類型一些函數可以處理不同的數據類型 (調用操作調用操作)a, b:REAL;c, d:INT;a:= ABS(b);(* 用用 REAL 作輸入和輸出作輸入和輸出 *)c:= ABS(d);(* 用用 INT 作輸入和輸出作輸入和輸出 *)IEC 61131 函數2022-3-6德國倍福電氣有限公司上海
41、代表處Page 70 數據類型轉換函數數據類型轉換函數 在不同數據類型之間需轉換數值在不同數據類型之間需轉換數值, 你必需使用轉換函數你必需使用轉換函數a :REAL;b:INT;b:=REAL_TO_INT(a);IEC 61131 函數2022-3-6德國倍福電氣有限公司上海代表處Page 71 標準標準 IEC 61131-3 函數函數 位組位組 AND, OR, XOR, NOT, SHL, SHR, ROL, ROR 數學數學 ADD, SUB, MUL, DIV, MOD, EXPT, ABS, SQRT, LN, LOG, EXP, SIN, COS, TAN, ASIN, AC
42、OS, ATAN 類型轉換類型轉換例如例如 BOOL_TO_BYTE, REAL_TO_DINT 選擇選擇 SEL, MIN, MAX, LIMIT, MUX 比較比較 GT, GE, EQ, LT, LE, NE 字符串字符串LEN, LEFT, RIGHT, MID, CONCAT, INSERT, DELETE, REPLACE, FINDIEC 61131 函數2022-3-6德國倍福電氣有限公司上海代表處Page 72 設立輸入設立輸入, 輸出和內部變量輸出和內部變量 運算法則建立新的輸出和內部變量運算法則建立新的輸出和內部變量 參數被保持到下次執(zhí)行參數被保持到下次執(zhí)行 (在存儲器中
43、在存儲器中) 功能塊例程是一個結構功能塊例程是一個結構, 包含所有輸入包含所有輸入, 輸出和內部變量輸出和內部變量 一個一個FB 允許建立多個例程允許建立多個例程IEC 61131 功能塊2022-3-6德國倍福電氣有限公司上海代表處Page 73 在在 FB 的外部只有輸入的外部只有輸入, 輸出和輸入輸出和輸入/輸出變量傳遞參數輸出變量傳遞參數 在其它在其它FB或程序中或程序中, 以不同的編程語言使用以不同的編程語言使用 FB 調用調用 一個一個 FB 例程在調用的例程在調用的 FB/程序中是一個變量或全局變量程序中是一個變量或全局變量 FB例程可以是對其它例程可以是對其它FB/程序的輸入變
44、量程序的輸入變量IEC 61131 功能塊2022-3-6德國倍福電氣有限公司上海代表處Page 74FUNCTION_BLOCK CounterVAR_INPUTMode:INT; (* 0 = Reset, 1 = Count *)END_VARVAR_OUPUTOut:INT;(* actual counter value *)END_VARIF Mode = 0THENOut := 0;(* reset *)ELSIF Mode = 1THENOut := Out + 1;END_IF;END_FUNCTION_BLOCK老的計數值加老的計數值加 1 得到新的記數值得到新的記數值IEC
45、 61131 功能塊2022-3-6德國倍福電氣有限公司上海代表處Page 75標準標準 IEC 61131-3 功能塊功能塊 觸發(fā)器觸發(fā)器SR, RS, SEMA 沿探測沿探測R_TRIG, F_TRIG 記數器記數器CTU, CTD, CTUD 定時器定時器TP, TON, TOF, RTCIEC 61131 功能塊2022-3-6德國倍福電氣有限公司上海代表處Page 76 程序可以有輸入程序可以有輸入, 輸出輸出, 局部變量和算法的程序代碼部分局部變量和算法的程序代碼部分 不同于不同于FB: 程序沒有例程程序沒有例程 程序沒有存儲器程序沒有存儲器 在程序中使用各種語言在程序中使用各種語
46、言 程序由任務來調用程序由任務來調用 (TwinCAT : 可由其它程序調用可由其它程序調用)IEC 61131 程序2022-3-6德國倍福電氣有限公司上海代表處Page 77PROGRAM MainVARcounter_1 : Counter; (* instance of FB Counter *)actCount : INT;END_VARIF bfirstCycleTHENcounter_1(Mode := 0); (* call FB with reset mode*)ELSEcounter_1(Mode := 1); (* call FB with count mode*)END
47、_IFactCount := counter_1.Out;(* use output variable of*) (* counter_1*)END_PROGRAMIEC 61131 程序2022-3-6德國倍福電氣有限公司上海代表處Page 78 用任務控制執(zhí)行用任務控制執(zhí)行 執(zhí)行不同循環(huán)時間的程序執(zhí)行不同循環(huán)時間的程序 指派任務的優(yōu)先級指派任務的優(yōu)先級 (要求無間斷運行的程序必需有最高優(yōu)先級要求無間斷運行的程序必需有最高優(yōu)先級) TwinCAT: 每個每個PLC運行核運行核(Runtime)有四個任務有四個任務 強制優(yōu)先時序強制優(yōu)先時序IEC 61131 任務2022-3-6德國倍福電氣有
48、限公司上海代表處Page 7901020304050t (ms)任務任務 1 具有優(yōu)先級具有優(yōu)先級 0 和和 循環(huán)時間循環(huán)時間 10 ms任務任務 2 具有優(yōu)先級具有優(yōu)先級 1 和和 循環(huán)時間循環(huán)時間 30 ms任務任務 3 具有優(yōu)先級具有優(yōu)先級 2 和和 循環(huán)時間循環(huán)時間 40 ms任務任務 1 中斷中斷 任務任務 2任務任務 1 中斷中斷任務任務 3IEC 61131 任務2022-3-6德國倍福電氣有限公司上海代表處Page 80 文本語言文本語言 結構文本結構文本 (ST Structured Text) 指令表指令表 (IL Instruction List) 圖形語言圖形語言 功能
49、塊圖功能塊圖 (FBD Function Block Diagram) 梯形圖梯形圖 (LD Ladder Diagram) 順序功能圖順序功能圖 (SFC Sequential Function Chart)IEC 61131 編程語言2022-3-6德國倍福電氣有限公司上海代表處Page 81 高級語言高級語言 (類似類似 PASCAL) 復雜公式復雜公式 (賦值命令賦值命令) 具有條件和反復陳述的流控具有條件和反復陳述的流控 用制表符和注釋使得編碼易讀用制表符和注釋使得編碼易讀IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 82 分配值和表達
50、式賦值分配值和表達式賦值Ai := B;Ai+1 := SIN(SQRT(Ai+3);C := timer.Q;(* timer is an instance from FB TOF *)D := E/F + COS(Ai+1);bFlag := X AND Y OR Z;IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 83 條件語句條件語句 IF THENELSIF THENELSEEND_IF(*示例:*)IF temp20 THEN heating_on := TRUE;ELSE heating_on := FALSE;END_IF;(*溫度
51、低于20度,加熱器打開,否則關閉。*)IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 84CASE OF : : . : ELSEEND_CASE;(*示例:*)CASE INT1 OF1: BOOL1 := TRUE; BOOL2 := FALSE;2: BOOL1 := FALSE; BOOL2 := TRUE;ELSE BOOL1 := FALSE; BOOL2 := FALSE;END_CASE;IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 85 循環(huán)語句循環(huán)語句FOR TOBY DOEND_
52、FOR;(*示例:*)FOR i := 1 TO 100 BY 1 DOai := 0;END_FOR;IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 86WHILE DOEND_WHILE;(*示例:*)i := 1;WHILE i 100 DOai := 0;i := i+1;END_WHILE;IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 87REPEATUNTIL END_REPEAT;(*示例:*)i := 1;REPEATai := 0;i := i+1;UNTIL i 100 END_R
53、EPEAT;IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 88EXIT在在 EXIT 語句被執(zhí)行后語句被執(zhí)行后,在反復循環(huán)后的下個語句將被執(zhí)行在反復循環(huán)后的下個語句將被執(zhí)行RETURN執(zhí)行了執(zhí)行了RETURN 語句后語句后, 當前的當前的POU (FB or 函數函數) 執(zhí)行被中斷執(zhí)行被中斷IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 89 調用功能塊調用功能塊例子例子VARtimer:TOF;out:BOOL;END_VARtimer(IN:= TRUE, PT:= T#1s);.timer (I
54、N:= FALSE);out := timer.Q;IEC 61131 結構文本 (ST)2022-3-6德國倍福電氣有限公司上海代表處Page 90 低級語言(類似匯編程序)低級語言(類似匯編程序) 面向累加器的面向累加器的 每行只允許一個操縱每行只允許一個操縱, 如存儲一個值到累加寄存器如存儲一個值到累加寄存器 用跳轉和標號控制流程用跳轉和標號控制流程 注釋在每行的后面注釋在每行的后面IEC 61131 指令表 (IL)2022-3-6德國倍福電氣有限公司上海代表處Page 91標號標號操作符操作符 操作數操作數 注釋注釋LDTRUE(* load TRUE *)STvar1(* stor
55、e in var1 *)JMPClabel1(* jump conditional*)LDFALSE(* load FALSE *)STvar2(* store var 2*)label1:LD12(* load int literal *)ADDvar4(* add *)STvar3(* store var3*)IEC 61131 指令表 (IL)2022-3-6德國倍福電氣有限公司上海代表處Page 92 調用函數和功能塊調用函數和功能塊 使用使用 CAL 操作操作IEC 61131 指令表 (IL)2022-3-6德國倍福電氣有限公司上海代表處Page 93三種方法調用三種方法調用 FB
56、: 使用輸入一個列表使用輸入一個列表CAL FB1(in := TRUE, mode := 4) 在調用前裝填輸入在調用前裝填輸入LDTRUEST FB1.inLD 4ST FB1.modeCALFB1 使用輸入參數使用輸入參數只適用于標準只適用于標準FB, 使用標準變量名使用標準變量名 (例如例如. counter-up 的輸入變量的輸入變量 CU ) IEC 61131 指令表 (IL)2022-3-6德國倍福電氣有限公司上海代表處Page 94操作符操作符操作數操作數有條件跳轉有條件跳轉標號標號IEC 61131 指令表 (IL)2022-3-6德國倍福電氣有限公司上海代表處Page 95 圖形表示圖形表示 FB, 函數和程序以及它們的相互關聯圖函數和程序以及它們的相互關聯圖 全圖形式全圖形式 塊圖塊圖 “線連線連“ 在一起在一起 允許跳轉和返回允許跳
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 情緒管理在教育心理學中的應用
- 教育與科技融合的政策環(huán)境分析
- 創(chuàng)新應用教育技術助力特殊兒童學習與發(fā)展
- 教育與娛樂融合的嬰幼兒產品市場趨勢分析
- 教育小鎮(zhèn)的全方位教育資源配置
- 中職數例課件
- 大數據驅動的精準教學模式在西安的實施與成效
- 從教育心理學角度看學生行為問題及應對
- 廣東省惠州市惠港中學2025屆物理高一下期末考試模擬試題含解析
- 浙江省湖州、衢州、麗水2025屆高二物理第二學期期末監(jiān)測試題含解析
- 色彩的魅力:藝術、科學與設計的交融
- 2025廣州市荔灣區(qū)輔警考試試卷真題
- 一季度安委會匯報材料
- 貴州省遵義市2024年八年級《數學》上學期期末試題與參考答案
- 產品質量問題追溯制度
- TACE圍手術期的護理
- GB/T 320-2025工業(yè)用合成鹽酸
- 山東省青島市青島2025年第五十八中學一模數學試題含答案
- 在2025年國企黨風廉政建設會議上的講話
- 老年人誤吸的預防團體標準
- 高中數學第三章不等式章末復習提升省公開課一等獎新課獲獎課件
評論
0/150
提交評論