综合百科

位,字节,字,字长

位,字节,字,字长

在PLC编程过程中,数据的访问涉及到寻址操作。寻址方式主要有两种:直接寻址和间接寻址。目前最常用的寻址方式为直接寻址,尤其是符号寻址。

一、直接寻址

直接寻址是通过对数据的存储单元进行直接访问来实现。根据表达方式的不同,它可分为绝对寻址和符号寻址。在PLC编程中,这种寻址方式主要操作的是PLC中的标准数据存储区,如I、Q、M、T、C、L以及标准数据块。绝对寻址的宽度包括位、字节、字和双字宽度。

在直接寻址中,根据IEC61131国际标准的规定,寻址标识符有一定的格式要求。使用%表示对PLC集成的存储单元进行访问,并指出寻址区域的区域标识符,如I、Q、M、DB等。需要指出寻址的宽度,使用X、B、W、D分别代表位、字节、字、双字的寻址宽度。标识符还包括所寻址存储单元的字节地址,如果寻址宽度为位,还需要标识出位寻址,字节地址与位地址之间用点连接符连接。

对于PLC中的优化数据存储区,如优化数据化及优化的L区,只能使用符号寻址。这些优化存储区域是CPU自动进行数据优化的,没有固定的绝对地址。在使用S71200和S71500控制器时,符号寻址还支持Slicing片段访问方式,可以按位、字节、字、双字拆分访问寻址变量。

二、间接寻址(重点)

间接寻址是通过使用各种类型的指针,间接访问数据的存储单元。它允许在程序运行前不对地址的操作数进行计算。在间接寻址过程中,所使用的指针通常存储在相应类型的变量中。通过适当变动指针,可以实现更灵活的寻址过程。

对于S71200/1500 PLC,常用的指针类型包括Pointer参数指针、Any参数指针、数组指针、Variant指针以及Reference引用等。

1. Pointer参数指针:主要用于寻址标准数据存储区,为子程序传递复杂数据类型的实参。它的长度是6个字节,前2个字节存储实参的数据块编号,后4个字节存储32位交叉区域的指针。Pointer参数指针的常数表达式为:”P”+”区域标识”+”.”+”位地址”。由于必须在指针中指定数据存储的起始位地址,因此Pointer指针只能用于寻址标准数据存储区。

2. Any参数指针:结构与Pointer指针相比更为复杂,适用于为子程序传递更多的实参信息。Any指针的长度为10个字节,包括类型标识、实参的数据类型标识、赋值因子(实参的元素数量)以及Pointer指针的结构。Any参数指针的常数表达格式为:”P”+”区域标识”+”寻址宽度标识”+”字节地址”+”.”+”位地址”+”数据类型标识”+”复制因子”。与Pointer指针类似,Any指针也只能用于寻址标准数据存储区。

间接寻址中的其他指针类型,如数组指针、Variant指针和引用等,也具有各自的特点和应用场景。这些指针类型可以完成对优化数据区的间接寻址,提供了更灵活的数据访问方式。

直接寻址和间接寻址在PLC编程中各有优势。直接寻址简单易用,适用于对标准数据存储区的访问;而间接寻址则提供了更灵活的数据访问方式,适用于复杂的数据结构和场景。掌握这些寻址方式及相关的指针类型,对于编写高效的PLC程序至关重要。


位,字节,字,字长

你可能也会喜欢...