Control Domótica con Excel


Después de un tiempo sin hacer ninguna entrada al Blog, vuelvo hoy con esta nueva aportación, que como buen excelfanático, no podía ser otra cosa que algo que demuestre lo versátil que es esta herramienta.

Pués bien, me he estado ocupando últimamente de ver cómo podía conseguir llevar a cabo un proyecto domótico modesto, como siempre con Excel y con la tarjeta USB (Velleman k-8055) y unos cuantos componentes más.

Primeramente le fuí dando forma al diseño de una interface gráfica, que como panel de mando y control sirviese tanto para la pantalla del ordenador, como para la de un Smartphone o una Tableta.

Le fui metiendo código a las macros para su manejo, hice pruebas simuladas, probé también a manejar el tinglado por control remoto con las aplicaciones de Escritorio Remoto Splashtop y Teamviewer, tanto desde un Smartphone (Android) como desde otro ordenador, y, al ver que iba dejándose hacer a nivel de software, pasé a la acción con el hartware, o sea a añadirle artilugios electrónicos a la tarjeta USB, y a meter todo en una caja TuperWare que sirviera de consola de mando, recepción y emisión de comandos por radiofrecuencia.

En fin, al final me lié y probando con material lowcost, por si las pruebas se quedaban en un fiasco, poco a poco y con paciencia, al ver que funcionaba mejor de lo que me esperaba, volví al software y hasta le añadí sonidos y voz a las alarmas y comandos, cosa que nunca había hecho con Excel y que en definitiva, es para lo que estoy yo aquí, para demostrar que con Excel se puede, hacer “Todo y más”.

Bueno, pués el resultado para que lo comprobeís, os lo muestro a continuación:

                                             Sistema Domótico controlado con Excel

Aquí se puede apreciar el conjunto funcionando, más abajo podreís ver un video en el
que se puede ver el funcionamiento.



Y ahora os muestro la consola de mando.



                                                                 Consola de Mando


Y para más abundamiento la misma vista explicada:



                                                     Consola de Mando Explicada


Y antes de que inserte el video y más abajo los enlaces para que podaís descargar los
archivos que os hagan falta a los interesados en el tema, simplemente comentaros que
el alcance de la señal de radiofrecuencia depende mucho de la calidad y potencia de los
componentes, yo los utilicé de 20 a 30 m de alcance, pero también los ví de 100 y 200 m.


Las 4 salidas digitales las utilizo todas, de las 5 entradas digitales aún solamente utilizo
una, y todavía tengo sin darle utilidad a las 2 entradas y a las 2 salidas analógicas, pero
tanto unas como otras funcionan perfectamente.

Domótica con Excel



En el video que sigue a continuación podréis haceros mejor una composición de lugar,
tenéis que disculparme la mala calidad del mismo, no sé como tengo paciencia para

meterme en estos berenjenales y no la tengo para hacer un vídeo decente.
No os olvidéis de subir el volumen para poder escuchar las alarmas y los avisos de voz.

Para ver el VIDEO en YouTube sobre Domótica con Excel   Pinchar Aquí

Para verlo directamente en el blog pinchar abajo sobre él



Podéis descargar desde el enlace siguiente la hoja de Excel "DomoCar1.xlsm". Se debe de abrir con Excel y se deben de activar las macros.

Control Domótico con Excel - DomoCar1

Y desde este la carpeta con las DLL. Elegir la que os vaya bien

DLL para Tarjeta de Controll de puerto USB de Velleman -k8055-

Y desde aquí una carpeta con Sonidos Aviso y con voces.

Sonidos, avisos y voces

Importante:

Debe de utilizarse con Excel de 32 bits., ya que de lo contrario os pedirá que actualicéis la compilación del código a 64 bits. Eso se hace fácilmente siguiendo las instrucciones que os indica Excel, pero solamente servirá para ver el proyecto y el código porque las DLL son de 32 bits y no funcionan con 64. Velleman ya tiene DLL de 64 bit para otras tarjetas pero no para la que aquí se usa. Al menos yo no la encontré 


De todas formas, cada uno puede cambiar y mejorar el código a su antojo, lo mismo
que la presentación del Panel.
                           
