martes, 19 de marzo de 2024

Coche remoto por Infrarrojos. Seguir línea negra.

 

Página principal

Coche remoto por
Infrarrojos
Guía por línea negra automático


Siguiendo el anterior montaje, http://seta43.duckdns.org/car_a/car_a.html , añadí sensores de infrarrojos para seguir una línea negra.



Sensores



El mayor problema que he tenido, son las librerías.
Unas son incompatibles con otras, otras funcionan en algunas versiones de arduino y otras no.
/*
You have to go into the .h and .cpp files and change "WProgram.h" to Arduino.h
WProgram.h: No such file or directory
*/
/*
Las librerías  "IRremote" y "RobotIRremote" son incompatibles
Tu tienes que instalar "IRremote" y desinstalar "RobotIRremote".
*/
La solución es incluir las librerías modificadas que utilizo yo.

Con un poco de código, añado el seguimiento de líneas.
No he depurado mucho el código, solo es una prueba que funciona razonablemente bien.
La cinta negra es del tipo adhesiva eléctrica, alrededor de 9 a 10 mm.
Es muy entretenido ver como sigue la línea.
He utilizado un PowerBank , la pilas se habían agotado,

Programa Arduino.
Librerías utilizadas.

Video


Saludos.
Juan Galaz


Bibliografía:


https://www.youtube.com/watch?app=desktop&v=Ux1nzNDKxoA
https://www.youtube.com/watch?v=4C8Y3caU4y0

domingo, 17 de marzo de 2024

Coche remoto por Módulo 433MHz

Página principal

Coche remoto por
Módulo 433MHz


Continuando con mi anterior montaje, me dí cuenta que en algunas ocasiones cuando perdía contacto visual con el vehículo, también se perdía el contron.
Esto era normal al ser mediante IR, por lo que me puse a solucionarlo mediante módulos de RF de 433MHz.

Módulos RF



Emisor.



Receptor.

Al contrario que con los IR , la señal de RF llega bastante más lejos, traspasando paredes.
El utilizar RF , se producen interferencia entre los motores de los servos y la señal de RF, y lo mejor es utilizar diferente alimentación, pero eso sería estudio de otro artículo.
El mayor problema que he tenido, son las librerías.
Unas son incompatibles con otras, otras funcionan en algunas versiones de arduino y otras no.
Como ejemplo, la librería Servo es incompatible con la librería VirtualWire.
La solución es incluir las librerías modificadas que utilizo yo.

Programa Arduino.
Librerías utilizadas.

Video

En un artículo anterior había probado la cámara ESP-CAM , y se me ocurrió colocársela al vehículo para manejarlo a distancia.
Vuelve a ocurrir lo mismo con las interferencia de la alimentación, si la conecto directamente  a los 5V del arduino, algunas veces funciona y otras no.
Para eliminar problemas en las pruebas, la alimento mediante una Power-BANK.



Video cámara vehículo



Saludos.
Juan Galaz


Bibliografía:

14/05/2014 - Arduino - Reloj con medidor de temperatura y humedad externa.433MHz - MX-05V. arnote
07/05/2014 - Arduino - Receptor temperatura y humedad-433MHz-MX-05V.   ardurx
06/05/2014 - Arduino-Transmisor temperatura y humedad-433MHz-MX-FS-03V. ar433



 

sábado, 16 de marzo de 2024

Coche remoto por Infrarrojos

 

Página principal

Coche remoto por
Infrarrojos


El otro día me encontré en el Rastro un Freaduino . Es un arduino UNO con algunas buena modificaciones, junto con varios accesorios, un vehículo movido por servos modificados, y un conjunto de sensores.
https://forum.arduino.cc/t/review-de-freaduino-uno-placa-compatible-con-el-arduino-uno/168846

Si tienes un servo y quieres utilizarlo para giro continuo, existe numerosos tutoriales que te explican como hacerlo.
El resumen de la modificación que debes hacer es:
-Quitar el potenciómetro y sustituirlo por dos resistencias iguales (10K).
-Eliminar el tope que existe en uno de los rodamientos para que gire 360 º.
La prueba sencilla que se me ocurrió  fue hacer un coche teledirigido mediante un mando a distancia de televisión, en mi caso LG.

Lo primero es tener el receptor de IR, yo tengo muchos de reciclaje.



Las pruebas se hicieron en el nano, y como todo funcionaba bien lo pase al Freaduino.


El montaje en Freaduino.

El mayor problema que he tenido, son las librerías.
Unas son incompatibles con otras, otras funcionan en algunas versiones de arduino y otras no.
/*
You have to go into the .h and .cpp files and change "WProgram.h" to Arduino.h
WProgram.h: No such file or directory
*/
/*
Las librerías  "IRremote" y "RobotIRremote" son incompatibles
Tu tienes que instalar "IRremote" y desinstalar "RobotIRremote".
*/

La solución es incluir las librerías modificadas que utilizo yo.

Programa Arduino.
Librerías utilizadas.

Video


Saludos.
Juan Galaz


Bibliografía:


https://www.youtube.com/watch?app=desktop&v=Ux1nzNDKxoA
https://www.youtube.com/watch?v=4C8Y3caU4y0
Tren IR
Coche RC
SERVO

martes, 12 de marzo de 2024

Corte Láser en Linux


 

 Página principal

