SIEMENS西门子宜春授权代理商
S7-400
中端性能范围内功能强大的 PLC
可满足要求极为苛刻的任务的解决方案
的模块和各种性能等级 CPU 可针对具体自动化任务进行调整
可实现分布式结构,适用十分灵活
连接方便
通信和联网功能
操作方便,设计简单,不含风扇
任务增加时可顺利扩展
多重计算:
多个 CPU 在一个 S7-400 中央控制器中同时运行。
多重计算功能可对 S7-400 的总体性能进行分配。例如,可将复杂的技术任务(如开环控制、计算或通信)进行拆分并分配给不同的 CPU。可以为每个 CPU 分配自己的 I/O。
模块化:
通过功能强大的 S7-400 背板总线和可直接连接到 CPU 的通信接口,可实现许多大量通信线路的高性能操作。例如,这样可以拥有一条用于 HMI 和编程任务的通信线路、一条用于高性能等距运动控制组件的通信线路和一条“正常”I/O 现场总线。另外,还可以实现额外需要的与 MES/ERP 系统或 Internet 的连接。
工程组态和诊断:
结合使用 SIMATIC 工程组态工具,可极为高效地对 S7-400 进行组态和编程,尤其对于采用高性能工程组件的广泛自动化任务。为此,可以使用语言(如 SCL)以及用于顺序控制、状态图和工艺图的图形化组态工具。
.西门子PLC编程软件
西门子公司针对SIMATIC系列PLC提供了很多种的编程软件,主要有STEPMICRO/DOS和STEPMICRO/WIN;STEPmini;标准软件包STEP7
S7系列的PLC的编程语言非常丰富,有LAD、STL、SCL、GRAPH、HIGRAPH、CFC等。用户可以选择一种语言编程,如果需要,也可以混合使用几种语言编程。
2.程序结构
程序结构主要适用与S7-3000和S7-400,他有线性编程、分步式编程和结构化编程等3种编程方法。
FPI系列可编程控制器是日本松下电工公司的小型PLC产品。
FPI编程软件及指令系统
1.编程方式
NPST-GR提供了3种编程方式:梯形图方式;语句表方式和语句表达方式。
2.注释功能
NPST-GR可以为I/O继电器和输出点加入注释,使用户对继电器所对应的设备及继电器的用途一目了然。
3.程序检查
NPST-GR能查找程序中语法的错误和进行程序校验
4.监控
NPST-GR能监控用户编制的程序,并可以进行运行测试。用户可以检查继电器、寄存器和PLC工作状态,方便的进行调试与修改。
5.系统寄存器设置
NPST-GR可设置N0.0-N0.418系统寄存器的内容,根据屏幕的提示信息进行选择或输入,简单方便。
6.I/O和远程I/O地址分配
用NPST-GR可以为主机扩展板上每个槽分配I/O和远程I/O地址
7.数据管理
数据管理可以将程序或数据存盘,用于数据备份,或在传入PLC之前暂存数据
两者在编程的应用上还有就是西门子的是单母线,而日本松下的是双母线;
还有就是西门子和日本松下的输入和输出也不同的,日本松下的输入就只有X,输出就只有Y。
其实语言是相通的,就是方法不同,两个可以相互转换。
西门子S7-1200PLC的IEC格式的定时器属于功能块。在插入定时器指令时,要求创建一个16字节的IEC_Timer数据类型的DB结构(即背景数据块),来保存有关的数据。在功能块中,可以事先创建一个IEC_Timer数据类型的静态变量(多重背景),然后将它给定时器指令。
CPU没有给任何特定的定时器指令分配专门的资源。每个定时器使用DB结构和一个连续运行的内部CPU定时器(我的理解是一个硬件定时器)来执行定时。
在定时器指令的输入IN的上升沿启动定时器时,连续运行的内部CPU定时器的值将被复制到为该定时器指令分配的DB结构的元素START(起始值)中。
该起始值在定时器继续运行期间将保持不变,以后将在每次更新定时器时使用。以下条件时将会执行定时器更新:
1)执行定时器指令(TP、TON、TOF或TONR);
2)定时器结构的元素ELAPSED(经过的时间)或位输出Q作为其它指令的参数,该指令被执行。
更新定时器时,将从内部CPU定时器的当前值中减去上述起始值,得到经过的时间ELAPSED。再将ELAPSED与预设值PT进行比较,以确定定时器的位输出Q的状态。然后更新该定时器的DB结构的元素ELAPSED和Q。达到预设值PT后,定时器不会继续累加经过的时间ELAPSED。
STEP7Basic的V11版与V10.5版相比,增加了类似于S7-300/400的定时器线圈指令。
从上述的定时器内部的定时机制可知,在使用定时器时,其定时精度与CPU的扫描周期有很大的关系。在CPU两次更新定时器之间,定时器的输入、输出参数保持不变。
为了验证上述结论,在FB1中调用定时器指令TP,在OB1中用I0.1作为调用条件,调用FB1。用监视表格监视定时器的输出Q和经过的时间ET,用输入IN的上升沿启动定时器后,如果I0.1为0状态,没有调用FB1和执行定时器指令,定时器的输出Q和经过的时间ET保持不变。只有在调用FB1,执行定时器指令时,ET的值才会变化。
对于CPU31*C紧凑型CPU,由于CPU模块本身集成有I/O点,对于这些I/O点,同样需要设定其属性参数。
在硬件安装清单上,右键单击CPU模块集成I/O所在的行,并选中“对象属性(ObjectProperties...)”选项,可以打开集成I/O的参数设定页面。
通过设定页面不同的标签,可以打开不同的参数设定对象。
在基本参数(General)设定页面,可以在“简介(Short)”栏显示集成I/O的特征参数。在“地址(Address)”设定页面,可以显示与设定集成I/O的起始地址,地址也可以通过选定“系统选择(SV)”诜项,由PLC讲行白动分配
西门子S7-200的自由口通信需要通过编程设置串口的工作模式,安排发送和接受指令的触发顺序,还要设定接收的起始和结束条件。对于刚刚开始使用s7-200的电气工程师来说,的确有很多细微处易犯错误。一般碰到客户抱怨通信不上的问题,就要逐一帮客户确认编程配置是否正确。虽然麻烦,不过逐条查下去,总能查到错误所在并解决问题。但是有一次客户遇到的问题颇出人意料,还真耗费了一些时间。
客户反应在编写了自由口通信程序之后,PLC可以发送数据给通信伙伴,但是却收不到任何伙伴方发出的数据。能发送数据给对方,说明通信端口设置没有问题。极有可能是端口被其他通信指令占用导致无法进入接收状态。比如说用常开点调用XMT,或者没有对接收的故障状态进行判断并终止接收,从而导致后续的XMT和RCV都无法被正确执行。客户表示他的程序并不存在这种情况。但是为了测试问题所在,客户下载了一个仅包含条件触发RCV的程序下去,还是接收不到数据。监控程序RCV指令已被正常执行。
那么是不是接收的起始条件设置不当?客户使用的是起始字符,这并无不妥。并且改成空闲线检测之后,问题依然存在。难道是对方发送的信号有问题用串口调试软件来测试,是可以接收到的。眼见这几个常见错误都没能cover住这个问题,我只好从头一步步地跟客户确认。但是还是没能发现任何破绽。郁闷之下,只好让客户把程序发过来看看。
次检查程序的时候还真没注意到问题出在哪里。等到看出来了才觉得啼笑皆非:
不知道大家看出来没有?客户在设定完空闲线时间SMW90和消息定时器溢出值SMW92后,惯性地将接受地大字符数SMB94也写成了传送字SMW94。而西门子PLC的高低字节是逆序的,也就是说SMB94为高有效字节,SMB95为低有效字节。见手册中的如下说明:
结果就是大字符数100被传给了SMB95,SMB95是神马呢?神马也不是,总之与接收条件无关。而真正大字符数存储字节SMB94被赋值为0。大字符数都为0了,那当然是接收不到任何数据了。
S7-200 PLC 功能强大,性能可靠,但在做数学运算时不能象语言那样做变量类型自动转换,经常要手工做 BTI、ITD 之类的转换,计算完成后又要 DTI 等耗时的操作,而且使代码行数增加,程序可读性不好,也降低了程序运行的效率。
西门子S7-200 plc的存储器空间大致分为三个空间,即程序空间、数据空间和参数空间。 1.程序空间 该空间主要用于存放用户应用程序,程序空间容量在不同的CPU中是不同的。另外CPU中的RAM区与内置EEPROM上都有程序存储器,但它们互为映像,且空间大小一样。 2.数据空间 该空间的主要部分用于存放工作数据称为数据存储器,另外有一部分作寄存器使用称为数据对象。 (1)数据存储器 它包括变量存储器(V),输入信号缓存区(输入映象存储器I),输出信号缓冲区(输出映象存储区Q),内部标志位存储器(M)又称内部辅助继电器,特殊标志位存储器(SM)。除特殊标志位外,其他部分都能以位、字节、和双字的格式自由读取或写入。 变量存储器(V)是保存程序执行过程中控制逻辑操作的中间结果,所有的V存储器都可以存储在存储器区内,其内容可在与EEPROM或编程设备双向传送。 输入映象存储器(I)是以字节为单位的寄存器,它的每一位对应于一个数字量输入结点。在每个扫描周期开始,PLC依次对各个输入结点采样,并把采样结果送入输入映象存储器。PLC在执行用户程序过程中,不再理会输入结点的状态,它所处理的数据为输入映象存储器中的值。 输出映象存储器(Q)是以字节为单位的寄存器,它的每一位对应于一个数字输出量结点。PLC在执行用户程序的过程中,并不把输出信号随时送到输出结点,而是送到输出映象存储器,只有到了每个扫描周期的末尾,才将输出映象寄存器的输出信号几乎同时送到各输出结点。使用映象寄存器优点:①同步地在扫描周期开始采样所有输入点,并在扫描的执行阶段冻结所有输入值;②在程序执行完后再从映象寄存器刷新所有输出点,使被控系统能获得更好稳定性;⑧存取映象寄存器的速度高于存取I/O速度,使程序执行的更快;④I/O点只能以位为单位存取,但映象寄存器则能以位、字节、双字进行存取。因此,映象寄存器提供了更高的灵活性。另外对控制系统中个别I/O点要求实时性较高的情况下,可用直接I/O指令直接存取输入/输出点。 内部标志位(M)又称内部线圈(内部继电器等),它一般以位为单位使用,但也能以字、双字为单位使用。内部标志位容量根据CPU型号不同而不同。 特殊标志位(SM)用来存储系统的状态变量和有关控制信息,特殊标志位分为只读区和可写区,具体划分随CPU不同而不同。 (2)数据对象 数据对象包括定时器、计数器、高速计数器、累加器、模拟量输入/输出。 定时器类似于继电器电路中的时间继电器,但它的精度更高,定时精度分为lms,10ms和100ms三种,根据精度需要由编程者选用。定时器的数量根据CPU型号不同。 计数器的计数脉冲由外部输入,计数脉冲的有效沿是输入脉冲的上升沿或下降沿,计数的方式有累加1和累减1两种方式。计数器的个数同各CPU的定时器个数。 高速计数器与一般计数器不同之处在于,计数脉冲频率更高可达2kHz/7kHz,计数容量大,一般计数器为16位,而高速计数器为32位,一般计数器可读可写,而高速计数器一般只能作读操作。 在S7-200CPU中有4个32位累加器,即AC0~AC3,用它可把参数传给子程序或任何带参数的指令和指令块。此外,PLC在响应外部或内部的中断请求而调用中断服务程序时,累加器中的数据是不会丢失的,即PLC会将其中的内容压入堆栈。因此,用户在中断服务程序中仍可使用这些累加器,待中断程序执行完返回时,将自动从堆栈中弹出原先的内容,以恢复中断前累加器的内容。但应注意,不能利用累加器作主程序和中断服务子程序之间的参数传递。 模拟量输入/输出可实现模拟量的A/D和D/A转换,而PLC所处理的是其中的数字量。 3.参数空间 用于存放有关PLC组态参数的区域,如保护口令、PLC站地址、停电记忆保持区、软件滤波、强制操作的设定信息等,存贮器为EEPROM |