Innehållsförteckning:

Smart tvätthantering: 7 steg
Smart tvätthantering: 7 steg

Video: Smart tvätthantering: 7 steg

Video: Smart tvätthantering: 7 steg
Video: Google Rutiner på svenska 2024, November
Anonim
Smart tvättstuga
Smart tvättstuga
Smart tvättstuga
Smart tvättstuga
Smart tvättstuga
Smart tvättstuga

Dandywash är ett smart tvätthanteringssystem, inriktat på människor som har lite tid att spendera på treta hushållsuppgifter som att tvätta. Vi har alla varit där, bara kastat våra smutsiga kläder i korgen, i hopp om att hitta motivation att sortera igenom röran senare. Ingen hittar det dock någonsin. Tills vi verkligen behöver några kläder och kan inte hitta det någonstans. Det är bara början. Sedan kommer sorteringen, fyllningen och spårningen. Att göra denna enkla och repetitiva uppgift tar alldeles för mycket uppmärksamhet och fokus. Det var just därför jag startade det här projektet. Dandywash eliminerar alla dessa tröttsamma aktiviteter. Du behöver inte längre spendera ytterligare en sekund med att sortera, spåra eller mäta dina laster. Med full kontroll. Läs mer och hur du kan uppnå samma produktiva resultat genom att läsa igenom den här artikeln.

Tillbehör

Jag skapade en detaljerad materiallista i Excel, som du kan se här.

Den innehåller alla viktiga bitar du behöver, och var du kan få dem.

Utöver dem skulle jag vilja lista några ytterligare objekt som kommer att vara mycket användbara när du gör detta projekt själv, men som inte är obligatoriska.

  • Eftersom du behöver några långa bygelkablar och det inte är en sak, föreslår jag att du köper både hona - honkablar som han - hankablar. Jag köpte också tik - hane men det är inte nödvändigt. På så sätt kan du skapa längre kablar genom att kedja ihop dem. Detta eliminerar tidskrävande lödningsarbete.
  • Jag har också lagt till många säkerhetsmotstånd i kretsen. Ta gärna ut dem om du känner dig extra säker. Om du tar slut på motstånd rekommenderar jag att du hämtar detta kit, det är väldigt bekvämt att alltid ha de motstånd du behöver, tydligt märkta.

Steg 1: Preliminärt

Preliminära
Preliminära
Preliminära
Preliminära

Startar Raspberry Pi

För att köra en hel IOT -kedja från Raspberry Pi måste vi initialisera enheten. Detta kan göras genom att ladda ner den medföljande bilden och bränna den på ett micro SD -kort (16 GB). Detta kan verkligen göras med Win32DiskImager eller någon annan programvara. Se till att ditt SD -kort är helt tomt och formaterat innan du bränner bilden. Denna video förklarar hela processen steg för steg. Observera att du inte behöver använda den raspbiska bilden utan den medföljande bilden istället.

När du är klar med att skriva SD -kortet kan du ta bort det och sätta in det i Pi. Se till att Pi inte är ansluten till strömmen ännu!

När SD -kortet är isatt, anslut Pi till din bärbara dator med en ethernet -kabel. Först då, när det redan är under din kontroll, ge det makt. Pi startar om ett par sekunder.

Du kan övervaka detta genom att gå in i kommandotolken och skriva

ping 169.254.10.1 -t

När du får ett svar snarare än ett "Host Unreachable" har din Pi startat. Det betyder att vi kan interagera med det. Avsluta den oändliga pingelslingan genom att trycka på Ctrl+C. Nu kan du ange Pi genom att skriva

ssh [email protected]

detta kommer att fråga dig om lösenordet, som är standard hallon.

När du startar för första gången är det i allmänhet bra att köra båda

$ sudo apt-get uppdatering

$ sudo apt-get uppgradering

Detta säkerställer att alla paket är uppdaterade och på den senaste versionen.

MariaDB och Apache2 kommer redan att installeras. Så vi behöver inte oroa oss för dem. Vi måste dock ställa in några andra saker för att allt ska fungera som vi vill.

