Inhoudsopgave:

Webgestuurde Valentijn: 8 stappen (met afbeeldingen)
Webgestuurde Valentijn: 8 stappen (met afbeeldingen)

Video: Webgestuurde Valentijn: 8 stappen (met afbeeldingen)

Video: Webgestuurde Valentijn: 8 stappen (met afbeeldingen)
Video: ACTION SHOPLOG 2024, November
Anonim
Webgestuurde Valentijn
Webgestuurde Valentijn

Met deze mix van software en hardware kun je overal met internettoegang een met hart versierd nachtlampje laten branden. Dus of je het je nu herinnert op je werk, in een café, thuis of op je (web-enabled) mobiele telefoon, je kunt je valentijn vertellen dat je het je nog herinnert.

(dat, of je kunt je liefje irriteren door het licht gedurende de dag snel te laten pulseren, totdat ze het handmatig uitschakelt) UPDATE 16-04-07: GEEN VERTRAGING MEER! Ik heb eindelijk mijn eigen seriële communicatieprogramma geschreven, met de nieuwe code is de vertraging weg.

Stap 1: Materialen verzamelen

Materiaal verzamelen
Materiaal verzamelen
Materiaal verzamelen
Materiaal verzamelen
Materiaal verzamelen
Materiaal verzamelen

Er zijn verschillende manieren om een stopcontact vanaf een pc te bedienen, maar aangezien ik er toch een had liggen, heb ik het project gebaseerd op een Arduino NG i/o-bord. ($ 32 van Sparkfun) Alle andere onderdelen werden ofwel weggevangen, lokaal opgehaald bij Radio Shack of gekocht bij een supermarkt; daarom zijn er wat rommelige hacks bij betrokken. Laat het gebruik van de Arduino je er niet van weerhouden om dit of een soortgelijk probleem te proberen. De Arduino is extreem eenvoudig en goedkoop.-=MATERIALEN=--Hardware-Arduino NG - USB Prototyping Board9vdc 350ma voedingsadapterUSB male A-male B-kabelcomputer netsnoer (of ander geschikt geaard snoer)driepolig stopcontact, deksel en boxPC Relais - 12vdc spoel rating rs onderdeel #275-248Reed Relay - 5vdc spoel rating rs onderdeel #275-232diode (ik gebruikte rs onderdeel #276-1620, maar ik had het rondslingeren) Hart-versierde nachtlampje-Software-Arduino IDE van https://www.arduino.ccXampp van https://www.apachefriends.org/en/xampp-windows.htmlComSender - mijn seriële communicatieprogramma, php-code en Arduino-code. (gehecht)

Stap 2: Bereid het relais voor

Bereid het relais voor
Bereid het relais voor

Dit is vrij eenvoudig.

Zoek de pinnen voor "coil" (2 pinnen), "common" en "normaal open". Soldeer zware draad aan "gewone" en "normaal open". Deze draden dragen 120 vac, dus ik raad een stukje draad van de pc-voedingskabel aan. Zorg ervoor dat u niet te veel neemt, een 3 inch is voldoende. Soldeer draden van lichtere dikte aan de twee spoelpinnen, deze zullen 9vdc dragen bij niet meer dan 350ma. kies welke spoelpen u positief wilt hebben (het maakt nog niet uit welke) en kies de juiste draadkleuren om niet in de war te raken. soldeer een diode tussen de twee spoelpinnen, zodat de zwarte lijn zich aan de kant van de positieve pin bevindt. Deze diode helpt spanningspieken van het relais te onderdrukken als gevolg van inductie op de spoel.

Stap 3: Bouw een stopcontactdoos

Outletdoos bouwen
Outletdoos bouwen

Knip het vrouwelijke uiteinde van de pc-voedingskabel af, als u dat nog niet hebt gedaan, en steek de kabel door een van de gaten in de stopcontactdoos. strip de drie interne draden en sluit ze als volgt aan.

sluit groen aan op de massaconnector op het stopcontact. sluit wit aan op de neutrale connector op het stopcontact. sluit zwart aan op de "gewone" draad van het relais. sluit de "normaal open" draad aan op de spanningvoerende connector op het stopcontact. Controleer alles nogmaals, dit is 120 waar we mee te maken hebben. Fouten zijn slecht. plak alles netjes vast, om korte broeken te vermijden en alles mooier te maken. Steek de spoeldraden door een van de kleinere gaten in de uitlaatdoos en sluit de uitlaat aan op de doos.

Stap 4: Secundair relais toevoegen

Secundair relais toevoegen
Secundair relais toevoegen
Secundair relais toevoegen
Secundair relais toevoegen
Secundair relais toevoegen
Secundair relais toevoegen
Secundair relais toevoegen
Secundair relais toevoegen

