cogliostrio Skrevet 9. september 2023 Skrevet 9. september 2023 (endret) Introduksjon Denne guiden gir ikke alle detaljer, men prøver å gi generelle retningslinjer som kan forenkle prosessen ved å bygge noe tilsvarende. Verktøy Kapp-/Gjærsag Drill 35mm bor (sylinderbor/ hengselbor) https://www.biltema.no/verktoy/bor/trebor/sylinderbor-2000016848 https://www.byggmakker.no/produkt/hengselbor-35mm-8x60-2-skjaer/7311662131784 “Tapetkniv” Mal for hullboring (skrog/dør) Hurtigtvinge Linjal/vinkel (stål/alu for kutting av sokkellist) Vinkelsliper 3d printer Deleliste Aktuator (150mm, 90mm/s) https://www.aliexpress.com/item/4000849922418.html?spm=a2g0o.order_list.order_list_main.14.21ef1802NtTDy9 Motorstyring https://www.aliexpress.com/item/4000002701244.html?spm=a2g0o.order_list.order_list_main.19.21ef1802NtTDy9 Hengsler (uten demping) https://www.clasohlson.com/no/p/40-7887 Monteringsbånd https://www.biltema.no/bygg/byggbeslag/hullband/monteringsband-galvanisert-2000017277 Limit switch https://artigereliv.no/produkt/elektronikk/mikrokontrollere/sensorer-og-tilbehor/3d-printer-limit-switch D1 mini (esp8266) Stepdown https://www.aliexpress.com/item/1005003140077648.html?spm=a2g0o.productlist.main.1.598b2b06DMKN7g&algo_pvid=3f583756-e566-460d-a392-336417dbe220&algo_exp_id=3f583756-e566-460d-a392-336417dbe220-0&pdp_npi=4%40dis%21USD%211.59%211.59%21%21%211.59%21%21%402103135816942659190861478edc71%2112000024308653563%21sea%21NO%21182151077%21S&curPageLogUid=J0TC7f4ZOn7G Strømforsyning https://www.aliexpress.com/item/32805093211.html?spm=a2g0o.order_list.order_list_main.129.24311802Qmk128 Passe lang M6 bolt til å feste aktuator (2stk) M6 Skiver M6 låsemutter Ståltråd https://www.biltema.no/fritid/hage/gjerde/staltrader/staltrad-50-m-2000041228 Div ledninger Små skruer til å feste aktuatorbrakett i dør Bygge rammen Mockup av rammen. Jeg bygget rammen min av terrassebord jeg hadde liggende (28x120), men akkurat hva det er så lenge det passer underkjøkkenbenken er ikke så viktig. Bredden innvendig bør være støvsuger + rundt 3cm klaring på hver side av den innvendig (husk bredde på aktuator og klaring fra denne mot ramme kan være rundt 4cm). Dybden på rammen kan være noe kortere enn totaldybde, da det kan justeres med overliggeren som døra festes i. Rundt 5mm kan være greit, men dette må vurderes individuelt. Senterpunkt i rammen vil da være mellom den ene siden, og mot aktuator på andre siden. Jeg kuttet også hull i bakkant til docking, for å få litt ekstra dybde. Jeg boret også hull til en guide-pinne som sitter i veggen (type treplugg som kommer med flatpakkede skap o.l.). Dette for å ha et fast punkt å jobbe fra (måtte ha rammen ut flere ganger for å måle). Toppen av overliggeren bør være så nært undersiden av benk som mulig, for at dør ikke skal komme i konflikt med rammen under åpning. Jeg endte opp med å shimme den opp fra rammen, for å redusere avstanden mest mulig. Hengsler Bor hull til hengsle ved bruk av mal i dør og overligger (holdes fast med hurtigtvinge). Modifiser hengsle ved å ta bort fjær, slik at den glir uten motstand. Bor ut aksling den er festet på ihht bilde. Aktuator Aktuator festes med noe klaring mot gulv, horisontalt fra dør til ramme. Klaring mellom dør og ramme er avstanden til hengsle, og må tas med i beregningen når overligger monteres mtp dybde under benk. Rundt 4-5mm opp fra gulvet burde være en god plassering. Forsenket M6 bolt med skive fra utside, slik at envelopen ikke er større enn rammen. Bolten er så festet med skive og låsemutter på innsiden, og så shimmet ut til riktig avstand for montering av aktuator. Brakett med M6 bolt, merk ingen mutter. Dette er for mekanisk override, ved at sokkel ved siden av ramme kan tas av, og bold fjernes ved funksjonssvikt. Legg merke til avrundet hjørne i bakgrunn for tilgang til bolt fra utsiden. Bolt er kuttet i lengden, slik at den skal være enklest mulig å få ut. Kutte sokkellist For å kutte sokkellisten lagde jeg først et dypt kutt med en tapetkniv på fronten (bruk linjal/vinkel med hurtigtvinge for å unngå feilskjær), deretter brukt jeg en gjærsag med dybdestopp for å kutte resten fra baksiden. Dette sørger for kutte bort minst mulig materiale, for best mulig sammenstilling. Kode // constants won't change. They're used here to set pin numbers: const int pushPin = 2; // D4 -> switch, motor const int overRidePin = 14; // D5 -> switch, override const int openPin = 16; // D0 -> 3, BTS7960 const int shutPin = 15; // D8 -> 4, BTS7960 // Variables will change: int openState = LOW; // int shutState = HIGH; // int pushState; // the current reading from the input pin int lastPushState = LOW; // the previous reading from the input pin // the following variables are unsigned longs because the time, measured in // milliseconds, will quickly become a bigger number than can be stored in an int. unsigned long lastDebounceTime = 0; // the last time the output pin was toggled unsigned long debounceDelay = 100; // (50) the debounce time; increase if the output flickers void setup() { Serial.begin(115200); Serial.println("setup"); pinMode(pushPin, INPUT); pinMode(overRidePin, INPUT); pinMode(openPin, OUTPUT); pinMode(shutPin, OUTPUT); // set initial state digitalWrite(openPin, openState); digitalWrite(shutPin, shutState); } void loop() { // read the state of the switch into a local variable: int reading = digitalRead(pushPin); // check to see if you just pressed the button // (i.e. the input went from LOW to HIGH), and you've waited long enough // since the last press to ignore any noise: // If the switch changed, due to noise or pressing: if (reading != lastPushState) { // reset the debouncing timer lastDebounceTime = millis(); } if ((millis() - lastDebounceTime) > debounceDelay) { // whatever the reading is at, it's been there for longer than the debounce // delay, so take it as the actual current state: // if the button state has changed: if (reading != pushState) { pushState = reading; // only toggle the door if the new button state is HIGH if (pushState == HIGH) { // open gate: digitalWrite(openPin, LOW); digitalWrite(shutPin, HIGH); Serial.println("shut gate"); } else { // shut gate: digitalWrite(shutPin, LOW); digitalWrite(openPin, HIGH); Serial.println("shut gate"); } } } // save the reading. Next time through the loop, it'll be the lastButtonState: lastPushState = reading; } Elektronikk Koblingsskjema til elektronikk Koble sammen og last opp kode til D1 mini. Bryter er festet med ståltråd i monteringsbånd, for å enkelt kunne justere denne til støvsugerpossisjon når den står i docken. Etterord Tatt i betraktning at det begynner å bli ganske vanlig med store dockingstasjoner for støvsugere med automatisk tømming og fylling av vann. Kan det være en ide å lage en slik garasje der man har et høyskap, slik at man kan få plass til å hente ut disse dunkene på en enkel måte. Koden som styrer døra er ganske enkel, så om det skulle dukke opp en oppgraderinger med MQTT autodiscovery, ville det vært veldig praktisk 😉. Vedlegg: - Holder til ESP, stepdown og motorstyring - Brakett til dør - Mal til hengsle-skrog - Mal til hengsle-dør Hengslemal skrog.stl Hengslemal dør.stl Motor festbrakett.stl Holder.stl edit: oppdatert aktuator spec edit2: oppdatert koblingsskjema Endret 16. februar av cogliostrio 4 2 Siter
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.