求一个最简单的模拟量输入,报警信号! 点击:1426 | 回复:19



棒头

    
  • 精华:0帖
  • 求助:2帖
  • 帖子:12帖 | 69回
  • 年度积分:0
  • 历史总积分:271
  • 注册:2006年2月10日
发表于:2012-10-19 09:26:38
楼主
温度传感器4-20ma输入,0-150度,然后在100度的时候报警输出do,求梯形图。不胜感激。



xiaobeiweng

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 424回
  • 年度积分:0
  • 历史总积分:1461
  • 注册:2009年8月25日
发表于:2012-10-19 11:18:26
1楼
新手 灰过~坐等大牛~                     ~

ac 米兰

  • 精华:4帖
  • 求助:0帖
  • 帖子:228帖 | 12359回
  • 年度积分:2963
  • 历史总积分:29795
  • 注册:2004年4月26日
发表于:2012-10-19 12:33:42
2楼

0-32000

乘除运算

比较就行了

renwendi

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 41回
  • 年度积分:0
  • 历史总积分:281
  • 注册:2012年9月10日
发表于:2012-10-19 15:32:06
3楼
新手,最近学习西门子想编一个这样的程序,哪位大师指导一下

wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2012-10-19 15:40:52
4楼

     选用S7-200PLC的模拟量输入模块EM231,其模拟量输入设置为0~20ma,温度传感器4-20ma输入给EM231的模拟量输入端,使EM231将自动转换为0~32000数字量,其值对应温度为0~150度。其温度与数字量的关系式为:

   Tx=150×(AIW0-6400)÷25600  ....(1)     将Tx=100度 代入式(1),得对应数字量:AIW0=23467

      编程时就可不用求出温度值,直接用读取的AIW0与数 23467比较,当AIW0=23467时,温度正好=100度,使报警输出即可。见:

阳正

  • 精华:0帖
  • 求助:8帖
  • 帖子:15帖 | 151回
  • 年度积分:0
  • 历史总积分:391
  • 注册:2006年3月08日
发表于:2012-10-19 15:49:36
5楼
最好能加个时间继电器,一般23467的后2~3位会跳。

棒头

  • 精华:0帖
  • 求助:2帖
  • 帖子:12帖 | 69回
  • 年度积分:0
  • 历史总积分:271
  • 注册:2006年2月10日
发表于:2012-10-19 15:57:00
6楼

看这个梯形图应该满足要求,后面再编写一个比较程序是吧?我不是很明白最后那个s语句有什么必要没有?

然后这个200改成150 就对了吧,应该!

棒头

  • 精华:0帖
  • 求助:2帖
  • 帖子:12帖 | 69回
  • 年度积分:0
  • 历史总积分:271
  • 注册:2006年2月10日
发表于:2012-10-19 16:04:37
7楼
回复内容:
对:阳正关于 最好能加个时间继电器,一般23467的后2~3位会跳。 内容的回复:

我不是很懂什么意思。。。。解释一下?

阳正

  • 精华:0帖
  • 求助:8帖
  • 帖子:15帖 | 151回
  • 年度积分:0
  • 历史总积分:391
  • 注册:2006年3月08日
发表于:2012-10-19 16:58:07
8楼
回复内容:
对:棒头关于回复内容:对:阳正关于 最好能加个时间继电器,一般23467的后2~3位会跳。 内容的回复:我不是很懂什么意思。。。。解释一下? 内容的回复:


如果在温度99.9摄氏度和100.1摄氏度之间跳动的话,报警q1.0就会出现闪烁。我是这么加的

wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2012-10-19 17:09:51
9楼

      6楼:将200改为150 完全可以。你说“最后那个s语句有什么必要没有?”,在这个整数运算的子程序里使M1.0置1对运算没有用,它仅是表示子程序运算结束的标识符,可作其他控制用。

      6楼的程序是用转换公式求出温度值T,还得用比较指令,将算出的温度值与100比较,相等时报警输出Q0.0=1。不如直接按转换公式求出100度时的数值量,这样运行时PLC就不需将读取的数字量时时进行公式转算,直接用读取的数字量与100度时的数值量进行比较,简化程序。

     4~20ma信号处理得好,转换的数字量不会有2位数的跳动的。

     

wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2012-10-19 17:57:18
10楼

    8楼:你出的梯形图看不明白:你加20秒的通电延时定时器起什么作用?如果VW60值不断的高于、低于1600,T41将永远处于不动作的状态,即报警输出恒=0。只有VW60>>1600,不会出现<1600时,且保持20秒这种状态不变才能报警,报警后一旦VW60低于1600,T41立可断开,报警停,再出现>1600,必须保持20秒VW60>1600,才会发出第二次报警。这样实现报警行吗?

    一般 4~20ma信号处理得好,没有外干扰,其转换的数字量不会有2位数值的跳动。假设数字量有较大的跳动,比如±100,100度时的数字量=23467,其100度的最小数字量=23467-100=23367,最大=23467+100=23567,编程时可以这样编程既既可排斥输出的闪动:

阳正

  • 精华:0帖
  • 求助:8帖
  • 帖子:15帖 | 151回
  • 年度积分:0
  • 历史总积分:391
  • 注册:2006年3月08日
发表于:2012-10-19 19:53:16
11楼
回复内容:
对:wyb2866255---王者之师关于    8楼:你出的梯形图看不明白:你加20秒的通电延时定时器起什么作用?如果VW60值不断的高于、低于1600,T41将永远处于不动作的状态,即报警输出恒=0。只有VW60>>1600,不会出现<1600时,且保持20秒这种状态不变才能报警,报警后一旦VW60低于1600,T41立可断开,报警停,再出现>1600,必须保持20秒VW60>1600,才会发出第二次报警。这样实现报警行吗?    一般 4~20ma信号处理得好,没有外干扰,其转换的数字量不会有2位数值的跳动。假设数字量有较大的跳动,比如±100,100度时的数字量=23467,其100度的最小数字量=23467-100=23367,最大=23467+100=23567,编程时可以这样编程既既可排斥输出的闪动:内容的回复:

我写的那个是检测温度启动电机的,不是针对LZ的模拟量输出,我只是想表达加个时间的想法。

设备维护

  • 精华:2帖
  • 求助:0帖
  • 帖子:2帖 | 465回
  • 年度积分:0
  • 历史总积分:589
  • 注册:2007年7月13日
发表于:2012-10-20 20:17:04
12楼

     这样的处理太费钱了,知道多少银子吗.我不会这样做,买个温控器,一个指示灯的了省钱办事.

除非公家的,不化自已钱,练自已手.

阿水--王者之师

  • 精华:23帖
  • 求助:347帖
  • 帖子:1611帖 | 22281回
  • 年度积分:37
  • 历史总积分:98482
  • 注册:2007年3月22日
发表于:2012-10-21 08:43:58
13楼
引用 设备维护 的回复内容:      这样的处理太费钱了,知道多少银子吗.我不会这样做,买个温控器,一个指示灯的了省钱办事.除非公家的,不化自已钱,练自已手.


        人家一个设备不会光只是一个温度传感器去用 PLC + 模拟量模块呀,设备还会有别的控制      

没有玩过 200 的模拟量模块,也不知道程序如何写,300 的有标准块调用,或是自己写比较简单的说,可以直接转换成工程量的形式输出!

棒头

  • 精华:0帖
  • 求助:2帖
  • 帖子:12帖 | 69回
  • 年度积分:0
  • 历史总积分:271
  • 注册:2006年2月10日
发表于:2012-10-21 08:46:07
14楼
回复内容:
对:设备维护关于      这样的处理太费钱了,知道多少银子吗.我不会这样做,买个温控器,一个指示灯的了省钱办事.除非公家的,不化自已钱,练自已手. 内容的回复:

当然,以前都是用温控器做的,现在是还有其他东西,不止这一个。。。。呵呵

纵横军团-小吴%&*

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 184回
  • 年度积分:0
  • 历史总积分:386
  • 注册:2012年8月03日
发表于:2012-10-21 08:54:50
15楼

进来学习的      

棒头

  • 精华:0帖
  • 求助:2帖
  • 帖子:12帖 | 69回
  • 年度积分:0
  • 历史总积分:271
  • 注册:2006年2月10日
发表于:2012-10-21 16:21:02
16楼
回复内容:
对:wyb2866255---王者之师关于       6楼:将200改为150 完全可以。你说“最后那个s语句有什么必要没有?”,在这个整数运算的子程序里使M1.0置1对运算没有用,它仅是表示子程序运算结束的标识符,可作其他控制用。      6楼的程序是用转换公式求出温度值T,还得用比较指令,将算出的温度值与100比较,相等时报警输出Q0.0=1。不如直接按转换公式求出100度时的数值量,这样运行时PLC就不需将读取的数字量时时进行公式转算,直接用读取的数字量与100度时的数值量进行比较,简化程序。     4~20ma信号处理得好,转换的数字量不会有2位数的跳动的。      内容的回复:

同理,用热电阻模块也可以用这个程序吗?我换到热电阻就有点茫了~请教!!

棒头

  • 精华:0帖
  • 求助:2帖
  • 帖子:12帖 | 69回
  • 年度积分:0
  • 历史总积分:271
  • 注册:2006年2月10日
发表于:2012-10-22 13:25:56
17楼
回复内容:
对:棒头关于 回复内容:对:wyb2866255---王者之师关于       6楼:将200改为150 完全可以。你说“最后那个s语句有什么必要没有?”,在这个整数运算的子程序里使M1.0置1对运算没有用,它仅是表示子程序运算结束的标识符,可作其他控制用。      6楼的程序是用转换公式求出温度值T,还得用比较指令,将算出的温度值与100比较,相等时报警输出Q0.0=1。不如直接按转换公式求出100度时的数值量,这样运行时PLC就不需将读取的数字量时时进行公式转算,直接用读取的数字量与100度时的数值量进行比较,简化程序。     4~20ma信号处理得好,转换的数字量不会有2位数的跳动的。      内容的回复:同理,用热电阻模块也可以用这个程序吗?我换到热电阻就有点茫了~请教!! 内容的回复:

自己给自己回复了,为那些和我一样的小白们,用热电阻模块,热电阻输入值就是实际温度×10。比如实际温度50度,那么AIWX就是500.不管大家懂了没,反正我是懂了!

王者军团--曹建军

  • 精华:2帖
  • 求助:0帖
  • 帖子:812帖 | 2407回
  • 年度积分:0
  • 历史总积分:16025
  • 注册:2011年12月25日
发表于:2012-10-22 19:52:28
18楼
这个需要算下!就知道了1 

seeyoulai

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 18回
  • 年度积分:0
  • 历史总积分:48
  • 注册:2010年7月26日
发表于:2012-10-22 22:29:33
19楼
回复内容:
对:棒头关于回复内容:对:棒头关于 回复内容:对:wyb2866255---王者之师关于       6楼:将200改为150 完全可以。你说“最后那个s语句有什么必要没有?”,在这个整数运算的子程序里使M1.0置1对运算没有用,它仅是表示子程序运算结束的标识符,可作其他控制用。      6楼的程序是用转换公式求出温度值T,还得用比较指令,将算出的温度值与100比较,相等时报警输出Q0.0=1。不如直接按转换公式求出100度时的数值量,这样运行时PLC就不需将读取的数字量时时进行公式转算,直接用读取的数字量与100度时的数值量进行比较,简化程序。     4~20ma信号处理得好,转换的数字量不会有2位数的跳动的。      内容的回复:同理,用热电阻模块也可以用这个程序吗?我换到热电阻就有点茫了~请教!! 内容的回复:自己给自己回复了,为那些和我一样的小白们,用热电阻模块,热电阻输入值就是实际温度×10。比如实际温度50度,那么AIWX就是500.不管大家懂了没,反正我是懂了!内容的回复:


我也懂了   可是小数点后2位呢

热门招聘
相关主题

官方公众号

智造工程师