SINMENS西门子PLC中国授权总代理商 SINMENS西门子PLC中国授权总代理商
西门子PLC模块代理商 西门子CPU模块代理商,西门子PLC模块 ,西门子中国代理商 西门子PLC代理商 西门子模块代理商 西门子代理商 西门子PLC总代理
西门子授权代理浔之漫智控技术(上海)有限公司
SIEMENS 可编程控制器
1、 SIMATIC S7 系列PLC:S7-200、S7-1200、S7-300、S7-400、ET-200
2、 逻辑控制模块 LOGO!230RC、230RCO、230RCL、24RC、24RCL等
3、 SITOP直流电源 24V DC 1.3A、2.**、3A、**、10A、20A、40A可并联
4、HMI 触摸屏TD200 TD400C K-TP OP177 TP177,MP277 MP377,SIEMENS 交、直流传动装置
1、 交流变频器 MICROMASTER系列:MM420、MM430、MM440、G110、G120. MIDASTER系列:MDV
2、全数字直流调速装置 6RA23、6RA24、6RA28、6RA70、6SE70系列SIEMENS 数控 伺服8:801、802S 、802D、802D SL、810D、840D、611U、S120系统及伺报电机,力矩电机,直线电机, 等备件销售。
为什么已经将"启动"选项设置为"暖启动-RUN模式"下载组态后,CPU无法启动,而ERROR灯也不报错?
答:这种情况下查看诊断缓冲区,通常可以发现报错:“没有可用于设备选件处理的数据记录或无效”,如图3所示。造成这个错误的原因是因为,CPU属性的“组态控制”中已“允许通过用户程序重新组态设备”,如图4所示,但启动 OB 未传送一个有效的组态数据记录,则 CPU 从启动模式返回到 STOP 模式。CPU 在这种情况下不会初始化集中式 I/O,导致启动失败。如果用户并没有使用组态控制,一定确认取消“允许通过用户程序重新组态设备”,以免造成不必要的错误。
图3 组态控制造成的错误
图4 组态控制配置秒懂S7-1500PLC读写SQL微软数据库
近几年S7-1200和1500肯定是西门子的主推产品。尽管现在S7-300和400依然被广泛的运用,但随着博途软件的高度集成化,并被越来越多的工程师接受,S7-1200/1500以及一些只有博途才兼容的其它自动化产品将会被越来越多的运用在项目中。
很多从日系PLC或者200PLC过来的人,很不习惯于S7 1200 或者TIA PORTAL 里面的一些术语,比如OB,DB,FC,FB等等,其实这些术语也包含于S7 300,400 ,1500等,所以讲解的内容,理论上也适应于这些PLC。虽然我没有玩过这些东西,但是TIA PORTAL适合于西门子全系列PLC,很多概念性的东西都是一致的。S7 1200的功能强大正式基于拥有各种类型的block和多种变量类型。
我会用不一样观点来讲述PLC编程,相比于很多普通的PLC教程,你会发现很多有趣的地方。
S7 1200 由以下几类基本元素组成:
OB:组织块,英文名Organization block。组织块是CPU系统和用户程序之间的接口,可以在CPU上电启动时调用,也可以循环调用,也可以在PLC发生错误时候调用。
DB:数据块,英文名Data block。从字面含义便知主要用于储存用户数据,比如模拟量转换数据,相当于200里面的V区,欧姆龙PLC的W区。
FC:函数,英文名Function。我们常常在FC函数中写一些需要重复执行的代码,可以在程序不同地方调用,可以被OB调用,也可以被FC调用。使用FC可以简化我们需要重复执行的任务,提高代码的运行效率。FC类似于200的子程序。
FB:FC+DB组合,意思是含有DB块的FC函数,与FC的区别是当函数调用结束后,通过Static变量仍然可以保留数值,经常用于调用间的数据共享。
OB组织块
当我们新建一个程序时,系统会自动建立一个Main[OB1]程序,该程序会在PLC的每个扫描周期被调用。Main程序和200里面的主程序,是一个同样的概念。也类似于C里面的Main ,即为函数点,我们可以在Main程序里面调用各种函数和块。下面的图是在程序中调用一个FC和FB,然后在FC中调用另外一个FC,形成嵌套调用。
注:、、、是别名,方便我们记忆和理解,真正的地址在[.....]中,如OB1,FC2,FC1,FB1等等。
图1 Main程序
图2 Main调用结构
图1显示了Main程序具体内容,图2显示了Main程序的调用结构。图中很多元素的概念,我们暂时不需要了解,但是可以看到一些整体概念,Mian程序包含程序段1(NW1)和程序段2(NW2),在Main的调用结构中包含了3个元素test、调用FB和调用FC。其实应该是4个,还有一个嵌套在中,点击左侧箭头,出现如下图所示:
图3 FC嵌套调用
图4 OB分类
我们来分析上图中的OB类型。OB块主要用于程序循环、启动、延时中断、循环中断、硬件中断、HSC中断、诊断错误和时间错误事件。OB块还有两个属性是编号和**级,**级越高,中断级别越高。在同样的**级别,OB编号越小,越**执行。从图1中,我们看到Main程序的地址在OB1,是一个循环运行程序,**级为1较低。时间错误事件的**级,当发生该事件时,会暂停执行Main程序,**执行时间错误事件OB块。程序循环OB类块的编号属性为“1;>=123”,意为我们可以创建多个类似OB块。因为新建程序默认OB编号为1,假设我们要创立该事件类型OB块,那么默认编号为123起,同时OB1的执行要**于OB123。诊断错误事件OB块和时间错误OB块只有一个。
图5 添加OB新块
图6 手动选择创建编号
图5 添加OB新块界面,我们可以看到,在红色矩形框处,OB编号数值为123,我们选择的创建方式为自动。如果你想起用别的编号,可以选择手动方式,同时可以选择创建OB块采用的语言。大家不妨自己试一试哦。
这里讲解几个常用的OB类型块使用,其他类型OB块使用,大家可以翻阅系统编程手册。
程序循环事件OB块(program cycle):该块主要用于执行循环运行的程序,一般一个程序中创建一个便可以,是默认的Main程序(OB1),我们可以通过调用FC和FB来实现其他功能。系统CPU每个扫描周期都会执行该类型OB块。
启动事件OB块(Startup):该块主要用于初始化变量,当PLC断电重启或者CPU从STOP切换为RUN时候执行,往后不再运行,也是只运行一次。我们新建一个DB1块,添加两个,设置初始值,如下图所示:
图7 添加DB块变量
然后新建一个Startup事件OB块,写如下程序(SCL语言):
图8 Startup事件OB块程序
我们可以看到该类型OB块编号为100,如果再建一个该类型OB块,编号必须>=123。然后我们下载程序,这里顺便提一下下载选项,如下图所示:
图9 下载选项
如果是初次下载,选择“硬件和软件(仅更改)”。如果不是初次,可以选择你修改的部分,这样会提高下载速度。
图10 程序运行结果
循环中断事件OB块(Cyclic interrupt):常常用于需要定时执行的任务,比如我们需要1秒钟采样50个模拟值,我们可以把循环时间设置为20毫秒。可能会有人问,为什么不采用普通定时器每隔20毫秒采样一次呢?因为普通定时器会受到CPU扫描周期的影响。在PID程序中,我们需要采用循环中断事件来调整计算PID输出。
图11 添加循环中断事件OB块
6ES7592-2AX00-0AA0 SIMATIC S7-1500,标签,35mm模板适用,100片
6ES7592-1AX00-0AA0 SIMATIC S7-1500,标签,25mm模板适用,100片
6ES7592-1AM00-0XB0 "SIMATIC S7-1500
35mm模板前连接器,螺钉型,40针,含4根跳线 "
6ES7592-1BM00-0XB0 SIMATIC S7-1500 35mm模板前连接器,快连型,40针,含4根跳线
6ES7592-1BM00-0XA0 SIMATIC S7-1500 25mm模板前连接器,快连型,40针,含4根跳线
6ES7590-**A00-0AA0 "用于连接PE(地)到S7-1500安装导轨的接地元件,
对于2000mm的安装导轨是必须的 每个包装20片"
6ES7591-1AA00-0AA0 备件:S7-1511/13CPU显示面板
6ES7591-1BA00-0AA0 备件:S7-1515/16/18CPU显示面板
6ES7590-8AA00-0AA0 备件:S7-1500 PS/PM供电模板连接头,内含10片
6ES7528-0AA70-7AA0 SIMATIC ET 200MP备件:接口模块(6ES7 155-**A00-0AB0)前盖板5片/包
6ES7528-0AA00-7AA0 SIMATIC S7-1500备件:I/O模块前盖板5片/包,35mm模板适用
6ES7528-0AA00-0AA0 SIMATIC S7-1500备件:I/O模块前盖板5片/包,25mm模板适用
6ES7590-0AA00-0AA0 SIMATIC S7-1500备件:U型连接器, 5片/包
6ES7592-3AA00-0AA0 SIMATIC S7-1500备件:跳线,20片/包
6ES7590-5CA00-0AA0 "SIMATIC S7-1500备件:屏蔽套件:含屏蔽端子,
框架以及24VDC接线端。"
6ES7590-5BA00-0AA0 SIMATIC S7-1500备件:模拟量/技术模板屏蔽端子
6ES7954-8LC02-0AA0 4MB
6ES7954-8LE02-0AA0 12MB
6ES7954-8LF02-0AA0 24MB
6ES7954-8LL02-0AA0 256MB
6ES7954-8LP01-0AA0 2GB
SM1231 RTD 模块在通道测量类型选择“电阻”时,能测量哪些阻值的电阻?
能测量150/300/600欧。此时,额定上限数值为 27648。如下图 12 所示:
图 12. SM1231 RTD 模块测量的电阻范围如果有用过西门子S7-200 SMART系列 PLC的学员,应该会知道PLC提供了各种模块和插入式板,用于扩展CPU 的功能,那么S7-1200 系列PLC也不例外。
西门子S7-1200系列PLC的扩展模块包括三类,信号模块、信号板和通信模块。信号模块是扩展在CPU的右侧,信号板扩展在CPU的正上方,通信模块扩展在CPU的左侧。
下面来简单的介绍一下S7-1200系列的模块。
信号模块
信号模块可以为CPU补充集成的IO口,模块型号名称一般是SM开头的。信号模块SM是连接在CPU右侧的,包括数字量 I/O、模拟量 I/O、热电阻和热电偶、SM 1278 IO-Link 主站等模块。
注意:CPU1211C不支持扩展信号模块,CPU1212C支持多扩展2个信号模块,其他型号CPU都可以多扩展8个信号模块。
数字量IO信号模块包括了以下这几种:
SM 1221 数字量输入模块、SM 1222 数字量输出模块、SM 1223 数字量直流输入 / 输出模块、SM 1223 数字量交流输入 / 输出模块。
总结一下,从输入输出点数来看,有8个点的有16个点的,从输入的电源类型来看,有直流的也有交流的,从输出类型来看,有晶体管输出和继电器输出的。
模拟量IO信号模块包括以下这几种:
SM 1231 模拟量输入模块、SM 1232 模拟量输出模块、SM 1231 热电偶和热电阻模拟量输入模块、SM1234模拟量输入和输出混合模块。
SM 1231、SM 1232和SM1234是用于接收或输出标准的电压信号和电流信号的,SM 1231是用于接热电阻或热电偶进行温度采集的。
信号板
CPU 支持扩展信号板,信号板是使用嵌入式的安装方式的,安装在CPU的正上方,安装不会占用空间,比如我们需要扩展少量IO点的时候,可以选择扩展数字量IO的信号板。
除了数字量IO的信号板,还有模拟量的信号板,这些信号板一般型号是以SB开头的。此外,还有通信板CB,可以为CPU增加其它通信端口。电池板 BB可提供长期的实时时钟备份。
通信模块
通信相关的模块包括通信模块 (CM) 和通信处理器 (CP) ,用于增加 CPU 的通信接口,例如利用CM模块可以支持PROFIBUS 或 RS232/RS485 (支持 PtP通信、Modbus通信或USS通信)或者 AS-i 主站通信。
利用CP 模块可以提供其它通信类型的功能,例如通过 GPRS、IEC、DNP3 或 WDC 网络连接到 CPU。S7-1200 CPU 的通信模块CM或通信处理器CP扩展在CPU的左侧(或连接到另一CM或CP的左侧),而且多支持三个CM或CP的扩展。
通信模块CM包括CM1241通信模块、CM1243-5 PROFIBUS-DP主站模块、CM1242-5 PROFIBUS-DP从站模块,通信处理器CP包括CP1242-7 GPRS模块、CP1243-1以太信处理器。
以CM1241通信模块举例,用于扩展RS232口或RS485口进行串行通信,这个模块可以支持ASCII协议、MODBUS协议、USS协议。
当然除了这个模块可以扩展RS232或RS485通信接口之外,我们还可以使用前面所说的CB信号板,这样我们有了多个选择。S7-1200控制器使用灵活、功能强大,可用于控制各种各样的设备,
设计紧凑、组态灵活且具有功能强大的指令集,这些特点的组合使它成为控制各种应用的解决方案。