Du bör dock starta om först för att se till att allt är klart för nästa steg.

$ sudo starta om

Steg 2: Konfigurera databasen

Konfigurera databasen
Konfigurera databasen
Konfigurera databasen
Konfigurera databasen

Vi kommer att konfigurera databasen med din bärbara dator / stationära dator, inte Pi. Öppna MySQL Workbench (nedladdningsguide) och lägg till en ny anslutning.

Efteråt uppmanas du med ett konfigurationsfönster. Mitt är fyllt som ditt ska vara. Var noga med de markerade fälten. Pilarna pekar på lösenorden du måste lagra i valvet. Dessa är bara standardvärden och kan ändras efter dina önskemål.

När all information har angetts klickar du på Testanslutning, ignorerar varningen och förhoppningsvis ser framgångsfönstret. Om du inte gör det är vissa fält felaktiga. Du kan fortsätta genom att klicka på Ok i fönstret med alla inmatningsfält.

Anslutningen ska nu vara synlig i startfönstret. Klicka på den för att försöka ansluta. Lösenordet ska anges automatiskt eftersom vi lagrade det i valvet.

Det sista steget är att importera databasen. Du kan ladda ner dumpningen här. Denna video förklarar hur man öppnar och kör en.sql -fil. Se till att du är ansluten till Raspberry Pi, och inte den lokala instansen på din bärbara dator!

Steg 3: Konfigurera Git -förvaret

Konfigurera Git -förvaret
Konfigurera Git -förvaret
Konfigurera Git -förvaret
Konfigurera Git -förvaret
Konfigurera Git -förvaret
Konfigurera Git -förvaret
Konfigurera Git -förvaret
Konfigurera Git -förvaret

Att arbeta med en git repo är ganska nödvändigt här. Speciellt om du enkelt vill växla mellan din dator och raspi. Git bör redan vara installerat på enheten, så du kan bara git klona vilken repo du vill till vilken mapp du vill. Men eftersom vi använder apache måste vi lägga vår Frontend -kod (html, css, javascript) i mappen/var/www/html. Jag vill inte lägga hela repot här, och jag vill definitivt inte ha en separat repo.

Detta kan lösas genom att skapa en symbiotisk länk, som i huvudsak är densamma som en genväg i windows. Det kan enkelt konfigureras genom att skriva följande kommando i raspi -terminalen (efter kloning av repo!)

$ git -klon

Att skapa en symbiotisk länk har följande struktur

$ ln -s/path/to/dir/path/to/symlink

När det gäller detta användningsfall bör kommandot se ut ungefär så här

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

Om allt gick bra kan du bläddra till https://169.254.10.1/Frontend bör se index.html från git repo.

I den här mappen hittar du den fullständiga responsiva frontendkoden. Inklusive HTML5, CSS och JavaScript.

Steg 4: Backend

Backend
Backend
Backend
Backend

För detta projekt kommer vi att använda Flask i kombination med Socketio. Detta gör att vi kan skapa en flexibel webbserver med routing och webbuttag. Denna Flask -app kommer också att interagera med databasen för att utföra CRUD -åtgärder. Det bästa med hela denna stack är att det tar väldigt lite tid och ansträngning att ställa in. För det första, se till att följande Python -paket från tredje part är installerade. Dessa bör ingå i bilden, men genom att köra följande kommandon kan du se till / uppdatera till nyare versioner.

$ pip3 installera mysql-connector-python

$ pip3 installera flask-socketio $ pip3 installera kolv-kors $ pip3 installera gevent $ pip3 installera gevent-websocket

Du bör nu kunna köra app.py -skriptet utan problem. Det kan vara att du får ett attributeError som säger att typobjektet 'Database' inte har något attribut 'markör'. Detta orsakas av ett misstag i filen config.py. Se till att användarnamnlösenordet och databasens namn är korrekta och ha tillgång till databasen vi just importerade. Detta är särskilt anmärkningsvärt om du ändrade standard användarnamn och lösenord i MySQL.

Steg 5: Krets

Krets
Krets
Krets
Krets
Krets
Krets

