Copy Link
Add to Bookmark
Report

SET 018 0x0d

  

-[ 0x0D ]--------------------------------------------------------------------
-[ EDIFICIOS INTELIGENTES ]--------------------------------------------------
-[ by FCA0000 ]-------------------------------------------------------SET-18-

Bueno, pues como l@s chic@s de SET pedian algun articulo sobre el apasionante
tema de la Inteligencia Artificial, pues me he decidido y voy a contar unas
cuantas cosas sobre teoria y una aplicacion practica: Edificios Inteligentes

Lo primero que se cuenta cuando se habla sobre IA es la eterna pregunta
?que es inteligencia?
Esto esto me parece una tonteria y no voy a entrar en el rollo filosofico.
Pero la IA es la manera de preparar un proceso para que una maquina sea
capaz de optimizarlo y ejecutarlo. Esta es la parte graciosa: hacer que
el programa (o lo que sea) aprenda de resultados anteriores. Para esto se
usa un soporte matematico basado en
-Calculo / Analisis numerico
-Logica
-Estadistica / Investigacion Operativa
conocimientos que se obtienen estudiando la carrera de Ciencias Exactas, tal
como el autor (yo) hizo.
Por encima de esto hay implementaciones (a veces tambien teoricas y no
practicas) orientadas a dar una solucion, tales como
-Teoria de grafos
-Algoritmos de busqueda
-Logica difusa
-Redes neuronales (o redes neuroticas :-)
-Sistemas expertos
-Algoritmos geneticos
-Metodos de Runge-Kutta
-Redes de pesos activos
-Backtracing
-y 1000 mas.

Con esto quiero decir que la IA es algo parecido a la musica: existen muchos
estilos diferentes, y cada uno sirve para una cosa. Te pueden gustar varios,
aunque en general cada problema ya indica su resolucion.
Y para no acabar aqui el articulo, voy a poner un caso practico.
Los llamados Edificios Inteligentes consisten en una
supraestructura que da un valor a~adido a la infraestructura de un
edificio, mediante la integracion de sistemas que operan entre si.
Ejemplos de sistemas:
-Aire Acondicionado (AA)
-Electricidad (EL)
-Alumbrado (AL)
-Circuito cerrado de television (CCTV)
-Cableado (CB)
-Redes de ordenadores (RE)
-Telefonia (TL)
-Buscapersonas (BU)
-Incendios (IC)
-Accesos/Presencia (ACC)
-Intrusion (INTR)
-Ascensores (ASC)
-Megafonia (MG)
-Sistema de Alimentacion Ininterrumpida (SAI)
-Agua Caliente/Fria (AG)
Estos sistemas pueden ser iniciales, finales, intermedios, o mixtos
Por ejemplo, el sistema de CCTV es final, y su inicial es INT, es
decir, INT-->CCTV
A su vez, si un incendio debe parar los ascensores cuando no hay gente en
el edificio, entonces INC+ACC->ASC
Como se puede suponer, el sistema se puede liar todo lo que uno quiera. Es
precisamente aqui cuando entra la IA.
En un lenguaje de logica (tal como PROLOG o LISP) o una herramienta CASE, se
programan todas la relaciones que se nos ocurran.
Ahora podria dar unas explicaciones de nomenclatura y regla logicas, pero
solo alargaria el articulo, asi que lo mejor es que os compreis un libro.
Por ejemplo:
NO INC => ASC
INC y NO ACC => NO ASC
INC => CCTV
NO ACC => NO AA
Notar que no es lo mismo NO ACC => NO AA que ACC => AA
Sin embargo, NO ACC => NO AA si es lo mismo que AA => ACC
Esto es lo que se llama "regla de la doble negacion"
El mundo de la logica esta lleno de estas reglas, que se contruyen a partir
de unicamente 4 axiomas, que son:
A y NO A <=> F donde F significa Falso, o Contradiccion
A o NO A <=> T donde T significa Cierto, o Suceso Seguro
(A y B => C) y NO A y C => B
NO (A y B) <=> NO A o NO B
De de aqui se sacan otras 14 reglas secundarias (leyes de Morgan) algunas
de las cuales parecen totalmente inutiles, y otras en cambio se usan mucho.
Por cultura, esto viene desde los griegos, y luego fueron depuradas por los
romanos; de ahi que algunas tengan nombres como "Tolendus Ponens", y
tambien "Ponendus Tolens", y otros latinajos mas.
Estas reglas estan inmersas en los lenguajes PROLOG y LISP, que las manejan
al igual que el lenguaje C maneja los punteros; es decir, sin coste.

