发表于:2005-06-08 21:38:00
楼主
您好,我是上次那个询问温控曲线控件问题的人。
运用组态王时,根据用户要求做了一个温控画面中,插入了温控曲线控件,定义了一个时间偏移变量,在“应用程序命令语言”中定义每过1秒该变量加1,在温控曲线上显示该时间的温度设定值和实际值。
因为工程文件较大,点数较多,所以不方便打包寄给您,现将程序写下寻求指教。程序是编写在“画面命令语言”的“存在时”中,"Ctrl15"是温度控件的名称。
*************************************************************************
if((\\本站点\C361五槽炉继电器开关==1)&&(\\本站点\五槽炉温控手自动切换==1))
{if(\\本站点\时间偏移量1==0)
{
pvClear( "Ctrl15", 0 );
pvClear( "Ctrl15", 1 );
\\本站点\工程路径1=InfoAppDir()+"SetSave.csv";
pvLoadData( "Ctrl15",\\本站点\工程路径1,"SetValue");}
\\本站点\时间偏移量1=\\本站点\时间偏移量1+1;
pvGetValue( "Ctrl15",\\本站点\时间偏移量1,\\本站点\C361五槽炉设定温度T, "SetValue" );
pvAddNewRealPt( "Ctrl15",1,\\本站点\C361五槽炉温度,"RV_TIME");
\\本站点\C361五槽炉温度=\\本站点\C361五槽炉温度*1.0;
}
if(\\本站点\五槽炉温控手自动切换==0)
{
\\本站点\C361五槽炉T=\\本站点\C361五槽炉T;
\\本站点\时间偏移量1=\\本站点\时间偏移量1; }
***************************************************************************
在调试中发现只有当温控画面一直为当前画面的时候,温控曲线才显示正常,如运行到第90秒时切换至工程其他画面,过60秒后再回到温控画面,曲线应该随着时间偏移量的增加显示到第150秒往后,可实际上曲线是从刚才第90秒往后,并未和时间偏移量保持同步,这样就无法完成温控的要求。
画面切换时我用的是按钮,按下按钮时使用函数ShowPicture("画面名称");检查了编写的程序,发现程序按照例子是编写在“画面命令语言”的“存在时”中,后尝试把这段程序写到“应用程序命令语言”的“运行时”中,这样程序的运行就不受画面状态的影响,但是运行时信息窗口就提示找不到温度控件。根据您的提示,在“应用程序命令语言”中加上showpicture("画面名称");运行时不再提示找不到温度控件,但是执行还是不对,所以想请您再指点一下。工程调试日期将近,此问题仍然无法解决,很是苦恼,希望得到您的帮助,不知您是否可以把您以前做的关于温控曲线的例子,或者编写的程序发给我,我的邮箱是paopaoeniu@sina.com,qq号24784827,网易泡泡id:zhuangji1980,希望尽快得到您的指点,感激不尽!