立即下單

【全彩2冊】西門子PLC新通訊大全+西門子S7-1200/1500 PLC SCL語言編程從入門到精通
NT$ 1565  

【全彩2冊】西門子PLC新通訊大全+西門子S7-1200/1500 PLC SCL語言編程從入門到精通

免郵費 貨到付款 七天鑒賞期

ISBN編號: 9787570611935

書名: 西門子PLC通訊大全

作者: 楊銳

書名: 西門子PLC通訊大全

開本: 16

頁碼:309

出版時間: 2021-01

主图-02.jpg

內容簡介


本書幫助讀者係統學習西門子SCL編程語言,書中案例的硬件基於西門子S7-1200/1500系列PLC,軟件基於博途開發環境。本書分三部分:入門篇、進階篇和高級篇。入門篇介紹了S7-1200/1500的硬件環境、PLC工作原理及SCL編程的基本概念;進階篇介紹了SCL編程的複雜數據類型、擴展指令、工藝對像等,包含大量實用案例講解;高級篇介紹如何使用C#語言編寫TCP及UDP通信的控制台程序,並實現與PLC的通信。本書從基礎到進階再到高級,帶領讀者循序漸進地學習西門子SCL編程方法和技巧。本書適合電氣自動化的編程和調試工程師使用,也可作為大專院校相關專業的教材。


 作者簡介


李傑,上海申克機械有限公司,高級調試工程師,本人從事電氣自動化工作近10年,熟悉電氣自動化的選型、設計及PLC編程調試。


曾主管設計並調試某公司的水果深加工自動化生產線;


曾在某汽車廠調試自動化加液設備及燃油密封檢測設備;


在工程項目中使用過西門子S7-300/400,S7-1200,S7-1500及S7-200 smart系列PLC,有比較豐富的經驗。


目錄介紹


第一篇 入門篇 001


第1章 S7-1200/1500硬件介紹 001


1.1 西門子SIMATIC S7-1200 PLC概述 001


1.2 S7-1200的CPU模塊 003


1.2.1 CPU模塊概述 003


0101-CPU 1214FC介紹 004


1.2.2 CPU 1214C AC/DC/Relay 004


1.3 S7-1200的數字量模塊 007


1.3.1 數字量輸入模塊 007


1.3.2 數字量輸出模塊 009


1.4 S7-1200的模擬量模塊 010


1.4.1 模擬量輸入模塊 010


1.4.2 模擬量輸出模塊 012


1.5 西門子SIMATIC S7-1500 PLC概述 013


1.6 S7-1500的CPU模塊 015


1.6.1 CPU模塊概述 015


1.6.2 CPU 1515-2PN模塊 017


1.7 S7-1500/ET 200MP的數字量模塊 019


1.7.1 數字量輸入模塊 019


1.7.2 數字量輸出模塊 019


1.7.3 數字量故障安全模塊 021


1.8 S7-1500/ET 200MP的模擬量模塊 023


1.8.1 模擬量輸入模塊 023


1.8.2 模擬量輸出模塊 027


1.9 S7-1500/ET 200MP的組件 029


1.9.1 導軌 029


1.9.2 U形連接器 029


1.9.3 前連接器 029


1.9.4 電源端子 030




第2章 PLC的工作原理與存儲方式 031


2.1 PLC的工作原理 031


2.1.1 PLC的程序結構 031


2.1.2 CPU的工作模式 031


2.2 CPU的存儲器 033


2.2.1 裝載存儲器 033


2.2.2 工作存儲器 033


2.2.3 保持存儲器 034


2.2.4 系統存儲器 034


2.3 SIMATIC存儲卡 035


2.3.1 SIMATIC存儲卡簡介 035


0201-SIMATIC存儲卡介紹 035


2.3.2 SIMATIC存儲卡的安裝 036


2.3.3 SIMATIC存儲卡的工作模式 037


2.3.4 使用SIMATIC存儲卡更新CPU固件 037


2.4 在線查看存儲器的使用情況 038




第3章 TIA博途軟件開發環境 039


3.1 TIA博途平台簡介 039


