Ayuda robotica


Tercera Mano Robótica  es un kit de fuente abierta cuyas piezas se pueden  imprimir  en una impresora 3D y que se puede  usar en el antebrazo utilizando  un Trinket Pro como cerebro

Trinket es una versión reducida de un Arduino con un ATmega328 y de coste reducido, pero obviamente puede usarse cualquier  placa que sea compatible con Arduino

Cuando se le solicite, puede entregarle una herramienta que tenga, liberándolo de buscarlo o perderlo  todo ello pulsando un único pulsador que Tim (su creador) ha colocado estratégicamente en un dedo gracias a una pieza  similar a un anillo  impresa también en  3d

 

En realidad  son pocos componentes los usados en este proyecto:

  • 1x9g servo hobby barato
  • Trinket Pro 5V
  • Cargador de batería de litio de celda única (3.7V)  alimentado a 5V
  • Batería de  300mAH celda única LiPO
  •  imanes – 5/16 «de diámetro, 1.8» de espesor
  • 13 × 2-56 tornillos
  • 1 × piezas impresas en 3D
  • Banda de cintura elástica ancha 1 × 1 «

Después de reunir todos los elementos en la lista de componentes e imprimir sus piezas, ¡es hora de comenzar el ensamblaje y conectarlo todo!

 

Aquí está el diagrama de conexión:

 

Es bastante simple  pues se limita a conectar la placa a  un servo controlado por el puerto digital nº8   y que ira alimentando a la salida del cargador a 5v DC   y  un pulsador que conectaremos  al pin 3   y masa .

El resto es simplemente  la parte de carga de la batería que se conectará  por un lado a la batería   y por otro lado tanto al servo  como a  la placa de control  .

Puesto que la alimentación es suministrada por la batería se recomienda colocar un interruptor en la batería para impedir su descarga  cuando no se esta usando.

Aquí está el código para hacer su movimiento robótico de tercera mano:

// ThirdHand test script
// by Tim Giles <www.wildcircuits.com>

//servo is on Pin8
//button is on Pin3 and has the pullup enabled

#include 

Servo ServoA;

int Angle = 10;
int AngleClosed = 10;
int AngleOpen = 120;

void setup()
{
  ServoA.attach(8);
  pinMode(3,INPUT_PULLUP);
}

void loop()
{
  //update the servo position
  ServoA.write(Angle);
  delay(1);
  
  //check if the button is pushed
  if (digitalRead(3) == 0)
  {
    //debounce
    while (digitalRead(3) == 0){
      delay(1);
    }
    //set the servo to it's open position
    Angle = AngleOpen;
    ServoA.write(Angle);
    //hold the servo in this position to give the user time
    //to grab the screwdriver
    delay(2000);
    //set the servo to it's closed position
    Angle = AngleClosed;
    ServoA.write(Angle);
  }
}

Durante la programación se  recomienda desconectar la batería pues de lo contrario, el suministro de refuerzo de 5 V volverá a alimentar su ordenador y puede generar efectos negativos

Si su cable USB que está programando es demasiado largo / demasiado débil, es posible que tenga un comportamiento extraño cuando termine la programación y el servo intente moverse:esto se debe a una caída de voltaje excesiva en el cable USB que hace que el Trinket Pro se reinicie cuando el servo intenta moverse.

 

PIEZAS  IMPRESAS EN 3D

robotic

La base  , el bazo articulado  así como el anillo para el pulsador   se han realizado impresas en 3D

Los ficheros están disponibles como no en el repositorio Thingiverse  en la  url   https://www.thingiverse.com/thing:618811

Mientras ensambla las piezas impresas en 3D, notará que todos los orificios de los tornillos son ligeramente más pequeños o de mayor tamaño.

Los tornillos 2-56 se ensartarán automáticamente en los orificios de menor tamaño y girarán libremente en los orificios de mayor tamaño, lo cual  permite que el tornillo sujete firmemente la bandeja del destornillador mientras que el brazo que acciona la bandeja del destornillador se puede mover libremente.Si sus piezas no van juntas así, entonces necesitará ajustar su impresora o ajustar el tamaño de los orificios de los tornillos.

 

Fuente hackaday.io

OctoPrint sobre Windows


OctoPrint es un sofware creado por Gina Häußge y es 100% opensource  con un  interfaz amigable que hace de servidor  de impresion 3D  permitiendo controlar en la practica cualquier impresora 3D a distancia.

