This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Sistema de control de acceso con TPS - Tibbo Project System
#1
¡Muy buenas a todos!
Este es mi primer post en este foro en el que me gustaría presentarles la plataforma modular de automatización programable Tibbo Project System (TPS) de Tibbo Technology Inc. El principal propósito de esta publicación no es solo dar a conocer este sistema a los aficionados y profesionales de IoT(Internet of things), domotica y embedded system, también me gustaría abrir un hilo de discusión en español, para poder responder a todas las preguntas y sugerencias que surjan sobre la plataforma de primera mano. No es mi intención compararla ni sobreponerla a otros tipos de sistemas IoT. Ahora mismo hay muchísimos en el mercado, pero sí me gustaría aportar un poco de luz sobre la gran versatilidad, flexibilidad y facilidad de programación que tiene. En estos momentos toda la información sobre TPS está en inglés, por lo que espero, que el artículo resulte útil e interesante.

[Imagen: 4ec41a4e2bfdd397a83dfa2f9b4665cf.jpg]

Introducción.


La compañía taiwanesa Tibbo Technology Inc. anuncio una nueva línea de productos, llamada Tibbo Project System (TPS). TPS – es una plataforma modular, basada en hardware y software, concebida para crear soluciones de automatización personalizadas. La base hardware de la plataforma es una placa base con un microprocesador integrado, a la que según necesidad concreta, se le añaden módulos de E/S (placas hijas encapsuladas y marcadas según su funcionalidad), carcasas y elementos de protección y conexión. La base software es un entorno de desarrollo, que permite crear el firmware necesario. ¿Interesante? Pues vayamos por partes.

La idea.

La idea clave de la plataforma TPS ya tiene algunos años. Se ha hecho una observación: la mayoría de los equipos de automatización se pueden dividir en dos grandes categorías: equipos fijos, que no pueden ser cambiados por el usuario y equipos modulares, que pueden ser construidos por “partes” – módulos de E/S y comunicaciones en red, que pueden ser colocados en un rail/bus común.
El problema de los primeros consiste en que es bastante difícil encontrar un sistema que encaje exactamente en los requerimientos para una determinada tarea. Los vendedores lo saben, y tratan de ofrecer un sinfín de modelos y configuraciones diferentes. Por ejemplo, abres un catálogo y te encuentras: “ocho relés, cuatro salidas… cuatro relés, ocho salidas… dos entradas, 4 salidas y puerto RS232…”. ¿Y qué pasa, si lo que necesitamos es: seis relés, dos entradas aisladas, cuatro entradas de colector abierto, puerto serie, Wi-Fi, sensores de temperatura y humedad y para rematar un relé de estado sólido de alto voltaje? Pues resulta que no hay tal configuración…
El problema de los sistemas “por partes”, es que su precio normalmente es desorbitado. Cualquier representante de los mayores fabricantes de sistemas de automatización modulares, con cara muy seria y toda la razón, te dirá: “Este sistema saldrá en unos cuantos miles de euros”. ¡Una buena plataforma de automatización vale dinero, y el cliente debe pagar por ello mucha pasta! ¿Cierto?
Para ser justos, cabe destacar que existen sistemas baratos con E/S ajustable y expandible, pero casi siempre se ven “crudos” – una simple placa, sin una carcasa bien hecha, difícil e incómodo cableado y demás “faltas”.
Una buena plataforma de automatización modular no solo debe ser funcional, flexible y fiable, también tiene que ser cómoda, “alegrar el ojo” mínimamente y sobre todo ser asequible. Los ingenieros de Tibbo Technology se han esforzado enormemente en hacer esto realidad. Para ser más claros, escribamos una sencilla formula y expliquemos sus componentes:

TPS = PCB + Tibbits (E/S) + carcasas

[Imagen: 9405d58a6088e3d32e41b2906e4e9328.png]

Las placas base (PCB)