Ik had gehoopt dat ik op dit punt het relais op de Arduino kon aansluiten en de hardware klaar zou kunnen noemen; in tegenstelling tot de eerste tests zou 5vdc (de uitgangsstroom van datapinnen op de Arduino) echter niet betrouwbaar een 12v-relais aansturen. Ik moest een tweede kleiner relais toevoegen en gebruikmaken van de 9v-uitgang op het bord. Dit kleinere relais schakelt 9vdc met 5vdc. die 9vdc schakelt dan het grotere relais.

soldeer draden aan de draden aan de twee uiteinden van het reed-relais ("normaal open" en "gemeenschappelijk"). steek een draad in de 9vdc-connector en sluit de andere aan op uw positieve draad van het grotere relais. sluit de aardedraad van de spoel van het grotere relais aan op aarde op de Arduino. de twee spoeldraden van het reed-relais moeten goed in pinnen 12 passen en op de Arduino worden geaard en zichzelf op hun plaats houden, evenals het gewicht van het relais ondersteunen. Bevestig de Arduino aan de stopcontactdoos en zorg ervoor dat u isoleert met isolatietape. Ik heb een elastiekje gebruikt om het vast te houden, maar mijn methode is zeker niet perfect. Stel ook de stroomjumper op de Arduino in op EXT en sluit deze aan op de voedingsadapter en USB. steek ook het netsnoer van de pc in het stopcontact en steek het nachtlampje in het stopcontact DIT BESLUIT HET HARDWARE-GEDEELTE

Stap 5: Software installeren

Installeer de software
Installeer de software

Installeer XAMPP en de Arduino IDE nu als je dat nog niet hebt gedaan.

Installeer ook de USB-stuurprogramma's die bij de Arduino IDE zijn geleverd en stel de COM-poort dienovereenkomstig in de IDE in. Kopieer vervolgens Sender.exe naar C:\Sender.exe (of een andere handige plaats, als u bereid bent het PHP-bestand te bewerken) en kopieer MSCOMM32. OCX naar uw systeemmap (c:\windows\system).

Stap 6: Programmeerbord/schrijf PHP

Programmabord / PHP schrijven
Programmabord / PHP schrijven

Ik heb de broncode voor de Arduino en de server toegevoegd.

open eerst het PHP-bestand en breng de volgende wijzigingen aan: stel $path in op de locatie van Sender.exe stel $port in op de COM-poort die de arduino gebruikt sla het PHP-bestand op in de htdocs-map in uw XAMPP-directory als index.php laad de Arduino IDE en open het Arduino-bestand. Druk op de resetknop op de Arduino. Druk vervolgens snel op de overdrachtsknop in de IDE. Zodra het bestand is overgedragen, bent u klaar.

Stap 7: Testen/Debuggen

Testen/Debuggen
Testen/Debuggen
Testen/foutopsporing
Testen/foutopsporing

open je browser en ga naar https://localhostje zou een pagina moeten zien met de titel "outlet control". Als je dat niet doet, is er een probleem met XAMPP. Zorg ervoor dat Apache actief is en dat je PHP niet hebt gebroken. Als je dat doet, probeer dan de twee knoppen. Als na het indrukken van "aan" het nachtlampje aangaat en na het indrukken van "uit" het uitgaat, werkt het allemaal goed.als het niet reageert, controleer dan uw keuze van COM-poort in het PHP-bestand. Als dat niet helpt, is er een foutopsporingscode met commentaar in het Arduino-bestand waardoor het lampje met een interval van vijf seconden knippert … u kunt het gebruiken om debug uw hardware. probeer het nu op een andere computer… krijg toegang via het IP-adres van de computer Als alles goed gaat, kunt u nu het licht overal ter wereld bedienen… denk erover na om een wachtwoord toe te voegen.happy Valentijnsdag.ps als u zich achter een router bevindt, moet u mogelijk port forwarding gebruiken om toegang te krijgen tot de pagina van buiten uw netwerk. met port forwarding aan, gebruik je gewoon het openbare IP-adres van je router om toegang te krijgen tot de pagina.

Stap 8: Toekomstige verbeteringen

Toekomstige verbeteringen
Toekomstige verbeteringen

1) Weg met de DelayFINISHED - HET NIEUWE PROGRAMMA HEEFT GEEN VERTRAGING! 2) USB-voeding (gebruik een beter relais, en ik kan de muurwort verwijderen 3) eenvoudigere installatie Installatie in één stap en kleine footprints zijn veel beter4) Meerdere stopcontacten, meerdere relaisscan je zegt kerstdisplay5) infraroodzender (laat het je mediacenter besturen)7) zoek uit wat "6)" was8) betere constructie / behuizing

Aanbevolen: