西门子DP通讯电缆代理商
SIMATIC S7-200功能模块
SIMATIC S7-200采用一致的模块化设计。除了扩展和通讯模块,模块化的系统提供了用于定位、称重技术和温度测量的一系列具体扩展。
EM 253是一个用于简单定位任务的功能模块(1轴)。可以将它连接到步进电机和伺服电机,通过高频脉冲输入从MicroStepper连接到高性能伺服驱动器。
连接之后,从CPU自动读出配置数据
用于来自过程信号的5位输入
驱动器直接激活用24脉冲输出(向前/向后或者速度/方向)
2控制输出(DIS;CLR)。
12个状态LED
SIWAREX MS是一种多用途称重模块,用于各种简单称重和力测量任务。在SIMATICS7-200自动化系统中可以很容易安装地紧凑型模块。可以在SIMATIC CPU中直接访问实际重量的数据,无需任何额外接口。
通过RS232接口,使用SIWATOOL MS PC程序简便地调整规模
针对在Ex 2区使用,通过Ex接口为1区供电的本质安全测压元件
热电偶模块EM231是一个采用标准热电偶和高精度温度传感器。在±80mV范围内也可能检测到低电平模拟信号。热电偶模块EM231可以与CPU 222,224和226配套使用。
热电阻模块EM231RTD(模拟模块)
S7-200通讯模块
SIMATIC S7-200 Micro PLC提供了的通讯功能。可以在1.2至187.5kbaud数据传输率情况下操作集成的RS485接口:
在高达115.2kbaud的可自由编程模式中,采用用户特定协议如ASCII(这支持与调制解调器,打印机,条形码阅读器,个人PC,第三方PLC以及任何其他设备的互连)。使用USS协议指令,多可以控制32个西门子变频器,无需额外的硬件。
优点
通过有线或无线网络的调制解调器,在世界上几乎任何地方均可以访问S7- 200 CPU。
快速PROFIBUS连接
功能强大的AS-Interface连接
设计和功能
作为一个拥有126个站点的系统总线。在这种容量中,可以连网编程设备,SIMATIC HMI产品和SIMATICCPU,没有任何问题。
带有PCAccess的OPC驱动器
作为一个OPC客户端,它可用于 ProTool Pro,WinCC flexibleRT,WinCC等使用高达8个连接的容量,可以从一个中央位置实现配置、编程和监控,节省了时间和金钱。通过FTP,HTTP,Java和电子邮件方式允许将PLC连接到不同计算机的简单的通用连接,InternetTechnology模块CP243-1 IT还为您提供快速访问功能。以太网模块CP243-1可以通过以太网快速访问S7 -200的过程数据,进行归档或处理。STEP 7-Micro/WIN的配置支持确保简单的调试和方便的诊断方案。
电导率是以数字表示溶液传导电流的能力。水的电导率与其所含无机酸、碱、盐的量有一定的关系,当它们的浓度较低时,电导率随着浓度的增大而增加,该指标常用于推测水中离子的总浓度或含盐量。
电导(G)是电阻(R)的倒数。当两个电极(通常为铂电极或铂黑电极)插入溶液中,可以测出两电极间的电阻R。根据欧姆定律,温度一定时,这个电阻值与电极间距L(cm)正比,与电极的截面积A(cm2)反比,即:
R=ρ×(L/A),其中ρ为电阻率,是长1cm,截面积为1cm2导体的电阻,其大小决定于物质的本性。
据上式,导体的电导(G)可表示成下式:
G=1/R=(1/ρ)×(A/L)=K×(1/J),其中,K=1/ρ称为电导率,J=L/A称为电极常数
电解质溶液电导率指相距1cm的两平行电极间充以1cm3溶液时所具有的电导。由上式可见,当已知电极常数(J),并测出溶液电阻(R)或电导(G)时,即可求出电导率。
电导率仪的结构
1、电极常数调节按钮:对不同电极进行常数调节
2、温度旋钮:对被测溶液进行温度补偿
3、量程开关按钮:校准/量程选择开关,分校准、20μs、200μs、2000μs、20ms四个档
4、校准调节旋钮:校准量程满度
5、后面板结构
电导率仪的用途
由于电导率在多数情况下和溶液内离子的浓度呈正比,通过测电导很容易确定溶液内总的溶解固体的浓度以及溶液的盐度。常见应用场合为:锅炉排污、脱盐作用、逆渗透、盐度测量、水/废水处理。
电导率仪的使用注意事项
1.盛被测溶液的容器必须清洁,无离子玷污。
2.高纯水被盛入容器后应迅速测量,否则电导率降低很快,因为空气中的溶入水里变成碳酸根离子。
3.电极的引线不能潮湿,否则将测不准。
在S7-200编程中,子程序想必大家都用过,使用子程序可以更好地组织程序结构,便于阅读和调试,也可以缩短程序代码。使用子程序也有一些需要注意的地方,除了子程序在同一周期内被多次调用时,不能使用上升沿、下降沿、定时器和计数器之外,还有子程序中局部变量的特点,在编程多次调用带参数子程序时要特别注意。下面就是前些天热线上遇到的一个Case,非常有代表性,在这里跟大家分享。
E:西门子技术支持。
C:我想问下,200子程序是不是多次调用时会不好使?
E:不会啊,您是不是在子程序里使用了沿指令或者定时器?
C:没有啊,我就编了一句很简单的开关程序,开关闭合,线圈导通,主程序里调用了两次这个子程序,结果个I点闭合了,两个Q点都导通了。
E:(心里活动:看来是和子程序的局部变量有关了,估计客户程序逻辑有问题)那请您描述一下您的子程序吧,我帮您看看。
于是客户描述了一下自己的程序,大致了解了之后告知客户我这边测试下,稍后回复。
客户的程序是这样的:
子程序:是个常见的自保持逻辑,接口参数如红框所示。
图. 01
主程序:调用了两次上面的子程序,实现I0.0和I0.1控制Q0.0的闭合和断开,I0.2和I0.3控制Q0.1的闭合和断开。
图. 02
那么在线测试下程序执行情况,发现果然如客户所描述的,I0.0为1后,Q0.0和Q0.1都为1了。见下图.03所示。而如果闭合I0.2,则Q0.0和Q0.1都断开。
图. 03
为什么会这样呢?我们先明确子程序局部变量的特点。局部变量的变量类型分为四种:IN,IN_OUT,OUT和TEMP,局部变量存储区是在子程序调用时开辟的,子程序调用完成,局部变量占用的存储空间释放。
我们来分析下客户的子程序。
在主程序次调用子程序时,如果I0.0为1,I0.1为0,它们将自身值分别传给输入局部变量#AA和#BB,子程序中程序逻辑执行如下图.04所示。此时局部变量#CC值为1,子程序完成,#CC将值传送到输出参数Q0.0上,使其置1。根据局部变量的特点,子程序次调用完成后,局部变量存储区释放。
图.04
那么当主程序第二次调用该子程序时,开辟临时存储空间,此时的存储空间与次调用时开辟的不一定一致。可是,也有可能由于程序简单,仍然使用次调用时占用的存储空间。如果这种情况发生了,那么次调用时已经将#CC的L0.2置了1,而此值依旧存在,那么第二次调用时输入参数I0.2和I0.3为0,#CC(L0.2)为1,由于客户的子程序逻辑有自保持部分,后L0.2的逻辑结果仍然是1。子程序完成后,#CC将值传送到输出参数Q0.1上,使其置1。就会出现客户反映的那种问题。
那么该如何避免这种情况呢?
大家是否还记得刚刚介绍局部变量参数类型时除了IN,OUT类型外,还有一种类型叫IN_OUT,这种类型的参数是先读入,再写出,这里我们就可以利用它的特点解决上面的问题。
下面对子程序的参数进行修改,将原先的#CC变量类型改为IN_OUT。如下图所示:
图.05
主程序结构不变,如下所示,可以看到由于#CC的类型是IN-OUT,它在子程序块的接口位置也转到了左侧输入侧。
图.06
下面将I0.0置1,其他输入都为0,监控程序状态,如图.07所示,可以看到只有Q0.0为1,Q0.1状态为0。而如果将I0.1置1,Q0.0被复位,Q0.1还是0,这样就符合客户的控制要求了。
图.07
同样,如果只给I0.2置1,那么也只有Q0.1会亮,不会再影响Q0.0。
了解了IN_OUT类型变量的特点,就不难分析以上的结果。因为每次调用子程序时,局部变量#CC都会先去读取输入参数Q0.0或Q0.1的状态,两次调用子程序时,#CC变量使用的同一区域,该区域的值也会在开始被Q点的状态所修改,就不存在两次调用相互影响的情况了。
如果在子程序一开始就添加一条指令,对局部变量#CC进行赋初值(如图.08),也可以避免临时变量区数值不定的问题,您可以尝试测试下。
图.08
在编写200子程序时要特别注意局部变量的特点,一旦出现多次调用不正常的情况,就可以从局部变量的特点出发分析,看看是不是存在隐患。善加利用IN_OUT变量也许可以解决许多问题