Home automation met ATTiny en mobiele telefoon (2 / 3 stap)

Stap 2: Programmering de ATTiny


Voor het programmeren van de ATTiny vindt u de instructie in de ' ible in de vorige stap.

Hier is het programma dat ik gebruikte: (gewijzigd op advies van gulliverrr)

 /*ATTiny switch with timer (by Max Janssen june 2015)The ATTiny timer is not very accurate, but enough to switch for a certain number of secondsThe digital switch is based upon a LDR and resistor. GND---LDR---(A1)---100KOhm---5VThe switch output goes to an LH1540 Optocoupler Solid State Relais to switch whatever. Pin1---100Ohm---Pin1(LH1540)Pins 3 and 4 are used to jumper to GND and set different switching timesIf 3 phonecalls are received minimum 30 seconds and maximum 2 minutes apart the switch is triggered */ These constants won't change. They're used to give names // to the pins used: const int ldrValue = A1; // Analog input pin that the LDR is attached to const int setPin1 = 3; // for setting time delay const int setPin2 = 4; const int outputPin = 1; // to switch (ss relais)int sensorValue = 0; // value read from the LDR int timerValue = 0; int ldrTreshold = 600; //Treshold to switchvoid setup() { // initialize serial communications at 9600 bps (not for ATTiny) // Serial.begin(9600); pinMode(setPin1, INPUT_PULLUP); pinMode(setPin2, INPUT_PULLUP); pinMode(outputPin, OUTPUT); digitalWrite(outputPin, LOW); }void loop() { // read the LDR value: sensorValue = analogRead(ldrValue); if (sensorValue <= ldrTreshold) countRings(); // print the results to the serial monitor: /* Serial.print("Pin1 = " ); Serial.print(digitalRead(setPin1)); Serial.print(" Pin2 = " ); Serial.print(digitalRead(setPin2)); Serial.print(" sensor = " ); Serial.print(sensorValue); Serial.print(" timerValue = " ); Serial.println(timerValue); */ // wait before the next loop // for the analog-to-digital converter to settle // after the last reading: delay(200); }void countRings() { int ringCounter = 1; // phone has rung once unsigned long timeNow = millis(); delay(30000); //delay for 30 seconds while(millis() <= timeNow + 120000){ //check signal for 2 minutes sensorValue = analogRead(ldrValue); if (sensorValue <= ldrTreshold){ ringCounter = 2; break; } } if (ringCounter < 2) return; //the phone did not ring 2 times delay(30000); //delay for 30 seconds timeNow = millis(); while(millis() <= timeNow + 120000){ //check signal for 2 minutes sensorValue = analogRead(ldrValue); if (sensorValue <= ldrTreshold){ ringCounter = 3; break; } } if(ringCounter < 3) return; //the phone did not ring 3 times Switch(); // 3 rings => start the switching time } void Switch(){ // set timer value. set = 0, not set = 1!!! // setPin2, setPin1, delay (millisec) // 1 1 300.000 (15 min) // 1 0 1200.000 (30 min) // 0 1 3600.000 (60 min) // 0 0 7200.000 (120 min) int timerState = (digitalRead(setPin2)*10)+digitalRead(setPin1); // Serial.println(timerState); switch(timerState){ case 11: timerValue = 300000; break; case 10: timerValue = 1200000; break; case 1: timerValue = 3600000; break; case 0: timerValue = 7200000; break; } digitalWrite (outputPin, HIGH); delay(timerValue); digitalWrite (outputPin, LOW); } 

Bij het testen van het programma kunt u de timerValue verminderen, dus u niet hoeft te wachten op 2 uur om te zien of de laatste optie werkt...

Vanwege het gebruik van INPUT_PULLUP kunt u een poort aan de grond voor ons als een schakelaar kunt aansluiten. Daarom uitgeschakeld is 1 en de op staat is 0. (Zie het gebruik van setPin1 en setPin2)

De ldrTreshold kan worden bepaald door het uploaden van de schets aan een Arduino Uno en de seriële aansluiting te gebruiken om te kijken naar de waarden. Deze waarden kunnen worden gebruikt in de ATTiny.

Natuurlijk kunt u de waarden van timerValue om aan uw behoefte voor vertragingen te wijzigen.

Gerelateerde Artikelen

Hoe te controle Home licht met Android /Ios mobiele telefoon toepassing

Hoe te controle Home licht met Android /Ios mobiele telefoon toepassing

Onlangs ben ik proberen om te experimenteren met draadloze communicatie. een van de gemakkelijke manier om controle van de verlichting van het huis is radiofrequentie module en 2 Arduino board. maar er een een andere eenvoudige optie beschikbaar om a
Smart Home Automation met Voice command

Smart Home Automation met Voice command

Dit is een stapsgewijze tutorial bouw van het circuit voor 'Smart Home Automation met Voice Command' functie.Download onze gratis Arduino Project Code hier.Vereisten:• Arduino Uno• LED• Weerstand (220 Ohm)• Bluetooth-Module (BlueSmirf / BlueMate Zilv
Smart Home Automation met Android + Ethernet Internet + Arduino

Smart Home Automation met Android + Ethernet Internet + Arduino

Domotica wordt meer en meer populair, betaalbare en fascineert mensen. Internet biedt dergelijke mogelijkheden als nooit tevoren. Maak indruk op uw vrienden tonen op Smartphone, dat u kunt aan/uit-lamp in uw appartement mijl afstand schakelen en tege
LinKit one - Home Automation met Bluetooth Controller Android App

LinKit one - Home Automation met Bluetooth Controller Android App

Alle opties zijn voorzien van slimme telefoons. Slimme telefoons maken ons werk zeer gemakkelijk en maakt ons lui. Draai in- en uitschakelen met behulp van slimme telefoon met Blauwe tand huistoestellen is in de markt, maar de kosten hoog. Dus DIY Bl
DIY Smart Home Automation met behulp van Android

DIY Smart Home Automation met behulp van Android

Smart Home Automation laat de gebruiker te bepalen van het huis van zijn of haar telefoon en acties die afhankelijk van tijd of andere sensor lezingen zoals licht, temperatuur of geluid vanaf elk apparaat in het netwerk van de Home Automation gebeure
Home Automation met behulp van de Arduino Uno

Home Automation met behulp van de Arduino Uno

Ooit wilde maken uw huis geautomatiseerde? Wilde de verlichting, ventilator en andere toestellen van uw smartphone? Of een tutorial over aangesloten apparaten en aan de slag met het gezocht? Android Home Automation zal u tonen hoe te maken van uw hui
Home Automation met Arduino

Home Automation met Arduino

In dit Instructable zal ik proberen uit te leggen hoe een server voor huisautomatisering die de mogelijkheid heeft om gemeenschappelijke huishoudelijke elektrische artikelen voor tampon ter te een gemeenschappelijk stekkerdoos met 5-weg-240 v wissels
Home Automation met HomeGenie

Home Automation met HomeGenie

Dus wilt u stap uw spel Domotica? Zoek niet verder! Veel van ons probeerde huis automatiseren door ad hoc-methode, nu hier is een grote open source systeem dat betrouwbare stichtingen voor uw volgende project geeft.HomeGenie geeft u een webserver voo
Ryobi 18vdc zaklamp met Ipod of mobiele telefoon oplader Output

Ryobi 18vdc zaklamp met Ipod of mobiele telefoon oplader Output

hier is een snelle hack die het gebruik van uw 18vdc Ryobi zaklamp zal vermenigvuldigen. Ik heb toegevoegd een 12vdc-uitgang voor het opladen van mijn ipod of mobiele telefoon in een snuifje. Het duurde ongeveer een uur en was niet te moeilijk. Het u
Procedure: Stem Feedback toevoegen aan uw Home Automation met koppelen een!

Procedure: Stem Feedback toevoegen aan uw Home Automation met koppelen een!

Hallo iedereen,Vandaag zal ik u tonen hoe u stem feedback toevoegt aan uw Home Automation.Dit zal altijd een goede additief aan uw Home Automation Project met Link het één omdat uw Linkit ONE zou een feedback als een "Heb ik draaide op verlichting vo
Home Automation met de controle van de stem van de Echo van de Amazon

Home Automation met de controle van de stem van de Echo van de Amazon

Vorige maand, bracht Amazon de Echo - een kleine cilinder staat voor erkenning van de krachtige stem.De Echo zelf is gesloten bron. Maar zodra u erachter te komen van de Echo geheimen, een ongelooflijk krachtig hulpmiddel voor de controle van de stem
Home Automation met behulp van RF-Transceiver met Arduino Micrcontroller

Home Automation met behulp van RF-Transceiver met Arduino Micrcontroller

Dit project laten zien voor het ontwerp en de ontwikkeling van een Home Automation systeem met behulp van RF-Transceiver gecontroleerd door Arduino Micrcontroller. De gebruiker zal verschillende indoor apparatuur zoals bollen, deuren en fans met behu
LED licht met behulp van mobiele telefoon batterijoplader

LED licht met behulp van mobiele telefoon batterijoplader

een geborgen 5 mm leidde samen met een weerstand van 68OHMS toen aangesloten op een lader met 5 volt uitvoer produceert wat is hieronder weergegeven... ik het gegarneerd met een piramide gemaakt van kristal uit een feng shui shop. een goede nacht lic
Home Automation met behulp van de Arduino en Bluetooth

Home Automation met behulp van de Arduino en Bluetooth

De "Home Automation System"(HAS) concept bestaat al vele jaren. De termen "Smart Home", "Intelligente huis" gevolgd en is gebruikt om het concept van netwerken toestellen en apparaten in het huisDomoticasysteem is een proces