Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Slimme huisautomatisering via Android-app & IoT

Onderdelen en benodigdheden

  • Arduino Yun
  • Arduino Mega 2560
  • Arduino UNO
  • Servomotor
  • Adafruit Standard LCD - 16x2 Wit op Blauw (2x)
  • Numeriek toetsenblok
  • Buzzer
  • DHT11 Temperatuur & Vochtigheidssensor (4 pinnen)
  • LED (generiek) (5x)
  • Ventilatormodule
  • Drukknopschakelaar 12mm (SparkFun)
  • Vlamensensor
  • Logitech C270 HD-webcam
  • Relais (generiek)
  • Glühlamp
  • Breadboard (generiek)
  • Draaddraadjes (generiek)
  • SD-kaart
  • HC-05 Bluetooth-module
  • RFID-lezer (generiek)

Benodigde tools en machines

  • Solderbout (generiek)

Apps en online diensten

  • Blynk
  • Temboo
  • Arduino IDE
  • PuTTY
  • Arduino Meet Robot applicatie

Over dit project

Video

Voordat we verdergaan, raad ik aan om de projectvideo te bekijken om te zien hoe alles werkt en wat de coole functies zijn.

Samenvatting

De afgelopen jaren is "slimme huizen" een heel populair begrip geworden. Veel mensen probeerden hun eigen versie van slimme huisarchitectuur te bedenken, maar de meeste ontbreken integratie van apparaten. Beveiliging is ook een groot zorgpunt. Communicatietechnologieën die gebruikt worden zijn Bluetooth, GSM, Zigbee, etc. – allemaal met voor- en nadelen. In mijn afstudeerjaar probeerde ik een geïntegreerde slimme huisarchitectuur te implementeren die bewaakt en bestuurd kan worden via een gebruiksvriendelijke mobiele app. Alle systemen zijn onderling verbonden en stemcommando's zijn toegevoegd voor besturing binnen een bepaalde bereik. Hier zijn de kenmerken:

  • Twee-niveaus beveiligingssysteem met numeriek toetsenblok en RFID voorkomt toegang voor inbrekers.
  • Online uploaden van foto bij inbraak, live videobewaking waar video naar lokale server wordt geüpload en via webbrowser bekeken kan worden.
  • Omgevingsmonitoring via sensoren (DHT11, vlamensensor, MQ3, MQ135) door Android-app.
  • Apparaten besturen (LED, servomotoren, etc.) via Android-app.
  • Automatische planning van apparaten op basis van gebruikersvoorkeuren via app.
  • Huis bereidt apparaten (geiser, koffiezetapparaat) voor op basis van voorkeuren wanneer gebruiker thuiskomt.
  • Apparaten besturen met stemcommando's.

Vereisten

  • Kennis van C-programmeren
  • Vertrouwdheid met Arduino IDE en code uploaden naar Arduino-boards

Instructies – Volg deze stappen

Bekijk eerst mijn video voor een beeld van de werking en aansluitingen.

Stap 1 – Heel het systeem bedraden

Maak verbindingen volgens het schakelschema. Er zijn veel verbindingen, wees geduldig en werk zorgvuldig. Ik raad aan een huismodel van karton te maken voor een realistischer gevoel. Let op de PIR-bewegingsensor – die is gevoelig voor valse positiefs. Bevestig hem stevig.

RFID-aansluiting:

  • MOSI → Pin 51
  • MISO → Pin 50
  • SCK → Pin 52
  • SS/SDA → Pin 9
  • RST → Pin 8

Verbind ook pin 20 van de Mega met pin 2 van de Arduino Yun en pin 21 van de Mega met pin 3 van de Yun voor I2C-communicatie.

Stap 2 – Temboo-account aanmaken en Dropbox API instellen

Maak een account op Temboo. Registreer met e-mail, vul gegevens in, maak je eerste app aan. Sla de accountgegevens op (app-naam, key). Je kunt dit later altijd terugvinden onder "My Account" → "MANAGE" bij APPLICATIONS.

Je hebt de Temboo Python SDK nodig om foto's naar Dropbox te uploaden. Download van Temboo Python SDK, pak uit en plaats in de root van de SD-kaart als map "temboo".

Maak een Dropbox-account op Dropbox. Maak een app aan via Dropbox Developers:

  1. Kies "Create app", selecteer "Dropbox API".
  2. Kies "Files and datastores" voor foto-opslag.
  3. Noteer App key en App secret.
  4. Zet "Permission type" op "App folder" (beveiliging).
  5. Gebruik Temboo's InitializeOAuth (link) met App key/secret om callback ID en tijdelijke token secret te krijgen. Bevestig autorisatie via Dropbox-link.
  6. Gebruik FinalizeOAuth (link) met App key/secret, callback ID, tijdelijke token secret om finale Token key en Token secret te krijgen. Noteer deze.

