1. canvas (elke grootte)
2. stof (genoeg ter dekking van het canvas)
3. Velcro
4. 8-10 LED-verlichting
5. geleidende draad
6. draad
7. 1 Lilypad eenvoudige Snap bestuur (u kan kiezen voor andere Lilypad platen ook)
8. 1 Lilypad spreker/zoemer
9. 3-5 geleidende materialen te worden gebruikt als sensoren (ik gebruikte 3 cookie cutters)
10. alle decoratieve materialen (Extra)
11. naalden
12. schaar
13. stof lijm
14. wit gekleurd potlood
Instructies over hoe je wekker van de Arduino te monteren
** Wanneer met behulp van geleidende draad nooit kruis tekstregels stiksel. Altijd steek kleine, nauwe en strakke steken. Lus rond metalen gaten in de Lilypad eenvoudig uitlijnen en andere Lilypad materialen. Gesneden eindigt als dichtbij de knoop mogelijk te houden van de staarten van de wol van het aanraken van andere geleidende tails.* *
** Negatieve regels zijn grond, en kunnen aanraken wanneer alle negatieven zijn naaide om het gat van de steekproef. Alle positieve lijnen niet kruisen of worden aangesloten op de dezelfde gaten. Elke positieve lijn moet het eigen nummer hole op de Lilypad eenvoudig Snap.* *
1. Sluit het Lilypad eenvoudige magnetisch bord aan uw stof met behulp van weefsel lijm. Zet één stip lijm in het midden van uw Lilypad en druk op op stof. Ik wilde mij hechten in het midden van de stof op de achterkant, zodat het niet kan worden gezien.
2. plaats de spreker Lilypad dicht bij je board Lilypad eenvoudige Snap. Gebruik vervolgens de geleidende draad te naaien door het negatieve gat op de luidspreker. Lus rond het negatieve gat meerdere keren te houden van de geleidbaarheid sterk. Gebruik vervolgens dicht en strak steken steek naar de negatieve gat op de Lilypad eenvoudige Snap. Naai door de Lilypad eenvoudige Snap negatieve gat meerdere keren, dan binden de off-line, en snijd de extra. Ik koos om te hechten mijne close-up boven de lilypad op de achterkant van de stof zodat het niet zou worden gezien.
3. met een nieuwe lijn van geleidende draad steek van de spreker positieve eind naar de 5 gat op de Lilypad eenvoudige Snap. Volgt dezelfde regels als de stap voordat een geleidende draad.
4. Markeer met een witte kleurpotlood waar u uw ledverlichting te gaan. Positie LEDs een paar duim apart. Ik heb een rij van 10 op de top van het weefsel.
5. de LED stadslichten recht omhoog en omlaag met alle negatieve einden naar beneden, en alle positieve einden naar boven.
6. Neem een nieuwe lijn van geleidende draad en naaien start op de eerste LED licht op de uiterst linkse kant. Beginnen met de negatieven, doen een verbindingslijn tussen twee alle LED negatieve einden. Na alle negatieve einden hebben zijn naaide steek op de stof tot de Lilypad eenvoudig uitlijnen en de negatieve LED lichtlijn verbinden met het negatieve gat op het bord.
7. nu met een nieuwe lijn van geleidende draad starten vanaf de rechterkant te koppelen alle positieve einden van de LED-lampjes. Start op het verst recht en steek totdat ze allemaal met geleidende draad verbonden zijn. Vervolgens stich omlaag om de LilyPad eenvoudige Snap en de positieve lijn sluit aan op hole 9 op de LilyPad eenvoudige Snap.
8. nu test uw verlichting en de spreker om ervoor te zorgen dat ze correct werken. Als zij doorgaan op uw sensoren te koppelen. Zoniet probleem oplossen om erachter te komen het probleem. U wellicht opnieuw naaien.
9. Kies vervolgens willekeurige gebieden op de onderste helft van het canvas waar u wilt dat uw sensoren worden geplaatst. Markeer met de witte kleurpotlood.
10. Naai de sensoren op de stof met behulp van geleidende draad, en ze te verbinden tot het bord Lilypad eenvoudige Snap. Elke sensor moet worden gekoppeld aan hun eigen nummer gat op het bord.
11. Ik gebruikte 10 voor één sensor1, 11 voor sensor2 en A2 voor sensor3.
12. Naai op de triple een batterijhouder op een handige plaats met behulp van geleidende draad. Ik koos voor boven de Lilypad eenvoudige Snap. De 3 negatieve gaatjes in de batterijhouder met elkaar verbinden, en naai tot het negatieve gat op het Lilypad eenvoudige magnetisch bord.
13. Sluit het positieve gat op de batterijhouder aan de positieve gat op de Lilypad eenvoudig uitlijnen met behulp van geleidende draad. De triple A-batterijhouder zal het maken zodat u uw klok hele dag uitvoeren kunt zonder op een computer wordt aangesloten. Het zal ook toestaan de Lilypad eenvoudige Snap nauwkeurige tijd hele dag te houden.
14. programma je board Lilypad eenvoudige Snap dat je wekker afgaan op de gewenste tijden met de lichten op en spreker op. Ik geprogrammeerd mijn Lilypad eenvoudig uitlijnen op het uitschakelen van de lichten en de zoemer zodra alle 3 sensoren zijn geraakt. Dit dwingt mij om uit bed en uitschakelen van de wekker, zonder snoozing.
15. het testen van uw code.
16. Bevestig Velcro rond de randen van het doek en de randen van de stof, dus je je wekker stof trekken kunt af en op het canvas om te gemakkelijk de computer te herprogrammeren.
17. hang je wekker op de muur.
18. Geniet van!
Veelvoorkomende problemen waarmee u mogelijk geconfronteerd:
1. het bijhouden van geleidende lijnen strakke, nauw gestikte en niet Overstekende lijnen. Altijd naai via nummer gaten, en positieve negatieve gaten meerdere keren.
2. controleren van de geleidbaarheid van sensoren.
3. altijd diagram uw project, zodat u kunt een tekening te volgen. Het maakt het zo veel makkelijker om ambachtelijke, en zorg ervoor dat uw lijnen niet kruisen!
4. bewaring negatieve en positieve eindigt al geconfronteerd met de dezelfde manier op als materialen.
5. normale draad niet interfereren met geleidende draad, dus gebruik maken van normale draad als u nodig hebt om te naaien op patches.
6. Snij alle uiteinden van de draden zo dicht mogelijk bij de knoop, zodat ze geen kortsluiting veroorzaken.
7. altijd Controleer met uw code, u misschien mist iets simpels als een puntkomma. Het helpt soms met een fris paar ogen kijken naar uw code te vinden van het foutje u ontbreken.
8. gebruik maken van andere tutorials, en mensen als middelen!
Code:
Eerste bezoek de Ardunio speeltuin te lezen via de bibliotheek van de tijd. De tijd-zip downloaden van deze website:
http://Playground.Arduino.CC/code/time
Klik vervolgens op de koppeling van de TimeAlarms op de bovenstaande website lezen over die pagina, en de tijd Alarm-zip downloaden:
http://www.pjrc.com/teensy/td_libs_TimeAlarms.html
Dit zal de code die u wilt instellen van het alarm hebben. Het net moet lichte bewerken.
U zult moeten toevoegen uw sensoren, lichten, spreker, en capacitative pin Lees informatie om het alarm te werken hoe we willen dat het.
Hier is mijn laatste code:
#include
#include
int speakerPin = 5;
int lichten = 9;
int sensorPin1 = 10;
int sensorPin2 = 11;
int sensorPin3 = A2;
int sensorValue;
int sensorValue2;
int sensorValue3;
VOID Setup
{
Serial.begin(9600);
pinMode (sensorPin1, INPUT);
pinMode (sensorPin2, INPUT);
pinMode (sensorPin3, INPUT);
pinMode (verlichting, uitvoer);
pinMode (speakerPin, OUTPUT);
setTime(15,35,0,4,23,13); stelt de tijd in op dinsdag 3:35:00 pm April 23 2013
Alarm.alarmRepeat (7,30,0, MorningAlarm); 7:30 am elke dag
Alarm.alarmRepeat (15,36,0, TestAlarm);
Alarm.timerRepeat (15 herhalingen); timer voor elke 15 seconden
Alarm.timerOnce (10, OnceOnly); genaamd eenmaal na 10 seconden
}
void loop {}
digitalClockDisplay(); zolang de batterij behoort, blijft het tijd als een klok
Alarm.delay(1000); Wacht één seconde tussen weergave van de klok
}
functies moet worden aangeroepen wanneer een alarm wordt gegenereerd:
VOID MorningAlarm() {}
Boole alarm_on = waar; Trigger alarm op
Boole sensor1_touched = false;
Boole sensor2_touched = false;
Boole sensor3_touched = false;
digitalWrite (licht, hoge); Verlichting inschakelen
terwijl (alarm_on == true) {}
Toon (speakerPin, 1046, 100); Spreker geluiden
sensorValue = readCapacitivePin(sensorPin1); Lees de aanraking van sensor 1
sensorValue2 = readCapacitivePin(sensorPin2); Lees de aanraking van de meetcel 2
sensorValue3 = readCapacitivePin(sensorPin3); Lees de touch sensor 3
Als (sensorValue > 1) sensor1_touched = true; alle 3 de uitschakelen, touch 1 moet raken
Als (sensorValue2 > 1) sensor2_touched = true; Touch 2
Als (sensorValue3 > 1) sensor3_touched = true; Aanraking 3
Als ((sensor1_touched==true) & &(sensor2_touched==true) & &(sensor3_touched==true)) {}
alarm_on = false; Zodra alle sensoren zijn geraakt stopt spreker klinkende
}
}
digitalWrite (verlichting, laag); Zodra alle sensoren zijn geraakt uitschakelt-verlichting
}
VOID TestAlarm() {}
Boole alarm_on = waar;
Boole sensor1_touched = false;
Boole sensor2_touched = false;
Boole sensor3_touched = false;
digitalWrite (licht, hoge);
terwijl (alarm_on == true) {}
Toon (speakerPin, 1046, 100);
sensorValue = readCapacitivePin(sensorPin1);
sensorValue2 = readCapacitivePin(sensorPin2); Lees de touch sensor waarde
sensorValue3 = readCapacitivePin(sensorPin3);
Als (sensorValue > 1) sensor1_touched = true;
Als (sensorValue2 > 1) sensor2_touched = true;
Als (sensorValue3 > 1) sensor3_touched = true;
Als ((sensor1_touched==true) & &(sensor2_touched==true) & &(sensor3_touched==true)) {}
alarm_on = false;
}
}
digitalWrite (verlichting, laag);
}
VOID WeeklyAlarm() {}
Serial.println ("Alarm: - de maandag ochtend");
}
VOID ExplicitAlarm() {}
Serial.println ("Alarm:-deze gebeurtenis wordt alleen op de opgegeven datum en tijd");
}
VOID Repeats() {}
Serial.println ("15 tweede timer");
}
VOID OnceOnly() {}
Serial.println ("deze timer enige triggers eens");
}
VOID digitalClockDisplay()
{
digitale klokweergave van de tijd
Serial.Print(Hour());
printDigits(minute());
printDigits(second());
Serial.println();
}
VOID printDigits(int digits)
{
Serial.Print(":");
if(digits < 10)
Serial.Print('0');
Serial.Print(digits);
}
readCapacitivePin
Ingang: Arduino pin-nummer
Uitgang: Een nummer, van 0 tot de uiting van de 17
hoeveel capaciteit is op de pin
Wanneer u contact met de pin, of wat je hebt
gekoppeld aan het, krijgt het nummer hogere
#include "pins_arduino.h" / / Arduino pre-1.0 moet dit
uint8_t readCapacitivePin (int pinToMeasure) {}
Variabelen die worden gebruikt om te vertalen van Arduino naamgeving van AVR-pin
vluchtige uint8_t * haven;
vluchtige uint8_t * ddr;
vluchtige uint8_t * pin;
Hier vertalen wij de invoer pin-nummer van
Arduino pin nummer AVR poort, PIN, DDR,
en welke bits van deze registers die we schelen.
byte bitmasker;
poort = portOutputRegister(digitalPinToPort(pinToMeasure));
DDR = portModeRegister(digitalPinToPort(pinToMeasure));
bitmasker = digitalPinToBitMask(pinToMeasure);
PIN = portInputRegister(digitalPinToPort(pinToMeasure));
Kwijting van de pin eerst door het lage- en output
* poort & = ~ (bitmasker);
* ddr | = bitmasker;
delay(1);
Maak de pin een ingang met de interne pull-up op
* ddr & = ~ (bitmasker);
* haven | = bitmasker;
Nu zien hoe lang de pin te krijgen trok. Deze handmatige afrollen van de lus
vermindert het aantal hardware cycli tussen elke lezen van de pin,
waardoor de gevoeligheid.
uint8_t cycli = 17;
Als (* pin & bitmasker) {cycli = 0;}
anders als (* pin & bitmasker) {cycli = 1;}
anders als (* pin & bitmasker) {cycli = 2;}
anders als (* pin & bitmasker) {cycli = 3;}
anders als (* pin & bitmasker) {cycli = 4;}
anders als (* pin & bitmasker) {cycli = 5;}
anders als (* pin & bitmasker) {cycli = 6;}
anders als (* pin & bitmasker) {cycli = 7;}
anders als (* pin & bitmasker) {cycli = 8;}
anders als (* pin & bitmasker) {cycli = 9;}
anders als (* pin & bitmasker) {cycli = 10;}
anders als (* pin & bitmasker) {cycli = 11;}
anders als (* pin & bitmasker) {cycli = 12;}
anders als (* pin & bitmasker) {cycli = 13;}
anders als (* pin & bitmasker) {cycli = 14;}
anders als (* pin & bitmasker) {cycli = 15;}
anders als (* pin & bitmasker) {cycli = 16;}
Kwijting van de pin opnieuw door het lage- en output
Het is belangrijk om te laten de pinnen laag als u wilt
mogelijk te raken meer dan 1 sensor tegelijk - als
de sensor wordt overgelaten getrokken hoog, wanneer je aanraken
twee sensoren, je lichaam zal de overdracht van de kosten tussen
sensoren.
* poort & = ~ (bitmasker);
* ddr | = bitmasker;
retourneren van cycli;
}