Johans AVR-styrda fördröjning av nätspänningstillslag
- jadler
- EF Sponsor
- Inlägg: 407
- Blev medlem: 28 maj 2009, 12:03:43
- Ort: Vidja, Huddinge, Stockholm
- Kontakt:
Johans AVR-styrda fördröjning av nätspänningstillslag
Äntligen känns det som att jag kan skriva om mitt första projekt sedan jag började här. Egentligen är projektet nästan klart nu, frånsett lite finjustering, åtminstone vad gäller första prototypen.
Problem: Min granne Anders har en koppling som gör att han kan slå på motorvärmaruttaget från bostadshuset. Han arbetar framförallt nätter och väljer att själv manuellt koppla på strömmen dit. Han frågade mig förra vintern om jag kände till någon dosa som fungerade som en automatisk timer, men tvärtom. Han vill att själva motorvärmaren skall gå i ett par timmar innan kupévärmaren slås på. Motorvärmaren har lägre effekt och behöver längre tid för att motorn skall få en bra arbetstemperatur, kupévärmaren har betydligt högre effekt och i längden är det en onödig kostnad om den står på lika lång tid som motorvärmaren behöver vara på. Hans önskemål var två timmar fördröjning, en timme på, sedan av.
Lösning: Jag gissar att många som kan mer om elektronik skulle kunna lösa detta med kanske en 555 och lite annat, men med min bakgrund började jag tänka i andra banor -- relä som jag kan styra med någon liten krets, kanske. Lite senare blev det så att jag började pyssla med Arduino, och där kom möjligheten att skriva ett program som kan styra ett relä precis som jag vill. Det dröjde inte länge innan jag upptäckte att det i princip är lika enkelt (för mig som är van att programmera) att använda en AVR utan Arduino-omgivningen i form av IDE och viss specifik hårdvara.
Jag tänkte mig att det skulle bli något litet, så jag började med en ATtiny 45 (8-pinnars AVR), men det kändes lite dumt att ha ett stort nätaggregat för att strömförsörja en liten AVR och ett relä, därav mina tankar i denna tråd här, där det också finns bilder på en halvfärdig variant av projektet.
Atmels datablad gav mig idéen att passa på att läsa av temperatur med kretsens inbyggda temperatursensor, vilket jag gjorde och beskrev på Arduinoforumet. Denna funktion finns i tiny 45 också, det var det som fick mig att börja labba med det. Jag labbade på Arduino för att enkelt kunna visa mätvärden på en LCD utan att leta upp eller skriva UART-rutiner, och fick det att fungera helt OK. Tyvärr är noggrannheten inte den bästa, och jag har under arbetets gång haft problem med varma komponenter, något som skulle störa avläsningar som sker direkt i AVR-kretsen. Efter lite funderingar i en annan tråd här kopplade jag så in en yttre temperatursensor.
Mitt första µC-försök till detta projekt var baserat på ATtiny 45 på ett litet experimentkort, med spänningsregulator, ISP-kontakt, TIP-120-transistor för att driva reläet,, och ett par LED för att visa relästatus och allmän funktion. När jag kopplade in denna krets till min utvalda väggvårta på 12V blev själva AVR-kretsen stekhet och reläspänningen låg under 5 volt istället för tänkta 12 volt. Min gissning nu i efterhand är att jag kopplade transistorn fel, som emitterföljare, men jag har inte undersökt det så noga.
Nästa försök byggde jag på breadboard först, för att se att det kunde fungera, och nu använde jag en Arduino Pro Mini (5V, 16 MHz, ATmega 328). Det verkade fungera bra på breadboard, så jag byggde en mer permanent variant. Jag gjorde en slags sockel för den på experimentkort, satte transistor, diod och motstånd där också, spänningsregleringen finns inbyggd på Arduinon. När allt var kopplat och klart visade det sig att spänningsregleringen på denna variant blev alldeles för varm, även om tanken var att kretsen skall användas i vinterklimat utomhus.
OK, den minimala spänningsregulatorn på mini:n blir för varm, då bygger jag en alternativ Arduino med kort från Modern Device, deras minsta -- RBBB. Jag satte dit en fullstor 7805, skippade power-LED och reset-knapp, satte UART-stiften i en bättre vinkel och lödde bara på stiftpinnar på de ställen jag behövde dem. Strömkontakten blev en mycket mindre variant också. Fortfarande blev spänningsregulatorn onödigt varm, så det blev en hembyggd kylfläns också.
Kylfläns och resten av bygget får jag beskriva senare, kanske med några av alla bilder jag tog, och definitivt med mina tankar och idéer om utveckling av projektet.
Problem: Min granne Anders har en koppling som gör att han kan slå på motorvärmaruttaget från bostadshuset. Han arbetar framförallt nätter och väljer att själv manuellt koppla på strömmen dit. Han frågade mig förra vintern om jag kände till någon dosa som fungerade som en automatisk timer, men tvärtom. Han vill att själva motorvärmaren skall gå i ett par timmar innan kupévärmaren slås på. Motorvärmaren har lägre effekt och behöver längre tid för att motorn skall få en bra arbetstemperatur, kupévärmaren har betydligt högre effekt och i längden är det en onödig kostnad om den står på lika lång tid som motorvärmaren behöver vara på. Hans önskemål var två timmar fördröjning, en timme på, sedan av.
Lösning: Jag gissar att många som kan mer om elektronik skulle kunna lösa detta med kanske en 555 och lite annat, men med min bakgrund började jag tänka i andra banor -- relä som jag kan styra med någon liten krets, kanske. Lite senare blev det så att jag började pyssla med Arduino, och där kom möjligheten att skriva ett program som kan styra ett relä precis som jag vill. Det dröjde inte länge innan jag upptäckte att det i princip är lika enkelt (för mig som är van att programmera) att använda en AVR utan Arduino-omgivningen i form av IDE och viss specifik hårdvara.
Jag tänkte mig att det skulle bli något litet, så jag började med en ATtiny 45 (8-pinnars AVR), men det kändes lite dumt att ha ett stort nätaggregat för att strömförsörja en liten AVR och ett relä, därav mina tankar i denna tråd här, där det också finns bilder på en halvfärdig variant av projektet.
Atmels datablad gav mig idéen att passa på att läsa av temperatur med kretsens inbyggda temperatursensor, vilket jag gjorde och beskrev på Arduinoforumet. Denna funktion finns i tiny 45 också, det var det som fick mig att börja labba med det. Jag labbade på Arduino för att enkelt kunna visa mätvärden på en LCD utan att leta upp eller skriva UART-rutiner, och fick det att fungera helt OK. Tyvärr är noggrannheten inte den bästa, och jag har under arbetets gång haft problem med varma komponenter, något som skulle störa avläsningar som sker direkt i AVR-kretsen. Efter lite funderingar i en annan tråd här kopplade jag så in en yttre temperatursensor.
Mitt första µC-försök till detta projekt var baserat på ATtiny 45 på ett litet experimentkort, med spänningsregulator, ISP-kontakt, TIP-120-transistor för att driva reläet,, och ett par LED för att visa relästatus och allmän funktion. När jag kopplade in denna krets till min utvalda väggvårta på 12V blev själva AVR-kretsen stekhet och reläspänningen låg under 5 volt istället för tänkta 12 volt. Min gissning nu i efterhand är att jag kopplade transistorn fel, som emitterföljare, men jag har inte undersökt det så noga.
Nästa försök byggde jag på breadboard först, för att se att det kunde fungera, och nu använde jag en Arduino Pro Mini (5V, 16 MHz, ATmega 328). Det verkade fungera bra på breadboard, så jag byggde en mer permanent variant. Jag gjorde en slags sockel för den på experimentkort, satte transistor, diod och motstånd där också, spänningsregleringen finns inbyggd på Arduinon. När allt var kopplat och klart visade det sig att spänningsregleringen på denna variant blev alldeles för varm, även om tanken var att kretsen skall användas i vinterklimat utomhus.
OK, den minimala spänningsregulatorn på mini:n blir för varm, då bygger jag en alternativ Arduino med kort från Modern Device, deras minsta -- RBBB. Jag satte dit en fullstor 7805, skippade power-LED och reset-knapp, satte UART-stiften i en bättre vinkel och lödde bara på stiftpinnar på de ställen jag behövde dem. Strömkontakten blev en mycket mindre variant också. Fortfarande blev spänningsregulatorn onödigt varm, så det blev en hembyggd kylfläns också.
Kylfläns och resten av bygget får jag beskriva senare, kanske med några av alla bilder jag tog, och definitivt med mina tankar och idéer om utveckling av projektet.
-
- Inlägg: 7101
- Blev medlem: 31 augusti 2006, 16:42:43
- Ort: Jamtland
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
En bra ide för att minska strömförbrukning, men ändå behålla komfort.
Ser fram mot bilder och schema.
Tycker att kretsen ska ta så lite ström, att det inte ska vara något problem med värmen. Åtminstone när inte reläerna är på, när reläerna är på blir det lite mera men med strömsnåla reläer ska det inte bli så mycket heller. Det finns säkert en del att optimera när det gäller strömförbrukningen. Tip 120 är onödigt stor i detta fall, men har ju inte direkt med strömförbrukningen att göra.
Ser fram mot bilder och schema.
Tycker att kretsen ska ta så lite ström, att det inte ska vara något problem med värmen. Åtminstone när inte reläerna är på, när reläerna är på blir det lite mera men med strömsnåla reläer ska det inte bli så mycket heller. Det finns säkert en del att optimera när det gäller strömförbrukningen. Tip 120 är onödigt stor i detta fall, men har ju inte direkt med strömförbrukningen att göra.
- jadler
- EF Sponsor
- Inlägg: 407
- Blev medlem: 28 maj 2009, 12:03:43
- Ort: Vidja, Huddinge, Stockholm
- Kontakt:
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Några korta kommentarer:
Så nu har jag en µC som kommer att befinna sig i en bil, kontrollera uppvärmningen i kupén, och den kommer att ha strömförsörjning när motorvärmaren är på. Vad kan man göra för bra med det, förutom just att styra ett relä?
Idé: Kupévärmaren är till för att värma kupén, dels så att det känns behagligt att sätta sig i bilen, men kanske viktigare för att värma upp luften inne i bilen så att isen på rutorna antingen försvinner helt eller åtminstone blir lättare att avlägsna. Vilken temperatur vid bilanvändarens första accesstillfälle är optimal? OK, se till att kunna mäta temperaturen.
Problem: Bilen står hemma hos grannen, och jag har ingen aning om när han kommer att använda den.
Lösning: Teoretiskt sett kanske jag kunde logga informationen, spara den på ett minne av något slag, skruva isär burken och läsa av minnet ett par gånger i månaden eller så. Å andra sidan har jag en bunt Xbee-moduler liggande hemma, så varför inte langa in en sådan i burken och logga relevant information på en dator hemma hos mig. Eftersom burken jag bygger bara har ström när den är kopplad till motorvärmaruttaget så vet jag var bilen är, och den borde vara inom räckvidden för Xbee. Alltså låter jag mitt program hålla koll på tiden (räkna millisekunder sedan strömmen slogs på), temperaturen och vilket läge reläet skall vara i för tillfället. Programmet som det ser ut idag rapporterar denna information var 30:e sekund så länge det finns strömförsörjning. Behöver jag korrekt tid kan jag logga det i datorn hemma istället för att lägga till en RTC i burken.
Bonus: Vad kan man göra med denna information? Dels vet jag vilken temperatur det var när motorvärmaren slogs på, när kupévärmaren slogs på, medan den var på, och när den slogs av. Förutom att det kan bli en snygg kurva kan jag ta reda på några intressanta saker. Hur lång tid tar det att uppnå optimal temperatur utifrån en given utgångstemperatur? Hur många grader kan befintlig kupévärmare öka temperaturen på en viss tidsperiod? Utifrån detta kan jag räkna ut hur lång tid kupévärmaren behöver vara på vid en viss yttertemperatur (jag antar i detta fall att temperaturen i kupén när strömmen slås på är likvärdig med yttertemperaturen, och hur som helst är det egentligen kupétemperaturen som är intressant). Förutsatt att motorvärmaren får ström en bestämd tid innan bilen skall användas kan jag alltså programmera min modul till att slå på kupévärmaren precis lagom långt innan bilen skall skall användas utifrån första temperaturvärdet. I korthet kan jag se till att kupévärmaren inte förbrukar mer ström/energi/pengar än vad som behövs, men inte så lite att resultatet inte är tillfredsställande.
Problem: Hur vet jag vad som är optimal slut-temperatur?
Lösning: Min enda idé än så länge är att be Anders att föra dagbok, kanske notera ett värde från 1 till 5 som visar om han tycker att uppvärmningen har varit för dålig, lagom eller för mycket. Får han en smart låda anpassad till hand bil, kupévärmare och personliga smak kanske han är villig att ta sig det besväret.
Utifrån mitt enda praktiska test än så länge (natten till idag, i min egen bil) ser det ut som att jag får en ganska stabil baslinje innan reläet slås på, sedan vad som kan tänkas vara en hyfsat linjär korrelation mellan uppvärmningstid och uppmätt temperatur (långt från värmefläktens utblås). Om detta visar sig stämma borde det bli lätt att utifrån "grader per minut" och måltemperatur räkna ut precis när värmaren skall få ström.
Mer imorgon, men här är en bild på den färdiga burken:

Sladden är rester av en lång jordad sladd för utebruk som jag råkade kapa med häcksaxen. Burken kommer antagligen att bo under passagerarsätet, sladdarna är på tok för långa men jag utgick från den längsta oklippta delen av originalkabeln, den kan kapas till vettigare längd längre fram om så krävs.
Väggvårtan köpte jag på Teknikmagasinet för en tia, egentligen för en gammal iPod-modell, men med kapad sladd och pålödd annan kontakt fungerar det bra i min burk.
Själva burken, den stora yttre grå, köpte jag på CO, IP65.
Reläkortet som hamnade i den slutgiltiga prototypen kommer egentligen från Seeedstudio, men jag köpte det genom en annan handlare på eBay. Matas med 5V, hanterar 230V, AC 10A.
Så nu har jag en µC som kommer att befinna sig i en bil, kontrollera uppvärmningen i kupén, och den kommer att ha strömförsörjning när motorvärmaren är på. Vad kan man göra för bra med det, förutom just att styra ett relä?
Idé: Kupévärmaren är till för att värma kupén, dels så att det känns behagligt att sätta sig i bilen, men kanske viktigare för att värma upp luften inne i bilen så att isen på rutorna antingen försvinner helt eller åtminstone blir lättare att avlägsna. Vilken temperatur vid bilanvändarens första accesstillfälle är optimal? OK, se till att kunna mäta temperaturen.
Problem: Bilen står hemma hos grannen, och jag har ingen aning om när han kommer att använda den.
Lösning: Teoretiskt sett kanske jag kunde logga informationen, spara den på ett minne av något slag, skruva isär burken och läsa av minnet ett par gånger i månaden eller så. Å andra sidan har jag en bunt Xbee-moduler liggande hemma, så varför inte langa in en sådan i burken och logga relevant information på en dator hemma hos mig. Eftersom burken jag bygger bara har ström när den är kopplad till motorvärmaruttaget så vet jag var bilen är, och den borde vara inom räckvidden för Xbee. Alltså låter jag mitt program hålla koll på tiden (räkna millisekunder sedan strömmen slogs på), temperaturen och vilket läge reläet skall vara i för tillfället. Programmet som det ser ut idag rapporterar denna information var 30:e sekund så länge det finns strömförsörjning. Behöver jag korrekt tid kan jag logga det i datorn hemma istället för att lägga till en RTC i burken.
Bonus: Vad kan man göra med denna information? Dels vet jag vilken temperatur det var när motorvärmaren slogs på, när kupévärmaren slogs på, medan den var på, och när den slogs av. Förutom att det kan bli en snygg kurva kan jag ta reda på några intressanta saker. Hur lång tid tar det att uppnå optimal temperatur utifrån en given utgångstemperatur? Hur många grader kan befintlig kupévärmare öka temperaturen på en viss tidsperiod? Utifrån detta kan jag räkna ut hur lång tid kupévärmaren behöver vara på vid en viss yttertemperatur (jag antar i detta fall att temperaturen i kupén när strömmen slås på är likvärdig med yttertemperaturen, och hur som helst är det egentligen kupétemperaturen som är intressant). Förutsatt att motorvärmaren får ström en bestämd tid innan bilen skall användas kan jag alltså programmera min modul till att slå på kupévärmaren precis lagom långt innan bilen skall skall användas utifrån första temperaturvärdet. I korthet kan jag se till att kupévärmaren inte förbrukar mer ström/energi/pengar än vad som behövs, men inte så lite att resultatet inte är tillfredsställande.
Problem: Hur vet jag vad som är optimal slut-temperatur?
Lösning: Min enda idé än så länge är att be Anders att föra dagbok, kanske notera ett värde från 1 till 5 som visar om han tycker att uppvärmningen har varit för dålig, lagom eller för mycket. Får han en smart låda anpassad till hand bil, kupévärmare och personliga smak kanske han är villig att ta sig det besväret.
Utifrån mitt enda praktiska test än så länge (natten till idag, i min egen bil) ser det ut som att jag får en ganska stabil baslinje innan reläet slås på, sedan vad som kan tänkas vara en hyfsat linjär korrelation mellan uppvärmningstid och uppmätt temperatur (långt från värmefläktens utblås). Om detta visar sig stämma borde det bli lätt att utifrån "grader per minut" och måltemperatur räkna ut precis när värmaren skall få ström.
Mer imorgon, men här är en bild på den färdiga burken:

Sladden är rester av en lång jordad sladd för utebruk som jag råkade kapa med häcksaxen. Burken kommer antagligen att bo under passagerarsätet, sladdarna är på tok för långa men jag utgick från den längsta oklippta delen av originalkabeln, den kan kapas till vettigare längd längre fram om så krävs.
Väggvårtan köpte jag på Teknikmagasinet för en tia, egentligen för en gammal iPod-modell, men med kapad sladd och pålödd annan kontakt fungerar det bra i min burk.
Själva burken, den stora yttre grå, köpte jag på CO, IP65.
Reläkortet som hamnade i den slutgiltiga prototypen kommer egentligen från Seeedstudio, men jag köpte det genom en annan handlare på eBay. Matas med 5V, hanterar 230V, AC 10A.
- jonnorberg
- Inlägg: 850
- Blev medlem: 19 mars 2008, 17:45:40
- Ort: Årsta
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Jag har inte läst hela tråden.
En lösning för att se om bilen är "färdig" kan ju vara när temperaturen inte ökar mer. Alltså temperaturen är stabil.
En lösning för att se om bilen är "färdig" kan ju vara när temperaturen inte ökar mer. Alltså temperaturen är stabil.
- jadler
- EF Sponsor
- Inlägg: 407
- Blev medlem: 28 maj 2009, 12:03:43
- Ort: Vidja, Huddinge, Stockholm
- Kontakt:
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
jonnorberg: Visst, det är en tänkbar lösning, men jag tror personligen inte att man kan lita på att den är optimal. Jag skulle vilja testa och utvärdera en sådan lösning innan jag bestämmer mig för den. Tänk om man har en effektiv kupévärmare i en liten välisolerad bil, och yttertemperaturen ligger kring 0 grader, då kanske kupétemperaturen stabiliseras kring femton plusgrader vilket är onödigt varmt.
Mindmapper: Jag läste att man kunde behöva något större än en vanlig TO92 BC337 till större reläer, och just TIP120 föreslogs som alternativ. Nu har jag gått över till ett mindre reläkort som jag köpte färdigmonterat, så värmen kommer inte därifrån.
Min tanke nu är att det nog beror på att jag har nätagg på 12V och en krets som använder 5V, så spänningsregulatorn måste skapa en del värme på vägen. Kanske är det tokbilliga nätaggregatet dåligt stabiliserat och släpper ur sig ännu högre spänning vid den låga belastning som mina krets borde utgöra, jag har inte kollat. (Tänker jag rätt, kan det fungera så?) Att jag alls har 12V beror på att jag först hade tänkt använda det relä jag hade fått tag på, som krävde 12V-matning, och hittar jag en smidig liten väggvårta på omkring 7V skulle jag gärna byta.
Min 7805 sitter nu fast monterad mot min specialgjorda kylfläns, en tillsågad bit av en spikplatta. 2 mm tjock förzinkad plåt, ytan jämnade jag till med slippapper och stålull för att få bra värmeöverföring från 7805:an (TO220-format). Vare sig kretsen eller plåten blir märkbart varma.
Mindmapper: Jag läste att man kunde behöva något större än en vanlig TO92 BC337 till större reläer, och just TIP120 föreslogs som alternativ. Nu har jag gått över till ett mindre reläkort som jag köpte färdigmonterat, så värmen kommer inte därifrån.
Min tanke nu är att det nog beror på att jag har nätagg på 12V och en krets som använder 5V, så spänningsregulatorn måste skapa en del värme på vägen. Kanske är det tokbilliga nätaggregatet dåligt stabiliserat och släpper ur sig ännu högre spänning vid den låga belastning som mina krets borde utgöra, jag har inte kollat. (Tänker jag rätt, kan det fungera så?) Att jag alls har 12V beror på att jag först hade tänkt använda det relä jag hade fått tag på, som krävde 12V-matning, och hittar jag en smidig liten väggvårta på omkring 7V skulle jag gärna byta.
Min 7805 sitter nu fast monterad mot min specialgjorda kylfläns, en tillsågad bit av en spikplatta. 2 mm tjock förzinkad plåt, ytan jämnade jag till med slippapper och stålull för att få bra värmeöverföring från 7805:an (TO220-format). Vare sig kretsen eller plåten blir märkbart varma.
-
- Inlägg: 7101
- Blev medlem: 31 augusti 2006, 16:42:43
- Ort: Jamtland
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
De 7V du har över regulatorn ger värme beroende på den ström som kretsen drar. Låt säga om den drar 10mA blir effektutvecklingen 70mW. Vilket inte borde ge någon nämnvärd värme. Men värme är relativt. Den värme som kretsen klarar sig utmärkt vid, upplever vi som het. T.ex 60 grader är inte något problem för kretsen, men människokroppen upplever det annorlunda.
En spänningsregulator som inte avkopplas riktigt kan självsvänga och ge ut HF. Isåfall är det troligt att både regulatorn och MCU blir varm. Ett oscilloskop konfirmerar snabbt om det är detta som är problemet. Oavsett om man har tillgång till ett sådant eller inte, så ska man alltid följa tillverkarens anvisning om avkoppling.
BC337 är en utmärkt transistor att driva reläer. Få reläer drar mer än ett par 100mA. Absolut max för BC337 är 800mA. Men det är absolut max och så mycket kör ingen som har erfarenhet av att dimensionera transistorsteg. Med 1mA till basen så driver du 100mA på kollektorn. Låt det bli 5mA så driver du de flesta reläer. Bättre för mycket drivning på basen än för lite!
En spänningsregulator som inte avkopplas riktigt kan självsvänga och ge ut HF. Isåfall är det troligt att både regulatorn och MCU blir varm. Ett oscilloskop konfirmerar snabbt om det är detta som är problemet. Oavsett om man har tillgång till ett sådant eller inte, så ska man alltid följa tillverkarens anvisning om avkoppling.
BC337 är en utmärkt transistor att driva reläer. Få reläer drar mer än ett par 100mA. Absolut max för BC337 är 800mA. Men det är absolut max och så mycket kör ingen som har erfarenhet av att dimensionera transistorsteg. Med 1mA till basen så driver du 100mA på kollektorn. Låt det bli 5mA så driver du de flesta reläer. Bättre för mycket drivning på basen än för lite!
- jadler
- EF Sponsor
- Inlägg: 407
- Blev medlem: 28 maj 2009, 12:03:43
- Ort: Vidja, Huddinge, Stockholm
- Kontakt:
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Lite bilder blir det idag.
Första försöket till styrkrets, ATtiny45, 7805 som TO92, med mera. Ser jag rätt på tredje bilden har TIP120 12V direkt till kollektorn, tiny45:ans utgång via motstånd till basen, och emittorn till reläutgången. Reläutgången har fyra stift bara för att inte kunna blandas ihop med spänningsmatningen.



Skräddarsydd RBBB som styrkrets, ATmega328p och 7805 som TO220, med mera.

RBBB monterad på kylflänsen som sedan monterats i lådan så att den fixerar in- och utgående nätsladdar (dragskydd).

Första försöket till styrkrets, ATtiny45, 7805 som TO92, med mera. Ser jag rätt på tredje bilden har TIP120 12V direkt till kollektorn, tiny45:ans utgång via motstånd till basen, och emittorn till reläutgången. Reläutgången har fyra stift bara för att inte kunna blandas ihop med spänningsmatningen.



Skräddarsydd RBBB som styrkrets, ATmega328p och 7805 som TO220, med mera.

RBBB monterad på kylflänsen som sedan monterats i lådan så att den fixerar in- och utgående nätsladdar (dragskydd).

Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Jättekul projekt. alltid roligt när man med lite nya idéer kan göra en bättre produkt än vad presonen ville ha från början!
Lite funderingar:
en kupévärmare har ju en väldigt hög effekt - vad som händer när den slås på är att temperaturen stiger ganska snabbt. När den väl är uppe i 25 grader i luften (kan gå mycket fort) så är bilen fortfarande genomfrusen. Alltså kanske inte sluttemperaturen är det viktigaste kriteriet - utan hur länge bilen fått stå i en viss temperatur. Det kanske är effektivare (för avfrostning av rutor mm) att tempen ökar snabbt till 15-20 grader och stannar där i en viss tid (avfrostningsfasen) för att sedan sjunka till 5-10 grader (underhållstemp) tills han ska sätta sig i bilen. Hur länge avfrostningsfasen ska vara är ju starkt beroende på starttemperaturen. Började det vid -20 eller vid -2 grader?
Antingen får du slå på och av reläet med någon minuts intervall för att reglera temperaturen eller så ersätter du reläet med en optiskt isolerad tyristor med nollgenomgångsreglering, då kan du få en mjuk uppvärmning. Att slå på och av reläet ofta är ju inte bra, då det slits fort med höga strömmar.
Lite funderingar:
en kupévärmare har ju en väldigt hög effekt - vad som händer när den slås på är att temperaturen stiger ganska snabbt. När den väl är uppe i 25 grader i luften (kan gå mycket fort) så är bilen fortfarande genomfrusen. Alltså kanske inte sluttemperaturen är det viktigaste kriteriet - utan hur länge bilen fått stå i en viss temperatur. Det kanske är effektivare (för avfrostning av rutor mm) att tempen ökar snabbt till 15-20 grader och stannar där i en viss tid (avfrostningsfasen) för att sedan sjunka till 5-10 grader (underhållstemp) tills han ska sätta sig i bilen. Hur länge avfrostningsfasen ska vara är ju starkt beroende på starttemperaturen. Började det vid -20 eller vid -2 grader?
Antingen får du slå på och av reläet med någon minuts intervall för att reglera temperaturen eller så ersätter du reläet med en optiskt isolerad tyristor med nollgenomgångsreglering, då kan du få en mjuk uppvärmning. Att slå på och av reläet ofta är ju inte bra, då det slits fort med höga strömmar.
- jadler
- EF Sponsor
- Inlägg: 407
- Blev medlem: 28 maj 2009, 12:03:43
- Ort: Vidja, Huddinge, Stockholm
- Kontakt:
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Det är inte bara så att det blir bättre än vad Anders hade tänkt sig, jag börjar få bråttom att göra en version till min egen bil också. 
Jag trodde att kupévärmare hade ännu högre effekt, kanske 1½ - 2 kW, men det verkar vara vanligare (hos grannen och mig, iaf) med omkring halva detta.
Vad gäller utseendet av kurvan temperatur över tid, och hur fenomenet avfrostning av bilrutor görs bäst, så är det det som jag nu får det stora nöjet att börja utforska vetenskapligt. Jag har också funderat på om man kanske skall köra igång värmefläkten samtidigt som motorvärmaren, låta den gå till en viss temperatur och sedan försöka hålla den temperaturen så energisnålt man kan. Nu var "kundens" önskemål eller tanke i detta fall just två timmar fördröjning och en timme på, så jag börjar med att testa det. Om inte annat är det en utgångspunkt för datainsamling.
Om jag skall köra kretsen som termostat, och hålla en viss temperatur genom att slå av och på reläet, så hade jag nog funderat på intervall om 10-20 minuter, just för att spara reläet. Nuvarande burk är annars som sagt en prototyp, och även om jag aldrig själv byggt något med triac tidigare så inser jag lätt fördelarna med att kunna styra värmefläkten med 100 Hz istället för kanske 2 mHz. Det blir mer som en dimmer eller steglös effektstyrning, och då borde det bli viktigare att mjukvarumässigt bygga in en bra fördröjning och utjämning av temperaturavläsningen, och att dämpa förändringar i inställd uteffekt.
För en enklare version till min egen bil kommer jag kanske att slänga in en enkel trådlös strömbrytare, typ Nexa, Waveman, Homeeasy m.fl., i min bils kupévärmaruttag. Om min sändarmodul för 433.92 MHz inte får kontakt från vardagsrummet ens med schysst antenn sätter jag en sändare i garaget (som nu är mer verkstad och förråd, bilen står utanför). Då kan jag från dator eller µC styra tillslag på ett smidigt sätt. Lägger jag en trådlös temperaturavläsare i bilen får jag temperaturen med en minuts intervall också, till 433 MHz mottagarmodul.
Aktuell version av mjukvaran, inget avancerat.
Ändrat: Hittade en bugg i koden, en av mina senare ändringar gjorde att "execution state" inte uppdaterades. Fixat nu, tack och lov, annars skulle fläkten gå för evigt.

Jag trodde att kupévärmare hade ännu högre effekt, kanske 1½ - 2 kW, men det verkar vara vanligare (hos grannen och mig, iaf) med omkring halva detta.
Vad gäller utseendet av kurvan temperatur över tid, och hur fenomenet avfrostning av bilrutor görs bäst, så är det det som jag nu får det stora nöjet att börja utforska vetenskapligt. Jag har också funderat på om man kanske skall köra igång värmefläkten samtidigt som motorvärmaren, låta den gå till en viss temperatur och sedan försöka hålla den temperaturen så energisnålt man kan. Nu var "kundens" önskemål eller tanke i detta fall just två timmar fördröjning och en timme på, så jag börjar med att testa det. Om inte annat är det en utgångspunkt för datainsamling.
Om jag skall köra kretsen som termostat, och hålla en viss temperatur genom att slå av och på reläet, så hade jag nog funderat på intervall om 10-20 minuter, just för att spara reläet. Nuvarande burk är annars som sagt en prototyp, och även om jag aldrig själv byggt något med triac tidigare så inser jag lätt fördelarna med att kunna styra värmefläkten med 100 Hz istället för kanske 2 mHz. Det blir mer som en dimmer eller steglös effektstyrning, och då borde det bli viktigare att mjukvarumässigt bygga in en bra fördröjning och utjämning av temperaturavläsningen, och att dämpa förändringar i inställd uteffekt.
För en enklare version till min egen bil kommer jag kanske att slänga in en enkel trådlös strömbrytare, typ Nexa, Waveman, Homeeasy m.fl., i min bils kupévärmaruttag. Om min sändarmodul för 433.92 MHz inte får kontakt från vardagsrummet ens med schysst antenn sätter jag en sändare i garaget (som nu är mer verkstad och förråd, bilen står utanför). Då kan jag från dator eller µC styra tillslag på ett smidigt sätt. Lägger jag en trådlös temperaturavläsare i bilen får jag temperaturen med en minuts intervall också, till 433 MHz mottagarmodul.
Aktuell version av mjukvaran, inget avancerat.
Kod: Markera allt
/*
Kod och pin-nummer för Arduino (328 m.fl., ej Mega1280)
Fördröjt tillslag av relä, pinne A5 kopplad till relästyrning
Temperaturmätning två gånger per minut, thermistor på A4
Rapportering över Xbee på serieport av vad som händer, inkl aktuell temp
Johan Adler
*/
#define pinRelay 19
#define pinTherm 4
const unsigned long timeRelayOn = 7200000UL; // 2 hours
const unsigned long timeRelayOff = 10800000UL; // 3 hours
const unsigned long delayTemp = 30000UL; // ½ min
const float tempSlope = 0.07901199;
const float tempCross = 40.23167889;
unsigned long timeStart, timeTemp, timeNow;
byte execState = 0;
void print00(byte foo, char separator) {
if(foo < 10) Serial.print("0");
Serial.print(foo, DEC);
Serial.print(separator);
}
void reportTime() {
unsigned long timeElapsed;
byte timeHrs, timeMin, timeSec;
Serial.print("AJ-bil,");
timeElapsed = (timeNow - timeStart) / 1000;
timeSec = timeElapsed % 60;
timeElapsed /= 60;
timeMin = timeElapsed % 60;
timeHrs = timeElapsed / 60;
print00(timeHrs, ':');
print00(timeMin, ':');
print00(timeSec, ',');
}
void reportTemp() {
float tempRaw;
timeTemp = timeNow;
tempRaw = float(analogRead(pinTherm));
for (int i=2; i<64; i++) tempRaw += (float(analogRead(pinTherm)) - tempRaw) / float(i);
reportTime();
Serial.print(execState % 2, DEC);
Serial.print(",");
Serial.print(tempRaw);
Serial.print(",");
Serial.println(tempRaw * tempSlope - tempCross);
}
void setup() {
timeStart = millis();
Serial.begin(57600);
pinMode(pinRelay, OUTPUT);
digitalWrite(pinRelay, LOW);
// delay(20000); // allow Xbee link to be established
timeTemp = timeStart - delayTemp;
}
void loop() {
timeNow = millis();
if((timeNow - timeTemp) > delayTemp) reportTemp();
if (execState == 0 && (timeNow - timeStart) > timeRelayOn) {
digitalWrite(pinRelay, HIGH);
execState++:
}
else if(execState == 1 && (timeNow - timeStart) > timeRelayOff) {
digitalWrite(pinRelay, LOW);
execState++;
}
}
- jadler
- EF Sponsor
- Inlägg: 407
- Blev medlem: 28 maj 2009, 12:03:43
- Ort: Vidja, Huddinge, Stockholm
- Kontakt:
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Jag har förresten försökt meka lite med att få till trådlös programmering av Arduino över Xbee, mycket för att använda i detta projekt. Arduinons bootloader är skriven så att man kan programmera den utan ISP-hårdvara, över UART. Tyvärr visade det sig att de nyare Xbee-moduler jag har inte automatiskt kan fås att föra över ändringar i modulens GPIO-pinnar till mottagande modul, vilket den äldre versionen kunde. Arduinon använder DTR eller RTS för att åstadkomma en reset inför programmeringen, och för att enkelt vidarebefodra den signalen använder man enklast transparent I/O som Xbee serie 1 har.
Mindmapper ville se schema, jag vet inte riktigt hur meningsfullt det är eftersom det till största del är mer eller mindre färdiga moduler. Det enda handjagade i nuvarande version är ett minimalt experimentkort som låter mig använda Vcc och Gnd till både reläutgång och termistor, och som kopplar ett pulldown-motstånd till termistorn. AVR-kortet är ganska simpelt, men jag kan enkelt och gärna rita ett schema över den modifierade RBBB som jag använder här. Reläkortet har jag inget schema på, och Seeedstudio verkar inte heller ha något på produktsidan.
Mindmapper ville se schema, jag vet inte riktigt hur meningsfullt det är eftersom det till största del är mer eller mindre färdiga moduler. Det enda handjagade i nuvarande version är ett minimalt experimentkort som låter mig använda Vcc och Gnd till både reläutgång och termistor, och som kopplar ett pulldown-motstånd till termistorn. AVR-kortet är ganska simpelt, men jag kan enkelt och gärna rita ett schema över den modifierade RBBB som jag använder här. Reläkortet har jag inget schema på, och Seeedstudio verkar inte heller ha något på produktsidan.
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Borde väl gå att i applikationen sparka ner sig i bootloadern på AVRn? Så att du säger åt applikationen via Xbee att mjukvaruresetta eller exekvera i bootloadern.
-
- Inlägg: 7101
- Blev medlem: 31 augusti 2006, 16:42:43
- Ort: Jamtland
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
Det är inte så meningsfullt numera eftersom tanken bakom att se schemat var att se varför det blev varmt i spänningsregulatorn och arduino. Om du glömt något viktigt i strömförsörjningen t.ex eller gjort något fel vid dimensionering av transistorkretsen skulle det ha visat sig på schemat. Nu har du väl inte det bekymmret längre (patienten verkar botad) att diagnostisera i efterhand är inte lika givande.jadler skrev:Mindmapper ville se schema, jag vet inte riktigt hur meningsfullt det är eftersom det till största del är mer eller mindre färdiga moduler.

Re: Johans AVR-styrda fördröjning av nätspänningstillslag
nja.... då hinner väl bilen bli iskall emellan cyklerna?intervall om 10-20 minuter
- jadler
- EF Sponsor
- Inlägg: 407
- Blev medlem: 28 maj 2009, 12:03:43
- Ort: Vidja, Huddinge, Stockholm
- Kontakt:
Re: Johans AVR-styrda fördröjning av nätspänningstillslag
jesse: Vet inte hur snabbt bilen kallnar, men kurvorna jag kommer att få lär kunna visa mig.
Mitt andra försök till styrkrets, med en Arduino Pro Mini. Spänningsregulatorn blev rejält varm i detta försök, trots att det verkade gå bra när jag testade lösa delar på breadboard.
Mindmapper: Kretsen kanske klarar temperaturen, men jag är osäker när det gäller plasten i närheten, däribland isoleringen kring ledare med nätspänning. Kanske är jag för försiktig, men hellre onödigt försiktig än onödigt stekt. Det är väl inte omöjligt att jag får samma problem igen, och då återkommer jag gärna med schemata och utförligare beskrivningar.



Fler bilder på den aktuella prototypen som skall börja användas om det bara blir lite kallare ute:



eqlazer: Jo, det går att lösa, det gör det, men det är så smidigt med den omodifierade bootloadern på Arduino, som emulerar STK500 (tror jag det var) över UART. Kanske försöker jag få ordning på detta någon gång i framtiden, men just nu är det så mycket annat som lockar och tar min tid.
Ett par spännande idéer:
Jag är bra på att hitta på saker, men mindre bra på att realisera projekt. När jag har funderat kring just detta projekt har jag kommit på ett par saker som jag bedömer vore genomförbara, men som jag inte riktigt tror att jag kommer att slutföra, åtminstone inte den första trots att den inte är krånglig i sig.
Koncept nummer ett:
Givetvis vill jag ha hela kretsen i en låda med storlek och utseende ungefär som en timer eller fjärrstyrd strömbrytare, inte i en stor klumpig låda med långa sladdar. Det borde helt klart vara möjligt att göra den mer "intelligent" också, åtminstone efter en del fälttester. Min tanke på en hur en konsumentinriktad enhet skulle kunna fungera:
Vid leverans kan bör den ha rimliga defaultvärden för parametrar som den tid som kupévärmaren skall vara på respektive av, och vilken sluttemperatur som är rimlig. Den bör också ha en "superkondensator" eller kanske ett litet uppladdningsbart batteri för att kunna skriva information till EEPROM när nätspänningen har försvunnit. Kunden rekommenderas att slå på motorvärmaren t.ex. fyra timmar innan planerad avfärd.
Vid första aktivering skulle enheten kunna börja med att köra värmen 5-10 minuter för att se hur snabbt värmen stiger i den bil och med den kupévärmare den nu har fått sällskap av, och utifrån detta värde, utgångstemperatur, och gissningen på fyra timmar räkna fram en lämplig fördröjning och uppvärmningstid. När så kunden kommer till bilen och kopplar bort motorvärmarkabeln noterar enheten sluttemperatur och den tid som egentligen har förflutit från att strömmen slogs på. Har enheten en spänningskälla som räcker sådär fem minuter kan man ha två knappar på enheten, märkta + och -. Tycker kunden att det är för kallt eller för mycket is på rutorna kan han/hon trycka på plus-knappen, är det för varmt trycker han/hon på minus-knappen.
Vi kan då över tiden ta reda på ungefär hur lång tid just denna kund har strömmen på innan bilen används, och vilken temperatur (mätt vid vår enhet) som passar denna kund i denna bil. För att slippa onödiga skrivningar till EEPROM kan man välja att justera de olika värdena om ny data kommer att ge en signifikant skillnad.
Jag skulle nog börja med att tillverka 10-20 försöksenheter som förutom basfunktionerna också ges möjlighet att logga alla parametrar, lagringsutrymme som räcker minst ett halvår, och dela ut dessa enheter till vänner och bekanta, betatestare, gärna med olika bilmodeller och kanske i olika delar av landet. Efter test under en vinter har man samlat ihop tillräcklig information för att kunna skapa vettiga utgångsvärden till produktionsenheterna, och för att kunna bestämma hur de skall justera sina parametrar utifrån givna indata.
För att kunna hantera att enheten flyttas till en annan bil, eller att kunden byter kupévärmare kan man dels ha en återställningsknapp som nollställer alla insamlade data, dels låta enheten känna av drastiska förändringar i indata jämfört med förväntade värden och låta den förstå att den då skall "börja om från början".
Om någon med mer entreprenör-personlighet tror på idén och vill förverkliga den så samarbetar jag gärna och fortsätter spruta idéer vid behov.
Koncept nummer två:
Ett av mina andra projekt som jag hoppas börja beskriva snart innefattar en µC-enhet för bilen, med OBD-2-interface för att prata med bilens ECU. Jag kommer bland annat att kunna räkna ut aktuell bränsleförbrukning, och läsa av kylarvätskans temperatur. Jag tänkte också ha en GPS kopplad till enheten för att kunna koppla bränsleförbrukning och andra parametrar till geografisk position. Jag vill kunna logga alla parametrar, och ha en Xbee-modul för att föra över data till en dator hemma (Xbee-modulen får då aktiveras när GPS-positionen anger att bilen är tillräckligt nära hemmet för att ha täckning).
Om jag integrerar detta system med en styrning av tillslag av motorvärmaren (och kupévärmaren, men var för sig) kan jag ta reda på hur snabbt kylarvätskan värms av motorvärmaren, och hur mycket bränsleförbrukningen ökar beroende på kylarvätskans temperatur när jag börjar köra. Jag loggar utetemperaturen också och kan räkna ut när motorvärmaren behöver aktiveras för att uppnå en given kylarvätsketemperatur vid planerad avfärd.
Mät motorvärmarens faktiska effektförbrukning (ett eller några få mättillfällen borde väl räcka, antar jag), räkna på aktuellt el-pris vad det kostar att köra motorvärmaren. Räkna på aktuellt bensin-pris hur mycket det kostar att bränna mer bränsle i onödan från att man åker till dess att kylarvätskan är uppe i bilens normala arbetstemperatur. Utifrån dessa beräkningar kan man ganska enkelt ta reda på när det är ekonomiskt rätt att slå på motorvärmaren vid olika yttertemperaturer.
Kombinera detta (i en timer-liknande låda för utomhusbruk) med min första idé här ovan, och låt enheterna prata med varandra över lämplig radio, så har vi en storsäljare!
Mitt andra försök till styrkrets, med en Arduino Pro Mini. Spänningsregulatorn blev rejält varm i detta försök, trots att det verkade gå bra när jag testade lösa delar på breadboard.
Mindmapper: Kretsen kanske klarar temperaturen, men jag är osäker när det gäller plasten i närheten, däribland isoleringen kring ledare med nätspänning. Kanske är jag för försiktig, men hellre onödigt försiktig än onödigt stekt. Det är väl inte omöjligt att jag får samma problem igen, och då återkommer jag gärna med schemata och utförligare beskrivningar.



Fler bilder på den aktuella prototypen som skall börja användas om det bara blir lite kallare ute:



eqlazer: Jo, det går att lösa, det gör det, men det är så smidigt med den omodifierade bootloadern på Arduino, som emulerar STK500 (tror jag det var) över UART. Kanske försöker jag få ordning på detta någon gång i framtiden, men just nu är det så mycket annat som lockar och tar min tid.
Ett par spännande idéer:
Jag är bra på att hitta på saker, men mindre bra på att realisera projekt. När jag har funderat kring just detta projekt har jag kommit på ett par saker som jag bedömer vore genomförbara, men som jag inte riktigt tror att jag kommer att slutföra, åtminstone inte den första trots att den inte är krånglig i sig.
Koncept nummer ett:
Givetvis vill jag ha hela kretsen i en låda med storlek och utseende ungefär som en timer eller fjärrstyrd strömbrytare, inte i en stor klumpig låda med långa sladdar. Det borde helt klart vara möjligt att göra den mer "intelligent" också, åtminstone efter en del fälttester. Min tanke på en hur en konsumentinriktad enhet skulle kunna fungera:
Vid leverans kan bör den ha rimliga defaultvärden för parametrar som den tid som kupévärmaren skall vara på respektive av, och vilken sluttemperatur som är rimlig. Den bör också ha en "superkondensator" eller kanske ett litet uppladdningsbart batteri för att kunna skriva information till EEPROM när nätspänningen har försvunnit. Kunden rekommenderas att slå på motorvärmaren t.ex. fyra timmar innan planerad avfärd.
Vid första aktivering skulle enheten kunna börja med att köra värmen 5-10 minuter för att se hur snabbt värmen stiger i den bil och med den kupévärmare den nu har fått sällskap av, och utifrån detta värde, utgångstemperatur, och gissningen på fyra timmar räkna fram en lämplig fördröjning och uppvärmningstid. När så kunden kommer till bilen och kopplar bort motorvärmarkabeln noterar enheten sluttemperatur och den tid som egentligen har förflutit från att strömmen slogs på. Har enheten en spänningskälla som räcker sådär fem minuter kan man ha två knappar på enheten, märkta + och -. Tycker kunden att det är för kallt eller för mycket is på rutorna kan han/hon trycka på plus-knappen, är det för varmt trycker han/hon på minus-knappen.
Vi kan då över tiden ta reda på ungefär hur lång tid just denna kund har strömmen på innan bilen används, och vilken temperatur (mätt vid vår enhet) som passar denna kund i denna bil. För att slippa onödiga skrivningar till EEPROM kan man välja att justera de olika värdena om ny data kommer att ge en signifikant skillnad.
Jag skulle nog börja med att tillverka 10-20 försöksenheter som förutom basfunktionerna också ges möjlighet att logga alla parametrar, lagringsutrymme som räcker minst ett halvår, och dela ut dessa enheter till vänner och bekanta, betatestare, gärna med olika bilmodeller och kanske i olika delar av landet. Efter test under en vinter har man samlat ihop tillräcklig information för att kunna skapa vettiga utgångsvärden till produktionsenheterna, och för att kunna bestämma hur de skall justera sina parametrar utifrån givna indata.
För att kunna hantera att enheten flyttas till en annan bil, eller att kunden byter kupévärmare kan man dels ha en återställningsknapp som nollställer alla insamlade data, dels låta enheten känna av drastiska förändringar i indata jämfört med förväntade värden och låta den förstå att den då skall "börja om från början".
Om någon med mer entreprenör-personlighet tror på idén och vill förverkliga den så samarbetar jag gärna och fortsätter spruta idéer vid behov.

Koncept nummer två:
Ett av mina andra projekt som jag hoppas börja beskriva snart innefattar en µC-enhet för bilen, med OBD-2-interface för att prata med bilens ECU. Jag kommer bland annat att kunna räkna ut aktuell bränsleförbrukning, och läsa av kylarvätskans temperatur. Jag tänkte också ha en GPS kopplad till enheten för att kunna koppla bränsleförbrukning och andra parametrar till geografisk position. Jag vill kunna logga alla parametrar, och ha en Xbee-modul för att föra över data till en dator hemma (Xbee-modulen får då aktiveras när GPS-positionen anger att bilen är tillräckligt nära hemmet för att ha täckning).
Om jag integrerar detta system med en styrning av tillslag av motorvärmaren (och kupévärmaren, men var för sig) kan jag ta reda på hur snabbt kylarvätskan värms av motorvärmaren, och hur mycket bränsleförbrukningen ökar beroende på kylarvätskans temperatur när jag börjar köra. Jag loggar utetemperaturen också och kan räkna ut när motorvärmaren behöver aktiveras för att uppnå en given kylarvätsketemperatur vid planerad avfärd.
Mät motorvärmarens faktiska effektförbrukning (ett eller några få mättillfällen borde väl räcka, antar jag), räkna på aktuellt el-pris vad det kostar att köra motorvärmaren. Räkna på aktuellt bensin-pris hur mycket det kostar att bränna mer bränsle i onödan från att man åker till dess att kylarvätskan är uppe i bilens normala arbetstemperatur. Utifrån dessa beräkningar kan man ganska enkelt ta reda på när det är ekonomiskt rätt att slå på motorvärmaren vid olika yttertemperaturer.
Kombinera detta (i en timer-liknande låda för utomhusbruk) med min första idé här ovan, och låt enheterna prata med varandra över lämplig radio, så har vi en storsäljare!
