使用twincat.ads通过vb.net应用程序编写结构阵列



我正在使用twincat.ads(twincat 3)通过vb.net应用程序进行贝克霍夫PLC通信。应用程序正在阅读和编写很少的PLC变量。我需要在结构的数组中写入。

我的结构:

Friend Structure Struct_Recette
    Dim nNumProg As Integer             ' Programme associated
    Dim nNumZone As Integer             ' Zone
    Dim nNumManifold As Integer         ' Manifold
    Dim nNumRallonge As Integer         ' Rallonge
    Dim nNumSaphir As Integer           ' Saphir
    Dim nNumMors As Integer             ' Mors
End Structure

我的PLC:

valTabRecette:      ARRAY [0..15] OF Struct_Recette;

我的代码:

Friend Sub ValidationMPodeProd(sender As Object, e As EventArgs) Handles btnValidProd.Click
    Dim valTabRecette(0 To 15) As Struct_Recette
    'Some code to fill the structs
        ADS.WriteAny(PLCHandle, valTabRecette)
    End If
End Sub

我启动此问题时有错误:

0x705 parameter size not correct    

我解决了问题:
该类型在vb.net和贝克霍夫

中不同
vb.net          Beckhoff 
int        =      Dint
short      =      int

....等等

所以我的结构的参数没有良好的类型

参考有类似问题的人:Twincat和VB的数据类型差异可以在Beckhoff网站上找到:https://infosys.beckhoff.com/english.php?content=../content/1033/tcsystemmanmanager/basics/tcsysmgr_datatypecomparison.htm&htm&htm& add =

twincat使用IEC61131-3标准。

相关内容

  • 没有找到相关文章

最新更新