通过profinet通讯实现。
先在$config.dat文件里定义全局变量:
DECL INT offset
DECL CHAR Buff[4]
SIGNAL Send_Buff1 $OUT[2] TO $OUT[9]
SIGNAL Send_Buff2 $OUT[10] TO $OUT[17]
SIGNAL Send_Buff3 $OUT[18] TO $OUT[25]
SIGNAL Send_Buff4 $OUT[26] TO $OUT[33]
SIGNAL From_Buff1 $IN[2] TO $IN[9]
SIGNAL From_Buff2 $IN[10] TO $IN[17]
SIGNAL From_Buff3 $IN[18] TO $IN[25]
SIGNAL From_Buff4 $IN[26] TO $IN[33]
;对应的IO可自行分配
;然后在用户应用程序里用以下子函数即可
;从PLC那读取数据
DEFFCT REAL Read_REAL()
DECL REAL Value
offset = 0
Buff[1] = From_Buff1
Buff[2] = From_Buff2
Buff[3] = From_Buff3
Buff[4] = From_Buff4
CAST_FROM(Buff[],offset,Value)
RETURN(Value)
ENDFCT
;发送数据给PLC
DEF Sen_REAL(Value: IN)
DECL REAL Value
offset = 0
CAST_TO(Buff[],offset,Value)
Send_Buff1 = Buff[1]
Send_Buff2 = Buff[2]
Send_Buff3 = Buff[3]
Send_Buff4 = Buff[4]
END
;重要提示:需要完成profinet的映射关系
回复内容:
对:希望♀美好 通过profinet通讯实现。先在$config.dat文件里定义全局变量:DECL INT offsetDECL CHAR Buff[4]SIGNAL Send_Buff1 $OUT[2] TO $OUT[9]SIGNAL Send_Buff2 $OUT[10] TO $OUT[17]SIGNAL Send_Buff3 $OUT[18] TO $OUT[25]SIGNAL Send_Buff4 $OUT[26] TO $OUT[33]SIGNAL From_Buff1 $IN[2] TO $IN[9]SIGNAL From_Buff2 $IN[10] TO $IN[17]SIGNAL From_Buff3 $IN[18] TO $IN[25]SIGNAL From_Buff4 $IN[26] TO $IN[33];对应的IO可自行分配;然后在用户应用程序里用以下子函数即可;从PLC那读取数据DEFFCT REAL Read_REAL() DECL REAL Value offset = 0 Buff[1] = From_Buff1 Buff[2] = From_Buff2 Buff[3] = From_Buff3 Buff[4] = From_Buff4 CAST_FROM(Buff[],offset,Value) RETURN(Value)ENDFCT;发送数据给PLCDEF Sen_REAL(Value: IN) DECL REAL Value offset = 0 CAST_TO(Buff[],offset,Value) Send_Buff1 = Buff[1] Send_Buff2 = Buff[2] Send_Buff3 = Buff[3] Send_Buff4 = Buff[4]END;重要提示:需要完成profinet的映射关系 内容的回复:学习学习方法和技巧。