TwinCAT用户指令手册.pdf
- 文档编号:3213408
- 上传时间:2022-11-20
- 格式:PDF
- 页数:21
- 大小:294.59KB
TwinCAT用户指令手册.pdf
《TwinCAT用户指令手册.pdf》由会员分享,可在线阅读,更多相关《TwinCAT用户指令手册.pdf(21页珍藏版)》请在冰豆网上搜索。
TwinCAT软件编程软件编程用户指令手册用户指令手册V1.02002.10.28共21页第2页目录目录1.标准数据类型.31.1BOOL.31.2整型数据类型.31.3REAL/LREAL.31.4STRING.31.5时间、日期类型.41.6常数.41.6.1BOOL常数.41.6.2TIME常数.41.6.3DATE常数.41.6.4TIME_OF_DAY常数.41.6.5DATE_AND_TIME常数.51.6.6数值常数.51.6.7REAL/LREAL常数.51.6.8STRING常数.52.变量类型转换功能.62.1BOOL_TO_变换.62.2TO_BOOL变换.62.3整型数类型之间的转换.62.4REAL_TO-/LREAL_TO转换.72.5TIME_TO-/TIME_OF_DAY转换.72.6DATE_TO-/DT_TO转换.72.7STRING_TO转换.72.8TRUNC(取整).83.用户定义的数据类型.83.1数组.83.2指针.103.3牧举.103.4结构.103.5参考(别名类型).113.6替代范围类型.114.编程方式.144.1指令表IL.144.2结构化文本ST.164.3功能块图FBD.174.4梯形图LD.185.TwinCAT中全部运算符及功能名.19共21页第3页1.标准数据类型标准数据类型1.1BOOLBOOL类型变量可取值TRUE和FALSE。
保留8位内存空间。
1.2整型数据类型整型数据类型所有的整型数据类型为:
?
BYTE字节?
WORD字?
DWORD双字?
SINT短整型?
USINT无符号短整型?
INT整型?
UINT无符号整型?
DINT双精度整型?
UDINT无符号双精度整型各个不同的数据类型有不同的值范围。
下表为整型数据的值范围和占用的内存空间类型下限上限内存空间BYTE02558位WORD06553516位DWORD0429496729532位SINT-1281278位USINT02558位INT-327683276716位UINT06553516位DINT-2147483648214748364732位UDINT0429496729532位当用大类型转换为小类型时,将导致丢失信息。
1.3REAL/LREALREAL和LREAL被称为浮点数类型。
用于有理数表示。
REAL占用32位内存空间,LREAL占用64位。
1.4STRINGSTRING类型变量可以是包含任何字符的字符串。
其容量大小在声明变量时说明,如果不对容量大小进行说明,其缺省值为80个字符。
字符串变量声明示例:
str:
STRING(35):
=ThisisaString;共21页第4页1.5时间、日期类型时间、日期类型TIME、TIME_OF_DAY(缩写TOD)、DATE和DATE_AND_TIME(缩写DT)数据类型在内部作为DWORD处理。
TIME和TOD中的时间用毫秒表示,TOD中的时间从12:
00AM开始。
DATE和DT中的时间用秒表示,并从1970年1月1日12:
00AM开始。
时间数据的格式在常数一节中说明。
1.6常数常数1.6.1BOOL常数1.6.1BOOL常数BOOL常数为逻辑值TRUE和FALSE。
1.6.2TIME常数1.6.2TIME常数TIME常数可以在TwinCATPLC控制中声明。
主要用于标准库中定时器的操作,格式如下:
T#xxdxxhxxmxxsxxms其中:
T表示时间常数起始,#数值符号,d天,h小时,m分,s秒,ms毫秒。
下面是ST中分配的正确的TIME常数示例:
TIME1:
=T#14ms;TIME1:
=T#100s12ms;(*单位最大的成员允许超过其极限*)TIME1:
=t#12h34m15s;不正确的TIME常数示例:
TIME1:
=t#5m68s;(*单位较小的成员超过其极限*)TIME1:
=15ms;(*遗漏T#*)TIME1:
=t#4ms13d;(*单位顺序错*)1.6.3DATE常数1.6.3DATE常数该常数用于输入日期。
DATE常数的声明用d、D、DATE或date,后接#构成,可以输入格式为年-月-日的任何日期。
示例:
DATE#1996-05-06d#1972-03-291.6.4TIME_OF_DAY常数1.6.4TIME_OF_DAY常数该常数主要用于存储一天中的时间。
TIME_OF_DAY声明用tod#,TOD#,TIME_OF_DAY#或time_of_day#后接一个时间格式:
小时:
分:
秒。
秒可以用实数表示。
示例:
TIME_OF_DAY#15:
36:
30.123tod#00:
00:
00共21页第5页1.6.5DATE_AND_TIME常数1.6.5DATE_AND_TIME常数日期常数和时间常数可以组合成所谓的DATE_AND_TIME常数。
DATE_AND_TIME常数用dt#,DT#,DATE_AND_TIME#或date_and_time#开始,后接日期和时间,日期和时间之间用连接。
示例:
DATE_AND_TIME#1996-05-06-15:
36:
30dt#1972-03-29-00:
00:
001.6.6数值常数1.6.6数值常数数值可以用二进制、八进制、十进制和十六进制数表示。
示例:
14(十进制数)2#1001_0011(二进制数)8#67(八进制数)16#A(十六进制数)这些数值可以是BYTE,WORD,DWORD,SINT,USINT,INT,UINT,DINT,UDINT,REAL或LREAL类型,不允许直接从“大类型”向“小类型”转换。
例如,DINT变量不能简单地以INT型变量使用。
可以用标准库中的转换功能实现其转换。
1.6.7REAL/LREAL常数1.6.7REAL/LREAL常数REAL和LREAL常数可以用尾数和指数表示,并使用美国标准。
示例:
7.4取代7,41.64e+009取代1,64e+0091.6.8STRING常数1.6.8STRING常数字符串是由字符组成的序列。
STRING常数使用单引号对区分。
一些特殊的符号可用下表表示:
字符说明$美元符号$L或$l行给进$N或$n新行$P或$p页给进$R或$r行结束$T或$t制表$单引号示例:
共21页第6页YourNameSusiandClaus:
-)$2.变量类型转换功能变量类型转换功能不能直接从“大类型”向“小类型”变量转换。
(例如:
从INT到BYTE,或从DINT到WORD)。
要完成此功能,可以使用特殊功能块实现。
作为一种规则,你可以用此功能将一种类型的变量转换成任何需要的类型变量。
句法:
_TO_2.1BOOL_TO_变换变换BOOL类型变量到不同类型的变换:
对于数值类型变量,操作数为TRUE时,结果为1;操作数为FALSE时,结果为0。
对字符串类型变量,其结果分别为TRUE和FALSE。
ST中的示例:
i:
=BOOL_TO_INT(TRUE);(*结果为1*)str:
=BOOL_TO_STRING(TRUE);(*结果为TRUE*)t:
=BOOL_TO_TIME(TRUE);(*结果为T#1ms*)tof:
=BOOL_TO_TOD(TRUE);(*结果为TOD#00:
00:
00.001*)dat:
=BOOL_TO_DATE(FALSE);(*结果为D#1970-01-01*)dandt:
=BOOL_TO_DT(TRUE);(*结果为DT#1970-01-01-00:
00:
01*)2.2TO_BOOL变换变换其它类型变量到BOOL的转换:
当操作数不为零时,结果为TRUE,当操作数为零时,结果为FALSE;当字符串变量的操作数为TRUE时,结果为真,否则,结果为假。
ST中的示例:
b:
=BYTE_TO_BOOL(2#11010101);(*结果为TRUE*)b:
=INT_TO_BOOL(0);(*结果为FALSE*)b:
=TIME_TO_BOOL(T#5ms);(*结果为TRUE*)b:
=STRING_TO_BOOL(TRUE);(*结果为TRUE*)2.3整型数类型之间的转换整型数类型之间的转换整型数值类型到其它数值类型的转换:
当从大类型向小类型转换时,存在丢失信息的危险。
如果转换的数值超过其极限;则该数的第一个字节将被忽略。
ST中的示例:
si:
=INT_TO_SINT(4223);(*结果为127*)如果你将整数4223(十六进制为16#107f)作为SINT变量保存,其结果为127(十六进制为16#7f)。
IL中的示例:
LD2INT_TO_REAL共21页第7页MUL3.52.4REAL_TO-/LREAL_TO转换转换REAL或LREAL类型到其它数值类型的转换:
数值将向上或向下取整并转换成新的数据类型。
但变量类型STRING,BOOL,REAL和LREAL除外。
当从大类型向小类型转换时,存在丢失信息的危险。
请注意:
当向字符串变量转换时,保留16个数据,如果(L)REAL数据有更多的数,则第十六个数将被取整。
如果字符串的长度定义为短型,则从右端开始截取。
ST中的示例:
i:
=REAL_TO_INT(1.5);(*结果为2*)j:
=REAL_TO_INT(1.4);(*结果为1*)IL中的示例:
LD2.7REAL_TO_INTGE%MW82.5TIME_TO-/TIME_OF_DAY转换转换TIME或TIME_OF_DAY类型到其它类型的转换:
时间在内部以毫秒单位及DWORD方式处理(对于TIME_OF_DAY变量,用12:
00AM起始)。
该值将被转换。
当从大类型向小类型转换时,存在丢失信息的危险。
对于字符串类型变量,其结果为时间常数。
ST中的示例:
str:
=TIME_TO_STRING(T#12ms);(*结果为T#12ms*)dw:
=TIME_TO_DWORD(T#5m);(*结果为300000*)si:
=TOD_TO_SINT(TOD#00:
00:
00.012);(*结果为12*)2.6DATE_TO-/DT_TO转换转换DATE或DATE_AND_TIME类型到其它类型的转换:
时间在内部以1970.01.01开始所经过的时间,并以秒为单位及DWORD方式处理。
该值将被转换。
当从大类型向小类型转换时,存在丢失信息的危险。
对于字符串类型变量,其结果为日期常数。
ST中的示例:
b:
=DATE_TO_BOOL(D#1970-01-01);(*结果为FALSE*)i:
=DATE_TO_INT(D#1970-01-15);(*结果为29952*)byt:
=DT_TO_BYTE(DT#1970-01-15-05:
05:
05);(*结果为129*)str:
=DT_TO_STRING(DT#1998-02-13-14:
20);(*结果为DT#1998-02-13-14:
20*)2.7STRING_TO转换转换STRING类型到其它类型的转换:
字符串类型变量中必须包含有效的目标变量类型值,否则其转换结果为零。
ST
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- TwinCAT 用户 指令 手册
![提示](https://static.bdocx.com/images/bang_tan.gif)