首页 上一页 1 2 3 下一页 尾页

(已结帖)工控PLC擂台第58期--关于一道综合PLC设计题的设计。 点击:4750 | 回复:60



玻璃的心

    
  • 精华:43帖
  • 求助:2帖
  • 帖子:1199帖 | 5801回
  • 年度积分:0
  • 历史总积分:57711
  • 注册:2010年6月11日
发表于:2011-09-11 20:03:36
楼主

这是一个实际设计项目的必走的3步设计程序,设计内容简单,但完成这3部分即相当完成一个的项目整个设计,供版主参考:

某设备装有4种传感器:
1、真空压力传感器,量程为:0~0.1Mpa;输出给PLC的信号为4~20ma。
2、蒸汽压力传感器,量程为:0~1.0Mpa;输出给PLC的信号为4~20ma。
3、温度传感器,量程为:0~150 度;输出给PLC的信号为4~20ma。
4、电机转速,量程为:0~50转/秒;输出给PLC的信号为4~20ma。
要求用触摸屏显示这4种信号的时时状态值,如由你搞设计,请完成以下3项工作:
1、请提出硬件的配置方案。
2、推导出这4种变量的转换公式及编写PLC程序。
3、触摸屏的编程与PLC的通讯连接。

本题为网友征集题,各位擂台朋友可以根据自己的实际情况回答所要求工作的1-3步,回答的有好有完整的获大奖,一等奖可不限,只要有完整好的答案,

注:PLC类型不限!





工控PLC擂台每周一期,本期待57期结束一周后结贴。奖项设置:一等奖1名:50MP,二等奖5名:10MP,三等奖10名:30积分。

MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。

MP有什么用?兑换服务:以1个MP=1元来置换中国工控网的相关服务。 兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)。






楼主最近还看过



玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-09-11 20:05:46
1楼

当然在PLC编程只要能整定出上述要求的信号,然后在触摸屏上显示出来即可!其它可以根据自己的 想象加以补全!

ye_w

  • 精华:21帖
  • 求助:1帖
  • 帖子:69帖 | 5217回
  • 年度积分:0
  • 历史总积分:46739
  • 注册:2002年4月17日
发表于:2011-09-11 20:25:18
2楼

使用ABB的PLC来完成。以下配置并不是经济配置,只是为了完成功能而已。

1、硬件配置,ABB AC500是模块化的结构,也就是说CPU与IO模块都是独立的模块,CPU模块是不集成IO的。硬件配置如下:

a,PM581-ETH(使用带以太网接口的CPU,方便下载,串口下载速度太慢了,原来下载过1.3M左右的程序,一根烟的功夫还没有下完)。

b,TB511-ETH(CPU底座,与PM581-ETH配套)

c,AI523(模拟量输入模块,16路可配置成电压、电流、电阻等等,这里需要配置成4-20mA)

ye_w

  • 精华:21帖
  • 求助:1帖
  • 帖子:69帖 | 5217回
  • 年度积分:0
  • 历史总积分:46739
  • 注册:2002年4月17日
发表于:2011-09-11 20:25:58
3楼

软件实现:

1、CPU选择和硬件组态(注意,CPU底座无需组态)

CPU选择

IO硬件组态1
硬件组态2,对四个输入变量定义
硬件组态3,定义模拟量输入类型为4-20mA(4个通道都一样的配置,激活短路和断线功能)
AD转换值4-20mA对应于0~27648
2、主程序定义,名字PLC_PRG,10ms的循环周期

 2.1 自定义函数MulDiv,线性转换,很简单的一次线性转换,就不做多解释了

2.2 主程序

2.2.1 全局变量定义,指定HMI对应的地址,并定义了精度

 2.2.2 程序

下面所有的程序全部使用上面自定函数(MulDiv,线性转换)实现量程转换,这样在HMI上只需要将精度返回来即可。

 

ye_w

  • 精华:21帖
  • 求助:1帖
  • 帖子:69帖 | 5217回
  • 年度积分:0
  • 历史总积分:46739
  • 注册:2002年4月17日
发表于:2011-09-11 20:26:23
4楼

触摸屏实现:同样也是使用ABB的触摸屏来实现.

