内容简介
本书帮助读者系统学习西门子SCL编程语言,书中案例的硬件基于西门子S7-1200/1500系列PLC,软件基于博途开发环境。本书分三部分:入门篇、进阶篇和高级篇。入门篇介绍了S7-1200/1500的硬件环境、PLC工作原理及SCL编程的基本概念;进阶篇介绍了SCL编程的复杂数据类型、扩展指令、工艺对象等,包含大量实用案例讲解;高级篇介绍如何使用C#语言编写TCP及UDP通信的控制台程序,并实现与PLC的通信。本书从基础到进阶再到高级,带领读者循序渐进地学习西门子SCL编程方法和技巧。
书中附有视频讲解,读者扫描二维码即可观看学习。
本书适合电气自动化的编程和调试工程师使用,也可作为大专院校相关专业的教材。
目录
第一篇 入门篇 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.
前言/序言
本书系统地介绍了西门子S7-1200/1500系列PLC在博途环境下的SCL语言编程,具有如下特点。
1.视频配合文字:文字的优点在于方便查阅,便于记忆。视频的优点在于直观易懂,有些内容用文字描述可能要花费很多笔墨,并且无法看到实际演示的效果。本书将文字与视频相结合,随书带有80多个视频教程,有的视频介绍硬件实物,有的视频介绍电气图纸,还有的视频介绍程序及演示运行的结果,通过扫描书中的二维码就可以直接观看。视频教程配合书中文字内容,使读者快速理解相关的知识点。
2.丰富的案例:电气自动化是一门实践性非常强的学科,本书中包含大量的案例,每个知识点都有举例说明,第9章、第12~14章都有非常多的实例演示。
3.从硬件入手:PLC编程与计算机编程的很大区别在于PLC编程是需要跟硬件打交道的。PLC程序开发/调试需要首先明白CPU、DI/DO、AI/AO、高速计数器等硬件,清楚电气接线,才能正确地编写程序。因此,本书的第1章首先介绍S7-1200/1500的硬件,使读者有个基本的概念。书中的案例也会花比较多的笔墨介绍电气接线,比如很多实例教程都会介绍EPLAN电气接线图,程序只有在明确电气接线后才有意义。
4.理论与实践并行:理论与实践是相辅相成的关系。没有实践的理论是空洞的理论,没有理论的实践是盲目的实践。本书第2章介绍PLC的工作原理与存储方式,为实践打下理论基础。第3章介绍TIA博途软件开发环境。第4章展示TIA博途环境下创建示例程序、下载与在线监控、程序比较、归档与恢复等实践性操作。第5章介绍S7-1200/1500的软件架构与编程。第8章、第9章介绍基本指令的同时列举了大量的编程实例,将理论与实践结合起来。
5.从入门到精通:全书总共15章,分成3大部分。第1~9章属于入门篇,介绍S7-1200/1500的硬件、CPU的工作原理与存储方式、软件架构、SCL编程的基本概念等内容。第10~14章为进阶篇,介绍SCL语言的复杂数据类型、扩展指令、扩展函数库、工艺对象(高速计数器、PWM、运动控制)、通信(串行通信、以太网通信、PROFINET通信)等内容。第15章为高级篇,介绍使用C#语言编写TCP及UDP通信的控制台应用程序,并使用该程序实现计算机与PLC的通信。如果读者是刚开始学习S7-1200/1500 SCL编程,可以按照书中目录由浅入深地进行学习。如果读者已经入门,可以跳过入门篇,直接学习进阶篇和高级篇。
6.在线反馈交流:读者可以登录网站“北岛夜话”留言与编者沟通。
本书在编写过程中得到了程丽元、程金凤、沙培芬的帮助和支持,在此表示衷心的感谢。
由于编者水平有限,书中可能存在不妥之处,望读者不吝批评指正。
李杰(北岛李工)