Kategori: Internet of Things
Lysande bord med WiFi-uppkoppling
Material
Styrkrets: WeMos/Lolin D1 mini med Level shift shield
Adresserbar LED-list
Aluminiumprofil med front och fästklamrar
Krympslang
Kabel för skarvar och anslutning
Kontakt för spänningsmatning
Spänningsmatning
Låda för styrkrets
Val av LED-list och styrelektronik
Vi valde i det här projektet en Dotstar APA102-list med 30 lysdioder per meter, men det finns mängder av alternativ.
Styrkortet är WeMos/Lolin D1 mini med en Level shift shield och det fiffiga med det valet är att koden redan är färdigutvecklad från vårt X-mas lights-projekt.
Prototypkoppling
I vilken ände ska man börja? Jo, det roligaste är förstås att få se lysande lysdioder. Snabbaste vägen dit är att göra en prototypkoppling med styrkretsen och den sammanhängande LED-listen. Det kan vara svårt att koppla in sig med krokodilklämmor eller dylikt på listen, så det enklaste är att löda dit fyra trådar på ingångarna.
För tydlighets skull använde vi en röd kabel till +5V, en svart till GND, en gul till CI (clock in) och en blå till DI (data in). Dessa kopplas till respektive skruvplint på levelshift shielden.
Ett tips är att löda varannan kabel på ovansidan av listen och varannan på undersidan för att minska risken för kortslutning.
Under prototypfasen kan du mata både styrkretsen och LED-listen via USB-porten på styrkortet.
Programmering
Följ instruktionerna för hur du flashar kortet med det i princip färdiga programmet här. I vårt fall behövde vi bara ändra antalet pixlar i slingan samt typen av lysdioder (APA102).
Från en websida kan du nu enkelt styra ljusstyrkan, välja en enskild färg eller ett antal olika rörliga mönster och paletter.
Gränssnittet för att styra belysningen.
Bygg listen
Börja med att mäta där listen ska placeras. Det lämpligaste under vårt bord var att bygga en kvadrat med 40 cm sidor för att allt ska få plats innanför bordsbenen.
Dela därefter upp listen lagom långa bitar. De flesta LED-lister kan kapas åtminstone var 5 cm. Det brukar vara tydligt utmärkt.
Om din LED-list, liksom vår, har ett hölje som behöver tas bort är det dags nu. Aluminiumprofilerna är gjorda för LED-lister upp till 12 mm bredd och höljet behöver tas bort om listen är bredare än 10 mm. Utan hölje som skyddar behöver du isolera skarvarna på listen. Vi gjorde det genom att klä in hela listen med ofärgad krympslang. Kom ihåg att trä på den innan du börjar löda.
När du köper en slinga från oss får du med säkerhet kontakter i bägge ändar endast om du köper en hel rulle. Köper du en kortare bit är det inte säkert att det följer med kontakter. Vår slinga råkade ha en kontakt på utgången och det spelar ingen roll i vilken ände listen spänningsmatas, så vi passar på att använda de kablarna för att koppla in spänningsaggregatet via kontakten. D1 Mini får spänning från den andra änden av slingan, där den är ansluten. Vi sparar kontakten med listens utgångar ifall vi får för oss att koppla in en till slinga i framtiden. 🙂
Hörnen på kvadraten byggs genom att skarva listen med fyra lagom korta kabelsnuttar i varje hörn.
När lödningarna är klara, testa att allt fortfarande fungerar.
Krympslang
När du är övertygad om att alla lödningar fungerar som de ska är det dags att krympa krympslangen. Var försiktig just vid anslutningarna. Dra inte ihop krympslangen så mycket att kablarna råkar få kontakt eller listen börjar vika sig.
Aluminiumprofilerna
Såga till aluminiumprofilerna i lagom längder. Det går till exempel att använda en bågfil. Vi sågade även täckfronterna i samma längd, men de är lite knepiga att såga eftersom de både är sköra och smulas sönder av värmen som bildas av friktionen från sågbladet. Hör gärna av dig med tips om du kommer på en bättre lösning.
Montering
Placera LED-listen i aluminiumprofilen och tryck dit fronten.
Skruva dit fästklamrarna där listerna ska sitta. Vi använde både plast– och metallvarianten.
Snäpp fast aluminiumprofilerna. Var noggrann med att metallklamrarna hamnar på rätt ställe, eftersom de lämnar repor om man försöker dra profilen i sidled när den sitter fast.
Låda till elektroniken
Vi placerade elektroniken i en därtill avsedd låda som vi sedan tejpade fast med dubbelhäftande tejp under bordet. Lådan modifierades genom att skruvplintarna för kretskortet togs bort och ett
litet hål på sidan för kabelgenomföring borrades. Instruktioner finns i det här blogginlägget.
Njut!
Dämpa övrig belysning, ropa på några kollegor eller förbipasserande och njut av resultatet.
Rullgardinsstyrning baserad på ESP8266
Som du kanske vet säljer vi sen några år tillbaka tubmotorer ämnade för rullgardiner.
I de flesta fall använder man dessa med Z-wave (Qubino Flush Shutter DC) eller över 433MHz med EY-motorerna som har inbyggda mottagare, men i det här blogginlägget går jag igenom hur man kan bygga en styrenhet som går över WiFi med hjälp av en ESP8266 med tillhörande motorkontroller!
På vår Github har vi koden som används, samt en genomgång av vad man behöver för att kunna flasha mjukvaran.
Observera också att jag använt Adafruits Feather HUZZAH. Koden går att anpassa för andra ESP:er (t.ex. WeMos D1 Mini + Motor Shield) men det är inget vi har planer på att utföra. Det som behövs är att ersätta Adafruits motorbibliotek med kod för WeMos motor shield, samt ändra PIN-layouten. Då behöver man även ta hänsyn till specifikationen på Motor Shielden.
Beståndsdelar
Feather HUZZAH ESP8266 WiFi Development board – Den enhet som programmeras, och som kommunicerar med WiFi-nätverket. Jag har använt en stacking header på min, varför kommer jag gå in på mer senare.
DC Motor or Stepper FeatherWing – denna sköter logiken för motorn och är den komponent till vilken både motorn och 12V-matning ansluts. Kan driva 1.2A per kanal och har fyra kanaler, så i teorin kan man koppla in fyra motorer till den som styrs separat. Vår kod är dock endast förberedd för en motor.
Tubmotor ES1612 – Har inbyggd logik för att ställa ändlägen, så stannar automatiskt när den kommer högst upp eller längst ner. Observera dock att mjukvaran inte har logik för att känna av när motorn rullat färdigt, så man bör hårdkoda hur länge den ska rulla för att inte spänningen ska behöva ligga på hela tiden. Det går också att använda en sensor e.d. för att känna av när den ska slå av. Eller, om man sköter kontrollen från ett externt system, kan man ställa in det där istället. Mer om det längre ner.
UBEC DC/DC Step-Down Converter – Motorn behöver ha 12V spänning, men för att omvandla denna till 5V (som Feathern vill ha) använder jag en UBEC.
Lösa kablar, monteringsdosa och CCTV-1024 – Jag gömmer Feathern och kablarna i en monteringsdosa. CCTV-1024 sticker jag ut genom ett av hålen för att kunna ansluta spänningsmatning, och motorns kabel går ut genom ett annat hål.
Supersnyggt inkopplingsdiagram
OBS motor shield ska sitta ovanpå Feathern
Verkligheten
Jag gjorde mitt bästa, OK?
Kom igång med mjukvaran
Mjukvaran hittar du här, ladda ner de bibliotek som refereras i beskrivningen och flasha in den med Ardunio IDE 1.6.2 eller nyare med ESP8266 Core.
När allt är ihopkopplat och flashat via Arduino IDE kommer enheten dyka upp som en WiFi-accesspunkt med namnet “BlindMaster” och lösenord “password”. Dessa uppgifter går att ändra på rad 32 i ino-filen innan man flashar, om man så önskar.
Anslut till accesspunkten och surfa in på 192.168.4.1 så kan du ställa in vilket WiFi-nätverk den ska ansluta till. När det är gjort startar enheten om och agerar istället klient.
Nu behöver du hitta vilken IP-adress enheten fått på ditt nätverk. Det kan du se i routern, eller med något passande verktyg som scannar nätverket (arp -a kan fungera i Windows från kommandotolken).
Sen surfar du helt enkelt in på IP-adressen i din webbläsare, och får upp några knappar för att styra rullgardinen upp, ner eller för att stoppa den. Observera att via webbinterfacet stoppas inte spänningen till motorn automatiskt när den slutat rulla, det skulle kanske kunna lösas med en hårdkodad delay eller en DC-sensor.
Att styra den från hemautomation, då? Det skulle kunna fungera att köra REST GET-kommandon på URL:erna för upp, ner och stopp. Att lägga in logik för rullgardinsposition med hjälp av en DC-sensor är inte heller otänkbart, och man skulle då kunna få feedback på var rullgardinen befinner sig.
Mycket nöje! 🙂

Kul att du gillar vår blogg!
Skriv upp dig på vår maillista för att få allt det senaste från m.nu - Nya produkter, kampanjer och mycket mer!
Wohoo! Du är nu med på maillistan!