www.infoPLC.net AUTÓMATAS PROGRAMABLES Direccionamiento Sistemas de numeración Roberto Álvarez Sindín (2011) www.infoPLC.net Direccionamiento ➢ El PLC almacena los datos en registros que son áreas de memoria. Las unidades de memoria en las que podemos trabajar son: Denominación Valor Bit 0 ó 1 Byte 8 bits Palabra o Canal 2 bytes ó 16 bits Doble palabra 4 bytes ó 32 bits ➢ Los autómatas OMRON trabajan en palabras o canales, esto es, en unidades de 16 bits, aunque para determinadas operaciones puede utilizar más de un canal. www.infoPLC.net Direccionamiento 1 bit: 0 ó 1 0 1 byte: 8 bits 1 0 1 1 1 0 1 0 1 registro o canal: 2 bytes -> 16 bits 1 1 0 0 1 1 1 0 1 1 0 0 1 0 0 1 www.infoPLC.net Direccionamiento El formato de las direcciones de memoria comprende dos dígitos separados por un punto. El primer dígito indica la palabra o canal y el segundo el bit correspondiente (de 0 a 15 en Omron) También se puede indicar previamente el área de memoria que estamos consultando (IR, HR, LR, DM...) www.infoPLC.net Mapeado de memoria (CPM2A) www.infoPLC.net Sistemas de numeración El autómata trabaja de en binario, una sucesión de 0 y 1, donde el 0 indica que que el bit está desactivado y el 1 que se encuentra activo. 1 1 0 1 0 1 0 1 Sin embargo, para determinadas operaciones es necesario utilizar otros tipos de numeración: BCD (Binary-Coded Decimal) Hexadecimal Coma Flotante www.infoPLC.net Sistemas de numeración En general,cuando una cantidad (nº entero) se representa mediante un sistema de numeración de base B, quiere decir: N N B= X N B + X N-1B N-1 1 + ........ + X 1B + X 0 B 0 www.infoPLC.net Sistemas de numeración Binario (Base 2): 1 0 1 1 1 0 1 0 Equivalente en Decimal: 1 27 0 26 1 25 1 24 1 23 0 22 1 21 0 20 27+ 0 + 25 + 24 + 23 + 0 + 21 + 0 = 186 www.infoPLC.net Sistemas de numeración Conversión a decimal de un número binario: 1 1 0 0 1 0 1 0 2 2 93 0 2 46 1 2 23 0 2 12 1 2 6 0 2 3 0 1 1 186 www.infoPLC.net Sistemas de numeración BCD (Decimal Codificado Binario) Es un estándar para representar números decimales utilizando código binario. Con este método necesitaremos 4 bits (nibble) por cada dígito binario. Decimal BCD 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Para representar el número 417 en BCD tendremos que: 417 = 0100 0001 0111 www.infoPLC.net Sistemas de numeración Hex (Hexadecimal) Es un código en base 16 muy utilizado y que nos permite trabajar muy fácilmente con los datos de un canal. Además, puede ser representada cada cifra mediante un nibble (conjunto de 4 bits), de forma similar al BCD, pero aprovechando todas las combinaciones. Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hex 0 1 2 3 4 5 6 7 8 9 A B C D E F 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Binario www.infoPLC.net Sistemas de numeración Conversión Binario Hex Para convertir un canal en binario a hexadecimal, iremos agrupando en grupos de 4 dígitos binarios (nibble) y hallaremos us equivalente en hexadecimal. 1101000111101010 = 1101 0001 1110 1010 D 1 E A D1EA www.infoPLC.net Rango de datos utilizables www.infoPLC.net Sistemas de numeración Números en coma flotante 23 22 21 31 30 ………... 2 1 ... Signo Mantisa Exponente Mantisa (-1)Signo · 2exponente-127 · (1+Mantisa·2-23) Signo (s): 1: negativo , 0: positivo (bit 31) Mantisa (M): La mantisa incluye 23 bits (bit 0.. 22). Representa la parte derecha de número decimal (los decimales) Exponente (e): El exponente incluye 8 bits (bit 23..30) 0 www.infoPLC.net Sistemas de numeración Números en coma flotante Expresan números reales en 32 bits conforme al estándar IEEE754: (-1)signo·2exponente-127·(1+Mantisa·2-23) 1#10000000#11000000000000000000000 ➢Signo: (-1)1= -1 ➢Exponente: 2128-127=21=2 ➢Mantisa: 1+6291456·2-23=1+0.75=1.75 ➢Resultado: -1.75·2= -3.5 www.infoPLC.net Sistemas de numeración Números en coma flotante Ventajas: •Permite expresar números reales sin especificar nº de posiciones enteras y decimales •Mayor versatilidad en la representación de números reales