SCADA系统常用VB\VC语言大全

可以用来作为非周期事件驱动
int New_Function_1()
{
int i;
tag=GetTagWord(“tag1”);
if(i>10) {return 1;}
else{return 0;}
}
1、变量自加1(C)

int tag;
tag=GetTagByte(“tag1”);
tag=tag+1;
SetTagByte(“tag1”,tag);


2、变量自减1(C)

int tag;
tag=GetTagByte(“tag1”);
tag=tag-1;
SetTagByte(“tag1”,tag);


3、颜色改变(VB)

ScreenItems(“Rectangle1”).BackColor = RGB(255,0,0)


4、单键的置位与复位(C)

BOOL Z;
Z=GetTagBit(“TAG”);
if(Z==0) SetTagBit(“TAG”,1);
else SetTagBit(“TAG”,0);


5、输入/输出域实现带确认的输入操作(C)

int TempValue=GetTagWord(“TempValue”);
char szBuffer[20];
sprintf( szBuffer,“Input 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、DisplayValue是实际需要控制的变量,TempValue作为临时变量使用。
2、新建一个输入/输出域,在输出值处打开动态对话框。选择直接连接DisplayValue
3、在同一个输入/输出域的事件,选择 输出/输入–输入值–直接连接 ,选择直接连接到临时变量TempValue
4、在同一个输入/输出域的事件,选择 键盘–释放–C动作,输入以上代码。


6、VBS弹出提示小窗口(VB)

Dim a
Dim objCon2
Set objCon2 = HMIRuntime.ActiveScreen.ScreenItems(“按钮1”)
a=MsgBox(“hello!”,vbYesNo)
If vbYes=a Then
objCon2.text=“ok” '如点击是,则按钮文本变为ok
Else
objCon2.text=“no” '如点击否,则按钮文本变为no
End If

注:放置按钮,起名按钮1.


7、位状态实现带确认的输入操作(C)

BOOL a;
a=GetTagBit(“30T制水启动”); //Return-Type :short int
if (a==0)
{
if(MessageBox(NULL,“请确定启动?”,“操作提示”,MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND|MB_SYSTEMMODAL) == 6)
{ SetTagBit(“30T制水启动”,1);
//Return-Type :BOOL
}
}
else
{if(MessageBox(NULL,“请确定停止?”,“操作提示”,MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND|MB_SYSTEMMODAL) == 6)
{ SetTagBit(“30T制水启动”,0);
}}


8、wincc运行界面里面怎么调用屏幕键盘 (C)

ProgramExecute(“c:\windows\system32\osk.exe”);

注:1、选中[计算机],然后在左边选择当前项目的服务器名,双击弹出项目的[计算机属性]对话框。选择最后一栏[运行系统],里面就有一个[监视器键盘],用来实现无键盘WinCC全屏运行时数值输入的;

2、如果想使用系统的虚拟键盘,可以用按钮的点击事件的C代码,添加以上代码。

3、如果想要手写输入,就安装Tablet PC面板组建来实现了。

9、通过按钮实现用户登录(C)

#pragma code(“useadmin.dll”)
#include “PWRT_API.H”
#pragma code()
PWRTLogin(‘1’);


10、通过按钮实现用户注销(C)

#pragma code (“useadmin.dll”)
#include “PWRT_api.h”
#pragma code()
PWRTLogout();


11、在画面中显示用户名

1.组态静态文本

2.字体属性中的文本,连接系统变量@CurrentUser


12、WINCC在线修改用户密码

(1)旧密码设置(C)

SetOutputValueChar(lpszPictureName,lpszObjectName,GetInputValueChar(lpszPictureName,lpszObjectName));

注:字符串格式的输入输出域》事件》属性主题》输出/输入》输出值》更改》以上代码。

(2)新密码设置(C)

SetOutputValueChar(lpszPictureName,lpszObjectName,GetInputValueChar(lpszPictureName,lpszObjectName));

注:字符串格式的输入输出域》事件》属性主题》输出/输入》输出值》更改》以上代码。

(3)新密码确认设置(C)

SetOutputValueChar(lpszPictureName,lpszObjectName,GetInputValueChar(lpszPictureName,lpszObjectName));

注:字符串格式的输入输出域》事件》属性主题》输出/输入》输出值》更改》以上代码。

(4)确认按钮(C)

#pragma code (“usegen.dll”)
#include “usegenap.h”
#pragma code ()

HWND Handle;
DM_PROJECT_INFO pr_info;
DM_DIRECTORY_INFO dir_info;
CMN_ERROR error;

char *pold_pass=NULL;
char *pnew_pass=NULL;
char *pconfirm=NULL;
char old_pass[51];
char new_pass[51];
char confirm[51];

long int ret;
BOOL ret2;

memset(&pr_info,0,sizeof(DM_PROJECT_INFO));
memset(&dir_info,0,sizeof(DM_DIRECTORY_INFO));
//this line is necessary when you want to have a realy modal message box
Handle = FindWindow(“PDLRTisAliveAndWaitsForYou”,NULL);

//Get the differents strings old, new password and confirmation
pold_pass=GetPropChar(lpszPictureName,“IOField_OldPassWord”,“OutputValue”);
pnew_pass=GetPropChar(lpszPictureName,“IOField_NewPassWord”,“OutputValue”);
pconfirm=GetPropChar(lpszPictureName,“IOField_Confirmation”,“OutputValue”);
strncpy(old_pass,pold_pass,50);
strncpy(new_pass,pnew_pass,50);
strncpy(confirm,pconfirm,50);

//if the new password and the confirmation are not the same display a message in a modal messagebox
ret = strcmp(pnew_pass,pconfirm);

if (ret)
MessageBox (Handle, “输入密码不一致!”, “请重新输入”, MB_OK |
MB_ICONEXCLAMATION | MB_SYSTEMMODAL);
else
{
// if the new and the old password are the same display a message in a modal messagebox
if (!strcmp(pnew_pass,pold_pass))
{
MessageBox (Handle, “新密码和旧密码不能相同 !”, “请重新输入密码”, MB_OK |
MB_ICONEXCLAMATION | MB_SYSTEMMODAL);

}
else
{
    // this 2 lines are necessary to get the DSN-Name of the project
    ret2=DMGetRuntimeProject(pr_info.szProjectFile,sizeof(pr_info.szProjectFile),NULL);
    ret2=DMGetProjectInformation(pr_info.szProjectFile,&pr_info,NULL);
    //connect to the Database with the DSN-Name contained in the pr_info-Structure
    PWGENConnect (pr_info.szDSNName,&error); 
    // Change the password from Old_pass to New_pass of the user @CurrentUser
    ret2=PWGENChangePassword (GetTagChar("@CurrentUser"),old_pass,new_pass,&error);
    if (!ret2)
    {
        // when a password of another user is given, display a message in a modal messagebox
        MessageBox (Handle, "请检查用户名密码!", "请重新输入密码", MB_OK |
        MB_ICONEXCLAMATION | MB_SYSTEMMODAL);
    }
    else
    {
    // Disconnect from the Database
    PWGENDisconnect(&error);
    SetVisible("start.pdl","PictureWindow1",0); //hide the window "ChangePassword"
    }
}

}

注:事件》鼠标》释放左键。


13、如何触发计算机扬声器的声音 (C)

#pragma code(“kernel32.dll”);
BOOL Beep(DWORD dwFreq,DWORD dwDuration);
#pragma code();
Beep(500,500);


14、画面窗口的显示与隐藏(C)

(1)窗口显示

SetVisible(lpszPictureName,“PictureWindow1”,1);

(2)窗口隐藏

SetVisible(“Start.pdl”,“PictureWindow1”,0);


15、单按钮的窗口的显示与隐藏(C)

SetVisible(lpszPictureName,“画面窗口名称”,1-GetVisible(lpszPictureName,“画面窗口名称”));


16、报表变量C计算求三个浮点数平均值(C)

#include “apdefap.h”
double _main()
{
#pragma option(mbcs)
double v1,v2,v3,aver;
v1=GetTagFloat(“v1”);
v2=GetTagFloat(“v2”);
v3=GetTagFloat(“v3”);

aver=(v1+v2+v3)/3;

SetTagFloat(“aver”,aver);

return(aver);
}


17、C脚本播放wav文件(C)

#pragma code ("Winmm.dll ")
VOID WINAPI PlaySoundA ( char* pszSound, char* hmode, DWORD dwflag );
#pragma code()
PlaySoundA(“C:\Winnt.400\Media\tada.wav”,NULL,1);

注:播放的路径用\隔开。


18、运行状态调出用户管理界面(C)【7.0 软件下使用】

ProgramExecute(“PASSCS.exe C:\Program Files\Siemens\WinCC\WinCCProjects\demo2\demo2.mcp”);


  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SCADA(Supervisory Control And Data Acquisition)系统是一种用于实时控制和监控工业和基础设施设备的自动化系统。下面是 SCADA 系统搭建的基本步骤: 1. 设计 SCADA 系统:在开始 SCADA 系统搭建之前,你需要明确系统的功能需求、硬件和软件需求。你需要选择适合你的业务需求的 SCADA 系统。 2. 安装 SCADA 软件:在选择合适的 SCADA 软件后,你需要安装软件并进行基本配置。安装 SCADA 软件通常需要在运行 SCADA 系统的计算机上启动安装程序,并按照安装向导进行操作。 3. 连接设备:连接设备是 SCADA 系统搭建中最重要的步骤之一。你需要将 SCADA 系统与你的设备连接起来,例如传感器、PLC、变频器等等。你需要了解不同设备的通信协议和接口,并按照 SCADA 软件的要求进行连接。 4. 配置数据采集:数据采集是 SCADA 系统的核心功能之一。你需要配置 SCADA 软件以从设备中获取数据。你需要了解设备的数据格式和采集周期,并设置正确的数据采集参数。 5. 配置报警和事件:为了监控设备的状态和异常情况,你需要配置报警和事件。你需要设置报警阈值和报警通知方式,并设置相应的事件处理程序。 6. 配置数据存储:为了分析设备的历史数据和趋势,你需要配置 SCADA 系统以存储数据。你需要了解数据存储格式和存储周期,并设置正确的数据存储参数。 7. 配置用户和权限:为了保护 SCADA 系统的安全性和可靠性,你需要配置用户和权限。你需要设置用户账号和密码,并为不同的用户分配不同的权限。 8. 测试和调试:在完成以上步骤后,你需要测试和调试 SCADA 系统以确保其正常工作。你需要模拟不同的设备状态和异常情况,并检查 SCADA 系统的响应和报警功能。 以上是 SCADA 系统搭建的基本步骤,具体步骤和操作可能会根据你的需求和环境而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值