Soldador de puntos sin transformador


La soldadura  por  puntos  lleva con nosotros unos 40 años, pero a pesar de su antigüedad   sigue  gozando de buena reputación en los nuevos tiempos usándose de forma intensiva  también en aplicaciones de electrónica  donde la soldadura convencional con estaño no es efectiva, como   por ejemplo  a la hora  de conectar baterías entre si con laminas de níquel,  entre  sus miles de aplicaciones más. En esencia la tecnología de la soldadura por  puntos  no es nada compleja , pues  la  configuración típica de un soldador de puntos no ha variado a  lo largo de los años,  consistiendo básicamente en  una fuente de muy baja tensión (entre 3 y 15V) de alta intensidad   conectada a un cabezal para soldar.

Desgraciadamente, a pesar de que no incluye demasiada tecnología, un soldador de puntos es uno de los pocos equipos donde la construcción casera  de este  es mucho  más barata que comprarlo montado,  incluso si se decide a comprarlo en alguno de los famosos  portales chinos, ya que incluso comprándolos  allí , su precios van entre los 200€ en adelante. Si no  estamos dispuestos  a desembolsar esa cantidad otra opción es fabricar un soldador de puntos  nosotros mismos  pues  en la red  se pueden ver  una gran cantidad de diseños de soldadores de puntos basados en viejos transformadores de microondas , a los que  se les elimina el secundario de AT  por medios mecánicos y simplemente se rodea en el interior del entre-hierro  en ese espacio que ha quedado vació de  dos vueltas de cable de gran sección ( al menos de 8 mm).

NO recomendamos construir  un soldador de puntos   basándose en un transformador   de microondas, no sólo por el voluminoso espacio  que ocupa ( y el ruido que genera) , sino, sobre todo,  por  el  peligro que conlleva extraer dicho transformador , pues esta muy cerca el condensador de alto voltaje, cuya  carga puede estar presente mucho tiempo después de que el horno de microondas esté desenchufado (y es extremadamente peligrosa una descarga de este tipo ). No confíe en la resistencia de purga interna del condensador , pues puede fallar y es muy  peligroso ( si lo va a hacer, al menos conecte dos cables de prueba de clip de cocodrilo  a la tierra del chasis de metal de microondas, asegurándose  de que los cables no estén rotos,sujete una resistencia de 10K … 1M al otro lado de un cable de prueba y descargue los dos terminales del condensador uno por uno a través de una  resistencia de   1MΩ utilizando alicates aislados ).

En los últimos años, los supercondensadores han surgido como una alternativa o complemento importante para otros dispositivos de producción o almacenamiento de energía eléctrica como las pilas de combustible o las baterías . La principal virtud del primero frente a los dos últimos es la mayor potencia que es capaz de inyectar, aunque poseen una menor densidad de energía. Otras características de los supercondensadores son la rapidez de carga y descarga, pueden proporcionar corrientes de carga altas, cosa que daña a las baterías, el número de ciclos de vida de los mismos, del orden de millones de veces, no necesitan mantenimiento, trabajan en condiciones de temperatura muy adversas y por último, no presentan en su composición elementos tóxicos, muy común en baterías.
La principal desventaja de los supercondensadores es la limitada capacidad de almacenar energía, y a día de hoy, su mayor precio. En realidad debido a sus diferentes prestaciones, condensadores y baterías no son sistemas que rivalizan entre sí, si no más bien se pueden considerar en muchas aplicaciones como sistemas complementarios donde la batería aporta la energía mientras el supercondensador aporta los picos de potencia

Si Q es la cantidad de carga almacenada cuando el voltaje entero de la batería aparece en los terminales del condensador, entonces la energía almacenada se obtiene de la integral:

Esta expresión de la energía se puede poner en tres formas equivalentes por solo permutaciones de la definición de capacidad C=Q/V.


Los materiales  usados  como electrodos para supercondensadores son principalmente de tres tipos: óxidos de metales de transición, polímeros conductores y materiales de carbono activados.

Se puede decir que, actualmente, sólo los supercondensadores basados en carbono, o también llamados condensadores de doble capa (double-layer capacitors), han conseguido llegar a la etapa de comercialización.

SOLDADOR ELECTRÓNICO  DE PUNTOS

Es la forma mas habitual de  y fácil de construir un soldador de puntos   a un precio bastante asequible.

Estas configuraciones funcionan  durante  mucho tiempo y normalmente  estas configuraciones  son  mucho mas optimas y eficientes  que los soldadores basados en transformadores de microondas modificados.

La alta temperatura destruye las baterías de litio, por lo que la soldadura  tradicional térmica no es una opción, así que esta configuración  es perfecta  , (es por eso  que hay personas que la llaman “soldadura fria” )

El circuito propuesto es el siguiente:

soldador de puntos

Como vemos en el siguiente circuito,  el principio es bastante sencillo usando 10  transistores Mosfet del tipo IRF1404 (Vdss=40V, Rds(on)=0.004ohm, Id=162A⑥) en configuración  paralelo para  controlar la descarga de un supercondensador de 120 Faradio de 15V compuesto por la asociación serie de 5 condensadores de 120F /2.7v  , el cual  almacena la energía  suficiente para producir la chispa que permita realizar   la soldadura por puntos.

Las resistencias de 1k  y 10K únicamente sirven para asegurar que pase a conducción los transistores,  motivo  por el cual se usa un pulsador para que conduzca  únicamente durante un breve espacio de tiempo  en el que se mantenga apretando el pulsador

Aunque el IRF1404 soporta hasta 200W de disipación , el motivo por el que se usan 10 transistores en paralelo  es para  evitar usar un voluminoso radiador pues en esta configuración  la disipación por elemento se divide por 10 ,lo cual hacen innecesario cualquier disipador térmico.

Alternativamente  a  los supercondensadores se pueden emplear dos viejas baterías de gel de 12V  /7Ah , aunque el conjunto ya no sera tan liviano ,pero incluso será mas efectivo dado que no es necesario cargar  los condensadores tras cada soldadura  pues las baterías almacenan  suficiente energía para bastantes soldaduras  ( en el montaje de condensadores tras varias descargas si que los es)

El circuito montado, lo podemos ver en la imagen siguiente,donde se observa una peculiaridad importante: dada la gran intensidad que va a pasar por el circuito ,los bornes  de las dos conexiones de los mosfet , deben ser metálicos de buena sección para evitar que esto se quemen por el paso de la corriente:

Asimismo los cables de salida del circuito deben ser de una sección adecuada , y deberían terminar en una punta de cobre macizo para facilitar la soldadura

En la imagen se puede ver como se puede soldar dos pequeñas laminas de níquel

Por ultimo en la siguiente imagen podemos ver una versión   del conjunto ya montado apreciándose claramente el pulsador de pie, y en este caso el uso de las dos baterías  que sustituyen a  los supercondensadores dado su mayor autonomía  y rendimiento:

