Ionic 2 con Visual Studio 2017


En los últimos dos años, millones de desarrolladores de casi todas las industrias del mundo han construido más de 1,2 millones de aplicaciones móviles con Ionic.

Cuando se inicio Ionic en 2013, sus creadores sólo querían hacer una mejor manera para que los desarrolladores web utilizasen sus habilidades existentes para crear aplicaciones para las tiendas de aplicaciones.

Hoy en día, Ionic es la tecnología de desarrollo móvil multiplataforma más popular del mundo, impulsando el rápido crecimiento de muchas  startups .

Pero sus creadores no están satisfechos con Ionic buscando  habilitar no sólo a la actual generación de desarrolladores móviles, sino también a los millones que se están dando cuenta de que también pueden construir para estos increíbles dispositivos.

Con Ionic 2, han mejorado considerablemente el rendimiento,  reduciendo la complejidad del código que se necesita escribir haciendo hecho posible la creación de aplicaciones completamente personalizadas que compiten con las mejores aplicaciones del mundo.

Ionic 2 va a cambiar lo que piensa acerca de las aplicaciones móviles y el futuro de la web para siempre.

Por extraño  que pueda parecer es posible usar Ionic 2 con Visual  Studio con el plugin de Córdova.

Los pasos para instalar  Ionic  2  con Visual Studio  son los siguientes:

  • Si aún no lo ha hecho, instale Visual Studio 2017.   Bajo las portadas, las aplicaciones de Ionic son aplicaciones de Apache Cordova, necesitará un entorno de desarrollo de Cordova funcional antes de poder usarlo con Ionic por lo que en primer lugar compruebe que puede crear y ejecutar la aplicación predeterminada Cordova Blank.
  • En Visual Studio, abra el menú Archivo, seleccione Nuevo y, a continuación, Proyecto. En el cuadro de diálogo del nuevo proyecto, expanda la sección de plantillas de JavaScript, seleccione Aplicaciones de Apache Cordova y, a continuación, elija la plantilla de aplicación en blanco (Apache Cordova).
  • Entregue al nuevo proyecto un nombre y una ubicación y luego haga clic en el botón Aceptar.
  • Presione F5 para generar y ejecutar el nuevo proyecto en el emulador de ondulación. El navegador Chrome debe abrir y mostrar el contenido de la aplicación. blankcordova.PNG
  • Instale la plantilla de Ionic en Visual Studio seleccionando el menú Herramientas, luego Extensiones y actualizaciones
  •  En el cuadro de diálogo Extensiones y actualizaciones, seleccione Online.
  • En el cuadro de búsqueda situado en la esquina superior derecha del cuadro de diálogo, escriba Ionic 2.
  • Seleccione la opción Ionic 2 RC Templates en la lista. Haga clic en el botón Descargar para iniciar la instalación.

ionic2.PNG

  • Ahora llega el momento de actualizar para que cargue la plantilla de Ionic 2, para lo que nos iremos a Actualizaciones de Productos

actualizacion.PNG

  • Pulsaremos “Modificar” para proceder a instalar las plantillas de Ionic 2

visx.PNG

  • Una vez finalizado el proceso podemos comprobar  en Nuevo proyecto–>Instalado–>TypeScript  que tenemos acceso   a las plantilla de Ionic 2

iomic2.PNG

Anuncios

Sencillo exobrazo


Puede parecer una banalidad , pero la idea detrás de este prototipo es muy interesante ya que  puede suponer una ayuda importante   a la movilidad,  pues esta  assietncia puede ser especialmente importante para los ancianos y otras personas que necesitan este tipo de ayuda en la vida cotidiana.

El sistema que sugieren sus creadores destaca por su simplicidad : una estructura de aluminio  para sujetar el brazo, un motor y una placa Arduino con su correspondiente escudo (cuyos detalles, por cierto, han publicado en hackaday.com) ,

Nos explican   que en la construcción del  exo-brazo buscaban  que fuese relativamente barato, sencillo y potente que permitiera  un uso fácil del mismo , por lo cual  construir su prototipo no deberia costar mas de 100$ ,  lo cual es un precio bastante razonable ,sobre todo si nos vamos a soluciones que se  estan desarrollando la industria.

El desarrollo de este proyecto comenzó centrándose más en el control del brazo y luego en el propio diseño, por lo que  tal vez el  objetivo número de sus creadores  es   hacer que el control de ExoArm sea tan barato y tan intuitivo como sea posible.

En el siguiente video podemos verlo en acción:

Como podemos  apreciar, hay una estructura articulada de aluminio  y precisamente en la articulación esta el motor (en el codo) , aunque  sugieren que en otros diseños futuros  también proveen implementar  un  actuador en el hombro( de hecho el shield empleado admite dos motores).

Este  exo-brazo tiene   tambien apoyo trasero, de modo que todo el peso se distribuye uniformemente a su cuerpo siendo la capacidad de elevación  alrededor de 10 kg máximo o 22 libras.

 

Electrónica

 

 

modulo.PNG

 

 

Ademas de la placa Arduino, un componente básico es el driver del motor VNH2SP30 ,el cual es esencialmente una versión en rampa del escudo de motor Ardumoto. Esta placa se presenta como un escudo que  se conecta encima de Arduino  y es de bajo coste ( unos 6,5€ en Amazon).

Para este  Shield se usa  un par de drivers de motor de puente completo VNH2SP30. También incluye los circuitos de soporte para que esta placa sea capaz de controlar  un par de motores de alta corriente ,  aunque para esta aplicacion solo se usa uno .

El VIN y el motor son lanzados para  terminales de tornillo de 5mm , lo que facilita la conexión de cables de mayor calibre.

Al utilizar este escudo en aplicaciones de alta demanda extrema puede ser necesario mejorar el rendimiento térmico con un disipador de calor o ventilador y soldar los cables directamente a la placa en lugar de usar un terminal de tornillo (tenga en cuenta la alta corriente de este) , aunque  cuando se utiliza el escudo en corrientes de hasta 6A los chips apenas llegarán a ser perceptiblemente calientes.

Resumidamente  esta son algunas de las características del escudo empleado:

  • Voltaje: max. 16V
  • Regimen de corriente: 30A maximo 
  • Corriente permanente: 14 A
  • Resistencia MOSFET (solo ida): 19 m & OHgr;
  • Frecuencia PWM: 20 kHz Max.
  • Tamano placa: 6 * 5,2 * 2cm / 2,4 * 2 * 0,8pulg
  • Peso : 23 g / 0,8 oz

