Añadir texto a archivos STL para impresión 3D con Freecad
En páginas como por ejemplo Thingiverse hay numerosos archivos *.STL (Standard Triangle Language) que podemos descargar para imprimir en nuestras impresoras 3D. A continuación, voy a explicar como podríamos realizarles alguna modificación como puede ser añadirle un texto utilizando la herramienta Freecad.
En primer lugar hay que abrir el archivo stl con el freecad. Para ello con el freecad abiero vamos a File – Open y nos ponemos en el banco Part.
Ahora debemos pasar la pieza a solido para poder modificarla, así que con la pieza seleccionada vamos ejecutando por orden las siguientes acciones:
1 – Part – Create shape form mesh… (Nos pedira marcar una tolerancia, yo suelo poner siempre 0,1)
2 – Part – Convert to solid
3 – Part – Refine shape
Tras realizar esto, podremos comprobar como ahora ya se visualizan las caras, aristas y vertices de la figura. Por lo tanto, ya podremos trabajar sobre la figura.
Si quisieramos añadir un grabado de texto, una forma rápida podría ser seguir estos pasos:
1 – Pasamos al banco Draft
2 – Seleccionamos la acción ShapeString. Nos irá pidiendo una seríe de pasos a seguir:
2.1 – Seleccionar el punto donde comenzar a escribir.
2.2 – Introducir la cadena de texto que queremos grabar.
2.3 – Introducir la altura de la letra para ese texto.
2.4 – Introducir la separación entre las letras.
2.5 – Seleccionar el tipo de letra a utilizar. Puedes buscar una fuente que te guste por internet y descargarte el archivo *.ttf de ella. Para una prueba rápida puedes coger alguna que ya tenga el propio freecad en su instalación, yo suelo seleccionar para las pruebas: FreeCAD 0.16\bin\Lib\site-packages\matplotlib\mpl-data\fonts\ttf\Vera.ttf
3 – Vamos al banco Part y extruimos el texto sobre el eje en el que estemos trabajando.
Ahora ya tendriamos la figura y el texto listos para unirlos. Una forma de unirlos puede ser ir moviendo el texto a mano hasta que quede en la posición que queremos. Pero podriamos hacerlo de forma más elegante. Para ello:
1 – Seleccionamos simultáneamente primero la pieza y después el texto para realizar la accion Edit – Alignment…
2 – Nos saldrá la pantalla dividida en dos. Seleccionas varios puntos en la figura de la izquierda (que será el texto) y seleccionas otros tantos puntos en la figura de la derecha (que sera la pieza). Los puntos tienes que marcarlos en el mismo orden en ambas figuras y son para orientar a freecad donde colocar el texto.
3 – Por ultimo en la pantalla de la pieza hariamos click en el botón derecho del ratón y seleccionamos la opción align para que realice la operación.
Planificar el cambio de filamento durante la impresión 3D con la aplicación Cura.
La aplicación Cura nos permite planificar entre otras cosas cambio de filamento durante la impresión de una pieza en 3D. Esto puede ser muy útil cuando por ejemplo sabemos que se va a terminar el filamento o bien cuando queremos que la pieza quede impresa en varios colores.
Para ello en Cura hay que ir al menú extensiones – postprocesamiento – modificar GCode.
Esto nos va a abrir una pantalla desde la cuál podremos añadir de forma bastante amigable comandos para que se ejecuten. En la figura de debajo hemos seleccionado la opcion Pause at height. A la derecha vemos que nos salen unas casillas para rellenar:
– Pause height: la altura a la que queremos que haga la pausa (depende del punto donde queramos cambiar el filamento).
– Park print head x: posicion X a la que queremos que vaya el extrusor cuando hace la pausa (lo más cómodo es llevar el extrusor al x=0).
– Park print head y: posicion Y a la que queremos que vaya el extrusor cuando hace la pausa (lo más cómodo es llevar el extrusor al y=0).
– Retraction: cuantos milímetros queremos que se retraiga el filamento para extraerlo (por ejemplo, 50 mm).
– Extrude amount: cuantos milímetros queremos que expulse el extrusor (interesamente para que limpie el color anterior de la boquilla, 100 mm está bien).
– Redo layers: numero de capas intermedias que quieres q añada para facilitar la adhesión (en mi caso suelo poner 1 o ninguna).
Nota: Probado que funciona correctamente en una Anet 8 con el firmware Skynet 2.3.1.
Impresión 3D: Añadir cambio de filamento y Restaurar firmware original.
En este videotutorial nos enseñan a realizar un cambio de filamento usando para ellos las extensiones (plugins) del programa Cura. Se puede hacer que la impresión se detenga a determinada altura y nos permita cambiar el filamento.
Y en este otro nos muestran como instalar el firmware de la Anet 8 para volver a su versión original.
Impresión 3D: Anet 8. Cabina.
Guia para meter tu anet 8 en una cabina hecha por ti mismo con 2 mesas lack de ikea.
Se coloca una mesa encima de otra, por la altura de la Anet 8 hay que añadir unos prolongadores de mesa de unos 10 cm. Hay que cerrar los laterales, en mi caso he usado unas tablas de contrachapado de 5mm de grosor y metacrilato de 3mm para los laterales (Atornillando el metacrilato al contrachapado). Para la puerta he utilizado metacrilato de 5 mm de grosor.
Sobre la mesa de abajo irá atornillada la base de la impresora, que en mi caso era una tabla de aglomerado de 1cm de grosor. Mientras, que sobre la mesa de arriba he colocado el soporte para la bobina del filamento, el soporte para el lcd y las cajas con los diferentes interruptores.
En la mesa de abajo se puede colocar una balda util para tener almacenados los filamentos.
– Piezas para imprimir:
+ Prolongadores para la mesa: 1814763
+ Soporte para el LCD: 2005640
+ Guia para el filamento: 2137546
+ Guia para pasar los cables: 1740538 (wires.stl)
+ Soportes para balda inferior: 1639945
+ Manilla para la puerta: 12695
+ Filtro para salida de aire: 2105113
+ Caja para interruptor de fuente. 49542
+ Caja para interruptor de palanca. 1238650 (Utilizados para encender y apagar el ventilador añadido a la fuente y/o el de la placa)
+ Caja para interruptor de botón. 746157 (Utilizados para encender y apagar las luces led y/o el filtro del aire)
– Piezas para comprar:
+ Cables
+ Leds para luz. 5 metros 300 unids SMD3528 DC 12 V de color blanco Aliexpress 2,15€
+ Filtro de carbono. pack de 10 de 12,8×18,8cm. Aliexpress 3,6€
+ Filtro HEPA. Pack de 5 de 64X45X12mm. Aliexpress 4,04€
+ Interruptores palanca. Pack de 5 de 3 pines. Aliexpress 1,22€
+ Interruptores de botón. Pack de 5 de 2 pines. Aliexpress 1,12€
+ Ventilador para el filtro del aire.
Instalar ROM (Lineage OS) en Samsung Galaxy 3 mini con TWRP
Lineage OS consiste en un sistema operativo de código abierto para teléfonos y tabletas Android. A continuación se explicaran los pasos a seguir para instalarlo en un Samsung Galaxy 3 mini con el TWRP.
1 – Copiar a la tarjeta externa del movil los 3 archivos siguientes.
– ROM del lineage OS, por ejemplo: lineage-14.1-20170108-UNOFFICIAL-golden.zip
– Las aplicaciones gapps: open_gapps-arm-7.1-micro-20170210.zip
– App solución de problemas de teclado: AOSP Keyboard Swype.zip
2 – Se debe tener instalado ya en el móvil el TWRP.
3 – Apagamos el movil y lo encendemos en modo recovery (para se pulsan simultáneamente las teclas volumen arriba, home, on/off realizará 3 reinicios hasta que por fin arranque el TWRP)
4 – Comprobar en la sección install que estan los tres archivos
5 – Vamos a WIPE >> ADVANCED WIPE >> seleccionamos las primeras 5 opciones >> deslizamos la barra de abajo para que limpie el equipo. Importante no seleccionar la sexta opción para la tarjeta externa.
6 – Volvemos de nuevo a la sección de install, seleccionamos la rom y luego deslizamos la barra de abajo.
7 – Cuando termine (tarda varios minutos) damos con el botón de atrás y hacemos lo mismo con las gapps.
8 – Repetimos lo mismo con AOPS Keyboard para solucionar los problemas del teclado.
9 – Ya podemos reiniciar el equipo en Reboot System. El móvil tardará un rato en iniciarse pero si todo ha ido bien debería arrancar el nuevo sistema.
Instalar Team Win Recovery Project (TWRP) en Samsung Galaxy S3 mini
El Win Recovery Project se trata de un software para Android que permite sustituir el recovery de fábrica por el suyo modificado y muchísimo más completo. Permite la instalación ROMs personalizadas entre otras funcionalidades.
Para instalarlo en un Samsung Galaxy 3 mini podemos seguir los siguientes pasos:
1 – Instalar drivers de samsung en nuestro pc. Podemos descargarlo de SAMSUNG_USB_Driver_for_Mobile_Phones.
2 – Descomprimir el programa Odin v3.07
3 – Una vez descomprimido lo ejecutamos como administrador. Odin3 v3.07.exe
4 – Dejamos únicamente seleccionada la opcion F. Reset Time.
5 – Seleccionamos con el botón PDA el archivo GT-I8190_TWRP_3.0.2-1.tar.md5
6 – Una vez preparada la parte del PC procedemos a apagar el telefono. Y lo encendemos en modo downloading ( para ello se deben pulsar simultáneamente las tablas volumen abajo, home, on/off).
7 – Cuando arranque pulsamos la tecla de volumen arriba para ir a la pantalla de downloading y conectamos el movil al pc.
8 – Esperar hasta que lo reconozca en Odin. Cuando eso pase en el log de odin saldrá Added! y ya podremos darle a Sart.
9 – Una vez finalizado el proceso del paso 8 desconectamos y apagamos el movil. (Para apagarlo basta con mantener presionado el boton de on/off varios segundos)
10 – Ahora para arrancar el TWRP sólo tenemos que iniciar el movil en modo recovery (mantener pulsadas las teclas volumen arriba, home, inicio)
Logrotate
Logrotate permite rotar a los archivos de LOG de nuestras aplicaciones. El logrotate se trata de un servicio que se ejecuta de forma autónoma, si queremos comprobar su funcionamiento basta con ejecutar la siguiente instrucción:
logrotate -vf /etc/logrotate.conf
Es en ese fichero donde se establece la configuración base para cualquier log que deseemos rotar. Vamos a poner un ejemplo de configuración para un aplicación de Node.js donde se utiliza Forever. Para ello:
Añadimos en /etc/logrotate.conf la configuración
/home/admin/.forever/*.log { daily # how often to rotate rotate 10 # max num of log files to keep missingok # don’t panic if the log file doesn’t exist notifempty # ignore empty files compress # compress rotated log file with gzip sharedscripts # no idea what it does, but it’s in all examples copytruncate # needed for forever to work properly dateext # adds date to filename dateformat %Y-%m-%d. }
Tras añadirlo iniciamos el logrotate
sudo logrotate -s /var/log/logstatus /etc/logrotate.conf
Podeis comprobar que los logs se están tratando asi:
tail -f /var/log/logstatus
JSON Viewer
El JSON Viewer se trata de una herramienta que te permite visualizar los ficheros *.json.
Capturas de pantalla del visor:
Instalación RabbitMQ en Ubuntu
RabbitMQ se trata de un software de código abierto para la negociación de mensajes. Implementa el estándar Advanced Message Queuing Protocol (AMQP).
Nota: AMQP es un protocolo binario que destaca por su interoperabilidad y fiabilidad. Ofrece un amplio conjunto de funcionalidades como colas fiables basadas en mensajería P/S, enrutamiento flexible, seguridad, además de permitir un control en profundidad de colas, cabeceras,…
Para instalarlo en ubuntu se pueden seguir los siguientes pasos:
1 – Añadir el repositorio de rabbitmq al ubuntu
echo 'deb http://www.rabbitmq.com/debian/ testing main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list
2 – Instalarlo
sudo apt-get update sudo apt-get install rabbitmq-server
3 – Comandos para iniciar, parar,…
//inicio el servicio rabbitmq sudo service rabbitmq-server start //parar el servicio rabbitmq sudo service rabbitmq-server stop //reiniciar el servicio rabbitmq sudo service rabbitmq-server restart //ver el estado del servicio rabbitmq sudo service rabbitmq-server status
3 – Configuración
Por defecto trae creado el usuario: guest (la contraseña es la misma). Podriamos cambiar esa contraseña pero vamos a explicar como sería crear un usuario nuevo para luego borrar el de por defecto:
//creamos el usuario admin con la contraseña 123 sudo rabbitmqctl add_user admin 123 //al usuario admin le asignamos el rol de administrator sudo rabbitmqctl set_user_tags admin administrator //eliminamos el usuario por defecto (guest) sudo rabbitmqctl delete_user guest
Podemos crear ahora un virtual host con el nombre DISASTER. Un Virtual Host viene a ser el namespace sobre el que luego crearemos los distintos objetos que vamos a utilizar para el intercambio de mensajes (p.e. colas)
//se crear el virtual host sudo rabbitmqctl add_vhost DISASTER //asignamos permisos de configuración/lectura/escritura al usuario admin sudo rabbitmqctl set_permissions -p DISASTER admin ".*" ".*" ".*"
Una vez creado el virtual host ya podriamos crear en él los canales para realizar el intercambio de mensajes.
Todo esto lo podriamos haber hecho desde la consola que nos provee el propio rabbitmq. Para ello, tendriamos que habilitarla
sudo rabbitmq-plugins enable rabbitmq_management
Una vez habilitada podriamos acceder a ella así: http://localhost:15672/
Por defecto solo se puede acceder a la web desde localhost, por lo tanto tenemos dos opciones: o bien se cambia la configuracion o bien accedemos desde un tunel.
Para la configuración se debe abrir el fichero /etc/rabbitmq/rabbitmq.config y añadir los accesos que se deseen:
{tcp_listeners, [5672]}, {loopback_users, []}
4 – Logs
Por defecto en /var/log/rabbitmq
Despliegue aplicación Spring-Boot en Openshift
En este tutorial vamos a explicar como se debe desplegar una aplicación Spring-Boot en Openshift. La aplicación correrá en un tomcat y utilizará como Base de Datos H2.
Creamos la aplicación en OpenShift. Para ello:
Paso 1: Nos registramos en https://www.openshift.com/
Paso 2: Creamos una aplicación que contenga un Tomcat 7 (JBoss EWS 2.0).
Instalamos y configuramos las Openshift Client Tools
Paso 1: Lo primero que debemos hacer es instalar Ruby, la versión que recomienda Openshift es la 1.9.3.
http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-1.9.3-p551.exe
(Cuando estamos instalando Ruby debemos marcar la opcion que dice Add Ruby executables to your PATH, para que se añada al Path del sistema.)
Para saber si tenemos Ruby añadido correctamente al Path, abrimos un terminal y ejecutamos:
ruby –v.
Paso 2: Instalamos la última versión de Git.
https://github.com/msysgit/msysgit/releases/download/Git-1.9.5-preview20150319/Git-1.9.5-preview20150319.exe
para comprobar si git también está bien instalado poedemos ejecutar:
git --version.
Paso 3: Instalamos las Client Tools (Openshift rhc).
//Para instalar las rhc sólo debemos escribir en nuestro terminal: gem install rhc //A continuación, configuramos con: rhc setup
Nos pedirá logarnos con nuestras credenciales. Al introducirlas, si son correctas el sistema de configuración nos indicará que va a crear un Token para que podamos acceder a OpenShift sin necesidad de colocar nuestras credenciales de acceso, este Token se guardará en nuestra carpeta de usuario en una carpeta llamada .openshift.
Generando War
Usando maven se puede hacer directamente por la consola con:
mvn clean package
Desplegando WAR en OpenShift
Paso 1: Primero debemos crear un SSH public key para poder acceder al servidor por ssh. Se crean desde la propia consola web de Openshift. O usamos la que nos ha creado por defecto openshift en nuestro directorio de usuario cuando se instaló rhc.
Si queremos crear una nueva podemos crearla con el Putty Key Generator. Luego se debe añadir en el openshift a través de la consola web.
Paso 2: Descargamos el repositorio git.
Paso 3: Borrar la carpeta src y el pom.xml
Paso 4: Colocamos nuestro WAR en la carpeta webapp
Paso 5: Editar el archivo server.xml que está en .openshift/config/server.xml. Buscamos el siguiente conector y en el redirectPort pone 8443, le quitamos el 8 y guardamos.
Paso 6: Al archivo .openshift/config/context.xml le añadimos la siguiente Valve:
< Valve className="org.apache.catalina.valves.RemoteIpValve" protocolHeader="x-forwardedproto"/>
Paso 7: Hacemos commit y push
Paso 8: Reiniciamos el servidor.
Base de datos H2
Se debe colocar el fichero de bd en app-root/data y darle permisos de lectura y escritura.
Categorias
- adobe (2)
- agile (1)
- Alfresco (1)
- Android (26)
- Angular (6)
- angularjs (10)
- apache (1)
- axis (2)
- Bases de datos (14)
- Bootstrap (1)
- C# (3)
- Cámara (1)
- chrome (3)
- Codeigniter (2)
- Control de Versiones (2)
- CSS (25)
- CVS (1)
- Django (9)
- Django Rest Framework (1)
- DNS (1)
- Docker (3)
- dominio (1)
- eclipse (5)
- Entity Framework (2)
- ETL (1)
- Firefox (6)
- flash (1)
- freecad (1)
- Git (12)
- GitHub (4)
- gpg (2)
- Groovy (1)
- Handlebars (1)
- hibernate (4)
- hosting (1)
- HTML (50)
- HTML 5 (26)
- Impresión 3D (9)
- Inkscape (1)
- IOS (2)
- ireports (3)
- Java (44)
- Javascript (55)
- JBoss (5)
- JPA (2)
- JQuery (20)
- Json (7)
- JSP (6)
- Keycloak (1)
- Lamp (1)
- LDAP (2)
- lean (1)
- linkedin (1)
- LINQ (1)
- linux (13)
- Livecycle (1)
- log (1)
- microcontroladores (1)
- MongoDB (4)
- MySQL (8)
- Node.js (5)
- OC4J (1)
- Openshift (2)
- Oracle (6)
- Patrones de Diseño (1)
- Photoshop (2)
- php (20)
- PostgreSQL (1)
- python (19)
- rabbitmq (1)
- Raspberry PI (13)
- Raspherry PI (5)
- React (6)
- seguridad (3)
- Selenium (3)
- Sencha Touch (1)
- Sin categoría (29)
- Spring (17)
- spring-boot (3)
- SQL (7)
- SQLServer (1)
- SSO (1)
- struts (2)
- SVN (1)
- Talend (1)
- Tomcat (6)
- unity (3)
- Visual Studio Code (2)
- vmware (5)
- Web Services (11)
- windows (18)
- wordpress (10)
- Xiaomi (1)
- xml (2)
Trabajos Realizados
- App Android – Autoka Fr
- App Android – Cartelera Cántabra
- App Android – Gramática y Vocabulario Ingles
- App Android – Hoja de Gastos
- App Android – Hotel Torre Cristina
- App Android – OcioEnjoy
- App Android – Visor CardBoard
- App Firefox – Managapp
- DiamanteBomba – DisasterCode
- Generador de Partes de Trabajo
- GitHub – Android Web Generator
- GitHub – Dynamic Angular Gallery
- GitHub – Dynamic React Gallery
- GitHub – Sotilizator
- GitHub – SpringAngularJS
- GitHub – Swiper Dynamic Angular Gallery
- HazParejas – DisasterCode
- RompeCabezas – DisasterCode
- Unity Game – English Couple
- Unity Game – Kill Wasp
- WordPress – El Buen Apicultor
- WordPress – El Cajón de los Retales
- WordPress – El Vestidito Azul
- WordPress – Feuchas
- WordPress – Fragua de Navajas Ponce
- WordPress – Humor a las Tres
- WordPress – Photo Places