WINCC如何生成.txt文件或word文件

我要把WINCC上的数据生成一个.txt格式或word的文件,怎么实现啊,各位大侠请帮帮忙吧,急用啊,小妹这里先谢过啦!

问题补充:
我要实现文本里的数据可根据wincc里的数据实时变化,wincc的数据是PLC发给的,新的数据可以覆盖旧的数据

最佳答案

1、首先,在Windows系统资源管理器D盘中根目录下(即D:\)新建一个文本文件,名称为“DATA.txt”;
 2、然后打开WinCC项目后找到“Global Script”节点,再进入“Global Script”编辑窗口;
 3、选取“C-Script”工具,新建一个“C-Script”编辑窗口,写入以下的C-Script代码:
 (1)如果是连续循环向.txt格式文件写入数据,可参照如下:
 #pragma option(mbcs)
 void Write_Data()
 {
   #define MaxLineLength 80
    FILE *fpFile;
    char *strTag[5] = { "TagA", "TagB", "TagC", "TagD", "TagE" }; 
    char *pTmp;
    char buffer[MaxLineLength];
    double  dVal;
    int i;
    fpFile = fopen(GetTagChar("D:\\DATA.txt"), "w+" ); //open file to write
    printf ("C-Script: write file: %s\r\n", GetTagChar("Filename"));
    if (fpFile !=NULL)
    {
        for (i=0; i<=4; i++){
           dVal = GetTagDouble(strTag[i]);
           sprintf(buffer, "%s;%lf\n", strTag[i],dVal);
           // Search for '.' and replace with ','
           pTmp  = strchr(buffer, (int)'.');
           if (pTmp != NULL){
                *pTmp = ',';
           }
           fputs(buffer,fpFile);
           printf("%s\r\r\n", buffer);
        }
        fclose(fpFile); //close file
    } else {
        printf ("Error: File not found!\r\n");
    }
 }
 (2)其次,可参照如下:
 #pragma option(mbcs)
 void Write_Data()
 {
 FILE *datei;
 char *a;
 char *b;
 dadei=fopen("D:\\DATA.txt","w");   //open file to write
 if(dadei!=NULL)
   {
   a=GetTagChar("DO1");
   b=GetTagChar("DO2");
   fprintf(dadei,"%s\n%s",a,b);
   }
 fciose(datei);  //close file
 }
 4、C-Script代码编辑完成后,编译存盘,并指定选取一个需要的触发间隔时钟(trigger ),就可周期*执行写文本文件动作了。
 5、以上提供代码仅供参考使用,重点是掌握使用方法。

提问者对于答案的评价:
谢谢您,我的问题已经解决了,程序里有点小错误,我自己改了,还想请教一下用变量作为触发器要怎么弄啊?要在全局脚本里自己编译函数吗

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc271560.html

(1)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午8:27
下一篇 2019年6月11日 上午8:27

相关推荐

  • wincc 选项组问题

    我有三个bool变量,想通过选项组来实现选择,请问c语言怎么写 图片说明:    最佳答案 楼上的脚本没有问题,在选项组1中的属性选择事件下的输出/输入的选择框…

    2021年7月5日
  • winCC 和程序

    我们小组弄了个项目,程序和WINCC 监控画面分别由两个人在不同的电脑上完成的,最后怎么把控制程序和监控画面关联起来,放到一个项目里呢 最佳答案 wincc画面可以导出导…

    SIMATIC WinCC 2021年7月5日
  • wincc 怎样编译

    能否通过s7plcsim5.4实现wincc模拟编译。 plcsim5.4能否同时打开两个cpu窗口,或是一个cpu一个pc 进行模拟 最佳答案 1.&nbsp…

    SIMATIC WinCC 2019年6月11日
  • flexible smart项目文件找不到数据库

    刚刚做完flexible smart文件未保存完整,现在打不开了,显示连接不到SQL数据库,求助?怎么解?谢谢! 图片说明:    最佳答案 http…

    2021年7月5日
  • 触摸屏与PLC通讯

    请问编辑好WICC项目后要经过那些步骤才能与PLC通讯并完成我所要的功能 最佳答案 通讯 通讯伙伴可以是网络中的任何单元,它能够与其他伙伴通讯和交换数据。在WinCC环境…

    SIMATIC WinCC 2019年6月11日
  • 谁能告诉我WINCC里面的VBS脚本怎么用

    本人初次接触脚本,想用VBS进行项目组态,就是不明白该怎么用,有这方面资料吗 最佳答案 wincc的帮助里有例子深入浅出wincc里也有例子咱网站也有例子 提问者对于答案的评价:h…

    SIMATIC WinCC 2019年6月11日
  • wincc 自动启动错误,正常情况下也无法打开

    wincc做好后,应要求在windows原本基础上又建立了一个用户名,但是在这个用户里面无法打开wincc,如果自动运行的话会提示图1,2。我在C盘找到这个文件夹并给拷贝到新用户这…

    2017年6月19日
  • WinCC监控PLC的同时,与第三方系统OPC通讯读外部数据

    目前已有系统是WinCC组态上位机监控S7-300PLC构成的下位机,根据生产需要,想通过WinCC走OPC协议去采集另外一个系统的实时数据,同时还要监控下位PLC系统,请问硬件和…

    SIMATIC WinCC 2017年11月4日
  • xxx指令引用的xxx内存。该内存不能为written。

    在用OPC做S7-200和WINCC通讯是老是出:xxx指令引用的xxx内存。该内存不能为written或xxx指令引用的xxx内存。该内存不能为read。导致画面变量连不上。 最…

    SIMATIC WinCC 2018年1月1日
  • 按钮权限

    在WINCC画面中放一个退出系统的按钮,只有管理员可以推出,该如何设置权限呢?就是点击按钮弹出一个要求输入拥护和密码的对话框.谢谢!希望能详细些. 最佳答案 你应该再另做一个登陆按…

    SIMATIC WinCC 2019年6月11日