Tabla de contenido:

Gestión inteligente de la ropa: 7 pasos
Gestión inteligente de la ropa: 7 pasos

Video: Gestión inteligente de la ropa: 7 pasos

Video: Gestión inteligente de la ropa: 7 pasos
Video: Estratek | 5 consejos para tener empleados felices y productivos 2024, Mes de julio
Anonim
Gestión inteligente de la lavandería
Gestión inteligente de la lavandería
Gestión inteligente de lavandería
Gestión inteligente de lavandería
Gestión inteligente de la lavandería
Gestión inteligente de la lavandería

Dandywash es un sistema inteligente de gestión de lavandería, orientado a personas que tienen poco tiempo para dedicarlo a tareas domésticas trilladas como lavar la ropa. Todos hemos estado allí, simplemente tirando nuestra ropa sucia en la canasta, con la esperanza de encontrar la motivación para ordenar el desorden más tarde. Sin embargo, nadie lo encuentra nunca. Hasta que realmente necesitemos alguna prenda y no la podamos encontrar por ningún lado. Eso es solo el comienzo. Luego viene la clasificación, llenado y seguimiento. Hacer esta tarea simple y repetitiva requiere demasiada atención y concentración. Esa es exactamente la razón por la que comencé este proyecto. Dandywash elimina todas estas actividades tediosas. Ya no tendrá que dedicar un segundo más a clasificar, rastrear o medir sus cargas. Manteniendo el control total. Obtenga más información y descubra cómo puede lograr el mismo resultado productivo leyendo este artículo.

Suministros

Creé una lista de materiales detallada en Excel, que puede ver aquí.

Contiene todos los elementos esenciales que necesita y dónde conseguirlos.

Además de eso, me gustaría enumerar algunos elementos adicionales que serán muy útiles al hacer este proyecto usted mismo, pero que no están obligados.

  • Dado que necesitará algunos cables de puente largos y esos no son realmente una cosa, le sugiero que compre tanto cables hembra - hembra como cables macho - macho. También compré mujer - hombre, pero esos no son realmente necesarios. De esta forma, puede crear cables más largos encadenándolos. Esto elimina el trabajo de soldadura que consume mucho tiempo.
  • También agregué muchas resistencias de seguridad en el circuito. Siéntase libre de sacarlos si se siente más seguro. Si se está quedando sin resistencias, le recomiendo que elija este kit, es muy conveniente tener siempre las resistencias que necesita, etiquetadas claramente.

Paso 1: preliminar

Preliminar
Preliminar
Preliminar
Preliminar

Arrancando la Raspberry Pi

Para ejecutar una cadena IOT completa desde Raspberry Pi, necesitamos inicializar el dispositivo. Esto se puede hacer descargando la imagen proporcionada y grabándola en una tarjeta micro SD (16 GB). Esto se puede hacer usando Win32DiskImager o cualquier otro software. Asegúrese de que su tarjeta SD esté completamente vacía y formateada antes de grabar la imagen. Este video explica todo el proceso paso a paso. Tenga en cuenta que no es necesario utilizar la imagen raspbian, sino la imagen proporcionada en su lugar.

Cuando haya terminado de escribir la tarjeta SD, puede quitarla e insertarla en el Pi. ¡Asegúrate de que el Pi aún no esté conectado a la corriente!

Cuando se inserta la tarjeta SD, conecte el Pi a su computadora portátil con un cable Ethernet. Solo entonces, cuando ya esté bajo tu control, dale poder. El Pi se iniciará en un par de segundos.

Puede controlar esto yendo al símbolo del sistema y escribiendo

ping 169.254.10.1 -t

Cuando recibe una respuesta en lugar de un "Host inalcanzable", su Pi se ha iniciado correctamente. Esto significa que podemos interactuar con él. Salga del bucle infinito de ping presionando Ctrl + C. Ahora puedes ingresar al Pi escribiendo

ssh [email protected]

esto le pedirá la contraseña, que es la frambuesa predeterminada.

Al arrancar por primera vez, generalmente es una buena práctica ejecutar ambos

$ sudo apt-get update

$ sudo apt-get upgrade

Esto asegurará que todos los paquetes estén actualizados y en la última versión.