3.2 程序編輯器介紹 042


3.3 SCL編輯器的常規設置 043


3.3.1 高亮顯示關鍵字 043


3.3.2 新添加塊的設置 044


3.4 創建SCL函數塊或函數 045


3.5 SCL代碼編輯器 045


3.6 SCL編輯器使用技巧 046


3.6.1 使用區間指令將代碼分區 046


3.6.2 使用書籤快速定位代碼 047




第4章 TIA博途軟件應用實例 049


4.1 創建示例程序 049


0401-創建示例程序 049


4.2 項目的編譯、下載與在線監控 053


0402-項目程序的下載與在線監控 053


4.3 程序的比較 054


0403-程序在線與離線比較 055


4.4 項目的歸檔與恢復 055


0404-項目的歸檔與恢復 056


4.5 使用項目參考功能 056


0405-使用項目參考功能 056




第5章 S7-1200/1500的軟件架構與編程 057


5.1 操作系統與用戶程序 057


5.2 操作系統的接口——組織塊 058


5.2.1 組織塊的分類 058


0501-組織塊(Organization Block)介紹 059


5.2.2 程序循環組織塊 059


5.2.3 啟動組織塊 059


5.2.4 延時中斷組織塊 059


5.2.5 循環中斷組織塊 059


5.2.6 硬件中斷組織塊 060


5.2.7 時間錯誤中斷組織塊 060


5.2.8 診斷錯誤中斷組織塊 060


5.2.9 插拔中斷組織塊 060


5.2.10 機架或子站故障組織塊 061


5.2.11 日期時間中斷組織塊 061


5.2.12 狀態中斷組織塊 061


5.2.13 更新中斷組織塊 061


5.2.14 配置中斷組織塊 061


5.2.15 運動控制插補器組織塊 061


5.2.16 運動控制伺服組織塊 061


5.2.17 運動控制伺服前調組織塊 061


5.2.18 運動控制伺服後調組織塊 062


5.3 用戶程序的基本單位——程序組織單元 062


5.3.1 函數 062


0502-函數(FC)介紹 062


5.3.2 函數塊 063


0503-函數塊(FB)及其背景數據塊的介紹 063


5.3.3 數據塊 064


0504-全局數據塊(Global DB)介紹 064


0505-背景數據塊介紹 066


0506-多重背景數據塊介紹 067


5.4 編程指導 068


5.4.1 模塊化程序設計 068


5.4.2 程序組織單元的命名規則 068


5.4.3 代碼註釋的推薦格式 069




第6章 SCL語言 070


6.1 SCL語言與PLC國際編程標準 070


6.1.1 SCL語言簡介 070


6.1.2 PLC國際編程標準——IEC 61131-3簡介 071


6.2 SCL語言的特點和優勢 071


6.3 先睹為快:SCL編程實現按鈕控制指示燈 072


6.3.1 硬件/軟件環境及電氣圖紙 072


0601-TIA博途實例-電氣圖紙 073


6.3.2 程序代碼示例 073


0602-TIA博途實例-程序講解 075


0603-LED燈實際效果演示 075




第7章 SCL編程的基本概念 076


7.1 基本數據類型 076


7.1.1 布爾型 076


7.1.2 整數類型 076


7.1.3 實數類型 077


7.1.4 定時器時間值類型 078


7.1.5 日期時間類型 079


7.1.6 字符與字符串類型 081


7.1.7 位字符串類型 082


7.2 變量與常量 083


7.2.1 變量概述 083


7.2.2 變量的命名規則 083


7.2.3 變量的聲明 084


7.2.4 預定義變量——ENO 084


7.2.5 常量概述 085


7.2.6 常量的聲明 085


7.3 表達式 086


7.3.1 算術表達式 086


7.3.2 關係表達式 087


7.3.3 邏輯表達式 087


7.4 運算符及其優先級 088


7.5 語句 088


7.5.1 語句概述 088


7.5.2 賦值語句 088


7.5.3 條件語句(IF) 089


7.5.4 選擇語句(CASE) 090


7.5.5 循環語句 091


7.5.6 跳轉語句 094


7.6 代碼的註釋 095




第8章 SCL基本指令及其應用 096


8.1 沿信號檢測指令 096


8.1.1 上升沿信號檢測指令 096


0801-上升沿信號檢測 096


8.1.2 下降沿信號檢測指令 097


8.2 定時器指令 097


8.2.1 脈衝定時器(TP)指令 097


0802-脈衝定時器示例 099


8.2.2 延時接通定時器(TON)指令 099


0803-延時接通定時器示例 100


8.2.3 延時斷開定時器(TOF)指令 100


0804-延時斷開定時器示例 101


8.2.4 保持型延時接通定時器(TONR)指令 101


0805-保持型延時接通定時器示例 102


8.2.5 復位定時器(RESET_TIMER)指令 102


8.2.6 定時器預設值設置(PRESET_TIMER)指令 103


8.3 計數器指令 103


8.3.1 加計數器指令 103


8.3.2 減計數器指令 104


8.3.3 加/減計數器指令 105


8.4 數學指令 106


8.4.1 正弦指令 106


8.4.2 餘弦指令 106


8.4.3 平方指令 106


8.4.4 最大值指令 107


8.4.5 最小值指令 107


8.5 讀寫存儲器指令 107


8.5.1 PEEK指令 107


8.5.2 POKE指令 108


8.6 移動指令 110


8.6.1 MOVE_BLK指令 111


8.6.2 UMOVE_BLK指令 111


8.6.3 FILL_BLK指令 111


8.6.4 UFILL_BLK指令 112


8.7 轉換指令 112


8.7.1 類型轉換指令 112


8.7.2 取整指令 112


8.7.3 歸一化指令——NORM_X 113


8.7.4 比例縮放指令——SCALE_X 114


8.8 字邏輯指令 115


8.8.1 解碼(DECO)指令 115


8.8.2 編碼(ENCO)指令 115


8.9 移位指令 116


8.9.1 右移(SHR)指令 116


8.9.2 左移(SHL)指令 116


8.9.3 循環右移(ROR)指令 117


8.9.4 循環左移(ROL)指令 117




第9章 SCL基本編程實例 118


9.1 電機啟停控制 118


0901-電機啟停控制-電氣圖紙講解 119


0902-電機啟停控制-程序講解 120


0903-電機啟停控制-實際演示 120


9.2 用不同的頻率控制蜂鳴器 120


0904-不同頻率控制蜂鳴器發聲-電氣圖紙講解 121


0905-不同頻率控制蜂鳴器發聲-程序講解 122


0906-不同頻率控制蜂鳴器發聲-實際演示 123


9.3 空壓機的延時關閉 124


0907-空壓機延時關閉-電氣圖紙講解 124


0908-空壓機延時關閉-程序講解 126


0909-空壓機延時關閉-實際演示 126


9.4 移動單元位置計算 126


0910-移動單元位置計算-電氣圖紙講解 127


0911-移動單元位置計算-程序講解 128


0912-移動單元位置計算-實際演示 128


9.5 獲取模擬量溫濕度傳感器的值 129


0913-模擬量溫濕度傳感器-電氣圖紙講解 129


0914-模擬量溫濕度傳感器-程序講解 130


0915-模擬量溫濕度傳感器-實際演示 131


9.6 BCD碼轉換成整數 131


0916-BCD碼轉換成整數 132


9.7 位字符串的提取與組合 133


0917-位字符串的提取與組合 133




第二篇 進階篇 135


第10章 S7-1200/1500複雜數據類型 135


10.1 數組 135


10.1.1 數組概述 135


10.1.2 數組的聲明 136


10.1.3 數組元素的引用 136


10.2 指針 136


10.2.1 基本概念 136


10.2.2 Pointer類型 137


10.2.3 Any類型 138


10.2.4 Variant類型 139


10.3 結構體 139


10.3.1 結構體及其聲明 139


10.3.2 結構體變量的引用 140


10.4 用戶自定義類型 141


10.4.1 基本概念 141


10.4.2 用戶自定義類型變量的聲明及引用 142


10.5 系統數據類型 142




第11章 SCL擴展指令 143


11.1 日期時間指令 143


11.1.1 時間加減指令 143


11.1.2 時鐘讀寫指令 144


1101-讀寫CPU系統時鐘 145


11.2 字符串操作指令 146


11.2.1 獲取字符串當前長度 146


11.2.2 獲取字符串最大長度 146


11.2.3 讀取字符串左側字符 146


11.2.4 讀取字符串右側字符 147

11.2.5 讀取字符串中間字符 147


11.2.6 插入字符串 148


11.2.7 替換字符串 148


11.3 中斷指令 149


11.3.1 硬件中斷的綁定與解綁 149


11.3.2 循環中斷的設置與查詢 150


11.3.3 日期時間中斷的設置與啟用 152


11.3.4 延時中斷的啟用與取消 155


11.4 配方管理 156


11.4.1 配方概述 156


11.4.2 配方相關數據塊 157


11.4.3 配方導出指令 158


1102-如何導出配方數據 159


11.4.4 配方導入指令 161


1103-如何導入配方數據 162


11.4.5 讀配方指令 164


1104-讀取配方數據 165


11.4.6 寫配方指令 165


1105-寫入配方數據 166


11.5 診斷指令 166


11.5.1 讀取IO設備的名稱 166


1106-讀取IO設備名稱 166


11.5.2 讀取IO設備信息 168


1107-讀取IO設備信息 168


11.5.3 讀取IO設備的狀態 170


1108-讀取IO設備狀態 170


11.5.4 讀取標識及維護數據 172


1109-讀取標識及維護數據 174




第12章 SCL編程進階實例與技巧 175


12.1 通用函數庫 175


12.1.1 基本介紹 175


12.1.2 下載與安裝 175


1201-LGF通用函數庫的下載及安裝 175


12.1.3 LGF函數介紹——脈衝繼電器 176


1202-LGF脈衝繼電器 177


12.1.4 LGF函數介紹——頻率發生器 178


1203-LGF頻率發生器 178


12.1.5 LGF函數介紹——環型存儲區 179


1204-LGF環型存儲區函數 179


12.2 自己編程實現沿信號檢測 181


12.3 自己編程實現雙穩態觸發器 182


12.4 自己編程實現減計數器 184


12.5 自己編程實現定時採樣 186


12.6 自己編程實現數據塊複製 188


12.7 自己編程計算設備運行時間 189


12.8 間接尋址 192


12.8.1 變量的覆蓋訪問(AT) 192


12.8.2 變量的片段訪問(SLICE) 192


12.8.3 PEEK/POKE 194


12.9 SCL源代碼操作 195


12.9.1 導出源代碼 195


12.9.2 導入源代碼 195


12.10 SCL程序加密保護 196


12.11 創建自己的全局庫 196


1205-創建自己的全局庫 197




第13章 SCL工藝功能及其應用 198


13.1 高速計數器 198


13.1.1 高速計數器概述 198


13.1.2 S7-1200的高速計數器 198


13.1.3 S7-1200的高速計數器指令 200


13.1.4 S7-1500的高速計數器模塊 204


13.1.5 實例1:CPU 1214FC獲取編碼器的數據 208


1301-編碼器-高速計數器電氣圖紙講解 209


1302-編碼器例程程序講解 211


13.1.6 實例2:高速計數器當前值的斷電保存 211


1303-保存高速計時器當前值 211


13.2 脈寬調製(PWM) 213


13.2.1 脈寬調製概述 213


13.2.2 S7-1200的PWM資源 213


13.2.3 S7-1200 PWM的組態與控制 214


13.2.4 S7-1500的PWM資源 216


13.2.5 S7-1500 PWM的組態與控制 216


1304-PWM組態及程序講解 216


13.2.6 SCL實例:CPU 1214FC使用PWM實現電機調速 220


1305-EPLAN電氣圖紙講解 220


13.3 PID控制 223


13.3.1 開環系統與閉環系統 223


1306-PWM控制電機調速-實際延時 223


13.3.2 PID控制器 224