Si en vez de estos 4 axiomas se usan otros distintos, se consiguen unos
mundos paralelos totalmente coherentes internamente, pero irreales desde
la experiencia humana.
(Ahora si que voy a filosofar: estos mundos paralelos no pueden coexistir
con el actual; las teorias y realidades, ya sean matematicas, fisicas, o
informaticas son totalmente incompatibles - desde la raiz)
La logica difusa es otra logica distinta, y no se basa en 4 axiomas, sino que
elimina los 2 primeros y los tomar como nuevas reglas de inferencia. Esto
obliga a darle un nuevo significado a los predicados "=>", "y", "o"

Bueno, sigamos con la practica antes de que decidas darte a la bebida.
En los Edificion Inteligentes se persiguen 2 conceptos: seguridad y
ahorro. Por ello se intentan
optimizar sistemas de alto coste, como el AA y el AL
Para el AL, inicialmente se hace ACC => AL
Esto es lo basico. Y nos ponemos a pensar:
INC => NO EE ? apagamos sistema electrico si hay incendio ?
INC => NO AL ? apagamos luces si hay incendio, para evitar cortocircuitos ?
CCTV => AL ? Si pretendemos ver lo que pasa, deberiamos tener luz
INTR => AL ? Si hay un intruso, le encendemos las luces ?
NO EL => NO AL ? Si no corriente, es posible encender las luces ?
Y entramos en el aspecto de la seguridad:
INC => NO EE SI: Las normativas lo aconsejan
INC => NO AL SI: Las normativas lo aconsejan
CCTV => AL SI: Porque estas camaras no tienen ajuste de ganancia
Y en el tema del ahorro
INTR => AL NO: Un intruso no merece que le encendamos las luces.
NO EL => NO AL SI: Asi se evita manipular los interruptores si no se usan.
Luego seguramente se nos ocurriran mas cosas. Pero por lo pronto metemos
estas clausulas en el programa.

Vamos con otro sistema: CCTV. Inicialmente INTR => CCTV
Y las preguntas de rigor
INC => CCTV ? Queremos ver los incendios ?
ACC => CCTV ? Queremos vigilar algunas areas ?
ASC => CCTV ? Queremos que las camaras graben los accesos a ascensores ?
La respuesta de seguridad:
ASC => CCTV NO: porque la gente se sentiria vigilada (en un edificio de
alta seguridad habria que elegir que SI )
ACC => CCTV SI: para vigilar el parking y la sala VIP
INC => CCTV SI: parece una buena medida se seguridad

Y lo mismo se hace con el resto de sistemas.
Entonces al ejecutar el programa, nos dice una serie de incongruencias:
INC => NO EE, para evitar cortocircuitos
NO EE => NO CCTV, porque sin corriente, las camaras no funcionan
pero por otro lado
INC => CCTV porque queremos ver los incendios.
Este es un problema tipico de cualquier sistema de IA: el deadlock, ping-pong
o callejon sin salida, que se suele solucionar afinando mas el problema.
Por ejemplo, si nos apoyamos en el sistema de BU, podemos saber si algun
responsable conoce ya el problema. Y decidimos una nueva regla: si hay alguien
que controla la situacion, apagamos las luces. Mientras haya caos, las
dejamos encendidas:
asi, sustituimos INC => NO EE por
INC y BU => NO EE
por supuesto, esto nos sigue dejando la cuestion del deadlock cuando NO BU
Afinamos un poco mas: separamos del sistema de EE uno nuevo: el sistema
de Electricidad de Emergencia (EEE), que a su vez lo unimos al SAI
Asi, es mas facil:
INC y BU => NO EE
INC y BU => EEE
INC y BU => SAI

