wincc调用动态链接库的问题

问题描述:通过matlab的m文件编译出的动态链接库dll文件,在wincc的c脚本中调用时遇到的问题,请高人们帮我分析一下。。。

先看看我的过程:
1、简单编一个m文件myadd.m
function  c = myadd(a,b)
c = a + b;
2、matlab2010中输命令:
mcc -W lib:myadd -T link:lib myadd回车
产生myadd.dll等一堆文件
3、把myadd.dll拷到E:/ (或者拷到wincc项目目录下,都试过了)
4、wincc中拖个按钮,加单击c脚本,添加:
#pragma code("E:/myadd.dll")
float myadd(float a, float b);
#pragma code()
float a=1;
float b=2;
float c;
c = myadd(a, b);
SetTagFloat("result", c);
5、运行,然后变量result里什么也没有。调试后觉得c = myadd(a, b);这句就没运行的起。

问题出在哪呢?事实上这些步骤也是看网上资料的,不一定对,希望有高人指点一下正确的wincc调用matlab产生的动态链接库步骤应该是怎样的呢??

急候佳音!谢谢谢谢!

最佳答案

将 myadd.dll 拷贝至 C:\Program Files\SIEMENS\WINCC\bin 目录下,然后直接调用:
#pragma code ("myadd.dll")

提问者对于答案的评价:
恩,只要#pragma code("myadd.dll")。后来拿windows的一个dll试了一下可以,我自己的问题出在函数的声明上,看了下同时生成的myadd.h,里面函数定义的是bool MW_CALL_CONV mlfmyadd(int nargout, mxArray **c, mxArray *a, mxArray *b); 要声明成这个。
但问题又来了,这样岂不是开头还要include"myadd.h"?而且这个头文件里还包含了N多matlab的头文件,全要拷到工程里来,还会报错。wincc调matlab这个问题没那么简单啊,打算单独开个贴请教这个问题,您要有时间再来指导一下?

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

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

相关推荐

  • wincc 用户归档授权

    谁有wincc用户归档的授权,提供一个。 谢谢了! 问题补充:有关用户归档的VB脚本怎么编? 我有几个归档控件,怎样实现一个按钮几个控件同时上传和下传?&nbs…

    SIMATIC WinCC 2019年6月11日
  • WINCC 7.0 变量归档 只能4个tag

    大约归档了100多个变量,可查看历史数据的时候,只有4个存了历史,其他的都没存,不知为啥。哪位大侠给指点下,我仔细查看了很多地方,都没搞错,可只有前4个变量能存历史。 问题补充:今…

    SIMATIC WinCC 2021年7月5日
  • Wincc webUX发布后,画面显示异常

    普通图形显示没问题,但是,画面窗口显示异常。求解答,谢谢 最佳答案 如何异常?浏览器用的什么浏览器,电脑还是手机?关于webUX的使用参考:WinCC V7.3&nbsp…

    SIMATIC WinCC 2020年11月1日
  • wincc的趋势曲线在数据无效的情况下如何让其曲线不连通

    一旦趋势曲线中的归档数据遇到比如通讯断开等情况无法被采集情况,曲线仍然是一直记录一个最后的值也就是一条直线,这样非常不好,很容易造成以后查询数据的时候误认为数据一直保持得很好,能不…

    SIMATIC WinCC 2019年6月11日
  • WinCC导入用户归档sql server数据库后无法显示

    谢谢关注!小弟在一个项目中需要将工厂归档的sql server数据库拷贝到自己的电脑上进行分析。经过多方学习,成功使用wincc 7.0sp3连接好了归档数据,…

    2017年11月25日
  • WINCC异地监控

    想实现WINCC的异地监控,比如在工厂在上海,人在北京。在北京能够通过互联网看到上海工厂设备的运行状态,看到wincc的画面。不知道需要哪些硬件,软件上又是怎么实现的。那位高人能给…

    SIMATIC WinCC 2020年11月1日
  • wincc画面设备分状态统计如何实现

    WINCC画面中有很多设备(详附件图片),如何统计画面中设备不同状态的数量,比如正在运转的有多少台,停止的有多少台,故障的有多少台;本人现为WINCC初学者,还望大家不吝赐教!望能…

    2021年7月5日
  • 这个弹窗控制界面怎么做?

    点击一个设备,弹出控制画面,具体见图片这种,具体要怎么做呢?我按着别人的项目添加脚本,更改变量这些,就是不成功。 最佳答案 此回答已完善 BOOL i;i=GePropB…

    2020年11月1日
  • 如何用按钮触发报表记录

    我需要做一个报表,记录的变量全部是内部变量,有32位浮点数、双字、文本变量等,是一个作业单的形式。我修改一次作业单,点击确认按钮激活一次脉冲则在报表中保存一次数据。我该用什么样的报…

    SIMATIC WinCC 2017年12月1日
  • WinCC Professional V13.0软件疑问

    我电脑上安装了:STEP 7 Professional V13.0WinCC Professional V13.0安装完成后发现生…

    SIMATIC WinCC 2017年10月29日