Sensores DHTxx

Una de las experiencias más gratificantes de viajar, es notar el cambio de temperatura y humedad que existe entre un lugar y otro. La temperatura hace referencia a la sensación que tiene el cuerpo humano con el calor, mientras que la humedad se denomina como la cantidad de agua adherida al cuerpo. Como en Panama Hitek somos ingenieros con sed de curiosidad y nos encanta aprender cómo funcionan diversos sensores y componentes electrónicos, en este caso les compartiré muchos de los conocimientos que he adquirido al utilizar los sensores de temperatura y humedad de la familia DHT, ampliamente utilizados en sistemas embebidos.

(más…)

Leer Más

Estructuras de Control en fischertechnik RoboPro

Como parte de nuestro interés por colaborar con el desarrollo de la robótica en nuestro país, Panama Hitek pondrá este espacio a disposición de docentes y estudiantes entusiastas de la robótica y tratará de contribuir con este movimiento a través e la publicación de artículos y tutoriales sobre este tema. Sobre esta iniciativa ya hemos escrito un artículo dando a conocer los motivos por los cuales nos hemos propuesto participar de este movimiento. En esta ocasión escribiremos sobre las estructuras de control en los diagramas de flujo.

En programación las estructuras de control son las diferentes formas en las cuales se ejecutan las instrucciones de un programa. A través de las estructuras de control el usuario le da las instrucciones al programa para que éste se ejecute según la voluntad del usuario. Debemos tomar en cuenta que no siempre necesitaremos que nuestras instrucciones sean ejecutadas una detrás de la otra, sino que en ocasiones es necesario tomar decisiones o caer dentro de ciclos repetitivos. Este tipo de situaciones ya lo explicamos en el post sobre diagramas de flujo que publicamos hace poco.

En esta ocasión vamos a proceder con la descripción de los 4 tipos básicos de estructuras de control. Cabe destacar que a nivel de lenguajes de programación se habla de más de 4 estructuras, sin embargo, este artículo será basado en la enseñanza del uso del software RoboPro de fieschertechnik, el cual utiliza programación por medio de diagramas de flujo. Para efectos de este artículo en específico, consideraremos las siguientes estructuras de control:

  • Estructura secuencial
  • Estructura selectiva
  • Estructura repetitiva
  • Estructuras anidadas

A continuación procederemos a detallar todas y cada una de las estructuras mencionadas, con sus respectivas ilustraciones y ejemplos prácticos. (más…)

Leer Más

¿Qué es y cómo funciona un potenciometro?

Un potenciometro es un dispositivo conformado por 2 resistencias en serie, las cuales poseen valores que pueden ser modificados por el usuario. Existen múltiples tipos de potenciometros, variando su forma y el método cómo modifican los valores de las resistencias. A continuación presentamos algunos modelos de potenciometros disponibles en el mercado:

potenciometros

También existen otros modelos especiales de potenciómetros llamados “trimmers”, los cuales son potenciómetros de precisión.

41e3UOemYrL._SY300_Los trimmer son utilizados para ajustes de precisión en circuitos donde se requiere que el usuario pueda  modificar ciertos parámetros. Sea un potenciometro común y corriente o un trimmer, ambos dispositivos comparten una característica: tienen 3 terminales (o patas). (más…)

Leer Más

Fischertechnik RoboPro: Interfaz en Nivel Principiante

Como parte de nuestro interés por colaborar con el desarrollo de la robótica en nuestro país, Panama Hitek pondrá este espacio a disposición de docentes y estudiantes entusiastas de la robótica y tratará de contribuir con este movimiento a través e la publicación de artículos y tutoriales sobre este tema. Sobre esta iniciativa ya hemos escrito un artículo dando a conocer los motivos por los cuales nos hemos propuesto participar de este movimiento.
En esta ocasión compartiremos con ustedes los conocimientos que hemos adquirido sobre el módulo ROBO TX Controller de la marca Fischertechnik. Sobre esta plataforma ya escribimos un artículo para Panama Hitek:

En dicho artículo hicimos una descripción de los componentes de hardware que forman el RTC. En esta ocasión procederemos a describir el software que se utiliza para programar el RTC, es decir, el RoboPro.

RoboTX Pro

Este software puede ser descargado gratuitamente desde la página oficial de fischertechnik. La versión más reciente del software hasta el día de hoy (13 de enero de 2016) es la versión 4.2.3. (más…)

Leer Más

Punteros: Serial Arduino – Parte III

Continuamos con la serie de publicaciones sobre Serial Arduino, de las cuales ya llevamos 2:
En esta ocasión el tema que trataremos será punteros. Punteros o también llamados apuntadores son tipo de variables que mejoran la eficiencia del compilador en lo que respecta al acceso a los datos en la memoria. Son muy populares debido a las importantes aplicaciones en el direccionamiento de estructura de datos como Listas, Colas y Arboles binarios. Gran parte de las librerías en C se implementan utilizando punteros.

Punteros son Variables.Cuando el compilador declara una variable, se establece una reserva de memoria en Bytes para la misma de acuerdo a si la misma es un Int, Char,Boolenan, Float, etc.  Cuando utilizamos dicha variable en un programa, el compilador accede a ella mediante su nombre a la dirección de memoria donde se encuentra el valor de dicha variable.  Es muy común que los programadores utilicen funciones o métodos o procesos o las tan viejas llamadas rutinas, para dividir el trabajo en partes, lo que se llama programación estructurada. Dichos métodos aceptan parámetros de entrada y pueden ser pasados por valor o por referencia.

(más…)

Leer Más

Cadenas y Arrays: Serial Arduino – Parte II