当然在这之前,需要将PLC的以太网地址设定好,假设设定为192.168.1.130,这个地址需要与下面的触摸屏中的PLC地址设定一致。

1、新建工程,选择PLC

2、设置好PLC的ip地址
3、画面组态1,地址对应,下面对应的真气压力地址
4、画面组态2,画面显示效果,必须小数点的显示
5、整体效果图

 6、离线模拟效果图,由于没有与PLC相连,所以所有数据都是0,都是带小数点的显示

 

 

 

电仪人生

  • 精华:0帖
  • 求助:0帖
  • 帖子:36帖 | 617回
  • 年度积分:0
  • 历史总积分:4586
  • 注册:2009年2月12日
发表于:2011-09-13 11:55:20
5楼
触摸屏没搞过学习中,静侍高手解答

KINGCO

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 12回
  • 年度积分:0
  • 历史总积分:39
  • 注册:2011年9月08日
发表于:2011-09-13 16:10:29
6楼
1、请提出硬件的配置方案。           西门子 S7-200系列 + smart 700系列触摸屏 
2、推导出这4种变量的转换公式及编写PLC程序。  用子程序表示公式。
3、触摸屏的编程与PLC的通讯连接。   见图

KINGCO

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 12回
  • 年度积分:0
  • 历史总积分:39
  • 注册:2011年9月08日
发表于:2011-09-13 16:15:39
7楼
画面比较难看。 图可能太大

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2011-09-14 14:40:29
8楼
某设备装有4种传感器:
1、真空压力传感器,量程为:0~0.1Mpa;输出给PLC的信号为4~20ma。
2、蒸汽压力传感器,量程为:0~1.0Mpa;输出给PLC的信号为4~20ma。
3、温度传感器,量程为:0~150 度;输出给PLC的信号为4~20ma。
4、电机转速,量程为:0~50转/秒;输出给PLC的信号为4~20ma。
要求用触摸屏显示这4种信号的时时状态值,如由你搞设计,请完成以下3项工作:
1、请提出硬件的配置方案。
2、推导出这4种变量的转换公式及编写PLC程序。
3、触摸屏的编程与PLC的通讯连接。


一、硬件设置:除上述4种传感器外,选用:

1、S7-200PLC一台,型号为:CPU222 CN

2、选用EM235模拟量输入模块一块(设置0~20 ma工作模式)

3、西门子触摸屏一块。型号:Smart 700

硬件电路图:


二、输出4~20ma的传感器显示量程公式的推导:
EM235模拟量输入模块,当输入信号为20ma时,对应的数字量=32000,故:输入=4ma时,对应的数字量=6400,对应显示量程值=0,输入20ma时,对应的数字量=,32000,对应显示量程值最大值=Hm,其输出量与模块的数字量的变化关系曲线如图一所示:


根据三角形相似定理:△ABC ~ △ADE 故:DE / BC = AD / AB
          整理得: DE = BC * AD / AB
    DE = Hm * (AIWx - 6400) / (32000 - 6400)     这是一个通式, 将4个参数的最大值带入式中,可得以下4个公式:
1、真空压力转换公式:Pkx = 0.1 * (AIWx - 6400) / (32000 - 6400)         单位:MPa
2、蒸汽压力转换公式:Pzx = 1.0 * (AIWx - 6400) / (32000 - 6400)         单位:MPa
3、蒸汽温度转换公式:Tzx = 150 * (AIWx - 6400) / (32000 - 6400)         单位:度
4、电机转速转换公式:Vd= 50 * (AIWx - 6400) / (32000 - 6400)             单位:转/秒

PLC编程:

1、主程序:
Network 1
// 开机使MW0=0.,即使MB0=0、MB1=0
LD SM0.1
MOVW 0, MW0
Network 2
// 在M1.0=M1.1=0时,如MB0=0,将AIW0(真空压力值)转换为实数值-->VD100,将空压力最大值(0.1)-->VD104。如MB0=1,将AIW2(蒸汽压力值)转换为实数值-->VD100,将蒸汽压力最大值(1.0)-->VD104。如MB0=2,将AIW4(蒸汽温度值)-->VW100,将蒸汽温度最大值-->VW104。如MB0=3,将AIW6(电机转速)-->VW100,将电机转速最大值-->VW104。 *****
LDN M1.0
AN M1.1
LPS
AB= MB0, 0
ITD AIW0, VD40
AENO
DTR VD40, VD100
AENO
MOVR 0.1, VD104
LRD
AB= MB0, 1
ITD AIW2, VD40
AENO
DTR VD40, VD100
AENO
MOVR 1.0, VD104
LRD
AB= MB0, 2
MOVW AIW4, VW200
AENO
ITD VW200, VD200
AENO
MOVD VD216, VD200
AENO
MOVD 200, VD204
LRD
AB= MB0, 3
MOVW AIW6, VW200
AENO
ITD VW200, VD200
AENO
MOVD 19200, VD200
AENO
MOVD 50, VD204
LPP
S M1.0, 1
Network 3
LD M1.0
LPS
AB< MB0, 2
CALL SBR0
LPP
AB>= MB0, 2
CALL SBR1
Network 4
// VD0为真空压力显示区,VD4为蒸汽压力值显示区,VW8为蒸汽温度值显示区,VW10为电机转速值显示区
LD M1.1
LPS
AB= MB0, 0
MOVR VD108, VD0
LRD
AB= MB0, 1
MOVR VD108, VD4
LRD
AB= MB0, 2
DTI VD208, VW8
LPP
AB= MB0, 3
DTI VD208, VW10
Network 5
LD M1.1
LPS
INCB MB0
AB> MB0, 3
MOVB 0, MB0
LPP
R M1.1, 1
2、子程序SBR_0
Network 1 // 实数运算
// VD0 :AIWx VD4: 最大量程(如温度200 压力1.0 MPa) VD12:中间运算数 VD8:求出的量程值
LD SM0.0
MOVR VD100, VD112
-R 6400.0, VD112
*R VD104, VD112
MOVR VD112, VD108
/R 25600.0, VD108
R M1.0, 1 <

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2011-09-14 16:02:06
9楼

请问擂主:我后一部分(关于触摸屏设计)怎么断了呢?是文章太长吗?

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2011-09-14 16:15:58
10楼

      为了使熟悉梯形图的网友了解PLC的编程,现将程序以梯形图形式再贴上来,供大家参考!

一、主程序:

    二、子程序1:SBR_0
        三、子程序2:SBR_1

louliang505

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 47回
  • 年度积分:0
  • 历史总积分:533
  • 注册:2011年4月27日
发表于:2011-09-14 17:18:13
11楼
回复内容:
对:wyb2866255 关于

      为了使熟悉梯形图的网友了解PLC的编程,现将程序以梯形图形式再贴上来,供大家参考!

一、主程序:

    二、子程序1:SBR_0
        三、子程序2:SBR_1
内容的回复:

楼上大哥笔误了吧,是不是当VB==2时候,VD204的值该是150?

还有就是不太明白子程序1和2有什么大的区别R 和DI?很重要么?

同样的迷惑主程序网络4前两个用MOV后两个用DI-I?

温度和速度不会出现小数么?

希望能够指点一下。还有期待触摸屏后续

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2011-09-14 18:43:00
12楼

对11楼的回复:你很细心,现回答你的提问。

1、VD204放的是温度量程的最大值:150 ,此处是笔误。

2、子程序1和子程序2的区别就是一个做带小数的实数运算,一个是只做整数运算,其目的就是展示二种不同的运算编程,以适用于不同的要求编程。

3、。。。主程序网络4前两个用MOV后两个用DI-I?   其VD0与VD4是用于在触摸屏里显示真空压力与蒸汽压力的二个通讯变量,其数据类型为浮点数(实数),VD108是真空压力与蒸汽压力用同一个实数运算公式的计算结果(实数),所以用MOV_R指令将VD108送与VD0或VD4中。而VW8与VW10是用于在触摸屏里显示蒸汽温度与电机转速的二个通讯变量,其数据类型为整数,VD208是蒸汽温度与电机转速用同一个整数运算公式的计算结果,它是双字整数,所以用DI-I指令将VD208双字整数转换为单字整数,送与VW8或VW10中。如不用DI-I指令,也可用MOV_W指令,将VW210((VD208的低字)分别送入VW8或VW10

4、温度和速度取整数不用小数,这是我个人规定的,目的我在第2点里讲过,就是为了展示二种不同的运算编程,以适用于不同的要求编程。

      本来8楼帖子写有触摸屏,且带有16张图片,不知怎么搞的没有贴上,我会续补上的。感谢你的提问!

louliang505

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 47回
  • 年度积分:0
  • 历史总积分:533
  • 注册:2011年4月27日
发表于:2011-09-15 08:37:40
13楼
回复内容:
对:wyb2866255 关于

对11楼的回复:你很细心,现回答你的提问。

1、VD204放的是温度量程的最大值:150 ,此处是笔误。

2、子程序1和子程序2的区别就是一个做带小数的实数运算,一个是只做整数运算,其目的就是展示二种不同的运算编程,以适用于不同的要求编程。

3、。。。主程序网络4前两个用MOV后两个用DI-I?   其VD0与VD4是用于在触摸屏里显示真空压力与蒸汽压力的二个通讯变量,其数据类型为浮点数(实数),VD108是真空压力与蒸汽压力用同一个实数运算公式的计算结果(实数),所以用MOV_R指令将VD108送与VD0或VD4中。而VW8与VW10是用于在触摸屏里显示蒸汽温度与电机转速的二个通讯变量,其数据类型为整数,VD208是蒸汽温度与电机转速用同一个整数运算公式的计算结果,它是双字整数,所以用DI-I指令将VD208双字整数转换为单字整数,送与VW8或VW10中。如不用DI-I指令,也可用MOV_W指令,将VW210((VD208的低字)分别送入VW8或VW10

4、温度和速度取整数不用小数,这是我个人规定的,目的我在第2点里讲过,就是为了展示二种不同的运算编程,以适用于不同的要求编程。

      本来8楼帖子写有触摸屏,且带有16张图片,不知怎么搞的没有贴上,我会续补上的。感谢你的提问!

内容的回复:

很感谢回复

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2011-09-15 09:06:53
14楼
三、触摸屏编程:
1、项目建立:打开编程软件出现以下画面:

选中“使用项目向导创建一个新项目”,进入以下画面

按“下一步”进入下图:

在此图左HMI设备处双击,选择“Smart 700”, 右侧下方箭头处选“S7-200”, 按“下一步”。

填写项目标题或公司标志,按“下一步”。。。。直到出现以下画面:

填写项目名称等,按“完成”出现下画面,到此项目已建立,开始进入创建画面编程。

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2011-09-15 09:17:12
15楼
2、创建画面:
(1)、创建显示变量:双击下一图中左侧的“变量”出现变量视图(下二图):


在变量表中填写5个变量(见上图所示)。
(2)、创建画面如下图:

设计步骤(以设计“设定蒸汽温度”为例):
1:点击图右侧工具栏中的矩形图标并将其拖到画面上,选中它按右建,打开属性,按“外观”设置:边框颜色与填充颜色为白色,见下图
     再按“其它”设置:层为0,
    3、再用同样方法点击拖拉“矩形”图标建立黑色矩形框,压在白色方框的上面,其设置参数为:“外观”设置:边框颜色填充颜色为黑色,填充颜色为深灰色;“布置”设置:X=200、Y=8,设“大小”为横向=336、纵=48。再按“其它”设置:层为1。
再在黑色矩形上建立填写温度值的小白色矩形框,方法同上不在重述。
4、点击工具箱中的“文本域”填写“设定蒸汽温度”文字:
点击“I/O域”且拖到换面中,安放到小白色矩形框内,设置参数为:在其属性中,按“常规”拦,在文本处填写“设定蒸汽温度”文字;点击“属性”按“外观”,按如下设置:
     按“其它”,设置层为:1
     5、、点击工具箱中的“I/O域”填写蒸汽温度值:其操作方式与文本域相似,不在叙述,其参数为:

      6、退出按钮建立:点击工具箱中“按钮”图标,并拖到画面,其设定参数为:

3、连接:双击项目栏左侧的通讯“连接”,出现下表,按下表内容填写

到此触摸屏的编程基本完成,下面的工作将是对程序进行编辑,编辑无误,再进行模拟仿真运行,认为可以了,将此编程下载到触摸屏中。
下图为触摸屏与PLC连接运行时的画面。本文到此完毕,谢谢大家!




alongxiao

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 6回
  • 年度积分:0
  • 历史总积分:36
  • 注册:2011年8月27日
发表于:2011-09-15 19:11:06
16楼
学习中,谢谢高手,学无止境

sophymei

  • 精华:0帖
  • 求助:8帖
  • 帖子:17帖 | 920回
  • 年度积分:0
  • 历史总积分:5514
  • 注册:2008年11月24日
发表于:2011-09-16 13:36:46
17楼

一.硬件設計:

PLC  DELTA DVP14SS211R

觸摸屏:DELTA DOP-AE80THTD

RS485通訊ASCII 9600,7,Even,1

模擬功能擴展 DELTA DVP04AD-S(電流輸入模式:H4001 = 3;-20mA~20mA;-K4000~K4000;1Lsb = 5uA)

CH1、真空压力传感器,量程为:0~0.1Mpa;输出给PLC的信号为4~20ma。 (讀取地址:H400C)
CH2、蒸汽压力传感器,量程为:0~1.0Mpa;输出给PLC的信号为4~20ma。 (讀取地址:H400D)
CH3、温度传感器,量程为:0~150 度;输出给PLC的信号为4~20ma。 (讀取地址:H400E)
CH4、电机转速,量程为:0~50转/秒;输出给PLC的信号为4~20ma。 (讀取地址:H400F)

當輸入20mA時對應的數值為K4000,輸入4mA時對應的數值為?= 4*4000/20=800Lsb

真空壓力:800Lsb~0MPa,4000Lsb~0.1MPa:y=(X-800)/32000(y:真空壓力;x:Lsb)

蒸汽壓力:800Lsb~0MPa,4000Lsb~1.0MPa:y=(x-800)/3200(y:蒸氣壓力;x:Lsb)

溫度:800Lsb~0度,4000Lsb~150度:y=3(x-800)/64(y:溫度;x:Lsb)

電機轉速:800Lsb~0r/s,4000Lsb~50r/s:y=(x-800)/64(y:r/s;x:Lsb)

觸摸屏設計


PLC程式

1.通訊參數設值

2.讀取DVP04AD的數值

3.換算成當前單位的數值

QQ流浪汉

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 265回
  • 年度积分:0
  • 历史总积分:813
  • 注册:2004年1月30日
发表于:2011-09-21 10:38:04
18楼

呵呵,还没结贴啊?占个位置,晚上参与一下。

welfare87

  • 精华:0帖
  • 求助:4帖
  • 帖子:44帖 | 2827回
  • 年度积分:0
  • 历史总积分:25853
  • 注册:2009年2月20日
发表于:2011-10-10 21:00:01
19楼

1、硬件配置:

CPU S7-200 222 + EM231+TP177B

2、接线参考:

EM231为4输入模拟量模块,接线图如下。

由于本系统的4路模拟量输入都为电流信号,模块的配置下图所示。

3、主程序:

 子程序:

4、触摸屏显示

    a.系统连接设置

     需注意设置的波特率和站地址和PLC里的设置保持一致。

PLC里的设置:

WinCC flexible软件里的设置:
    b.建立变量
     真空压力传感器、蒸汽压力传感器、温度传感器、电机转速的实际值分别存在VD0、VD4、VD8、VD12中,在TP177B中直接读取就可以了,数据类型为浮数型。 
   
    c.画面变量连接
                 
                       
    d.模拟仿真

chenhuayuan

  • 精华:1帖
  • 求助:0帖
  • 帖子:48帖 | 295回
  • 年度积分:0
  • 历史总积分:592
  • 注册:2008年4月05日
发表于:2011-10-15 22:13:19
20楼
回复内容:谢谢你的分享
对:wyb2866255 关于三、触摸屏编程:
1、项目建立:打开编程软件出现以下画面:

选中“使用项目向导创建一个新项目”,进入以下画面

按“下一步”进入下图:

在此图左HMI设备处双击,选择“Smart 700”, 右侧下方箭头处选“S7-200”, 按“下一步”。

填写项目标题或公司标志,按“下一步”。。。。直到出现以下画面:

填写项目名称等,按“完成”出现下画面,到此项目已建立,开始进入创建画面编程。

内容的回复:



热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 3 下一页 尾页