数据类型,变量定义,一直是零基础入门学习PLC,特别是IEC标准的PLC最大的障碍,这也是很多人说三菱PLC更适合入门的原因。确实,对于没有计算机基础的朋友来说,确实很难理解。 今天,小编就跟大家讲述一下,数据类型的概念。在讲述之前,我们先看一个例子,在日常生活中1 和1.0 其实是没区别的,但在数学上,是有区别的,1是整数 1.0是小数。这其实就是数据类型的概念。数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。 例如大胖子必须睡双人床,就给他双人床,瘦的人单人床就够了。 所以,我们可以这样理解,一个数据不仅仅有数字组成,还包含占用空间大小,单位等很多因素。比如,1斤和1立方米,虽然都是1,但是单位是不同的。1和1.0 虽然大小一样,但精度是不一样的,占用的空间也不一样。 我们看三菱FX5U系列编程软件,GX WORKS3中相关的数据类型转换指令。私信 三菱 可获取三菱电机全系列工控软件安装包。 如图中所示,GX WORKS3中有非常多的数据类型转换指令,它具体怎么应用呢?以PLC中常见的计数器为例 如图中所示,看红色圆圈部分,在三菱PLC中,计数器预置值必须是INT型,其他的数据类型是不行的,这里没有为什么,你也不需要理解为什么。但是,PLC中并不是所有的数据类型都是INT型,比如我们要利用其他功能块输出的DINT型怎么办?我们就需要指令 DINT_TO_INT ,做一个转换。 再来看定时器 如图所示,定时器的预置值必须是 时间性,比如,我们输入t#1.5s 。但是,如果时间从触摸屏上输入怎么办???无论哪家的触摸屏,它是无法输入时间性变量的。一般都是输入REAL型或是DINT型。这时候,就需要数据类型转换了。 如上图所示,我们在触摸屏中输入1.5,它只是一个REAL型的变量,需要先转换成DINT型,就是图中横箭头方向的功能块,然后转换成TIME型,就是红色竖箭头,为什么不直接REAL_TO_TIME? 这里没有为什么,因为FX5U中没这个指令。这也引出了另外的问题,那就是,转换有时候不是一步到位的,需要多次转换。 所以,数据类型转换是为功能块服务的,它单独存在时没有任何意义的。所以,小编还是那句话,单纯的学习PLC的各种指令没有任何意义,一定要结合实际情况和外设,以及工艺需求,在程序中学习指令! |
|