c语言编程特殊数
plc的基本数据类型,我们如何在编程中选用?
不管学习那种品牌的PLC, 首先看的就是I/O的表示方法,以及系统的变量区域划分,而后就看数据的类型,当前边这些都搞清楚了,就可以去看指令的具体用法了 !
---至少我个人接触一种新的PLC时候是这样去看的,这样才能快速的了解一个PLC。
当然,上边是说了一点经验,还是回到你的问题,plc的基本数据类型,当你学会了一种PLC后,应该说绝大多数的PLC的基本数据类型都是一样的!如果你学过一些计算机编程语言比如C语言或者什么,那么就更容易理解了!
基本上就是bool,byte,word,int,Dword,Dint,real这些,还有定时器T,计数器C,这些!
其实,我们在编程中怎样选用这些数据类型,主要是和使用的指令相关,更核心的是这种数据类型的本质,比如:
bool就是一个二进制位,状态就只有1和0,因此它就用来当做开关的那些点,可以表示接通或者断开!
byte呢就是8个位的长度,可以表示的数值范围是2的8次方,而且最高位是符号的话,就只能到+127,就是说你要是计算或者什么,你的数值是大于127的就不能用byte类型的变量!
同样的int,word,Dint,Dword也是有数据范围的,这是我们使用的最重要原因,就是我的运算结果要能被表示出来!
real,就是实数也叫浮点数,就是表示带小数点的数,所以你如果想用会带小数点的数值,就要用real类型的变量!
而T和C就是PLC的特殊规定了,T1表示1号定时器,C1表示1号定时!
PLC的基本数据类型,我们常用的有如下几种:
1. 布尔类型 BOOL ,也就是我们常说的0和1,也可以理解为 True和False,对于PLC来说就是DI或者DO点的输入或输出状态,我们一般用Bool类型表示。对于西门子PLC的DI点,可以使用 I0.0表示,DO点用Q0.0,还有M0.0,V0.0等表示。所以会经常看到 I0.0~I0.7,布尔类型只占用1位。
2. 字节类型 Byte,一个字节有8位,在PLC的存储器里,比如 IB1,MB1,就代表字节,那么将字节分解后是8位,在第一项里布尔类型中提到 I0.0~I0.7就可以组成一个字节IB0,M0.0~M0.7组成MB0,所以我们想要提高读取速度,可以直接使用字节读取,然后再进行分解。数据范围0~255。
3. 字类型 WORD,一个字包含16位,比如MW0,他就是由MB0和MB1组成,在使用字类型时有人使用组态软件读取的值不对,那么就有可能是字节的排列顺序不一样造成,可以对高低字节进行交换,很多软件都有这个功能。数据范围0~65535
4. 双字类型 Double Word,双字包含32位,由2个字组成,比如DW0,它包含2个字MW0和MW2,包含4个字节MB0,MB1,MB2,MB3,所以很多人在使用寄存器时会碰到各种问题,那么就有可能使用的寄存器存在交叉的问题。比如DW0,DW2这两个双字就存在地址交叉的问题。数据范围 0~4294967295
5. 整数类型 INT,一般又可以分为有符号,无符号,数据范围 -32768~32767
6. 双整形 DINT,同上也可以分为有符号,无符号类型,数据范围 -2147483648~2147483647
7.实数类型 real ,显示十进制的数据,可以包括小数点,一般都是32位,当然也有64位的实数类型。
复杂数据类型,包括如下:
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/19077.html