C脚本开方

A,B为PLC中两个设定值变量,在WINCC里给的数据类型为32浮点型。新建按钮,按钮按下时想让A的值开11次方然后赋给B。作C脚本如下:SetTagFloat("B",pow(GetTagFloat("A"),1/11));   提示警告:..may  losses....
 运行, 发现A值从1变化到3但B值一直为1. 
 问题一:  为什么会提示警告,而且B值并没有得到A值的开11次方的值.难道数据类型不对吗?
 问题二:如果A,B不是PLC中的值,想自己新建一个内部的变量A,B  怎么设置变量属性和C脚本才能让B的值为A开11次方的值??

 请高手解惑...

 
 

问题补充:
我用的就是pow(x,y)  可惜不行   不知道你们谁实验过  开方公式 适用于浮点型吗

最佳答案

问题出在1/11之上,这样得到的是整数。
 应该改为1/11.0即可,或者使用强制转换函数(float)1/11;
 --------------------------------------------------
 另外一个解决办法:
  A = B ^ N
  LOG(A) = LOG(B^N)=N*LOG(B)
  B=E^(LOG(A)/N)
  所以有C代码:
  float A,B;
  int N = 11;
  A = GetTagFloat("A");
  B = exp(log(A)/N );
  SetTagFloat("B",B);

提问者对于答案的评价:
谢谢
 

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午6:51
下一篇 2019年6月11日 上午6:52

相关推荐

  • 画面显示问题

    23个开关量,要求每个开关量变化时,要在画面中显示出变化状态,变化时显示,没变化时就不显示。比如,开关量Tag1,当Tag1由0变1时,在主画面中弹出一个窗口显示“1号闸门合闸”,…

    SIMATIC WinCC 2019年6月11日
  • 用户归档上传与删除

    用ID JOB的方式做好后,-1 6 可以上传,返回值为0;但,-1 8却不能删除,返回值为-1,请问是哪里有问题呢? 问题补充:问题是,我…

    SIMATIC WinCC 2018年12月14日
  • 谁有vbs和VBA学习资料

    wincc的vbs脚本从入门到精通手册! 最佳答案 1、wincc的vbs脚本从入门到精通手册下载:http://www.wobei.org/ITziliao/zhuantijis…

    SIMATIC WinCC 2017年11月1日
  • 博图软件1

    安装博图V13,电脑最低配置要求? 最佳答案 安装 STEP 7 Basic / Professional V13&nb…

    SIMATIC WinCC 2017年6月7日
  • 把博图变量导入WINCC中

    我就想问西门子WINCC的开发者是不是有病,都是西门子的为什么不能把博图变量导入WINCC中? 最佳答案 莫生气其实可以的WinCC从TIA Portal离线加载符号变量…

    SIMATIC WinCC 2020年11月1日
  • flexible导入符号表 悬赏50分

    我想把s7-300项目里的符号表导出来,再导入到wincc flexible 2007里面,但我试了好多方法,都参考了好多建议,可都不行得通,不晓得哪里出了问题…

    SIMATIC WinCC 2019年6月11日
  • 归档变量,查询值为空

    各位好!背景:安装了connectivity pack安装包,授权成功,显示->正在使用; 想通过Tag:R读取变量值到CSV文件;现在是 能够…

    SIMATIC WinCC 2021年7月5日
  • 触摸屏的个别按钮无法使用

    我触摸屏发生了一种情况,当我的按钮,IO域,所有的变量都是正确的,也是置顶的。但是却无法使用,写不了数据。所有的都检查过,也重建了。但是就是处理不了问题,插入新的按钮也不行。在同一…

    2021年7月5日
  • wincc中的数据位的问题

    我是一个新手,刚接触到WINCC,现有一个问题想请教一下,我有个数据需要累计流量 ,但是这个流量只会累积到16777216就停止了,不会再往上加了,好像是24位的样子,这…

    SIMATIC WinCC 2017年11月29日
  • wincc画面批量大小调整

    我有一个WinccV6.2项目,原来的画面是15寸的显示器,现在要换成19寸的显示器,由于画面比较多,大概有700幅,每幅画面里的内容很多,想请问有没有好的方法来调整画面大小呢,比…

    SIMATIC WinCC 2019年6月11日