Cámaras - Instalación y configuración
Última actualización
Última actualización
Klipper nos permite de forma nativa el poder usar una cámara externa para monitorizar nuestra impresora 3D.
Grabar nuestra impresión o hacer timelapses, siempre queda genial poder enseñar nuestras obras de arte y como se crean :D
Simplemente para monitorizarla
La elección de una cámara para nuestra impresora va a depender mucho del objetivo de su uso, tendremos que tener en cuenta algunos aspectos como:
Resolución de la cámara, ya que de ello dependerá la calidad final del video obtenido
Calidad de la óptica, las impresiones suelen durar muchas horas y normalmente puede que no tengamos iluminación durante algunas de ellas, de ahí que la cámara y su óptica tengan una buena sensibilidad ante baja luz es muy interesante.
Tamaño/peso, el tamaño de la misma puede limitar algunos aspectos para su ubicación dependiendo del uso que queramos dar
Normalmente suelen ser las más aconsejables por precio, calidad, variedad y sobre todo porque normalmente son plug&play y la configuración/instalación es mínima.
Algunos ejemplos aconsejables pueden ser las Logitech... en concreto la C270 y Pro C920..., Microsoft HD-3000 o Wyze V2.
Estas cámaras están pensadas para usar sobre un host Raspberry Pi por lo que si cambiamos en un futuro de plataforma host no nos serán útiles probablemente.
Existen diferentes modelos, desde la básica V2 (sobre 35€) a 1080 30fpx... hasta la HQ con una sensor de 12Mp y lentes intercambiables.
Por otro lado, estas cámaras tienen un tamaño bastante pequeño y bajo peso aunque normalmente tendremos que tirar de mods para poder ajustarla a nuestra impresora.
Si buscamos máxima calidad son las opciones más usadas, sobretodo para videos o timelapses.
En este caso tanto la instalación, configuración y empleo se complica más y solamente son aconsejables para usuarios “avanzados”.
Os vamos a enseñar como configurar nuestra cámara web, en este caso USB, utilizando como base MainsailOS.
MainsailOS lleva por defecto instalado Crowsnest que es un demonio para el uso de cámaras, en el caso de que no utilicemos MainsailOS o no lo tengamos instalado a continuación tenéis como hacer la instalación:
INSTALACIÓN crowsnest:
Crowsnest es un demonio para gestionar webcam que viene por defecto instalado en distribuciones como MainsailOS.
La instalación es muy sencilla desde línea de comandos desde SSH, aunque también se puede instalar desde Kiauh.
Una vez instalado lo ideal es ajustar nuestro fichero moonraker.conf para añadir a su gestor de actualizaciones crowsnest:
Por otro lado si queremos hacerlo desde Kiauh:
Verificamos si ya lo tenemos instalado desde el menú principal de Kiauh:
En el caso de no tenerlo pulsaremos 1 (Install) que nos llevará al menu de instalación donde pulsando 11 (Crowsnest) realizará la instalación de este complemento:
Durante el proceso de instalación debería preguntar si queremos actualizar nuestro moonraker.conf para añadir a su update manager Crowsnest, es aconsejable contestar Yes.
Una vez finalizada la instalación saldremos de Kiauh y reiniciamos nuestro host, podremos volver a entrar a Kiauh para verificar que esté instalado o desde nuestra UI web deberiamos ver las opciones de este.
También en algunos casos es necesario o interesante instalar multi-instancias de crowsnest, desde la documentación podemos encontrar el proceso aquí.
En el caso de requerir desinstalar Crowsnest podemos realizarlo con dos simples comandos, recuerda borrar el directorio crowsnest al finalizar:
cd ~/crowsnest
make uninstall
Conectaremos la cámara a nuestro host, una Pi en nuestro caso
Abriremos la configuración de nuestra UI y añadiremos la cámara asignándole un nombre
Ya deberíamos tener imágenes de nuestra cámara en el dashboard,
En caso de que no o fallo el proceso de añadirla o detección, o no tenemos la sección webcam en nuestro dashboard. Iremos a la sección MACHINE y abriremos el fichero crowsnest.conf, crowsnest que es el servicio que gestiona las cámaras en MainsailOS, donde podemos ajustar la resolución, los fps, u otros parámetros necesarios para nuestra impresora/cámara... más información de las opciones disponibles aquí.
Es importante en el caso que no nos detecte por defecto la cámara intentar obtener más información del sistema.
Podemos obtener información del propio log de Crowsnest accesible desde el interfaz web normalmente.
O dentro del directorio de Crowsnest contamos en tools/dev-helper.sh una herramienta que nos puede ayudar a encontrar posibles problemas en nuestra instalación o obtener información de las cámaras:
cd ~/crowsnest
tools/dev-helper.sh -c
crowsnest - dev-helper.sh - flags
Algunas cosas a tener en cuenta:
dependiendo de la cámara o la configuración de captura o del host que utilicemos va a requerir de un extra de recursos. En el caso de SBC como Raspberry Pi o similares, revisa en tu caso como se ajustaría, es aconsejable ajustar la gpu_mem
del fichero /boot/config.txt
en al menos 128MB-256MB dependiendo de lo que disponga nuestro host.
dependiendo del camera-streamer que elijamos/usemos puede que nuestro navegador web tenga problemas para reproducir WebRTC H264, como por ejemplo en Firefox es necesario habilitar media.webrtc.hw.h264.enabled
en about:config
(revisad https://unix.stackexchange.com/a/761511 y https://bugzilla.mozilla.org/show_bug.cgi?id=1717679 para más información)
Disponer de varias cámaras puede ayudar a tener más ángulos, aunque por otro lado va a aumentar la carga de nuestro host Klipper.
Suele ser interesante disponer de varias cámaras cuando por ejemplo usamos una de baja calidad para la monitorización, cargando menos el sistema, y otra de más calidad para videos o timelapses.
de nuevo abriremos el fichero de configuración crowsnest.conf
clonaremos el contenido de la sección [cam1] cambiando el nombre del clonado a [cam2]
ajustaremos el puerto a 8081 y iremos sumando si necesitamos mas camaras
al instalar la cámara en el interfaz como hicimos antes nos aseguraremos que en la URL cambiemos el puerto a 8081
para verificar que las cámaras funcionan usaremos la URL para acceder directamente... http://tu-ip/webcam1/...http://tu-ip/webcam2/...