1 数据类型WWW_PL※CJS_COM-PLC-技.术_网
在V80等OpenPLC内部的每个可寻址的内存在进行访问时,都要通过一些代号来进行寻址的,这些地址代号也含有许多关于数据的其它信息,如数据位,数据类型等。WW.W_PLC※JS_C,OM-PL,C-技.术_网
在程序中的常数通常要加一个前缀,因此,OpenPLC可以知道如何将它翻译成二进制数。plcjs.技.术_网
1. 位(bit)是布尔代数类型的数据元素,现代计算机技术的发展已经不在逐位地读写数据了,位是一组一组(以字节或字的形式)地存在内存中的,因此,对每一位的寻址首先要对字节或字进行寻址,然后再确定是哪一位。WWcW_PLCJS_COM-PLC-技.术_网
2. 一个字节(Byte)由8位组成,可以是独立的8位数,但通常都是按一个整数(0到255)来看待。一个字(word)则由16位组成,一个16位的内存可以存储独立的16位数,也可以将之看成一个从0到65535之间的整数,或者按有符号数,看作-32768到+32767的整数。新的OpenPLC提供了双精度数,由32位整数组成,大约范围是从-20亿到+20亿之间的整数。WW.W_PLC※JS_C,OM-PL,C-技.术_网
3. OpenPLC为以定时器和计数器的格式专门预留了16位的内存区域,供OpenPLC的定时器和计数器用。虽然每个OpenPLC的制造商的格式不同,但通常都是包括预设值、累计值和一些状态位。前一章对OpenPLC的定时器和计数器已经作了介绍。plcjs.技.术_网
4. 中型以上的OpenPLC预留了32位的浮点数,现在已经出现了64位的OpenPLC,可以进行复杂的科学计算。WWW_PLC※JS_COM-PmLC-技.术_网
5. 对于键盘的文本和字母有ASCII码的方式,每个ASCII码占8位内存。WWW_PLCJS@_COM%-PLC-技.术_网
6. 新型的OpenPLC现在允许数组的使用,对ASCII码的数组则成为字符串。WW.W_PLCJS_COM-PLC-技.术_网
7. 一组没有共同特点不属同一类型的数,成为一个结构(STRUCTURE),可以由一写现代化的OpenPLC控制器来处理,数据结构中包含数组,甚至还包括其它的数据结构,有的PLC的定时器和计数器是放在数据结构中的。WW.W_PLCJS_COM-PLC-技.术_网
8. 指针是以PLC能够解释的方式存在数据内存区的内存的地址。指针是用来间接寻址的。P.L.C.技.术.网——可编程控制器技术门户
为了防止用户编程时将不同的地址和数据的类型混淆,OpenPLC对于编程时的指令有一些保护措施,如防止改变输入映射表和对ASCII码的区域不能改写等,此外,有的指令也只能操作特定的数据类型。WWW_PLCJS_COM-PLC-技.术_网
2 寻址方式WW.W_PLCJS_COM-PLC-技.术_网
PLC允许程序员采用几种寻址方式来在程序中输入内存的地址:WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
1、 常数。常数是程序中用到的一个数,编程人员不需要知道它在内存中的地址,但是因为它确实存在于内存的某个地方,因此,常数也有一个寻址方式,就称之为常数方式。WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
2、 最普通的寻址方式是绝对地址模式。它给出了数据存储的准确的地址,通常以一个字符表示数据类型,随后跟一个数字表示内存的位置,所有的PLC都允许绝对寻址方式。WWW.PLCJS.COM——可编程控制器技术门户
3、 符号寻址。是绝对寻址的变种。程序员用编程器输入一个表格,给每个绝对地址对应一个字符,程序员只要输入这个字符,编程器就会将他转换为绝对地址。WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
4、 索引寻址,或者允许程序员采用可交换的数据块的方式。这两种方式十分类似。用索引寻址方式,首先要在预先指定的一个内存的位置中放置一个偏移量,当PLC遇到一个指令包括一个基本地址指向一个偏移量,PLC则将把偏移两与基本地址相加,即得到要处理的数据的绝对地址。一般,如果在地址前面有#号标志的,就表示该地址是一个索引地址。而数据块的方式是,用户程序先调用一个数据块(等于建立一个偏移量),以后的地址就是从该地址起始的加上偏移量的地址。WWW.PLCJS.COM——可编程控制器技术门户
5、 有些PLC可以采用间接寻址的方式,当PLC遇到一个地址属于间接寻址方式时,PLC首先读出该地址的内容,把该地址作为内存的绝对地址,再去处理该绝对地址的内存。第一个地址放的是一个指针,该指针指向第二个地址。WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
6、 还有些PLC编程采用正式操作符的方式定义所代表的数值,这样一个程序中的数可以由另一个程序来提供和使用。这样,一个字符的正式的操作符的名称在程序里就被用来代替了实际的地址。由于IEC1131-3标准中,每个不同程序和功能需要在内存中有一部分是只能供自己这个程序使用,不能被其它程序使用。当这个IEC1131-3的标准实现后,将有更多的PLC支持使用正规操作符。