WinCC如何利用vbs脚本发送字符串

在VB里写了一个脚本,到WinCC下可能需要变化下,请指导下,vb脚本如下:
 Dim buf(11) As Byte
 buf(0) = &H1
 buf(1) = &H0
 buf(2) = &H0
 buf(3) = &H0
 buf(4) = &H0
 buf(5) = &H6
 buf(6) = &H1
 buf(7) = &H4
 buf(8) = &H0
 buf(9) = &H40
 buf(10) = &H0
 buf(11) = &H3
 sockClient.SendData buf

 这是给一个winsock控件发的命令,请问在VBS下应该如何编写?谢谢了。

问题补充:
我重新编写了一段程序,如下:
     Dim sock
     Dim buf (11)
     buf(0) = &H1
     buf(1) = &H0
     buf(2) = &H0
     buf(3) = &H0
     buf(4) = &H0
     buf(5) = &H6
     buf(6) = &H1
     buf(7) = &H4
     buf(8) = &H0
     buf(9) = &H40
     buf(10) = &H0
     buf(11) = &H3
     Set sock = HMIRuntime.ActiveScreen.ScreenItems.Item("sockclient") 
     sock.senddata buf

     是写在按钮的脚本里,但是按下发现没有执行,与网桥没有数据交换,但是在VB里是可以的,与winsock的连接也已经建立。 我怎么才能看到BUF的值到底是多少呢?应该怎么设置下?请指教~

   我的用的TCP转MODBUS,网桥是moxa的3180,下边有一个设备是通过mobus协议过来的,网桥是从站,我现在就是要通过网桥与modbus设备进行通讯。连接已经正常,winsock的status值是7,代表连接已建立。
 ------------------------------------------------------
 请问你确定WinCC的VBS下Winsock控件不能发送字节数组吗?那在C语言下Winsock控件可以发送字节数组吗?还有怎么判断VBS下不能发送字节数组的呢?有资料可以查询吗?

最佳答案

变化不大
   1、VBS不能声明类型
   Dim buf(11) As Byte  >>  Dim buf(11)
   2、使用ScreenItems获取控件
   dim sockClient
   set sockClient = ScreenItems("WinSockControl")
   sockClient.xxxx
  -----------------------------
  楼主你是用TCP还是UDP啊?谁是Server谁时Client?
  要先保证连接正常再进行收发数据。
  -----------------------------
 对了,WinCC VBS的Winsock是无法发送字节数组的,这点跟MsComm控件有点像,这是个麻烦事,我觉得还是用VB编写好了,再通过Ole写入WinCC即可,还可节省WinCC资源。

提问者对于答案的评价:
WinCC不能通过自带的Winsock控件发送数组,这给用户带来了很大的麻烦,希望以后能改进。

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

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

相关推荐

  • 利用simatic net 利用CP243-1将200的cpu的数据直接传到wincc画面

    我看了西门子给我发的资料,但是在opc scout里面仍然显示bad,我不知道为什么,还有,我建了几个s7连接在网络组态里,在里面删掉了,但是在OPC-Navigator…

    SIMATIC WinCC 2021年7月5日
  • Wincc 如何打开空白项目

    我每次打开Wincc时总是默认打开上一次编辑过的项目,如何使Wincc启动时打开空白的项目 最佳答案 双击桌面上的WinCC图标后马上按住Alt+Shift不要松手。如果项目没有取…

    SIMATIC WinCC 2017年6月24日
  • wincc历史曲线每天凌晨都丢失十几分钟

    我们的一个控制系统使用wincc监控,但是每天夜里十一点五十左右历史曲线完全消失,十几分钟后又重新显示,且含有之前不显示时间段的部分..定义曲线的变量使用的是归档变量..十几分钟无…

    SIMATIC WinCC 2019年6月11日
  • 报警上限的设置

    现在的要求是用变量设置报警变量的上下限,虽然可以用初值解决每次重起后都要设置上下限的问题,但是,怎样把上次设置过的值保持起来,等下次起动后仍可照样使用,如果变量多了,可以减少相当大…

    SIMATIC WinCC 2019年6月11日
  • 如何把HMI或组态软件WINCC的画面做得美观?

    如题所示 最佳答案 找好看的网页,参考人家的配色做成图片,直接通过图片切换点击之类的参考人家做的项目:WinCC“美图秀秀”http://www.wincc.com.cn/hd_i…

    SIMATIC WinCC 2021年7月5日
  • DB数据块中初始值不能保持的问题。

    在DB块中建一个变量,用来存储一个补偿系数。WinCC中建一个Tag与DB块中的这个变量关联。虽然在CPU中的DB的初始值不是设为0,但每当PLC重启后,在WinCC的输入输出域中…

    SIMATIC WinCC 2019年6月11日
  • wincc报警记录中如何单独显示不同变量报警

    现在有几个不同的企业。。我想每个企业都有一个单独的报警。。。可是在wincc的报警管理里面。。总是这个项目的所有报警显示。。。如何才能让想用的变量单独显式在一个项目里不同的画面的报…

    SIMATIC WinCC 2019年6月11日
  • WinCC中如何修改项目的名称啊?

    哪位知道WinCC中如何修改项目的名称啊? 最佳答案 1.关闭项目 2.用项目复制器打开你的项目然后选择另存为一个新的项目。 3.如果要保留历史数据,手工复制历…

    SIMATIC WinCC 2019年6月11日
  • SIMATIC WinCC报警,趋势图

    求大佬给一个WinCC做报警以及趋势图的案例,或者相关说明书,我现在报警不知道怎么做,还有趋势图,做了,但是没有在界面上并没有看到相关趋势曲线 最佳答案 WinCC报警/记录合集h…

    SIMATIC WinCC 2020年11月1日
  • WINCC FLEXIBLE 2008 SP3内部错误

    打开以前一个项目,编译提示如图,请问这是什么原因。我打开其它项目就挺好的。 问题补充:双击不会引导到错误位置。。。。所以才提问的。 图片说明:    最佳答案 …

    2017年6月1日