全国服务热线 15221406036

西门子S120控制单元6SL3040-0PA01-0AA0

更新时间:2024-05-08 07:10:00
价格:¥666/件
联系电话:
联系手机: 15221406036
联系人:聂航
让卖家联系我
详细介绍

西门子S120控制单元6SL3040-0PA01-0AA0

1.ramp_p块概述

在pcs 7中, ramp_p实现了模拟量的斜坡函数功能。

(注:在pcs 7 v7.1 **过程库 (advanced process library, apl)中,很多功能块,例如pid控制块,已经集成了更为丰富的斜坡控制功能,详情请参考文档:“pcs 7 v7.1 apl库中的斜坡(ramp)功能”

ramp_p的块号是fb52,通过cfc进行调用,安装在循环中断ob(ob30~ob38)中。以pcs 7 v7.0 sp3为例,如图1,在pcs 7 library v70中,blocks+templates\blocks下control中找到ramp_p,拖入相应cfc中即可。

2.ramp_p块调用及基本管脚介绍

ramp_p功能块管脚如图2。更详细内容可选中ramp_p块,按f1键参考在线帮助信息。

图 2 ramp_p块管脚

管脚说明:

bbbm: 斜坡上升斜率

drlm: 斜坡下降斜率

u: 模拟量输入

rate_off: 关闭斜坡功能

qlim_u: 斜坡上升标志位

qlim_d: 斜坡下降标志位

v: 模拟量的斜坡输出

3.ramp_p功能块工作方式

rate_off=1时, 关闭斜坡功能,v=u。

rate_off=0时, 输出v会以bbbm或者drlm为斜率上升或下降。以ramp_p与ctrl_pid的sp_ext连接为例,当前sp_ext=100;

图 3 ramp_p连接实例

如果新的sp_ext=200,则ramp_p的u=200, v输出会以bbbm=3为斜率上升,qlm_u=1;如果新的sp_ext=0, 则ramp_p的u=0, v输出会以drlm=3为斜率下降, qlm_d=1。

下面的实例描述了共享设备的*简单配置:两台io控制器共享一个io设备的子模块。两台io控制器位于同一个step 7项目中,优点是一致性检查自动完成。

步骤

为了能够使用共享设备功能,需要在simatic管理器和hw config中执行某些组态步骤。

准备事项

1.在simatic管理器中创建名称为"共享设备项目"的项目。

2.插入两个站(simatic 300)。

3.在hw config中打开站,然后组态带profinet接口的cpu(在此例中为cpu 319-3 pn/dp)。

4.为刚刚创建的站的profinet接口设置参数。

5."保存并编译"各个站。

创建共享的设备

1.在hw config中打开所创建的其中一个站。

2.如屏幕截图所示,使用几个子模块配置分布式i/o系统et 200s(im151-3pn)。

3.使用快捷菜单(鼠标右键)复制刚刚创建的分布式i/o系统。

4.保存硬件配置,然后关闭已配置的站。

5.在hw config中打开早先创建的其它站。

6.若要将分布式i/o系统作为共享设备插入,右击profinet线路。在快捷菜单中选择"粘贴共享"命令。

7.保存硬件配置,然后关闭已配置的站。

已经成功创建了共享设备;现在设置将子模块分配给已配置的站。

分配子模块

必须单独为每个站分配子模块。请牢记对站的更改也将影响其它站!只能将子模块分配给一个站!

1.打开第1个站中分布式i/o系统的属性对话框。

2.跳转到"访问"选项卡。

3.组态对各个子模块的访问。从"数值"列的下拉列表中选择访问的类型。可以在以下两者之间选择:

.不访问子模块:"- - -"

.完全访问子模块:"完全"

4.请注意:设置"完全"自动会导致其它站的设置为"- - -";另一方面,设置"- - -"并不会自动地导致其它站的设置为"完全"。

5.保存并关闭站。

6.对第2个站重复步骤1-4。

7.然后将组态下载至站。

用户程序中的共享设备

共享设备在用户程序中不充当特殊角色。如平常一样对站中分配的子模块进行寻址,其它子模块不接收地址

在实际的项目应用中,某些关键数据的输入需要提示操作人员确认无误后才能进行。如下图所示:

图1

当在输入/输出域中输入数值99并回车后,数据并不立即输入到变量里,而是弹出一个确认的信息窗口。这时候如果选择“是”那么数据将输入到相应的变量,如果选择“否”相应的变量会保持原来的值不变。下面就介绍如何使用wincc的输入/输出域实现这种功能。

1. 前提条件

创建两个数据类型相同的变量 displayvalue和tempvalue,其中displayvalue是实际需要控制的变量,tempvalue作为临时变量使用。如下图所示:

图2

2. 输入/输出域的属性设置

在画面中新建一个输入/输出域,打开属性对话框。选择属性?输出/输入?输出值,在动态部分点击鼠标右键,如下图所示:

图3

打开动态对话框。选择需要控制的变量(本例中变量为:displayvalue),并配置数据类型。如下图所示:

图4

3. 输入/输出域的事件设置

3.1更改动作设置

选择同一个输入/输出域,打开属性对话框。选择事件?属性主题?输出/输入?输入值,在更改动作部分点击鼠标右键,如下图所示:

图5

打开直接连接对话框。来源部分保持默认设置,目标部分选择直接连接到临时变量(本例中为:tempvalue )。如下图所示:

图6

3.2键盘释放动作设置

选择同一个输入/输出域,打开属性对话框。选择事件?键盘?释放,在动作部分点击鼠标右键,如下图所示:

图7

打开c动作编辑器。编写用于判断操作人员是否输入完毕并按下回车的代码。如下图所示:

图8

详细代码如下:

int tempvalue=gettagword("tempvalue");

char szbuffer[20];

sprintf( szbuffer,"bbbbb number:%d",tempvalue);

if ( nchar==13 )//if press enter

{

int xret = messagebox(null,szbuffer,"确认窗口",mb_yesno|mb_iconquestion|mb_systemmodal);//message

if ( xret == idyes )//confirm operate

settagword("displayvalue",tempvalue);// set data

}

当系统运行后,一旦在该输入/输出域中检测到回车信号,系统就会弹出如图1所示的确认窗口。

4.附加说明:

以上内容的测试环境:bbbbbbs xp professional sp2+wincc v 7.0 sp1 asia。关于messagebox函数的详细说明请参考microsoft的相关文档


没有

联系方式

  • 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 邮编:201600
  • 联系电话:未提供
  • 经理:聂航
  • 手机:15221406036
  • 微信:15221406036
  • QQ:3064686604
  • Email:3064686604@qq.com