AI 信号?

请问各位S7-200 的AI卡的信号的范围如何设置,我看看都用程序刻度值0-32000 (是默认值吗?),不理解。我现在有个信号是4-20MA的对应0-1000的。应该怎么写,谢谢了

最佳答案

经常在论坛上看到网友提出工程量显示的问题,想在此做个专题,供各位网友参考。

 1、基本概念

 我们生活在一个物质的世界中。世间所有的物质都包含了化学和物理特性,我们是通过对物质的表观性质来了解和表述物质的自有特性和运动特性。这些表观性质就是我们常说的质量、温度、速度、压力、电压、电流等用数学语言表述的物理量,在自控领域称为工程量。这种表述的优点是直观、容易理解。在电动传感技术出现之前,传统的检测仪器可以直接显示被测量的物理量,其中也包括机械式的电动仪表。

 2、标准信号

 在电动传感器时代,中央控制成为可能,这就需要检测信号的远距离传送。但是纷繁复杂的物理量信号直接传送会大大降低仪表的适用性。而且大多传感器属于弱信号型,远距离传送很容易出现衰减、干扰的问题。因此才出现了二次变送器和标准的电传送信号。二次变送器的作用就是将传感器的信号放大成为符合工业传输标准的电信号,如0-5V、0-10V或4-20mA(其中用得最多的是4-20mA)。而变送器通过对放大器电路的零点迁移以及增益调整,可以将标准信号准确的对应于物理量的被检测范围,如0-100℃或-10-100℃等等。这是用硬件电路对物理量进行数学变换。中央控制室的仪表将这些电信号驱动机械式的电压表、电流表就能显示被测的物理量。对于不同的量程范围,只要更换指针后面的刻度盘就可以了。更换刻度盘不会影响仪表的根本性质,这就给仪表的标准化、通用性和规模化生产带来的无可限量的好处。

 3、数字化仪表

 到了数字化时代,指针式显示表变成了更直观、更精确的数字显示方式。在数字化仪表中,这种显示方式实际上是用纯数学的方式对标准信号进行逆变换,成为大家习惯的物理量表达方式。这种变换就是依靠软件做数学运算。这些运算可能是线性方程,也可能是非线性方程,现在的电脑对这些运算是易如反掌。

 4、信号变换中的数学问题

 信号的变换需要经过以下过程:物理量-传感器信号-标准电信号-A/D转换-数值显示。

 声明:为简单起见,我们在此讨论的是线性的信号变换。同时略过传感器的信号变换过程。

 假定物理量为A,范围即为A0-Am,实时物理量为X;标准电信号是B0-Bm,实时电信号为Y;A/D转换数值为C0-Cm,实时数值为Z。

 如此,B0对应于A0,Bm对应于Am,Y对应于X,及Y=f(X)。由于是线性关系,得出方程式为Y=(Bm-B0)*(X-A0)/(Am-A0)+B0。又由于是线性关系,经过A/D转换后的数学方程Z=f(X)可以表示为Z=(Cm-C0)*(X-A0)/(Am-A0)+C0。那么就很容易得出逆变换的数学方程为X=(Am-A0)*(Z-C0)/(Cm-C0)+A0。方程中计算出来的X就可以在显示器上直接表达为被检测的物理量。

 5、PLC中逆变换的计算方法

 以S7-200和4-20mA为例,经A/D转换后,我们得到的数值是6400-32000,及C0=6400,Cm=32000。于是,X=(Am-A0)*(Z-6400)/(32000-6400)+A0。

 例如某温度传感器和变送器检测的是-10-60℃,用上述的方程表达为X=70*(Z-6400)/25600-10。经过PLC的数学运算指令计算后,HMI可以从结果寄存器中读取并直接显示为工程量。

 用同样的原理,我们可以在HMI上输入工程量,然后由软件转换成控制系统使用的标准化数值。

 在S7-200中,(Z-6400)/25600的计算结果是非常重要的数值。这是一个0-1.0(100%)的实数,可以直接送到PID指令(不是指令向导)的检测值输入端。PID指令输出的也是0-1.0的实数,通过前面的计算式的反计算,可以转换成6400-32000,送到D/A端口变成4-20mA输出。

 以上讲述的是PLC中工程量转换的基本方法,程序的编写则因人、因事而异。但是万变不离其衷。如果大家感兴趣,我可以给出自己编写的程序供大家参考,同时也希望各位网友不吝赐教、互相交流。
参考资料:鼠老爹"工程量转换的方法"

提问者对于答案的评价:
你们的回答都好!谢谢!

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc356871.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午9:37
下一篇 2021年7月5日 上午9:37

相关推荐

  • 西门子 plc 200的加法器和乘法器

    我编程序要用到一个加法器和一个乘法器来实现浮点数的运算 但编译时候报错不知为何 已经用 MOV指令把浮点数赋值给了VD变量 然后用VD变量进…

    2021年7月5日
  • 模拟量通讯

    系统如果不带模拟量扩展模块,用MODEBUS通讯读入的仪表值是否可以被正传送到HMI? 最佳答案 用MODEBUS通讯读入的仪表值是代表值,在PLC里转换为显示值,就能在HMI上显…

    SIMATIC S7-200 2020年10月31日
  • S7-200 通讯端口故障

    今天开机,突然发现S7-200(CPU 是222CN)不能通讯了。我用的是USB-PPI转接线。换了一根通讯电缆(PC-PPI电缆),还是通讯不上。中午试着又重新搜索了一…

    SIMATIC S7-200 2020年10月31日
  • 6ES7 277-0AA22-0XA0

    6ES7 277-0AA22-0XA0 ,我的EM277模块为这个型号,我添加的GSD文件为,6ES7 277-0AA20-0XA0我组态后,怎么通讯…

    SIMATIC S7-200 2020年11月1日
  • 如何停止顺序控制程序

    首次下载置位初始位,按下启动按钮开始了顺序循环控制程序,这个好做,请问按下停止按钮后顺序循环控制程序停止怎么做呢?复位所有标志位?在一个周期里,既有起保停控制标志位线圈,又有复位指…

    SIMATIC S7-200 2018年12月14日
  • 关于BGN_ITIME求出时间的起始处在何时?

    如图程序就只有一行程序,用SM0.1去让BGN_ITIME获取内置1ms计数器的值,但是读出的时间是28103,也就是说内部1ms的计数器已经运行了28秒多了,可是SM0.1就只接…

    2021年7月5日
  • S7-200 与 WINCC 最大通信速度多少

    S7-200 与WINCC通信据说通过DP可以达到12Mb/s,我使用WINCC对S7-200VW10-VW20 五个字节进行控制,我想计算最小控制时间,求高手…

    SIMATIC S7-200 2020年10月31日
  • PLC控制步进电机的接线问题

    我用的是是(雷赛的驱动器dm432c)PLC是222 cn dc/dc/dchttp://www.leisai.com/Show_Product.asp?id=…

    SIMATIC S7-200 2020年11月1日
  • 200plc step7输入滤波器

    200plc编程软件里的系统块-输入滤波器里的输入滤波延时,为什么只有i0.0和i0.4呢?是只能设置这两个输入点吗?其它的不可以吗?可以的话在哪里设置?谢谢 专家建议 您好,请您…

    SIMATIC S7-200 2020年11月1日
  • 中断程序中关于定时器问题

    在中断程序中写了定时器,定时器的设定值大于中断程序扫描周期时,定时器的触点是不是永远不会发生变化?  中断程序可以是空程序吗。。空程序的意义在何处呀? 最佳答案…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论