MariaDB y Apache2 ya estarán instalados. Entonces no tenemos que preocuparnos por eso. Sin embargo, tenemos que configurar algunas otras cosas para que todo funcione como queremos.

Sin embargo, primero debe reiniciar para asegurarse de que todo esté listo para el siguiente paso.

$ sudo reiniciar

Paso 2: configurar la base de datos

Configurar la base de datos
Configurar la base de datos
Configurar la base de datos
Configurar la base de datos

Configuraremos la base de datos usando su computadora portátil / escritorio, no el Pi. Abra MySQL Workbench (guía de descarga) y agregue una nueva conexión.

Posteriormente, se le pedirá una ventana de configuración. El mío está lleno de la forma en que debería estar el tuyo. Preste mucha atención a los campos marcados. Las flechas apuntan a las contraseñas que debe almacenar en la bóveda. Estos son solo valores predeterminados y se pueden cambiar a su gusto.

Cuando ingrese toda la información, haga clic en Probar conexión, ignore la advertencia y, con suerte, vea la ventana de éxito. Si no es así, algunos campos son incorrectos. Puede continuar haciendo clic en Aceptar en la ventana con todos los campos de entrada.

La conexión ahora debería estar visible en la ventana de inicio. Haga clic en él para intentar conectarse. La contraseña debe ingresarse automáticamente ya que la almacenamos en la bóveda.

El último paso es importar la base de datos. Puede descargar el volcado aquí. Este video explica cómo abrir y ejecutar un archivo.sql. ¡Asegúrese de estar conectado a la Raspberry Pi y no a la instancia local en su computadora portátil!

Paso 3: Configurar el repositorio de Git

Configuración del repositorio de Git
Configuración del repositorio de Git
Configuración del repositorio de Git
Configuración del repositorio de Git
Configuración del repositorio de Git
Configuración del repositorio de Git
Configuración del repositorio de Git
Configuración del repositorio de Git

Trabajar con un repositorio de git es bastante necesario aquí. Especialmente si quieres cambiar fácilmente entre tu pc y raspi. Git ya debería estar instalado en el dispositivo, por lo que puede clonar el repositorio que desee en la carpeta que desee. Sin embargo, dado que estamos usando apache, necesitamos poner nuestro código Frontend (html, css, javascript) en la carpeta / var / www / html. No quiero poner todo el repositorio aquí, y definitivamente no quiero un repositorio separado.

Esto se puede resolver creando un enlace simbiótico, que es esencialmente lo mismo que un atajo en Windows. Se puede configurar fácilmente escribiendo el siguiente comando en la terminal raspi (¡después de clonar el repositorio!)

$ git clon

La creación de un enlace simbiótico tiene la siguiente estructura

$ ln -s / ruta / a / dir / ruta / a / enlace simbólico

Aplicado a este caso de uso, el comando debería verse así

$ ln -s ~ / inicio / pi / project1 / git-repo / / var / www / html

Ahora, si todo salió bien, puede navegar a https://169.254.10.1/Frontend debería ver el index.html del repositorio de git.

En esta carpeta encontrará el código de interfaz de respuesta completo. Incluyendo HTML5, CSS y JavaScript.

Paso 4: backend

Backend
Backend
Backend
Backend

Para este proyecto, usaremos Flask en combinación con Socketio. Esto nos permite configurar un servidor web flexible con enrutamiento y websockets. Esta aplicación Flask también interactuará con la base de datos para realizar acciones CRUD. Lo mejor de todo este conjunto es que se necesita muy poco tiempo y esfuerzo para configurarlo. En primer lugar, asegúrese de que estén instalados los siguientes paquetes de Python de terceros. Estos deben incluirse en la imagen, pero al ejecutar los siguientes comandos puede asegurarse de / actualizar a versiones más nuevas.

$ pip3 instalar mysql-connector-python

$ pip3 instalar flask-socketio $ pip3 instalar flask-cors $ pip3 instalar gevent $ pip3 instalar gevent-websocket

Ahora debería poder ejecutar el script app.py sin ningún problema. Puede ser que obtenga un atributoError que diga que el objeto de tipo "Base de datos" no tiene ningún atributo "cursor". Esto se debe a un error en el archivo config.py. Asegúrese de que la contraseña del nombre de usuario y el nombre de la base de datos sean correctos y tengan acceso a la base de datos que acabamos de importar. Esto es especialmente digno de mención en caso de que haya cambiado el nombre de usuario y la contraseña predeterminados en MySQL.