Serial Arduino parte II, tratará las diversas funciones para el tratamiento de Cadenas, y que ya hemos introducido el la primera parte Arduino Serial Parte I Veremos  la manipulación de cadenas , y arreglos o arrays[], y si vamos un poco mas profundo, el uso de punteros. En esta entrada vamos a cubrir la función Serial.read() de lectura de datos y su relación con las cadenas.

Lo primero que vamos a ver es la función Serial.read() , luego lo que son los arrays[], como se definen e inicializan. Teniendo un conocimiento de los arrays[], después podemos introducirnos en el mundo de las Cadenas que son un caso especial de los arrays[], y mas tarde con los punteros dada su similitud con las cadenas que conceptualmente están muy ligados dado que el elemento de la cadena es un puntero indexado.

(más…)

Leer Más

Algoritmos, Diagramas de Flujo y el Arte de Programar

Aún recuerdo los días en los cuales visualizaba mi futuro como programador. Mi interés principal era estudiar Ingeniería En Sistemas Computacionales en la Universidad Tecnológica de Panamá, o al menos algo relacionado al desarrollo de software. Afortunadamente, eso no sucedió y me decidí por Ingeniería Electomecánica, donde además de adquirir  conocimientos de Ingeniería Eléctrica, electrónica y mecánica, también he podido adquirir conocimientos sobre programación. No fue necesario invertir 5 años de mi vida en aprender algo que con mucho esfuerzo cualquiera de nosotros puede aprender. ¿Mi opinión personal sobre la programación? Arte. Programar es un arte, algo que no se forma, ni se enseña, ni se aprende sino aquello con lo que se nace, un talento.

Para programar no es necesario conocer un lenguaje de programación. De hecho cada día de nuestras vidas utilizamos algoritmos. ¿Cuál es la definición de algoritmo? Según la RAE:

Conjunto ordenado y finito de operaciones que permite hallar la solución de un problema.

Una definición de diccionario. Buscando un poco más en Internet encontré una definición un poco más convincente:

Se trata de una serie de instrucciones o reglas establecidas que, por medio de una sucesión de pasos, permiten arribar a un resultado o solución.

Mi definición personal:

Un algoritmo no es más que la serie de pasos a seguir para resolver un problema

Como mencioné hace un rato, cada día de nuestras vidas estamos aplicando algoritmos, aún sin darnos cuenta. Todos y cada uno de nosotros(as) hemos definido una forma para resolver nuestros problemas y vivir nuestras vidas. Quizás el declarar que un algoritmo nos lleva a resolver problemas puede hacernos pensar exclusivamente en situaciones en las cuales tenemos algún inconveniente. Los algoritmos van mucho más allá. Están constituidos por aquellas metodologías que empleamos para obtener resultados, al realizar procesos o cualquier tipo de tarea. (más…)

Leer Más

Serial Arduino: Introducción

Serial Arduino pretende introducirnos a las nociones básicas de comunicación Serial de los dispositivos y en especial al tratamiento de caracteres y cadenas  en cuanto a su manipilación por parte del Objeto Serial  en esta plataforma. Si bien las funciones básicas como Print heredan del lenguaje “C”, tiene ciertas particularidades a tener en cuenta.

La interface básica de comunicación de Arduino con el mundo exterior se lleva a cabo mediante la histórica comunicación Serial asincrónica, que fue y es una de las formas de comunicación más básica  de los últimos tiempos, empleadas en diversos ámbitos. Las comunicaciones seriales han evolucionado, no obstante la forma asincrónica es tan simple y eficaz que se sigue utilizando actualmente. Antiguamente la comunicación serie asincrónica estaba ligada a una interface física del tipo RS232 que es un estándar de interface de comunicación a nivel uno. Las comunicaciones en general entre equipos y dispositivos se analizan mediante “Capas” de comunicación. Estos conceptos se iniciaron con el modelo  de comunicación OSI (Open System InterConnection) Modelo OSI

(más…)

Leer Más

Resolver sistemas de Ecuaciones de Kirchhoff con Excel

Este artículo pretende presentar una opción para resolver sistemas de Ecuaciones de Kirchhoff con Excel, una herramienta muy útil dado que en casi todas las computadoras está instalada. Siempre es para mí una sorpresa que los 2 posts más visitados en Panama Hitek están relacionados a las Leyes de Kirchhoff. Ambos contenidos se encuentran disponibles en los siguientes enlaces:

En ambos posts hemos analizado el mismo circuito, el cual presentamos a continuación.

Ambos esquemas han sido resueltos paso a paso en los posts que hemos enlazado en este artículo. Al analizar estos circuitos, encontramos 2 sistemas de ecuaciones, uno con sumatoria de voltajes y el otro con sumatoria de corrientes. (más…)

Leer Más

WebClient Arduino y Servidor PHP en Hosting Gratuito

La idea del proyecto es modificar el estado de salidas digitales desde cualquier dispositivo móvil, a través de internet , desde cualquier lugar, utilizando el shield de Ethernet W5100 sobre Arduino Uno corriendo en modo WebCliente contra un servidor de Hosting gratuito .

No se trata de un acceso via LAN, sino via WAN, es decir con conectividad a Internet desde cualquier dispositivo movil. Un usuario utilizará su navegador preferido y se conectará a un sitio que aloja una WebPage donde efectuará las modificaciones de 4 salidas. Nuestro WebClient Arduino se conectará también a dicho sitio a intervalos regulares de tiempo y solicitará por medio de consulta GET el estado de las salidas las cuales serán modificadas en el sitio remoto y confirmadas al sitio. De esta manera el usuario al actualizar la página sabrá si dichas modificaciones efectivamente se han realizado.

(más…)

Leer Más