Componentes

10 X  MOSFET  IRF1404

Resistencia  de  10k 1/4w

Resistencia  de 1k

6  x  Condensador  de 120F , 2.7V   (para el caso de montaje con condensadores) o  2 baterías de 12V  7AH

Pulsador normalmente abierto

Interruptor general

Voltímetro panel (para el caso de montaje con condensadores)

Fuente 15V (para el caso de montaje con condensadores)

2 x puntas de cobre

Anuncio publicitario

Novedades ultima actualización Windows 10 Creators Update


Fue ayer cuando Microsoft decidió lanzar la actualización de forma oficial, aunque ha sido posible probarlo  con  una semana  de anterioridad gracias a la instalación mediante el asistente de actualización. Tuvimos unos días en los que básicamente cualquier persona podía actualizar, solo que no se trataba de la versión fina pero ya a partir de esta semana  todo aquel que admita las actualizaciones de W10   se le actualizarán muchas cosas interesantes  orientadas sobre a la creación  que vamos a tratar de resumir en este post 

Solo un advertencia: esta actualización es profunda  y muy pesada en cuanto al tamaño así que asegúrese que tiene una buena conectividad  , esta alimentado a la red eléctrica  en caso de ser un ordenador portátil  y dispone de tiempo libre  ( mientras se actualice no se puede hacer  nada ) , pues según  el  tipo de equipo y  ancho de banda disponible  de   que disponga puede tardar  en todo el proceso   desde menos de una  hora   a varias horas  según las circunstancias !la espera creo que merece la pena !

Explorar, crear y compartir en 3D

Aunque han  corrido ríos de tinta sobre la hipotética eliminación de clásico paint , lo cierto es que en la versión final no ha sido así , sustituyendo simplemente la versión clásica por otra versión actualizada que posibilita eso si acceder al paint 3d mediante un nuevo botón a la derecha del todo de la barra de herramientas pero nada más..

Si hablamos de la version 3d ,esta permite crear modelos 3D desde cero en Paint 3D. Asimismo se pueden abrir  y ver los modelos 3D desde la web, remézclandollos con herramientas fáciles de usar así como poder presentar el  trabajo en Remix3D.com.

 

Usar la herramienta de adhesivo en Paint 3D

Entre las muchas posibilidades esta aplicación permite hacer un garabato en 3d, hacer un modelado básico en 3, usar adhesivos , usar paint 3d para 2d,mezclar un modelo 3d, ver desde todos los ángulos con vista 3d  y una gran novedad que sin duda  muchos aficionados nos encantará: crear e imprimir objetos 3d gracias a 3D Builder

Con esta  se  puede digitalizar, construir e imprimir modelos 3D en Windows 10. Su uso es muy sencillo :para empezar, abra 3D Builder y elija la biblioteca de modelos proporcionados. O bien, seleccione Cargar objeto para elegir un modelo que haya guardado de Paint 3D u otro software 3D.

3D Builder puede abrir y editar tipos de archivo 3MF, OBJ, STL, BRML y PLY y también puede abrir tipos de archivo DAE 3DS y DXF

Luz nocturna

Ajustes de luz nocturna activados y desactivados

Emite luz azul, el tipo de luz que vemos durante el día. Windows ahora puede mostrar colores más cálidos para descansar la vista y que sea más fácil dormir de noche.

Seleccione el botón Inicio  y luego selecciona Configuración  > Pantalla . Active Luz nocturna o seleccione Configuración de la luz nocturna para establecer su propia programación.

Antivirus

Centro de seguridad de Windows Defender

Windows Defender ahora se denomina Antivirus de Windows Defender y ofrece protección integrada contra virus y amenazas, así como opciones de familia para ayudar a mantenernos protegidos cuando estemos conectados. Si le interesa este tema , visite el Centro de seguridad de Windows Defender para ver cómo ayuda Windows a proteger su PC.

 

Una nueva manera de organizar Inicio y mayor personalización

Creación de carpetas de ventanas en Inicio

Para ahorrar algo de espacio en el menú Inicio, tome una ventana y colóquese sobre otra ventana para agrupar las ventanas de aplicaciones en carpetas.No nos referimos a las carpetas de ficheros, sino a carpetas donde podemos poner varios iconos dentro. De este modo, al pulsar sobre la carpeta, tendremos acceso a un grupo de aplicaciones. Es algo muy parecido a lo que tenemos en Android y iOS.

Es posible acceder  a  más colores y temas que nunca personalizando la apariencia de Windows 10, hasta el matiz. Windows recuerda incluso temas anteriores que ha explorado, por lo que es muy fácil volver a cualquier tema que se adapte a su estado de ánimo.

Esta accesible seleccionando el botón Inicio  y luego seleccionando Configuración  > Personalización  para obtener una vista previa y jugar con todas las nuevas opciones.

Configuración de personalización de los temas

 

 

Asimismo la configuración se ha optimizado para facilitar la búsqueda y la ayuda. Aplicaciones y Juegos ahora tienen sus propias categorías de configuración, y los vínculos a soporte técnico, comentarios y otra ayuda ahora están disponibles con mayor facilidad.Se  puede ver  seleccionando el botón Inicio  y después seleccionando Configuración  para echarle un vistazo.

Microsoft Edge

Reservar pestañas en Microsoft Edge

Navegar por Internet con Microsoft Edge es mejor pues se han agregado nuevas características que  ayudarán a organizar las pestañas, leer libros electrónicos, estar más protegido y usar Cortana y Windows Ink para darle vida a la exploración.

Según  Microsoft  Edge es el explorador más rápido y seguro diseñado para Windows 10.

Microsoft Edge  ademas  proporciona nuevas formas de encontrar contenidos, administrar pestañas, leer libros electrónicos, escribir en la web y obtener ayuda de Cortana, directamente en el navegador.Es muy útil  agrega extensiones para traducir sitios web, bloquear anuncios, administrar contraseñas y mucho más.

 

 

Entrada manuscrita con Office

Windows Ink en PowerPoint

Empuñae   su dedo o lápiz digital para anotar y editar documentos, tachar palabras para que desaparezcan, enmarcar texto para seleccionarlo y resaltar con precisión.

Vea vídeos 360° y más de forma gratuita

La aplicación Películas y TV ahora viene con vídeos 360° incluidos que nos  permiten mirar hacia arriba, hacia abajo y todo alrededor mientras se reproduce el vídeo. También puede ver tráileres de películas, obtener recomendaciones basadas en sus hábitos de visualización y examinar y comprar nuevos contenidos de películas y TV directamente en la aplicación.

 

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

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

Recicle su viejo portatil con Linux


