6ES7211-1AE40-0XB0重庆西门子授权代理商
西门子S7-1200/1500 PLC 的功能块
小型工程任务可用线性化编程,复杂工程任务用结构化编程将更容易实现。
结构化编程必须把程序模块化。
程序模块化作用是方便其他程序的调用,便于组织、修改和调试程序。
常用的块有:OB、FB、FC、DB。
块类型 | 说明 |
组织块(OB) | CPU操作系统与用户程序的接口,决定用户程序的结构。 |
函数块(FB) | 用户编写的包含常用功能的子程序块,有专用背景数据块(存储器) |
函数(FC) | 用户编写的包含常用功能的子程序块,无专用背景数据块(存储器) |
背景数据块(DB) | 用于FB的变量的保存 |
全局数据块(DB) | 用于存储用户的数据区域 |
操作系统包含在PLC的CPU中,管理所有与特定工程任务无关的CPU功能和序列,和计算机的操作系统类似。
用户程序就是为特定工程任务服务的功能程序,由用户编写,并装载到PLC的CPU中。
组织块(OB)有中断组织块、启动组织块、循环程序处理块、错误处理块等。
函数(FC)是不带存储器的程序块。由于没有存储器可用,函数的形式参数必须分配实际参数。一个程序可在不同位置多次调用同一个函数。函数用全局数据块也是可以存储数据的。
函数(FB)是带存储器的程序块。它将输入、输出及其参数地存储在背景数据块中,在执行完函数块之后,这些值仍然有效。一个程序可在不同位置多次调用同一个函数块。函数块也可以使用临时变量,只使用一个扫描周期,不存储于背景数据块中。
单次调用可用FC,多次调用可用FB,程序有沿操作、定时器等不能用FC,所以尽量使用FB。FB调用FB时,有个FB的“多重背景”选项,可以对背景数据进行整理。
全局数据块(DB)存储所有其它块都可以用的数据。类似于三菱PLC的全局标签。
背景数据块(DB)是存储实例使用的数据块。函数块的调用称为实例。
西门子S7-1200(十一)S7-1200 存储卡使用
1 S7-1200 存储卡介绍
S7-1200 CPU 使用的存储卡为 SD 卡,存储卡中可以存储用户项目文件,有如下四种功能:
1、作为 CPU 的装载存储区,用户项目文件可以仅存储在卡中,CPU 中没有项目文件,离开存储卡无法运行。
怎样插入存储卡:
将CPU上挡板向下掀开,可以看到右上角有一 MC 卡槽,将存储卡缺口向上插入,如下图所示:
注意
对于 S7-1200 CPU ,存储卡不是必须的。
将存储卡插到一个运行状态的 CPU 上,会造成 CPU 停机。
S7-1200 CPU 仅支持由西门子制造商预先格式化过的存储卡, 存储卡订货号如下表所示:
订货 | 容量 |
6ES7 954-8LF01-0AA0 | 24MB |
6ES7954-8LC01-0AA0 | 4MB |
6ES7 954-8LB01-0AA0 | 2MB |
表 1: 存储卡信息
如果使用 Windows 格式化程序对 SIMATIC 存储卡重新进行格式化,CPU 将无法使用该重新格式化的存储卡。 目前,S7-1200 仍不能使用存储卡实现配方和数据归档这样的功能。
2 存储卡的工作模式
存储卡有两种工作模式:
程序卡:存储卡作为S7-1200 CPU 的装载存储区,所有程序和数据存储在卡中,CPU 内部集成的存储区中没有项目文件,设备运行中存储卡不能被拔出 。
传输卡:用于从存储卡向 CPU 传送项目,传送完成后必须将存储卡拔出。CPU 可以离开存储卡独立运行。
修改存储卡的工作模式:
在STEP 7 Basic 软件的项目视图下,点击左侧'项目视图“--->'SIMATIC Card Reader' --->您的读卡器型号,如下图所示:
右击存储卡的盘符(这里是F:),选择“属性”按钮,打开下面窗口:
用户在“存储卡类型”中选择需要的工作模式,点击“确认”完成设定。
3 程序卡的不同模式
优点:更换 CPU 时不需要重新下载项目文件。
3.1 上载用户文件到存储卡
步: 按照上面方法将存储卡设定到“编程”模式。建议客户做此操作之前清除存储卡中的所有 文件。
第二步: 设置 CPU 的启动状态。在'项目树'中右击 CPU 选择“属性”,在“属性”窗口中点击“启动”,此处我们必须选择“暖启动-RUN 模式”。
第三步: 将 CPU 断电
第四步: 将存储卡插到 CPU 卡槽内
第五步: 将 CPU 上电
第六步: 在 STEP 7 Basic 中点击下载,将项目文件全部下载到存储卡中。此时下载是将项目文件(包括用户程序、硬件组态和强制值)下载到存储卡中,而不是 CPU 内部集成的存储区中。
完成上述步骤后,CPU可以带卡正常运行。此时如果将存储卡拔出,CPU 会报错,'ERROR'红灯闪烁。
3.2 常见问题
FAQ 1
为什么插上存储卡后 CPU 的“MAINT”灯闪烁,使用STEP 7 Basic下载时提示报错“The download of the hardware configuration failed (0050 -133 2 2458)”?
回答
请清除存储卡中的所有文件,重新使用STEP7 Basic软件将存储卡设置到“编程”模式,然后再重复上述步骤。请您也检查存储卡上的拨码开关,检查存储卡是否处于写保护模式。
FAQ2
为什么CPU断电上电后进入停止状态,而不进入运行状态?
回答
原因是 CPU 的启动方式不是“暖启动-RUN 模式”,详细请参考上面“第二步”。
4 使用传输卡模式
优点: 编程器存在的情况下,传输卡可以向多个S7-1200 PLC 复制项目文件。
4.1 向处于传输模式的存储卡中装载项目
步: 按照上面方法将存储卡设定到“ 传输”模式。建议客户做此操作之前清除存储卡中的所 有文件。
第二步: 设置 CPU 的启动状态:在'Project tree'中右击 CPU 选择“属性”,在“属性”窗口中点 击“启动”,此处我们必须选择“暖启动-RUN 模式”。
第三步: 直接拖拽 PLC 设备到存储卡盘符
用户也可以直接将一张已经做好的“程序卡”更改为“传输卡” 。
4.2 从存储卡复制项目到 S7-1200 PLC
步: 将 CPU 断电
第二步: 插卡到 CPU 卡槽
第三步: 将 CPU 上电,用户会看到 CPU 的'MAINT'黄灯闪烁
第四步: 将 CPU 断电,将存储卡拔出
FAQ
为什么 CPU 断电上电后进入停止状态,而不进入运行状态?
回答
1、CPU 的启动方式不是“暖启动-RUN 模式”,详细请参考上面“第二步”。
2、检查第三步,必须拖拽 PLC 项目到存储卡盘符,而不只是程序块等其他项目内容。下载到存储卡中的项目文件有可能不完整,例如缺失硬件组态等。
5 使用存储卡清除密码
如果客户忘记了之前设定的 S7-1200 的密码,通过”恢复出厂设置“无法清除 S7-1200 内部的程序和密码,使用存储卡是清除密码的唯一方法。详细步骤如下:
1、将 S7-1200 设备断电
2、插入一张存储卡到 S7-1200 CPU 上,存储卡中的程序不能有密码保护
3、将 S7-1200 设备上电
S7-1200 CPU 上电后,会将存储卡中的程序复制到内部的 FLASH 寄存器中,即执行清除密码操作。
客 户也可以用相同的方法插入一张全新的或者空白的存储卡到 S7-1200 CPU,设备上电后,S7-1200 CPU 会将内部存储区的程序转移到存储卡中,拔下存储卡后,S7-1200 CPU 内部将不在有用户程序,即实现了清除密码。存储卡中的内容可以使用读卡器清除。
注意: 不要格式化存储卡。
6 使用24M存储卡更新 S7-1200 CPU 的固件版本
注意
1、不同订货号的S7-1200 CPU 的固件文件不相同,下载地址也不相同。用户在下载和更新固件之前请核对产品订货号。
2、2M存储卡不能用于 CPU 固件升级。
3、固件升级前 CPU 内部存储的项目文件(程序块、硬件组态等)不受影响,不会被清除。
4、如果存储卡中的固件文件订货号与实际 CPU 的订货号不一致,即使执行了下列步骤,CPU的原固件版本也不会改变。
更新 CPU 的固件版本具体步骤如下:
一: 使用电脑通过读卡器清除存储卡中内容。注意:不要格式化存储卡!
第二步: 从西门子网站下载新版本的固件文件。下载并解压缩,用户可以得到一个“S7_JOB.SYS”文件和“FWUOPDATE.S7S”文件夹。
第三步: 将“S7_JOB.SYS”文件和“FWUOPDATE.S7S”文件夹拷贝到存储卡中。
第四步: 将存储卡插到 CPU 1200 卡槽中。此时CPU会停止,“MAINT”指示灯闪烁。
第五步: 将 CPU 断电上电 。CPU的“RUN/STOP” 指示灯黄绿交替闪烁说明固件正在被更新 中。如果“RUN/STOP” 指示灯常亮,“MAINT”指示灯闪烁说明固件更新已经结束。
第六步: 拔出存储卡。
第七步: 再次将 CPU 断电上电。
用户可以在'STEP 7 Basic软件--->online & diagnostics--->Diagnostics--->General'中在线查看 CPU 目前的固件版本。