Introducimos un nuevo sistema llamado agendas (AG), basado en la hora del dia.
Gracias a esto podemos encender las luces del exterior por la noche, encender
las calderas antes de que empiece el horario de trabajo, activar el sistema
de intrusion nocturno en las plantas, ....
Y ajustamos de nuevo todos los sistemas. Esto es practica habitual: un nuevo
sistema puede obligar a replantear el resto, dado que pueden aparecer
incompatibilidades entre las nuevas clausulas.
Una vez hecha la organizacion global de los sistemas, se pueden desglosar por
plantas, porque lo mas normal es que se divida el edificio en sotanos, planta
baja, plantas de oficinas, de viviendas, de servicios, plantas comunes, ...
Esto multiplica el programa de tamanio, pero no hay incompatibilidades nuevas.
Cuando llega la hora de hacer cosas especiales en estas plantas es cuando se
aprecia la potencia del programa, el lenguaje, y la IA; por ejemplo:
-Suponer que el acceso (a cada planta) es con una tarjeta magnetica; por
tanto, un numero unico.
-Se permite el acceso si el numero esta en una lista (o base de datos)
-Se deniega el acceso si la persona tiene alguna restriccion temporal
-Se permite el acceso si el area esta en lista de areas permitidas
-Se deniega el acceso si el area tiene alguna restriccion temporal
-Se permite el acceso si la hora esta en el rango de horario comun
-Se permite el acceso si la hora esta en el rango de horario individual
-Se deniega el acceso si no ha fichado para salir de otra area.
-Se deniega si hace menos de 5 segundos que ha entrado en otra area.
-Algunas tarjetas especiales pueden saltarse algunas de estas restricciones.
-Algunas tarjetas especiales tienen mas restricciones
Y al integrarlos con otros sistemas:
-Algunas tarjetas especiales hacen cosas en otros sistemas
-Todas las condiciones pueden variar segun el estado de otros sistemas
Por ejemplo:
6969696969 ES TARJETA
6969696969 EN LISTA_TARJETAS
(6969696969 EN FICHAJES) y (HORA NO EN HORARIO_TRABAJO) => NO ACC
NO ((6969696969 EN FICHAJES) y (AREA(6969696969) EN LISTA_AREAS)) => NO ACC
Esto no es igual que
(6969696969 EN FICHAJES) y (AREA(6969696969) EN LISTA_AREAS) => ACC, pues
esto permitiria el acceso incluso fuera de horario de trabajo. Es importante
saber pensar en negativo y en positivo.
(6969696969 EN FICHAJES) y (AREA(6969696969) EN AREAS_CLAUSURADAS) => NO ACC
(6969696969 EN FICHAJES) y ($HORA EN HORARIO_EDIFICIO) => ACC
(6969696969 EN FICHAJES) y ($HORA EN HORARIO(6969696969)) => ACC
(6969696969 EN FICHAJES) y (6969696969 EN PRESENTES) => NO ACC
(6969696969 EN FICHAJES) y (ULTIMO_FICHAJE(6969696969) > $HORA-5 ) => ACC

Al final se acaban teniendo miles de reglas que son las que hacen que el
sistema sea coherente. A veces esto hace que el sistema sea duro de
comprender, inentendible su comportamiento e imposible de conocer totalmente.
Pero de nuevo la IA viene en nuestro apoyo.
Es posible darle unas premisas, una pregunta, y hacer que la responda; incluso
te dice el camino que ha seguido para llegar a ese razonamiento.
Es entonces cuando el humano reprograma (o afina) esa clausula.
Se produce una retroalimentacion entre el sistema y el operario humano.
Cuantas mas pruebas se hagan, mas confianza se tiene en el sistema.

Otro paso que se suele dar es el uso de sistemas expertos que, tomando como
entrada varios problemas y sus soluciones, inventan nuevos problemas y
"aprenden" a encontrar sus soluciones. Si se hace que sea un sistema experto
el que alimente el sistema de razonamiento del edificio, es posible
automatizar el mecanismo de retroalimentacion.
Y el uso de un sistema de algoritmo genetico introduce pequenias variaciones
en los datos iniciales, viendo cual es el cambio en la respuesta del sistema.
Por fin, un sistema de backtracking permite reducir el numero de premisas del
edificio, aumentando su eficiencia.

En este momento, me gustaria presentar un sistema minimo, y otro real, pero
el minimo no ensenia nada, y el real es demasiado enrevesado como para
entenderlo en 10 minutos (nos costo desarrollarlo 3 meses a 4 personas)


Ahora un off-topic de IA, y un in-topic respecto a los edificios propiamente:
los gadgets, o "todos los cacharritos que se pueden usar".
Con el objetivo de que te animes a hacer que tu casa/chalet/cuarto/oficina
sea un poco inteligente, cuento las miles de cosas que se pueden poner. Hay
algunas baratas, las hay caras, otras las puedes hacer con el meccano, otras
con un soldador y unas resistencias, muchas dependen de un ordenador, tambien
hay extravagantes, inutiles, mejores de lo que parece, incluso algunas estan
prohibido su uso. Cuento algunas cosillas, y un precio (K=1000, M=1 000 000)
Seguro que los hay mas caros y mas baratos, y en muchos casos depende del
humor del vendedor.
Tambien puede que algunos precios o gadgets esten desfasados.