Empecemos escogiendo una placa base, que albergará más adelante toda la lógica, E/S y los módulos que podamos necesitar en nuestro proyecto. En estos momentos existen dos tipos de placa base, que se diferencian únicamente en la cantidad de conectores para los módulos E/S (En un caso son 6 y en otro 14). En la placa base ya hay un microprocesador de 32 bits que funciona a 88 MHz (con la PLL en encendida, ya por defecto), una interfaz Fast Ethernet de funcionalidad completa, conectores adicionales para pantalla y teclado, slot para un módulo Wi-Fi opcional, botón de reset y botón programable. También lleva instalado un supercondensador de 4,7F para el RTC integrado, una barra de leds que se puede usar como medidor de nivel de señal, un zumbador. El sistema ya lleva un servidor WEB integrado.
A grandes rasgos, estas placas son una evolución del módulo programable EM1000, que la compañía Tibbo fabrica ya hace bastante tiempo, y que ahora ya es mucho más que un simple microcontrolador con capacidades de red, ofreciendo conectores para módulos de E/S opcional. Adelantándome, el desarrollo y la depuración del firmware se hacen directamente usando el puerto Ethernet integrado. De esta forma, aun teniendo una placa “desnuda” ya puedes conectarte a ella y probar escribir algún programa, aunque de este modo aun no resulta tan interesante.

Los “Tibbits”

Tibbits (del inglés Tibbo bits) – son pequeñas placas de E/S encapsuladas. Los Tibbits se pueden usar con la Tibbo Project System, pero también son compatibles prácticamente con cualquier microcontrolador conocido. El paso entre los pines es 2,54mm, lo que permite instalarlos en breadboards y placas de maqueta para hacer pruebas.
Los Tibbits se dividen en dos grandes tipos: módulos funcionales y de conexión. A día de hoy, existen 47 distintos tipos, que incluyen DAC, ADC, PoE, alimentación de reserva, RS232/485/422, distintos reles, entradas aisladas, transceptor infrarrojos, salidas PWM, sensores de humedad, temperatura, de shock, acelerómetro, módulo de comunicaciones GSM/GPRS y muchos más. Además se planea realizar Tibbits para el control de motores eléctricos, interfaz CAN y más funciones, frecuentemente sugeridas al fabricante por los propios usuarios de la plataforma.

[Imagen: 22d49206db52842bd9d55baa510ccac9.png]

Dependiendo de su función, los Tibbits pueden ocupar un conector o dos en la placa base. La instalación se realiza extremadamente fácil – simplemente se inserta en un conector libre. Una vez instalados todos los Tibbits, se puede colocar una placa de protección anti vibración que los mantiene fijos a la placa base e impide que se “salgan” de sus conectores.
De este modo, una vez elegidos los módulos que necesitamos, ya tenemos la parte hardware de nuestro sistema. Ahora ya podemos instalar en nuestro ordenador el entorno de desarrollo IDE y empezar a crear nuestro propio firmware.


Las carcasas.

La fabricación de carcasas en pequeñas cantidades, y más si hablamos de una sola unidad, es un lujo muy caro. Incluso si se tiene acceso a un proveedor de circuitos impresos que hace placas en pequeñas cantidades a precio asequible, la carcasa sigue siendo un indiscutible “dolor de cabeza” para los desarrolladores de dispositivos. La instalación de placas sin carcasa en un entorno de producción siempre es incomoda y trae consigo serios problemas para la seguridad e integridad del equipo. Por eso, siempre es mejor usar una buena carcasa y olvidarse de estos problemas. El fabricante ha creado varias soluciones: TPB2 – es una carcasa, diseñada para la placa base pequeña; TPB2L – lo mismo, pero lleva una pantalla TFT a color integrada y botones sensibles al tacto; TPB3 – para la placa base grande de 14 slots. Todas ellas se pueden montar sobre rail DIN.
Las carcasas están compuestas por varios componentes. La tapa inferior, sobre la que se atornilla la placa, tapas laterales y tapa superior. Los Tibbits – conectores encajan perfectamente en la carcasa y las tapas laterales del equipo. Una de las particularidades, es que en la tapa superior hay un plástico semitransparente (en las versiones sin pantalla), que permite observar la actividad de los leds de los Tibbits instalados (estado de E/S, por ejemplo) y además colocar pegatinas, para no tener que adivinar “¿Vaya, pero de dónde viene ese cable?”

