Slimme Huishoudapparaatbesturing via Web & Mobiele Apps
Onderdelen en benodigdheden
| Arduino UNO | × | 1 |
| Draadbruggen (algemeen) | × | 4 |
| Relais (algemeen) | × | 1 |
Apps en online diensten
- gadgetProgrammers web API diensten - Webservices en webportaal voor aan/uit schakelen
- Processing Direct Exe bestand - Voer Exe-bestand uit voor Windows (voorlopig alleen)
Over dit project
Idee achter het project
Er zijn veel projecten die je elektrische apparaten aan en uit zetten met Arduino (met vaak complexe schemas), maar er zijn geen aanwijzingen hoe je elektrische apparaten via het web of mobiele telefoon kunt besturen (met simpele schema's) en als er een manier is, is die heel lang en vervelend. Iemand moet een grote stap zetten, dus besloot ik die grote stap als eerste te zetten om andermans inspanningen te besparen. Om dit te bereiken heb ik een gemeenschappelijk webplatform gemaakt waarmee je elk van je apparaten met heel simpele stappen kunt besturen zonder programmering behalve Arduino en werken met schema's met alleen een relais. Dit was de kernidee achter dit geweldige project. Het is een van de goede voorbeelden van DIY-projecten die door iedereen eenvoudig geïmplementeerd kunnen worden en het kost minder dan $5, omdat het alleen een 5V relais en wat draden/stekkers gebruikt.
Hoe het werkt?
We hebben een open en gratis webplatform gemaakt waarmee je je elektrische apparaten of huishoudapparaten heel eenvoudig kunt beheren of automatiseren. Het kan een heel nuttig apparaat zijn. Stel je voor dat je niet thuis bent en vergeten bent een apparaat aan of uit te zetten, geen zorgen want je kunt het besturen vanaf je mobiele telefoon of desktop door de website-pagina te openen. Om dit project te gebruiken hoef je alleen de Arduino-code die seriële invoer van Processing leest en het relais bestuurt dat helpt bij het aan/uit zetten van het apparaat te kopiëren en plakken. Er kan een vraag in je hoofd zijn over hoe het Relais en Arduino programma werken en wat je met Processing moet doen? Laten we stap voor stap antwoorden zoeken.
Programmeren en Schakeling
Vanaf de Arduino-kant:
We gebruiken Arduino om seriële invoer van het Processing-programma te lezen en naar de seriële poort te schrijven om het Relais apparaat of de schakeling die we gemaakt hebben aan en uit te zetten. Zoals je in de code hieronder ziet, lezen we data van de seriële poort die van Processing komt en checken we met een paar van onze data: als we "1" krijgen, schakel dan het relais in, of als het "0" is, schakel dan het relais uit. Hoe het relais werkt is de volgende stap.
//Enkele delen van de echte code
if(Serial.available()>0){
// Seriële data lezen
readSerial = Serial.read();
delay(100);
if(readSerial == '1'){
// als het 1 is, schakel relais in
digitalWrite(RELAY1,HIGH);
}
if(readSerial == '0'){
// Als het 0 is, schakel relais uit
digitalWrite(RELAY1,LOW);;
}
}
Werking van het Relais:
(Als je het al weet, kun je dit overslaan)
Hoe gebruik je een relais voor het besturen van AC? AC is wisselstroom 220V (India) wat de AC-verlichting voedt. Arduino kan geen hoge spanning en stroom aansturen, maar een relais kan dit, wat de enige ontwerpreden is. Dus we gebruiken het relais als schakelaar om hoogvermogensapparaten te besturen. Wat zijn NO, NC en COM in een relais?
- COM = Gemeenschappelijke verbinding
- NC = Normaal Gesloten verbinding
- NO = Normaal Open verbinding
Ik heb NO, NC en COM hieronder uitgebreid uitgelegd, raadpleeg het als je het wat verwarrend vindt. We gaan NO (Normaal Open) verbinding gebruiken.
- COM - Gemeenschappelijke verbinding, het is de middelste terminal, het is "hot" omdat de voeding naar de belasting op deze terminal aangesloten is.
- NO (Normaal open) - Het werkt als een schakelaar, omdat het open is - er is geen contact tussen COM en NO. Wanneer we de relaismodule triggeren, verbindt het met COM door de elektromagneet binnenin het relais en wordt de voeding naar de belasting geleverd, wat het licht aan zet. Dus de schakeling is gesloten tot we de staat op laag zetten in het relais.
- NC (Normaal gesloten) - Het is altijd in contact met COM, zelfs wanneer het relais niet gevoed wordt. Wanneer we het relais triggeren, opent het de schakeling, dus de verbinding gaat verloren. Het gedraagt zich precies andersom dan NO.
Vanaf de Processing-kant:
Hier is de Processing-code het hart van ons project, die communiceert met beide applicaties: webapplicatie en Arduino. Je kunt het zien als een brug of postbode van de oude tijd die je post uit de bus haalt en op het gegeven adres bezorgt. Hier roept Processing een API aan die we gemaakt hebben op https://www.parikshacrack.com/gadgetProgrammers/homeAutomation/xxxxx
(De site die we gebruiken is alleen voor demo-doeleinden) door deze API aan te roepen via de Processing-software krijgen we de huidige staat van onze schakelaar, die we in Processing uitlezen en naar het Arduino-programma sturen zoals eerder besproken, en ten slotte schrijft Arduino het naar het bord.
Vanaf de Web/Mobiele kant:
Om toegang te krijgen tot het web gebruiken we het gadget programmers platform zoals hieronder:
Ga naar: https://www.parikshacrack.com/gadgetProgrammers/homeAutomation
Ga hierheen en schakel je apparaat in en uit, het wordt gelezen door je Processing-code.
Schema's: Zoals getoond in het diagram
- Verbind pin 7 van Arduino met Relais IN1.
- Verbind 5V van Arduino met Vcc van Relais.
- Verbind één eind van de AC-voeding met de Common-pin van het relais (de middelste)
- Verbind één eind van de lamp (gloeilamp) met de NC-pin van het relais
- Verbind één overgebleven draad van de lamp en een andere overgebleven draad van de AC-draad met de hoofdafvoeding.
Stappen om het project te draaien
- Kopieer en plak de Arduino-code zoals gegeven in de Arduino-editor.
- Upload de code naar de Arduino.
- Download Processing zip en kies het exe-bestand volgens je OS.
- Voer nu het exe-bestand (voor Windows) uit uit de zip van Processing volgens je OS.
- Ga naar Web: https://www.parikshacrack.com/gadgetProgrammers/homeAutomation
- Druk op de knop om lichten aan en uit te zetten.
Laatste woorden
Hooray! Als alles goed gaat, zie je je lichten werken.
Bedankt voor je tijd en als je vragen of vragen hebt, roep het in de reacties.
Code
- Arduino Code
Arduino Code Arduino
Plak deze code in de Arduino-editor
#define RELAY1 7
char readSerial;
void setup() {
Serial.begin(9600);
pinMode(RELAY1, OUTPUT);
}
void loop(){
char readSerial;
// delay(1000);
if(Serial.available()>0){
readSerial = Serial.read();
delay(100);
Serial.println(readSerial);
if(readSerial == '1'){
//Serial.println("ASDF");
digitalWrite(RELAY1,HIGH);
}
if(readSerial == '0'){
digitalWrite(RELAY1,LOW);;
}
}
}
Custom parts en behuizingen
circuitdiagram_tRPxERkCY3.tiff
Schema's
Pinverbindingen met Arduino naar Relais
pinconnections_bN2A04yM0t.tiff
Productieproces
- Anticonceptiepil: Geschiedenis, Voordelen, Risico's en Productie
- Thuis Zwangerschapstest: Hoe Het Werkt, Ontwerp en Toekomst
- Thuis Temperatuur & Vochtigheid Monitor Met Raspberry Pi & Web Dashboard – Real-Time Remote Tracking
- Een Raspberry Pi-thuisautomatiseringssysteem bouwen voor afstandsbediening
- Geautomatiseerd Zwembadvul- en Monitoringssysteem
- DIY Automatische Treinbesturing met Arduino – Eenvoudig, Betrouwbaar en Aanpasbaar
- Arduino Power Control Center: N-FET, P-FET, Relais & RTC Kit
- Spanningsregeling in webaanvulling beheersen: essentiële componenten uitgelegd
- Renesas lanceert RX66T‑aangedreven Failure Detection e‑AI‑oplossing voor motor‑gedreven huishoudapparaten
- Apparaatveiligheid verbeteren met IEC 60730 Class B standaarden
- Verbeter Uw Huis met Duurzame Koolstofvezelapparaten