Para realizar una sección dentro de un WordPress, primero deberemos de encontrar cuál es la distribución de los distintos templates que proporciona nuestro Theme. Es bastante posible que cada tema tenga una distribución distinta, por defecto encontraremos todo lo necesario dentro de la carpeta /themes/nombre_del_theme. Es muy posible que el tema disponga de una jerarquía de carpetas de forma ordenada y disponga de una subcarpeta denominada templates en la que se encuentran distintas plantillas creadas por los desarrolladores de dicho…
En programación existen varias maneras de convertir colores de un formato a otro. Este ejercicio puede ser una ayuda para poder determinar cuáles son las especificaciones de distintos tipos de dato. RGB to HEX es una forma de realizar un cambio de color en valores Red Green Blue a un número hexadecimal. Recientemente me encuentro ante una situación en la que obtengo valores de color en formato RGB. Es decir, para interpretar los colores necesito de un numero entero en…
Ya que hemos estudiado las MACROS en Arduino, ahora vamos a aplicar algo interesante para desarrollar de una forma más extensible nuestros programas. Si hemos programado alguna vez con otros lenguajes; especialmente en C; podremos observar que se nos permite manejar funciones con un número de parámetros de entrada variables. Por ejemplo, podríamos construir una función concatenación de Strings para añadir palabras una detrás de otra, hasta crear una frase extendida. Donde argc es el contador de argumentos de entrada…
Estudiando el firmware de impresión 3D más famoso; Marlin ; se puede aprender muchísimo acerca de la programación en C++ y cómo se pueden usar algunos aspectos escondidos muy interesantes para extender nuestros programas en Arduino. Vamos a hablar de los Arduino MACROS, que es lo mismo que una función, pero el genérico para otra serie de programas se utiliza este término. Por ejemplo para automatizar taréas dentro de un programa como Excel en el que tienes que alterar muchos…
Para manejar gráficos con Arduino existen muchos modelos de pantallas, ya sean OLED, LCD, TFT, o una combinación de ambas TFT-LCD, Táctiles, en blanco y negro, a color, tamaño. Existen varias cuestiones a tener en cuenta para elegir una y otra. Pero al fin y al cabo, hay que buscar la que mejor se adapte a nuestro objetivo. Por ejemplo, cualquiera de ellas nos seviría para representar información escrita como la navegación de archivos en una tarjeta SD; pero en…
Una adquisición muy interesante en el mundo Arduino, es la placa Esplora. Esta placa es quizás la mejor para aprender la programación de la placa, ya que integra casi todos los elementos que utilizaríamos con la placa Arduino normal. Entre ellos se encuentran: Joystick 4 Botones de dirección Potenciometro lineal Micrófono Zumbador LED RGB Sensor de Luz Acelerómetro Sensor de temperatura Por otra parte, esta placa tiene una serie de pines a los que se le puede conectar una pantalla…
Durante un tiempo he estado buscando información sobre la tecnología láser y hay cosas que se pueden hacer con una pequeña inversión. Así que opté por hacer algunas pruebas para poder montar en un futuro una más grande. Este modelo que aparece en la imagen se puede montar con dos grabadoras de DVDs y con la compra de algunos componentes y una Arduino para controlar el movimiento. El montaje de esta impresora lo estoy documentando en la siguiente página como…
LeapMotion es un aparato muy compacto que nos proporciona un mapeado de nuestras manos y nos permite integrar gestos y movimientos para desarrollar diferentes aplicaciones. Probándolo en diferentes sistemas operativos y revisando su funcionamiento en modo desarrollador he podido observar un aspecto de configuración que puede ocasionar problemas a la hora de funcionar. El controlador de LeapMotion tienen un panel de configuración llamado LeapControlPanel, pero puede ocurrir que el dispositivo no nos responda. Esto es debido a que el dispositivo…
Cuando queremos comunicarnos con un dispositivo, muchas veces mandamos información y recibimos información como un flujo de datos binarios que nosotros como seres humanos podemos leer traduciéndolos y aplicándoles un significado. El problema reside es que esta traducción de las manejo de las lecturas desde el monitor serie, se realizan mediante la tabla ASCII. Pero estos valores de la tablas ASCII funcionan correctamente cuando se manejan valores conocidos de teclado como las letras y números. Sin embargo los primeros elementos…
Para comenzar a comprender cómo funciona el Internet de las Cosas IOT, debemos entender como se establecen las comunicaciones para el desarrollo de proyectos basados en estos dispositivos. Los modelos de comunicación están regidos por una serie de estándares definidos por el IEEE. (Institute of Electrical and Electronics Engineers) De esta manera todos los fabricantes de dispositivos de comunicación en la red pueden establecer una serie de normas para que se puedan intercambiar información con eficacia y seguridad. Se establecen…
La librería CapacitiveSensor de Arduino se basa en un concepto electrónico sencillo pero que puede resultar a veces problemático en según que aplicaciones. Un ejemplo básico y sencillo para su uso, es la creación de un teclado que ejecuta un sonido en el momento que se presiona un trozo de papel albal; incluso con un papel y con un lápiz se puede generar un circuito sencillo para conectar estos elementos y crear música con Arduino. El caso concreto de este…
OnShape es un programa online que proporciona las facilidades de un programa de diseño paramétrico avanzado. A semejanza de Solidworks, se basa en la creación de croquis sobre planos de referencia y la aplicación de distintas operaciones para generar sólidos 3D que se pueden relacionar unos con otros hasta crear un modelo avanzado. Este programa es quizás lo más avanzado hasta ahora para crear diseños de ingeniería sin necesidad de una licencia o descargar gigas de una versión pirata o…
En este post voy a proponer un ejercicio relacionado con el diseño de piezas 3D mediante la API de Tinkercad. En el post anterior generábamos el contorno de una pieza en 2D que despues extruíamos para generar el modelo tridimensional como aparece en la siguiente figura. Pero el código que habíamos creado solo realizaba medias circunferencias y el resultado no es del todo limpio. Puesto que existe un escalón, queremos ahora crear una pieza con un contorno menos…
Tinkercad es una plataforma de diseño online muy intuitiva para crear piezas y diseños de forma rápida. Si lo que queremos es hacer un muñéco o piezas simples con unas medidas concretas; podemos hacerlas sin necesidad de amplios conocimientos en diseño. Otras herramientas de diseño como FreeCAD o OpenSCAD suponen una transición hacia el modelado paramétrico. ¿Qué es el modelado paramétrico? El modelado paramétrico es una forma de crear modelos; como indica la propia palabra; en función de parámetros definidos.…
Siguiendo el tutorial de protocolos Bluetooth, ahora vamos a explicar en que consiste realmente un protocolo. Como vimos en el post anterior, definiamos una interpretación para los mensajes que obteníamos a través de la aplicación Robopad++, pero esta manera de comunicarse con un dispositivo se puede realizar con cualquier otra aplicación que posea comunicación Bluetooth. Esta vez vamos a utilizar una aplicacion una aplicación llamada ArduDroid. Esta aplicación está desarrollada para poder manipular los pines de nuestra placa de forma…
Como habíamos visto en un post anterior, podemos leer la información de nuestro módulo Bluetooth, pero para profundizar un poco más, debemos de darle un significado a esta forma de comunicación. Antes veíamos cómo conectar nuestro Bluetooth y sacar datos a través de una aplicación. Pero ahora se nos va a complicar esta manera de interpretar los datos.r Como habréis observado en la aplicación Robopad++ existen 3 modelos de robot. El renacuajo, el beetle y el evolution. Antes solo habíamos…
Vamos a explicar de forma fácil cómo conectar y comunicar un módulo Bluetooth con Bitbloq, para ello realizaremos un repaso a modo de tutorial para aquellos que les cueste llegar a la solución. Para empezar solo deberemos de conectar el módulo Bluetooth a nuestra placa . Para este ejemplo disponemos de un módulo Bluetooth HC-05 que podemos conectar al puerto Serial de Arduino. Resumidamente hemos de conectar los pines de recepción (RX) y transmisión (TX); que por defecto son los…
Como se explico en el post anterior, Javascript sufre de problemas de concurrencia si a la hora de asociar una función a un evento determinado, ésta función tarda más en ejecutarse que el procesado de la función. Esto hace que por defecto el navegador encole y acumule todas estas instrucciones y se vayan ejecutando unas detras de otras incluso cuando no le toca. Un ejemplo práctico de esto es el desarrollo de una aplicación para móvil con Phonegap. Phonegap…
Javascript Concurrency Javascipt tiene muchísimas ventajas, se puede hacer practicamente de todo, pero quizás una de sus mayores limitaciones es la ejecución de eventos de manera apropiada cuando se le ordena. Existen muchas funciones en Javascript que vienen definidas mediante eventos. Algunas de estas funciones se integran en función de la carga del DOM (Document Object Model) como puede ser el Onload, muy importante para iniciar correctamente las variables en un orden establecido. O una consulta a una base de…
Facebook Graph API es una interfaz para desarrolladores que permite conectarse a los servidores de Facebook y poder realizar consultas a sus bases de datos; siempre que los permisos hayan sido aceptados previamente. Si nos hemos registrado como desarrolladores para utilizar la API en nuestra aplicación o en nuestra página web; se podrá acceder al siguiente enlace desde el que podemos tener acceso a la información que requiramos, o incluso escribir o borrar información que no necesitemos. En primer lugar…