Quien quiera ver una Demo operativa sencilla del Controll del Puerto USB, puede hacerlo haciendo click sobre el enlace siguiente y descargando el archivo para abrirlo con una Excel de 32 bits.

 Demo Probada con Excel 2007 de 32 bits. Funciona así:

Con Procesador de 64 bits, Windows de 64 bits y con Excel de 32 bits se debe de copiar el archivo k8055d.dll dentro del directorio \Windows\SysWOW64.

Con procesador de 32 bits, Windows de 32 bits y con Excel de 32 bits se debe de copiar el l archivo k8055d.dll dentro del directorio \Windows\System32.

Con Excel de 64 bits se puede actualizar el código fácilmente de 32 a 64 bits, según las indicaciones de VBA, pero no funcionará  de todos modos debido a que la k8055d.dll es de 32 bits y no la puede encontrar.

Demo puerto USB con Excel - CON Lib k8055d.dll

Si aún así no funcionase por cualquier causa, se puede descargar la versión siguiente, que al tener la Librería k8055d.dll deshabilitada debería poder utilizarse en cualquier situación y circunstancia, para poder ver el funcionamiento de la Demo de forma virtual en pantalla.

Demo puerto USB con Excel - SIN Lib k8055d.dll

Los manuales en español los podéis descargar desde  aquí:

Manual DLL para Tarjeta Velleman Control Puerto USB k8055

Manual Tarjeta Velleman Control Puerto USB k8055

Y el esquema de la Tarjeta Velleman para Control Puerto USB con Excel desde este enlace:

Esquema Tarjeta k8055


O desde Velleman:

http://www.vellemanprojects.eu/products/view/?id=351346

http://www.vellemanprojects.eu/

Podéis ver también la Página en este Blog: 


Control Puerto USB con Excel



Disfrutadlos.

Saludos a un paso de mi 70 cumpleaños.


Publicado el 15-03-2014
Revisado el 02-07-2017

1 comentario:

  1. Buenos días Guillermo,
    gracias por responder, no quiero ser repetitivo pero la verdad es que usted ha hecho un trabajo excelente.

    Le comento, yo programo 2 PLC´s, un tanto básico pero poseen puerto de comunicación RS-485, y Ethernet, lo que deseo hacer es comunicar PLC a Excel, en fin yo desearía enviar ciertos datos de un PLC mediante puerto serial (RS-485-Modbus) a las celdas de Excel, para ello se debe poder seleccionar el puerto, la velocidad, paridad, cantidad de bits transmitido, bits de parada por ejemplo COM1 9600 ( 8,N,1), (maestro / esclavo) es muy similar a la comunicación serial RS232, los datos por ejemplo medida de temperatura u otra variable, mediante un sensor y transductor que sense y transforme la magnitud a un valor de tensión o corriente, o bien si una variable (bit) es 0 ó 1 lógico, de modo que se pueda graficar la variación de una variable, el estado de un sistema si está activo o no mediante la información de bits.
    A su desearía vez crear botones, para poder comandar un evento dar marcha/parada, enviar un valor numérico, o texto, hacia el PLC.
    Por ejemplo un compañero hace tiempo me brindó un programa en VB6, para controlar un microcontrolador.
    Creo que se usaba la librería MSCOM, para establecer la comunicación, pero aquí no tengo no idea por empezar.
    ¿Trabajando en VBA que se usa para establecer la comunicación entre dos equipos (VBA/Excel y viceversa)? ¿Qué herramienta se usa para establecer la comunicación? ¿Depende del sistema operativo? Mi sistema es Windows 7 64 bits.
    La idea es hacer correr un programa ya sea RS-232 en VBA que vaya almacenando el varol de una variable, después de un cierto tiempo almacene otro dato en la celda de abajo y así hasta cumplir un ciclo, para poder graficarlo y como poder crear un botón que asigne un valor numérico a una dirección de memoria del PLC.

    Me gustaría que pasara un ejemplo sencillo para luego y metiéndome en el lenguaje de programación. Como veo se pueden realizar cosas muy interesantes y variadas.
    Eso es lo que estoy necesitando, para arrancar. Si usted me puede ayudar en ello se lo agradecería enormemente.

    Saludos, Cordiales Luis A. Longo

    ResponderEliminar