Lubuntu está dirigido a los usuarios de PC y portátiles que se ejecutan en hardware de bajas especificaciones   en los momentos  actuales , es decir un ordenador vamos a decir «anticuado»  de  hace ya algunos años que conserva quizás  otros sistema operativo no  actualizable por lo que no esta  a la altura a efectos de seguridad  o  para ejecutar aplicaciones actuales orientadas a la web. Es triste  pero  esos equipos  funcionales  simplemente no tienen suficientes recursos para todas las ventanas,avisos y notificaciones de las distribuciones corrientes «con todas las funciones».

Precisamente para dar una segunda oportunidad  a equipos anticuados, los miembros del equipo se encargan de LXDE y otros paquetes que forman parte de Lubuntu.

Ademas es importante que  Lubuntu recibió el reconocimiento oficial como miembro formal de la familia Ubuntu, comenzando con Lubuntu 11.10.

 

 

Lubuntu vs Ubuntu

Ambos Lubuntu y Ubuntu comparten dos grandes cosas importantes:

  • Core System Same
  • Mismas Repositorios

Lubuntu y Ubuntu pertenecen a la misma familia y hablar de ellos como totalmente diferentes sistemas no es correcto, ya que tienen algunas cosas en común. Por lo tanto, utilizan el mismo Foro Zona y comparten muchas páginas Wiki.Las diferencias entre Lubuntu y Ubuntu son:

  • Diferente entorno de escritorio – Lubuntu utiliza LXDE mientras Ubuntu utiliza la Unidad como la DE defecto.
  • Diferentes aplicaciones predeterminadas.Aparte de eso, son la misma. La DE es lo que hace que Lubuntu un sistema operativo ligero, y por supuesto las aplicaciones por defecto también, porque nos aseguramos de usar las aplicaciones más ligeras que no están ávidas de recursos.

 

 

Lubuntu 17.04

Lubuntu Artful Aardvark Alpha 1 (pronto a ser 17.10) ha sido liberada  sustituyendo a la versión 16.04.

También esta versión (además de la habitual LXDE ISO) es una imagen experimental con LXQt en lugar de LXDE.

 

Lubuntu incluye por defecto los siguientes paquetes como aaplicaciones de usuario:

  • Abiword – procesador de textos
  • Audacious – reproductor de música
  • Evince – lector de PDF
  • File-roller – gestor de archivadores
  • Firefox – navegador web
  • Galculator – calculadora
  • GDebi – administrador de paquetes
  • Gnumeric – hoja de cálculo
  • Guvcview – webcam
  • LightDM – gestor de sesiones
  • Light-Locker – bloqueador de pantalla
  • Lubuntu Software Center – gestor de paquete
  • MPlayer – reproductor de vídeo
  • MTPaint – editor de fotografías
  • Pidgin – mensajería instantánea
  • Scrot – capturas de pantalla
  • Simple Scan – escaneo
  • Sylpheed – cliente de correo electrónico
  • Synaptic – gestor de paquetes
  • Transmission – cliente bittorrent
  • Update Manager – gestor de actualizaciones
  • Startup Disk Creator – creador de usbs booteables
  • Wget – gestor de descargas CLI
  • XChat – cliente IRC
  • Xfburn – grabador de CD
  • Xpad – gestor de notas

Ademas, incluye sus propios paquetes  de LXDE

  • GPicView – visor de imágenes
  • Leafpad – editor de texto plano
  • LXAppearance – gestor de temas
  • LXDE Common
  • LXDM –
  • LXLauncher – modo fácil de lanzar aplicaciones
  • LXPanel – Barra de tareas
  • LXRandr – gestor de pantalla
  • LXSession – gestor de sesiones
  • LXSession Edit – editor de LXSession
  • LXShortCut – editor de lanzadores
  • LXTask – gestor de tareas
  • LXTerminal – emulador de terminal
  • Menu-Cache
  • Openbox – window manager
  • PCManFM – gestor de archivos

Lubuntu también puede usar el gestor de paquetes de Ubuntu.

Notas para la instalación

  • El instalador por defecto «Escritorio» requiere 384-800 MB de RAM (dependiendo de las opciones seleccionadas.) Si tiene algún problema, o si se siente cómodo usando una interfaz de teclado, pruebe el instalador alternativo para instalar en equipos con menos memoria RAM o un disco duro más pequeño que 4,3 GB.
  • Compruebe MD5SUM para el ISO descargado – Usted tendrá que comparar su MD5SUM con Ubuntu hashes .
  • Debe Grabar el CD O crear una unidad flash USB de arranque –
  • Comprueb  lso errores del  USB o el  Disco rebotable. Al arrancar el programa de instalación por defecto, verá la opción de «Comprobar disco para los errores», de lo contrario, comprobar si hay errores de forma manual .

 

Descarga

La ultima version disponible para ordenador PC es la 17.04  aunque mantienen la versión anterior 16.04  para la plataforma Raspberry Pi 2  y 3

Para instalar lubuntu pc , lo primero es descargar la imagen iso para instalarlo en el arranque del equipo teniendo en cuenta eso si la arquitectura de la maquina.

Respecto a  la arquitectura la  versión de 32 bits servirá ara casi todas las PC .Es posible que necesite una ISO de 32 bits, para PCs anteriores a 2007.( elija esta  opción  si no está seguro) .La  versión de 64 bits es para equipos Intel o AMD.

Ademas  existe una versión PowerPC para Apple Macintosh G3 / G4 / G5 e IBM OpenPower (LTS solamente).

 

El link de descarga es el siguiente :   http://lubuntu.me/downloads/

 

 

 

 

Grabación  de imagen Libuntu en DVD

 

Durante mucho tiempo la manera en la que se podía montar imágenes iso en sistemas windows ha sido mediante programas de terceros que lo permitieran( como por ejemplo : Daemon Tools o Virtual CloneDrive,etc )  , pero a partir de Windows 8 en adelante se añadió una nueva  funcionalidad  que permite grabar imagenes ISO directamente con las herramientas que proporcionan el s.o.

Para grabar imágenes ISO en un CD o DVD, podemos hacerlo también de manera nativa  en Windows 10, para lo cual  introducimos en la grabadora CD/DVD un disco virgen.

Muy importante, antes de grabar, hay que fijarse en el tamaño de la ISO, ya que el límite que se puede grabar en un CD es de 700 MB.  Com  en el caso de la version 17.04  ocupa de hecho unos  916MB tendremos que usar un DVD  .

Hacemos clic derecho sobre la imagen ISO y seleccionamos la opción “Grabar imagen de disco”.

Al seleccionar la opción “Grabar imagen de disco”, aparecerá una ventana donde tendremos que seleccionar la unidad en la que vamos a grabar y si queremos o no verificar los datos del  DVD una vez termine la grabación.