Gracias a este sw  podríamos dejar nuestra impresora imprimiendo durante horas mientras la controlamos desde cualquier parte del mundo ( se puede empezar, parar y pausar impresiones en tiempo real) o la monitorizamos gracias a que podemos conectarle una webcam y hacer streaming de las impresiones e incluso timelapses.

Otras utilidad  sin duda  interesante es subir o visualizar nuestros GCODES e incluso generarlos !las posibildades son  casi infinitas!.

Este sw esta  en constante desarrollo y mantiene una gran comunidad en Github que comparte e innova en sus nuevas implementaciones de acorde a las necesidade de cada usuario,

La forma más sencilla de instalar OctoPrint es usando un mini PC : orangePi como vimos en este port,  Raspberry Pi, etc   pero también es  posible instalarlo en cualquier ordenador  con windows  como vamos   a ver en este post:

 

 

Instalar Python, Git y OctoPrint

Para instalar OctoPrint desde el origen en Windows, necesitará hacer lo siguiente::

  1. Instalar Python 2.7 de 32bit (seleccione el paquete «Windows x86 MSI Installer «). Asegúrate de incluir PIP en la instalación y también de que el instalador añada Python a tu ruta.)desde aqui  Es importante seleccionar el fichero correspondiente al sistema operativos que tengamos instalado (aunque la arquitectura del pc sea otra.                                       python                                    Ejecutaremos el fichero msi  y como venos nos aseguraremos que se añade al  path ejecutable de Python   
  2. Instalar Microsoft Visual C++ Compiler para Python 2.7 desde aqui. surface pro
  3. Abrir interfaz de comandod  (Win+R   y ejecutar  cmd) e instalar  virtualenv usandopip install virtualenv:
    pip install virtualenv
    

    Verá algo como lo siguiente (prompt y salida  incluida, no copiar-pegar esto!):

    C:\Users\YourUser>pip install virtualenv
    You are using pip version 7.0.1, however version 7.1.2 is available.
    You should consider upgrading via the 'pip install --upgrade pip' command.
    Collecting virtualenv
       Using cached virtualenv-13.1.2-py2.py3-none-any.whl
    Installing collected packages: virtualenv
    Successfully installed virtualenv-13.1.2
    

    Si usted recibe un mensaje sobre PIP de no haber sido encontrado, su path aún no ha sido actualizado para incluirlo. Hágalo manualmente por ahora en el indicador activo redefiniendo  PATH:

    PATH=%PATH%;C:\Python27\Scripts
    

    ¡ No cierre la ventana con el prompt, manténgalo abierto!

  4. Instalar Git for Windows. :                      Asegúrese de seleccionar «usar git desde el símbolo del sistema de Windows » cuando le pide que decida cómo desea utilizar git desde la línea de comandos
  5. Abra un interfaz de comandos  (cmd) y cambiar a la ubicación en la que desea que se resida la carpeta de OctoPrint. Para este pot estamos asumiendo que esto sea C:\  Chequear  las fuentes de OctoPrint  Via git clone https://github.com/foosel/OctoPrint . Esto creará una nueva carpeta C:OctoPrint con las fuentes de OctoPrint que residen en él.
  6. cd C:\
    git clone https://github.com/foosel/OctoPrint
    

    Debe  verse como esta  (prompt y salida incluida, no copiar-pegar esto!):

    C:\Users\SomeUser> cd C:\
    C:\> git clone https://github.com/foosel/OctoPrint
    Cloning into 'OctoPrint'...
    [...]
    Checking out files: 100% (563/563), done.
    
    C:\>
    
  7. Aún en el símbolo del sistema, cambie a la carpeta de origen de OctoPrint  (cd C:\OctoPrint) y crear   un nuevo virtualenv: virtualenv venv. Activelos: venv\Scripts\activate.batNota: Si no ha registrado los orígenes de OctoPrint en C:OctoPrint, debe cambiar el comando de CD que se encuentra a continuación, asegúrese de que está en la carpeta correcta antes de ejecutar el virtualenv y activar. bat o no funcionará.
    cd C:\OctoPrint
    virtualenv venv
    venv\Scripts\activate.bat
    

    Debe  verse como esta  (prompt y salida incluida, no copiar-pegar esto!):

    C:\>cd OctoPrint
    C:\OctoPrint>virtualenv venv
    New python executable in venv\Scripts\python.exe
    Installing setuptools, pip, wheel...done.
    
    C:\OctoPrint>venv\Scripts\activate.bat
    (venv) C:\OctoPrint>
    

    Nota: en este punto podría ser una buena idea para asegurarse de que tiene la versión más actualizada de PIP instalado en su venv, así que mejor actualizar que ahora:

    pip install --upgrade pip
    

  8. Realizar   una isntalacion de  python setup.py install (o si tiene intención de hacer cambios,  python setup.py develop):
    python setup.py install
    

    Debe  verse como esta  (prompt y salida incluida, no copiar-pegar esto!):

    (venv) C:\OctoPrint>python setup.py install
    running install
    [...]
    Finished processing dependencies for OctoPrint==1.3.2
    
  9. Inicie OctoPrint simplemente ejecutando octoprint serve:
    (venv) C:\OctoPrint>octoprint serve
    2017-03-20 10:56:22,329 - octoprint.server - INFO - ******************************************************************************
    2017-03-20 10:56:22,332 - octoprint.server - INFO - Starting OctoPrint 1.3.2 (master branch)
    2017-03-20 10:56:22,332 - octoprint.server - INFO - ******************************************************************************
    [...]
    

    Nota: en este punto, Windows probablemente le preguntará si desea permitir que OctoPrint sea accesible desde su red. Las probabilidades son altas que usted desea esto, así que permita el acceso de redes de confianza por lo menos.


  10. Abra una nueva pestaña o ventana en su navegador e ingrese http://localhost:5000. Ahora debería estar mirando su interfaz web OctoPrint. Si desea acceder a él desde otro equipo de la red local, sustituya  localhost por la IP de su  PC  http://192.168.1.3:5000.

Felicitaciones, ahora tiene una configuración de OctoPrint de ejecución!

Para iniciar el servidor OctoPrint, abra un símbolo del sistema y ejecute  C:\OctoPrint\venv\Scripts\octoprint.exe serve.Si desea detener OctoPrint, pulse Ctrl + C en la ventana del símbolo del sistema o simplemente cierre.

Crear un acceso directo

Para facilitar el inicio de su servidor OctoPrint en el futuro, puede que desee crear un acceso directo en su escritorio o en algún otro lugar que pueda encontrar de nuevo, apuntando a C:\OctoPrint\venv\Scripts\octoprint.exe serve:

Configurar OctoPrint para poderse actualizar automáticamente

Si desea que OctoPrint pueda actualizarse, necesitará configurar la carpeta que ha retirado OctoPrint en OctoPrint configuración de software, haciendo clic en el icono de la pequeña llave en la esquina superior derecha y estableciendo «OctoPrint Checkout Folder » a C:\OctoPrint:

Alternativamente, también puede realizar esta configuración mediante el archivo de configuración de OctoPrint  config.yaml en %APPDATA%/OctoPrint:

plugins:
  softwareupdate:
    checks:
      octoprint:
        checkout_folder: C:\OctoPrint

Instalar un servidor de webcam y configurar OctoPrint para ello

Puede usar algo como e YawCAM f para una funcionalidad similar a MJPEG-Streamer bajo Windows. Habilite las salidas «http » y «Stream «. Si deja los puertos configurados en sus valores predeterminados, su URL de Stream será y su URL de instantánea será.

Puede configurarlos mediante el cuadro de diálogo de configuración de OctoPrint (véase más abajo) o en su config.yaml en %APPDATA%/OctoPrint:

webcam:
  stream: http://:8081/video.mjpg
  snapshot: http://localhost:8888/out.jpg

Si usted también quiere ser capaz de utilizar timelapsing, usted tendrá que obtener una compilación estática de Windows de ffmpeg. Ésos se pueden encontrar aqui. A continuación, configure la ruta de acceso a ffmpeg. exe mediante el cuadro de diálogo Configuración (véase más abajo) o config. yaml:

webcam:
  stream: http://:8081/video.mjpg
  snapshot: http://localhost:8888/out.jpg
  ffmpeg: C:\your\path\to\ffmpeg.exe

Nota: la captura de pantalla muestra 192.168.1.3 como la IP del PC en la secuencia configurada-URL. Usted necesitará ajustar eso para emparejar su IP de PCS!

Fuente GitHub.com