0

ここで「CODESYS V3.5 SP16」を実行して、タイトルの方法で同じ問題を抱えている人はいますか?

PROGRAM PLC_PRG
VAR
    itfAxisRef : SM3_Basic.IAxisRef;
    pAxisRefSm3 : POINTER TO SM3_Basic.AXIS_REF_SM3;
END_VAR
pAxisRefSm3 := itfAxisRef.GetAxisRefPointer;

上記をコンパイルしようとすると、次のエラーがスローされます

C0032:  Cannot convert type 'GETAXISREFPOINTER(sm3_basic, 4.10.0.0 (3s - smart software solutions gmbh))' to type 'POINTER TO SM3_Basic.AXIS_REF_SM3'

これまでに型とそれが返す状態GETAXISREFPOINTERのドキュメントを見たことがないので、私は本当に混乱しています.GetAxisRefPointerPOINTER TO AXIS_REF_SM3

https://help.codesys.com/webapp/3dvrBKsuKjYfmeP1KzrJnylfstc%2FGetAxisRefPointer;product=SM3_Basic;version=4.9.0.0

このメソッドを使用しようとしている理由については、デバッグ用に個々の( だけでなく) を取得するために、軸の配列をループしてSM3_Robotics.AXIS_GROUP_REF_SM3に渡そうとしています。SM3_Basic.MC_ReadStatusSM3_Basic.SMC_AXIS_STATESM3_Robotics.SMC_AXIS_GROUP_STATE

軸配列を使用せずに上記を達成するより良い方法はありますか?

4

1 に答える 1

1

GetAxisRefPointer はメソッドです。試してください:

pAxisRefSm3 := itfAxisRef.GetAxisRefPointer();
于 2021-12-28T16:51:02.353 に答える