柳州西门子PLC代理商
DI1-I24 对应Modbus地址 10001- 10024
DQ1-DQ20 对应Modbus地址08193-08212
M1-M64 对应Modbus地址 08257-08320
V0.0-V850.7 对应Modbus地址 00001-06800
AI1-AI8 对应Modbus地址30001-30008
VW0-VW850 对应Modbus地址40001-40426
AQ1-AQ8 对应Modbus地址40513-40520
AM1-AM64 对应Modbus地址40529-40592
图.6
测试结果:使用modbus测试工具可以读取写入数据(图.7)
图.7
西门子S7-200 系列是一种可编程序逻辑控制器(Micro plc)。它能够控制各种设备以满足自动化控制需求。S7-200的用户程序中包括了位逻辑、计数器、定时器、复杂数学运算以及与其它智能模块通讯等指令内容,从而使它能够监视输入状态,改变输出状态以达到控制目的。紧凑的结构、灵活的配置和强大的指令集使S7-200成为各种控制应用的理想解决方案。
1.S7-200 CPU
S7-200 CPU 将一个微处理器、一个集成电源和数字量I/O点集成在一个紧凑的封装中,从而形成了一个功能强大的微型PLC,参见图1。当下载程序之后,S7-200 就可以按照逻辑关系监控I/O设备从而实现应用要求。
图1 S7-200 PLC
Siemens 公司提供多种类型的CPU 以适应各种应用,表1中对各种CPU的特性作一简单比较。
表1 S7-200 的技术指标
2.S7-200扩展模块
为了更好地满足应用要求,S7-200 系列提供多种类型的扩展模块。可以利用这些扩展模块完善CPU的功能。表2列出了现有的扩展模块。
表2 S7-200 的扩展模块
3.S7-200PLC的电源输入
要使S7-200 PLC工作,就是要给S7-200的CPU 供电。图2给出了直流供电和交流供电两种CPU模块的接线方式。在安装和拆除任何电气设备之前,必须确认该设备的电源已断开。在安装和拆除S7-200之前,必须遵循适当的安全防护规范,并确认S7-200 的电源已断开。
图2 给S7-200 CPU 供电
有网友问我:“我在FB块里设置了参数类型为TIMER的输入参数TIM15。同样的数据类型为Timer的输入参数TIM1~TIM14的定时器是程序原有的,用起来没有问题。TIM15是我新增的,调用功能块时用T2作TIM15的实参,在FB里监控TIM15,它不动作。将它改为全局变量,例如T33就正常了。但不知道为什么?烦请廖老师帮忙分析下有那些可能影响的原因。”(我对原话做了些文字整理)。
我用仿真做了实验(见下图),接通两个定时器的线圈,的确看到T33的当前值不断减小,看不到TIM15的当前值和它的变化。
对计数器做类似的实验,也看不到计数器当前值的变化。FC里的定时器、计数器也有同样的问题。
问题到底出在哪里,是FB和FC里的定时器、计数器罢工了吗?
为了确认定时器、计数器是否罢工,我用MOVE指令将定时器TIM15的当前值传送到MW12,在定时器线圈通电时,看到TIM15的当前值从设定值开始不断减小(见下图),看来TIM15并没有罢工,只是在监控定时器线圈时看不到它的当前值而已。对计数器做同样的实验,也能证明FB里地址为参数类型COUNTER的计数器是能工作的。
TIM15是输入参数,它的功能是用来接收定时器的地址,它的输出位的状态不会自动地返回给调用FB的程序。需要在FB里创建一个数据类型为BOOL的输出参数,例如下图中的out1,用它来将TIM15输出位的状态返回给调用FB的程序。