[Imagen: 1953c168d4bfd27e5579ea6b3960d4c5.jpg]

Pues bien, ya tenemos una placa base, los Tibbits necesarios, todo eso ha encajado con éxito en la carcasa – la parte hardware de nuestro sistema de automatización no solo está listo, sino además tiene buena pinta y se puede usar de forma segura.

Configurador online.


Para que la labor de escoger los componentes de nuestro sistema sea menos tediosa, se ha desarrollado un configurador online para TPS. En el configurador podemos trabajar con nuestros proyectos (permite guardarlos localmente en nuestro ordenador), escogiendo la placa base, los Tibbits y elementos adicionales que necesitemos, todo ello en una interfaz gráfica intuitiva, que nos ayuda a escoger los componentes correctos. Además se hace un cálculo bastante exacto de la potencia de alimentación que necesitamos, para poder escoger la fuente de energía más adecuada. Una vez terminada la configuración, se puede hacer un pedido de forma muy cómoda – todos los componentes necesarios ya están incluidos. Más adelante, cuando ya tengamos nuestro hardware, si cargamos el archivo de nuestro proyecto, creado en el configurador, en el entorno de desarrollo, se cargaran automáticamente todas las librerías necesarias para trabajar con los Tibbits que contiene.


Programación.

Para la programación del TPS se utiliza un entorno de desarrollo propio TIDE (No, no es una marca de detergente jeje, Tibbo Integrated Development Environment). 
Como ya lo había dicho, tanto la programación como la depuración se realizan directamente por Ethernet. El entorno es sencillo y cómodo para el programador, tiene absolutamente todas las funciones necesarias, incluyendo puntos de parada y posibilidad de ejecución del código por pasos. También puede ser programada la interfaz web.
El lenguaje de programación – Tibbo Basic. No te asustes, amigo… no es aquel lenguaje clásico, que muchos de nosotros estudiamos en el instituto. Es un moderno lenguaje orientado a objetos tipificado que ha creado el fabricante. A los que estáis acostumbrados al C y no queréis saber de otra cosa – hay una buena noticia – el compilador también entiende C, es más, ambos lenguajes se puede combinar en un mismo proyecto. 
Hablemos un poco sobre cómo se carga el programa en el TPS.
En el procesador de la placa base está cargado el sistema operativo (TiOS - Tibbo OS), que permite hacer depuración en red y vigilar los parámetros críticos del dispositivo. La carga se realiza en modo de interpretación (el compilador traduce el programa en un código mnemónico que se carga en el chip). Una vez cargado el programa, cuando ocurre un evento del sistema (pulsación de un botón, recepción de datos por puerto serie, cambio el estado lógico de alguna línea, del temporizador y etc.) un gestor se encarga de procesarlo y realizar una lógica determinada. En el sitio WEB del fabricante se publica el código fuente de muchos proyectos y demos, bibliotecas de funciones, que te ayudaran aprender rápidamente a programar tu propio firmware.

[Imagen: a836f2afe4a817df5719850b69e62cdc.jpg]

Posibilidades de integración que ofrece la plataforma.