Corte Láser
en
Linux

Después de algún tiempo de hacer montajes con el cortador láser:
28/11/2018 - Arduino - Inkscape Laser Tool Plug-in, GRBL, Universal GcodeSender, PARTE 5.  CNCE
12/06/2020 - ARDUINO - CNC Láser y dibujado con Ender 3. ENDER 3
10/06/2022 - Crear circuitos impresos (PCB) con KICAD, FlatCAM, Candle, y CNC 3018.   PCB_CNC_II
Vuelvo a utilizar el láser que viene con la CNC 3018 , no es muy potente 2.5W, apenas corta papel, y en varias pasadas cartón de 1 mm.
Para marcar (quemar) madera funciona bien, pero no se le puede pedir mucho con esta potencia.


En Linux, el intentar hacer funcionar un programa de  hace 4 años, en muchos casos se hace imposible.
Lo que te funcionaba en Debian 10, no te funciona en Debian 12. Esto es debido al cambio de librerías.
En muchos casos suele se el cambio desde Python 2 a python 3, los programados con uno no funcionan en el otro, se debe hacer una pequeña modificación de código, y en muchos casos no se hace. Los complementos de FreeCAD y InkScape en bastantes casos dejan de funcionar bien al estar programados en Python.
También ocurre con con el paso de QT4 a QT5, o en WX con sus diferentes versiones.
Se suele solucionar haciendo programas portables que incorporan sus librerías de trabajo, pero entonces el tamaño de un pequeño programa es de 100Mbytes.
Al final la mejor solución es utilizar las versiones de Windows, que en la mayoría de los casos, los programas de hace 15 años funcionan en las versiones nuevas de Windows. Esto es lo que tiene perdido Linux  frente a Windows, y es una de las cosas pendientes que tiene Linux.
Otra solución que empleo muchas veces, es utilizar maquinas virtuales con distribuciones Debian antiguas, funciona muy bien.

Para el corte con láser la mejor opción es buscar gráficos vectorizados de siluetas, búscalos en esta web:
https://openclipart.org/search/?p=2&query=silueta
Para las fuentes se suelen utilizar las que no cortan completamente las fuentes, y de esta forma no se pierde el circulo de por ejemplo la O, búscalos en esta web:
https://www.1001fonts.com/search.html?search=stenciled

El programa que utilizo es InkScape para generar los Gcode mediante sus complementos.
Si no se pueden añadir automáticamente desde el propio programa, deberás copiarlos manualmente en:
/home/usuario/.config/inkscape/extensions

Las fuentes las tienes que copiar a:
/home/usuario/.local/share/fonts

DEBIAN 10
En las primeras pruebas descubrí que muchos complementos que se utilizan para el láser, solo funcionaban en Debian 10, hay hice mi primera prueba.
Para generar el código Gcode utilizo el complemento LaserTools en InkScape 9.2 .
Debemos ajustar las opciones del complemento para que funcione en nuestra máquina láser.
En el video adjunto se muestra como pruebo los cortes de papel con láser.



DEBIAN 12
La siguiente prueba es en Debian 12, también utilizo el programa InkScape 1.2 , pero como explicamos anteriormente, muchos complementos dejan de funcionar bien, y hay que utilizar otros.
El complemento utilizado es J-Tech-Photonics-Laser-Tool y se puede bajar de:
https://github.com/JTechPhotonics/J-Tech-Photonics-Laser-Tool/releases/tag/v2.5.1
Como en el anterior complemento debemos retocar todas las opciones.



Para lanzar el código Gcode a la máquina láser, en ambos casos, tanto en Debian 10 como en Debian 12, utilizo Universal Gcode Sender , y se baja de:
https://winder.github.io/ugs_website/
Aquí debemos buscar la versión que funciona en nuestra distribución.

Lightburn
Este programa es comercial y se puede comprar por 60€, pero si queremos usarlo en modo TRIAL, se puede utilizar durante 30 días
Es un programa muy fácil de utilizar, y tiene versiones tanto para Windows como para Linux, esto es un lujo.
https://lightburnsoftware.com/


LaserGRBL
Este es un programa sencillo y fácil de utilizar, pero solo funciona en Windows.
Yo lo he ejecutado en una máquina virtual bajo Debian, y funciona perfectamente.
Puede grabar imágenes, generar gráficos vectorizados, lanzar código Gcode, pero no tiene ninguna utilidad para editar.
https://lasergrbl.com/


VIDEO

Ante todo debéis utilizar gafas para no quedaros ciegos, es muy peligroso.

Saludos.
Juan Galaz


Bibliografía:

https://openclipart.org/search/?p=2&query=silueta

https://www.1001fonts.com/search.html?search=stenciled
https://github.com/JTechPhotonics/J-Tech-Photonics-Laser-Tool/releases/tag/v2.5.1
https://winder.github.io/ugs_website/
https://lasergrbl.com/
https://lightburnsoftware.com/

28/11/2018 - Arduino - Inkscape Laser Tool Plug-in, GRBL, Universal GcodeSender, PARTE 5.  CNCE
12/06/2020 - ARDUINO - CNC Láser y dibujado con Ender 3. ENDER 3
10/06/2022 - Crear circuitos impresos (PCB) con KICAD, FlatCAM, Candle, y CNC 3018.   PCB_CNC_II