Innehållsförteckning:
- Steg 1: Problem att övervinna
- Steg 2: Komponenterna, byggandet och hur det fungerar
- Steg 3: Programvaran
Video: InfoBell: 3 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Jag tillbringar mycket tid i min lilla verkstad i slutet av min trädgård.
Jag har en trådlös dörrklocka med en repeater i min verkstad. Jag går upp lite så det kan ta mig cirka 30 sekunder att komma fram till ytterdörren om någon ringer på klockan. När jag kommer dit knackar leveransen redan på grannarnas dörrar för att lämna ett paket och få en signatur.
Min InfoBell berättar för uppringare att jag kommer att vara med dem inom 30 sekunder (konfigurerbar av användaren) eller låter dem veta om jag annars är engagerad/ut!
Jag ville att dörrklockan skulle vara batteridriven och helt fristående. Meddelandena som visas måste vara användarkonfigurerbara och extremt enkla att ändra från IN till UT -meddelandet.
Jag använder bluetooth med en MIT App uppfinnare Android -telefonapp för att programmera meddelandena.
Knapparna för att initiera Bluetooth -kommandon och ställa in / ut -meddelanden finns längst ner på enheten. Den önskade funktionen väljs genom att trycka på den relevanta knappen och trycka på huvuddörrklockans tryckknapp.
Dessa knappar är bara aktiva när dörren är öppen! Om dörren är öppen eller stängd avgörs av användning av en digital kompass (QMC5883) och viss trigonometri. Jag måste erkänna att jag var tvungen att använda Google för lite hjälp här eftersom det var ett tag (cirka 46 år) sedan jag satt i ett klassrum!
Jag kunde ha hårdkodat avläsningarna från QMC5883, men jag tänkte att om någon bestämde sig för att göra detta projekt, var chansen att deras dörr vänd åt samma håll som min ganska rimlig!
Den enda knappen som är aktiv om dörren är stängd är den som ställer in "dörren stängd" -informationen.
Steg 1: Problem att övervinna
Jag hade tre svårigheter.
Den första var att synkronisera själva klockpressen och knappen för att initiera arduino och display.
Jag försökte många metoder för 2 switchar och mikro switchar men de var opålitliga, så till slut valde jag ett DP -relä.
Nästa problem var själva trådlösa dörrklockan. Det fungerade bra utan baksida på 3D -tryckta lådan men ville inte samarbeta när det installerades på ytterdörren! Min lösning var att ha en del av bakstycket ca 1 mm tjockt - det gjorde susen!
Det sista problemet att övervinna var att pressa alla komponenter i en rimlig storlek!
Steg 2: Komponenterna, byggandet och hur det fungerar
För en så enkel enhet använde jag följande !!
3D -tryckt låda och knapp
1 x SSD1306 OLED -skärm
1 x QMC5883
1 x bluetooth -skärm
1 x dubbelpolig relä
1 x självlåsande relä
5 x kretskortmonterad beröringsbrytare
2 x 3v batterier
1 x original dörrklocka
1 x diod
1 x pnp -transistor
Jag var tvungen att 'fågelbo' ledningarna för att se till att det fanns tillräckligt med utrymme för att klämma in alla komponenter i lådan - det är inte det snyggaste projektet jag någonsin gjort!
Jag använde 2 x 3v batterier med en diod för att tappa matningen en smula.
Den ursprungliga dörrklockan kom med ett 12V batteri.
När dörrklockan trycks in stängs reläkontakterna och manövrerar den ursprungliga dörrklockan samtidigt som det självlåsande reläet som levererar 5v till Arduino, Bluetooth -skärmen och QMC5883.
När Arduino har gjort sitt arbete, är pinnen 12 pulsad låg vilket återställer låsningsreläet (via en transistor) och tar bort matningen.
När enheten först är ansluten till den STÄNGDA luckan, trycks på knappen som är ansluten till Arduino pin 4 medan dörrklockan trycks ned. Detta levererar ström till Arduino och läser orienteringen på QMC5883 och lagrar värdet i eeprom. Se programvarusidan och Arduino -skissen för hur detta fungerar.
De andra tre knapparna fungerar nu bara när dörren inte är i detta läge, dvs stängd.
För att ställa in meddelanden och nedräkningstimer, trycks på knappen som är ansluten till stift 7 medan huvudklockan trycks ned OCH dörren är öppen, detta initierar bluetooth -rutinen. Inställningarna anges via appen Mit App Inventer. Appen sparar detaljerna automatiskt och lagrar detaljerna i Arduino eeprom.
För att ställa in IN / OUT -meddelandet trycks knapparna som är anslutna till Arduino -stiften 5 eller 6 medan huvuddörrklockan trycks ned OCH dörren är öppen.
Beroende på vilken knapp som trycks in är eeprom -adressen 0 antingen inställd eller återställd. Det finns en gräns för mängden läsning/skrivning som Arduino eeprom kommer att tolerera. Enligt de flesta referenser är gränsen cirka 100 000, vilket betyder att om eepromet skrivs till 4 gånger om dagen bör det dröja cirka 55 år innan problem kan uppstå.
Steg 3: Programvaran
Programvaran för Ardiuno -skissen är ganska väl dokumenterad enligt mina standarder!
För att säkerställa att det finns rimliga uppgifter i eeprom, avmarkera följande och kompilera.
Efter sammanställningen, applicera kommentarmarkörerna igen och kompilera igen.
EEPROM.begin (); /*
outone = "0";
outtwo = "1";
outthree = "2";
outfour = "3)";
inone = "0";
intwo = "1";
tre = 10;
*/
När det färdiga projektet är monterat på dörren, med dörren stängd, håller du ned knappen som är ansluten till Arduino pin 4 och trycker på klockan. Ett meddelande bekräftar din handling.
Detta lagrar de värden som läses från den digitala kompassen i Arduino eeprom.
Funktionen 'diffy' avgör om dörren är öppen eller stängd.
void diffy (int froma, int toa)
{
int diff;
diff = froma - toa;
diff = (diff+180)%360;
om (diff <= 0)
{
diff+= 180;
}
annan
{
diff -= 180;
}
Ladda sedan upp Bluetooth. APK på en mobiltelefon. Med luckan ÖPPEN, håll ned knappen som är ansluten till Arduino stift 7 och tryck på klockan. Enheten startar i Bluetooth -läge. Koppla ihop BT -modulen med din telefon, fyll i nödvändig information och skicka den till dörrklockan.
Dörrklockan kommer att vara påslagen tills den har fått lite information från telefonen.
När informationen har skickats till dörrklockan behåller appen informationen. Så om du vill göra några ändringar behöver du inte skriva om hela texten.
APK -filen finns på följande adress.
ai2.appinventor.mit.edu/#5902371463495680
Av säkerhetsskäl bör din telefon be dig att verifiera att du vill installera den här appen. På min telefon finns en inställning som heter 'Installera okända appar'.
Rekommenderad:
Arduino Car Reverse Parking Alert System - Steg för steg: 4 steg
Arduino Car Reverse Parking Alert System | Steg för steg: I det här projektet kommer jag att utforma en enkel Arduino Car Reverse Parking Sensor Circuit med Arduino UNO och HC-SR04 Ultrasonic Sensor. Detta Arduino -baserade bilomvändningsvarningssystem kan användas för autonom navigering, robotavstånd och andra
Steg för steg PC -byggnad: 9 steg
Steg för steg PC -byggnad: Tillbehör: Hårdvara: ModerkortCPU & CPU -kylarePSU (strömförsörjningsenhet) Lagring (HDD/SSD) RAMGPU (krävs inte) CaseTools: Skruvmejsel ESD -armband/mathermisk pasta med applikator
Tre högtalarkretsar -- Steg-för-steg handledning: 3 steg
Tre högtalarkretsar || Steg-för-steg-handledning: Högtalarkretsen förstärker ljudsignalerna som tas emot från miljön till MIC och skickar den till högtalaren varifrån förstärkt ljud produceras. Här visar jag dig tre olika sätt att göra denna högtalarkrets med:
Steg-för-steg-utbildning i robotik med ett kit: 6 steg
Steg-för-steg-utbildning i robotik med ett kit: Efter ganska många månader av att bygga min egen robot (se alla dessa), och efter att två gånger ha misslyckats med delar, bestämde jag mig för att ta ett steg tillbaka och tänka om min strategi och riktning. De flera månaders erfarenhet var ibland mycket givande och
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)