13.3.3 S7-1200/1500 PID指令介紹 224


1307-PID指令及其組態 224


13.3.4 PID工藝對象 226


13.3.5 實例:CPU 1214C使用PID控制水罐的溫度 227


13.4 運動控制 232


13.4.1 運動控制概述 232


13.4.2 S7-1200的PTO資源 236


13.4.3 S7-1500/ET 200MP的TM PTO4模塊 236


13.4.4 S7-1200/1500的運動軸與工藝對象 238


1308-運動軸工藝對象介紹 238


13.4.5 S7-1200/1500的運動控制指令 241


13.4.6 實例:CPU 1214FC控制步進電機進行絕對定位 252


1309-步進電機-接線圖講解 254


1310-步進電機運動控制-工藝對象講解 256


1311-步進電機控制-回原點 258


1312-步進電機運動控制-程序講解 261


1313-步進電機運動控制-實例演示 261




第14章 SCL通信功能及其應用 262


14.1 串行通信 262


14.1.1 串行通信概述 262


14.1.2 S7-1200的串口通信模塊及信號板 264


1401-CM 1241 RS232模塊外觀介紹 264


1402-CB 1241 RS485外觀及安裝介紹 267


14.1.3 S7-1500/ET 200MP串口通信模塊 268


14.1.4 點對點通信指令 270


1403-串口指令SEND_PTP&RCV_PTP數據收發演示 270


1404-CM 1241 RS232固件更新 278


14.1.5 SCL實例:CPU 1214FC與串口助手通信 279


1405-CM1241使用通用串行指令與串口助手通信 279


14.2 Modbus-RTU通信 281


14.2.1 Modbus簡介 281


14.2.2 S7-1200/1500的Modbus-RTU指令 283


14.2.3 Modbus協議的數據模型和地址模型 287


14.2.4 SCL實例:CPU 1214FC通過Modbus-RTU協議讀取溫度傳感器的數值 289


1406-CB 1241 RS485讀取溫度傳感器EPLAN電氣圖紙講解 289


1407-CB 1241 RS485讀取溫度傳感器 291


14.3 以太網通信 292


14.3.1 S7-1200/1500的以太網接口及連接資源 292


14.3.2 S7通信 293


1408-S7通信連接硬件組態 296


1409-CPU ST20和CPU 1214FC的通信講解 299


14.3.3 TCP通信 303


1410-創建一個TCP通信函數塊ComTCP 309


14.3.4 Modbus TCP通信 312


1411-Modbus-TCP服務器和客戶端程序介紹 321


1412-Modbus-TCP通信實例演示 321


14.3.5 UDP通信 321


1413-創建一個UDP通信的函數塊comUDP 325


14.4 PROFINET通信 328


14.4.1 PROFINET協議簡介 328


14.4.2 PROFINET IO控制器與IO設備 329


14.4.3 實例:構建一個PROFINET IO系統 330


1414-構建一個PRFINET IO系統 330


14.4.4 智能設備(I-Device) 332


14.4.5 實例:CPU ST20作為CPU 1214FC的智能設備 332


14.5 Web服務器應用 335


14.5.1 Web服務器功能介紹 335


14.5.2 標準Web服務器 337


1415-Web服務器功能介紹 337




第三篇 高級篇 339


第15章 高級語言C#與SCL的程序應用實例 339


15.1 C#語言簡介 339


15.2 使用C#創建一個TCP服務器程序myTCPServer 340


15.3 使用myTCPServer與函數塊FB5005_ComTCP通信 343


1501-myTCPServer與函數塊 FB5005_ComTCP通信 343


15.4 使用C#創建一個UDP通信程序myUDPTalker 343


15.5 使用myUDPTalker與函數塊FB5006_ComUDP通信 346


1502-myUDPTalker與函數塊FB5006_ComUDP通信 346




附錄 ASCII碼表 347


【全彩2冊】西門子PLC新通訊大全+西門子S7-1200/1500 PLC SCL語言編程從入門到精通
NT$1565
注: 我們會宅配送貨到您府上,請您注意查收。