Hack en lås
I Hal9k har alle medlemmer (normalt) fri adgang til spacet 24 timer i døgnet. Da det er ret upraktisk at holde styr på 50 nøgler, har medlemmerne i stedet adgangskort (som tidligere beskrevet her).
En lille, men væsentlig, del af adgangskontrolsystemet er selvfølgelig selve dørlåsen. Det har hidtil været en forholdsvis billig magnetlås, men da kommunen for nyligt valgte at udskifte alle døre og vinduer i bygningen, er der også kommet en ny hoveddør, og det er naturligvis en dør med trepunktslukning, som det er standard for moderne døre. Det betyder at den gamle magnetlås ikke kan bruges længere, og vi måtte derfor finde en anden løsning.
Det letteste er selvfølgelig at montere en ny magnetlås, og det findes da også – men prisen er omkring 10.000 kr, og formodentlig ville vi også skulle have noget hjælp fra en låsesmed, så det ville blive en dyr løsning. Heldigvis findes der forskellige IoT-dimser, som er beregnet til at montere på en eksisterende lås, og som typisk betjenes via Bluetooth med en app på telefonen. Den der er nemmest at få fat på i Danmark er den danskproducerede Danalock, som kan fås til omkring en tusse.
Jeg bestilte en Danalock til afhentning i et lokalt varehus og prøvede den på min egen yderdør, og det fungerede fint med den tilhørende app. Men til brug i spacet dur det selvfølgelig ikke, der skal den kunne kontrolleres fra adgangskontrolsystemet. Den oplagte løsning var at erstatte elektronikken med noget andet, og kun bruge selve mekanikken.
Det første trin var derfor at skille låsen ad og se hvordan den var konstrueret.
Mekanikken er forholdsvis simpel og består af tre dele:
En central akse, som er fast sammenkoblet med låsecylinderen. På forsiden af låsen sidder et håndtag som bruges til at dreje aksen og dermed låsecylinderen manuelt.
En “rotary encoder” som aflæser positionen af den centrale ekse. Det er en standard kvadraturencoder med to optiske sensorer, dvs. der er ikke nogen decideret nulposition.
Motoren og tilhørende gearing. De fleste af tandhjulene er stationære, men et par stykker af dem sidder på en arm der kan rotere. Det betyder at når motoren tændes, vil de bevægelige tandhjul efter kort tid gribe ind i det tandhjul der sidder på den centrale akse, som herved bringes til at rotere. På grund af de bevægelige tandhjul kan låsen stadig betjenes manuelt uden at motoren drejer med.
Elektronikken består af et lille print hvor de primære komponenter er en microcontroller og en motordriver.
Jeg fjernede printet og metalstrimlerne i batteriboksen, hvilket gav rigelig plads til den nye elektronik. Designet af denne blev drevet af hvad jeg havde på lager, og blev
- et modul med en TB6612 motordriver
- en Wemos D1 mini (ESP8266)
- et stepdown modul til at konvertere 12V til 5V
Motordriveren passede fint der hvor det originale print sad:
Jeg designede en erstatning for batteridækslet i OpenSCAD, og efter et par iterationer havde jeg noget der kunne bruges. Det originale batteridæksel er blot klipset fast til en skrue, men jeg valgte at lade den same skrue gå igennem et hul i det nye “batteridæksel”.
Og så kunne det hele samles:
Herefter var der kun tilbage at lave noget software, og status i skrivende stund er at låsen fungerer fint på min egen dør. Så nu venter jeg kun på at kunne sætte den op i spacet.
Se kode osv. på https://github.com/bullestock/danalock-wired.
01 feb
Kommentarer lukket til Hack en lås