ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Twincat 中如何将位变量链接到字节

Twincat 中如何将位变量链接到字节

最近在测试一个EtherCAT IO模块,

参考视频Ethercat总线快速入门教程——1-2TwinCAT基本操作_哔哩哔哩_bilibili

我手里是欧辰的一个模块,它的输入输出都是字节形式的

 

image

 因此小改了下PLC程序

1. 在DUTs中新建了一个结构体和联合体

image

结构体内容

TYPE Bits8 :
STRUCTbBit1  : BIT;bBit2  : BIT;bBit3  : BIT;bBit4  : BIT;bBit5  : BIT;bBit6  : BIT;bBit7  : BIT;bBit8  : BIT;  
END_STRUCT
END_TYPE

  联合体内容

TYPE Bits8Union :
UNIONDataByte AT %Q* : BYTE; DataBits : Bits8 ;
END_UNION
END_TYPE

  主程序内容

PROGRAM MAIN
VARinput1 AT %I*:BYTE;timer:TON;output1 : Bits8Union;state: INT := 0;END_VAR//-----------------------------------------
CASE state OF0:  // 输出为1,持续1500msoutput1.DataBits.bBit2 := TRUE;timer(IN := TRUE, PT := T#1500MS);IF timer.Q THENstate := 1;timer(IN := FALSE);END_IF;1:  // 输出为0,持续500msoutput1.DataBits.bBit2 := FALSE;timer(IN := TRUE, PT := T#500MS);IF timer.Q THENstate := 0;timer(IN := FALSE);END_IF;
END_CASE

  编译后再次link就可以啦

image

 

返回列表