回复:再说说WINCC与串口通讯

拾起

  • 帖子

    332
  • 精华

    6
  • 被关注

    52

论坛等级:奇侠

注册时间:2010-08-24

普通 普通 如何晋级?

发布于 2016-06-15 08:08:56

12楼

展开查看
以下是引用RyanWong在2016-06-14 16:20:35的发言 >9楼

这么好的帖子应该加精啊!

VB用和很少,一直用C,现在工作也不用WINCC了,改用VS了。

RThreshold属性有点怪怪的哦!

我感觉RThreshold = 1,只是告诉系统接收到1个字节时产生事件中断,

但事件是基于消息的,可能有一定的延时,当系统在做这些工作的时候硬件仍然在接收数据

当系统经过一系列消息传递等过后硬件已经把所有数据都接收完了。

反正我做过实验在.NET下用TCP接收数据差多不就有2ms的延时。

但9.6K的速率1ms也传不了几个字节吧!是不是你PC上负载比较重啊,延时较多呢?

可能如你所说,PC的负载确实会重,因为所有的后台数据都在这台电脑处理。WINCC的串口数据放在画面中,按西门子的说法,不与全局脚本影响,所以可能就是你说的那种,中断产生到执行中断程序(脚本)有一定的延时时间,不排除VBS的准备时间长于硬件接受字符的时间。


关于用VB向数据库写数据,当下不推荐用用户归档。

7.0以上的版本均安装有Connectivity Pack软件,可以直接访问数据库。

以下是成功的部分代码,仅供参考:

sPro = "Provider=SQLOLEDB.1;"

sDsn = "Integrated Security=SSPI;Persist SecurityInfo=False;"

sSer = "Initial Catalog=MFS;Data Source=hyl\SQLEXPRESS;"

sCon = sPro + sDsn + sSer

'MsgBox 3

'sCon = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist SecurityInfo=False;Initial Catalog=Nexteer_LTS;Data Source=.\WINCC;"

'//定义服务提供者

'//Private Const conn As String = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist SecurityInfo=False;

'//Initial Catalog=Nexteer_LTS;Data Source=.\WINCC;"

Set conn = CreateObject("ADODB.Connection")

Set rs = CreateObject("ADODB.recordset")

'MsgBox 0

conn.ConnectionString = sCon

'MsgBox 1

conn.Open 


仰望星空,脚踏实地
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

网友专栏

共有3364条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。