西门子S7-1200PLC教程 课件 第7章 S7-1200所支持的数据类型_第1页
西门子S7-1200PLC教程 课件 第7章 S7-1200所支持的数据类型_第2页
西门子S7-1200PLC教程 课件 第7章 S7-1200所支持的数据类型_第3页
西门子S7-1200PLC教程 课件 第7章 S7-1200所支持的数据类型_第4页
西门子S7-1200PLC教程 课件 第7章 S7-1200所支持的数据类型_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章S7-1200PLC所支持的常用数据类型符号寻址和绝对寻址数据类型常数整数和实数时间和日期字符和字符串数组变量符号寻址和绝对寻址寻址首先有地址,地址有绝对地址和符号地址。在S7-1200PLC中用到地址的地方包括I/O信号、位存储器(M)、数据块(DB)和功能块(FB)。这些地址的标识方法有2种。(1)绝对地址:包含地址标识符和内存位置。如Q0.0,M3.1,FB10等。(2)符号地址:如果将符号名分配给绝对地址,可以使程序更易读,并能简化故障排除。符号寻址和绝对寻址

2数据类型

数据类型用来描述数据的长度和属性,即用于指定数据元素的大小及如何解释数据,每个指令至少支持一种数据类型,而有些指令支持多种数据类型,因此指令上使用的操作数的数据类型必须与指令所支持的数据类型一致,所以在设计程序建立变量时,需要对建立的变量分配相应的数据类型。在TIA博途软件设计程序时,用于建立变量的地方有:变量表、DB块、FB/FC/OB的接口区。但需要注意的是并不是所有数据类型对应的变量都可以在这三者中建立。对于数据类型,大家主要学习不同数据类型所对应的存储器空间大小、所能表示的数据大小,另外了解数据在存储器中是如何进行存储以及不同数据类型的使用。3常数常数是具有固定值的数据,其值在程序运行期间不能更改。常数在程序执行期间可由各种程序元素读取,但不能被覆盖。不同的常数值通常会指定相应的表示方式,具体取决于数据类型和数据格式,如表7-1所示。符

号说

明举

例B#16#,W#16#,DW#16#十六进制字节、字和双字常数W#16#35:16进制字常数35D#IEC日期常数D#2022_02_26:2022年02月26日L#32位双整数常数L#15:双整数15P#地址指针常数P#M3.2:M3.2的地址符

号说

明举

例S5T#S5时间常数(16位)S5T#AD_BH_CM_DS_EMSS5T#10S20MS:10秒20毫秒T#IEC时间常数T#2h_2m_20s:2小时2分钟20秒C#计数器常数(BCD编码)C#6002#二进制常数2#1011B(b1,b2)B(b1,b2,b3,b4)常数,2B或4B

4整数和实数名称数据类型大小(bit)范围常量输入实例

无符号整型(位或位系列)BOOL1TRUE,FALSE,0,1BYTE816#12,16#ABWORD1616#1234,16#ABCDDWORD3216#1234ABCDCHAR8‘A’,’f’,’@’

整数型SINT880,-80INT16800,-800DINT3240000,-400000USINT8123UINT1612345UDINT32123456浮点数(实数)REAL32LREAL64123456.7896543214整数和实数(整数在PLC中的存储方式)整数分为正整数和负整数,数据在存储器中的最高位表示符号位,0表示正整数,1表示负整数。如:数值5和-5分别存储到 MB100中,MB100的数据类型为SINT

MB100M100.7M100.6M100.5M100.4M100.3M100.2M100.1M100.000000101

MB100M100.7M100.6M100.5M100.4M100.3M100.2M100.1M100.011111011负数在PLC中的存储以补码的形式进行存储

4整数和实数(实数在PLC中的存储方式)当我们要标记或运算的数较大或较小且位数较多时,用科学记数法免去浪费很多空间和时间。例如,

对于二进制数也可以采用科学计数法,只不过是把10换成2。比如:4整数和实数(实数在PLC中的存储方式)。现在关键是如何把十进制实数转换为二进制数呢?可以分为两部分进行。一部分是整数部分,另一部分是小数部分,对于整数部分按照连续除以2的方法,而对于小数部分采用连续乘2的方法,即十进制的小数部分乘2,取整数部分作为二进制的一位,剩余小数继续乘2,直至不存在剩余小数。二进制数用科学计数法表示后,整数部分一定是1,1后面一定是小数点。所以这两部分可以直接省略,只需要记录后面的数字及2的指数部分即可。4整数和实数(实数在PLC中的存储方式)。在PLC中,浮点数的存储分为三部分。符号位(S):0表示正数,1表示负数。指数部分(E):8位,又称为阶码。尾数部分(M):最后的23位用来存储小数点后的数值。一个完整的二进制浮点数可以表示为而实际存储的时候,指数部分并没有采用符号位+数值的常规形式表示正负数。指数部分采用一个无符号的数值存储,8位数字,每位数字都只能为0或1,最多只能提供

256

种不同的指数,其范围为0~255。如何表示负数呢?引入了一个概念叫指数偏移值。即把指数部分减去一个数,使得范围变成正负接近的情况:-127~128。很明显,在实数中这个指数偏移值是127。4整数和实数(实数在PLC中的存储方式)。4整数和实数(实数在PLC中的存储方式)。举例说明:(1)将0.625储存为float类型。①先化成二进制:所以②写成科学计数法的形式:符号位:0指数部分:-1,加上指数偏移值:尾数部分:去掉前面的“1.”,剩下部分为01,剩下的数位都为0。所以最终的存储结果为:4整数和实数(实数在PLC中的存储方式)(2)将7.2储存为float类型①先化成二进制:…………(无限循环的二进制数)到这里大家就会明白,为什么十进制数转换成二进制数之后出现精度损失。符号位:0指数部分:2,加上指数偏移值:

尾数部分:去掉前面的“1.”,剩下部分为110011所以最终的存储结果为:②写成科学计数法的形式:为了加深对上述内容的理解,可以通过浮点数转二进制工具进行验证:/FloatConverter/IEEE754.html。5时间和日期名称数据类型大小(bit)范围常量输入实例

时间和日期数据类型TIME32T#30m_50s日期16D#2019-10-05TIME_OF_DAY32TOD#17:41:30:200DTL(长格式日期和时间)12个字节DTL#2019-10-05-17:42:30:2005时间和日期DTL的每一部分包含不同的数据类型和取值范围,指定值得数据类型必须与相应部分的数据类型相一致,包括年、月、日、星期、小时、分、秒和纳秒,长度为12个字节,可在全局数据块或块的接口区中定义。Byte组件数据类型值范围年UINT2月USINT3日USINT4星期USINT5小时USINT6分钟USINT7秒USINT纳秒UDINT5时间和日期注意:DTL数据类型,在建立的时候只能对在数据块中或代码块接口区中所建立的变量选择该数据类型,不能给变量表中建立的变量选择该数据类型。5时间和日期6字符和字符串名称数据类型大小(bit)范围常量输入示例字符和字符串数据类型Char8‘B’‘E’‘#’WChar16亚洲字符等Stringn+2字节“DENGZHEWO”WStringn+2字节“s71200plc@163.com”Char在存储器中占用一个字节,可以存储以ASCII格式编码的单个字符,而WChar在存储器中占用一个字的空间,可包含任意双字节字符表示形式。String数据类型存储一串单字节字符,String提供了多达256个字节,前两个字节分别表示字节中最大的字符数和当前的字符数,定义字符串的最大长度可以减少它的占用的存储空间。如:定义字符串Mystring[12]之后字符串的最大长度就只有12个字符,如果未定义则表示占有256个字节。WString的数据类型与String的数据类型类似,支持单字值的较长字符串,第一个字包含最大总字符数,下一个字包含的是当前的总字符数,接下来的字符串可包含多达65534个字。6字符和字符串注意:对于String和WString的数据类型来讲,只能在数据块和块的接口区里面建立,不能在变量表中建立。6字符和字符串6字符和字符串7数组Array:数组是由相同的数据类型的多个元素组成,数组可以在DB块或OB、FB、FC的块接口编辑器中创建,无法在PLC的变量表中创建,数组格式为:Array[lo..hi]oftype。其中l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论