Paso 5: circuito

Circuito
Circuito
Circuito
Circuito
Circuito
Circuito

Realmente no puedo decir mucho sobre el circuito. Solo tendrá que compilar esto y ejecutar los scripts de prueba en el repositorio de git. Creé un script de prueba para cada sensor y actuador en el circuito, para que pueda probar cada pieza / componente individualmente.

Es posible que deba cambiar los números de pin en el código. También agregué muchas resistencias de seguridad en el circuito. Siéntase libre de sacarlos si se siente más seguro. Si se está quedando sin resistencias, le recomiendo que elija este kit, es muy conveniente tener siempre las resistencias que necesita, etiquetadas claramente.

Si el circuito te asusta, no te desanimes. Intente dividirlo en secciones. Primero construya los botones, asegúrese de que funcionen y luego pase al siguiente sensor. Esto es algo que no se puede construir de una sola vez, a menos que tenga un talento asombroso.

Finalmente, tenga en cuenta que la Raspberry Pi no es adecuada para ningún software PWM serio. Linux no es un sistema operativo en tiempo real. Esto significa que tendrá una ligera fluctuación en los servomotores. El pin 18 de GPIO admite hardware pwm, pero necesitamos más que solo el pin 1.

Paso 6: Caso

Caso
Caso
Caso
Caso
Caso
Caso

Tenía todo un diseño planeado en mi cabeza, que no se pudo realizar debido a la pandemia actual. Por supuesto, esta es una situación que exige flexibilidad de todos, y así es exactamente como reaccioné. Todavía tengo la escena 3D original que hice, y también compartiré esto aquí, si desea construir el caso de esa manera. Sin embargo, durante el resto de este artículo, discutiré cómo se construyó alternativamente el caso.

El principal inconveniente era la placa de abdominales que iba a usar para montar la parte superior en la parte inferior. Este era el material perfecto. Estéticamente agradable y muy práctico. Sin embargo, esto no se pudo realizar, así que tuve que encontrar una alternativa. Como no podía pensar en otro material de la misma resistencia que pudiera doblarse de la misma manera, decidí reemplazarlo por uno similar a madera. Esto hizo que las curvas redondeadas fueran imposibles, pero en realidad creó otra superficie plana que podría usarse para almacenar artículos como productos de lavandería o pinzas para la ropa. Terminé usándolo para almacenar una segunda placa de pruebas, lo que hizo que mi vida de circuito fuera mucho más fácil para este prototipo.

Tenga en cuenta el agujero rectangular que se hizo en la parte posterior. Esto permite que los cables se dirijan al Raspbarry Pi.

Para las tablas, visité mi tienda de bricolaje local. Siempre tienen un poco de madera de desecho por ahí y están dispuestos a cortarla en pedazos por un pequeño precio. Pagué un total de 5 € en total. Un gran saludo a Louis de Hubo Wevelgem para que esto sea posible. Después, solo fue cuestión de perforar agujeros y atornillar todo en su lugar. Puede encontrar una descripción detallada de dónde cortar y dónde perforar aquí.

Para los bits impresos en 3D, tuve que confiar en las personas que me rodeaban, ya que la escuela ya no podía brindar este servicio debido a la pandemia. A través de un amigo de un amigo, me puse en contacto con alguien que estaba comenzando a construir su negocio de impresión 3D. Fue lo suficientemente generoso como para imprimir mi pieza principal. La calidad fue bastante grosera debido a una mala configuración de la impresora. Compré un aerosol de imprimación y le di 3 capas, restaurando el aspecto general.

Los soportes del sensor de distancia fueron hechos por otro amigo. También imprimió las escotillas que estaban unidas a los servomotores. Al principio probé esto con cartón, pero no se pegaban muy bien. Tenga en cuenta que si imprime en 3D estos bits, necesita bottom_hatch.stl dos veces, así como distanceSensorHolder.stl. main_piece.stl y middle_hatch.stl solo necesitan imprimirse una vez.

Paso 7: ¿Preguntas?

Si alguna parte no está totalmente clara para usted todavía, no dude en acercarse y permítame ayudarlo.

No dude en ponerse en contacto por correo electrónico en [email protected]

Recomendado: