Stemmestyring til Home Assistant med M5Stack ATOM Echo

Illustration: Stemmestyring til Home Assistant med M5Stack ATOM Echo

ATOM Echo er en terning på 24 × 24 × 17 mm med mikrofon, højttaler, knap og en farvet LED. Sammen med Home Assistants stemmeassistent, Assist, bliver den en lille stemmeboks til køkkenet eller stuen. Du siger, hvad der skal ske, og Home Assistant tænder lyset, starter en scene eller fortæller dig temperaturen udenfor.

Det skal du bruge

Kræver Home Assistant og et USB-C-kabel.

181,95 kr.Samlet, inkl. moms

Har du allerede nogle af delene? Fjern fluebenet.

Derudover skal du bruge et USB-C-kabel og en USB-oplader, du har i forvejen. Og du skal have Home Assistant kørende på dit netværk.

Sådan virker det

Inde i ATOM Echo sidder en ESP32 med WiFi. Den forstår ikke selv, hvad du siger. Den optager din stemme og sender lyden til Home Assistant. Der bliver talen lavet om til tekst, Assist finder ud af, hvad du vil, og svaret bliver lavet om til tale og sendt tilbage til højttaleren. LED’en viser, om den lytter eller arbejder.

Du vælger selv, hvilken tale-til-tekst og tekst-til-tale Home Assistant skal bruge. Det kan køre lokalt på din egen maskine eller via en cloud-tjeneste. Dansk afhænger af den talemotor, du vælger. Nogle klarer dansk, andre kun engelsk, så regn med at prøve dig lidt frem. Lokal talegenkendelse kræver også noget regnekraft af den maskine, Home Assistant kører på.

Sådan bygger du det

  1. Opdater Home Assistant. Stemmefunktionerne bliver løbende forbedret, så en ny version giver færre problemer.
  2. Find afsnittet om ATOM Echo i Home Assistants dokumentation. Der kan du installere en færdig ESPHome-firmware direkte fra browseren. Det kræver en browser, der kan tale med USB-enheder, fx Chrome eller Edge.
  3. Sæt ATOM Echo i computeren med USB-C, start installationen, og giv den adgang til dit WiFi, når du bliver spurgt.
  4. Home Assistant finder den nye enhed på netværket. Tilføj den, så den dukker op sammen med dine andre enheder.
  5. Opsæt en stemmeassistent i Home Assistant. Vælg sprog, tale-til-tekst og tekst-til-tale, og sæt ATOM Echo til at bruge den.
  6. Bestem, hvilke lamper og kontakter Assist må styre, og giv dem korte, tydelige navne. Så er de lettere at ramme med stemmen.
  7. Tryk på knappen, og sig fx “tænd lyset i køkkenet”. Forstår den dig ikke, kan du i Home Assistant se, hvilken tekst den hørte, og rette navnene til.

Højttaleren er på 0,5 W. Den er fin til korte svar, men ikke til musik.

Byg videre

  • Sæt en ATOM Echo i flere rum, så du kan styre lyset der, hvor du står.
  • Lav dine egne sætninger i en automatisering, fx “godnat”, der slukker alt lys på én gang.
  • Undersøg i Home Assistants dokumentation, om din opsætning kan bruge et vækkeord, så du slipper for at trykke på knappen.
  • Overtag konfigurationen i ESPHome, og sæt en sensor på Grove-stikket. Bemærk, at de to ben dér kun er almindelige ind- og udgange, ikke I2C.

Sidder du fast? Vi hjælper gratis med kode og opsætning. Skriv til [email protected].

Touch-kontrolpanel med M5Stack Core2

Illustration: Touch-kontrolpanel med M5Stack Core2

Core2 er en færdig lille enhed med touchskærm, batteri, højttaler og WiFi i en plastkasse. Det gør den god som kontrolpanel på skrivebordet eller ved hoveddøren, hvor du kan se temperaturer og trykke på knapper til lys og scener. Du skal hverken lodde eller bygge kabinet. Arbejdet ligger i at programmere den.

Det skal du bruge

665,95 kr.Samlet, inkl. moms

Har du allerede nogle af delene? Fjern fluebenet.

Der følger et kort USB-C-kabel med. Til et fast panel skal du bruge en USB-oplader, du har i forvejen. Skal panelet styre dit hjem, skal du have Home Assistant kørende på netværket.

Sådan virker det

Inde i Core2 sidder en ESP32 med WiFi, 16 MB flash og 8 MB PSRAM. Skærmen er på 2 tommer og 320 × 240 pixels med kapacitiv touch. De tre prikker under skærmen er en del af touch-laget og kan bruges som tre ekstra knapper. Der er også en vibrationsmotor, der kan give et lille ryk, når du trykker, et ur (RTC), der holder tiden, et microSD-stik, en bevægelsessensor og et batteri på 500 mAh. Grove-stikket på siden kan bruges til ekstra sensorer.

Du kan programmere den på tre måder. UIFlow er M5Stacks eget værktøj, hvor du bygger med blokke eller skriver MicroPython. Arduino IDE giver dig fuld kontrol i C++. ESPHome passer bedst, hvis panelet skal arbejde sammen med Home Assistant. Så kan panelet både vise værdier fra Home Assistant og sende tryk tilbage som knapper.

Sådan bygger du det

  1. Vælg værktøj. Til et Home Assistant-panel er ESPHome det mest direkte. Vil du bare lege med skærm og knapper, kommer du hurtigst i gang med UIFlow.
  2. Tegn panelet på papir først. Hvilke fire til seks ting vil du se, og hvilke tre til fire knapper bruger du hver dag? Skærmen er lille, så få og store felter virker bedst.
  3. Opret enheden i ESPHome, og flash den første gang over USB-C. Senere opdateringer kan gå over WiFi.
  4. Sæt skærm og touch op i konfigurationen. ESPHome har komponenter til begge dele. Core2 V1.1 har en anden strømstyringschip end den første Core2, og den styrer blandt andet strømmen til skærmen. Tjek derfor, at det eksempel, du bygger videre på, er lavet til V1.1.
  5. Hent værdier fra Home Assistant ind i panelet, fx temperaturen i stuen og om lyset er tændt, og vis dem på skærmen.
  6. Gør touch-felterne og de tre knapper under skærmen til knapper, der starter en handling i Home Assistant, fx en scene. Lad vibrationsmotoren give et kort ryk, så du mærker, at trykket er registreret.
  7. Sæt panelet i en holder, og giv det fast strøm fra USB. Batteriet er fint, når du bærer panelet rundt, men det er ikke stort nok til mange timer med skærmen tændt.

Byg videre

  • Dæmp skærmen om natten, og tænd den igen ved berøring.
  • Brug bevægelsessensoren til at vække skærmen, når nogen løfter panelet.
  • Sæt en temperatur- og fugtsensor i Grove-stikket, så panelet selv måler i rummet.
  • Brug højttaleren og uret til en påmindelse, fx at det er tid til at lufte ud.

Sidder du fast? Vi hjælper gratis med kode og opsætning. Skriv til [email protected].

Byg et fjernstyret køretøj med Bambu Lab CyberBrick

Illustration: Byg et fjernstyret køretøj med Bambu Lab CyberBrick

CyberBrick er Bambu Labs system til fjernstyret legetøj, hvor du selv printer karosseriet. Starter-sættet er elektronikken: styreenheder, motorer, servo, lys, batteri og dele til fjernbetjeningen. Du printer resten, og så har du en bil, en lastbil eller noget helt tredje, du selv har valgt. Det er et godt projekt at lave sammen med børn.

Det skal du bruge

Kræver adgang til en 3D-printer.

666,95 kr.Samlet, inkl. moms

Har du allerede nogle af delene? Fjern fluebenet.

Sættet er kun elektronik og mekanik. Karosseri, chassis og fjernbetjeningens hus printer du selv, så du skal have adgang til en 3D-printer og noget filament. Vil du bruge batteriboksen, skal du selv have AAA-batterier.

Sådan virker det

I sættet er der to ens multi-controllere. Den ene sættes i modtagerens baseplade og sidder i køretøjet, hvor den styrer motorer, servo og lys. Den anden sættes i senderens baseplade og bliver til fjernbetjeningen sammen med joysticks og tastaturpladen. De to taler sammen trådløst.

To DC-motorer med gearkasser, et differentiale og fire gummihjul giver fremdrift, og den lille 9 g-servo kan bruges til styringen. LED-pladerne med WS2812-lysdioder kan blive forlygter, baglygter eller blinklys. Modulerne forbindes med små stik og kabler, så du skal ikke lodde. Køretøjet kører på et genopladeligt lithiumbatteri, og der følger en lader med. Modulerne kan også programmeres, hvis du vil mere end at køre.

Sådan bygger du det

  1. Find en CyberBrick-model på MakerWorld, Bambu Labs side med 3D-modeller. Der ligger gratis modeller af køretøjer og fjernbetjeninger, som er lavet til sættet.
  2. Læs modellens vejledning, før du printer. Den viser, hvilke dele fra sættet modellen bruger, og hvor de skal sidde.
  3. Print delene. Start med køretøjet, så du kan samle det, mens fjernbetjeningen printer.
  4. Oplad lithiumbatteriet med den medfølgende lader i mellemtiden. Lad det ikke lade uden opsyn, og lad en voksen stå for batteri og opladning, hvis børn er med.
  5. Saml motorer, gearkasser, differentiale og hjul i chassiset, og monter servoen. Sættet har skruer, afstandsstykker og magneter til monteringen. Vejledningen viser, hvad der skal hvorhen.
  6. Forbind modtagerens controller med motorer, servo og LED-plader med de medfølgende kabler. Byg fjernbetjeningen op med den anden controller, joysticks og tastaturpladen.
  7. Tænd begge dele, og prøv køretøjet på gulvet, før du lukker karosseriet. Så er det let at rette, hvis en motor kører den forkerte vej.

Byg videre

  • Print et nyt karosseri, og flyt den samme elektronik over. Én bil kan blive til en traktor i næste uge.
  • Programmér modulerne, så lyset blinker, når du drejer, eller køretøjet kører en fast rute selv.
  • Brug det ekstra joystick til en funktion mere, fx et lad eller en kran, hvis modellen har plads til en ekstra servo.
  • Tegn din egen model fra bunden, og del den med andre på MakerWorld.

Sidder du fast? Vi hjælper gratis med kode og opsætning. Skriv til [email protected].

Styr 8 relæer over netværket med Modbus TCP

Illustration: Styr 8 relæer over netværket med Modbus TCP

Skal du tænde en pumpe, en port eller en testopstilling fra en PLC eller en server, er et netværksrelæ den nemme vej. Dette modul har otte relæer i en kasse til DIN-skinne og styres over almindeligt Ethernet med Modbus TCP. Det passer til værksteder, prototyper og små automatiseringer i virksomheder.

Det skal du bruge

Kræver PoE eller en 7-36 V strømforsyning. 230 V skal tilsluttes af en autoriseret elinstallatør.

483,95 kr.Samlet, inkl. moms

Har du allerede nogle af delene? Fjern fluebenet.

Strømforsyning følger ikke med. Du skal enten bruge en PoE-switch eller PoE-injektor (IEEE 802.3af) eller en DC-forsyning på 7-36 V, fx 12 V, via DC-stikket eller skrueklemmerne. Derudover et netværkskabel.

Sådan virker det

Modbus er en gammel, enkel og meget udbredt industriprotokol. Modbus TCP er den samme protokol over et almindeligt netværk. Hvert relæ har sin egen adresse, og du tænder eller slukker det ved at skrive til den adresse. Næsten alle PLC’er, SCADA-systemer og mange hjemmeautomatiseringssystemer kan tale Modbus. Modulet kan også køre Modbus RTU over netværket og kan styres med MQTT.

Styringen er opto-isoleret fra relæerne, og kontakterne kan klare op til 10 A ved 250 V AC eller 30 V DC. Der er beskyttelse mod forkert polaritet på forsyningen. Modulet har desuden en flash-kommando: du beder et relæ om at være tændt i et bestemt tidsrum, og så slukker det selv. Det er praktisk til fx en portåbner, fordi relæet ikke bliver hængende, hvis forbindelsen falder ud.

Sådan bygger du det

  1. Sæt modulet på DIN-skinnen, og giv det strøm via PoE eller DC. LED’erne viser, om netværket og processoren kører.
  2. Find modulets IP-adresse. Det kan hente en adresse via DHCP, så du kan se det i routerens liste over enheder. Giv det bagefter en fast adresse, så dine programmer altid kan finde det.
  3. Åbn konfigurationen fra en webbrowser eller Waveshares konfigurationsprogram, som modulets wiki beskriver. Vælg Modbus TCP, og notér porten. Standardporten for Modbus TCP er 502, men tjek modulets indstilling.
  4. Test fra en computer, fx med Python og biblioteket pymodbus. Relæer styres i Modbus typisk som såkaldte coils. De præcise adresser og kommandoen til flash-funktionen står i Waveshares dokumentation.
  5. Kobl modulet på dit system: en PLC, Node-RED med en Modbus-node eller Home Assistants Modbus-integration.
  6. Tilslut lasten. Lavvolt, fx 24 V til en ventil eller en signallampe, kan du selv koble. Alt med 230 V skal i Danmark tilsluttes af en autoriseret elinstallatør. Det gælder også i værkstedet.

Byg videre

  • Brug flash-funktionen til en portåbner eller dørlås, der altid slipper igen af sig selv.
  • Lav tidsplaner i Node-RED, så pumper eller ventilation kører på faste tidspunkter.
  • Byg en testrig, hvor et Python-script tænder og slukker prøveemner i cyklusser og logger resultatet.
  • Skift til MQTT, hvis du allerede har en MQTT-broker kørende og hellere vil sende beskeder end at spørge modulet hele tiden.

Sidder du fast? Vi hjælper gratis med kode og opsætning. Skriv til [email protected].

Lydreaktiv LED-bar med mikrofon og NeoPixels

Illustration: Lydreaktiv LED-bar med mikrofon og NeoPixels

Her bygger du et lille VU-meter: jo højere lyd, jo flere lysdioder tænder, fra grøn over gul til rød. Baren reagerer på musik, klap og stemmer og kan stå ved højttaleren, i øvelokalet eller på skrivebordet. Det er også en god måde at lære, hvordan man måler et analogt signal.

Det skal du bruge

Kræver lidt lodning.

283,80 kr.Samlet, inkl. moms

Har du allerede nogle af delene? Fjern fluebenet.

Du skal også bruge en loddekolbe, loddetin, en lille tang til at afisolere og et USB-C-kabel, du har i forvejen.

Sådan virker det

MAX9814-modulet er en mikrofon med indbygget forstærker. Den har automatisk forstærkning (AGC), så den kan klare både stille tale og høj musik. Udgangen er en spænding, der svinger op og ned omkring et hvilepunkt i takt med lyden. QT Py’en måler den på en analog indgang mange gange i træk.

Lydstyrken finder du ved at gemme den laveste og den højeste måling over et kort vindue, her 50 ms. Forskellen, peak-to-peak, er stor ved høj lyd og lille ved stilhed. Koden omsætter forskellen til 0-8 lysdioder på NeoPixel-stick’en, som kun skal bruge ét datasignal. Fordi AGC’en skruer ned for kraftig lyd, måler baren ikke præcis lydstyrke, men den viser rytme og dynamik fint.

Sådan bygger du det

  1. Lod de løse stifter på QT Py’en. Så kan du sætte hunenderne af jumperledningerne direkte på.
  2. Mikrofonmodulet leveres med en løs stiftliste, men her er det nemmest at lodde ledninger direkte i hullerne. Klip hanenden af tre jumperledninger, afisolér, og lod dem på VDD (eller VCC), GND og OUT. Lad de andre ben være fri, så kører modulet med standardindstillingerne.
  3. Gør det samme med tre ledninger på NeoPixel-stick’ens indgangsende: 5V, GND og DIN. Brug ikke enden mærket DOUT.
  4. Forbind til QT Py’en: mikrofonens VDD til 3V og OUT til A0, stick’ens 5V til 5V og DIN til A3. QT Py’en har kun ét GND-ben, så lod de to stelledninger sammen til én, før den sættes på GND.
  5. I Arduino IDE tilføjer du RP2040-understøttelse via Boards Manager (Earle Philhowers kerne) og vælger Adafruit QT Py RP2040. Installér Adafruit NeoPixel via Library Manager. Dukker kortet ikke op første gang, så hold BOOT-knappen inde, mens du sætter kablet i.
  6. Upload koden, og åbn Serial Monitor. Se, hvilke tal du får ved stilhed og ved høj musik, og ret 20 og 600 i koden til dit rum.

Hold lysstyrken lav, når baren kører fra USB. Otte LED’er på fuld hvid trækker mere strøm, end en computerport bør levere. Foretrækker du Python, kan det samme laves i CircuitPython.

Koden

#include <Adafruit_NeoPixel.h>

const int MIC_PIN = A0;   // MAX9814 OUT
const int LED_PIN = A3;   // NeoPixel-stick'ens DIN
const int NUM_LEDS = 8;

Adafruit_NeoPixel stick(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  Serial.begin(115200);
  stick.begin();
  stick.setBrightness(40);  // hold lysstyrken nede på USB
}

void loop() {
  // Find laveste og højeste måling over 50 ms
  unsigned long start = millis();
  int lo = 1023, hi = 0;
  while (millis() - start < 50) {
    int v = analogRead(MIC_PIN);
    if (v < lo) lo = v;
    if (v > hi) hi = v;
  }
  int amp = hi - lo;  // peak-to-peak: stor ved høj lyd
  Serial.println(amp);  // brug tallet til at justere 20 og 600

  int level = map(constrain(amp, 20, 600), 20, 600, 0, NUM_LEDS);

  for (int i = 0; i < NUM_LEDS; i++) {
    uint32_t farve = 0;  // slukket
    if (i < level) {
      if (i < 4) farve = stick.Color(0, 255, 0);         // grøn
      else if (i < 6) farve = stick.Color(255, 160, 0); // gul
      else farve = stick.Color(255, 0, 0);               // rød
    }
    stick.setPixelColor(i, farve);
  }
  stick.show();
}

Byg videre

  • Lad baren vokse fra midten og ud til begge sider.
  • Lad den øverste lysdiode blive hængende et øjeblik, som på et rigtigt VU-meter.
  • Kæd flere stick’s sammen fra DOUT til DIN for en længere bar, og giv dem en separat 5 V-forsyning.
  • Forbind mikrofonens Gain-ben efter databladet, hvis baren er for følsom eller for doven.

Sidder du fast? Vi hjælper gratis med kode og opsætning. Skriv til [email protected].

Pages:«12