Rele: a partir de 5V/0V, sacan 250V/0V. Ej, para encender bombillas. 50Pts
Controlador Domestico: tarjeta con entradas/salidas. 8Entr/16Sal = 2KPts
Conversor Analogico->Digital: 300Pts
PC: cualquier ordenador Intel, desde 8086. Micro+placa+fuente alimentacion.
Controlador Maestro: PC o similar que contiene el sistema inteligente. 50KPts
Puerto paralelo del PC: Controlador Domestico de 4Entr/12Sal. 1KPts
Todos los cacharros de medicion o de actuacion cuentan con salida o entrada
analogica. Los de control son digitales, y algunos con protocolo serie.

ACCESOS:
lector casero: desde 2KPts. Analogico. Tu temporizas y mandas 100101001011...
lector de tarjetas magneticas de 2 bandas: 10KPts, programable RS-232
lector/grabador de tarjetas magneticas de 2 bandas: 25KPts
lector de tarjetas magneticas de 3 bandas: 25KPts
lector/grabador de tarjetas magneticas de 3 bandas: 45KPts
lector de tarjetas proximidad: 30KPts
lector de tarjetas chip: 20KPts
lector/grabador de tarjetas chip: 30KPts
lector/grabador de tarjetas chip eprom: 100KPts
cualquier lector, motorizado: +5KPts
cualquier lector, en caja bonita: +5KPts
cualquier lector, en caja anti-vandalismo: +10KPts
teclado de membrana: 1Kpts
teclado mecanizado: 5Kpts
caja de teclado: 1Kpts
pulsador miniatura 2mm x 2mm: 25Pts
pulsador tecla 8mm x 8mm : 50Pts (mejor comprarse un teclado en el rastro)
Grabador de etiquetas-pegatinas para tarjetas: 50KPts
Plastificador de tarjetas magneticas/chip: 15KPts
Sistema casero: con un casette viejo te haces un lector/grabador magnetico.
Funciona muy bien.

INTRUSION:
Detector de presencia por movimiento: 300 Pts. ajustable
Detector de presencia por infrarrojos: 500 Pts
Detector de presencia por laser: 5KPts
Detector de presencia por temperatura: 10KPts para sala 5m x 5m
Detector de presencia por electricidad estatica: 1KPts para habitacion 2x2
Detector de presencia al pisar: 100Pts por metro2
Contacto magnetico para puertas: 100Pts
Detector de rotura de cristales: 100Pts para 5cm x 5cm
Detector de rotura de cristales: 1KPts por metro (tira adhesiva al contorno)
Mecanizacion de persianas: 12KPts
Mecanizacion de puertas: 20KPts
Mecanizacion de vallas de tiendas y puertas de garaje: 100Kpts

AIRE ACONDICIONADO:
Sonda termica de temperatura ambiente: 100Pts
Sonda termica de rango amplio (-25§,75§) : 1KPts
Sonda termica de rango muy amplio: 10KPts o mas
Valvula (permite pasar mas o menos aire): 3KPts (calidad media)
Fan-coil (motor que mueve el aire) : 10KPts
Tubos: 800Pts por metro, 400Pts por codo
Aislante termico: 1200 por metro2
Maquinas de frio: desde 30KPts para 30metros cubicos (1 habitacion grande)
Maquinas de calor: desde 5KPts para 30metros cubicos.
Caldera: desde 200Kpts para 1000 litros
Enfriadora de agua: desde 400Kpts para 1000 litros
Ventilador: 3KPts
Sistema casero: ventilador + valvula en la calefaccion.

ELECTRICIDAD:
Contactor (interruptor de seguridad): 250Pts
Diferencial (fusible): 500Pts
Magnetotermico (fusible de seguridad): 1KPts
Cuadro electrico de baja tension: 4KPts
Cuadro electrico de media tension: 10KPts
Cuadro electrico de alta tension: 50KPts
Cable: segun ancho, numero de hilos, seguridad, apantallado, ...
Interruptores manuales: 2KPts
Cajas: desde 5KPts
Tubo pasacables: desde 200 Pts por metro

ALUMBRADO:
Bombilla y casquillo: 300Pts
Luminaria: desde 1KPts
Foco: desde 10KPts
Dimer (convierte 0V-5V en 0V-220V): 500Pts
Sonda luminica: 200Pts
Interruptor: desde 200Pts
Interruptor de varias posiciones: desde 500Pts
Potenciometro: desde 300Pts
Tubo pasacables: desde 50 Pts por metro
Sistema casero: velas, o hacer una visita nocturna a la obra mas cercana.

