
在使用倍福的TwinCAT 3 Database Server过程中,有可能出现使用了几年的设备再次下程序后数据库无法连接的问题
主要是当前开发电脑、控制器的Database Server版本和TwinCAT 3版本不一致导致的。
以作者遇到的问题为例:
笔记本的TwinCAT 3版本是4024.50,控制器的XAR是4024.56。
当笔记本电脑和控制器都采用3.3.33.2的Database Server的版本,发现读不了SQL Server的数据,换了好几个版本都不行。最后安装了3.3.35.1版本的Database Server就可以读了。
现象是程序执行FB_PLCDBReadEvt或者FB_SQLCommandEvt时,在ipTcResult中都没有任何错误。但是在控制器的数据库服务配置管理工具的InformationLog View中提示参数字节长度不对。

另外,在软件包中默认的ST_RECORD结构体的sName长度是80个字符,通过人工修改并重新定义这个结构体,把sName改为255的长度后解决(见上图)。
2025.12.1 杨靖华 供稿