Cómo se ver  es muy fácil montar y grabar imágenes ISO en Windows 10 de forma nativa gracias a la inclusión que se ha hecho a partir de Windows 8 de esta funcionalidad, que permite olvidarnos de programas de terceros

NOTA: Es posible que al hacer clic derecho sobre una imagen ISO no le aparezcan las opciones que explicamos más abajo. Eso es debido a que esta usando un programa de terceros por defecto. Si quiere montar o grabar imágenes ISO de manera nativa en Windows 10, debe hacer clic derecho sobre la imagen ISO, seleccionar «Propiedades» y después en la pestaña General hacer clic sobre «Cambiar…» para seleccionar el “Explorador de Windows”.

Creando un USB arrancable de Lubuntu con Etcher

  1. Descargamos Etcher desde este enlace. Podemos instalar la aplicación, pero esto no es necesario en Linux.
  2. Descargamos la versión más reciente de Lubuntu.
  3. A continuación, introducimos un pendrive de como mínimo 2GB en un puerto USB. Hay que tener en cuenta que Etcher eliminará todos los datos del pendrive, por lo que merece la pena copiar sus datos en otra unidad antes de iniciar el proceso.
  4. Ejecutamos Etcher
  5. A continuación, hacemos clic sobre SELECT IMAGE.

Etcher

  1. En el siguiente paso buscamos la imagen que habremos descargado en el paso 2.
  2. Ahora hacemos clic en SELECT DRIVE y elegimos la unidad de nuestro pendrive. Si sólo tenemos uno puesto, la selección será automática, pero no está de más asegurarse.

Etcher

  1. A continuación, hacemos clic en FLASH IMAGE.

Etcher

  1. Por último, esperamos a que finalice el proceso. Veremos una imagen como la siguiente:

Etcher

Nota:   No todos los equipos «antiguos»pueden arrancar un sistema operativo desde una unidad extraible USB  por lo que asegúrese que su equipo soporta el arranque por USB antes de hacer la imagen con Etcher

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;

 

Conozca la potente herramienta gratuita de edición de estilos con Edge


Gracias  a que Microsoft se asoció con BrowserStack para obtener pruebas en vivo y automatizadas en Microsoft Edge  ,este  navegador  introduce nuevas mejoras en las herramientas de desarrollo de F12, incluyendo algunas de las funciones más solicitadas de UserVoice. Además las nuevas herramientas se construyen en TypeScript y siempre se ejecutan en cualquier instalación de Edge, por lo que no se requiere  instalar nada .OP Otro punto interesante es que  la documentación de las herramientas para desarrolladores de F12 está totalmente disponible en GitHub por lo que los documentos no sólo serán influenciados por sus comentarios, sino que están invitados a contribuir y ayudar a dar forma a la documentación.

Las  hojas de estilo en cascada (o CSS, siglas en inglés de Cascading Stylesheets) son un lenguaje de diseño gráfico para definir y crear la presentación de un documento estructurado escrito en un lenguaje de marcado como puede ser html  por lo que es muy usado para establecer el diseño visual de las páginas web, e interfaces de usuario escritas en HTML o XHTML;o incluso a cualquier documento XML, incluyendo XHTML, SVG, XUL, RSS, etc
Junto con HTML y JavaScript, CSS es una tecnología usada por muchos sitios web para crear páginas visualmente atractivas, interfaces de usuario para aplicaciones web, y GUIs para muchas aplicaciones móviles (como Firefox OS) por lo qeu es muy interesante disponer de alguna herramienta que nos ayude a gestionar,mejorar o modificar las hojas de estilo.

En este contexto Microsoft Edge dispone de siete herramientas distintas que  permiten ver,editar inspeccionar  y alterar tanto código css,html como javascript   cada una con su propia pestaña en la interfaz de las herramientas F12  de modo que vamos  a ver  una imagen de cada herramienta y un resumen rápido de lo que hace, seguido por las listas de sus principales características y tareas típicas.

La herramienta DOM Explorer (CTRL + 1)