En un principio, TPS se puede integrar en cualquier sistema, programando los protocolos de comunicación y controladores necesarios. También es posible encargar todo el desarrollo al fabricante, proporcionándole los requisitos técnicos de la solución necesaria. Y lo mejor de todo, puedes cargar en el dispositivo la biblioteca AggreGate Agent, que se distribuye gratuitamente. Esto permitirá la conexión a la plataforma de automatización AggreGate de Tibbo Technology
En ella ya están realizadas muchas configuraciones flexibles para HMI/SCADA, control de accesos, automatización de edificios y muchas más cosas. De todos modos, no voy a profundizar en este tema ahora, porque AggreGate es una plataforma muy completa, que ofrece muchísimas posibilidades para el control y monitoreo de procesos y merece un artículo propio.

[Imagen: da34981f4a1d5fe2641d4df57f1f1b67.png]

Haciendo algunas conclusiones.

Con Tibbo Project System obtenemos una plataforma de automatización muy funcional con un buen diseño, que además resulta asequible. Es como un “puzzle”, donde cualquiera, aun sin tener mucha experiencia, puede crear el dispositivo que quiera por piezas, usando solo las estrictamente necesarias. Si tenemos en cuenta la flexibilidad, funcionalidad y escalabilidad de la plataforma, podemos considerarla como una solución muy seria para integradores de sistemas de automatización de alto nivel. En conjunto con la plataforma software AggreGate, obtenemos toda la funcionalidad necesaria para realizar cualquier proyecto, sea para la monitorización (por ejemplo, contadores eléctricos), control remoto o incluso un sistema de control industrial totalmente automático.
Y lo más importante – el fabricante y los distribuidores oficiales ofrecen servicios de asistencia técnica, consultas relacionadas con proyectos, centro de reparación autorizado y por supuesto garantía.
Y ahora viene la parte más interesante de todas: ¡Veamos un caso práctico!


Sistema de control de acceso con Tibbo Project System (TPS).



En el mercado hay muchas soluciones para control de acceso: desde controladores sencillos y muy baratos, hasta sistemas distribuidos y altamente flexibles, con una infraestructura muy compleja y altísimo precio. Vamos a crear nuestro propio sistema universal de control de acceso con funciones básicas. Considerando la flexibilidad del hardware, puedes crear tus propias configuraciones y versiones personales o de uso comercial, basadas en la que vamos a describir ahora.
El control de acceso es un elemento clave de los sistemas de seguridad. Su instalación permite organizar el acceso a zonas restringidas, garantizando la seguridad de bienes y personas. Nos hemos puesto como objetivo crear un sistema de control de acceso basándolo en Tibbo Project System. El controlador ya viene de fábrica con Ethernet, memoria, conectores para los modules E/S y opcionalmente interfaz Wi-Fi. Gracias a la carcasa universal, se puede realizar un producto terminado mucho más atractivo y cómodo de usar, que una simple placa. Pero antes de nada, aclaremos: ¿En qué tipos se dividen los sistemas de control de acceso?


¿Sistema local o en red?

Los sistemas de control de acceso se dividen en dos categorías: locales autónomos y en red. La primera no requiere de un control centralizado, la información sobre permisos de acceso está almacenada en una base de datos local o en el identificador externo. Los sistemas locales autónomos son los más indicados para pequeñas oficinas, despachos, transporte, acceso a servicios de pago en centros recreativos. Por el contrario, los sistemas en red permiten un control centralizado, que permite reaccionar operativamente ante determinadas situaciones, integrar datos en otros sistemas, crear un espacio informativo unificado para el control de las instalaciones. Un sistema en red, a diferencia de uno local siempre tiene interfaces de red, servidor y un protocolo para el intercambio de los datos. Un sistema así es el más adecuado para grandes instalaciones, así como centros de negocios, grandes empresas con muchas entradas y puntos de control, organizaciones con filiales distribuidos geográficamente, con muchos niveles de autorizaciones de seguridad. Pero también es el indicado para instalaciones pequeñas, que precisan de control y gestión remota.

[Imagen: 1d1a4d3b22e7400b88ee61c5ace045d3.jpg]

