SIMATIC S7-1500 软控制器 CPU 1507S 执行 SIMATIC S7-1500 控制器的功能,作为软件在SIMATIC IPC 上的 Windows 系统中运行。CPU 1507S 针对采用 IPC427E 箱式 PC 和 IPC477E面板式 PC 的基于 PC 的任务进行了优化。另外,CPU 1507S 还支持 IPC227E、IPC627D、IPC627E 和IPC827D 箱式 PC、IPC277E、IPC677D 和 IPC677E 面板式 PC 和IPC647D、IPC647E、IPC847D 和 IPC847E 机架式 PC。
SIMATIC S7-1500 软控制器 CPU 1507S 能够执行由 C/C++ 语言创建的程序。这些功能可用SIMATIC ODK 1500S 或 SIMATIC Target 来创建,并可针对在 Windows 中以及 CPU 1507S的实时环境中进行开发。可以实现以下应用:
执行在 Windows 系统中使用 ODK 创建的函数库,例如:
将数据库连接至控制任务
在 Windows 操作系统下连接各种设备,比如手持式扫描仪
实现协议转换器
实时执行函数库,例如:
集成现有由 C/C++ 语言实现的可复用开环和闭环控制代码
集成基于模型的开发环境的控制代码,比如由 SIMATIC Target 生成的代码
用 C/C++ 编写与平台无关的控制程序代码
将程序下载到 CPU 中 (1)通过项目管理器下载。在项目窗口中,选择想要下载的用户程序或 块。通过选择菜单命令「PLC→下载」将所选对象下载到可编程逻辑控制 器。也可以采用拖放方法,打开项目的离线窗口和在线窗口。在离线窗口中选择想要下载的对象,并将它们拖到在线窗口中。 (2)不带项目管理的下载。使用菜单命令「PLC→ 显示」可访问节点或通过单击工具栏中的相应按钮,打开「可访问节点」窗口和双击所需节点(“MPI=...”)以显示「块」文件夹。打开想要将其用户程序或块下载到 PLC 的库或项目,可将对象下载到 PLC。 (3)在PLC 中重新装载块 可以用新版本的块覆盖已存在于 S7-PLC 的 CPU 中的装入存储器(RAM)或工作存储器中的块(重载它们)。
覆盖已存在的版本。重载 S7 块 的步骤与下载相同。 6.1.4.3 分别下载硬件组态和连接组态 (1)下载组态到PLC。下载之前,使用菜单命令「站 → 检查一致性」, 确保站组态中没有错误。然后,STEP 7 检查是否可以从当前组态中创建可下载的系统数据。在一致性检查期间发现的所有错误会在显示在窗口中。 (2)下载步骤。① 选择菜单命令「PLC→ 下载」到模块。②STEP7 通 过对话框指导您完成该过程。整个 PLC 的组态下载到 CPU 中。CPU 参数立即生效。在启动期间,其他模块的参数传送到该模块。 (3)下载网络组态到 PLC。只有当组态无错,即子网中所有连网模块都具有唯一的节点地址,并且其实际组态与所创建的网络组态相匹配时,才能 通过子网(工业以太网、PROFIBUS 或MPI)将组态下载至可编程控制器。
在该通信方式下,通信端口完全由用户程序所控制,通信协议也由用户设定。PC机与PLC之间是主从关系,PC机始终处于主导地位。PLC的通信编程首先是对串口初始化,对S7-200PLC的初始化是通过对特殊标志位SMB30(端口0)、SMB130(端口1)写入通信控制字,设置通信的波特率,奇偶校验位、停止位和字符长度。显然,这些设定必须与PC的设定相一致。
其中,校验方式:00和11均为无校验、01为偶校验、10为奇校验;字符长度:0为传送字符有效数据是8位、1为有效数据是7位;波特率:000为38400baud、001为19200baud、010为9600baud、011为4800baud、100为2400baud、101为1200baud、110为600baud、111为300baud;通信协议:00为PPI协议从站模式、01为自由口协议、10为PPI协议主站模式、11为保留,缺省设置为PPI协议从站模式。
XMT及RCV命令分别用于PLC向外界发送与接收数据。当PLC处于RUN状态下时,通信命令有效,当PLC处于STOP状态时通信命令无效。
XMT命令将指定存储区内的数据通过指定端口传送出去,当存储区内后一个字节传送完毕,PLC将产生一个中断,命令格式为 XMTTABLE,PORT,其中PORT指定PLC用于发送的通信端口,TABLE为是数据存储区地址,其个字节存放要传送的字节数,即数据长度,大为255。
RCV命令从指定的端口读入数据存放在指定的数据存储区内,当后一个字节接收完毕,PLC也将产生一个中断,命令格式为RCV TABLE,PO RT,PLC通过PORT端口接收数据,并将数据存放在TBL数据存储区内,TABLE的个字节为接收的字节数。
在自由口通信方式下,还可以通过字符中断控制来接收数据,即PLC每接收一个字节的数据都将产生一个中断。因而,PLC每接收一个字节的数据都可以在相应的中断程序中对接收的数据进行处理。
西门子PLC在运行时采用循环执行用户程序的方式,这种运行方式也称为扫描工作方式。
下面是循环处理的各个阶段的任务:
1、操作系统启动循环时间监控。
2、CPU将过程映像输出区的数据写到输出模块。
3、CPU读取输入模块的输入状程序中的指令。
4、在循环结束时,操作系统执行其他任务,例如下载和删除块等。
5、CPU返回阶段,重新启动循环时间监态,并存入过程映像输入区。
6、CPU处理用户程序,执行用户控。
为什么不是像其他PLC那样,在本次扫描周期结束的时候将过程映像输出区的数据写到输出模块,而是在下一个扫描循环周期才写到输出模块?这样不是产生了一个扫描周期的延迟吗?回收三菱PLC。
这是因为PLC的扫描工作方式是一种重复的循环过程,就像我们日常使用的时钟一样,23点59分59秒过了就是下的0点0分0秒。说起来进入了下,实际上只差一点点时间。因此在下一扫描周期的开始将数据输出到外设,与本周期结束时输出的效果基本上是一样的。这两种方法的输出时间相差不是一个扫描周期,基本上没什么差别。