CCTV:
Camaras de B/N : desde 2KPts
Camaras color: desde 6KPts
Con lente ajustable: +1KPts
Con ajuste de ganancia: +1Kpts
Monitor B/N: desde 7KPts
Televisor: desde 15KPts
TV por TCP/IP (nueva tecnologia, oye): 40KPts
Partidor de imagen (4 en 1 monitor): 30KPts
Secuenciador de 4 imagenes: 30KPts. Programable: 40KPts
Secuenciador de 32 entradas, 8 salidas, programable: 300KPts
Tarjeta de captura de video para PC: 10KPts

CABLEADO:
Cableado estructurado:
Cable de fibra optica: 10Pts por metro. 50Pts por empalme.
Rack (armario) para 24 conexiones: 100KPts. de calidad.
Cableado telefonico:
Cable de 16 hilos: 20 Pts por metro.
Rack para 128 hilos: 50KPts
Cableado Coaxial (2 hilos): 10 Pts por metro. 30 Pts por conector
Rack para 32 conexiones: 40KPts

REDES:
Concentrador de 8 vias: 50KPts
Hub 10/100 de 5 vias: 70KPts
Router de 5 vias: 100KPts
Aqui la variedad es enorme.
Sistema casero: unirlos por el puerto paralelo o el serie.

TELEFONIA:
Telefono analogico: 2KPts
Contestador: 7KPts
Telefono digital: 5Kpts
Instalacion linea analogica: 20Kpts + 2Kpts al mes
Instalacion linea digital: 20Kpts + 4Kpts al mes
Centralita 4 lineas: 20KPts
Centralita 20 lineas + controlador Soft: 80Kpts
Que yo sepa, solo se puede contratar tendido de lineas con Telefonica
Instalacion linea Punto-Punto: 50Kpts
Alquiler Punto-Punto (64Kb): 100Kpts/mes
Alquiler T1 (1.500Kb) : 1200KPts/mes
Compras 20 yogures, te los comes, y haces un agujero en el fondo. Los unes
con un hilo. El alcance no es mucho, pero es barato. Tarifa plana.
Otra solucion: cuando compras una RDSI, tienes 2 canales, tienes derecho a 2
numeros de telefono, y la facilidad de marcar hasta 8 extensiones.

BUSCAPERSONAS:
Centralita + panel control + 8 receptores (solo codigo numerico): 800Kpts
Receptor numerico + datos : 40Kpts
Soft: 200Kpts
Casero: repartes telefonos moviles y marcas desde el modem.

INCENDIOS:
Detector humo: 2KPts
Detector temperatura: 2KPts
Sprinkel (salida de agua): 3KPts
Centralita: 200KPts
Soft: 200KPts. Pero es muy bueno
Alarmas sonoras: 1KPts
Puertas cortafuegos: desde 80KPts (con homologacion)
Techos y suelos ignifugos: desde 25KPts el metro cuadrado
Extintores: 12KPts
Fundas ignifugas para cables: 800Pts por metro
Sistema casero: termometros con detector maximo. Una tarjeta con tantas
entradas (digitales) como termometros. Una manguera con valvulas. Una tarjeta
con tantas salidas como valvulas. Aprovechas la salida y activas una luz de
emergencia en la zona.

ASCENSORES:
Ascensor 4 plazas: 400KPts, sin instalacion
Ascensor 12 plazas: 1500KPts
Centralita + Soft: 1000Pts
Sistema casero: escaleras

MEGAFONIA:
Altavoz: 500Pts
Controlador en Altavoz: 10Kpts
Centralita: 150Kpts con microfono, seleccion de zona y canal.
Sistema ambientacion musical: 200KPts con 25 zonas, 4 canales
Soft: 50KPts
Sistema casero: montas un cableado para cada altavoz, un tarjeta con tantos
reles como altavoces, 1 tarjeta de sonido para salida, otra para entrada, y
un amplificador. Te haces el software y sacas .Wav

SAI:
Minimo (2 ordenadores, 500W, 2 horas): 150KPts
Medio (todo el triple): 500KPts
Suelen incluir una senial que indica cuando se va a acabar.
Soft: 200KPts.

OTROS:
Anemometro (para medir la velocidad del aire): 1KPts
Detector Sismico: 5KPts el casero, 200KPts uno profesional
Pluviometro: 2Kpts el casero.


Si todo esto te lo instala un chapuzas, sumar un 20% (garantia 1 anio)
Si todo esto te lo instala un profesional homologado, sumar un 40% (1 anio)
Instalacion de un profesional de la empresa fabricante, sumar un 80% (3 anios)

