Robot Sanduino A01 – Armado de chasis

El Robot Sanduino A01 consta de dos bases de acrílico. El primer paso es atornillar la base superior sobre la base inferior. Debe quedar como se ilustra en la foto siguiente.

Paso 1. Atornillar base superior sobre base inferior.Sanduino-A01-Chasis-Completo-500x500

Paso 2: Colocar soportes para motores e interruptor.

Sanduino-A01-Chasis-P2-1

Paso 3: Colocar motores, entre los soportes para motor.Sanduino-A01-Chasis-P2-2

Paso 4: Atornillar motores.Sanduino-A01-Chasis-P2-3

Paso 5: Colocar y atornillar rueda loca.
Sanduino-A01-Chasis-P2-5NOTA: El portapilas no se atornilla al chasis.

 

¡Hola Roboticistas!

¡Bienvenido al Sitio Web Robótica Sandria!

Este sitio web está dedicado a todos los chicos (niños y jóvenes) interesados en la robótica y que han tomado o están tomando alguno de nuestros cursos de robótica.

Los adultos universitarios, maestros o aficionados a la robótica que encuentren algo interesante en este sitio web también son bienvenidos, y espero que dejen alguna opinión, comentario o sugerencia.

Aquí podrán encontrar instrucciones de armado de robots, ejemplos de programas y guías técnicas de uso de hardware y software que usamos en robótica y áreas relacionadas.

Atentamente,

Ing. Julio César Sandria Reynoso
Mentor del equipo de robótica Galácticos
Superteam World Champions en RoboCup 2014, Brasil
Primer Lugar en el Torneo Mexicano de Robótica 2014
Segundo Lugar en el Torneo Mexicano de Robótica 2015
Tercer Lugar en el Abierto de Robótica de Portugal 2016

Galacticos-Superteam-World-Champions-Robocup-2014_med

Riego automatizado de plantas con Arduino

El cuidado de las plantas que tenemos en el jardín o macetas en nuestra casa, escuela u oficina, es muchas veces una actividad relajante y que nos da un rato de distracción de nuestras actividades rutinarias. Pero esto ya no es relajante cuando no tenemos el “don” o el tiempo para cuidarlas y vemos cómo se van muriendo poco a poco las pobres plantitas por falta o exceso de agua, luz o temperatura.

De modo que a quienes nos gusta hacer uso de la tecnología, generalmente aprovechamos cuanta ocasión se nos presenta para hacerlo…

Puedes leer más información de este proyecto en la página siguiente:

Cómo mimar tus plantas con tecnología digital

Programación de Robots Lego NXT con Java

En esta presentación se proporciona al lector los conocimientos básicos para programar robots Lego Mindstorms NXT usando el lenguaje de programación Java. Se construye un robot móvil con los motores y sensores del paquete NXT y se usan algunos métodos básicos Java para el NXT.

Para los ejemplos de programación en Java se usa el robot NXT TaskBot, cuyo instructivo de armado se puede descargar de la siguiente dirección:

Clase nxbot

import lejos.nxt.*;
/**
* Programación de Robots Lego NXT con Java (Noviembre-2009)
* @author Julio C. Sandria Reynoso
*/
public class nxbot {
  public static void avanza(int ms) throws InterruptedException {
    Motor.A.forward();
    Motor.C.forward();
    Thread.sleep(ms); /* espera ms milisegundos */
  }
  public static void retrocede(int ms) throws InterruptedException {
    Motor.A.backward();
    Motor.C.backward();
    Thread.sleep(ms);
  }
  public static void alto() {
    Motor.A.stop();
    Motor.C.stop();
  }
}

Presentation · October 2010
DOI: 10.13140/RG.2.2.21919.15521
Disponible en https://www.researchgate.net/publication/317300574.

Para profundizar más en la programación orientada a objetos, clases, interfaces, herencia, etc., ver la siguiente entrada:

Seguridad en Bases de datos: 1. Conceptos de Bases de Datos

Esta presentación es parte del curso Seguridad en Bases de Datos, tema 1: Conceptos de Bases de Datos, impartido por el autor a estudiantes de la Especialidad en Bases de Datos de la Universidad Autónoma de Veracruz Villa Rica.

Objetivo

  • Descubrir cómo pueden tener acceso los hackers mediante:
    • la explotación del desbordamiento de búfer
    • la escalada de privilegios a través de SQL
    • el abuso de procedimientos almacenados o triggers
    • la inyección SQL
  • Reconocer vulnerabilidades peculiares a algunas bases de datos
    • Oracle, DB2, Informix, Sybase ASE, MySQL, SQL Server, PostgreSQL
  • Encontrar qué es lo que los atacantes ya saben
Presentation · June 2010
DOI: 10.13140/RG.2.2.10033.38242
Disponible en https://www.researchgate.net/publication/316134421.

Programación de Robots Lego Mindstorms NXT con Java. Tema 3 Java para NXT

