Sisällysluettelo:
Video: InfoBell: 3 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Vietän paljon aikaa pienessä työpajassani puutarhan päässä.
Minulla on työpajassa langaton ovikello, jossa on toistin. Olen jo vähissä, joten voin kestää noin 30 sekuntia päästäkseni etuovelle, jos joku soittaa kelloa. Kun pääsen sinne, jakelija koputtaa jo naapureiden oviin pudottaakseen paketin ja saadakseen allekirjoituksen.
Oma InfoBell kertoo soittajille, että olen heidän kanssaan 30 sekunnin kuluessa (käyttäjän määritettävissä) tai ilmoittaa heille, olenko muuten kihloissa/ulos!
Halusin ovikellon toimivan paristoilla ja täysin itsenäisenä. Näytettävien viestien piti olla käyttäjän määritettävissä ja erittäin helppo vaihtaa IN -viestistä OUT -viestiin.
Käytän Bluetoothia MIT App keksijän Android -puhelinsovelluksen kanssa viestien ohjelmointiin.
Bluetooth -kommunikoinnin alustus- ja IN / OUT -viestien asettamispainikkeet sijaitsevat laitteen alaosassa. Haluttu toiminto valitaan painamalla asianmukaista painiketta ja painamalla pääoven ovikellon painiketta.
Nämä painikkeet ovat aktiivisia vain oven ollessa auki! Se, onko ovi auki vai kiinni, määräytyy digitaalisen kompassin (QMC5883) ja jonkin trigonometrian avulla. Minun on myönnettävä, että minun täytyi käyttää Googlea apuna täällä, koska siitä on jo jonkin aikaa (noin 46 vuotta), kun istuin luokkahuoneessa!
Olisin voinut koodata QMC5883: n lukemat kovasti, mutta ajattelin, että jos joku päättää tehdä tämän projektin, mahdollisuudet, että heidän ovensa oli samaan suuntaan kuin minun, olivat kohtuullisen pieniä!
Ainoa painike, joka on aktiivinen oven ollessa kiinni, on painike, joka asettaa oven sulkeutumistiedot.
Vaihe 1: Voitettavat ongelmat
Minulla oli kolme vaikeutta.
Ensimmäinen oli synkronoida todellinen kellon painallus ja painike arduinon ja näytön alustamiseksi.
Kokeilin monia kahden kytkimen ja mikrokytkimen menetelmiä, mutta ne eivät olleet luotettavia, joten lopulta valitsin DP -releen.
Seuraava ongelma oli itse langaton ovikello. Se toimi hyvin ilman 3D -tulostetun laatikon takaosaa, mutta ei halunnut tehdä yhteistyötä, kun se asennettiin etuovelle! Ratkaisuni oli, että takakannen osa oli noin 1 mm paksu - se teki tempun!
Viimeinen ongelma, joka voitettiin, oli puristaa kaikki komponentit kohtuullisen kokoiseen laatikkoon!
Vaihe 2: Komponentit, rakenne ja miten se toimii
Tällaiselle yksinkertaiselle laitteelle käytin seuraavaa !!
3D -painettu laatikko ja painike
1 x SSD1306 OLED -näyttö
1 x QMC5883
1 x bluetooth -suoja
1 x kaksinapainen rele
1 x itselukittuva rele
5 x PCB -asennuksen kosketuskytkin
2 x 3v paristoa
1 x alkuperäinen ovikello
1 x diodi
1 x pnp -transistori
Jouduin 'lintujen pesimään' johdotukset varmistaakseni, että oli tarpeeksi tilaa puristaa kaikki komponentit laatikkoon - se ei ole siistein projekti, jonka olen koskaan tehnyt!
Käytin 2 x 3v paristoja diodilla pudottaaksesi tarjonnan hieman.
Alkuperäisen ovikellon mukana tuli 12 voltin akku.
Kun ovikellon painiketta painetaan, releen koskettimet sulkeutuvat ja käyttävät alkuperäistä ovikelloa samanaikaisesti asettamalla itselukittuva rele, joka syöttää 5 V: n Arduinolle, Bluetooth -suojalle ja QMC5883: lle.
Kun Arduino on tehnyt työnsä, nasta 12 pulssi on matala, mikä nollaa lukitusreleen (transistorin kautta) poistamalla syöttö.
Kun laite kiinnitetään ensimmäisen kerran KIINNI -oveen, Arduino -nastaan 4 kytkettyä painiketta painetaan samalla, kun ovikellopainiketta painetaan. Tämä syöttää virtaa Arduinolle ja lukee QMC5883: n suunnan ja tallentaa arvon eepromiin. Katso Ohjelmistosivu ja Arduino -luonnos, miten tämä toimii.
Muut 3 painiketta toimivat nyt vain silloin, kun ovi ei ole tässä asennossa eli suljettu.
Viestien ja ajastimen asettamiseksi näppäimeen 7 kytkettyä painiketta painetaan, kun pääkellon painallusta painetaan JA ovi on auki, tämä käynnistää Bluetooth -rutiinin. Asetukset syötetään Mit App Inventer -sovelluksen kautta. Sovellus tallentaa tiedot automaattisesti ja tallentaa tiedot Arduino eepromiin.
IN / OUT -viestin asettamiseksi Arduino -nastoihin 5 tai 6 liitettyjä painikkeita painetaan, kun pääoven kellopainiketta painetaan JA ovi on auki.
Riippuen siitä, mitä painiketta painetaan, eeprom -osoite 0 asetetaan tai nollataan. Arduinon eepromin lukemien/kirjoittamien lukumäärä on rajoitettu. Useimpien viittausten mukaan raja on noin 100 000, mikä tarkoittaa, että jos eeprom kirjoitetaan neljään kertaan päivässä, sen pitäisi kestää noin 55 vuotta ennen kuin ongelmia voi ilmaantua.
Vaihe 3: Ohjelmisto
Ardiuno -luonnoksen ohjelmisto on melko hyvin dokumentoitu standardieni mukaan!
Varmistaaksesi, että eepromissa on kohtuullisia tietoja, poista seuraava komento ja käännä.
Laita kääntämisen jälkeen kommenttimerkit uudelleen ja käännä uudelleen.
EEPROM.begin (); /*
outone = "0";
outtwo = "1";
outthree = "2";
outfour = "3)";
inone = "0";
intwo = "1";
kolme = 10;
*/
Kun valmis projekti on asennettu ovelle oven ollessa kiinni, paina Arduino -nastaan 4 kytkettyä painiketta ja pidä sitä painettuna ja paina kelloa. Viesti vahvistaa toimintasi.
Tämä tallentaa Arduino eeprom -laitteen digitaalisesta kompassista luetut arvot.
Toiminto "diffy" määrittää, onko ovi auki vai kiinni.
tyhjä diffy (int froma, int toa)
{
int diff;
diff = froma - toa;
diff = (diff+180)%360;
jos (ero <= 0)
{
diff+= 180;
}
muu
{
ero -= 180;
}
Lataa seuraavaksi bluetooth. APK matkapuhelimeen. Kun ovi on auki, paina Arduino -nastaan 7 liitettyä painiketta ja pidä sitä painettuna ja paina kelloa. Laite käynnistyy Bluetooth -tilassa. Yhdistä BT -moduuli puhelimeesi, täytä tarvittavat tiedot ja lähetä ne ovikellolle.
Ovikello pysyy päällä, kunnes se on vastaanottanut tietoja puhelimesta.
Kun tiedot on lähetetty ovikellolle, sovellus säilyttää tiedot. Joten jos haluat tehdä muutoksia, sinun ei tarvitse näppäillä koko tekstiä uudelleen.
APK löytyy seuraavasta osoitteesta.
ai2.appinventor.mit.edu/#5902371463495680
Turvallisuussyistä puhelimesi pitäisi pyytää sinua vahvistamaan, että haluat asentaa tämän sovelluksen. Puhelimessani on asetus nimeltä Asenna tuntemattomat sovellukset.
Suositeltava:
DIY Raspberry Pi Downloadbox: 4 vaihetta
DIY Raspberry Pi Downloadbox: Löydätkö usein itsesi lataamasta suuria tiedostoja, kuten elokuvia, torrentteja, kursseja, TV -sarjoja jne., Niin tulet oikeaan paikkaan. Tässä Instructable -ohjelmassa muuttaisimme Raspberry Pi zero -laitteemme latauskoneeksi. Joka voi ladata minkä tahansa
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): 8 vaihetta
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): ultraäänikaiuttimet L298N DC-naarasadapterin virtalähde urospuolisella dc-nastalla ja analogiset portit koodin muuntamiseksi (C ++)
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: 3 vaihetta
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: Seuraava opas auttaa sinua saamaan live-HD-videovirtoja lähes mistä tahansa DJI-dronesta. FlytOS -mobiilisovelluksen ja FlytNow -verkkosovelluksen avulla voit aloittaa videon suoratoiston droonilta
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite
4 vaihetta akun sisäisen vastuksen mittaamiseksi: 4 vaihetta
4 vaihetta akun sisäisen vastuksen mittaamiseksi: Tässä on 4 yksinkertaista vaihetta, joiden avulla voit mitata taikinan sisäisen vastuksen