Diferencia entre revisiones de «DDCON USB-1000»
(→Conectores) |
(→Repositorios) |
||
(No se muestran 183 ediciones intermedias del mismo usuario) | |||
Línea 1: | Línea 1: | ||
− | [[Archivo:DCON-01.jpg|thumb|300px| Tarjeta | + | [[Archivo:DCON-01.jpg|thumb|300px| Tarjeta DCON USB-1000 (''click para ampliar'')]] |
== Introducción == | == Introducción == | ||
− | [[Archivo:DEUTECNO-TITULO.jpg]] | + | |
+ | {| style="width:100%" | ||
+ | |- | ||
+ | ! [[Archivo:DEUTECNO-TITULO.jpg|link=http://www.deutecno.com/index2.html]] | ||
+ | |} | ||
+ | |||
+ | ---- | ||
+ | Manual de referencia técnica de la tarjeta DCON, desarrollada por la empresa [http://www.deutecno.com/ Deutecno]. | ||
+ | |||
+ | La DCON es una '''tarjeta Industrial de adquisición de datos''' y '''control''', que incluye '''alarmas''' y un '''lazo PID''', necesarios para el control en tareas críticas. Dispone de entradas y salidas tanto analógicas como digitales. Las entradas analógicas se pueden configurar para conectar directamente '''termopares'''. La tarjeta se comunica con el PC por medio del '''USB'''. Desde el software que corre en el pc se tiene acceso a todos los recursos de la tarjeta DCON: lectura de las entradas, activación de las salidas, configuración de los modos de funcionamiento, PID, alarmas, etc. | ||
+ | |||
+ | El sistema es escalable a través del '''bus DCON''', que permite conectar hasta 8 tarjetas. Esto permite una fácil y rápida ampliación de los sistemas, sin más que añadir nuevos módulos. | ||
+ | |||
+ | '''Aplicaciones típicas''': | ||
+ | |||
+ | * Control de temperatura en hornos industriales | ||
+ | * Adquisición de datos y supervisión | ||
+ | * Control y supervisión de biorreactores | ||
+ | |||
+ | == Documentos en PDF para Descargar == | ||
+ | {| {{tablabonita}} | ||
+ | | [] | ||
+ | | Hola de Datos de la tarjeta DCON, en PDF (pendiente) | ||
+ | |---- | ||
+ | | [https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_general_diagram.pdf DCON_general_diagram.pdf] | ||
+ | | Diagrama general de la DCON (Figura 1) | ||
+ | |---- | ||
+ | | [https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_connectors.pdf DCON_connectors.pdf] | ||
+ | | Conectores de la DCON (Figura 2) | ||
+ | |---- | ||
+ | | [https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_top_bottom_connectors.pdf DCON_top_bottom_connectors.pdf] | ||
+ | | Conectores de interfaz de la DCON: superior e inferior (Figura 3) | ||
+ | |---- | ||
+ | | [https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_side_connectors_es.pdf DCON_side_connectors_es.pdf] | ||
+ | | Conectores laterales de la DCON: Bus DCON | ||
+ | |----- | ||
+ | | [] | ||
+ | | | ||
+ | |----- | ||
+ | | [] | ||
+ | | | ||
+ | |----- | ||
+ | | [] | ||
+ | | | ||
+ | |----- | ||
+ | | [] | ||
+ | | | ||
+ | |----- | ||
+ | | [] | ||
+ | | | ||
+ | |----- | ||
+ | | [] | ||
+ | | | ||
+ | |----- | ||
+ | | [] | ||
+ | | | ||
+ | |----- | ||
+ | |} | ||
== Características técnicas == | == Características técnicas == | ||
+ | |||
+ | * '''2 entradas digitales''' para contactos libres de potencial (<font color="#0000FF">DI0</font>, <font color="#0000FF">DI1</font>) | ||
+ | * '''2 entradas analógicas''' de 10 bits (<font color="#0000FF">AI0</font>, <font color="#0000FF">AI1</font>), configurables para trabajar en los siguientes modos: | ||
+ | ** 4 - 20ma | ||
+ | ** 0 - 20ma | ||
+ | ** 0 - 5v | ||
+ | ** Conexión de termopar tipo K | ||
+ | * '''1 salida analógica''' de 12 bits (<font color="#0000FF">AO</font>), configurable para trabajar en los siguientes modos: | ||
+ | ** 4 - 20ma | ||
+ | ** 0 - 20ma | ||
+ | ** 0 - 5v | ||
+ | * '''4 salidas digitales''': | ||
+ | ** 2 salidas a través de transistor (colector abierto) configurables para trabajar como: | ||
+ | *** Salidas digitales normales (<font color="#0000FF">DO0</font>, <font color="#0000FF">DO1</font>) | ||
+ | *** Salidas de PWM de 10 bits (<font color="#0000FF">PWM0</font>, <font color="#0000FF">PWM1</font>) | ||
+ | ** 2 salidas a través de Relé (<font color="#0000FF">R0</font>, <font color="#0000FF">R1</font>) | ||
+ | * '''1 controlador''' PID, configurable para recibir entradas de cualquiera de las entradas analógicas y sacar por las salidas PWM ó la analógica. | ||
+ | * '''4 Alarmas''', 2 asociadas a las entradas digitales, y 2 a las entradas analógicas. Al dispararse una alarma se desconectan las salidas digitales, según configuración. | ||
+ | * Conexión de hasta 8 tarjetas DCON a través del '''Bus DCON''' (norma RS485) | ||
+ | * '''Conexión USB''' con el PC (Puerto serie virtual, velocidad de 115200 baudios) | ||
+ | * Alimentación a través de USB | ||
+ | |||
+ | == Diagrama general == | ||
+ | El '''diagrama de bloques''' de la tarjeta DCON se muestra en la '''figura 1'''. En él se muestran todos los recursos de la tarjeta, los terminales de conexión y todos los registros internos usados para configuración, lectura de datos desde el PC y actuación. | ||
+ | |||
+ | {| | ||
+ | |[[Archivo:DCON general diagram.png|600px|thumb|left|'''Fig.1''': Diagrama de referencia de la DCON ([https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_general_diagram.pdf Descargar PDF]) (''Click para ampliar'')]] | ||
+ | |} | ||
== Conectores == | == Conectores == | ||
+ | |||
+ | La tarjeta DCON tiene 5 conectores, divididos en tres tipos ('''Figura 2'''): | ||
+ | * '''Conectores de Interfaz''': Son los conectores superior e inferior que permiten conectar los equipos a la DCON para controlarlos | ||
+ | * '''Conectores del bus DCON''': Las tarjetas DCON se pueden conectar entre ellas mediante RS-485, a través de los conectores derecho e izquierdo | ||
+ | * '''Conexión PC''': Conector USB hembra de tipo B para la conexión del PC a la DCON | ||
+ | |||
+ | {| | ||
+ | | [[Archivo:DCON connectors.png|500px|thumb|'''Fig. 2''': Conectores en la DCON ([https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_connectors.pdf Descargar PDF]) (''click para ampliar'')]] | ||
+ | |} | ||
+ | |||
+ | === Conectores de interfaz === | ||
+ | |||
+ | Mediante los conectores de interfaz se tiene acceso a las E/S digitales y analógicas. En total hay 20 terminales, 10 en cada conector ('''Figura 3'''). | ||
{| | {| | ||
− | | [[Archivo:DCON connectors.png|500px|thumb|Conectores en la DCON (''click para ampliar'')]] | + | | [[Archivo:DCON top bottom connectors.png|500px|thumb|'''Fig. 3''': Conectores de interfaz en la DCON ([https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_top_bottom_connectors.pdf Descargar PDF]) (''click para ampliar'')]] |
|} | |} | ||
− | === | + | ==== Conector superior ==== |
+ | |||
+ | Dispone de los siguientes terminales: | ||
+ | |||
+ | * <font color="#0000FF">DI0</font>: Entrada digital 0 | ||
+ | * <font color="#0000FF">DI1</font>: Entrada digital 1 | ||
+ | :Son entradas para '''contactos libres de potencial'''. Para ello incluyen una resistencia de ''pull-up''. Cuando no hay nada conectado o los interruptores externos no están pulsados se lee un valor digital igual a '''1'''. Cuando se introduce masa (Terminal <font color="#0000FF">COM</font>) se lee un '''0'''. | ||
+ | * <font color="#0000FF">COM</font>: Masa. Conectado a la señal de masa de la DCON, que proviene del USB | ||
+ | * <font color="#0000FF">Vext</font>: Tensión externa. Este terminal está conectado al '''BUS DCON''', permitiendo que cualquiera de las DCON conectadas en red tenga acceso a esa tensión. Bien para inyectarla o bien para leerla. Se ha incluido en los conectores de interfaz y en el bus DCON para '''facilitar el cableado de los equipos''' en los que se instalan. | ||
+ | * <font color="#0000FF">AI0-</font>, <font color="#0000FF">AI0+</font>: Entrada analógica 0, terminales positivo y negativo. | ||
+ | * <font color="#0000FF">AI1-</font>, <font color="#0000FF">AI1+</font>: Entrada analógica 1, terminales positivo y negativo. | ||
+ | :Cuando las entradas se configuran para lectura de termopares, por los terminales positivo y negativo se introducen los dos cables del termo par. En el resto de modos los terminales negativos están conectados a masa. | ||
+ | * <font color="#0000FF">AO-</font>, <font color="#0000FF">AO+</font>: Salida analógica. El negativo está conectado a masa. | ||
+ | |||
+ | ==== Conector inferior ==== | ||
+ | * <font color="#0000FF">DO0-</font>, <font color="#0000FF">DO0+</font>: Salida digital 0 | ||
+ | * <font color="#0000FF">DO1-</font>, <font color="#0000FF">DO1+</font>: Salida digital 1 | ||
+ | :Salidas digitales por transistor. Son salidas de colector abierto, por lo que hay que colocar tensión externa para que funcionen | ||
+ | * <font color="#0000FF">RCM0</font>, <font color="#0000FF">RNC0</font>, <font color="#0000FF">RNO0</font>: Salida por relé 0 | ||
+ | * <font color="#0000FF">RCM1</font>, <font color="#0000FF">RNC1</font>, <font color="#0000FF">RNO1</font>: Salida por relé 1 | ||
+ | :Salidas digitales por relé, libres de potencial. '''RCMx''' es el '''terminal común''', que por defecto está conectada a la pata '''RNCx''' ('''Terminal normalmente conectado'''). Cuando se activa la salida, la pata común se conecta con el terminal '''RNOx''' ('''Terminal normalmente abierto''') | ||
=== Conectores Laterales === | === Conectores Laterales === | ||
− | La tarjeta DCON tiene dos conectores laterales para poder conectar varias de ellas en cadena, compartiendo el mismo bus de comunicaciones. Son 2 conectores de 10 vías. El derecho es macho y el izquierdo hembra. | + | La tarjeta DCON tiene dos conectores laterales para poder conectar varias de ellas en cadena, compartiendo el mismo bus de comunicaciones ('''BUS DCON'''). Son 2 conectores de 10 vías. El derecho es macho y el izquierdo hembra ('''Figura 4'''). |
{| | {| | ||
− | | [[Archivo:DCON side connectors es.png|600px|thumb|Diagrama de los conectores Laterales (''click para ampliar'')]] | + | | [[Archivo:DCON side connectors es.png|600px|thumb|'''Fig. 4''': Diagrama de los conectores Laterales ([https://github.com/Obijuan/DCON/raw/master/doc/PDFs/DCON_side_connectors_es.pdf Descargar PDF]) (''click para ampliar'')]] |
|} | |} | ||
== Registros == | == Registros == | ||
+ | |||
+ | La DCON se controla mediante el acceso a '''registros internos de 16 bits''', que se pueden escribir y/o leer. Se resumen en la tabla inferior. Los registros se usan bien para almacenar valores, o bien se subdividen en campos independientes. Hay dos tipos de campos, de 4 bits (denominados dígitos) y de bits individuales. Para diferenciarlos se utilizan las palabras claves '''BITS''' y '''DIGITOS'''. | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Número !! Nombre !! Tipo !! Descripción !! Formato | ||
+ | |-------- | ||
+ | || 0x00 || DIRC || Lectura/Escritura || Dirección del DCON || | ||
+ | |-------- | ||
+ | || 0x01 || DINS || Lectura || Entradas digitales (DI0 y DI1), 2 bits || '''BITS''': ''xxxx - xxxx - xxxx - xx DI1 DI0'' | ||
+ | |-------- | ||
+ | || 0x02 || AIN0 || Lectura || Entrada analógica 0 (AI0), 16-bits || | ||
+ | |-------- | ||
+ | || 0x03 || AIN1 || Lectura || Entrada analógica 1 (AI1), 16-bits || | ||
+ | |-------- | ||
+ | || 0x04 || DOUS || Lectura/Escritura || Salidas digitales R1, R0, DO1, DO0 (4 bits)|| '''BITS''': ''xxxx - xxxx - xxxx - R1 R0 DO1 DO0'' <br> R1 y R0 controlan los relés | ||
+ | |-------- | ||
+ | || 0x05 || AOUT || Lectura/Escritura || Salida Analógica || Valor de 10 bits: 0x000 - 0x3FF | ||
+ | |-------- | ||
+ | || 0x06 || PWM0 || Lectura/Escritura || Salida PWM para DO0 || Valor de 10 bits: 0x000 - 0x3FF | ||
+ | |-------- | ||
+ | || 0x07 || PWM1 || Lectura/Escritura || Salida PWM para DO1 || Valor de 10 bits: 0x000 - 0x3FF | ||
+ | |-------- | ||
+ | || 0x08 || COND || Lectura/Escritura || Configuración de las salidas digitales || '''BITS''': ''xxxx - xxxx - xxxx - xx CDO1 CDO0'' <br>Modos: 0-> Digital normal, 1 -> PWM | ||
+ | |-------- | ||
+ | || 0x09 || CONA || Lectura/Escritura || Configuración de las E/S analógicas || '''DIGITOS''' (de 4 bits): ''X - CAO - CAIN1 - CAIN0'' <br>Modos: 0-> 0-20ma, 1 -> 4-20ma, 2-> 0-5v <br> Adicional para las entradas: 3-> Termopar | ||
+ | |-------- | ||
+ | || 0x0A || CPID || Lectura/Escritura || Configuración del PID || '''DIGITOS''' (de 4 bits) X - X - X - PCONF <br> PCONF: 0,1,2,3,4,5,6 | ||
+ | |------- | ||
+ | || 0x0B || PPID || Lectura/Escritura || Constante proporcional P || 10 bits | ||
+ | |------- | ||
+ | || 0x0C || IPID || Lectura/Escritura || Constante Integral I || 10 bits | ||
+ | |------- | ||
+ | || 0x0D || DPID || Lectura/Escritura || Constante derivativa D || 10 bits | ||
+ | |------- | ||
+ | || 0x0E || SPLC || Lectura/Escritura || ''Set point'' del lazo de control || 10 bits | ||
+ | |------- | ||
+ | || 0x0F || UAA0 || Lectura/Escritura || Umbral para entrada analógica 0 || 10 bits | ||
+ | |------- | ||
+ | || 0x10 || UAA1 || Lectura/Escritura || Umbral para entrada analógica 1 || 10 bits | ||
+ | |------- | ||
+ | || 0x11 || CIAL || Lectura/Escritura || Configuración de las alarmas de las entradas || '''DIGITOS''' (de 4 bits): ''AI1 AI0 DI1 DI0''<br> | ||
+ | Modos: 0 --> No usada, 1--> Logica positivia, 2--> Lógica negativa | ||
+ | |------- | ||
+ | || 0x12 || COAL || Lectura/Escritura || Configuración de la actuación de las alarmas || '''DIGITOS''' (de 4 bits): ''AI1 AI0 DI1 DI0''<br> | ||
+ | Modo de actuación: <br> | ||
+ | 0 --> Desactivar todas las salidas digitales<br> | ||
+ | 1 --> Desactivar todas menos DO0 <br> | ||
+ | 2 --> Desactivar todas menos DO1 <br> | ||
+ | 3 --> Desactivar todas menos Relé 0 <br> | ||
+ | 4 --> Desactivar todas menos Relé 1 <br> | ||
+ | |------- | ||
+ | || 0x13 || VIDA || Lectura/Escritura || Periodo de muestreo || -- | ||
+ | |------- | ||
+ | || 0x14 || ALMO || Lectura/Escritura || Alarma: modo y disparo || '''DIGITOS''' (de 4 bits): ''X - X - ALM - MODO'' | ||
+ | '''ALM''': Alarma disparada<br> | ||
+ | 0 --> Ninguna <br> | ||
+ | 1 --> DI0 <br> | ||
+ | 2 --> DI1 <br> | ||
+ | 3 --> AI0 <br> | ||
+ | 4 --> AI1 <br> | ||
+ | '''MODO''': Modo<br> | ||
+ | 0 --> STOP <br> | ||
+ | 1 --> RUN <br> | ||
+ | |||
+ | |------- | ||
+ | || 0x1A || VERF || Lectura || Versión del firmware || Cadena ASCII con la versión del firmware (Ej. DEU_v2.00) | ||
+ | |------- | ||
+ | |} | ||
+ | |||
+ | == Recursos de la DCON == | ||
+ | |||
+ | |||
+ | === Entradas digitales === | ||
+ | |||
+ | La tarjeta DCON dispone de 2 entradas digitales para la conexión de contactos libres de potencial (Figura XX). Cada entrada incorpora una resistencia de pull-up que hace que su estado sea '1' cuando el contacto no está pulsado. Cuando se introduce COM (masa) por las entradas digitales, la lectura será de un '0'. | ||
+ | |||
+ | La lectura de las entradas digitales se hace a través del '''registro DINS'''. Los dos bits menos significativos de este registro (0 y 1) se corresponden con las entradas DI0 y DI1 respectivamente. | ||
+ | |||
+ | {| | ||
+ | | [[Archivo:DCON Input signals diagram.png|600px|thumb|Diagrama de las entradas digitales (''click para ampliar'')]] | ||
+ | |} | ||
+ | |||
+ | Las dos entradas se pueden configurar para usarlas como '''alarmas''', de manera que se disparen bien cuando cada una de las entradas valga 0 ó bien 1. Cada detector de alarma tiene 3 modos de funcionamiento, según el valor almacenado en el '''registro CIAL'''. Los 4 bits menos significativos se corresponden con la entrada '''DI0''' y los 4 siguientes (del 7 al 4) con '''DI1'''. | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Modo !! Descripción | ||
+ | |-------- | ||
+ | || 0 || Alarma desconectada. La entrada no genera alarmas | ||
+ | |-------- | ||
+ | || 1 || La alarma se dispara cuando la entrada es 1 | ||
+ | |-------- | ||
+ | || 2 || La alarma se dispara cuando la entrada es 0 | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | === Entradas analógicas === | ||
+ | |||
+ | La DCON dispone de 2 entradas analógicas accesibles a través de los terminales AIO+, AIO-, AI1+, AI1- del conector de interfaz superior. El diagrama se muestra en la figura inferior. Ambas entradas tienen la misma funcionalidad por lo que sólo se describirá la entrada analógica AI0. | ||
+ | |||
+ | {| | ||
+ | | [[Archivo:DCON Input analog signals diagram.png|600px|thumb|Diagrama de las entradas analógicas (''click para ampliar'')]] | ||
+ | |} | ||
+ | |||
+ | Las entradas tienen 4 modos de funcionamiento, configurables a través del '''registro CONA'''. Los 4 bits de menor peso (3-0) son para AI0 y los siguientes (7-4) para AI1. En la siguiente tabla se muestran los valores para cada configuración: | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Modo entrada !! Descripción | ||
+ | |-------- | ||
+ | || 0 || Entrada 0 - 20ma | ||
+ | |-------- | ||
+ | || 1 || Entrada 4 - 20ma | ||
+ | |-------- | ||
+ | || 2 || Entrada 0 - 5v | ||
+ | |-------- | ||
+ | || 3 || Entrada de termopar | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | Si se ha seleccionado la configuración de termopar, las dos señales de entrada (+ y -) se introducen en un conversor A/D. Para el resto de configuraciones, AIO- se toma como la señal de referencia y la que se muestrea es la proveniente de AIO+. | ||
+ | |||
+ | A través de los '''registros AIN0''' y '''AIN1''' se puede leer el valor analógico (de 10 bits) desde el PC. | ||
+ | |||
+ | Ambas entradas analógicas se pueden usar como entradas del lazo de control PID, configurandolo mediante el '''registro CPID''' (ver sección sobre PID). | ||
+ | |||
+ | Las entradas analógicas también pueden disparar las alarmas si sus entradas traspasan el umbral establecido en los '''registros UAA0''' y '''UAA1''' respectivamente. La configuración de las alarmas se establece en el '''registro CIAL'''. Los bits 11-8 son para AI0, y 15-12 para AI1. Los modos de configuración se muestran en la siguiente tabla: | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Modo !! Descripción | ||
+ | |-------- | ||
+ | || 0 || Alarma desconectada. La entrada no genera alarmas | ||
+ | |-------- | ||
+ | || 1 || La alarma se dispara cuando la entrada es mayor que el umbral (UAAx) | ||
+ | |-------- | ||
+ | || 2 || La alarma se dispara cuando la entrada es menor que el umbral (UAAx) | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | === Salida Analógica === | ||
+ | |||
+ | La salida analógica se puede configurar en tres modos de funcionamiento, configurados mediante los bits 11..8 del '''registro CONA''': | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Modo entrada !! Descripción | ||
+ | |-------- | ||
+ | || 0 || Entrada 0 - 20ma | ||
+ | |-------- | ||
+ | || 1 || Entrada 4 - 20ma | ||
+ | |-------- | ||
+ | || 2 || Entrada 0 - 5v | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | Los detalles se muestran en la figura XX. La salida se realiza por los '''pines AO+''' y '''AO-''' situados en el conector de interfaz superior (P3). El valor analógico proviene de una de las dos siguientes fuentes. La primera es el '''registro AOUT''', accesible desde el PC por medio del USB. Una escritura en este registro saca el correspondiente valor analógico por AO+. La otra fuente es el controlador PID. Cambiando los valores del '''registro CPID''' se configura para que la salida del PID se haga a través de AO+. (Ver sección sobre PID) | ||
+ | |||
+ | {| | ||
+ | | [[Archivo:DCON Analog output.png|600px|thumb|Diagrama de la salida analógica (''click para ampliar'')]] | ||
+ | |} | ||
+ | |||
+ | === Salidas digitales === | ||
+ | |||
+ | La DCON tiene 4 salidas digitales: 2 de tipo transistor (colector abierto) y 2 de relé. Se accede a ellas escribiendo en los bits 3...0 del '''registro DOUS'''. Los dos bits menos significativos (0 y 1) se corresponden con los de los terminales DO0 y DO1. Los bits 2 y 3 controlan los relés. | ||
+ | |||
+ | El '''registro COND''' configura el tipo de salida de los terminales DO0 y DO1. La salida puede ser de tipo PWM o normal. Esto se configura mediante los 2 bits de menor peso de COND (1,0) (valor 0 = Salida digital normal, valor 1 = Salida PWM). | ||
+ | |||
+ | Cuando están configuradas para PWM, se utilizan los registros PWM0 y PWM1 para establecer el valor del ancho del pulso. | ||
+ | |||
+ | Las 4 salidas tienen un dispositivo de '''desconexión automática''' activado por '''las alarmas''' (ver la sección de alarmas para su configuración) | ||
+ | |||
+ | Adicionalmente, el controlador PID se puede configurar ('''registro CPID''') para que la salida sea PWM0, PWM1 ó la salida analógica. | ||
+ | |||
+ | {| | ||
+ | | [[Archivo:DCON digital output.png|600px|thumb|Diagrama de las salidas digitales (''click para ampliar'')]] | ||
+ | |} | ||
+ | |||
+ | === Controlador PID === | ||
+ | |||
+ | La DCON incorpora un controlador PID digital de 10 bits. Las constantes del controlador (P, I y D) se configuran escribiendo sus valores en los registros '''PPID''', '''IPID''' y '''DPID''' respectivamente. El ''Setpoint'' se establece a través del registro '''SPLC'''. | ||
+ | |||
+ | {| | ||
+ | | [[Archivo:PID diagram.png|700px|thumb|Diagrama del controlador PID (''click para ampliar'')]] | ||
+ | |} | ||
+ | |||
+ | Tanto las señales de entrada como salida del PID se toman de diferentes fuentes según la configuración establecida en el registro '''CPID'''. Las entradas posibles son las 2 analógicas (AIN0, AIN1). Las salidas posibles son 3: la analógica (Aout), y las PWM (PWM0 y PWM1), que se obtienen por los terminales DO0 y DO1 de la DCON. La selección de las señales se hace escribiendo un valor entre 0 y 6 en el registro CPID. Se detalla en la siguiente tabla: | ||
+ | |||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! CPID !! Señal entrada !! Señal salida !! Descripción | ||
+ | |-------- | ||
+ | || <font color="#FF0000">0</font> || <font color="#FF0000">Ninguna</font> || <font color="#FF0000">Ninguna</font> || <font color="#FF0000">No hay lazo de control</font> | ||
+ | |-------- | ||
+ | || <font color="#00FF00">1</font> || <font color="#00FF00">AIN0</font> || <font color="#00FF00">AOUT</font> || --- | ||
+ | |-------- | ||
+ | || <font color="#00FF00">2</font> || <font color="#00FF00">AIN1</font> || <font color="#00FF00">AOUT</font> || --- | ||
+ | |-------- | ||
+ | || <font color="#0000FF">3</font> || <font color="#0000FF">AIN0</font> || <font color="#0000FF">PWM0</font> || --- | ||
+ | |-------- | ||
+ | || <font color="#0000FF">4</font> || <font color="#0000FF">AIN1</font> || <font color="#0000FF">PWM0</font> || --- | ||
+ | |-------- | ||
+ | || 5 || AIN0 || PWM1 || --- | ||
+ | |-------- | ||
+ | || 6 || AIN1 || PWM1 || --- | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | |||
+ | En la configuración CPID=0, el PID está desactivado y tanto las entradas como salidas no están conectadas al PID, por lo que se pueden utilizar para otros usos. | ||
+ | |||
+ | === Alarmas === | ||
+ | |||
+ | {| | ||
+ | | [[Archivo:DCON Alarms.png|600px|thumb|Diagrama de las alarmas (''click para ampliar'')]] | ||
+ | |} | ||
+ | |||
+ | La tarjeta DCON incorpora 4 alarmas configurables que actúan sobre las salidas digitales. Cada una de las entradas digitales (DI0, DI1) tiene asociada una alarma que se dispara cuando se ponen a 1 ó 0, según cómo se configure en el '''registro CIAL'''. Los bits 3-0 y 7-4 de CIAL definen la configuración de las alarmas de las entradas DI0 y DI1 respectivamente, según la siguiente tabla: | ||
{| {{tablabonita}} | {| {{tablabonita}} | ||
− | ! | + | ! Modo !! Descripción |
|-------- | |-------- | ||
− | || | + | || 0 || No hay alarma |
+ | |-------- | ||
+ | || 1 || La alarma se dispara cuando la entrada es 1 | ||
+ | |-------- | ||
+ | || 2 || La alarma se dispara cuando la entrada es 0 | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | Cada entrada analógica (AIN0, AIN1) tiene una alarma que se dispara cuando su valor sobrepasa un umbral, o bien cae por debajo de ese umbral. Se configura mediante los bits 15-12 (para AIN1) y 11-8 (para AIN0) del '''registro CIAL''', cuyos valores se muestran en la tabla: | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Modo !! Descripción | ||
+ | |-------- | ||
+ | || 0 || No hay alarma | ||
+ | |-------- | ||
+ | || 1 || La alarma se dispara cuando la entrada es mayor que el umbral | ||
+ | |-------- | ||
+ | || 2 || La alarma se dispara cuando la entrada es menor que el umbral | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | Los umbrales se establecen en los registros '''UAA0''' (para la entrada AI0) y '''UAA1''' (para AI1). | ||
+ | |||
+ | Cuando se dispara una alarma se actúa sobre el grupo de salidas digitales configurado mediante el '''registro COAL'''. A cada alarma de entrada se le asigna las acciones mostradas en la siguiente tabla: | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Acción !! Descripción | ||
+ | |-------- | ||
+ | || 0 || Desconectar TODAS las salidas digitales | ||
+ | |-------- | ||
+ | || 1 || Desconectar todas las salidas menos DO0 | ||
+ | |-------- | ||
+ | || 2 || Desconectar todas las salidas menos DO1 | ||
+ | |-------- | ||
+ | || 3 || Desconectar todas las salidas menos el relé 0 | ||
+ | |-------- | ||
+ | || 4 || Desconectar todas las salidas menos el relé 1 | ||
+ | |-------- | ||
+ | |} | ||
+ | |||
+ | El sistema de alarmas se puede conectar/desconectar mediante los bits 3-0 del '''registro ALMO'''. Un valor de 0 hace que las alarmas estén paradas (modo STOP) y con 1 activadas (modo RUN). Cuando se dispara una alarma, los bits 7-4 del registro ALMO indican cual de las 4 alarmas es la que se ha producido, según la siguiente tabla: | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | ! Valor !! Descripción | ||
+ | |-------- | ||
+ | || 0 || Ninguna alarma disparada | ||
+ | |-------- | ||
+ | || 1 || Alarma DI0 | ||
+ | |-------- | ||
+ | || 2 || Alarma DI1 | ||
+ | |-------- | ||
+ | || 3 || Alarma AI0 | ||
+ | |-------- | ||
+ | || 4 || Alarma AI1 | ||
|-------- | |-------- | ||
− | |||
|} | |} | ||
Línea 56: | Línea 440: | ||
=== Tramas de ejemplo === | === Tramas de ejemplo === | ||
− | |||
* <font color="#0000FF">'''Lectura de la dirección del DCON'''</font>: Para conocer la dirección de una DCON hay que leer su registro '''DIRC''' (0x00). Utilizaremos como dirección la 00 (Broadcast) para generar la trama (porque no se conoce su dirección). | * <font color="#0000FF">'''Lectura de la dirección del DCON'''</font>: Para conocer la dirección de una DCON hay que leer su registro '''DIRC''' (0x00). Utilizaremos como dirección la 00 (Broadcast) para generar la trama (porque no se conoce su dirección). | ||
** '''Trama enviada:''' '':003000000'' | ** '''Trama enviada:''' '':003000000'' | ||
Línea 66: | Línea 449: | ||
** '''Trama recibida:''' '':006000002'' | ** '''Trama recibida:''' '':006000002'' | ||
:Si ahora, con esta nueva configuración, enviamos la trama del ejemplo anterior para leer la dirección, el DCON responderá con la trama: '':003000002'' | :Si ahora, con esta nueva configuración, enviamos la trama del ejemplo anterior para leer la dirección, el DCON responderá con la trama: '':003000002'' | ||
+ | |||
+ | {| {{tablabonita}} | ||
+ | | [[Imagen:Icono_aviso.png]] En los siguientes ejemplos '''se supondrá que el DCON tiene asignada la dirección 0x01''', por lo que todas las tramas comenzarán por '':01'' | ||
+ | |} | ||
+ | |||
+ | * <font color="#0000FF">'''Lectura de las entradas digitales'''</font>. Se leen a través del registro DINS (0x01). Los 4 caracteres correspondientes al campo valor no se usan en la trama enviada, y se han puesto a '0' | ||
+ | ** '''Trama enviada:''' '':013010000'' | ||
+ | ** '''Trama recibida:''' '':013010003'' | ||
+ | : Si no hay nada conectado a las entradas digitales, o bien hay pulsadores conectados pero sin apretar, los bits correspondientes a las entradas estarán a 1 DI0 = 1, DI1 = 1, por lo que el último carácter del campo valor es '3'. | ||
+ | :Si por ejemplo el pulsador conectado a DI1 se aprieta, la lectura será: | ||
+ | :* '''Trama enviada:''' '':013010000'' | ||
+ | :* '''Trama recibida:''' '':013010001'' | ||
+ | :En este caso DI1=0, DI0=1, por lo que el último dígito del campo valor es '1' | ||
+ | * <font color="#0000FF">'''Lectura de las entradas Analógicas'''</font>. Se leen a través de los registros AIN0 (0x02) y AIN1 (0x03), que se corresponden con las entradas AI0 y AI1 del conector superior. En este ejemplo ambas entradas están configuradas (registro CONFA) como entradas de 0 - 5v. Se ha conectado un potenciómetro de 100ohm para las pruebas | ||
+ | ** '''Trama enviada:''' '':013020000'' | ||
+ | ** '''Trama recibida:''' '':013020000'' | ||
+ | : Lectura de la entrada AIN0. Si no hay nada conectado (y está en la configuración 0-5v) se leerá el valor 0x000) | ||
+ | :* '''Trama enviada:''' '':013020000'' | ||
+ | :* '''Trama recibida:''' '':0130201E4'' | ||
+ | :Cuando el potenciómetro está en la posición central, el valor leído es 0x1E4 (aprox.). Repitiendo la misma lectura pero con el potenciómetro en ambos extremos se leen los valores 0x002 y 0x3FE | ||
+ | :* '''Trama enviada:''' '':013030000'' | ||
+ | :* '''Trama recibida:''' '':013030000'' | ||
+ | :Lectura de AIN1 (cuando no hay nada conectado y está configurado en el modo 0-5v) | ||
+ | * <font color="#0000FF">'''Escritura en salidas digitales'''</font>. Se controlan con el registro DOUS (0x04). Los 4 bits menos significativos se corresponden con R1 R2 DO1 DO0, siendo DO0 el de menor peso. | ||
+ | :* '''Trama enviada:''' '':016040001'' | ||
+ | :* '''Trama recibida:''' '':016040001'' | ||
+ | :Con esto se activa la salida DO0, y el resto permanecen a 0 | ||
+ | :* '''Trama enviada:''' '':016040002'' | ||
+ | :* '''Trama recibida:''' '':016040002'' | ||
+ | :Activación del Relé 0, dejando el resto de salidas desactivadas (a 0) | ||
+ | :* '''Trama enviada:''' '':016040004'' | ||
+ | :* '''Trama recibida:''' '':016040004'' | ||
+ | * <font color="#0000FF">'''Escritura en la salida analógica'''</font>. Se controla con el registro AOUT (0x05) De 10-bits | ||
+ | ** '''Trama enviada:''' '':0160503FF'' | ||
+ | ** '''Trama recibida:''' '':0160503FF'' | ||
+ | : Si la salida analógica está configurada en el modo 0-5v, con esta trama se obtendrán por la salida AO+ una tensión de 5v | ||
+ | :* '''Trama enviada:''' '':0160501FF'' | ||
+ | :* '''Trama recibida:''' '':0160501FF'' | ||
+ | : Con esta trama la tensión sacada es la mitad: 2.5v | ||
+ | * <font color="#0000FF">'''Salidas de PWM'''</font>. Se controlan con los registros PWM0 y PWM1, de 10 bits | ||
+ | ** '''Trama enviada:''' '':0160603FF'' | ||
+ | ** '''Trama recibida:''' '':0160603FF'' | ||
+ | :Se envía por '''DO0''' una señal PWM con ciclo de trabajo del 100% ('''NOTA''': previamente se ha tenido que configurar la salida DO0 en modo PWM) | ||
+ | :* '''Trama enviada:''' '':0160701FF'' | ||
+ | :* '''Trama recibida:''' '':0160701FF'' | ||
+ | :Se envía por '''DO1''' una señal PWM con ciclo de trabajo del 50% | ||
+ | * <font color="#0000FF">'''Configuración salidas digitales'''</font>. Se cambia mediante el registro COND (0x08). Cada salida puede estar en modo normal o pwm | ||
+ | :* '''Trama enviada:''' '':016080000'' | ||
+ | :* '''Trama recibida:''' '':016080000'' | ||
+ | :Con esta trama se configuran las dos salidas (DO0 y DO1) en modo digital normal | ||
+ | :* '''Trama enviada:''' '':016080003'' | ||
+ | :* '''Trama recibida:''' '':016080003'' | ||
+ | :Con esta trama se configuran las dos salidas (DO0 y DO1) en modo PWM | ||
+ | * <font color="#0000FF">'''Configuración E/S analógicas'''</font>. Se cambia con el registro CONA (0x09). Los dos salidas analógicas y la entrada pueden estar configuradas para: 0-20ma, 4-20ma ó 0-5v. Las entradas además tienen el modo termopar | ||
+ | :* '''Trama enviada:''' '':016090000'' | ||
+ | :* '''Trama recibida:''' '':016090000'' | ||
+ | :Configurar tanto las entradas como las salidas analógicas en modo 0-20ma | ||
+ | :* '''Trama enviada:''' '':016090213'' | ||
+ | :* '''Trama recibida:''' '':016090213'' | ||
+ | :Establecer la siguiente configuración: Salida analógica: 0-5v, Entrada analógica 1: 4-20ma, Entrada analógica 2: Termopar | ||
+ | * <font color="#0000FF">'''Configuración del PID'''</font>. Registro CPID | ||
+ | :* '''Trama enviada:''' '':0160A0002'' | ||
+ | :* '''Trama recibida:''' '':0160A0002'' | ||
+ | : Configurar el PID para que la entrada sea por AI1 y la salida por AOUT (CPID=2) | ||
+ | : Para establecer las constantes del PID enviar estas tramas (se omiten las tramas recibidas, que son iguales a las enviadas) | ||
+ | :* :0160B000C (P=12) | ||
+ | :* :0160C0000 (I=0) | ||
+ | :* :0160D0000 (D=0) | ||
+ | |||
+ | === Tramas especiales === | ||
+ | * <font color="#0000FF">'''Lectura de la version del firmware'''</font>. Es una trama de pruebas. La trama de respuesta NO sigue el formato habitual. Contiene la version del firmware | ||
+ | ** '''Trama enviada:''' '':0131A0000'' | ||
+ | ** '''Trama recibida:''' '':DEU_v2.00'' | ||
== Dimensiones == | == Dimensiones == | ||
− | == | + | == Repositorios == |
− | * Github: [https://github.com/Obijuan/DCON https://github.com/Obijuan/DCON] | + | * Público: Github: [https://github.com/Obijuan/DCON https://github.com/Obijuan/DCON] : Figuras y software |
+ | * Privado: SVN: [http://svn.iearobotics.com/DCON_private http://svn.iearobotics.com/DCON_private] | ||
+ | * Privado Nanoinnova: [http://svn.iearobotics.com/nanoinnova_cvd/ http://svn.iearobotics.com/nanoinnova_cvd/] | ||
+ | <br> | ||
− | = | + | ---- |
− | + | {| style="width:100%" | |
+ | |- | ||
+ | ! [[Archivo:DEUTECNO-TITULO.jpg| link=http://www.deutecno.com/index2.html]] | ||
+ | |} |
Revisión actual del 23:58 5 may 2013
Contenido
Introducción
Manual de referencia técnica de la tarjeta DCON, desarrollada por la empresa Deutecno.
La DCON es una tarjeta Industrial de adquisición de datos y control, que incluye alarmas y un lazo PID, necesarios para el control en tareas críticas. Dispone de entradas y salidas tanto analógicas como digitales. Las entradas analógicas se pueden configurar para conectar directamente termopares. La tarjeta se comunica con el PC por medio del USB. Desde el software que corre en el pc se tiene acceso a todos los recursos de la tarjeta DCON: lectura de las entradas, activación de las salidas, configuración de los modos de funcionamiento, PID, alarmas, etc.
El sistema es escalable a través del bus DCON, que permite conectar hasta 8 tarjetas. Esto permite una fácil y rápida ampliación de los sistemas, sin más que añadir nuevos módulos.
Aplicaciones típicas:
- Control de temperatura en hornos industriales
- Adquisición de datos y supervisión
- Control y supervisión de biorreactores
Documentos en PDF para Descargar
[] | Hola de Datos de la tarjeta DCON, en PDF (pendiente) |
DCON_general_diagram.pdf | Diagrama general de la DCON (Figura 1) |
DCON_connectors.pdf | Conectores de la DCON (Figura 2) |
DCON_top_bottom_connectors.pdf | Conectores de interfaz de la DCON: superior e inferior (Figura 3) |
DCON_side_connectors_es.pdf | Conectores laterales de la DCON: Bus DCON |
[] | |
[] | |
[] | |
[] | |
[] | |
[] | |
[] |
Características técnicas
- 2 entradas digitales para contactos libres de potencial (DI0, DI1)
- 2 entradas analógicas de 10 bits (AI0, AI1), configurables para trabajar en los siguientes modos:
- 4 - 20ma
- 0 - 20ma
- 0 - 5v
- Conexión de termopar tipo K
- 1 salida analógica de 12 bits (AO), configurable para trabajar en los siguientes modos:
- 4 - 20ma
- 0 - 20ma
- 0 - 5v
- 4 salidas digitales:
- 2 salidas a través de transistor (colector abierto) configurables para trabajar como:
- Salidas digitales normales (DO0, DO1)
- Salidas de PWM de 10 bits (PWM0, PWM1)
- 2 salidas a través de Relé (R0, R1)
- 2 salidas a través de transistor (colector abierto) configurables para trabajar como:
- 1 controlador PID, configurable para recibir entradas de cualquiera de las entradas analógicas y sacar por las salidas PWM ó la analógica.
- 4 Alarmas, 2 asociadas a las entradas digitales, y 2 a las entradas analógicas. Al dispararse una alarma se desconectan las salidas digitales, según configuración.
- Conexión de hasta 8 tarjetas DCON a través del Bus DCON (norma RS485)
- Conexión USB con el PC (Puerto serie virtual, velocidad de 115200 baudios)
- Alimentación a través de USB
Diagrama general
El diagrama de bloques de la tarjeta DCON se muestra en la figura 1. En él se muestran todos los recursos de la tarjeta, los terminales de conexión y todos los registros internos usados para configuración, lectura de datos desde el PC y actuación.
Conectores
La tarjeta DCON tiene 5 conectores, divididos en tres tipos (Figura 2):
- Conectores de Interfaz: Son los conectores superior e inferior que permiten conectar los equipos a la DCON para controlarlos
- Conectores del bus DCON: Las tarjetas DCON se pueden conectar entre ellas mediante RS-485, a través de los conectores derecho e izquierdo
- Conexión PC: Conector USB hembra de tipo B para la conexión del PC a la DCON
Conectores de interfaz
Mediante los conectores de interfaz se tiene acceso a las E/S digitales y analógicas. En total hay 20 terminales, 10 en cada conector (Figura 3).
Conector superior
Dispone de los siguientes terminales:
- DI0: Entrada digital 0
- DI1: Entrada digital 1
- Son entradas para contactos libres de potencial. Para ello incluyen una resistencia de pull-up. Cuando no hay nada conectado o los interruptores externos no están pulsados se lee un valor digital igual a 1. Cuando se introduce masa (Terminal COM) se lee un 0.
- COM: Masa. Conectado a la señal de masa de la DCON, que proviene del USB
- Vext: Tensión externa. Este terminal está conectado al BUS DCON, permitiendo que cualquiera de las DCON conectadas en red tenga acceso a esa tensión. Bien para inyectarla o bien para leerla. Se ha incluido en los conectores de interfaz y en el bus DCON para facilitar el cableado de los equipos en los que se instalan.
- AI0-, AI0+: Entrada analógica 0, terminales positivo y negativo.
- AI1-, AI1+: Entrada analógica 1, terminales positivo y negativo.
- Cuando las entradas se configuran para lectura de termopares, por los terminales positivo y negativo se introducen los dos cables del termo par. En el resto de modos los terminales negativos están conectados a masa.
- AO-, AO+: Salida analógica. El negativo está conectado a masa.
Conector inferior
- DO0-, DO0+: Salida digital 0
- DO1-, DO1+: Salida digital 1
- Salidas digitales por transistor. Son salidas de colector abierto, por lo que hay que colocar tensión externa para que funcionen
- RCM0, RNC0, RNO0: Salida por relé 0
- RCM1, RNC1, RNO1: Salida por relé 1
- Salidas digitales por relé, libres de potencial. RCMx es el terminal común, que por defecto está conectada a la pata RNCx (Terminal normalmente conectado). Cuando se activa la salida, la pata común se conecta con el terminal RNOx (Terminal normalmente abierto)
Conectores Laterales
La tarjeta DCON tiene dos conectores laterales para poder conectar varias de ellas en cadena, compartiendo el mismo bus de comunicaciones (BUS DCON). Son 2 conectores de 10 vías. El derecho es macho y el izquierdo hembra (Figura 4).
Registros
La DCON se controla mediante el acceso a registros internos de 16 bits, que se pueden escribir y/o leer. Se resumen en la tabla inferior. Los registros se usan bien para almacenar valores, o bien se subdividen en campos independientes. Hay dos tipos de campos, de 4 bits (denominados dígitos) y de bits individuales. Para diferenciarlos se utilizan las palabras claves BITS y DIGITOS.
Número | Nombre | Tipo | Descripción | Formato |
---|---|---|---|---|
0x00 | DIRC | Lectura/Escritura | Dirección del DCON | |
0x01 | DINS | Lectura | Entradas digitales (DI0 y DI1), 2 bits | BITS: xxxx - xxxx - xxxx - xx DI1 DI0 |
0x02 | AIN0 | Lectura | Entrada analógica 0 (AI0), 16-bits | |
0x03 | AIN1 | Lectura | Entrada analógica 1 (AI1), 16-bits | |
0x04 | DOUS | Lectura/Escritura | Salidas digitales R1, R0, DO1, DO0 (4 bits) | BITS: xxxx - xxxx - xxxx - R1 R0 DO1 DO0 R1 y R0 controlan los relés |
0x05 | AOUT | Lectura/Escritura | Salida Analógica | Valor de 10 bits: 0x000 - 0x3FF |
0x06 | PWM0 | Lectura/Escritura | Salida PWM para DO0 | Valor de 10 bits: 0x000 - 0x3FF |
0x07 | PWM1 | Lectura/Escritura | Salida PWM para DO1 | Valor de 10 bits: 0x000 - 0x3FF |
0x08 | COND | Lectura/Escritura | Configuración de las salidas digitales | BITS: xxxx - xxxx - xxxx - xx CDO1 CDO0 Modos: 0-> Digital normal, 1 -> PWM |
0x09 | CONA | Lectura/Escritura | Configuración de las E/S analógicas | DIGITOS (de 4 bits): X - CAO - CAIN1 - CAIN0 Modos: 0-> 0-20ma, 1 -> 4-20ma, 2-> 0-5v Adicional para las entradas: 3-> Termopar |
0x0A | CPID | Lectura/Escritura | Configuración del PID | DIGITOS (de 4 bits) X - X - X - PCONF PCONF: 0,1,2,3,4,5,6 |
0x0B | PPID | Lectura/Escritura | Constante proporcional P | 10 bits |
0x0C | IPID | Lectura/Escritura | Constante Integral I | 10 bits |
0x0D | DPID | Lectura/Escritura | Constante derivativa D | 10 bits |
0x0E | SPLC | Lectura/Escritura | Set point del lazo de control | 10 bits |
0x0F | UAA0 | Lectura/Escritura | Umbral para entrada analógica 0 | 10 bits |
0x10 | UAA1 | Lectura/Escritura | Umbral para entrada analógica 1 | 10 bits |
0x11 | CIAL | Lectura/Escritura | Configuración de las alarmas de las entradas | DIGITOS (de 4 bits): AI1 AI0 DI1 DI0 Modos: 0 --> No usada, 1--> Logica positivia, 2--> Lógica negativa |
0x12 | COAL | Lectura/Escritura | Configuración de la actuación de las alarmas | DIGITOS (de 4 bits): AI1 AI0 DI1 DI0 Modo de actuación: |
0x13 | VIDA | Lectura/Escritura | Periodo de muestreo | -- |
0x14 | ALMO | Lectura/Escritura | Alarma: modo y disparo | DIGITOS (de 4 bits): X - X - ALM - MODO
ALM: Alarma disparada |
0x1A | VERF | Lectura | Versión del firmware | Cadena ASCII con la versión del firmware (Ej. DEU_v2.00) |
Recursos de la DCON
Entradas digitales
La tarjeta DCON dispone de 2 entradas digitales para la conexión de contactos libres de potencial (Figura XX). Cada entrada incorpora una resistencia de pull-up que hace que su estado sea '1' cuando el contacto no está pulsado. Cuando se introduce COM (masa) por las entradas digitales, la lectura será de un '0'.
La lectura de las entradas digitales se hace a través del registro DINS. Los dos bits menos significativos de este registro (0 y 1) se corresponden con las entradas DI0 y DI1 respectivamente.
Las dos entradas se pueden configurar para usarlas como alarmas, de manera que se disparen bien cuando cada una de las entradas valga 0 ó bien 1. Cada detector de alarma tiene 3 modos de funcionamiento, según el valor almacenado en el registro CIAL. Los 4 bits menos significativos se corresponden con la entrada DI0 y los 4 siguientes (del 7 al 4) con DI1.
Modo | Descripción |
---|---|
0 | Alarma desconectada. La entrada no genera alarmas |
1 | La alarma se dispara cuando la entrada es 1 |
2 | La alarma se dispara cuando la entrada es 0 |
Entradas analógicas
La DCON dispone de 2 entradas analógicas accesibles a través de los terminales AIO+, AIO-, AI1+, AI1- del conector de interfaz superior. El diagrama se muestra en la figura inferior. Ambas entradas tienen la misma funcionalidad por lo que sólo se describirá la entrada analógica AI0.
Las entradas tienen 4 modos de funcionamiento, configurables a través del registro CONA. Los 4 bits de menor peso (3-0) son para AI0 y los siguientes (7-4) para AI1. En la siguiente tabla se muestran los valores para cada configuración:
Modo entrada | Descripción |
---|---|
0 | Entrada 0 - 20ma |
1 | Entrada 4 - 20ma |
2 | Entrada 0 - 5v |
3 | Entrada de termopar |
Si se ha seleccionado la configuración de termopar, las dos señales de entrada (+ y -) se introducen en un conversor A/D. Para el resto de configuraciones, AIO- se toma como la señal de referencia y la que se muestrea es la proveniente de AIO+.
A través de los registros AIN0 y AIN1 se puede leer el valor analógico (de 10 bits) desde el PC.
Ambas entradas analógicas se pueden usar como entradas del lazo de control PID, configurandolo mediante el registro CPID (ver sección sobre PID).
Las entradas analógicas también pueden disparar las alarmas si sus entradas traspasan el umbral establecido en los registros UAA0 y UAA1 respectivamente. La configuración de las alarmas se establece en el registro CIAL. Los bits 11-8 son para AI0, y 15-12 para AI1. Los modos de configuración se muestran en la siguiente tabla:
Modo | Descripción |
---|---|
0 | Alarma desconectada. La entrada no genera alarmas |
1 | La alarma se dispara cuando la entrada es mayor que el umbral (UAAx) |
2 | La alarma se dispara cuando la entrada es menor que el umbral (UAAx) |
Salida Analógica
La salida analógica se puede configurar en tres modos de funcionamiento, configurados mediante los bits 11..8 del registro CONA:
Modo entrada | Descripción |
---|---|
0 | Entrada 0 - 20ma |
1 | Entrada 4 - 20ma |
2 | Entrada 0 - 5v |
Los detalles se muestran en la figura XX. La salida se realiza por los pines AO+ y AO- situados en el conector de interfaz superior (P3). El valor analógico proviene de una de las dos siguientes fuentes. La primera es el registro AOUT, accesible desde el PC por medio del USB. Una escritura en este registro saca el correspondiente valor analógico por AO+. La otra fuente es el controlador PID. Cambiando los valores del registro CPID se configura para que la salida del PID se haga a través de AO+. (Ver sección sobre PID)
Salidas digitales
La DCON tiene 4 salidas digitales: 2 de tipo transistor (colector abierto) y 2 de relé. Se accede a ellas escribiendo en los bits 3...0 del registro DOUS. Los dos bits menos significativos (0 y 1) se corresponden con los de los terminales DO0 y DO1. Los bits 2 y 3 controlan los relés.
El registro COND configura el tipo de salida de los terminales DO0 y DO1. La salida puede ser de tipo PWM o normal. Esto se configura mediante los 2 bits de menor peso de COND (1,0) (valor 0 = Salida digital normal, valor 1 = Salida PWM).
Cuando están configuradas para PWM, se utilizan los registros PWM0 y PWM1 para establecer el valor del ancho del pulso.
Las 4 salidas tienen un dispositivo de desconexión automática activado por las alarmas (ver la sección de alarmas para su configuración)
Adicionalmente, el controlador PID se puede configurar (registro CPID) para que la salida sea PWM0, PWM1 ó la salida analógica.
Controlador PID
La DCON incorpora un controlador PID digital de 10 bits. Las constantes del controlador (P, I y D) se configuran escribiendo sus valores en los registros PPID, IPID y DPID respectivamente. El Setpoint se establece a través del registro SPLC.
Tanto las señales de entrada como salida del PID se toman de diferentes fuentes según la configuración establecida en el registro CPID. Las entradas posibles son las 2 analógicas (AIN0, AIN1). Las salidas posibles son 3: la analógica (Aout), y las PWM (PWM0 y PWM1), que se obtienen por los terminales DO0 y DO1 de la DCON. La selección de las señales se hace escribiendo un valor entre 0 y 6 en el registro CPID. Se detalla en la siguiente tabla:
CPID | Señal entrada | Señal salida | Descripción |
---|---|---|---|
0 | Ninguna | Ninguna | No hay lazo de control |
1 | AIN0 | AOUT | --- |
2 | AIN1 | AOUT | --- |
3 | AIN0 | PWM0 | --- |
4 | AIN1 | PWM0 | --- |
5 | AIN0 | PWM1 | --- |
6 | AIN1 | PWM1 | --- |
En la configuración CPID=0, el PID está desactivado y tanto las entradas como salidas no están conectadas al PID, por lo que se pueden utilizar para otros usos.
Alarmas
La tarjeta DCON incorpora 4 alarmas configurables que actúan sobre las salidas digitales. Cada una de las entradas digitales (DI0, DI1) tiene asociada una alarma que se dispara cuando se ponen a 1 ó 0, según cómo se configure en el registro CIAL. Los bits 3-0 y 7-4 de CIAL definen la configuración de las alarmas de las entradas DI0 y DI1 respectivamente, según la siguiente tabla:
Modo | Descripción |
---|---|
0 | No hay alarma |
1 | La alarma se dispara cuando la entrada es 1 |
2 | La alarma se dispara cuando la entrada es 0 |
Cada entrada analógica (AIN0, AIN1) tiene una alarma que se dispara cuando su valor sobrepasa un umbral, o bien cae por debajo de ese umbral. Se configura mediante los bits 15-12 (para AIN1) y 11-8 (para AIN0) del registro CIAL, cuyos valores se muestran en la tabla:
Modo | Descripción |
---|---|
0 | No hay alarma |
1 | La alarma se dispara cuando la entrada es mayor que el umbral |
2 | La alarma se dispara cuando la entrada es menor que el umbral |
Los umbrales se establecen en los registros UAA0 (para la entrada AI0) y UAA1 (para AI1).
Cuando se dispara una alarma se actúa sobre el grupo de salidas digitales configurado mediante el registro COAL. A cada alarma de entrada se le asigna las acciones mostradas en la siguiente tabla:
Acción | Descripción |
---|---|
0 | Desconectar TODAS las salidas digitales |
1 | Desconectar todas las salidas menos DO0 |
2 | Desconectar todas las salidas menos DO1 |
3 | Desconectar todas las salidas menos el relé 0 |
4 | Desconectar todas las salidas menos el relé 1 |
El sistema de alarmas se puede conectar/desconectar mediante los bits 3-0 del registro ALMO. Un valor de 0 hace que las alarmas estén paradas (modo STOP) y con 1 activadas (modo RUN). Cuando se dispara una alarma, los bits 7-4 del registro ALMO indican cual de las 4 alarmas es la que se ha producido, según la siguiente tabla:
Valor | Descripción |
---|---|
0 | Ninguna alarma disparada |
1 | Alarma DI0 |
2 | Alarma DI1 |
3 | Alarma AI0 |
4 | Alarma AI1 |
Comunicaciones
Nivel físico
Formato de las tramas
La comunicación con la DCON se realiza mediante tramas. Todas ellas tienen el mismo formato, tanto las de envío (del PC a la DCON) como las de recepción (Del DCON al PC). Los detalles se dan a continuación:
- Longitud: Tramas fijas de 10 caracteres (10 bytes)
- Caracteres: Todos los caracteres de la trama (exceptuando el de cabecera) son dígitos ASCII hexadecimales: '0','1','2'...'9','A','B','C',...,'F' (¡¡SIEMPRE EN MAYÚSCULAS!!)
- Cabecera: Todas las tramas comienza por le carácter :
- Campos: Todas las tramas se dividen en 4 campos, además de la cabecera
- Dirección del DCON: 8-bits que indican la dirección del DCON destino, con el que se quiere comunicar
- Tipo de tramas: Las tramas que se envían al DCON son de dos tipos:
- SET. Tramas de escritura. Se escribe el dato enviado en el registro indicado. Identificador: '3'
- GET. Tramas de lectura. Se solicita la lectura del registro indicado. Identificador: '6'
- Número de registro: Dato de 8-bits que indica el registro al que se quiere escribir, o del que se quiere leer
- Valor: Dato de 16-bits para escribir en el registro (o valor leído en caso de lectura).
Tramas de ejemplo
- Lectura de la dirección del DCON: Para conocer la dirección de una DCON hay que leer su registro DIRC (0x00). Utilizaremos como dirección la 00 (Broadcast) para generar la trama (porque no se conoce su dirección).
- Trama enviada: :003000000
- Trama recibida: :003000001
- En este ejemplo la dirección de la DCON leída es la 0x01
- Configuración de la dirección del DCON: El registro DIRC es de lectura/escritura por lo que podemos cambiar la dirección de un DCON escribiendo en este registro. Esto es muy útil para conectar varios DCON en red, configurando cada uno con una dirección diferente. La nueva dirección quedará almacenada en la memoria no volátil de la DCON. Cada vez que se alimente, se tomará ese valor como su dirección.
- Trama enviada: :006000002
- Trama recibida: :006000002
- Si ahora, con esta nueva configuración, enviamos la trama del ejemplo anterior para leer la dirección, el DCON responderá con la trama: :003000002
En los siguientes ejemplos se supondrá que el DCON tiene asignada la dirección 0x01, por lo que todas las tramas comenzarán por :01 |
- Lectura de las entradas digitales. Se leen a través del registro DINS (0x01). Los 4 caracteres correspondientes al campo valor no se usan en la trama enviada, y se han puesto a '0'
- Trama enviada: :013010000
- Trama recibida: :013010003
- Si no hay nada conectado a las entradas digitales, o bien hay pulsadores conectados pero sin apretar, los bits correspondientes a las entradas estarán a 1 DI0 = 1, DI1 = 1, por lo que el último carácter del campo valor es '3'.
- Si por ejemplo el pulsador conectado a DI1 se aprieta, la lectura será:
- Trama enviada: :013010000
- Trama recibida: :013010001
- En este caso DI1=0, DI0=1, por lo que el último dígito del campo valor es '1'
- Lectura de las entradas Analógicas. Se leen a través de los registros AIN0 (0x02) y AIN1 (0x03), que se corresponden con las entradas AI0 y AI1 del conector superior. En este ejemplo ambas entradas están configuradas (registro CONFA) como entradas de 0 - 5v. Se ha conectado un potenciómetro de 100ohm para las pruebas
- Trama enviada: :013020000
- Trama recibida: :013020000
- Lectura de la entrada AIN0. Si no hay nada conectado (y está en la configuración 0-5v) se leerá el valor 0x000)
- Trama enviada: :013020000
- Trama recibida: :0130201E4
- Cuando el potenciómetro está en la posición central, el valor leído es 0x1E4 (aprox.). Repitiendo la misma lectura pero con el potenciómetro en ambos extremos se leen los valores 0x002 y 0x3FE
- Trama enviada: :013030000
- Trama recibida: :013030000
- Lectura de AIN1 (cuando no hay nada conectado y está configurado en el modo 0-5v)
- Escritura en salidas digitales. Se controlan con el registro DOUS (0x04). Los 4 bits menos significativos se corresponden con R1 R2 DO1 DO0, siendo DO0 el de menor peso.
- Trama enviada: :016040001
- Trama recibida: :016040001
- Con esto se activa la salida DO0, y el resto permanecen a 0
- Trama enviada: :016040002
- Trama recibida: :016040002
- Activación del Relé 0, dejando el resto de salidas desactivadas (a 0)
- Trama enviada: :016040004
- Trama recibida: :016040004
- Escritura en la salida analógica. Se controla con el registro AOUT (0x05) De 10-bits
- Trama enviada: :0160503FF
- Trama recibida: :0160503FF
- Si la salida analógica está configurada en el modo 0-5v, con esta trama se obtendrán por la salida AO+ una tensión de 5v
- Trama enviada: :0160501FF
- Trama recibida: :0160501FF
- Con esta trama la tensión sacada es la mitad: 2.5v
- Salidas de PWM. Se controlan con los registros PWM0 y PWM1, de 10 bits
- Trama enviada: :0160603FF
- Trama recibida: :0160603FF
- Se envía por DO0 una señal PWM con ciclo de trabajo del 100% (NOTA: previamente se ha tenido que configurar la salida DO0 en modo PWM)
- Trama enviada: :0160701FF
- Trama recibida: :0160701FF
- Se envía por DO1 una señal PWM con ciclo de trabajo del 50%
- Configuración salidas digitales. Se cambia mediante el registro COND (0x08). Cada salida puede estar en modo normal o pwm
- Trama enviada: :016080000
- Trama recibida: :016080000
- Con esta trama se configuran las dos salidas (DO0 y DO1) en modo digital normal
- Trama enviada: :016080003
- Trama recibida: :016080003
- Con esta trama se configuran las dos salidas (DO0 y DO1) en modo PWM
- Configuración E/S analógicas. Se cambia con el registro CONA (0x09). Los dos salidas analógicas y la entrada pueden estar configuradas para: 0-20ma, 4-20ma ó 0-5v. Las entradas además tienen el modo termopar
- Trama enviada: :016090000
- Trama recibida: :016090000
- Configurar tanto las entradas como las salidas analógicas en modo 0-20ma
- Trama enviada: :016090213
- Trama recibida: :016090213
- Establecer la siguiente configuración: Salida analógica: 0-5v, Entrada analógica 1: 4-20ma, Entrada analógica 2: Termopar
- Configuración del PID. Registro CPID
- Trama enviada: :0160A0002
- Trama recibida: :0160A0002
- Configurar el PID para que la entrada sea por AI1 y la salida por AOUT (CPID=2)
- Para establecer las constantes del PID enviar estas tramas (se omiten las tramas recibidas, que son iguales a las enviadas)
- :0160B000C (P=12)
- :0160C0000 (I=0)
- :0160D0000 (D=0)
Tramas especiales
- Lectura de la version del firmware. Es una trama de pruebas. La trama de respuesta NO sigue el formato habitual. Contiene la version del firmware
- Trama enviada: :0131A0000
- Trama recibida: :DEU_v2.00
Dimensiones
Repositorios
- Público: Github: https://github.com/Obijuan/DCON : Figuras y software
- Privado: SVN: http://svn.iearobotics.com/DCON_private
- Privado Nanoinnova: http://svn.iearobotics.com/nanoinnova_cvd/