En la mayoría de los casos, la mejor solución es un controlador universal, que sea capaz de funcionar tanto en una red, como de forma autónoma. Para crear un dispositivo, que pueda cumplir ambas condiciones hemos elegido la placa base TPP3, que ya dispone de una interfaz Ethernet de serie (opcionalmente también Wi-Fi) para la comunicación con el servidor central. La memoria integrada permite tener una base de datos local, capaz de almacenar hasta 20000 eventos de unos 2000 usuarios. Hemos decidido hacer que el controlador gestione dos puertas / entradas. Si es necesaria una solución más compacta, podemos usar la placa más pequeña TPP2, con un solo punto de control, o incluso dos, pero limitando de este modo la posibilidad de conexión de sensores externos adicionales.

Conexión de los dispositivos de identificación.

A grandes rasgos, las tareas del sistema de control de acceso son sencillas: identificación de usuarios autorizados, lectura del estado de los sensores para detectar intrusiones, control de barreras y cerraduras electrónicas, alarmas. 
Hay distintos métodos de identificación disponibles, que se usan según conveniencia. Para el acceso a una cabina con cajeros automáticos, se utilizan lectores de tarjetas bancarias. En centros de negocios y grandes empresas cada vez más se usan tecnologías RFID, tarjetas con banda magnética, códigos de barras y 2D, llaves tipo iButton. Para instalaciones de alta seguridad se usan métodos más seguros, como lecturas biométricas. En otros casos se usa la introducción de contraseña mediante un teclado. Es muy frecuente, que estos métodos se combinen, sobre todo ahí donde es preciso un sistema de control de acceso con varios niveles de autorización.

[Imagen: a4f78fc6fd5c41f689af50090ad09b6e.JPG]

Todo esto conlleva a que nuestro controlador deba tener la capacidad de conectarse a una gran variedad de sensores y sistemas de identificación. Hemos observado, que la mayoría de ellos se conecta mediante un puerto serie RS232. Basándonos en esa idea, hemos elegido nuestro primer Tibbit - el #01. Es un módulo bastante sencillo – se trata de un transceptor que convierte los niveles UART en el estándar RS232. Justo lo que necesitamos. Colocamos cuatro unidades sobre los conectores S1, S5, S9 y S13 para poder conectarles los 4 lectores necesarios para gestionar la entrada / salida por 2 puertas. Es posible usar conectores para cable directo y también conectores tipo DB9, que usaremos nosotros. En el caso de que la interfaz de nuestros lectores de identificación sea otra, simplemente cambiamos los Tibbits por los necesarios: para Wiegand, Clock/Data – el #08, para RS485 – el #05. Incluso es posible conectar dispositivos usando el protocolo 1-Wire, usando el Tibbit #31 (coprocesador PIC).

Mecanismos, controlados por el sistema. Sensores.

El control de los actuadores de los mecanismos de acceso, tales como barreras, cerraduras electromagnéticas o electromecánicas, se realiza con relés. Esto conlleva a que el controlador de acceso deba disponer de relés con grupos de contactos normalmente abiertos. 
Para la versión básica de nuestro sistema, hemos decidido usar el Tibbit #03-2 que integra 2 relés, capaces de conmutar cargas de hasta 1A
[Imagen: 8313f27242df453e8e8474d50aa1c710.JPG]
(como podemos observar en el esquema, un relé tiene contactos tanto cerrados como abiertos y el otro solo abiertos). Uno de los relés se utiliza para el control del mecanismo de la puerta y el otro para la alarma. 
Conectamos los Tibbits elegidos en los slots S11 y S15 de la placa base y en este caso usamos conectores externos para cable directo. Si necesitamos manejar cargas más potentes, como motores, se puede usar el modulo #06 que es capaz de manejar hasta 16A.
Para el control de intrusión, se suelen usar sensores electromagnéticos, sensores de movimiento, de volumen o un simple conductor, que al romperse una ventana también se rompe. Esto supone, que nuestro controlador debe tener líneas de entrada directas. Usemos 2 Tibbits #001, conectados a los slots S3 y S7. Cada uno de ellos contiene 4 líneas de entrada directa. A nosotros esta variante nos sirve, aunque hay más opciones para casos más complicados: entradas aisladas, con positivo común y etc.
El hardware de nuestro controlador está listo. Los slots (conectores de la placa base) S17 – S23 han quedado libres para más módulos, con lo que obtenemos un sistema escalable y fácilmente actualizable. En nuestra versión del controlador, hemos instalado un módulo Wi-FI (opcional) para no tener que llevar cableado Ethernet al lugar de la instalación. Ahora, colocamos la placa en una carcasa universal. La tapa permite el marcado de las E/S para facilitarles el trabajo a los instaladores. Para programar la placa, es suficiente conectarle el alimentador y darle acceso a la red local.

