Por favor, use este identificador para citar o enlazar este ítem:http://uvadoc.uva.es/handle/10324/14407
Título
Connecting an Arduino to KNX
Autor
Director o Tutor
Año del Documento
2015
Titulación
Grado en Ingeniería en Electrónica Industrial y Automática
Abstract
La finalidad de este proyecto es interconectar, mediante conexiones serie, el microcontrolador Arduino Uno y la Herramienta de Desarrollo BIM M13x, que contiene el protocolo KNX.
Arduino Uno es una placa con un microcontrolador ATMega328 de ocho bits de la marca Atmel que cuenta con puertos de entrada/salida.
La placa de Herramienta de Desarrollo se usó como un instrumento de pruebas para desarrollar tanto el software como el hardware que se desarrolló, ya que era capaz de cumplir las mismas funciones que el Modulo de Interfaz del Bus que posteriormente se utilizaría en una instalación domótica real.
El protocolo de conexiones de red KNX contenido en las herramientas usadas, es un protocolo mundial usado en el control y la automatización de edificios. Basa su funcionamiento en una tipología distribuida en la que cada sensor y actuador están caracterizados por una dirección de grupo ,que hace posible conocer y/o cambiar el estado de estos elementos, mediante la comunicación entre la placa que contiene la información del protocolo KNX y los elementos que componen una instalación domótica regida por el protocolo KNX.
La comunicación con KNX se puede desarrollar sobre diversos medios de transmisión para la propagación de información a la instalación. Sin embargo en este proyecto se decidió desarrollarlo sobre un cable de par trenzado (TP-1). Este medio de transmisión es uno de los más comunes en cualquier instalación domótica basada en la utilización del protocolo que aquí se usó pues se puede usar tanto para la transferencia de información como para la alimentación de los componentes de la instalación domótica.
La comunicación entre KNX y Arduino UNO se desarrolló bajo las directrices de una comunicación en serie, que se caracteriza por la interpretación de dos niveles lógicos de tensión (High y Low) que envía los datos a través de una única línea de datos con formato. Se decidió que la aplicación a crear hiciera viable que KNX y Arduino intercambiaran información mediante dos tipos de comunicación serie: SPI y UART.
A pesar que tanto la comunicación SPI como la UART están dentro del grupo denominado comunicaciones serie son notablemente diferentes en cuanto a las formalidades que conciernen a la forma de transmisión de datos.
La principal diferencia radica en que la comunicación SPI usa una interfaz síncrona y es full dúplex, es decir, permite la transmisión en ambos sentidos simultáneamente. Por otro lado la comunicación UART usa una interfaz asíncrona para mandar información del emisor al receptor y es una half duplex, es decir, la transmisión se realiza en ambos sentidos pero no simultáneamente.
Los datos que se transmitirán por comunicación serie, tanto por SPI como UART, serán cuatro: Command, que determina si se está trabajando en modo Read o Write; Object, identificador del objeto sobre el que se quiere actuar; num_bytes, número de bytes que son almacenados bajo el identificador del objeto anteriormente transmitido; value_of_the_object, valor del objeto sobre el que se quiere actuar y que tendrá una longitud igual al valor de la variable num_bytes, anteriormente transmitida.
El dato command, como sea dicho anteriormente, sentenciará el modo en el que se estará trabajando durante ese ciclo de transmisión dependiendo del formato que tenga. Por un lado, en el modo Write, KNX manda hacia Arduino, a través de la herramienta de desarrollo BIM, la dirección de grupo del objeto y el valor que posee en ese momento junto con el resto de datos que se deben mandar por especificación del protocolo. Esta información se muestra a través de un interfaz de usuario. Por otro lado, en el modo Read, el usuario introduce por un interfaz el valor de la dirección de grupo sobre el que desea actuar y el valor que quiere asignarle a esa dirección. Una vez esto se ha especificado por el interfaz Arduino manda hacia KNX la información a través de la herramienta de desarrollo BIM. Cuando KNX la recibe procede a cambiar el valor del objeto de acuerdo con los datos enviados.
Los datos se transmitirán en el mismo orden en el que han sido descritos anteriormente, pues así lo marca el protocolo creado. Además una vez que un dato ha sido mandado por comunicación serie no se mandará el siguiente hasta que no se reciba la confirmación correspondiente de que el receptor de dicha información la recibió correctamente.
Con los procedimientos anteriormente descritos se realizó un interfaz capaz de hacer que el usuario de una instalación domótica pueda interactuar con KNX por medio del microcontrolador Arduino. Y de este modo tener potestad sobre el estado de la instalación domótica
Materias (normalizadas)
Microcontroladores
Departamento
Departamento de Tecnología Electrónica
Idioma
eng
Derechos
openAccess
Collections
- Trabajos Fin de Grado UVa [29685]
Files in this item
Except where otherwise noted, this item's license is described as Attribution-NonCommercial-NoDerivatives 4.0 International