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运行一段时间,所有显示的数据都为零?

    wincc运行一段时间,所有显示的数据都为零?我感觉是通讯变慢了!我是有opc通讯的,opc读取数据正常,通讯波特率为3m,通讯方式是profibus与西门子200通讯。重新激活后…

    SIMATIC WinCC 2019年6月11日
  • 组合框改变画面

    如何通过组合框改变画面窗口里的画面?我想组合框值为1时为一个画面,2和3时又是另两个不同的画面 最佳答案 参考视频:WinCC跟我做:WinCC如何使用组合框、复选框及选项组htt…

    SIMATIC WinCC 2021年7月5日
  • 大量地使用脚本语言来实现的大型组态监控有哪些弊端?

    我在使用wincc7.3,有很多逻辑处理、数据转换、与操作第三方数据库等等都是用大量的脚本语言来实现的,这样大量地使用脚本语言有没有严重的弊端?为了让大系统运行顺畅有没有好的建议?…

    SIMATIC WinCC 2021年7月5日
  • WinCC项目复制到另一台工控机的问题

    用WinCC自带的项目复制器,工程复制后在放入另两台工控机上,打开项目,选择启用本地服务器,计算机名选择本机名,然后激活项目,一台工控机正常,而另一台工控机画面始终无法读取IO信号…

    SIMATIC WinCC 2017年10月31日
  • WINCC用脚本根据条件显示文字怎么做

    WINCC用脚本根据条件显示文字怎么做,最好有步骤和程序说明,谢谢! 最佳答案 多看帮助文件,可先用内部变量进行模拟仿真。 提问者对于答案的评价:谢谢

    SIMATIC WinCC 2018年12月9日
  • wincc 模拟量报警归档显示

    各位大侠、高手请教你们个问题。我在原来WINCC项目上做这个项目二期。在WINCC报警记录中增加了一些模拟量报警,模拟的参数设置没有问题,但是我模拟一个模拟量报警。报警信息在WIN…

    SIMATIC WinCC 2019年6月11日
  • 新增WINCC客户机怎么弄

    现场原来有一台服务器,一台客户机,客户机当初工程师调试时是把服务器的WINCC程序拷贝到客户机里,把WINCC里面外部变量全部删除后,在把WINCC服务器改成客户机项目,最后改计算…

    SIMATIC WinCC 2017年11月4日
  • 关于wincc变量记录的两个问题

    运行后的控件如图“变量记录运行截图”所示1.只显示3行,新数据覆盖后,一直保持三行,哪里能设置显示的行数。2。数据上有一横线,什么意思?有的数据有横线有的没有。各位帮帮忙。3.如图…

    2018年12月6日
  • wincc 7.3报警器horn 怎么连接多个报警声音(100多条)

    项目里有100多个报警信号,客户需要每条报警连接一段对应的报警声音。试了两种方案1.设置多个“消息等级”,每个消息等级对应一个报警信号,每个消息等级在报警器的“消息分配”中对应一个…

    SIMATIC WinCC 2021年7月5日
  • 怎么利用wincc 向plc内传输动态数字

    想在wincc里做一个滚动条,滑动滚动条时能在plc 的m区写入数字,不知道能否实现。为何做了多次都不能成功。 最佳答案 这个当然能够实现,S7-300PLC那么强大的功…

    SIMATIC WinCC 2017年11月12日