La herramienta DOM Explorer muestra la estructura de una página web tal como está siendo representada en el navegador , haciendo posible editar su HTML y estilos en una página en vivo ( obviamente no se cambiara nada en el servidor sólo en la pagina visualizada para ver como quedaría.

Puede hacerlo por tanto  sin tener que editar y volver a cargar sus fuentes, para que pueda solucionar rápidamente problemas de visualización o experimentar con nuevas ideas o mejoras .

Explorador DOM de bordes

Las funciones de la herramienta DOM Explorer incluyen:

  • Sugerencias de autocompletado de IntelliSense al editar atributos HTML y propiedades CSS.
  • Arrastre los nodos DOM para reorganizarlos y editar nodos como HTML.
  • Apoyo para CSS compilado sourcemaps.

Desarrollo y tareas de depuración que hace más fácil:

  • Determinar por qué un elemento no se muestra en el lugar correcto o tamaño correcto.
  • Determinar qué estilos CSS y consultas de medios se están aplicando a un elemento.
  • Prueba de una serie de colores diferentes para un elemento para ver que se ve mejor.

La herramienta Consola (CTRL + 2)

Herramienta de consola de borde

La herramienta Consola proporciona una forma de interactuar con el código en ejecución:

  • Cambie los valores de las variables o inyecte código en un sitio en vivo con la línea de comandos de la consola.
  • Utilice la API de depuración de consola para enviar información de depuración.
  • Consulte los mensajes de error del navegador y los códigos de estado.

Las características de la herramienta Consola incluyen:

  • Abra la consola en la parte inferior de cualquier otra herramienta con el botón de consola o CTRL + ` .
  • Consola Depuración de métodos API para sincronización, recuento, agrupación y más.
  • Las sugerencias de autocompletado de IntelliSense en la línea de comandos aceleran la entrada, reducen errores tipográficos y le ayudan a descubrir aspectos de las API de JavaScript.

Desarrollo y tareas de depuración que hace más fácil:

  • Segmentación de iFrames específicos.
  • Ejecución de código de tiempo hasta la instrucción con nuevos métodos de temporización.
  • Cambiar el valor de una variable en el código en ejecución sin recargar.

 

La herramienta Depurador (CTRL + 3)

Herramienta de depurador de bordes

Puede utilizar la herramienta Depurador para examinar lo que está haciendo su código, cuando lo está haciendo y cómo lo está haciendo. Detenga el código en la mitad de la ejecución, pase a través de él línea por línea y observe el estado de las variables y los objetos en cada paso.

Las características de la herramienta Depurador incluyen:

  • No se actualiza la depuración. Establezca sus puntos de interrupción y vaya sin recargar y perder estado.
  • Interfaz de documentos con pestañas para facilitar la gestión de múltiples secuencias de comandos.
  • Puntos de interrupción en código estándar, respuestas de XHR y eventos.

Desarrollo y tareas de depuración que hace más fácil:

  • Ver lo que llevó a una llamada de función utilizando la pila de llamadas.
  • Hacer que el código comprimido o minificado sea más legible usando mapas de origen.
  • Supervisión de la creación y ejecución de los servidores web.

 

La herramienta de red (CTRL + 4)

Herramienta de red de bordes

La herramienta de red le ofrece los detalles finos de las solicitudes de red relacionadas con la carga y operación de sus páginas web.

Desarrollo y tareas de depuración que hace más fácil:

  • Visualización de la cantidad de ancho de banda que consume su página en los recursos.
  • Depuración de solicitudes AJAX mediante la visualización de los encabezados y los órganos de solicitud y respuesta.
  • Identificar las solicitudes de red que ralentizan la carga de sus páginas web.

 

La herramienta de rendimiento (CTRL + 5)

Herramienta de rendimiento de borde

La herramienta Rendimiento le ayuda a buscar lo que está sucediendo cuando su página se ralentiza. Usarlo para perfilar puntos específicos de lentitud muestra las operaciones que los están causando. En Microsoft Edge, la herramienta Rendimiento combina las herramientas anteriores de Capacidad de respuesta y Profiler deUI para crear una vista de extremo a extremo de su rendimiento de secuencias de comandos y pintura.

Algunas características interesantes son:

  • Identificar las diferentes fuentes de actividad de la CPU que causan lentitud de la UI.
  • Conozca la velocidad de fotogramas de su página web y la cantidad de repintados y reflujos que cuestan.
  • Establecimiento de etiquetas en la línea de tiempo para aislar escenarios de usuario.
  • Desarrollo y tareas de depuración que hace más fácil:  Optimizaciones de código de prueba y Acelerar sus páginas web.

La herramienta de memoria (CTRL + 6)

Herramienta Edge Memory

Cuando una página web comienza rápido y se ralentiza después de usarlo durante un tiempo, el culpable es generalmente una pérdida de memoria. La herramienta de memoria rastrea el uso de la memoria de su página web, ayudándole a identificar dónde crece el uso de la memoria, por qué está creciendo y cómo solucionarlo.

Algunas características interesantes son:

  • Una línea de tiempo para ver los cambios progresivos en el uso de la memoria.
  • Instantáneas para examinar los detalles del uso de memoria en puntos específicos.
  • Comparaciones de instantáneas para identificar puntos específicos de crecimiento.

Desarrollo y tareas de depuración que hace más fácil:

  • Identificar nodos DOM desprendidos.
  • Identificar los puntos de crecimiento de la memoria.
  • Medir el uso de memoria de objetos.

Herramienta de emulación de bordes

La herramienta de emulación le ayuda a probar cómo se ejecutan las páginas web en diferentes tamaños de pantalla y características de hardware y cómo responden a las diferentes cadenas de agente de usuario.

Algunas características interesantes son:

  • Emulando diferentes tamaños de pantalla y resoluciones.
  • Simulación GPS.

Desarrollo y tareas de depuración que hace más fácil:

  • Prueba de diseños sensibles en múltiples tipos de pantallas.
  • Prueba de las funciones de detección de ubicación para un sitio móvil.

 

 

 

Fuente https://docs.microsoft.com/

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

 

Desarrollo de aplicaciones nativas multiplataforma en Windows


Microsoft  ha demostrado  un  compromiso con el código abierto  ayudando a navegar por herramientas de código abierto, marcos y plataformas, por ejemplo   desarrollando Apache Cordova ,creando y realizando el mantenimiento de complementos de diferentes plataformas,colaborando con Google para ofrecer la herramienta Angular JS 2.0,etc.

Como ejemplo vamos a ver en este post como es posible desarrollar para diferentes entornos moviles usando una de las herramientas mas famosas de desarrollo de Microsoft ,la cual  por cierto esta  disponible para ambientes de educación o formación de forma gratuita

Tipos de aplicaciones móviles

A la hora de crear aplicaciones móviles para plataformas como Android o iOS contamos con varias alternativas:

  • Aplicaciones nativas :muy buen rendimiento y se pueden distribuir desde las tiendas de aplicaciones. Hay que desarrollar las apps para cada entorno  usando herramientas especificas como por ejemplo:

En Android:  Android Studio o Eclipse

En IoS: Swift, Objetive-c  o Xcode

                       En Windows Phone: Visual  Studio

  • Aplicaciones web móviles: un único desarrollo con tecnologías web (js, hrml5 y css).No se distribuyen desde las apps  stores y no permiten acceder a todas las capacidades del hw del móvil. También se está desarrollando las llamadas apps  progresivas
  • Aplicaciones móviles hibridas:se mezclan ambas tecnologías sobre una carcasa  nativa que incrusta una web view. A diferencia de las aplicaciones web móviles pueden distribuirse en las diferentes apps stores incluso permitiendo magnetización de estas. Si bien el rendimiento no es tan bueno como las nativas permiten acceder a diferentes terminales  mediante un   desarrollo web  incluso pudiendo acceder a elementos  hardware . Entre las herramientas mas famosas destacan Phonegapp o Ionic, basadas ambas  en Apache-Cordoba

Creación de  aplicaciones para móviles mediante HTML, CSS y JS

Las aplicaciones móviles híbridas son una combinación de tecnologías web como HTML, CSS y JavaScript, que no son ni aplicaciones móviles verdaderamente nativas, porque consisten en un WebView ejecutado dentro de un contenedor nativo, ni tampoco están basadas en Web, porque se empaquetan como aplicaciones para distribución y tienen acceso a las APIs nativas del dispositivo.

Si sabe cómo crear aplicaciones web, rápidamente se sentirá cómodo creando aplicaciones móviles para iOS, Android y Windows mediante Apache Cordova.

La mayoría de desarrolladores obtiene cerca de un 100 % de reutilización del código aprovechando la API de JavaScript compartida de Cordova para acceder a las funcionalidades de dispositivo nativo, como la cámara, el calendario y los contactos.

Además, debido a que las aplicaciones híbridas utilizan vistas web nativas, puede llevarse su marco JavaScript favorito consigo (marcos como Angular, React e Ionic).

Y hablando de Ionic, es un SDK de código abierto que provee herramientas y servicios para desarrollar aplicaciones móviles híbridas. Está construido por encima de AngularJS y Apache Cordova y se centra principalmente en el look and feel y la interacción con la interfaz de usuario de la aplicación, con la finalidad de simplificar el front-end.

Ionic    es  pues  :

  • Un framework CSS con multitud de elementos de front-end reutilizables y personalizables, que permiten desarrollar una interfaz de usuario relativamente rápido, como por ejemplo encabezados, pies de página, botones de diferentes tamaños y estilos, listas, avatares, tarjetas, formularios, entradas, casillas de verificación, pestañas y,etc .
  • Una biblioteca JavaScript de interfaz de usuario con componentes JS que dan vida a los elementos del front-end y se utilizan como elementos HTML en la aplicación. Uno de los componentes JS de Ionic más utilizados es el componente pestañas,  el cual permite que un determinado contenido se muestre u oculte en función de la pestaña seleccionada por el usuario.

 

 

Visual Studio con Córdova

Debido al aumento de la complejidad de las aplicaciones, necesita más que un editor de texto por lo que el IDE Visual Studio 2017 es una buena  opción  pues integra un editor de código optimizado para la refactorización, el completado automático y la comprensión del código

 

Resumidamente   Visual Studio 2017 ofrece las siguientes  funcionalidades  :

  • Resaltado de sintaxis para ayudarle a identificar los errores visualmente
  • IntelliSense para ayudarle a comprender y codificar mejor las nuevas API
  • Inspección de código para revisar la referencia en línea
  • Si  su aplicación funciona y tiene el aspecto exacto diseñado por usted Tanto si trabaja para iOS, Android o Windows, Visual Studio ofrece compatibilidad de vista previa para una amplia variedad de emuladores y dispositivos anclados a red.Incluso puede implementar y depurar emuladores hospedados en una máquina remota o virtual (por ejemplo, paralelos).
  • Depuración y análisis .Independientemente de dónde se ejecute su código, Visual Studio puede depurarlo (tanto si su código se está ejecutando en un dispositivo iOS, Android o Windows, un emulador o simulador o en un destino de depuración basado en explorador como Ripple). No es necesario cambiar de herramientas cuando crea para otra plataforma. Visual Studio se conecta con casi cualquier destino de implementación.El depurador de Visual Studio le permite revisar el código con puntos de interrupción y notificaciones de excepción automática que exponen el estado del tiempo de ejecución de objetos y variables.Las funcionalidades avanzadas, como editar y continuar, los puntos de interrupción condicionales, los puntos de seguimiento y los números de llamadas ofrecen el tipo de análisis detallado que necesita para que el código resulte divertido y no un juego despiadado de “localización del error”.
  • Acceso a capacidades de dispositivo nativo.Con tecnología de Apache Cordova, sus aplicaciones escritas en HTML, CSS y JavaScript pueden acceder fácilmente a las API de dispositivo nativo que todavía no se encuentran disponibles para los exploradores (por ejemplo, la cámara, el calendario, los contactos, el escáner de códigos de barras, etc.).Lo mejor de todo es que puede acceder a capacidades de dispositivo nativo a través de una API de JavaScript común para obtener la máxima reutilización de código en su aplicación.
  • Conexion  a datos ( a la plataforma de Azure ):con tan solo unas cuantas líneas de código, puede Usar notificaciones de inserción para conectarse con usuarios específicos o audiencias completas,Habilitar la mensajería en tiempo real para provocar conversaciones y el uso compartido entre sus usuarios,Admitir capacidades sin conexión para aquellas ocasiones en las que no haya disponible una conexión de red,Administrar datos de Exchange mediante las API de servicio de Office 365 para compartir y editar calendarios, contactos, archivos, etc.

 

 

 

 

Instalación Visual Studio  para apps moviles

Todo lo que usted necesita para poder comenzar  con Visual Studio es descargar alguna de las siguientes versiones:

El  instalador realiza todo el trabajo pesado necesario para poner en marcha el equipo con los SDK, bibliotecas, herramientas, etc. necesarios para crear aplicaciones multiplataforma.

Para Instalar las herramientas de Cordova con una instalación inicial de Visual Studio siga lso siguientes pasos:

  1. Para instalar Visual Studio Tools para Apache Cordova junto con una instalación limpia de Visual Studio, descargue e inicie el instalador de Visual Studio ( en de algunos de los tres links de arriba o directamente si necesita el  la versión  sin coste en el link  siguiente: Visual Studio Community  :)
  2. El instalador mostrará la lista de componentes instalables mostrada en la siguiente figura.Al instalar  Visual Studio, deberua  asegúrarse  de incluir los componentes opcionales, HTML / JavaScript (Apache Cordova) bajo Desarrollo móvil multiplataforma como vamos a ver.Inicio de instalación de Visual Studio Tools para Apache Cordova
  3. Desplácese por la lista de cargas de trabajo disponibles y localice un grupo denominado Mobile & Gaming .
  4. Marque la casilla de verificación junto a Desarrollo móvil con JavaScript como se muestra en la siguiente figura. Esto permitirá la instalación de los componentes necesarios para las herramientas de Córdoba.  Selección de la instalación de Cordova Tools
  5. Dependiendo de sus necesidades específicas de desarrollo, es posible que deba instalar componentes opcionales adicionales. Por ejemplo, para apoyar el desarrollo de aplicaciones para Android, necesitará agregar soporte para el SDK de Android . Para probar las aplicaciones de Android en los emuladores, debe agregar soporte para Google Android Emulator , como se muestra en la siguiente figura.Si su entorno de desarrollo de Cordova ya incluye estas herramientas, puede omitir la instalación de nuevo aquí y modificar la configuración de Visual Studio Tools para Apache Cordova para apuntar a la instalación existente más adelante.Personalización de la instalación de herramientas de Cordova
  6. Compruebe rápidamente que puede cargar y crear la plantilla de aplicación en blanco predeterminada. En Visual Studio, elija Archivo , Nuevo , Proyecto , JavaScript ,Aplicaciones de Apache Cordova , Aplicación en blanco y nombre el nuevo proyecto «en blanco» y construya con F5. Si tiene algún problema, consulte estos pasos de solución de problemas .
  7. Ionic es un popular framework front-end JavaScript para desarrollar aplicaciones móviles multiplataforma usando Cordova. Puede utilizar Visual Studio 2015 para crear y depurar fácilmente aplicaciones multiplataforma Ionic.http://www.youtube.com/watch?v=4fNmTkYGVeUPuede instalar las plantillas de inicio de Ionic en Visual Studio y utilizarlas para comenzar a crear una aplicación.
    1. Agregue directamente a Visual Studio descargando y haciendo doble clic en VS Extension for IonicO bien, hágalo en Visual Studio, seleccionando Archivo , Nuevo y luego Proyecto .
    2.  En el cuadro de diálogo Nuevo proyecto, seleccione en línea .
    3.  En el cuadro de búsqueda, escriba Ionic .                                                Cómo obtener las plantillas
    4.   Escriba cualquier nombre y elija Aceptar para instalarlos. Cuando se le solicite permiso para instalar las plantillas, dé su permiso.
    5. Cierre y vuelva a abrir Visual Studio.
    6. De nuevo, elija Archivo , Nuevo y , a continuación, Proyecto.
    7. Ahora, elija  Instalar y , a continuación, Plantillas , las plantillas de inicio nuevas aparecerán en JavaScript , Apache Cordova AppsElegir una plantilla
    8. Elija una de las siguientes plantillas de inicio para su nuevo proyecto:
      • Aplicación en blanco iónico
      • Plantilla Iónica de SideMenu
      • Plantilla de Tabulaciones Iónicas
    9. Elija Aceptar .Visual Studio crea el proyecto Ionic.
    10. Agregue IntelliSense para Ionic a su proyecto.

    Haga que su aplicación funcione en Android

    1. Añada la plataforma Android de Android como destino de depuración (lista de plataformas de soluciones) y , a continuación, seleccione Generar y , a continuación, Crear solución .
    2. Elija Android como destino de depuración (lista de plataformas de solución) y para que la aplicación funcione seleccione un destino como el VS Emulator 5 «KitKat (4.4) (se requiere Hyper-V) o Google Android Emulator (lento para cargar inicialmente).  Ejecutar la aplicación
    3. Puede configurar un emulador de Google Android en AVD Manager .También puede ejecutar en el simulador de Ripple en su lugar, pero tendrá que utilizar la solución descrita más adelante en este artículo .
    4. Presione F5 y la aplicación debería cargarse correctamente.                     Aplicación que se ejecuta en el emulador

    Haga que su aplicación funcione en iOS

    Puede ejecutar inicialmente en el Emulador de Ripple después de seleccionar iOS como destino de depuración, pero para obtener información detallada sobre cómo configurar el agente de remoción remota para iOS, consulte este tema .

    Las plantillas de inicio de Ionic deben ejecutarse correctamente en iOS cuando el agente de remotebuild se ejecuta en un Mac (o un servicio como MacInCloud) y cuando Visual Studio está configurado para conectarse a él.

 

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/

Obtener ingresos extras gracias a Amazon Mechanical Turk


En este blog hemos hablado del programa de afiliados de amazon, de la plataforma  Kdp o de la  famosa  herramienta createspace    , todas ellas dedicadas a monetizar  nuestras  diferentes creaciones bien sean contenidos en web o  bien  nuestras publicaciones llevadas a libros físicos o en formato e-book

Al conjunto de herramientas  que Amazon pone  a nuestra disposición para ayudarnos  a monetizar nuestro trabajo (  obviamente  a cambio  de un porcentaje del 10%  por uso de la plataforma ),    vamos a añadir  una cuarta herramienta  basada en el crowdfunding  ,la plataforma Mechanical Turk   ,  la cual permite a personas recibir una remuneración pequeña  por acciones puntuales.

 

Sin duda nos debe sorprender el extraño  nombre de  Mechanical Turk , que debe este al personaje Wolfgang von Kempelen que dejaba  atónitos a los europeos al crear un «falso» autómata mecánico llamado Turk pues aparentemente jugaba al ajedrez  usando «inteligencia artificial»   venciendo  prácticamente a cualquier oponente (se dice que llegó a ganar a Benjamin Franklin y Napoleón Bonaparte ) .

Hablamos de  falso autómata pues  tras el  maniquí de madera de tamaño real que se sentaba detrás de un pequeño armario donde  albergaba un  entramado de mecanismos: ruedas dentadas y muelles que «hacían» funcionar su invento  y sobre todo  se escondía un experto en ajedrez bien oculto en su interior: de ahí que Mechanical Turk tenga un nombre muy apropiado, pues aunque aparentemente se obtienen resultados de máquinas, en realidad se obtienen de cientos de miles de humanos que hacen el trabajo en paralelo y a veces en minutos.

 

 

Vemos como Mechanical Turk es  pus  una plataforma de ‘crowdsourcing’ a la que empresas, universidades y centros de investigación recurren en busca de mano de obra (barata) donde los demandantes publican tareas sencillas para que los usuarios registrados ( del orden de unos 500.0000)   como trabajadores las realicen, siempre a través de un ordenador y facilitándoles las herramientas necesarias.

 

La plataforma ofrece compensación a los usuarios que completen dichas  microtareas  o en ingles  HIT(Human Inteligence Tasks ) , es decir tareas de inteligencia humanas   propuestas por empresas que no disponen de personal para realizarlas  y que gracias a  esta plataforma son  posibles  pues   virtualmente dispone de  microtrabajadores que podrán realizar estas tareas a cambio claro de «micropagos»

 

 

En cada   HIT se especifica al menos lo siguientes conceptos:

  • Definición de la tarea
  • Salida deseada  (sobre todo su formato)
  • Forma en que se muestran los elementos de trabajo
  • Cuantía de la remuneración
  • Todo aquello relevante

 

Si nos preguntamos sobre esa microtareas nos referimos a labores que una maquina a día de hoy no puede hacer como por ejemplo :

  • Traducciones
  • Transcripciones de locuciones a texto
  • Opiniones sobre productos
  • Encuestas
  • Procesamiento de fotografías o videos ( etiquetar objetos seleccionar la mejor , auditar imagenes en función del contenido,clasificar objetos,etc)
  • Verificación o limpiezas de datos
  • Recopilación de información
  • Procesamiento de datos
  • etc

 

Respecto a la compensación , de estas microtareas va en función de la complejidad,    pero desgraciadamente no son muy altas (de hecho hay un documental que trata de la precariedad de estos trabajadores ),    pues pueden oscilar entre  2 y 20 céntimos de dolar por tarea concluida.

Si el trabajo es de calidad se  puede acceder a ofertas con una compensación más alta; si no, quien realiza el encargo tiene derecho a negarles el dinero. Amazon, por su parte, se lleva a modo de comisión un 10% del total que abonará el empleador.

Aparte de estas tareas «ofimáticas » hay  ejemplos muy  interesantes  que  han usado  o usan esta plataforma como son experimentos en ciencias sociales , investigación artística  y educativa o incluso en la búsqueda de personas desaparecidas

 

A nivel de sw incluso Amazon ofrece una Interfaz de Programación de Aplicaciones (API) de servicios web para que des arrolladores la  utilizan  para  enviar tareas al sitio web de Amazon Mechanical Turk, aprobar las tareas completadas e incorporar las respuestas a sus aplicaciones  .

Para este tipo de aplicaciones la transacción tiene una apariencia similar a la de cualquier llamada a procedimiento remoto: la aplicación envía la solicitud y el servicio proporciona los resultados.

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.

 

Montaje de un módulo de cámara de Raspberry Pi a un telescopio


Es sorprendente la cantidad de cosas que se pueden hace con una raspberry pi, tanto que de hecho día que pasa  aparecen nuevos usos que nos sorprenden . Como ejemplo  vamos a  ver  cómo conectar una cámara  de Raspberry Pi  a un viejo telescopio de mas de 10 años

Para  poder hacer esta mejora  necesitamos los siguientes componentes:

  • Raspberry Pi3  o en su defecto una Rasberry Pi 2
  • Camara para Raspberry Pi  de 5MP Webcam Video 1080p 720p, (la del enlace es una de las mas económicas dado que deberemos quitar la lente original  ).En el video  el módulo de la cámara de Raspberry Pi es un  NoIR V2 .,
  • Fuente de  5v  de al menos 700mA
  • Adaptador M12 para telescopio( CCTV M12  o   S-mount) :puede ser que sea la parte más difícil de encontrar. Tiene que encajar perfectamente  con su telescopio.
  •  Telescopio: en el ejemplo se usa un pequeño telescopio de 10 años de edad (Bosma D = 90mm / f = 1200mm f / 13.3)

Comenzamos con la  cámara Haiword  es una de las mas económicas para la Raspberry Pi(unos 15€ en Amazon) .El sensor de resolución nativo es de 5 megapíxeles capaz de 2592 x 1944 píxeles de imágenes estáticas.Soporta vídeo 1080p30, 720p60 y 640x480p60 / 90. La cámara es compatible con la última versión de Raspbian, el sistema operativo preferido de Raspberry Pi
El bus CSI es capaz de velocidades de datos extremadamente altas, y lleva exclusivamente datos de píxeles razón por la que esta cámara  utiliza la interfaz dedicada de CSI, que fue diseñada especialmente para la interfaz a las cámaras .

Para empezar a usar la cámara simplemente conectaremos el cable de cinta de la cámara al interfaz CSI de nuestra Rasberry Pi. Debemos tener mucho cuidado de enrasar muy bien el cable antes de fijarlo al conector  y después bajarle el tope para que no se suelte

Como paso previo, tal y  como se adelantaba ,   tenemos que  retirar la lente por lo que  se anulará la garantía del módulo de la cámara.

Normalmente, la distancia de centro a centro de los orificios de montaje es de 20 mm o 22 mm, no se puede instalar directamente en el módulo de cámara Frambuesa Pi  así que una solución es instalarlo con un tornillo en un agujero, y fijarlo con un lazo de cable en el otro agujero.

De la carcasa CCTV M12 (o S-mount) que es  de tipo de plástico, tiene que cortar un poco como se muestra en el vídeo

Por ultimo una vez montado , solo  hay que colocarlo en el telescopio

En el  siguiente vídeo podemos  ver mas detalles precisos de como acoplarlo a tu telescopio con un vídeo de muestra de la Luna al final del video.

Por cierto, estos módulos CSI de cámaras digitales para Raspberry Pi , no sólo pueden usados para acoplarlos a un telelescopio, sino por ejemplo para usarla en aplicaciones de seguridad ,para construir un espejo inteligente,  para seguimiento de objetos , o incluso para realizar una cámara casera digital con nuestra Raspberry Pi..

Como iniciar automáticamente una aplicación al encender el terminal


En efecto a veces en nuestros terminales Andrid ( smartphone, tabletas o incluso dispositivos destinados a conectar a la TV )   puede ser interesante  que al iniciarlos se ejecute alguna(s) aplicacion(es) especifica/s)  que nos pueda interesar para evitar tener que hacerlo manualmente.  

Usos interesantes  de este tipo de «necesidad»  podrian ser  por ejemplo  para iniciar automáticamente  una aplicación de alarma y monitorización de suministro eléctrico del  hogar como seguricasa ( de  la que hemos hablado en este blog)  o  para iniciar aplicaciones   destinadas al entretenimiento   ( por ejemplo Kodi)    o  aplicaciones visuales como pueden  ser relojes, despertadores, previsión del tiempo, navegadores, marcos de fotos,  etc

 

 

 

Aunque en la tienda oficial de Google , existen una gran cantidad de alternativas para iniciar automáticamente una  o varias aplicaciones y  que podríamos elegir, llama la atención   la app de AutoStart  porque la mayoría de otras aplicaciones   requieren que el terminal este rooteado ( recuerde  sobre todo que  si lo hace en su smartphone que hacerse de root  conlleva  un riesgo  por  la consiguiente brecha de seguridad para su datos)

Con esta app no es necesario pues tener acceso a root , siendo destacable  su interfaz  minimalista, sencillo  limpio y sobre todo que no consume gran cantidad de recursos en el sistema operativo Android.

AutoStart es pues  una interesante aplicación Android gratuita que podríamos usar, para ordenar a cualquiera de nuestras herramientas instaladas en el dispositivo móvil, para que se ejecute automáticamente cada vez que lo encendamos.

Las razones para instalar  esta app   pueden ser muy  diversas y variadas aunque personalmente  la prefiero para iniciar automáticamente  una aplicación de alarma y monitorización de suministro eléctrico del  hogar como seguricasa ( de  la que hemos hablado en este blog)

Otro uso destable  es usarla  con dispositivos  Android conectados a neustro TV ( como  pueden ser un “ChromeCast” o un mini PC)  ahorrándonos  muchos engorrosas pulsaciones.

Su   uso es muy sencillo pues  una vez  descargada   desde Google Play ,  la instalaremos en nuestro dispositivo aceptando los permiso pertinentes.

Cuando lo tenga  ya  instalado en su dispositivo móvil Android , sólo tiene que ejecutarla y dirigirse directamente hacia los ajustes.

 

AutoStart

Como puede apreciar en la pantalla de arriba , “AutoStart” tiene una interfaz minimalista en la configuración.

Veamos las opciones disponibles:

  • En la pantalla solamente tiene que pulsar al botón ON  para iniciar  el  propio servicio (es decir, para que esté siempre activa esta app  de modo que  pueda iniciar las app que deseeamos
  • Para configurar las apps que deseemos que se inicien  seleccionar al botón “Add” para agregar una o varias aplicaciones Android que desee que se ejecuten automáticamente cada vez que se encienda tu dispositivo móvil.
  • Una vez añadida una app , se puede    configurar un retraso en el inicio de esa app mediante el parámetro Start delay ( en segundos)  y el valor de Next app delay  ( en segundos) que define el tiempo para iniciar la siguiente aplicación ( es decir el primer valor corresponderá a la primera herramienta mientras que el segundo, al tiempo que debe esperar el sistema para que se vayan ejecutando el resto de aplicaciones Android) . Esta posibilidad de hecho es perfecta para muchos usuarios  pues impide  que  algunas aplicaciones se inicien al mismo tiempo  generando conflictos, mientras que esta aplicación nos ayuda a controlar el inicio.

autostart.PNG

Como podrá observar , “AutoStart” ofrece una simplicidad bastante grande a la hora de manejar su configuración  comparada con otro  tipo de aplicaciones .

En resumen   estamos ante una   app  ligera, rápida y eficiente auto-iniciando las apps que necesitamos y desactivando  las que roban esos preciosos segundos en el arranque.Visualmente no es ninguna maravilla, pero cumple su función ,  que es realmente lo que nos interesa ¿ no es así?.