En todos los casos, el cableado necesario no se incluye.
Cuando un sistema incluye soft, se entiende que es tanto tener un protocolo,
como un programa que hace uso de ese protocolo. Si decides hacerte tu mismo
el programa, solo hace falta que el sistema posea capacidad de ser controlable
por soft. Esto suele costar un 25%-50% del coste.



Otra cosa:
Hace ya mucho tiempo que se han desarrollado varios protocolos para controlar
objetos mas o menos caseros (luces, sonido, interruptores, ...) y de estos
cabe destacar EuroBUS y x10.
EuroBUS es bastante profesional, pero a mi parecer esta demasiado orientado
al control electrico de la senial: Electricidad, Aire acondicionado, Incendios
y SAI son sistemas que se manejan bien, pero Accesos, CCTV, Telefonia, que son
mas orientados a un protocolo de alto nivel, son imposibles de controlar.
X10 le pasa lo mismo, pero esta orientado a sistemas mas caseros, tales como
control de luces, interruptores, alarmas, ... y ademas se usa casi unicamente
en los USA. Pero para iniciarse, esta bastante bien.
Otra propuesta que parece empezar a marcar diferencias es manejar los
dispositivos mediante comandos SNMP (Simple Network Management Protocol).
Es un protocolo que funciona sobre TCP/IP (proximamente sobre IPX y otros),
y permite interrogar y ordenar a los gadgets. Todos los cacharritos que lo
soportan actualmente son orientados a red (Routers, Bridges, Ordenadores, pero
tambien impresoras, modems y scaners), pero lentamente van aumentando con
cacharros mas variados, principalmente centralitas (de incendios, telefonos,
SAI, ...), dado que controlar los detectores, motores, altavoces requeriria
poner un interface de red en cada uno de estos elemento de campo.
Otro de los sistemas mas comunes se llama SCADA, y se basa tambien en un
sistema de control de aparatos mas o menos inteligentes que a su vez
controlan aparatos de menor capacidad, pero mayor especializacion.
Dado que el protocolo SCADA es comun para muchos fabricantes, parece que es
una gran promesa para el futuro. Pero lleva asi mas de 15 anios!
Tambien mencionar que el Sistema Operativo QNX se instala en pequenios
ordenadores de control, y, a traves de modulos especificos para los gadgets,
es bastante potente. El tema es muy largo para comentarlo, y no es tan del
dominio publico como cabria esperarse.
Una casa con la que he trabajado y que me gusta mucho es ANDOVER CONTROLS.
Tienen gran variedad de controladores, tanto maestros como esclavos.
Los maestros son ordenadores industriales: procesador 68040, 8 Mg de memoria,
Ethernet, totalmente programables en lenguaje de alto nivel, multitarea,
puertos serie y paralelo, 2 dias de autonomia sin alimentacion,
y muy resistentes en entornos agresivos.
Los esclavos suelen usan un 68HC11 o similar, y los hay de muchos tipos:
varias entradas/salidas analogicas/digitales, pantallas tactiles, sondas de
temperatura, displays, arquitectura en red RS232/RS485, programables a alto
nivel, y pueden funcionar aunque pierdan la conexion con su maestro.
El sistema se llama INFINITY y, aunque es caro, para mi es el mejor.


A continuacion muestro el sistema que he instalado en mi casa. Esta operativo
las 24 horas del dia, y lo oriento a la comodidad, no al ahorro energetico.
En realidad, lo tengo para sorprender a la gente que me visita.

Mi casa tiene salon, dormitorio, cocina, excusado (:-), estudio, pasillo.

Mi sistema tiene como corazon un PC con
-Microprocesador 386
-Caja, fuente alimentacion.
-4Mg de memoria
-Disquetera
-2 puertos serie, 1 paralelo
-Interface de 2 Joysticks (2*2 entradas analogicas, 3*2 digitales)
-Sin monitor, sin disco duro,
-3 controladores domesticos, cada uno 16 entradas digitales, 8 salidas digit.
-2 controladores domesticos, cada uno 2 entradas analogicas, 2 salidas analog.
-Tarjeta de sonido, aprovechando tambien la entrada MIDI
-Teclado, usado como 101 entradas analogicas (cada tecla), sabiendo que a
veces se pueden pulsar hasta 15 teclas simultaneamente, y otras veces solo 2.
-Tarjeta extra 2 puertos serie, 1 paralelo

El ordenador arranca desde disquete. Carga el programa en memoria, y lo
ejecuta. Cada poco tiempo guarda variables en el disco.
Si hay un cambio de disco, lee las nuevas variables del disco, y sigue.
Si hay un cambio de disco, lee el nuevo programa del disco, y sigue.
Asi lo controlo facilmente desde mi PC "de verdad".
Tambien lo conecto por un puerto serie al PC maestro, para monitorizar.

