Coder Social home page Coder Social logo

robota's Introduction

Robota

Requisitos

Estos son los materiales que hacen falta:

  • Un microcontrolador Arduino UNO
  • Arduino IDE
  • 2 servos
  • Cables
  • Placa de pruebas
  • Chasis
  • Ruedas
  • Bateria de 9V

Para evitar soldar los cables se puede utilizar una placa de pruebas (o breadboard en inglés). Tambien seria ideal el añadir una pila de 9V para que el robot se mueva sin necesidad de estar conectado a un ordenador. El chasis puede estar impreso en 3D o ser construido con materiales como con madera u otros.

Instalación

Windows

Para usar el código primero hay que descargar el repositorio desde aquí.

Después hay que extraer el archivo comprimido de manera que los archivos robolib.h, robolib.ino y robota.ino queden dentro de una carpeta llamada "robota". Esta carpeta puede estar en cualquier parte del ordenador. Por ejemplo que quede de esta manera:

C://Users/Julortiz/Documents/Arduino/robota/robota.ino
C://Users/Julortiz/Documents/Arduino/robota/robolib.ino
C://Users/Julortiz/Documents/Arduino/robota/robolib.h

Para abrir los archivos primero necesitamos el programa Arduino IDE el cual se puede descargar gratis desde https://www.arduino.cc/en/Main/Software. Para descargarlo bajamos hasta donde pone:

Download the Arduino IDE

Y para descargar la versión de Windows pulsamos en:

Windows Installer, for Windows 7 and up

Abrimos el archivo que acabamos de descargar y tan solo tenemos que seguir los pasos de instalación.

Una vez hecho esto podemos abrir el archivo robota.ino el cual se abrirá en el Arduino IDE con los otros dos archivos (robolib.ino y robolib.h).

El programa necesita una librería para controlar los servos y la cual tenemos que instalar. Una vez abierto el programa pulsamos en "Tools " y después en "Library Manager" y aquí buscamos la librería "Servo". La que tenemos que instalar esta hecha por Michael Margolis y Arduino. Tras seleccionar la versión más nueva (en el momento que estoy escribiendo es la 1.1.6) le damos a instalar.

Después de hacer todo esto ya podemos subir el programa al arduino, para esto simplemente lo tenemos que conectar al ordenador con el cable y pulsar el botón de enviar (el botón circular con el icono de una flecha). En el caso de que no detecte el Arduino pulsamos en "Tool", luego le damos a "Port" y seleccionamos el Arduino.

Es recomendable mirar la sección de configuración ya que es posible que haya que configurar el programa dependiendo de como estén puestos los servos.

Linux

Para usar el código primero hay que descargar el repositorio. El repositorio se puede clonar desde el terminal con

git clone https://github.com/Julortiz/robota.git

Para abrir los archivos primero necesitamos el programa Arduino IDE el cual se puede descargar gratis desde el gestor de paquetes de tu distribución.

En sistemas basados en Debian:

sudo apt install arduino

En Arch Linux:

sudo pacman -S arduino

En Linux es necesario añadir su usuario al grupo dialout para poder subir el programa al arduino. Podemos hacer esto poniendo esto en la consola:

sudo usermod -aG dialout $(whoami)

Una vez hecho esto podemos abrir el archivo robota.ino el cual se abrirá en el Arduino IDE con los otros dos archivos (robolib.ino y robolib.h).

El programa necesita una librería para controlar los servos y la cual tenemos que instalar. Una vez abierto el programa pulsamos en "Tools " y después en "Library Manager" y aquí buscamos la librería "Servo". La que tenemos que instalar esta hecha por Michael Margolis y Arduino. Tras seleccionar la versión más nueva (en el momento que estoy escribiendo es la 1.1.6) le damos a instalar.

Después de hacer todo esto ya podemos subir el programa al arduino, para esto simplemente lo tenemos que conectar al ordenador con el cable y pulsar el botón de enviar (el botón circular con el icono de una flecha). En el caso de que no detecte el Arduino pulsamos en "Tool", luego le damos a "Port" y seleccionamos el Arduino.

Es recomendable mirar la sección de configuración ya que es posible que haya que configurar el programa dependiendo de como estén puestos los servos.

Uso

Para controlar el robot tenemos que mandarle ordenes al arduino, para esto utilizamos estos comandos predefinidos:

aurrera
atzera
eskubira
ezkerrera
itxaron

Cada instrucción va acompañada con la duración que se define entre parentesis despues de esta misma. La duración pueden ser valores enteros o decimales con punto. Para acabar la instruccion ponemos un ; al final. Por ejemplo para que el robot avance durante 5 segundos lo escribiríamos así:

aurrera(5);

Estos comandos los introducimos en la seccion marcada con los comentarios de "kodearen hasiera" y "kodearen bukaera". Otro ejemplo seria que el robot haga un recorrido parecido al del tayer, para esto tiene que avanzar 5s, girar a la izquierda 0.5s, avanzar 3s, luego que girar a la derecha 0.5s y para acabar avanzar 8s. Esto quedaria asi:

//-----------Kodearen hasiera---------------
aurrera(5);
ezkerrera(0.5);
aurrera(3);
eskubira(0.5);
aurrera(8);
//-----------Kodearen bukaera---------------

Configuración

Es posible que los valores de vuestros servos sean distintos a los usados por nosotros o que los servos estén conectados a otra entrada, en estos casos habría que hacer unos cambios. Hacer estos cambios es sencillo y no requiere ningún conocimiento de programación.

Cambiar los valores del servo

En nuestro caso los valores son 0 para hacer que el motor retroceda, 90 para que se pare y 180 para que acelere. Hay que tener en cuenta que para que el robot se mueva hacia adelante uno de los motores tiene que estar a 180 y el otro a 0 ya que uno de los dos esta alreves . Para cambiar estos valores entramos desde el Arduino IDE al archivo robolib.ino en la parte de arriba modificamos estos valores con los de los servos:

aurrera_balioa = 180
atzera_balioa = 0
gelditu_balioa = 90

Cambiar los pines

El motor izquierdo debería estar conectado al séptimo pin y el derecho al octavo pin pero en el caso de que no sea así habría que cambiarlo. Para ello abrimos el archivo robolib.ino desde el Arduino IDE y modificamos los valores de la zona de configuración.

pin_ezkerreko_motorra = 7
pin_eskubiko_motorra = 8

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.