Esta presentación, corresponde a uno de los temas tratados en el Curso de Robótica a nivel licenciatura impartido por el autor en el Tecnológico de Monterrey Campus Zacatecas.

Este tema enfatiza la programación orientada a objetos con Java para los robots Lego Mindstorms NXT. Se ilustra la creación de clases, objetos e interfaces. Se ejemplifica la herencia, el uso de métodos, tipos de datos y arreglos en Java, así como el control de flujo de programas y el manejo de excepciones. Todo esto aplicado en un robot móvil Lego.

Clase CarBot

importlejos.nxt.*;
public class CarBotextends Thread implements ManioBot {
  public void avanza() {
    Motor.B.forward(); Motor.C.backward(); pausa(500);
  }
  public void derecha() {
    Motor.B.backward(); Motor.C.backward(); pausa(500);
  }
  public void frena() {
    Motor.B.stop(); Motor.C.stop();
  }
  private void pausa(intmSegundos) {
    try {
      Thread.sleep(mSegundos);
    } catch(InterruptedExceptione) {}
  }
}

Presentation · February 2010
DOI: 10.13140/RG.2.2.24016.30721
Disponible en https://www.researchgate.net/publication/317302716.

Para detalles básicos sobre los robots Lego Mindstorms NXT y la instalación del software necesario para programarlos en Java, ver la siguiente entrada:

Sistema de control de una cámara de video a través de Internet

Se presenta un sistema para controlar remotamente una cámara de video a través de Internet. Se diseñó y ensambló un circuito para controlar dos motores de corriente directa que mueven la cámara. El circuito se conecta al puerto paralelo de la computadora. Se programó en Java una aplicación Servidor que transmite video a través de Internet, recibe señales también a través de Internet y mueve la cámara por medio del puerto paralelo. También se programó un applet Java que se ejecuta dentro de un navegador de Internet. En el applet se puede ver en tiempo real el video que transmite la aplicación Servidor y se puede mover remotamente la cámara.

Technical Report · December 2007
DOI: 10.13140/RG.2.2.27467.39206
Disponible en https://www.researchgate.net/publication/310674294

Prototipo de robot Lego futbolista programado en Java

En este documento se presenta un prototipo de robot futbolista construido con el paquete Lego Mindstirms Robotics Invention System 2.0 y programado en Java usando lejos. En este artículo se presenta una introducción a los robots futbolistas y la construcción inicial y programación básica del robot Lego futbolista (RoLeF).

Technical Report · February 2007
DOI: 10.13140/RG.2.2.10156.67208

Aprendiendo y aplicando Inteligencia Artificial con Robots Móviles

Aprender inteligencia artificial a veces es una tarea muy frustrante cuando intentas entenderlo con mucha teoría y un poco de práctica. Este artículo pretende ilustrar que el aprendizaje de la inteligencia artificial podría ser atractivo y de entretenimiento cuando intentas construir robots que muestren un comportamiento inteligente como ver, oír, hablar, moverse, e incluso aprender. Usamos Robots Lego móviles y Java para aprender y aplicar algunas técnicas de Inteligencia Artificial como redes neuronales, algoritmos genéticos, visión por computadora, reconocimiento de voz y síntesis de voz.

Tabla 1. Tecnologías Java usadas con robots Lego

Java Technology Mean and use
J2SDK Java 2 Software Development Kit to compile and run Java programs
LeJOS Lego Java Operating System to run Java programs inside the RCX
LMbpn A Lego Mindstorms Backpropagation Neural Network (own)
LMsga A Lego Mindstorms Simple Genetic Algorithm (own)
JFM Java Media Framework for Computer Vision
JSAPI & Sphinx Java Speech API and Sphinx for Speech Recognition
JSAPI & Sphinx Java Speech API and Sphinx for Speech Synthesis

Artículo en inglés:
Sandria Reynoso, Julio César, Mario Morales García y Arturo Mendoza Rendón. 2006. Learning and applying artificial intelligence with mobile robots. Research in Computer Science. Vol. 20, pp. 191-198.
Disponible en https://www.researchgate.net/publication/310771450.

Una red neuronal para robots Lego Java

Aprende a programar robots Lego Mindstorms inteligentes con Java

Los desarrolladores pueden construir robots inteligentes con Java, ya que proporciona APIs para sistemas de programación que pueden ver, oír, hablar, moverse e incluso aprender, utilizando redes neuronales, que son algoritmos que imitan a nuestro cerebro.

Este artículo muestra cómo desarrollar un robot que puede aprender mediante el algoritmo de propagación hacia atrás (backpropagation), una red neuronal básica, y su implementación en un Lego Roverbot. Utilizando el algoritmo y Java, el Roverbot -un robot Lego vehículo- puede aprender algunas reglas básicas para moverse hacia adelante, hacia atrás, izquierda y derecha.

Artículo:
Sandria Reynoso, Julio César. 2005. A neural network for Java Lego robots. JavaWorld, May 16.
Disponible en http://www.javaworld.com/article/2071879.
PDF en https://www.researchgate.net/publication/310771385.