Lo primero: las luces
Tengo 14 lamparas, 1 de ellas con tubo fluorescente, y 13 bombillas.
Pongo 8 dimmers.
4 interruptores on/off (4 entradas constantes),
3 interruptores de potenciometro 4 posiciones (off, poco, mucho, total: 3*4
entradas constantes)
7 pulsadores temporizados (7 entradas con control de tiempo; hay que pulsar
solo un ratito para activarlas)
Sumar 3 sondas de luminosidad.
El cableado en algunos puntos tiene que ser doble (por ejemplo, para encender
las luces del pasillo tanto desde un extremo como del otro).
Un interruptor on/off funciona muy facil: el programa mira cuanto vale esa
entrada, y si cambia, manda la orden a la salida; se activa el rele, y se
enciende (o se apaga) la luz.
Cada una de las 4 posiciones de un interruptor de 4 posiciones fuerza que se
cierre un cirtuito, haciendo que se pulse una tecla. Esto es una entrada para
el programa, que se encarga de activar un dimmer.
El funcionamiento de un dimmer es sencillo: se manda tension de 5V. durante un
tiempo; si este tiempo es inferior a 0.2 segundos, se apaga; si es superior a
1.2 segundos, se enciende al 100%; si esta entre 0.2 y 1.2 , se enciende a un
porcentaje equivalente, por ejemplo, 0.3 sg encienden al 10%, 1.1 al 90%
Los pulsadores temporizados funcionan (como yo quiera) de manera que en
funcion del tiempo que est‚n pulsados, consideren una entrada u otra; si se
pulsan durante menos de 0.2 segundos, apagan la luz; mas de 1.2 sg, encienden
al 100%; cualquier tiempo intermedio, una luz proporcional.
Por esto es bastante importante la temporizacion, tanto de entrada como de
salida.

while(1)
{
tiempo_anterior=tiempo_actual;
tiempo_actual=time();
tiempo_intervalo=tiempo_actual-tiempo_anterior;
if(salon->interruptor1->pulsado)
salon->interruptor1->tiempo_pulsado+=tiempo_intervalo;
if(salon->interruptor2->pulsado)
salon->interruptor2->tiempo_pulsado+=tiempo_intervalo;
if(estudio->interruptor1->pulsado)
estudio->interruptor1->tiempo_pulsado+=tiempo_intervalo;

if(estudio->luz1->dimmer->activo)
estudio->luz1->dimmer->activo+=tiempo_intervalo;
if(estudio->luz1->dimmer->activo)
desactiva_dimmer(estudio->luz1->dimmer);

... // aqui se pierde mucho tiempo mirando las entradas

if(estudio->interruptor1->cambio)
{
estudio->interruptor1->cambio=OFF;
estudio->interruptor1->tiempo_pulsado=0;
if(estudio->interruptor1->tiempo_pulsado <=0.2 )
pon_valor_luz(estudio->luz1, 0.2);
// este valor tambien se temporiza en el bucle principal
if(estudio->interruptor1->tiempo_pulsado >=1.2 )
pon_valor_luz(estudio->luz1, 1.2);
if(estudio->interruptor1->tiempo_pulsado >0.2 &&
estudio->interruptor1->tiempo_pulsado <1.2)
pon_valor_luz(estudio->luz1, estudio->interruptor1->tiempo_pulsado);
// esta funcion tambien pone otros datos: hora de encendido, ...
}

}

Ahora se une el sistema de iluminacion por deteccion de luminosidad:
Este sistema se activa (en una habitacion) si ha pasado mas de media hora
desde que se pulso un interruptor.
Si esta operativo, cada 5 minutos se mira la luminosidad que hay, y se
encienden/apagan las luces o se ajustan los dimmers.

while(1)
{
if(estudio->luminosidad->activo)
if(estudio->luminosidad->ultimo_tiempo_revisado > 5*60+tiempo_actual )
if(estudio->luminosidad->valor > 10+estudio->luminosidad->ultimo_valor ||
estudio->luminosidad->valor < 10-estudio->luminosidad->ultimo_valor )
{
estudio->interruptor1->tiempo_pulsado=estudio->luminosidad->valor;
estudio->interruptor1->cambio=OFF;
// un sistema simula al otro
}
... // siguen las comprobaciones anteriores
... // siguen las actuaciones anteriores
}