Una vez resuelto el driver, respecto a Arduino , los pines que se requieren , en la aplicación  son los pines siguientes:

  • Pines 3 y 4  como salidas binarias para configurar el motor vía el driver del motor VNH2SP30
  • Pin 5  como salida analógica para escribir el dato en el el driver del motor VNH2SP30
  • Pin 2  como entrada analógica para el encoder solidario al eje del motor para saber la posición de la articulación
  • Pines 8 como entrada binaria para ordenar subir la articulación via el motor
  • Pines 9  como entrada binaria para ordenar bajar  la articulación vía el motor

 

 

Antes de ver el codigo  final ,  es interesante apreciar como el control del motor se hace fijando los pins 3  y 4 a un valor  y luego sacando un valor analogico en el pin 5, por ejemplo, parar mover  arriba el motor   se usa esta función:

void moveup(float writemotor){ /
writemotor = map(writemotor, 0, -80, 255, 0);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
analogWrite(5, writemotor);

Y de forma similar para mover hacia  abajo :

void movedown(float writemotor){ 

writemotor = map(writemotor, 0,-255, 0, 255);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
analogWrite(5, writemotor);
}

Simplemente para  parar el moto,r   sacamos un  valor cero  en el pin 5 usan esta otra función:

void stopmove(){ //parar el motor
digitalWrite(3, LOW);
digitalWrite(4, LOW);
analogWrite(5, 0);
}

 

Una función  muy importante  es conocer la posición de la articulación  gracias a que hay conectado un potenciómetro solidario al aje de modo  que  capturando  el valor  de la salida del potenciómetro podemos   conocer el angulo ,gracias  al  siguiente código:

float errorSum;
float Kp = 2;
float Ki = 0;

float computePID(int setpoint){    
angle = analogRead(2);
angle = map(angle, 0, 344, 0, 90); 

double time_elapsed = micros();
dtrate = (time_elapsed – last) / 1000.f;
last = time_elapsed;

float error = setpoint – angle;
errorSum += error * dtrate;
errorSum = constrain(errorSum, -255, 255);

return (Kp * error) + (Ki * errorSum);

}

Por ultimo,  en la función loop miramos continuamente  los valores binarios de los pines 8 y 9  ,y en función de su estado, llamaremos a alguna de las rutinas anteriores:

 

void loop()   //bucle principal de ejecución
{
int program_runtime = millis();

int readingUp = digitalRead(8);
int readingDown = digitalRead(9);

if(readingUp == 1 && readingDown == 0){
if(program_runtime – previousMillis > interval) {
previousMillis = program_runtime;
Step -= 5;
}

}
if(readingDown == 1 && readingUp == 0) {
if(program_runtime – previousMillis > interval) {
previousMillis = program_runtime;
Step += 5;
}

 

Código arduino

El procesamiento de control como decíamos se hace con un Arduino, por lo que el código es  bastante fácil de entender y modificar cuanto se quiera para mejorarlo o adaptarlo a cada necesidad:

 

#include <ArduinoTimer.h>
#include <CircularBuffer.h>
#include <CommandHandler.h>
#include <CommandProcessor.h>
#include <DataStore.h>
#include <DeviceAddress.h>
#include <EEPROMStore.h>
#include <Filter.h>
#include <MegunoLink.h>
#include <MessageHeaders.h>

#include “MegunoLink.h” /Funciones útiles para comunicarse con MegunoLink Pro.

#include “filter.h”
#include “Servo.h”

TimePlot plot;

int potVal;
int angle;
float dtrate;
double last;

ExponentialFilter FilteredMuscleValue(5, 20); / peso de la derecha, valor de inicio izquierdo

void moveup(float writemotor){ //mover  arriba el motor
writemotor = map(writemotor, 0, -80, 255, 0);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
analogWrite(5, writemotor);

}

void stopmove(){ //parar el motor
digitalWrite(3, LOW);
digitalWrite(4, LOW);
analogWrite(5, 0);
}

void movedown(float writemotor){ //mover hacia  abajo

writemotor = map(writemotor, 0,-255, 0, 255);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
analogWrite(5, writemotor);
}

float errorSum;
float Kp = 2;
float Ki = 0;

float computePID(int setpoint){    //función de  calculo de la posición del encoder
angle = analogRead(2);
angle = map(angle, 0, 344, 0, 90); // dejanski kot
Serial.print(angle);

double time_elapsed = micros();
dtrate = (time_elapsed – last) / 1000.f;
last = time_elapsed;

float error = setpoint – angle;
errorSum += error * dtrate;
errorSum = constrain(errorSum, -255, 255);
//Serial.println(error);
return (Kp * error) + (Ki * errorSum);

// Serial.println(time_elapsed, 5);
}

int Step = 0;

void setup()     //inicializacion del brazo
{
pinMode(8, INPUT);
pinMode(9, INPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
Serial.begin(9600);
Step = 0;
}

int k = 1;
int previousMillis = 0;
int interval = 50;

void loop()   //bucle principal de ejecución
{
int program_runtime = millis();

int readingUp = digitalRead(8);
int readingDown = digitalRead(9);

if(readingUp == 1 && readingDown == 0){
if(program_runtime – previousMillis > interval) {
previousMillis = program_runtime;
Step -= 5;
}

}
if(readingDown == 1 && readingUp == 0) {
if(program_runtime – previousMillis > interval) {
previousMillis = program_runtime;
Step += 5;
}

}
Step = constrain(Step, -150, 150);
if(readingDown == 0 && readingUp == 0) Step = 0;

//plot.SendData(“pid”, writemotor);
Serial.println(Step);
if(Step > 0) moveup(Step);
if(readingUp == 0 && readingDown == 0) stopmove();
if(Step < 0) movedown(Step);

}

Componentes necesarios

1 × calibrador de tensión con el amplificador de celda de carga
1 × Aluminio 4 x 30 x al menos 2000 mm
1 × Arduino Uno / Nano
1 × controlador de motor VNH2SP30
1 × Motor del limpiador del parabrisas del coche
1 × cables largos
1 × Potenciómetro
1 × Li-Po batería 3S 5500mAh
1 × Tornillos y tuercas. M4 y M6
1 × Cinta adhesiva
1 × Zipties
1 × Correas
1 × Placas de madera
1 × Tubo termorretráctil

 

 

En el siguiente vídeo el autor describe mas detalles de construcción   de este excelente  exo-brazo:

 

 

Mas información en https://hackaday.io/project/20663-assistive-exoskeleton-arm-exoarm#menu-description

Potente y efectiva alarma con notificaciones por SMS y email


Ahora  que llega el verano es muy importante monitorizar los accesos  a  nuestra segunda vivienda  sobre todo para estar al tanto de cualquier acceso no autorizado y emprender las medidas necesarias.

Ademas ,dada la gran dependencia del suministro de corriente alterna,  también es necesario  tener constancia de cualquier caída o reposición que haya en el suministro que es necesario estar  informados  sobre todo ahora que  se aproximan las vacaciones  , para realizar acciones correctivas como por ejemplo reponer   elementos de maniobra o protección pues todos sabemos las consecuencias de tener cortes prolongados de red : posibles  perdidas de alimentos por la falta de refrigeración,fallo en sistemas de alarmas, fallos en  automatismos como riego automático,climatización ,etc

 

Normalmente sistemas capaces  de monitorizar accesos,  así como también  el estado de suministro eléctrico  con la complicación que eso conlleva ( sin red también deben ser capaz de enviar notificaciones) requieren un hardware muy costoso

Afortunadamente  la solución que proponemos que proponemos escapa del planteamiento clásico  al no  necesitar ningún hardware especial ,por lo que es terriblemente sencilla, pues simplemente requiere  un viejo  terminal  android  y por supuesto  una  app que pueda gestionar tanto el acceso como el estado de la red

En el siguiente vídeo podemos ver esta solución en funcionamiento:

 

 

 

 La solución que proponemos es única, pues no es necesario adquirir ningún hardware adicional, ya que se basa en reutilizar un  viejo Smartphone con SO Android 4.1 (Yelly Bean) o superior que tengamos olvidado  en un cajón  , para pasar a gestionar tanto los accesos, como los cortes de red del suministro eléctrico de una vivienda o local.

Al viejo terminal habrá que insertar una SIM  ( por ejemplo de prepago)  instalar la aplicación gratuita  Seguricasa y   mantener el Smartphone conectado al cargador, para que desde ese momento, en cuanto defina en la app el número del teléfono y las cuentas de correo de origen y de destino, pueda recibir   a voluntad   notificaciones por SMS o por mail, de cualquier anomalía que suceda en el suministro de corriente alterna de su vivienda.

El tema de añadir una SIM tiene una explicación: si no tenemos suministro eléctrico no nos puede funcionar nuestra banda ancha o FTTH por no poder alimentar a los equipos de cliente  asi que no tendremos conectividad  por estas vías  por lo  que se nos hace necesario  buscar otra alternativas como las redes 2G8/3G o incluso los SMS’s

 

 

Elementos  necesarios para la solución

A continuación   destacamos los elementos necesarios para la instalación de la aplicación de seguridad :

  • Smartphone Android con SO Android 4.1 (Yelly Bean) o superior.
  • Tarjeta SIM (puede ser de Prepago).
  • Cargador original.
  • Es importante destacar que si se desea almacenar las notificaciones de SMS o e-mail, el terminal debería contar al menos con 128MB de espacio en la SD externa para almacenamiento de logs.
  • Sistema para fijar el smartphone a la pared  o  belcro autoadhesivo
  • Un trozo de cartón duro  fijado solidario a la puerta de acceso que tape parcialmente el sensor de presencia del Smartphone al abrirse.

PUESTA EN MARCHA DE LA SOLUCIÓN SEGURICASA

Veamos a continuación los pasos   a seguir  para  instalar una alarma de accesos y falta de red de corriente alterna  con notificaciones  con sms y emails

 

PASO 1: SELECCIÓN DE TERMINAL

El   montaje  requiere  simplemente un Smartphone con SO Android 4.1o  superior que puede ser reciclado o en desuso. También es importante destacar que   si se desea almacenar las notificaciones de SMS o e-mail, el terminal debería contar al menos con 128MB de espacio en la SD externa para almacenamiento de logs.

El terminal Android debe tener SO Android 4.1 (Yelly Bean) o superior y no  es fundamental  que tenga  la pantalla  perfecta ( o la batería)  ya que la interacción con el terminal solo sera necesaria para configurar cuales van a ser las notificaciones  y los destinatarios de estas ( es decir este terminal puede ser perfectamente reciclado  o incluso en mal estado ) .

PASO 2: INSTALACIÓN DE LA APP SEGURICASA

Encenderemos el terminal  e instalaremos bien   la aplicación “Seguricasa ”  en su versión gratuita ( envía notifiaciones por email) o bien su versión de  premium de pago (0,5€) que también puede enviar SMS’s   y carece de publicidad .

seguricasafree.png

Pensando en la gran seguridad, accesibilidad y confianza que ofrecen los SMS’s frente a otros servicios de mensajería, en esta aplicación se ha optado por permitir él envió de mensajes de forma selectiva según las necesidades de los usuarios  por medio de la versión Premiun  de la misma  app (versión 4)

El link de Google play es esta es   ;https://play.google.com/store/apps/details?id=com.soloelectronicos.seguricasa.alarmaredv4.

v4.png

 

PASO 3: SIM

El siguiente paso  es insertar la SIM  en el terminal si es que vamos  a enviar SMS o emails estando sin suministro eléctrico  , ya que normalmente cuando no haya red eléctrica tampoco solo tenemos tener wifi. Dependiendo de lo que deseemos (sms o emails ) necesitaremos  un plan mas o menos ajustado ,pero en general con una tarjeta pre-pago debería ser suficiente

PASO 4: FIJACIÓN MECÁNICA DEL TERMINAL

Ahora  lo siguiente debería ser fijar el terminal  a un extremo de la puerta si es que vamos a usarlo  también para notificar los acceso a la vivienda o local. Por ejemplo un belcro auto-adhesivo pegado en la parte de atrás del terminal  puede ser un sistema perfecto  , aunque en el mercado  obviamente también existen soportes  para  fijar el terminal de forma vertical de una manera muy simple.

Simple mente necesitaremos un cartón grueso de buena calidad de unos 5 cm de ancho por unos 20 cm:

 

IMG_20170713_135917[1].jpg

El cartón lo cortaremos para que cubra con holgura el sensor de proximidad del terminal ( suele estar en la parte superior)

 

IMG_20170713_140148[1].jpg

Debemos cortar el cartón de modo que pueda cubrir el sensor

 

IMG_20170713_140224[1].jpg

No es necesario que exceda  , simplemente debe rebasar la anchura del terminal

IMG_20170713_140833[1].jpg

Como se ve en la imagen lo doblaremos por la mitad en angulo de 90 grados

 

IMG_20170713_140908[1].jpg

Ahora fijaremos el cartón a la hoja de la puerta cerca de la bisagra de modo que al abrir la puerta el cartón oculte el sensor del terminal

 

IMG_20170713_214820[1].jpg

Seguidamente colocaremos belcro  auto-adhesivo sobre ambos lados del terminal tanto en el marco de la puerta como en el propio terminal

 

IMG_20170316_191402.jpg

Fijaremos seguidamente el terminal con el belcro al marco de la puerta:

 

IMG_20170713_215058[1].jpg

 

Fijado el terminal   ya solo nos quedaría comprobar    que  al abrir al puerta este  tape el sensor de proximidad del terminal tal y como se ve en la fotografía siguiente:

Una vez fijados el terminal  y el cartón es hora de conectar  la alimentación  por medio del cargador original  o en su defecto cualquier cargador con salida micro-usb (tenga en cuenta que el cargador debe permanecer siempre enchufado de modo que pueda ser motorizado  el estado de la red eléctrica por lo que este  debería ser preferentemente el original  o por lo menos de buena calidad ).

!Ya esta  todo preparado !, así que arrancaremos  la aplicación   y  podemos  configurar  todos los  parámetros de notificaciones como vamos a ver  a continuación.

 

PASO 5 :CONFIGURACIÓN DE LA APLICACIÓN

Hay una opción muy importante referida a la configuración de la aplicación, la cual se accede pulsando el botón contextual del terminal   de Android o en el boton central de la app

v4.png

Pulsando sobre el botón de la caja de herramientas de la appp o el de  configuración del terminal nos aparecerá el menú Configuración en la parte Inferior de la pantalla.

Una vez ahí, pulsando sobre el ítem, se mostrara el submenú de configuración de la aplicación estando  la pantalla está divida por seis secciones claramente identificadas:

  • Avisos por SMS.
  • Avisos por email.
  • Números de teléfono para SMS.
  • Correo electrónico destino.
  • Usuario Gmail para envíos.
  • Fichero de log.

Avisos por SMS.

La conectividad a internet de los terminales de última generación junto con el crecimiento exponencial tanto de las redes sociales como los de servicios de mensajería no han frenado la expansión de los mensajes SMS a nivel comercial.

Está claro que  los nuevos métodos de comunicación han tomado la delantera en lo que se refiere a las comunicaciones personales y grupales  ,pero a cambio han dejado a los mensajes SMS cómo líderes absolutos  de las comunicaciones de empresas como bancos,  empresas de transporte público, empresas de telecomunicaciones , compañías de seguros, hospitales ,otras instituciones públicas y un largo etcétera las cuales han adoptado los mensajes SMS como método para enviar notificaciones, confirmar transacciones, recordar citas, etc.

Pulsando en cualquiera de las tres opciones de este submenú automáticamente se enviaran   un SMS al número que se defina ante las siguientes circunstancias:

  • Corte de suministro de corriente alterna mediante la el suministro de tensión externa al terminal ( opción “Cortes de electricidad”)
  • Aperturas o  cierres de la puerta   ocultando el sensor de presencia(opción “Aperturas puerta”)
  • Al iniciar por primera vez la aplicación Seguricasa (opción “Al iniciar esta app”).

Avisos por e-mail.

Estar dado de alta en una cuenta de correo electrónico, hoy en día es una realidad pues todos los usuarios de la red disponen de una dirección de correo electrónico y lo utilizan diariamente.

En la actualidad, el uso del correo electrónico, se puede dividir en diferentes ámbitos como académico, laboral y personal, por lo que es muy interesante  también poder avisar  por e-mail ante cualquier evento de acceso  o anomalía en el suministro de corriente alterna desde el Core de esta aplicación.

Los avisos por e-mail en esta aplicación son personalizables mediante esta sección:

Clicando en cualquiera de las tres opciones del submenú de avisos por  e-mail, automáticamente se enviaran   un email a la cuenta de correo electrónico que se defina ante las siguientes circunstancias:

  • Corte de suministro de corriente alterna mediante la el suministro de tensión externa al terminal (opción “Cortes de electricidad”).
  • Aperturas o cierres de la puerta ocultando el sensor de presencia (opción “Aperturas puerta”).
  • Al iniciar por primera vez la aplicación Seguricasa (opción “Al iniciar esta app”).

Número de teléfono para envíos SMS

Complementando el submenú de avisos por SMS ’s se incluye esta sección, donde   se definirá el número de teléfono al que se deseen dirigir los mensajes de texto.

Tenemos que definir sobre todo el número del Teléfono hacia el que quieren dirigirán los SMS ‘s ante los eventos que se deseen auditar chequeados en   el submenú de avisos por sms’s.Opcionalmente,   también se puede asignar una cadena de texto en la opción Usuario que nos permita por ejemplo identificar el número de teléfono que hayamos asignado.

Es interesante destacar que si no informamos del número de teléfono destinatario de los SMS ‘s y clicamos alguna opción de SMS, nos saltara un error de número no definido.Si introducimos el numero o el nombre de usuario en esta sección, para volver a la pantalla principal, pulsar el botón volver del terminal o simplemente pulsa el botón cerrar de esta pantalla.

Correo electrónico destino

Complementando el submenú de avisos por mail, se incluye esta sección donde   se definirá la cuenta de correo electrónico al que se deseen dirigir los mails.

Tenemos que definir el correo electrónico destino hacia el que quieren dirigirán las e-mail ante los eventos que se deseen auditar chequeados en   el submenú de avisos por e-mail

Clicaremos en la copión E-mail y sobre la caja de texto cumplimentaremos el destinatario donde se dirigirán el e-mail ante los eventos que se deseen auditar chequeados en   el submenú de avisos por e-mail.

Es interesante destacar que si no informamos de la cuenta de correo y clicamos alguna opción de envíos de correos, nos saltara un error de mail no definido.

Para volver a la pantalla, el botón volver del terminal o simplemente pulsa el botón cerrar de esta pantalla.

Usuario Gmail para envíos

Complementando el submenú de avisos por mail, en esta sección   se definirá la cuenta de correo electrónico de Gmail desde donde se enviaran los mails.

Obviamente se podría haber definido otro tipo de servidor  de correo saliente, pero  por simplicidad dado que los usuarios de Android están obligados a tener una cuenta vinculada a una dirección de correo de Gmail para instalar nuevas aplicaciones en su terminal , este es el  candidato ideal como  servicio de envió de e-mails.

Dada la facilidad de envíos de correos electrónicos ante las circunstancias definidas, tenemos que definir el correo electrónico origen desde donde se dirigirán las e-mail ante los eventos que se deseen auditar chequeados en   el submenú de avisos por e-mail

La cuenta de Gmail pues se cumplimentara en la opción “cuenta” mediante el formato establecido completo (es decir con el formato [email protected]).

Para volver a la pantalla principal, basta pulsar el botón volver del terminal, o simplemente pulsar el botón cerrar de esta pantalla.

Dado que usaremos la cuenta de Gmail, para poder enviar correos desde esta cuenta, necesitamos cumplimentar en el apartado “Clave” la password de la cuenta de Gmail.

Como vemos en la pantalla anterior al cumplimentar la password de la cuenta de Gmail se ocultara su contenido tanto cuando estamos cumplimentándolo como cuando los revisamos pudiéndolo actualizar o eliminar en cualquier momento desde esta opción.

Es interesante destacar que si no informamos de la cuenta de correo y clicamos alguna opción de envíos de correos, nos saltara un error de mail no definido.

Para volver a la pantalla principal   pulsar el botón volver del terminal o simplemente pulsa el botón cerrar de esta pantalla.

Fichero de log

Es importante destacar que   si se desea almacenar las notificaciones de SMS o e-mail, el terminal debería contar al menos con 128MB de espacio en la SD externa para almacenamiento de logs.

Si deseamos registrar los logs de aviso por email o por SMS, simplemente necesitamos apuntar en el apartado “Carpeta” el nombre del fichero que deseamos usar para registrar todos estos eventos en el root de la microsd.

Para volver a la pantalla principal   pulsar el botón volver del terminal o simplemente pulsa el botón cerrar de esta pantalla.

 

En el siguiente vídeo  podemos ver  mas claramente el funcionamiento de todas estas opciones comentadas;

 

Watimetro con Esp8266


Éste proyecto se aprovecha de que los contadores modernos  inteligentes  incluyen en el frontal un LED que parpadea cada 1kW consumido, de modo que conectando un par de  cables a dicho LED y montando una pequeño circuito   basada en el módulo Wifi ESP8266, podemos medir con bastante precisión el consumo producido.

Obviamente  no es  legal abrir el contador  inteligente de nuestra vivienda para soldar un para de  cables al LED del watimetro, básicamente porque el equipo no nos pertence  ya que las compañías suministradoras  lo suelen  ofrecer en modo alquiler , pero debe saber que  éste tipo de contadores  también lo podemos instalar en nustra vivienda  o local   en el cuadro de distribución de corriente alterna en un carril DIN, normalmente a a la salida del magneto-térmico general  que alimenta a todos los circuitos que haya instalados en  nuestra vivienda.

Por ejemplo el modulo  XCSOURCE® Medidor Energía KWH Kilovatio Hora LCD CA 50Hz Fase Simple Riel DIN 230V BI04   se puede comprar por unos 14€ en  Amazon siendo la instalación de riel DIN estándar de 35mm, y ademas cumpliendo con el estándar DIN EN 50023   y con el ancho del poste sencillo (módulo de 17.5mm), que cumple con el estándar DIN 43881.

El modulo en su configuración Estándar  tiene una ventana de visualización de 7+1 dígitos  (9999999.1kwh) mediante un LCD blanco y negro así, como también una salida con un led verde para el estado de suministro de energía y Rojo para la señal de impulso de energía  como el de los contadores “inteligentes”.

Además , no necesitamos desmontar el modulo para capturar la salida del led de consumo pues tiene una salida SO Estándar donde  podemos conectar el circuito qeu vamos   a ver (respetando la polaridad)

Realmente como vemos en el esquema de conexiones de watimetro este  se alimenta por los terminales  1 y 4 (terminales de arriba)   y su salida ira a lo terminales 3 y 6  que conectaremos a la carga ( es decir el resto de circuitos de nuestro vivienda o local) , y resaltar que precisamente en lo terminales 20 (+) y 21(-)  tenemos la salida standar  SO   de pulsos de 50ms por 1wh

 

El circuito final que el autor propone para mejorar la visualizacion de watimetro  , cuenta de los siguiente elementos:

  • De  un ESP8266-12E como corazón del diseño
  • Una  pantalla OLED
  • Una conexión para programación via conversion usb-serie
  • Una fuente de almentacion de 3.3V
  • Un  circuito de  entrada procedente de la señal SO del watimetro
  • Una entrada adicional opcional para medir consumos individuales de una carga sin watimetro exterior

 

El circuito propuesto es el siguiente:

 

.

 

Hardware

  • ESP8266-12E
  • ACS712 Current Sensor
  • 0.96″ OLED Display
  • BT136 Triac
  • MOC3021 Opto-triac
  • MCT2E
  • LM11173.3V LDO Regulator
  • 5V SMPS Module

 

Software

 

Y a continuación el código fuente  Arduino  que deberíamos grabar en el el ESP8266

 

Codigo Arduino

/***********************************************************************************/
/* This is an simple application to illustrate IoT Home Automation. /
/ This is an example for our Monochrome OLEDs based on SSD1306 drivers /
/ Pick one up today in the adafruit shop! /
/ ——> http://www.adafruit.com/category/63_98 /
/ This example is for a 128×64 size display using I2C to communicate /
/ 3 pins are required to interface (2 I2C and one reset) /
/ Adafruit invests time and resources providing this open source code, /
/ please support Adafruit and open-source hardware by purchasing /
/ products from Adafruit! /
/ Written by Limor Fried/Ladyada for Adafruit Industries. /
/ BSD license, check license.txt for more information /
/ All text above, and the splash screen must be included in any redistribution /
/************************************************************************************/
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <ESP8266WiFi.h>
#include / Local DNS Server used for redirecting all requests to the configuration portal /
#include / Local WebServer used to serve the configuration portal /
#include <WiFiManager.h> / https://github.com/tzapu/WiFiManager WiFi Configuration Magic */

#define VOLTAGE_DIVIDER 10.0f
#define REF_VOLT 0.9f
#define RESOLUTION 1024
#define WATTS_THRES 25.0
#define AC_VOLT 230.0
#define VPP_RMS 0.3535
#define BASE_PRICE 125
#define UNITS_UPL_FREQ 30 /* In 2Sec /
#define THEFT_THRESHOLD 15
#define VperAmp 0.1f / See AC712 Datasheet */
#define TRUE 1
#define FALSE 0
#define OLED_RESET 4
#define SSD1306_LCDHEIGHT 64
Adafruit_SSD1306 display(OLED_RESET);

const char* ssid = “IotEM”; /* Device SSID /
String apiKey = “GBH1K3293KFNO8WY”; / Replace with your thingspeak API key /
const char server = “api.thingspeak.com”;

/* Create an instance of the client */
WiFiClient client;
WiFiManager wifiManager;

/* Port Pin Definition */
int InVolPin = A0;
int LoadPin = 14;
int PulsePin = 12;
struct {
unsigned char LdCon: 1;
unsigned char Units:1;
} Flags;

double Voltage, VRMS, AmpsRMS, Watts;
volatile byte interruptCounter = 0;
int Pulses = 0;
int PrevUnits = 0;
int PrevMUnits = 0;
int Units, MeasUnits;

#if (SSD1306_LCDHEIGHT != 64)
#error(“Height incorrect, please fix Adafruit_SSD1306.h!”);
#endif

#define LoadOn() digitalWrite(LoadPin, 1)
#define LoadOff() digitalWrite(LoadPin, 0);

static void DispInfo (void);
static void DispStat (void);
static void SendUnits (void);
static void SendTheftInfo (void) ;
static void SendSMS (int8_t Type);
static void DisplayUnits(void);
static void TheftOccurred (void);

ADC_MODE(ADC_TOUT);

void setup(void) {
Wire.begin(0,2);
Serial.begin(9600);
pinMode(InVolPin, INPUT);
pinMode(LoadPin, OUTPUT);
pinMode(PulsePin, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(PulsePin), handleInterrupt, FALLING);
Flags.LdCon = FALSE;

display.display();
delay(500);
LoadOn();
ConnectAP();
DisplayUnits();
}

void loop() {
static unsigned long i = 0, j = 0, l = 0;
VRMS = getVPP() * VPP_RMS;
AmpsRMS = VRMS / VperAmp;
Watts = AmpsRMS * AC_VOLT;
if (Watts >= WATTS_THRES)
Flags.LdCon = TRUE;
else
Flags.LdCon = FALSE;
#ifdef DEBUG
Serial.print(Watts);
Serial.print(AmpsRMS);
Serial.println(” Amps RMS”);
#endif
if (Flags.LdCon) {
#ifdef DEBUG
Serial.println(MeasUnits);
Serial.println(Pulses);
Serial.println(l);
#endif
if (MeasUnits == Pulses)
if(++l > THEFT_THRESHOLD) TheftOccurred();
}
if (i++ >= UNITS_UPL_FREQ) { /* End of Day /
Units = Pulses – PrevUnits;
PrevUnits = Pulses;
SendUnits();
i = 0;
}
if (interruptCounter > 0) {
interruptCounter–;
Pulses++;
MeasUnits = Pulses;
l = 0;
#ifdef DEBUG
Serial.print(“Total Units: “);
Serial.println(Pulses);
#endif
DisplayUnits();
}
delay(1000);
}
void handleInterrupt() {
interruptCounter++;
}
static void TheftOccurred(void) {
display.clearDisplay();
display.setCursor(0,0);
display.setTextSize(3);
display.setTextColor(WHITE);
display.print(“!THEFT!”);
display.display();
SendTheftInfo();
delay(5000);
LoadOff();
display.clearDisplay();
display.setCursor(0,0);
display.setTextSize(2);
display.setTextColor(WHITE);
display.print(” Contact CESCOM”);
display.display();
delay(2000);
ESP.deepSleep(0, WAKE_RF_DEFAULT); / RIP /
for(;;);
}
void DisplayUnits(void) {
display.clearDisplay();
display.setCursor(0,0);
display.setTextSize(3);
display.setTextColor(WHITE);
display.print(Pulses);
display.setCursor(90,13);
display.setTextSize(2);
display.setTextColor(WHITE);
display.print(“Kwh”);
display.display();
}
void ConnectAP(void) {
#ifdef DEBUG
Serial.print(“Connecting Wifi: “);
Serial.println(ssid);
#endif
display.clearDisplay(); / For Display /
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.println(“Connecting”);
display.display();
wifiManager.autoConnect(ssid);
#ifdef DEBUG
Serial.println(“”);
Serial.println(“WiFi connected”);
Serial.println(“IP address: “);
IPAddress ip = WiFi.localIP();
Serial.println(ip);
#endif
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.println(“Connected”);
display.display();
delay(1000);
}
void SendTheftInfo(void) {
if (client.connect(server,80)) {
String postStr = apiKey;
postStr +=”&field2=”;
postStr += String(1);
postStr += “\r\n\r\n”;
client.print(“POST /update HTTP/1.1\n”);
client.print(“Host: api.thingspeak.com\n”);
client.print(“Connection: close\n”);
client.print(“X-THINGSPEAKAPIKEY: “+apiKey+”\n”);
client.print(“Content-Type: application/x-www-form-urlencoded\n”);
client.print(“Content-Length: “);
client.print(postStr.length());
client.print(“\n\n”);
client.print(postStr);
}
client.stop();
}
void SendUnits(void) {
if (client.connect(server,80)) {
String postStr = apiKey;
postStr +=”&field1=”;
postStr += String(Units);
postStr += “\r\n\r\n”;
client.print(“POST /update HTTP/1.1\n”);
client.print(“Host: api.thingspeak.com\n”);
client.print(“Connection: close\n”);
client.print(“X-THINGSPEAKAPIKEY: “+apiKey+”\n”);
client.print(“Content-Type: application/x-www-form-urlencoded\n”);
client.print(“Content-Length: “);
client.print(postStr.length());
client.print(“\n\n”);
client.print(postStr);
}
client.stop();
}
float getVPP() {
float result;
int readValue; //value read from the sensor
int maxValue = 0; // store max value here
int minValue = 1024; // store min value here
uint32_t start_time = millis();
while((millis()-start_time) < 1000) //sample for 1 Sec
{
readValue = analogRead(InVolPin);
// see if you have a new maxValue
if (readValue > maxValue)
{
/record the maximum sensor value/
maxValue = readValue;
}
if (readValue < minValue)
{
/record the minimum sensor value*/
minValue = readValue;
}
}
// Subtract min from max
result = (((maxValue – minValue) * REF_VOLT) / RESOLUTION) * VOLTAGE_DIVIDER ;
return result;
}

 

Y por cierto para los incredulos en el siguiente video podemos ver el circuito en funcionamiento

 

LLegan las plataformas de inventores


En los últimos años hemos visto evolucionar la wikinomic hacia el crowdfunding, es decir, financiamiento colectivo. Este concepto ha llevado a plataformas como Kickstarter  a generar, tan sólo en 2012, $119 millones de dólares que se han ido directamente a financiar proyectos creados y apoyados por la comunidad. 

El problema no resuelto de Kickstarter es que sólo financia proyectos que requieren capital pero no llega a su revisión, seguimiento o lanzamiento de los mismos. Ese reto es justo el que Ben Kaufam se planteó para crear Quirky. ¿Cómo llegar a los inventores reales y no a los emprendedores únicamente? La respuestaes desarrollo social de productos (SPD o lo que es lo mismo  social product development ). 

 

Quirky.com   es una nueva plataforma  de plataformas globales que  en efecto pone en contacto a personas que sueñan con llevar  a la realidad física  una idea  con otras que tienen el conocimiento técnico, los medios, el expertise,  etc o en definitiva todo lo necesario (incluyendo capital humano y material)  para llevarlas a cabo  de  modo que  luego sea posible vender las creaciones resultantes a traves de su propia tienda online (quirky .com)

Precisamente es en este sitio  donde las personas pueden subir sus ideas e invenciones   de forma conceptual   y llegar al resto de la comunidad, así como a un equipo multidisciplinario de especialistas que involucra diseño, marketing, producción, ingeniería y viabilidad.

En conjunto, todos ayudan a la mejora del producto desde su aspecto, diseño de prototipos, análisis de mercado, modelo de negocio, branding, distribución y hasta la comercialización.

 

Por desgracia no todas las ideas valen ya que han de demostrar la necesidad ,por lo que entre todas las propuestas de cada semana se eligen las 10 mejores propuestas subidas a Quirky e inmediatamente se empieza a trabajar en ellas de  modo que puedan crear tres nuevos productos de consumo cada semana. Para ello, cada jueves se reúnen en una “idea debate” para escoger entre dos y cinco proyectos que desean apoyar. Si las ideas prueban que la necesidad existe y la gente desearía resolverlo, ellos lo fabrican y obviamente el autor  recibirá  un porcentaje de las ganancias de las ventas .

La idea por tanto es pues sencilla : si se facilita la producción a los inventores, entonces existirán millones de nuevas ideas pues permite focalizar a los inventores en la ideación dejando  todo los demás  a los profesionales, de los diseñadores e ingenieros que hacen posible que las cosas ocurran.

inventos.PNG

La invención se hace accesible gracias a tres brazos:

  • Tecnología
  • Comunidad
  • Equipo de expertos multidisciplinar

Quirky no es un modelo de producción sino de creación pues se basa en el supuesto de que las mejores ideas del mundo ( o al menos dentro de determinados sectores de consumo )   no están tanto en las compañías  como en las mentes de las personas pues realmente  todas las personas somos inventores por naturaleza.

Muy resumidamente el paso de la ideación a la puesta en el mercado comprende las siguientes fases:

  1.  La idea: Es el momento clave. Todas las personas podemos mejorar lo que existe o incluso crear una respuesta a una necesidad. Es el momento de creación.
  2.  Registro en la plataforma: Los inventores suben su idea contestando dos preguntas básicas: qué problema se está intentando solucionar y cómo intenta hacerlo. Para subir una idea se pagan 10 dólares, y en ese momento queda en manos de la comunidad.
  3.  Aceptación: La clave es mejorar una idea de negocio. Quirky incentiva a sus usuarios a proveer toda la retroalimentación necesaria para cada proyecto. Se seleccionan las mejores ideas y cada jueves se hace la evaluación de una decena de ellas. La comunidad de especialistas vota desde casa u oficina.
  4.  Preproducción: Inicia con la documentación e investigación; se analiza el mercado y pasa a la fase de diseño para posteriormente trabajar en el branding.  En esta fase, la comunidad también se involucra y gana dinero con su participación. A este modelo se le llama “influence”  un sistema de recompensas que mide la influencia de cada uno de los participantes y de acuerdo con su contribución se reparte el ingreso del producto creado.
  5.  Preventa: Para probar el éxito y la aceptación de un producto se lanza una campaña de preventa a un precio rebajado. Gracias a las unidades prevendidas se costea el proyecto.
  6.  Producción – manufactura: Si se logran las ventas mínimas requeridas, el producto se produce y lanza oficialmente, así empieza su proceso de expansión en el mercado (distribución).
  7.  Ventas – ganancias: Todos los beneficios obtenidos se repartirán entre todos aquellos que han participado e invertido en el proyecto.El modelo Quirky podría parecer fácil de replicar, pero hay algo que no podrá copiarse al 100%. Quirky combina un staff in-house de ingenieros, desarrolladores, diseñadores, mercadólogos y analistas de negocio que les apasionan los proyectos en lo que participan. Esto, se suma a una comunidad global que contribuye con ideas, sugerencias y nuevos proyectos, misma que ha “confiado en la plataforma” y está dispuesta a hacer dinero juntos. La confianza es difícil de construir; se gana, se demuestra, se construye con el tiempo y eso es lo que ha logrado Quirky.

 

Las ganancias de los productos que se comercialicen se repartirán entre el propio inventor, Quirky y los usuarios que ayudaran durante el proceso de diseño del producto.(el equipo de Quirky se reserva el 70% de los derechos del invento y el 30% que resta se distribuye a partes proporcionales entre todas las personas que han contribuido al mismo.)

En dos años que lleva funcionado este cruce entre red social y comercio electrónico, han salido a la venta ya 35 productos y hay otra treintena más en desarrollo.

 

 

Más informacion en https://www.quirky.com/

Una app para ayudar a los ciclistas ,peatones y conductores


La seguridad de los ciclistas, viandantes  y conductores  se está convirtiendo en una prioridad para la circulación vial  en todos los países  sobre todo a raíz del aumento inquietante de desafortunados accidentes tanto en España como en el resto de países por lo que urge replantearnos qué medidas podemos tomar para minimizar estos riesgos , por ejemplo  usando una app  de la DGT  basada  en la colaboración de los usuarios así como la información de que dispone la propia DGT.

 

Presentamos una app veterana en España que tiene una doble finalidad:  en primer lugar   proteger a ciclistas, peatones y conductores en carretera y ciudad y  en segundo lugar mejorar la movilidad .

Hace ya dos  años (en 2015) , la DGT (Dirección General de Tráfico)  lanzó la aplicación gratuita  Comobity   que  permite a los conductores, ciclistas y peatones que van circulando por la vía publica en España  ,  la posibilidad de informar de su presencia para que el resto de usuarios que lleven la app  realice una conducción adecuada   basándose por tanto en la colaboración de todos los usuarios

Obviamente como  no todo el mundo lleva la app , también  la app usando los servicios de la DGT avisa de accidentes, obras o de cualquier incidente meteorológico  buscando mejorar la información que poseen los usuarios del estado de las carreteras y de las calles.

 

Resumidamente estos son los puntos fuertes des esta aplicación:

  • Hace visible  a los ciclistas y peatones
  • Se puedes indicar  que se  ha tenido una incidencia
  • Avisa sobre eventos que se pueden  encontrar en su trayecto
  • No se requiere  ninguna validación en la app  ni permisos especiales  protegiendo asi el anonimato de los usuarios
  • Se ha creado  para ayudar no para distraer  por lo que puede funcionar en segundo plano y con alertas por voz

 

Modo de uso

 

Aparte de la sencillez en lo que a su interface se refiere, la aplicación además es muy intuitiva, lo que facilita mucho su uso. Además, el anonimato está garantizado, por lo que, al utilizarla, ningún usuario verá violada su intimidad ya  que no se pide ningún tipo de credencial.

Como todos sabemos, para la DGT lo más importante es nuestra seguridad, circulemos por dónde circulemos. Por ello, la aplicación no necesita de ningún tipo de intervención del usuario, y simplemente al comienzo de la ruta, el usuario seleccionará si es un peatón, un ciclista o un conductor:

 

pedalea.PNG

Una vez seleccionado  el modo de funcionamiento , nos pedirá la activación del GPS ( si no lo tenemos activado   )  y simplemente al activarlo , las alertas en caso de que se produzcan nos irán apareciendo para que podamos mejorar nuestra forma de actuar

 

Esta  app  es compatible con otras aplicaciones de modo que puede ( o debe)  usarse  en segundo plano, ya que cuenta con notificaciones de voz que ayudan a estar más alerta cuando es necesario.

verde.PNG

 

 

Todos los peligros que se pueden encontrar en un trayecto en vías urbanas e interurbanas, están integrados avisando de la presencia de ciclistas, peatones y conductores que han tenido que detener su vehículo porque han tenido un problema  de modo que si le pasa algo, puede indicar que ha tenido una incidencia pulsando el botón rojo.

rojo.nPNG.PNG

Además, avisa sobre eventos proporcionados directamente por la DGT, como retenciones, alertas meteorológicas, obras u otras incidencias que encontrarás en la carretera durante un trayecto

rojo.PNG

 

Gracias a la participación de personas concienciadas con la seguridad vial, Comobity por tanto es capaz de:

  •  Proteger a las personas que indican que han tenido una incidencia haciéndolos visibles para el resto de usuarios.
  •  Detectar grupos de ciclistas y peatones en carretera, para alertar de su existencia a los que se van a encontrar con ellos.
  •  Alertar de problemas meteorológicos, retenciones, obras y otra información de interés para tu seguridad.

 

En  este vídeo podemos ver resumidamente el  funcionamiento de esta app:

 

 

 

 

 

 

 

 

Por cierto la app,  se puede descargar en Google Play   https://play.google.com/store/apps/details?id=com.inspide.comobity

 

Construcción de un panel solar


Aunque realmente el precio de los paneles solares ya montados  ha bajado una barbaridad, lo cierto es que no siempre son fáciles de conseguir bien porque no existen para la  tensión  o potencia  que se precisa , o simplemente porque tienen aún un alto coste , de modo   que  es muy interesante  conocer como  podríamos construir nuestro propio panel solar  personalizado  dado que se  precisan  materiales relativamente sencillos de adquirir  en cualquier tienda de bricolaje  exceptuando  claro  las placas fotovoltaicas (las cuales por cierto actualmente ya  tienen un precio irrisorio).

En el proyecto que vamos   a ver  (publicado en instructables.com)   necesitaremos los siguientes componentes:

  • 28 células solares (0,5V 3.1w).
  • 2 láminas de cristal.
  • Diodo rectificador de 6 amperios.
  • Marco de aluminio de 30 x 30 x 3.
  • Cable plano de 5 milímetros.
  • Cinta de 2 milímetros.
  • Silicona.
  • Crucetas para azulejos.
  • Caja de conexión.
  • Soldador.
  • Bloque terminal.
  • Tubo termoretráctil.

 

El precio aproximado  de todo el conjunto  para la construcción de la placa   sorprende:  poco más de 211 dólares. Con esto, un sistema con dos paneles, inversor y medidor saldría por alrededor de 440 dólares  .

 

factura.PNG

 

Antes de describir   el  proceso de montaje, es importante destacar  el tipo de conexión  de las células que puede ser  en combinación serie (respete escrupulosamente la polaridad de cada célula)  consiguiendo una tensión final suma de todas las células , combinación en paralelo ( uniendo todos los positivos entre si  e igualmente con los negativos ) para obtener mas potencia   o un combinación de ambas para conseguir tensiones y/o  potencias finales  mayores,

 

conexiones.png

Como nota aclaratoria normalmente las células de siliciona policristalina  suelen ser casi siempre de  una tensión promedia  0.5V max ,  con una eficiencia en torno al  18%  , de corrientes 0,68Amp max  y por tanto  de una potencia promedia de 0,5×6,68= 0.34W.

 

celula.png

 

 

En el caso de este ejemplo, se ha optado por un módulo de cuatro columnas  con siete células en cada una de ellas. Mas concrétamente, para cada  panel  se  usan 7 filas x 4 columnas , es decir  28 células   en total  serie,  por lo que cada panel  tendrá una tensión de 28* 0.5= 14 Voltios .  En caso de usar varios paneles    lo normal es conectarlos en paralelo   sumándose así las potencias de cada placa .

Obviamente , se  puede adaptar la forma en función de las características del lugar en el que lo vaya a colocar.

Para empezar una vez decidida la combinación ( en este caso serie)    se comenzaría por soldar las células  uniendo el positivos de una placa   con el  negativos de la siguiente placa y así sucesivamente  hasta llegar  a la ultima célula .

Acto seguido, se añade  un poco de silicona en la parte trasera de las células y se debe adherir a una de las láminas de cristal ( se puede añadir pegamento para es reforzar la adherencia).

Una vez se seque bien, se puede colocar el panel por la otra cara e instalar una cruceta para azulejos entre cada una de las células para dotar de mayor rigidez al sistema. Acto seguido, aplicar silicona alrededor del borde del cristal y pegar la otra lámina, de manera que las células queden entre ambas.
Una vez finalizada la fase de construcción se debe esperar a que el panel se seque durante al menos un día. Si ha quedado algún hueco entre ambos cristales, se debe  aprovechar para cerrarlo con más sellador, aunque entonces necesitará prolongar el proceso de secado, que puede alcanzar hasta los tres días.

Finalmente, lo ideal es  proteger los cristales del panel,colocando alrededor un marco de aluminio que fortalecerá aún más la estructura.

 

panel.png

Para que todo marche, necesitarás que el sistema esté conectado. Así, en este paso tendrá que instalar una caja de conexiones en el panel, preferiblemente en su parte trasera. En ella debe estar el positivo y el negativo del módulo, de manera que pueda conectarse con el inversor   o el  regulador de carga en función de la instalación que haya decidido realizar .

Es muy interesare  destacar que para evitar la corriente de retorno cuando esté en producción, se deberia incluir un diodo entre el positivo del panel y la utilización que, precisamente, ayudará en ese objetivo.

 

Ademas de los elementos mencionados ,para tener el sistema completo,  lo ideal seria añadir a la lista un  inversor    que se adapte a la tensión  y potencia de la energía que espera captar( en el el proyecto original bastó con un sistema de 100 W de capacidad para convertir buena parte de la energía captada por los tres paneles diseñados),  asi como   un regulador de carga    y una bateria de gel o del tipo AGM  de ciclo profundo ambas , en caso de que desee almacenar la energia para su uso por la noche

esquema.png

 

 

Si ha seguido todos estos pasos, ya solo quedará poner sus paneles a trabajar en la mejor ubicación de la que disponga y empezar a captar y a convertir energía.

Es interesante revisar  el comportamiento habitualmente de modo que si mide que la tensión máxima de salida de los paneles se ha alcanzado, es que todo marcha y que su sistema casero funciona al nivel de los comerciales.

Quedará por despejar el interrogante de la vida útil del panel, que se irá aclarando con el tiempo. Hasta entonces, el ahorro que ha supuesto la fabricación frente a la compra le ayudará a que recupere la inversión mucho más rápido.