打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
WINCC读写记事本创建工艺配方全局脚本源码实例
void  fjgy_save()//将数据写到记事本中
 {
 FILE*fp;
 int i;
 int a;
 int xx[27];
 float yy[85];
 char ch[40];
 char ch1[40];
 char zz[9][40];
  
  sprintf(ch,"fjgy%s.txt",GetTagChar("发酵工艺名称")); //返回类型:char* 
 
     remove(ch);
     fp=fopen(ch,"wb");
        {
                    for(i=1;i<10;i++)
                      {
                          sprintf(ch1,"设定检测时间_%d",i);
                           a=i-1;
                          xx[a]=GetTagWord(ch1);
                          
                         sprintf(ch1,"温度参考点_%d",i);
                         a=i+8;
                          xx[a]=GetTagWord(ch1);
                        
                          sprintf(ch1,"1#罐段时间设定_%d",i);
                         a=i+17;
                          xx[a]=GetTagWord(ch1);
                                         
                         sprintf(ch1,"阀最大输出_%d",i);
                          a=i-1;
                          yy[a]=GetTagFloat(ch1);
                         
                          sprintf(ch1,"主控死区_%d",i);
                          a=i+8;
                          yy[a]=GetTagFloat(ch1);
                          
               
                         sprintf(ch1,"底温控制偏差_%d",i);
                         a=i+17;
                          yy[a]=GetTagFloat(ch1);
                           
                          sprintf(ch1,"阀1比例_%d",i);
                           a=i+26;
                          yy[a]=GetTagFloat(ch1);
                            
                          sprintf(ch1,"阀2比例_%d",i);
                           a=i+35;
                          yy[a]=GetTagFloat(ch1);
                         
                     
                         sprintf(ch1,"1#罐段温度设定_%d",i);
                           a=i+44;
                          yy[a]=GetTagFloat(ch1);
                          
 
                          sprintf(ch1,"温控提前量_%d",i);
                             a=i+53;
                          yy[a]=GetTagFloat(ch1);
                          
 
                           sprintf(ch1,"压力设定_%d",i);
                             a=i+62;
                          yy[a]=GetTagFloat(ch1);
  
                          sprintf(ch1,"压力偏差_%d",i);
                              a=i+71;
                          yy[a]=GetTagFloat(ch1);
 
   
                          sprintf(ch1,"工艺段%d参数名",i);
                              a=i-1;                                        
                          strcpy(zz[a],GetTagChar(ch1));  
 
 
                       }
                        yy[81]=GetTagFloat("1#罐段温度设定_10");
                         yy[82]=GetTagFloat("P_1");                   
                         yy[83]=GetTagFloat("I_1"); 
                         yy[84]=GetTagFloat("D_1"); 
 
          fwrite(xx,sizeof(int),27,fp);
          fwrite(yy,sizeof(float),85,fp);
          fwrite(zz,40,9,fp);
          fclose(fp);
        }
 
 
 
 
 void fjgy_upload()//从记事本中读取
 {
 FILE*fp;
 int i;
 int a;
 int xx[27];
 float yy[85];
 char zz[9][40];
 char ch[40];
 char ch1[40];
 
  sprintf(ch,"fjgy%s.txt",GetTagChar("发酵工艺名称")); //返回类型:char* 
 
     fp=fopen(ch,"rb");
        {
                  fseek(fp,0L,SEEK_SET);
                  fread(xx,sizeof(int),27,fp);
                  fread(yy,sizeof(float),85,fp);
                  fread(zz,40,9,fp);
 
 
                    for(i=1;i<10;i++)
                      {
                         
                         sprintf(ch1,"设定检测时间_%d",i);
                          a=i-1;
                          SetTagWord(ch1,xx[a]);
 
                          sprintf(ch1,"温度参考点_%d",i);
                          a=i+8;
                         SetTagWord(ch1,xx[a]);
                        
                          sprintf(ch1,"1#罐段时间设定_%d",i);
                          a=i+17;
                           SetTagWord(ch1,xx[a]);
                          
                                    
 
                         sprintf(ch1,"阀最大输出_%d",i);
                          a=i-1;
                          SetTagFloat(ch1,yy[a]);
                         
 
 
                          sprintf(ch1,"主控死区_%d",i);
                           a=i+8;
                          SetTagFloat(ch1,yy[a]);
                          
 
                          sprintf(ch1,"底温控制偏差_%d",i);
                          a=i+17;
                          SetTagFloat(ch1,yy[a]);
                           
                          sprintf(ch1,"阀1比例_%d",i);
                           a=i+26;
                          SetTagFloat(ch1,yy[a]);
                           
         
                          sprintf(ch1,"阀2比例_%d",i);
                           a=i+35;
                          SetTagFloat(ch1,yy[a]);
                            
                     
                         sprintf(ch1,"1#罐段温度设定_%d",i);
                          a=i+44;
                          SetTagFloat(ch1,yy[a]);
                           
 
                          sprintf(ch1,"温控提前量_%d",i);
                           a=i+53;
                          SetTagFloat(ch1,yy[a]);
                           
 
                          sprintf(ch1,"压力设定_%d",i);
                          a=i+62;
                         SetTagFloat(ch1,yy[a]);
                           
 
                          sprintf(ch1,"压力偏差_%d",i);
                          a=i+71;
                          SetTagFloat(ch1,yy[a]);
   
                          sprintf(ch1,"工艺段%d参数名",i);
                          a=i-1;
                          SetTagChar(ch1,zz[a]);
                         
 
                         }
                          SetTagFloat("1#罐段温度设定_10",yy[81]);
                          SetTagFloat("P_1",yy[82]);
                          SetTagFloat("I_1",yy[83]);
                          SetTagFloat("D_1",yy[84]);
 
                  fclose(fp);
         
  
 
          }
 }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
cf战队介绍大全
查找USB设备
printf, fprintf, sprintf, snprintf, vprintf, vfprintf, vsprintf, vsnprintf,
C语言详解——文件读取
strcpy、sprintf、memcpy的区别
C++各种类型的转换string,QString,char*, BYTE等等
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服