Y asi con todos. Como ya he dicho mas de una vez, este sistema acaba siendo
dificil de entender. Sobre todo, a veces no funciona, debido a la interaccion
de unos sistemas con otros.
Entonces se tiende a un sistema multitarea: me invento un sistema de agendas
que es capaz de mandarse a si mismo cosas para hacer, metiendolas en un cola.
Esto transforma el sistema en uno totalmente modular, con la desventaja que
hay que mantaner un monton de variables globales. Pero, con un poco de tecnica
de programacion orientada a objetos, se soluciona.

Una de las partes mas emocionantes es el reconocimento de ordenes por voz.
Le dicto unas cuantas palabras (encender, mucho, pasillo, dentro de x horas,
siete, abre, ... ) y unas cuantas estructuras semanticas:
[accion] [ calific.cantidad | numeros ] [calific.temporales] [objeto] [lugar]
Para que entienda ordenes del tipo
"encender poco luz salon"
o incluso "luz", "mas frio aqui", "abrir ochenta por cien ventana estudio", ..
Tuve que instalar 8 microfonos, hacer que solo escuchara a uno de ellos, y
8 altavoces para saber lo que habia entendido.
Al principio decidi que antes de hablar, tenia que pulsar un boton, al igual
que se hace en los interfonos que conectan un despacho con otro, pero era
mucho mas impresionante que no tuviera que hacer esto, y le pudiera hablar
desde cualquier sitio.
Al principio me costo que no entendiera las palabras de la tele ni de la
musica, pero afinando para que solo reconociera mi voz. Me vi obligado a usar
una palabra clave antes de mandar una orden (por cierto, asi cuando le hablo,
baja el volumen de la tele - si lo cree conveniente)
Ahora es im-presionante cuando digo
"Sebastian, abre la puerta" y el contacto magnetico se libera y abre la puerta
"Igor, sube volumen Compact Disc", "Igor, llama por telefono a mi hermana"
"Ambrosio, me gustaria un Ferrero-Roche" (hasta ahora, esto no funciona).
Si se conecta la tarjeta de sonido al telefono, y se pone el contestador
automatico, tambien es posible mandarle ordenes para que enchufe algo; asi es
posible tener las luces de encendidas antas de llegar, o la calefaccion, o
mandr programar el video si se te ha olvidado y estas en la calle.

Una de la cosas que mas me costo es el control de la tele, el video, y la
cadena de sonido, asi que lo voy a explicar:
Casi todos estos aparatos se pueden manejar con un mando a distancia, asi que
abriendo el mando, se ve la matriz de conexiones que se activan cuando se
pulsa alguna tecla. Por tanto se puede usar una tarjeta de salidas digitales
para activar los reles que simulan las teclas.
Pero yendo un poco mas alla, estos aparatos mandan una onda (infrarrojos o
ultrasonidos), que se puede producir con una tarjeta de salidas analogicas
acoplada al mismo dispositivo. Lo malo de esto es que entonces te quedas sin
mando a distancia. Si se consigue un emisor de infrarrojos multifrecuencia,
o se saca de algun mando de otra tele/video/hifi , suele ser facil ajustarlo.
Quizas necesites un osciloscopio, conversores Digital-Analogico, y algun
amplificador de senial.

Tambien le he puesto un sistema de alimentacion ininterrumpida (UPS o SAI)
para cuando falle la red electrica (hasta ahora no me ha pasado).
Por supuesto que el sistema tambien funciona en manual. Lo que no se es que va
a pasar cuando me mude de casa.

Algunas cosas que se pueden hacer:
subir/bajar temperatura
encender/apagar/variar luces
abrir cerraduras de puerta (con contacto magnetico = 1 salida digital)
abrir ventanas (un motor, una salida dig. y una entrada dig. de 4 posiciones)
hacer de contestador automatico
llamar por telefono (al tabajo o a casa, dependiendo de la hora)
hacer cosas si le llamo por telefono
cambiar la tele de canal
programar el video
autoajustarse

Algunas cosas que NO se pueden hacer
cocinar, fregar, planchar, limpiar, lavar, hacer la cama, ...
cambiar una cinta de casette
autoprogramarse

En general, para hacer algo asi hay que saber (o conocer a alguien que sepa)
programar, electronica del PC, electronica analogico/digital, electricidad
basica, mecanica media,
y tener tiempo, ganas y dinero. Espero que alguien se anime.
Al igual que hay una definicion de hacker que dice que es alguien que sabe
mucho de ordenadores y tiene interes en aprender, entenderlos, y manejarlos
hasta el tope, el campo de la domotica es igual de interesante, y es facil
empezar.


← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT