Inhoudsopgave:
- Stap 1: Hoe het werkt
- Stap 2: De spullen die je nodig hebt
- Stap 3: Demontage en wijziging
- Stap 4: Elektrisch detail en montage
- Stap 5: Imp-firmware, agentcode en knipperen
- Stap 6: IPhone HTML/Javascript-code
- Stap 7: Het werkt
Video: Bekrachtigde stopcontacten - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
Deze instructable laat je zien hoe je een kant-en-klare voedingsadapter kunt hacken om een internet-enabled voedingsadapter te maken met behulp van de Electric Imp. Hiermee kunt u elk apparaat met netvoeding op afstand bedienen met een smartphone of webbrowser. Mijn garage "as-constructed" verlichting is slecht. Je kunt het beschikbare licht gebruiken om grote objecten zoals je auto te vinden, maar vergeet die schroef die je net hebt laten vallen. Om het verlichtingsprobleem op te lossen kocht ik twee 4 voet, 4 buis fluorescerende winkellampen om boven mijn werkgebied te hangen. Omdat het stopcontact ongeveer 12 voet hoog in het plafond zit, had ik een manier nodig om de lichten op afstand aan en uit te zetten. Ik vond een Stanley-stopcontact met afstandsbediening in een plaatselijke winkel en ik was klaar, althans dat dacht ik. De eerste Stanley-afstandsbediening faalde op dag 1. De vervangende eenheid begaf het na een paar dagen. Derde vervangende eenheid mislukte een paar maanden later. Ik kwam er nooit aan toe om het terug naar de winkel te brengen - ik installeerde trekkoorden voor de winkelverlichting als een ouderwetse tijdelijke oplossing op afstand. Wat ik nodig had, was een WeMo of soortgelijk apparaat. Een perfecte oplossing voor mijn behoeften als misschien een beetje overkill. Maar toen schoot het me te binnen. Hoogstwaarschijnlijk is het storingspunt bij het Stanley-apparaat het RF-circuit dat het schakelen van de AC regelt. Als ik dat circuit zou vervangen door een Electric Imp, zou ik niet hoeven te knoeien met het AC-circuitontwerp dat al UL-goedgekeurd is voor veiligheid, en zou ik een mooi gemaakte behuizing hebben om op te starten. Ik pakte een Philips-schroevendraaier en opende de Stanley-eenheid. De binnenkant bleek PERFECT te zijn voor een Electric Imp (https://www.electricimp.com) retrofit met minimale inspanning … of dat dacht ik. Mijn winkelverlichting ging de internetwolk in. Helaas liep het plan om het RF-circuit te vervangen door een Electric Imp op een groot struikelblok omdat de DC-voeding op de Stanley-stekkerdoos niet genoeg stroom kan leveren om de Electric Imp van stroom te voorzien. De Imp vereist ongeveer 400 mA bij wifi-overdracht, dus de hack bleek ingrijpender te zijn dan ik had bedoeld, met een Imp, een oplader voor een mobiele telefoon en een relaisbord, met een schoenlepel in de Stanley-behuizing. Aangezien de feestdagen voor de deur staan, is dit stelt u in staat om uw lichtdisplay te bedienen vanaf waar u en uw smartphone zich ook bevinden, zelfs al is het maar vanaf de bank om de nachtelijke trip naar uw besneeuwde tuin te vermijden…. houd gewoon rekening met waterdichtheid als u dit doet, zodat u niet onbedoeld een elektrisch gevaar veroorzaakt. De Stanley-eenheid die ik heb gebruikt, is nog steeds verkrijgbaar bij verschillende internetsites, dus als je een eenvoudig WeMo'ish-achtig apparaat wilt, met volledige toegang tot de broncode en elektronica die je tot in de perfectie kunt hacken, dan zal deze Instructable je daar brengen.
Stap 1: Hoe het werkt
De Electric Imp is de kern van de systeemwerking. Wanneer de knop op de webapp is geactiveerd, wordt een AJAX HTTP-verzoek gedaan naar een URL die specifiek is voor uw Imp. Dit verzoek wordt verzonden naar de Imp Agent in de Electric Imp-cloud die specifiek is gekoppeld aan uw Electric Imp. De Agent-code is een mini-webserver die het verzoek parseert en, indien geldig, via de cloud doorgeeft aan uw Imp-firmware. Deze communicatie achter de schermen tussen de servergebaseerde Agent en de hardwaregebaseerde firmware is ontwikkeld door de getalenteerde mensen van Electric Imp. De Imp-firmware ontvangt het bericht van de cloudgebaseerde agent en stelt de relaisuitgang dienovereenkomstig in. Hiermee kunt u de Stanley-stopcontacten in- of uitschakelen door op de knop op uw SmartPhone of webbrowser te drukken met minimale inspanningen voor software- en firmware-ontwikkeling. Mooi hoor!
Stap 2: De spullen die je nodig hebt
Er zijn veel variaties van op afstand bedienbare wisselstroomschakelaars. Deze zijn erg populair tijdens de decembervakantie in de VS. Hoogstwaarschijnlijk kan elk van hen op een vergelijkbare manier worden gehackt. Dit is de onderdelen- en gereedschapslijst voor de Stanley-eenheid die ik heb gebruikt. Onderdelen
- Stanley elektrisch stopcontact op afstand. De eenheid die ik gebruikte is nog steeds beschikbaar voor ongeveer $ 16 bij 1000Bulbs.com Ik hou van het gemak van 3 stopcontacten
- Elektrische Imp
- Elektrisch Imp-dragerbord
- SainSmart 2-kanaals relaiskaart. Heeft opto-isolator-ingangen. Ik heb dit bord gekocht voor een ander project. Op dat moment (augustus 2013) was het minder dan $ 5 geleverd met Amazon Prime. De huidige prijs is $ 9
- 1 x 4-pins Molex-connector. Ik heb de mijne gekocht bij Jameco.com
- 1 x 3-pins Molex-connector. Jameco.com
- 5 x connectorcontacten voor Molex KK-serie connectoren. Jameco.com
- Thermistor - 10K https://www.sparkfun.com/products/250 (Optioneel - ik moet hier nog de code voor schrijven)
- iPhone USB-oplader voor het voeden van de imp - Amazon heeft de beste prijzen
- USB-kabel die wordt verminkt om de Imp van stroom te voorzien. Als je er een krijgt met een klein stekkeruiteinde (zoals degene die bij de iPhone wordt geleverd, kun je de stap van het verminken van de connector vermijden!)
Gereedschap en benodigdheden
- Philips schroevendraaier voor het demonteren van de Stanley unit. Onnodig te zeggen dat uw garantie vervalt zodra u dit doet
- Soldeerbout en soldeer - Radioshack heeft een variëteit:
- 24 of 26 of 28 Gauge aansluitdraad voor het aansluiten van de elektrische imp I/O op het relais. Radioshack heeft verschillende kleuren van 24 gauge beschikbaar
- Scherp mes
- Klein elektrisch gereedschap (draadknipper, draadstripper etc)
- Kleine boren (1/16") en boor voor het maken van de Imp-sleuf in de zijkant van de Stanley-eenheid. Als alternatief een Dremel-gereedschap met een geschikt snijbit.
- Heetlijmpistool en lijmstiften voor montage van de elektrische imp en het relais in de behuizing. Ik gebruikte het type met hoge sterkte..
Onthoud dat zodra u de schakelaar voor het Stanley Remote AC Outlet opent, uw garantie vervalt. Zorg er ook voor dat u werkt met de juiste veiligheidsprocedures voor apparaten met hoofdvoeding. Koppel de Stanley-eenheid los voordat u eraan werkt. Terwijl de stekker uit het stopcontact is gehaald, kun je er veilig aan werken zonder bang te zijn dat je jezelf per ongeluk een schok geeft. Als u probeert aan het apparaat te werken terwijl het is aangesloten, zijn de spanningen (115 VAC) in de Stanley-eenheid voldoende om u te doden. Werk nooit aan de binnenkant van de Stanley-eenheid als het deksel is verwijderd en de stekker in het stopcontact zit. Wees voorzichtig. Gebruik voor gereedschap standaard doe-het-zelf veiligheidsprocedures en draag altijd een veiligheidsbril.
Stap 3: Demontage en wijziging
De Stanley-eenheid wordt geopend door de 5 schroeven aan de achterkant te verwijderen met een kleine Philips-schroevendraaier. Een van de schroeven kan verborgen zijn onder een sticker. Zodra alle 5 schroeven eruit zijn, haalt u de twee helften voorzichtig uit elkaar. Verwijder de printplaat van de afstandsbediening en gooi deze weg. We zullen het niet meer gebruiken. Hier wordt de Imp geïnstalleerd. Er zijn 2 grote plastic nokken gegoten op de onderste plastic behuizing waar het originele RF-bord op was gemonteerd. Deze nokken kunnen worden afgesneden met een paar zijsnijders en verder worden gladgestreken met een dremel-gereedschap. De Imp- en relaisprintplaten worden op de basis gelijmd. Het verwijderen van de nokken is nodig zodat de relaiskaart laag genoeg komt om de bovenklep vrij te maken wanneer de Stanley-eenheid weer in elkaar wordt gezet. Verwijder de hoofdprintplaat uit de schaal. Gebruik een Dremel-gereedschap met een afgesneden schijf om voorzichtig rond het bestaande circuit te snijden, zodat u alleen het AC-gedeelte van de printplaat overlaat, zoals weergegeven in de afbeeldingen. Het doorknippen van de printplaat is nodig om ruimte te maken voor de nieuwe relais die de stopcontacten in- en uitschakelen. U wilt de belangrijkste AC-sporen verlaten die de stopcontacten ondersteunen. Om een gleuf voor de elektrische imp-kaart te voorzien, moet er een gleuf worden gemaakt in de zijkant van de behuizing. Aanvankelijk was ik van plan om de ingebouwde regelaar van Stanley te gebruiken om de imp van stroom te voorzien. Toen dit onvoldoende vermogen bleek te zijn, moest ik de sleuf verplaatsen naar de andere kant van de onderste behuizing. Om de sleuf te maken, boort u een aantal gaten van 1/16 in ongeveer een rechte lijn en gebruikt u vervolgens een klein bestand om de sleuf vierkant te maken. Maak uw sleuf niet waar deze afbeeldingen te zien zijn … kijk naar de uiteindelijke foto's in de laatste stap om te zien waar de sleuf moet komen!
Stap 4: Elektrisch detail en montage
Het originele relais in de Stanley-eenheid was uitgerust met een 250VAC/10A-relais waarvoor een spoelspanning van 12V nodig was om te schakelen. Moeilijk te bedienen vanaf een 5V-circuit, dus werd deze vervangen door een dubbele relaismodule. Zorg ervoor dat de Stanley-eenheid niet is aangesloten voordat u eraan gaat werken. Het relaisbord dat ik heb gebruikt, heeft twee 10A-relais die schakelen met een spoelspanning van 5V. Om een 15A-classificatie van de gehackte eenheid te garanderen, heb ik de relais parallel gebruikt om een belastingsclassificatie van 20A te bieden. Dit biedt een behoorlijke veiligheidsfactor voor een voedingsadapter die is aangesloten op een standaard 15A stroomonderbrekerbeveiligd huisbedradingscircuit. Als u een relais met een hogere stroomsterkte gebruikt, kunt u de stopcontacten afzonderlijk schakelen. Als de stekkerdoos een nominaal vermogen van 15A heeft, moet elk van de stopcontacten veilig kunnen werken tot 15A. Door de relais die voor deze instructie zijn gespecificeerd parallel te bedraden, kunt u ervoor zorgen dat elk afzonderlijk stopcontact of alle 3 stopcontacten samen 15A veilig kunnen trekken. Meer belasting dan dit en de stroomonderbreker in uw huisbedradingspaneel zal trippen om het circuit te beschermen. De stroom voor de elektronica wordt geleverd door een iPhone USB-oplader. Ik had een reserve die ik kon gebruiken. Ze zijn goedkoop en beschikbaar op Amazon en eBay. Het is goedkoper om de oplader te kopen die wordt geleverd met een USB-kabel dan om de componenten te kopen om uw eigen stroomvoorziening te bouwen. De iPhone-vormfactor werkt goed in de beperkte binnenruimte van de Stanley-eenheid. Gebruik spade-aansluitingen om rechtstreeks op de AC-aansluitingen van de oplader aan te sluiten. Gebruik krimpkous om de blootgestelde delen van de AC-aansluitingen te bedekken om onbedoeld contact te voorkomen. De USB-kabel die ik in mijn projectdoos vond, had een omvangrijke gegoten connector. Met een scherp mes werden de kunststof profielen verwijderd. De rode en zwarte draden van de USB-kabel werden vervangen door draad van 26 gauge om meer mechanische robuustheid te bieden en vervolgens werd de connector verder beschermd met krimpkous, zoals te zien is op de foto's. Oorspronkelijk was het de bedoeling dat ik de relais onafhankelijk van elkaar zou schakelen zodat ik minimaal 2 stopcontacten onafhankelijk van elkaar zou kunnen aansturen. Zo was het circuit oorspronkelijk bedraad. Na onderzoek van de huidige draagkracht van de relais, heb ik ervoor gekozen om de relaisuitgangen parallel te zetten. De verbinding tussen de Imp en de relaiskaart heeft twee Imp-pinnen die elk relais besturen. In werkelijkheid kunt u slechts één Imp-pin op beide relaisingangen aansluiten. De firmware schakelt beide pinnen samen, dus beide manieren zijn prima. De AC Neutral en de AC Ground zijn al aangesloten op de stopcontacten. Laat alles aangesloten zoals het uit de fabriek komt. De enige draad die moet worden aangepast, is de AC Live-draad (zwarte draad). Deze draad moet worden getordeerd of vertakt, zodat u een stroomvoerende draadingang naar elk relais hebt, zoals weergegeven in het schema. Bescherm de verbinding met krimpkous. Ik heb een klein stukje 16AWG-draad gebruikt voor deze vertakking. 16AWG meeraderige draad kan doorgaans 22 Ampère dragen bij gebruik voor chassisbedrading voor korte afstanden. De relaisuitgangen zijn gesoldeerd aan de onderkant van de AC-printplaat, zoals weergegeven in de afbeelding. Wanneer alle verbindingen zijn gemaakt, knijpt u alles in de behuizing zoals afgebeeld en lijmt u de relais- en imp-kaarten aan de onderkant van de behuizing.
Stap 5: Imp-firmware, agentcode en knipperen
Om uw imp aan het werk te krijgen, moet deze verbinding maken met uw draadloze netwerk. Electric Imp biedt een tool die de configuratie optisch doet. Het proces heet BlinkUp en wordt hier beschreven https://electricimp.com/docs/gettingstarted/1-blinkup/ Zodra de BlinkUp is voltooid, verschijnt uw imp op uw IDE onder Nieuwe apparaten. Als je nog niet eerder een Electric Imp hebt gebruikt, raad ik je aan eerst het Hello World-voorbeeld op de Electric Imp-site te proberen om de Imp onder de knie te krijgen. Er is ook een geweldige gids voor de imp op instructables geschreven door @beardedinventor: https://www.instructables.com/id/Getting-Started-with-Electric-Imp/ De firmware voor de imp is aan deze stap gekoppeld als ImpoweredImp.nut De code voor de agent is bijgevoegd als ImpoweredAgent.nutFirmware en agentcode-interactie Uw agent heeft een specifieke URL. Wanneer een HTTP-bericht naar deze URL wordt verzonden, controleert uw agentcode in de Imp Cloud de geldigheid van het verzoek door de inkomende API-sleutel (elke sleutel die u verzint - meer bits maken het moeilijker te raden) te vergelijken met de opgeslagen API-sleutel ter nagedachtenis aan de Agent (API Key idea van https://forums.electricimp.com/discussion/comment/8281#Comment_8281). Als de sleutel overeenkomt, wordt het bericht gecontroleerd om te bepalen of een buttonPress-gebeurtenis of statusverzoek wordt doorgegeven in het HTTP-verzoekpakket. Als het HTTP-verzoek voor status is, retourneert de agentcode de aan/uit-status van de stopcontacten. De status wordt asynchroon bijgewerkt door de Imp-firmware wanneer de uitgangspinnen van status veranderen. Als een buttonPress-gebeurtenis wordt doorgegeven in het HTTP-verzoek, wordt deze gebeurtenis doorgegeven aan de Imp-firmware via het elektrische imp-beveiligde communicatiekanaal tussen de Imp en de servergebaseerde agent. De Imp "ontvangt" deze gebeurtenis via de functie agent.on ("buttonPressed", function(value). Elke keer dat een druk op een knop wordt ontvangen door de Imp, wordt de uitgangsstatus van Pin1 en 7 omgeschakeld, waardoor de relais Aan of Uit afhankelijk van de vorige status De statusvariabele wordt teruggestuurd naar de agent via het communicatiekanaal Agent-Imp en wordt door de agent ontvangen in de functie device.on.
Stap 6: IPhone HTML/Javascript-code
De client-app is een kale HTML/Javascript-app. Een eenvoudige afbeelding wordt gebruikt als een knop. Wanneer de afbeelding wordt ingedrukt, wordt de knop geanimeerd om WiFi-pakketten weer te geven die van het apparaat komen. Communiceren met de Elektrische Imp wordt gedaan door een bericht te sturen naar de URL van de Agent die specifiek is voor uw specifieke Imp. In de HTML-app maken we een XMLHttpRequest-object en posten we de gebeurtenis voor het indrukken van de knop in een opgemaakt JSON-pakket naar de agent-URL. xmlhttp.open("POST", "https://agent.electricimp.com/YourURL?timestamp=" + new Date().getTime(), true); xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlhttp.setRequestHeader("x-apikey", "Uw API-sleutel"); var impRequest = { "request": "buttonPressed", "button": button.id}; xmlhttp.send(JSON.stringify(impRequest)); Om de status van de stopcontacten te krijgen, wordt de agent opgevraagd xmlhttp.open("POST", "https://agent.electricimp.com/YourURL?timestamp=" + new Date().getTime(), true); xmlhttp.setRequestHeader("x-apikey", "Uw API-sleutel"); xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); var impRequest = { "request": "GetStatus" }; xmlhttp.send(JSON.stringify(impRequest)); Om de HTML-pagina als een native app op uw iPhone te laten verschijnen, moet u deze van een website laden en vervolgens toevoegen aan uw startscherm. Het proces wordt beschreven in mijn vorige instructable hier: https://www.instructables.com/id/Electric-Imp-Garage-Door-Opener/step10/Configure-IIS-Express-And-Loading-The-App-onto- y/ De iPhone-bestanden zijn bij deze stap gevoegd
Stap 7: Het werkt
Na al het bouwen, configureren en misschien zelfs een beetje vloeken, zou je een WeMo'ish-apparaat moeten hebben dat je vanaf je iPhone/Smartphone/Webbrowser kunt bedienen vanaf waar je ook bent. Er zijn veel toepassingen voor een stopcontact met internet dat uw huis veel slimmer maakt.
- Afstandsbediening van uw in-house apparaten zoals lampen, hifi, tv enz. U kunt de software verbeteren en meerdere apparaten bouwen zodat u de verlichting van uw huis kunt regelen zodat mensen denken dat het huis bezet is terwijl u weg bent. Je kunt je tv aan- en uitzetten om de illusie nog groter te maken. Je zou de firmware en smartphonesoftware kunnen verbeteren om elk apparaat te programmeren om met een ander aan/uit-schema te werken om de willekeurige aard van echte mensen in je huis te simuleren om de illusie voor veiligheidsdoeleinden te voltooien wanneer je weg bent.
- U kunt een afstandsbediening toevoegen voor moeilijk bereikbare stopcontacten…. mijn garageverlichting bijvoorbeeld!
- U kunt de status van uw verkooppunten zien om de vragen te beantwoorden die altijd lijken op te komen nadat u al vele kilometers ver van huis bent geweest, zoals "schat, heb je het strijkijzer omgedraaid, haar hete stok, aquariumfilter, zwembadfilter, lichttimers" aan/uit afhankelijk van de aard van elk apparaat.
- Voeg bewegingssensor toe om dingen automatisch aan/uit te zetten wanneer beweging wordt gedetecteerd.
- Voeg een thermistor of ander temperatuurmeetapparaat toe om de kamertemperatuur te bewaken.
- Zoek uit hoe u verbinding kunt maken met IFTTT.com, zodat u bijvoorbeeld uw stopcontact kunt e-mailen, FB-berichten, tweeten om in of uit te schakelen
- Reageer hieronder en ik voeg jouw ideeën toe aan deze lijst!
Als je er een bouwt, voeg dan toe aan de opmerkingen en laat me weten welke extra functies je hebt toegevoegd of alternatieve stopcontacten die je hebt gehackt om hetzelfde doel te bereiken. En als je erachter komt hoe je dit moet IFTTT, wil ik ook graag weten hoe! Proost!
Tweede prijs in de hardware-hacking
Tweede prijs in de Microcontroller-wedstrijd
Aanbevolen:
Doe-het-zelf slimme stopcontacten: 11 stappen (met afbeeldingen)
DIY Smart Outlets: ik heb uren en uren besteed aan het zoeken naar video's, googlen en browsen op websites om erachter te komen hoe ik als beginner een doe-het-zelf smart home kan maken. Ik ben onlangs begonnen met de Smart Home-levensstijl, maar ik was het beu om alle dure stekkers, schakelaars, een