步骤:
1、创建AutoStart 快捷方式:单击“开始> SIMATIC > WinCC > Autostart”,右键单击“Autostart”选择“发送到”后选择“桌面快捷方式”;创建成功后可更改快捷方式名称为项目名称及更改快捷方式图标;
2、关联项目:
右键单击快捷方式选择打开属性,在“Shotcut(快捷方式)”选项单的“Target(目标)”中输入:
"C:\Program Files\Siemens\WinCC\bin\AutoStartRT.exe" D:\Test\Test.mcp /Activ:yes /LANG=CHS /EnableBreak:no
前半部分基本不需要改动(会自动根据WinCC 的安装路径得到),后半部分为项目路径(更改为实际路径即可)。
3.开机直接启动winCC方法:将建好的快捷键复制到C:\Documents and Settings\Administrator\「开始」菜单\程序\启动
一、从WinCC里调用STEP 7 变量的前提条件 从WinCC里调用STEP 7 变量可以将建立变量的工作量减少一半,同时将建立变量的出错概率建设一半,从而减少了相应的排错工作,大大提高了工作效率。 从WinCC里调用STEP 7 变量的前提条件是,WinCC的项目文件必须是集成在STEP 7项目中的。 在安装所有Simatic 软件前,请查阅软件的安装注意事项,确定操作系统与软件的兼容性。该文档一般位于:CD\Documents\<语言版本>\InstallNotes.chm。 要使用WinCC与STEP 7的集成功能,WinCC和STEP 7必须安装在同一台计算机上,必须在安装WinCC之前安装STEP 7。STEP 7 与WinCC的版本必须一致。WinCC 与STEP 7的版本兼容行列表可以在西门子自动化与驱动集团的技术支持与服务网站上获得。 请STEP 7安装完毕后,进行WinCC安装。在WinCC安装过程中,请选择“自定义安装”,在communitation 下的所有选项都必须钩选。 二、在Simatic Manager里建立新的WinCC项目 在建立新的STEP 7项目后,可以在Simatic Manager里直接建立新的WinCC 项目。方法是在Simatic Manager里,右键点击项目名称,选择“Insert New Object\OS”。此时系统会在STEP 7 项目文件里建立一个WinCC项目文件你可以在OS站上点击右键,选择“Re name”来修改WinCC项目名称。 可以通过在名称上点击右键,选择“Open Object”打开并编辑这个WinCC项目 三、把现成的WinCC项目集成到STEP 7 项目中 按如下步骤把已有WinCC项目文件插入STEP 7项目文件 A. 在STEP 7项目文件中插入一个OS站,然后把它改名为已有的WinCC项目名称。 B. 在STEP 7项目里删除因仅插入OS站而产生的WinCC项目文件,其位置在STEP 7 项目文件夹里的wincproj文件夹下,例如: d:\siemens\STEP7\S7proj\STEP7_Integration\wincproj\Name of the OS C. 最后在项目复制器里用’Save as’把已有的WinCC项目文件存储到STEP 7项目路径下。项目复制器位于开始菜单项"Start > SIMATIC > WinCC > Tools"。 注意: 对于集成STEP 7项目里的WinCC项目,你也可以使用压缩工具(Packer)来归档WinCC项目。 四、把变量(符号表,共享DB,背景DB)从STEP 7传送到WinCC里 STEP项目文件里的符号表,共享DB里的变量可以一次性的传入继承的WinCC 项目文件。 具体步骤如下: A、为需要传输的变量打上“传输标志” 在需要传输的变量上点击右键,从关联菜单中选择“Special Object Properties \ Operator Control and Monitoring…”,打开Operator Control and Monitoring对话框,激活复选框“Operator Control and Monitoring”,并点击“OK”关闭对话框。此时该变量前将显示绿色小旗 如需对成批变量进行该操作,可以使用“Shift+鼠标左键”进行批选择,或
S7-400H和WinCC之间基于Simatic Net OPC 的通讯 1.示例系统的体系结构图0 本示例为H系统与双CP1613的OS 站通过双以太网网段进行通讯的例子。 H系统与双CP1613的OS站通过单以太网网段或H系统与单CP1613的OS站进行互连互通可参考此例。图0为示例系统的配置图。图 ... 1.示例系统的体系结构 图 0 本示例为H系统与双CP1613的OS 站通过双以太网网段进行通讯的例子。H系统与双CP1613的OS站通过单以太网网段或H系统与单CP1613的OS站进行互连互通可参考此例。 H-CPU Order Number CPU 417-4H6ES7 417-4HL00-0AB0 CP 443-16ES7 443-1EX11-0XE0 2. 软件版本描述 软件版本 · SIMATIC NET V6.0+ServicePack4.0 · WinCC V5.1 · STEP7 V5.1+ServicePack6 · S7 H Systems V5.2+ServicePack2 3. 组态 3.1 运行SIMATIC MANAGER 并创建一个新的项目, 示例中为417H-NET6-FIRST。插入一个新的H站。示例中将其命名为SIMATIC 417-4H,如图1所示。
图 1 3.2 通过双击硬件或使用右键弹出菜单, 打开SIMATIC 417-4H的硬件组态(HWConfig)。本例中的硬件组态仅供参考,用户以实际硬件组态情况为准。对于冗余系统,应使用UR2-H机架,如图2所示。
图 2 3.3 组态以太子网;分配MAC地址,通常为获得更高的稳定性,建议取消TCP/IP 协议。 图3
DeactivateRTProject ();//退出系统 #pragma code("useadmin.dll") #include"PWRT_api.h" #pragma code() char* CUser=NULL; CUser=GetTagChar("@CurrentUser"); if (strlen(CUser)==0) { PWRTSilentLogin("operator","123456");//用户“operator",密码"123456”登录} OpenPicture("@MAIN.pdl"); } 在画面中结合不同按钮来组态下面 C 操作 Login Action for login (for example, "mouse click" event): #pragma code ("useadmin.dll") #include "PWRT_api.h" #pragma code() PWRTLogin('c'); Logout Action for logout (for example, "mouse click" event): #pragma code ("useadmin.dll") #include "PWRT_api.h" #pragma code() PWRTLogout(); PWRTLogin 参数必须是CHAR 字符。它指定了显示对话框的监视器。如果只使用一个监视器,那么保留默认参数“c”或者指定“1”。 注意 可以使用PASSLoginDialog 函数来代替PWRTLogin 或者PWRTLogout 函数。这个函数需要和函数PWRTLogin 相同的参数。PWRTLogin 和PASSLoginDialog 函数可以调用登录界面,在上面可以登录或者注销。函数PWRTLogout 被正确执行并且不调用登录界面。 正确执行后这两个函数都返回“1”。然而,登录不会等到显示对话框之后。 注意 如果使用多个显示器,为了能使登录对话框显示在合适的显示器上,需要WinCC Basic Process Control (OS项目编辑器)。 不使用WinCC Basic Process Control 时,可以指定显示器编号,但登录对话框始终显示在第一个显示器上。 #include"apdefap.h"//调用函数代码 void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
两台WinCC之间OPC通讯方法(WinXP) OPC客户端 1、登陆计算机名及密码要与服务器端(OPCServer)一致。 a) 如:用户名:administrator 密码:1234 2、OPC客户端要与服务器端处于同一个网络。 a) 如:OPCServer IP:192.168.0.100 b) 如:OPClient IP:192.168.0.101 3、关闭Windows防火墙或者在弹出Window安全警报Loader for WinCC datamage中选择解除阻止。 或 4、运行DCOMCNFG.EXE a) 在弹出的组件服务右击我的电脑->选择属性->选择COM安全 b)
c) 在访问权限中选择编辑限制
d) ANONMOUS LOGON组中选中远程访问。 5、剩下的就是在WinCC创建客户端项目。效果如图: 6、
OPC服务器端 1、登陆计算机名及密码要与服务器端(OPCClient)一致。 a) 如:用户名:administrator 密码:1234 2、OPC客户端要与服务器端处于同一个网络。 b) 如:OPCServer IP:192.168.0.100 c) 如:OPClient IP:192.168.0.101 3、关闭Windows防火墙或者在弹出Window安全警报Loader for WinCC datamage中选择解除阻止。 或 4、运行DCOMCNFG.EXE d) 在弹出的组件服务右击我的电脑->选择属性->选择COM安全 e)
f) 在访问权限中选择编辑限制
g) ANONMOUS LOGON组中选中远程访问。 5、打开DCOM配置。如图: a) b)选择OPCEnum和OPCServer.WinCC项。c)
WinCC与Step7-300通讯 4.1 通讯术语 (1)通讯 通讯用于描述两个通讯伙伴之间的数据交换。 (2)通讯伙伴 通讯伙伴是指可以相互进行通讯的模块,也可是说它们互相交换数据。它们可以是PLC中的中央处理器板和通讯处理器,也可以是PC中的通讯处理器。(3)通讯驱动程序 在WinCC中通讯驱动程序也指通道。它是一个软件组织,可在自动化系统和WinCC中的变量管理器之间设置连接,以便能向WinCC变量提供过程值。在WinCC中有很多通讯驱动程序,可通过不同的总线系统连接不同的自动化系统。(4)通道单元 通道单元指的是一种网络或连接类型。每个使用的通道单元必须分配给相关的通讯处理器。一些通道单元需要附加系统的组态。 (5)连接 连接是两个通讯伙伴组态的逻辑分配,用于执行已定意的通讯服务。每个连接有两个端点,它们包含对通讯伙伴进行寻址所必需的信息,以及用于建立连接的附件属性。 一旦WinCC与自动化建立正确的物理连接,就需要WinCC的通讯驱动程序和相关的通道单元来建立或组态与自动化系统间的逻辑连接。每个通道单元下可有多个连接。 4.2 建立WinCC与PLC间通讯的步骤 ●创建WinCC站与自动化系统之间的物理连接。 ●在WinCC项目中添加适当的通道驱动程序。 ●在通道驱动程序适当的通道单元下建立与制订通讯伙伴的连接。 ●在连接下建立变量。 WinCC变量管理器管理运行时的WinCC变量。它的任务是从过程中取出请求的变量值。 4.3 创建一个S7-300 PLC的项目 要实现WinCC与PLC间的通讯,首先要在PLC创建一个项目。 ●打开SIMATIC Manager,在File菜单下单击“New Project Wizard”,创建一个 项目名为zx的SIMATIC 300 Station。如图4-1所示。
在项目视图中找到“运行系统用户管理”条目。双击它可以列出子菜单,其中有三个选项,分别是是“组”、“用户”以及“运行系统安全性设置” 双击“组”选项打开用户组编辑器 在编辑器中有两个部分,分别是“组”表、“组权限”表。 在组表中列出了现有的用户组,在组权限表中列出了系统中现有的所有权限。 为每个用户组分配不同的权限是通过在组权限表中的复复选框内打勾实现的。 在项目视图的“组”选项上单击鼠标右键选择“添加组”;或者在用户组编辑器“组表”中紧邻现有组的空白行上双击鼠标左键,都可添加一个新的用户组。 在“组权限”表中空白行内,双击鼠标左键可以添加新的权限。 这里新添加了一个“组1”组,并把“操作”的权限分配给它
打开用户编辑器 在项目视图中“运行系统用户管理”条目下双击“用户”选项打开用户组编辑器 添加用户 在编辑其中可以清楚的看到每个用户所在的用户组。如上图所示灰色部分显示的用户是系统默认的用户“Admin”,属于管理员组,拥护所有的权限。 添加或修改“用户”的方法与添加或修改“组”的方法一样。 在这里创建了两个用户,分别是“user1”和“user2”并且将“user1”分配给“用户”组,将“user2”分配给“组1”组。则这两个用户就分别拥有了“用户”组和“组1”组的权限。 为用户设置密码 这里我们user1输入口令123,确认口令123; user2输入口令234,确认口令234;
在属性视图中为用户设置密码 打开文本和图形列表(点开文本列表) 新建文本列表如图
添加缺省条目,数值为1时,条目为user1,数值为2时,条目为user2 创建画面 创建新画面并将“符号IO域“拖拽到画面,此IO域为用户名 双击符号IO域其属性有 文本列表选择刚建的列表,变量选择新建变量“test”变量类型为BOOL型 添加IO域,并新建变量password1 变量类型为字符串型即sting型,并把变量password1连接到IO域上,IO域属性设为字符串类型,并且隐藏输入,此IO域为密码的输入,如下图
调用用户管理的C脚本:(没试) #include "apdefap.h" void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName) { SSMProgramStart( lpszPictureName, lpszObjectName, "Passcs.exe"); } 在按钮上用ProgramExecute("Passcs.exe")脚本可以执行用户管理程序 登陆和注销,做个登陆的画面,放2个按钮,写脚本: 由函数PWRTLogin()来执行登录。 #pragma code("USEADMIN.DLL") #include "PWRT_API.H" #pragma code() PWRTLogin('1'); 由函数PWRTLogout()来实现注销。 #pragma code("USEADMIN.DLL") #include "PWRT_API.H" #pragma code() PWRTLogout(); 分别用登录按钮和注销按钮实现,在按钮的事件中输入相应的代码, 登录动作(如事件Mouse-click) #pragma code (“useadmin.dll”) #include “PWRT_api.h” #pragma code() PWRTLogin(’c’); - 退出动作(如事件Mouse-click) #pragma code (“useadmin.dll”) #include “PWRT_api.h” #pragma code() PWRTLogout(); 如何修改当前用户的密码,请参考(没试) “CC_SewageDi_09_11_27_17_20_29”为自己创建的项目数据库名称; “@CurrentUserName”用当前户名,为WinnCC自身的内部变量,文本变量16位字符集,连接一个输入输出域; “@OldPassword”用当前用户旧密码,为需要创建的内部变量,文本变量16位字符集,连
1、Wincc online trend控件实现多条曲线查询 项目要求,查询任意时段内的两条曲线的历史数据 1、首先在变量记录中设置需要记录的变量,如果需要在一个控件内显示两条曲线,做数据 归档时,归档属性最好是一致的,归档属性不一样是否会出现问题,这个没测试,有兴趣的可以测试一下。 2、数据记录设置OK后,新建画面插入online trend控件,我的项目需要把趋势打印出来, 所以把控件的工具栏全部隐藏。 3、双击online trend控件,添加需要显示的归档变量。选择公共X,Y轴等参数。坐标显示 根据自己使用选择,基本上不用设置太多参数。 4、添加需要显示的历史归档变量后,就需要写脚本了,西门子工控网论坛有实例,实例提 示针对于一条曲线时使用,咨询西门子技术支持,如果需要同时显示两条曲线时,需要对两条曲线分别进行设置属性“控件.index=0,1”,但是测试其实只设置index=0的起始及结束时间就OK,就是论坛给的实例不是只针对于一条曲线,两条曲线时同样适用,再多的曲线就没测试了。 5、西门子默认的时间格式为“MM-DD-YYYY HH-MM-SS”格式,所以在设置趋势起始及 结束时间时需要注意。 6、注:导入归档数据需要一定的时间,建议按钮触发。尝试在画面打开时触发脚本,有的 时候会出现历史数据加载不上来。 7、脚本如下,仅供参考 Dim objConnection Dim strConnectionString Dim strSQL Dim objrs Dim chaxun '定义曲线控件 Dim TREND Dim strval_1
Dim strval_2 Dim strval_t1 Dim strval_t2 '初始化程序,省略N行。。。。。。。。。。。。。。。。。。。。。。。。。。。。 '初始化程序,省略N行。。。。。。。。。。。。。。。。。。。。。。。。。。。。 chaxun=HMIRuntime.Tags("管号查询输入").Read strConnectionString = "Provider=MSDASQL;DSN=REPORT;UID=;PWD=;" strSQL = "select * from report where guanhao='"&chaxun&"';" Set objConnection = CreateObject("ADODB.Connection") objConnection.ConnectionString = strConnectionString objConnection.Open Set objrs = CreateObject("ADODB.RecordSet") objrs.open strSQL,objConnection /赋值程序,省略,,,,,,,,,,,,,,,,,,,,,,/ /赋值程序,省略,,,,,,,,,,,,,,,,,,,,,,/ objrs.close Set objrs = Nothing objConnection.Close Set objConnection = Nothing '趋势时间设定 Set trend = ScreenItems("控件1") strval_r=HMIRuntime.Tags("测试日期_read").Read strval_t1=HMIRuntime.Tags("开始时间_read").Read strval_t2=HMIRuntime.Tags("测试时间_read").Read
返回列表 WinCC --
关于“装载和调试程序”的信息 如何把一个已经存在的WinCC 项目集成到一个STEP 7 项目中? 多重项目“Multiproject”功能对大型网络化的项目有哪些优势? 数据块初始值与实际值的含义 为什么项目、程序块或硬件组态根本无法打开,或者打开时出现错误信息,或是显示“只读”? WinCC -- 通信组态和编程-- S7通信(无PROFIBUS) 如何把一个已经存在的WinCC 项目集成到一个STEP 7 项目中? WinCC V5.0中可用插槽PLC吗? 使用MPI (CP5611)建立的WinCC与S7 之间的在线连接有哪些要求? 使用WinCC通过TCP/IP 通信需要哪种许可证? WinCC 访问S7-200 可使用哪些选项? 如何通过调制解调器建立到S7 的链接? 如何将WinCC 链接到S7 PLCSIM? 通过TS 适配器做WinCC 与S7 控制器的通讯,需要做哪些设置? 若要通过CP343-1 与S7 通讯,WinCC 系统需要哪些硬件和软件? 通过CP5611、CP5613 或CP1613,使用WinCC 和SIMATIC NET 访问S7 CPU 时,需要进行哪些设置?如何把一个已经存在的WinCC 项目集成到一个STEP 7 项目中? 显示订货号 配置说明
为了把一个 WinCC 项目导入一个STEP 7 项目中,必须安装下面的WinCC 组件:?SIMATIC Device Drivers ?Object Manager ?AS-OS Engineering 这些组件存在于WinCC 安装光盘中(图.01)。并且,WinCC 和STEP 7 必须安装在同一台计算机上。可以使用已经存在的归档WinCC 项目的压缩工具(packer)来把WinCC 项目导入到STEP 7项目中。 图. 01 注意 关于在不同版本的WinCC 中安装附加组件(以"Smart Tools"为例)的更多信息可以在条目:10880206中找到。 说明
语音报警的组态 在工业现场安全是极其重要的,无论从那个角度讲我们应该利用一切手段减少故障的发生。在故障已经发生的时候,应该在第一时间以多种方式通知操作人员有故障发生。现代微处理计算机的处理速度可以完全胜任对于图形,语音地同时处理。所以我们可以利用计算机的声卡和音箱在有故障发生的时候产生语言报警,但是问题是WinCC本身并不能产生语音的功能,而且其内部的上千个函数也没有提供处理声音的函数。解决这个问题的方法归功于微软开发的WinCC与操作系统地完美结合,因为在WinCC中可以直接调用Windows的API函数。实现的具体C脚本代码如下: long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName) { #pragma code(\"Winmm.dll\") void WINAPI PlaySoundA(char *pszSound,char *hmode,DWORD dwflay); #pragma code() if(GetTagBit(\"112排泥备泵故障\")) PlaySoundA(\"d:\\\\\\\\winnt\\\\\\\\media\\\\\\\\Mircosoft sound.wav\",NULL,8); return 1020; }重新启动后,不使用登录窗口如何以一个缺省用户的身份自动登录?怎样确保运行期间有个缺省用户始终处于登入状态?即使另外一个用户已经预先退出。 解答: 重新启动以及在运行期间,您希望HMI系统达到最小的实用性而不使用登录窗口。然而,对于高级操作,登录功能应当保留。此外,如果没有用户登录,则有一个缺省的用户自动登录。缺省用户的权限可以在用户管理器中根据需要设定。 可使用下面的C脚本执行此项功能,请按照下列步骤进行: 将附件中的函数“Silentlogin.pas”复制到项目中的“PAS”子文件夹中。 在项目中选择Global Script > C Editor > Actions > Global Actions并打开全局动作(Global Action)“Silentlogin.pas”。 在“PWRTSilentLogin (“Login”,“Password”);”一行中,用缺省的用户名替换用户“Login”,用缺省用户的口令代替“Password”。 无限循环命令 static int a=0, b=0; if(GetTagBit("BINi_pictu_dyn_09")) { if(b==0) a++; else a--; if(a==7) b=1; if(a==0) b=0; }
如何通过OPC UA实现两台WinCC SCADA 电脑间的客户端/服务器通讯? OPC UA(“开放平台通讯--统一架构”)是用于交换两台不同品牌设备或应用间数据的标准软件平台。本常见问题详细描述了如何在两台运行WinCC SCADA的PC间配置OPC UA通讯以实现客户端服务器的应用。 运行WinCC组态软件的PC可以通过OPC UA服务器和OPC UA客户端实现通讯。在通讯时,服务器和客户端需要交换安全认证证书,详细配置步骤如下: 步骤 1.在服务器的PC上启动WinCC Runtime。 2.在客户端的PC上打开WinCC工程的“变量管理”。 3.在工程向导中右键单击“变量管理”选项,在弹出菜单中选择“添加新的驱动”选择 “OPC”。 图. 01
OPC通道创建完成。 4.在工程向导中右键选择“OPC Groups...” 然后再弹出菜单中选择并打开“系统参 数”。 图. 02 打开“OPC条目管理器”界面。 5.点击“OPC UA服务器”按钮。
图. 03 打开“添加OPC UA服务器”界面。 6.在“服务器信息”对话框中输入服务器的URL地址,格式为:"opc.tcp://[服务 器]:[端口号]"。其中,“[服务器]”中输入作为服务器的PC的IP地址;“[端口号]”中输入OPC UA服务器使用的端口号,默认端口是“4862”。(如下图中所示) 图. 04 7.在“安全性”对话框中,“安全策略”选择“Basic128Rsa15”,“消息安全模式”选择 “签名和加密”。(如上图所示,需要注意的是,设置为“无安全”也可以达到通讯的效果,但从安全角度考虑不推荐使用) 点击“确定”关闭对话框。 8.在“OPC条目管理器”中选择新创建的OPC UA服务器选项。点击“浏览服务器”按 钮。
WinCC脚本案例保留 2010-09-16 16:44 最近做一个WinCC跟ERP通讯的一个小项目,将脚本语言保留下来,以备不时之需! 仅仅是保留,各位看官如发现不妥之处请加以指教. 1.通过扫描枪扫描到ID号传给PLC,WinCC读取到ID号从ERP数据库中查找相关数据,写回到PLC,并给PLC一个写完成确认信号.(数据库是SqlServer2000) Dim DB240trigger,db241trigger db240trigger=HMIRuntime.Tags("db240itrigger").Read db241trigger=HMIRuntime.Tags("DB241itrigger").Read Dim ss,str str=HMIRuntime.Tags("DB240szcoil_ID").Read ss=CStr(str) If (db240trigger=1 And db241trigger=0 ) Then Dim sPro,sDsn,sSer,sCon,sSql Dim oRsMaterial,conn,oCom,oItem,oRsSCHEMA Dim database,server,uid,pwd sCon ="driver=sql server;server=10.51.103.96;DATABASE=brgs_release;uid=sa;pwd=pasword" Set conn = CreateObject("ADODB.Connection") conn.ConnectionString = sCon conn.Open Set oRsMaterial = CreateObject("ADODB.Recordset") sSql= "SELECT * FROM dbo.BRGS_GP_Material where MkNo='" & CStr(ss) & "'" oRsMaterial.open ssql,conn,1,1 Dim m,n m=oRsMaterial.recordcount If m<>1 Then MsgBox "这个ID号找不到唯一的一条参数信息,请手动输入信息!" Exit Function End If Dim sCon2,sSql2
OPC 通讯配置设置,非常好,申请加精 需要注意的是如果你的系统是XP(server端和客户端上一样的) 需要将我的电脑的桌面属性设置成默认属性,负责找不到下文中的“DCOM的总体默认属性页面",DCOM配置时我的电脑上会有个红色小箭头 1 客户端安装OPC Data Access 2.0 Components 2 客户端的用户名和密码一致 3客户端的DCOM配置 a."开始"--"运行",输入"dcomcnfg",然后回车,启动dcom配置 b.常规页面中,双击你的应用服务器,打开你的应用服务器DCOM属性设置。 c.将常规页面中的身份验证级别改为"无"。 d.身份标识页面中,选择"交互式用户"。 e.位置页面中,选择"在这台计算机上运行应用程序",进入DCOM的总体默认属性页面,将" 在这台计算机上启用分布式COM"打上勾,将默认身份级别改为"无"); 4 服务器安装OPC Data Access 2.0 Components 5 服务器的DCOM配置 a.在运行OPC服务器上的计算机中运行dcomcnfg程序,进行DCOM配置。 b.进入DCOM的总体默认属性页面,将"在这台计算机上启用分布式COM"打上勾,将默认身 份级别改为"无"。 c.进入DCOM的总体默认安全机制页面,确认默认访问权限和默认启动权限中的默认值无 EveryOne,如果不去掉EveryOne,应用服务器不能正常启动。 d.在常规页面中,双击你的OPC应用服务器,打开你的OPC应用服务器DCOM属性设置。 e.将常规页面中的身份验证级别改为"无"。 f.位置页面中选上"在这台计算机上运行应用程序"。 g.将安全性页面设置中,均选择"使用自定义访问权限",编辑每一个权限,将EveryOne加 入用户列表中。 h.身份标识页面中,选择"交互式用户"。) I.nt的GUEST用户不能禁用
Vbs 操作wincc画面脚本总结 一:不使用变量单纯的操作界面 1.操作某个画面中控件的属性如Home1.Pdl(总窗体)下的画面窗口2(画面窗口) Sub OnClick(ByVal Item) Dim objCircle Dim screenname Dim pwname Set objCircle= ScreenItems("圆1" ) objCircle.Radius = 60 Set screenname=HMIRuntime.Screens("Home1") //获取要操作的窗体 Set pwname=screenname.ScreenItems("画面窗口2") //获取要操作的控件,这里填入你要操作的控件名 MsgBox(objCircle.Radius) //输出圆的半径 MsgBox (pwname.Picturename) //输出当前画面窗口2的名字 End Sub 注意当调用某窗体下的某控件的某个属性时,需要声明两个对象,一个接纳这个控件,一个接纳值例如 Dim object Dim value Set object =HMIRuntime.Screens("Home1").ScreenItems("画面窗口2") Set value=object.picturename 2.更改画面窗口的对象 Sub OnClick(Byval Item) Dim opObject Set opObject=HMIRuntime.Screens ("Home1").ScreenItems("画面窗口2") opObject.PictureName="Page1.Pdl" End Sub 3.设置文本 Set titleTxt=HMIRuntime.Screens ("Home1").ScreenItems("静态文本2") titleTxt.Text =titleTxt.Text+"EF" //获取文本的值并追加字符 4.vb 字符串函数 VB的字符串截取函数有Left(字符串,n),返回字符串前N个字符;Mid(字符串,p,n),从第p个字符开始,向后截取N个字符;right(字符串,n),返回字符串的最后n个字符。 获取下标
在S T E P里面创建W I N C C项目集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]
一、从WinCC里调用STEP 7 变量的前提条件从WinCC里调用STEP 7 变量可以将建立变量的工作量减少一半,同时将建立变量的出错概率建设一半,从而减少了相应的排错工作,大大提高了工作效率。从WinCC里调用STEP 7 变量的前提条件是,WinCC的项目文件必须是集成在STEP 7项目中的。在安装所有Simatic 软件前,请查阅软件的安装注意事项,确定操作系统与软件的兼容性。该文档一般位于:CD\Documents\<语言版本>\。要使用WinCC与STEP 7的集成功能,WinCC 和STEP 7必须安装在同一台计算机上,必须在安装WinCC之前安装STEP 7。STEP 7 与WinCC的版本必须一致。WinCC与STEP 7的版本兼容行列表可以在西门子自动化与驱动集团的技术支持与服务网站上获得。请STEP 7安装完毕后,进行WinCC安装。在WinCC安装过程中,请选择“自定义安装”,在communitation 下的所有选项都必须钩选。二、在Simatic Manager里建立新的WinCC 项目在建立新的STEP 7项目后,可以在Simatic Manager里直接建立新的WinCC项目。方法是在Simatic Manager里,右键点击项目名称,选择“Insert New Object\OS”。此时系统会在STEP 7 项目文件里建立一个WinCC项目文件你可以在OS站上点击右键,选择“Re name”来修改WinCC项目名称。可以通过在名称上点击右键,选择“Open Object”打开并编辑这个WinCC项目 三、把现成的WinCC项目集成到STEP 7 项目中按如下步骤把已有WinCC项目文件插入STEP 7项目文件 A. 在STEP 7项目文件中插入一个OS站,然后把它改名为已有的WinCC项目名称。B. 在STEP 7项目里删除因仅插入OS站而产生的WinCC项目文件,其位置在STEP 7 项目文件夹里的wincproj文件夹下,例如:d:\siemens\STEP7\S7proj\STEP7_Integration\wincproj\Name of the OS C. 最后在项目复制器里用’Save as’把已有的WinCC项目文件存储到STEP 7项目路径下。项目复制器位于开始菜单项"Start > SIMATIC > WinCC > Tools"。注意:对于集成STEP 7项目里的WinCC项目,你也可以使用压缩工具(Packer)来归档WinCC项目。四、把变量(符号表,共享DB,背景DB)从STEP 7传送到WinCC里 STEP项目文件里的符号表,共享DB里的变量可以一次性的传入继承的WinCC项目文件。具体步骤如下: A、为需要传输的变量打上“传输标志” 在需要传输的变量上点击右键,从关联菜单中选择“Special Object Properties \ Operator Control and Monitoring…”,打开Operator Control and Monitoring对话框,激活复选框“Operator Control and Monitoring”,并点击“OK”关闭对话框。此时该变量前将显示绿色小旗如需对成批变量进行该操作,可以使用“Shift+鼠标左键”进行批选择,或者使用“Ctrl +鼠标左键”对成批选择的变量进行个别增减。为共享DB的变量做注释在需要传输的变量上点击右键,从关联菜单中选择“Object Properties”,打开Properties 对话框,在对话框第一行的Attribute 中输入 S7_m_c ,Value 为ture,并点击“OK”键退出。此时被选中变量前被用红色小旗标志. 为背景DB的变量做注释打开相应的FB,在需要传输的变量上点击右键,从关联菜单中选择“Object Properties”,打开Properties 对话框在Attribute页第一行输入 S7_m_c ,Value 为ture并点击“OK”键退出开启共享和背景DB的操作和监视功能 DB里的变量被标志后,必须启动DB的“Operater control and monitor”功能才能启动变量传输。 在simatic maneger 窗口中右击所需传送变量的DB,在弹出的菜单中选择 special object- >operetor control and monitoring,在接下来的对话框中将Operater control and monitor复选框钩上。选中该复选框后,“WinCC Attributes”页被显示,其中列举了所有被标准过的变量。 B、将被标志的变量传送到WinCC项目文件中在SIMATIC Manager的菜单中选中选项“Options\OS\Compling…”在弹出的对话框中直接点next 直到开始编译。编译完成后,弹出integration2对话框,选择第一项,并用“OK”键确认。编译完成后系统会提示编译是否成功,如果失败会弹出相应的记录文件。编译成功后,打开WinCC项目文件。可以看到,系统已经在变量管理器里自动生成了相应的WinCC变量。在WinCC里需要变量引用的位置进行变量选择,出现变量选择对话框后,选中对话框右上角的“STEP 7 Symbol Server”复选框。此时,对话框右侧变量选择列表中将显示“STEP 7 Symbol Server”列表。从改列表中可以显示STEP 7符号表和共享数据块里的所有变量
VB6.0开发WinCC的OPC客户机实例 [ 来源:机电论文| 类别:技术| 时间:2009-4-8 9:42:34 ] [字体:大中小] 关键词:OPC VB6.0 WinCC上位机 WinCC是西门子公司在自动化领域采用最先进的技术与微软公司在共同开发的居于世界领先地位的工控软件。WinCC即WINDOWS CONTROL CENTER (视窗控制中心)。WinCC是一个功能强大的全面开放的监控系统,既可以用来完成小规模的简单的过程监控应用,也可以用来完成复杂的应用。在任何情况下WinCC都可以生成漂亮而便捷的人机对话接口,使操作员能够清晰地管理和优化生产过程。它集成的OPC(OLE for process control)服务器使得过程数据可由其它应用程序(OPC客户机)访问。 WinCC在安装时提供了OPC的客户端控件: Siemens OPC DAAutomation 2.0( SOPCDAAuto.dll), 在WINCC的帮助中,有Siemens OPC DAAutomation 2.0使用的简略帮助,但说得不很详细,我在使用VB6.0开发WinCC的OPC客户机中碰到不少问题,现一并写出来,与大家共享。希望起到抛砖引玉,举一反三的作用。 一、开发实例背景:我厂包装机BE电气改造后,由原来了单片机、直流调试板、温度控制板等控制改为带有通讯端口PLC、变频器、温控仪等控制,上位机监控软件为WinCC。在控制系统中,变频器、温控仪的控制信号通过串口、OPC客户机接入上位机WinCC,报警信号接入PLC。其硬件组态结构如图一
OPC开发要求:①通过WinCC建立内部变量Tag(1),Tag(2),Tag(3),Tag(4)……;在视图窗口建立相应了I/O输入输出域。通过更改WinCC中I/O域的值,来设定或更改变频器、温控仪等的参数。②通过VB开发了串口驱动程序,读取变频器、温控仪等的参数,通过OPC控件把值传递给WinCC中的I/O域。 二、VB6开发WinCC的OPC客户机具体步骤: 1、打开VB6,建立如图二窗体: 其中,文本框组Text4.text为写入WinCC内部变量名称;文本框组Text5.text 为显示相应了WinCC内部变量值;文本框组Text8.text为写入期望了WinCC内部变量值。单选框为OPC连接成功标志。3个命令按钮分别为“连接”,“断开”,“退出”。 2、OPC的连接 先在工具栏中“工程\引用”将近Siemens OPC DAAutomation 2.0加入,然后开始定义全局变量。在本程序中,我使用了一个OPC组进行OPC访问,所以定义了全局变量。我们要首先定义OPC服务类型与计算机结点名。定义OPC组与OPC标签组。并定义OPC的标签数组与值数,注意,值数组一定要设为Variant。 Option Explicit Option Base 1 ‘这数组必须由1开始,不能由0开始 Const ServerName = "OPCServer.WinCC" OPC的类型 Dim NodeName As String 结点名,即计算机名 Dim WithEvents MyOPCServer As OPCServer OPC服务 Dim WithEvents MyOPCGroup As OPCGroup OPC组 Dim MyOPCGroupColl As OPCGroups Dim MyOPCItemColl As OPCItems OPC标签组 Dim MyOPCItems As OPCItems Dim MyOPCItem As OPCItem
OPC软件与WINCC通讯 一、OPC软件设置 打开KEPServerEx软件,到Tool->Options进入OPC DX选项卡下面。将Enable OPC Date Exchange打勾,详细功能请参照下面帮助,点击确定。 二、OPC软件下添加通讯变量。 这里新建一个三菱的驱动,通过485串口通讯(非编程口),选择驱动名称为Mitsubishi FX Net,点击下一步。 设置通讯接口,将Flow设置成始终。点击下一步。
三菱的协议数据位为7位,这个要注意。 下面为默认。再点击完成。 然后点击新建驱动。 选择PLC型号为FX3U,点击下一步。
设置PLC地址。关于三菱里面的PLC地址与通讯参数设置请参照三菱PLC 帮助,与KEPServerEx帮助。 以下是KEPServerEx软件帮助。KEPServerEx软件支持的PLC型号与通讯协议。 需要在三菱PLC中选择格式一,和校验。 下面全部选择默认参数。点击完成。 在PLC1上点右键新建变量或者变量组。如果变量很多推荐使用变量组功能,这里就不再演示,这里直接新建变量了。
填写变量名,变量地址,注释,变量类型,还有读写权限。点击确定。
此时新建变量已完成。 三、OPC软件与PLC通讯测试 点击工具栏中的OPC进行测试。 到FX3U.PLC1下监控变量的值。后面有质量是Bad,还是Good,说明是已建立通讯还是通讯失败。 另外软件下面也有相关信息 这个报警说明我的COM1已被使用。 如果WINCC需要监控OPC软件与PLC是否连接成功,可以监控FX3U.PLC1._System中的Error变量的值,如果是TRUE说明通讯失败。 四、WINCC建立连接