Programación.


La lógica del firmware es muy sencilla y no veo necesidad de exponer el código fuente explicado en este artículo. Además, es de código libre y muy pronto se podrá descargar gratuitamente. No obstante, me gustaría recalcar algunos detalles. Lo primero – estamos creando un controlador universal, con la posibilidad de modificar su funcionalidad rápidamente. Por esta razón, las partes del código que gestionan Tibbits están realizadas como bibliotecas. Esto permite crear configuraciones a medida “sobre la marcha”: cambiar la cantidad de puertas, conectar más sensores, cambiar el tipo de dispositivos de identificación. Simplemente cambiamos algunas variables globales – y la nueva versión del sistema esta lista.
Además de configurar las características de hardware, gestionadas por bibliotecas (drivers), también es necesario programar la parte funcional: almacenamiento de historiales, el intercambio de datos con el servidor, modo de vigilancia, configuración remota, soporte para protocolos de comunicacion relevantes y etc. 
Todo esto está realizado en la versión básica.



Software.

En estos momentos, hay dos posibilidades para el modo de funcionamiento en red. 
El primero – se basa en conectar a una base de datos MySql. Durante la identificación, el controlador hace una consulta al servidor, y si encuentra el código proporcionado, abre la el acceso al recurso solicitado.
El segundo es algo más complicado. La gestión del controlador se realiza mediante la plataforma AggreGate. Esto permite ajustarlo remotamente, crear complejos patrones de acceso con muchas ramificaciones, crear distintos tipos de informes y hacer muchísimas más cosas.
Y por último, como el sistema está basado en código abierto, es posible integrarlo en cualquier sistema de control de acceso simplemente programando un poco.


Como resultado, hemos obtenido un controlador con las siguientes características:
• Gestión de dos entradas independientes;
• Interfaces Ethernet, WiFi;
• Conexión de hasta 4 lectores externos con interfaz RS232, RS485, Wiegand, Clock/Data, 1-Wire, WiFi;
• 4 relés disponibles / un máximo de 10 relés;
• 4 entradas directas, con posibilidad de ampliación;
• Zumbador y leds integrados para el control de estado;
• Regulación de los horarios de apertura de las puertas;
• Soporte de hasta 8 esquemas de acceso con posibilidad de ampliación;
• Tiempos de caducidad para las autorizaciones
• Control de salida/entrada repetida (antipassback)
• Prohibición de entrada sin el acompañamiento por un responsable de área
• Avisos de situaciones críticas por SMS o email.
• Posibilidad de aplicar determinadas reglas para el acceso
• Posibilidad de modificar el hardware para añadirle funciones, según haga falta
• Código abierto, posibilidad de actualizar el firmware para tareas únicas y especiales.

[Imagen: b10bc78f88344a2cb72904756b2ca76d.JPG]
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  Control de rejillas A/A por conductos jgarridc 11 3,229 24-10-2018, 11:38 AM
Último mensaje: jgarridc
  La nueva plataforma IoT de Tibbo Technology basada en Linux sekanix 0 1,977 15-04-2016, 09:57 AM
Último mensaje: sekanix