Jag kan inte säga så mycket om kretsen. Du måste bara bygga detta och köra testskripten i git repo. Jag skapade ett testskript för varje sensor och ställdon i kretsen, så att du kan testa varje del / komponent individuellt.

Det kan vara så att du måste ändra pin -numren i koden. Jag har också lagt till många säkerhetsmotstånd i kretsen. Ta gärna ut dem om du känner dig extra säker. Om du tar slut på motstånd rekommenderar jag att du hämtar detta kit, det är väldigt bekvämt att alltid ha de motstånd du behöver, tydligt märkta.

Om kretsen skrämmer dig överhuvudtaget, bli inte avskräckt. Försök att dela upp det i sektioner. Bygg ut knapparna först, se till att det fungerar och gå sedan vidare till nästa sensor. Detta är något du inte bara kan bygga på en gång, såvida du inte är förvånansvärt begåvad.

Slutligen notera att Raspberry Pi inte är lämplig för seriös PWM -programvara. Linux är inte ett realtidsoperativsystem. Det betyder att du kommer att få lite skakningar i servomotorerna. GPIO pin 18 stöder hårdvara pwm, men vi behöver mer än bara 1 pin.

Steg 6: Fodral

Fall
Fall
Fall
Fall
Fall
Fall

Jag hade en hel design planerad i mitt huvud, som inte kunde realiseras på grund av den aktuella pandemin. Naturligtvis är detta en situation som kräver flexibilitet från alla, och det var precis så jag reagerade. Jag har fortfarande den ursprungliga 3D -scenen som jag gjorde, och jag kommer att dela den här också om du vill bygga fallet på det sättet. För resten av denna artikel kommer jag dock att diskutera hur fallet alternativt byggdes.

Det största besväret var abs -plattan som jag tänkte använda för att montera den övre delen till den nedre delen. Detta var det perfekta materialet. Estetiskt tilltalande och mycket praktiskt. Detta kunde dock inte realiseras, så jag var tvungen att hitta ett alternativ. Eftersom jag inte kunde tänka mig ett annat material med samma styrka som kunde böjas på samma sätt, bestämde jag mig för att ersätta det med en träliknande. Detta gjorde de rundade kurvorna omöjliga, men skapade faktiskt en annan plan yta som kan användas för att lagra föremål som tvättprodukter eller klädnypor. Jag slutade använda den för att lagra en andra brödbräda, vilket gjorde mitt cirkulära liv mycket lättare för denna prototyp.

Notera det rektangulära hålet som borrades i ryggen. Detta gör att kablar kan dras till Raspbarry Pi.

För plankorna besökte jag min lokala butik. De har alltid lite skrotvirke kvar och är villiga att skära det i bitar för ett litet pris. Jag betalade totalt 5 euro totalt. Stort utrop till Louis från Hubo Wevelgem för att göra detta möjligt. Efteråt var det bara att borra hål och skruva fast allt. En detaljerad översikt över var du ska skära och var du ska borra hittar du här.

För 3D -tryckta bitar var jag tvungen att lita på människorna runt omkring mig, eftersom skolan inte längre kunde tillhandahålla denna tjänst på grund av pandemin. Genom en vän till en vän fick jag kontakt med någon som precis började bygga sin 3D -utskriftsverksamhet. Han var generös nog att skriva ut mitt huvudverk. Kvaliteten var ganska svag på grund av en felkonfiguration av skrivaren. Jag köpte en primerspray och gav den 3 beläggningar för att återställa det övergripande utseendet.

Avståndssensorhållarna gjordes av en annan vän. Han skrev också ut luckorna som var fästa på servomotorerna. Först försökte jag detta med kartong, men de skulle inte fastna särskilt bra. Observera att om du 3D -skriv ut dessa bitar behöver du bottom_hatch.stl två gånger, liksom distanceSensorHolder.stl. main_piece.stl och middle_hatch.stl behöver bara skrivas ut en gång.

Steg 7: Frågor?

Om någon del inte är helt klar för dig ännu, tveka inte att höra av dig och låt mig hjälpa dig.

Ta gärna kontakt via e -post på [email protected]

Rekommenderad: