[西门子] ​西门子S7-1200PLC的基本数据类型

[复制链接]
查看50932 | 回复0 | 2024-3-26 09:20:19 | 显示全部楼层 |阅读模式


数据类型
数据类型用来描述数据的长度(即二进制的位数)和属性。


位数据的数据类型为Bool(布尔)型,在编程软件中,Bool变量的值2#1和2#0用英语单词TRUE(真)和FALSE(假)来表示。

位存储单元的地址由字节地址和位地址组成,例如13.2中的区域标识符“1”表示输入(laput),字节地址为3,位地址为2。这种存取方式称为“字节,位”寻址方式。



位字符串
数据类型字节、字、双字统称为位字符串。它们不能比较大小,它们的常数一般用十六进制数表示。

1、字节由8位二进制数组成,例如13.0-13.7组成了输入字节IB3,B是Byte的缩写。
2、字由相邻的两个字节组成,例如字MW100由字节MB100和MB101组成。MW100中的M为区域标识符,W表示字。

3、双字由两个字(或4个字节)组成,双字MD100由字节MB100-MB103或字MW100、MW102组成,D表示双字。



需要注意以下两点:
1、用组成双字的编号最小的字节MB100的编号作为双字MD100的编号。
2、组成双字MD100的编号最小的字节MB100为MD100的最高位字节,编号最大的字节MB103为MD100的最低位字节。字和LWord也有类似的特点。



整数数据类型
S7-1200有6种整数,SInt和USInt分别为8位的短整数和无符号短整数,Int和UInt分别为16位的整数和无符号整数,DInt和UDInt分别为32位的双整数和无符号双整数。

所有整数的符号中均有Int。符号中带S的为8位整数(短整数),带D的为32位双整数,带L的是64位整数。不带S、D和L的为16位整数。带U的为无符号整数,不带U的为有符号整数。



浮点数数据类型
32位的浮点数(Real)又称为实数,最高位(第31位)为浮点数的符号位(见图3-15),正数时为0,负数时为1。

规定尾数的整数部分总是为1,第0-22位为尾数的小数部分。8位指数加上偏移量127后(0~255),放在第23~30位。

浮点数的优点是用很小的存储空间(4B)可以表示非常大和非常小的数。PLC输入和输出的数值大多是整数,例如AI模块的输出值和AQ模块的输入值。

用浮点数来处理这些数据需要进行整数和浮点数之间的相互转换,浮点数的运算速度比整数的运算速度慢一些。



在编程软件中,用十进制小数来输入或显示浮点数,例如50是整数,而50.0为浮点数。LReal为64位的长浮点数,它的最高位(第63位)为符号位。尾数的整数部分总是为1,第0~51位为尾数的小数部分。

11位的指数加上偏移量1023后(0~2047),放在第52~62位。浮点数Real和长浮点数 LReal的精度最高为十进制6位和15位有效数字。



与定时器有关的数据类型
Time是IEC格式时间,它是有符号双整数,其单位为ms,取值范围为T#-24d_20h 31m_23s_648ms~T#+24d_20h_31m_23s_647m。其中的d、h、m、ms分别为天、小时、分钟、秒和毫秒。

表示日期和时间的数据类型
Date(IEC日期)为16位无符号整数,其操作数为十六进制格式,例如D#2016-12-31,对应于自1990年1月1日(16#0000)以来的天数。



TOD (Time_of_Day)为从指定日期的0时算起的毫秒数(无符号双整数)。其常数必须指定小时(24小时/天)、分钟和秒,毫秒是可选的。

数据类型DTL的12个字节为年(占2B)、月、日、星期、小时、分、秒(各占1B)和纳秒(占4B),均为BCD码。星期日、星期一~星期六的代码分别为1~7。可以在块的临时存储器或者DB中定义DTL数据。

字符
每个字符(Char)占一个字节,Char数据类型以ASCII格式存储。WChar(宽字符)占两个字节,可以存储汉字和中文的标点符号。字符常量用英语的单引号来表示。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则