Stap 3 – Drivers installeren in Arduino Yun

Installeer PuTTY, open het, voer het IP-adres van je Arduino Yun in, kies SSH, klik Open. Gebruikersnaam: root, wachtwoord: je gekozen wachtwoord (standaard "arduino"). Je werkt nu direct op de Yun.

Voer volgende commando's uit (Yun moet internetverbinding hebben):

  1. opkg update – pakketbeheerder updaten
  2. opkg install kmod-video-uvc – UVC-drivers installeren
  3. opkg install python-openssl – Python OpenSSL installeren
  4. opkg install fswebcam – fswebcam installeren voor foto's maken

Stap 4 – Live videobewaking

Installeer extra pakketten op de Yun via SSH:

  1. wget https://www.custommobileapps.com.au/downloads/mjpgstreamer.ipk – download mjpg-streamer pakket (ook in projectcode beschikbaar als link niet meer werkt)
  2. opkg install mjpg-streamer.ipk – installeren
  3. Start live streaming: mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 640x480 -f 25" -o "output_http.so -p 8080 -w /www/webcam" &

Toegankelijk via browser: https://[jouw_yun_ip].local:8080/stream.html

Stap 5 – Twilio-account instellen voor SMS

Registreer op Twilio. Noteer Account SID en Auth Token. Koop een gratis nummer, verifieer het ontvangernummer onder "Verified Caller IDs". Log in op Temboo, ga naar Twilio SendSMS Choreo, vul Twilio-gegevens in. Klik "Run Now", noteer extra info, sla profiel op met een naam. Vervang in Arduino Yun-code regel 208 your_profile_name met je profielnaam. Test of "Run Now" geen fout geeft.

Stap 6 – Blynk-account en app configureren

Download Blynk-app uit Play Store: Blynk. Maak account, nieuw project, hardware: Arduino Yun. Auth Token krijg je per e-mail. Maak vier tabs: Home, HVAC, Monitoring, Control. Voeg widgets toe volgens gedetailleerde instructies in originele project (te lang om hier volledig te herhalen). Klik "Run" in de app.

Gefeliciteerd! Je kunt nu huisomgeving monitoren en besturen vanaf je Android-smartphone.

Stembesturing van apparaten

Download AMR_VOICE-app, koppel Bluetooth met HC-05. Flash de "voice control for arduino uno" code naar de Arduino UNO. Klik "Connect Robot" in de app. Zorg dat smartphone gebundeld is met HC-05. Druk op microfoon-icoon en spreek de commando's uit de code om apparaten aan/uit te zetten.

Laat me weten als je problemen ondervindt. Sommige stappen zijn niet in detail getoond omdat ik uitga van basiskennis van Arduino, C en Linux. Stel vragen in de comments als je vastloopt.

Let op: Alle documenten en code zijn gemigreerd naar mijn publieke Git-repository: GitHub. Download broncode, schema's en architectuurreferentie. Voor bijdragen of nieuwe features: pull request. Issues: GitHub issues.

Cheers!

Code

De volledige codebase is beschikbaar op mijn GitHub-repository: https://github.com/akib-islam/Android-App-Based-Home-Automation-System-Using-IOT. Voor extra features: pull request indienen.

Schema's

Schema's downloaden van dezelfde GitHub-repository.

Productieproces

  1. Universele Android-afstandsbediening bouwen met Arduino, 1Sheeld en IR-besturing
  2. Real-time IoT hartslagmonitor met Arduino en MAX30100
  3. Externe IoT-besturing van een zelfgebouwde robotarm
  4. Bouw een Android-bestuurd extern voertuig met Raspberry Pi Motor Shield
  5. Slimme huisautomatisering & beveiligingssysteem bouwen met 1Sheeld
  6. Naadloze LED-dimmer met Bolt IoT en Arduino UNO
  7. Web-IoT Meter Bouwen met Arduino, Yaler en IFTTT
  8. Slimme Plantenwateringssysteem met Arduino Nano
  9. Slim plantenmonitoringssysteem met AWS IoT
  10. Alexa-ingeschakelde Arduino Thuiscontroller: Slimme Automatisering Made Simple
  11. Arduino Beveiligingssysteem: Slimme Bewegingsdetectie & Alarm