INHOUDSOPGAWE:

Switch-it, outomatiese uitlaat met intydse stroommeting: 6 stappe
Switch-it, outomatiese uitlaat met intydse stroommeting: 6 stappe

Video: Switch-it, outomatiese uitlaat met intydse stroommeting: 6 stappe

Video: Switch-it, outomatiese uitlaat met intydse stroommeting: 6 stappe
Video: [Обзор] PEN Мультиметр ANENG A3008 2024, November
Anonim
Skakel-out, outomatiese uitlaat met intydse stroommeting
Skakel-out, outomatiese uitlaat met intydse stroommeting
Skakel-out, outomatiese uitlaat met intydse stroommeting
Skakel-out, outomatiese uitlaat met intydse stroommeting
Skakel-out, outomatiese uitlaat met intydse stroommeting
Skakel-out, outomatiese uitlaat met intydse stroommeting
Skakel-out, outomatiese uitlaat met intydse stroommeting
Skakel-out, outomatiese uitlaat met intydse stroommeting

Ek hou baie van outomatisering, die vermoë om te beheer wanneer iets moet gebeur. Dit is wat my laat dink het aan hierdie idee: 'n selfgemaakte outomatiese uitlaat. Dit kan gebruik word om te beplan wanneer ligte aangeskakel moet word, wanneer telefone opgelaai moet word of wanneer 'n skerm aangeskakel moet word. Benewens dit alles, het u die vermoë om te sien hoeveel stroom deur die uitlaat vloei.

Die komponente wat benodig word vir hierdie projek is:

Voorrade

Voordat ons begin, is dit die dinge wat u beslis nodig het om 'n Switch-IT-boks soos myne te bou. Hierdie voorrade kos ongeveer 50 tot 100 euro, afhangende van u streek en huidige pryse.

Hardeware

Elektronika

  • Framboos pi 4
  • 16 GB (of meer) Micro SD-kaart
  • Arduino Uno
  • 5V-3.3V Vlakverskakelaar
  • 5V aflosmodule
  • ACS712 20A - huidige module
  • 1838 IR-ontvanger 37,9 kHz module
  • IR -afstandsbediening (ek gebruik 'n Elegoo -een)
  • algemene katode RGB
  • 3 * 330Ω weerstande
  • druk knoppie
  • RFID-RC522
  • LCD 1602A-1
  • Niko muurprop
  • 10K Ω potmeter
  • 230 tot 5V - 7A kragtoevoer

Kabels

  • USB-B na USB-A kabel
  • USB-C kragkabel
  • Ethernet -kabel

Verskeie

  • Man-vroulike jumperwires
  • Man-man-jumperwires
  • Soldeer blik
  • Krimpende buis

Kassiespesifieke onderdele (OPSIONEEL)

  • 50 * neute en vetdruk
  • metaalkas 40x40x5 cm met deksel
  • dubbelzijdige band
  • 6 * 1 cm hoë afstandhouers
  • geleide houer
  • Klittenband
  • kabelgidse

Sagteware

  • balenaEtcher:
  • PuTTy
  • rasbies
  • Visual Studio -kode
  • Arduino IDE

Stap 1: Stel Rasbian op

Stel Rasbian op
Stel Rasbian op
Stel Rasbian op
Stel Rasbian op

In die eerste plek flits ons Rasbian op die SD-kaart. Ons sal dit doen met behulp van balenaEtcher.

  1. Maak balenaEtcher oop
  2. Kies die Rasbian -prent
  3. Kies u SD-kaart
  4. Druk Flash en wag 'n paar minute totdat dit flikker

Voeg APIPA by in opstartgids: Ons sal 'n APIPA -adres gebruik om instellings op die RPI te programmeer en op te stel. Om dit te doen:

  1. Toegang tot die opstartgids op die SD-kaart
  2. Maak "cmdline.txt" oop
  3. Voeg "169.254.10.1" aan die einde van die dokument by en stoor dit
  4. Voeg 'n lêer met die naam "ssh" by die opstartgids (MOENIE HIERDIE LêER 'N UITBREIDING GEE NIE)
  5. Nadat u dit gedoen het, kan u die SD -kaart van u rekenaar verwyder.

Toegang tot die RPI met behulp van PuTTy

Nou kan ons die SD -kaart in ons RPI aansluit, die RPI aan u rekenaar koppel met 'n ethernetkabel.

Om met die RPI te skakel, gebruik ons PuTTy met ons APIPA-adres.

  1. Maak PuTTy oop
  2. Vul ons APIPA-adres in as gasheernaam (169.254.10.1)
  3. Maak seker dat die poort 22 is en SSH gekies is
  4. Nou kan u die verbinding oopmaak
  5. Die standaard gebruikersnaam is: pi
  6. Met standaard wagwoord: framboos

raspi-config-instellings

Maak raspi-config oop met:

sudo raspi-config

  • Verander die gebruikerswagwoord
  • Kies u tydsone in lokaliseringsopsies
  • Stel WiFi op met behulp van netwerkopsies, dan Wi-Fi-opsie waar u u SSID en wagwoord moet invul.

Installeer Python 3

In hierdie projek gebruik ons Python, daarom stel ons die standaard op Python3 insteat van Python2, met behulp van die volgende opdragte

update-alternatiewe-installeer/usr/bin/python python /usr/bin/python2.7 1

update-alternatiewe-installeer/usr/bin/python python/usr/bin/python3 2

Python pakkette

Ons benodig 'n paar pakkette om alles reg te laat werk, veral die fles -pakkette en een om verbinding te maak met ons databasis. Ons kan die pakkette installeer deur die volgende opdragte te gebruik:

pip installeer Flask

pip installeer Flask_cors pip installeer Flask_socketio pip installeer Python-mysql-connecton

Databasis

Vervolgens gaan ons ons databasisbestuurstelsel (MariaDB) installeer, en ons doen dit met behulp van:

sudo apt installeer mariadb-bediener

Tik "Y" en Enter om voort te gaan. Na 'n paar sekondes is die installasieproses voltooi en MariaDB is amper gereed om te gebruik.

Gebruik die opdrag om die databasis 'n wagwoord te gee:

sudo mysql_secure_installation

Druk dan op Enter, aangesien die huidige wagwoord leeg is. Druk dan op "Y" om 'n wagwoord in te stel; nou kan u die wagwoord invul wat u wil; onthou dit, want ons benodig dit om 'n korrekte verbinding tussen die agterkant en die voorkant te maak.

Druk nou 3 keer op "Y" om: anonieme gebruikers te verwyder, wortel -aanmelding op afstand toe te laat en die toetsdatabasis te verwyder. Druk laastens weer op "Y" om die voorregte te herlaai.

Nou is MariaDB en al die nodige pakkette suksesvol geïnstalleer.

Stap 2: Gryp die kode en stel dit op

Gryp die kode en stel dit op
Gryp die kode en stel dit op
Gryp die kode en stel dit op
Gryp die kode en stel dit op

Noudat ons al die pakkette geïnstalleer het, kan ons die kode gryp.

Die kode is beskikbaar op Github, sodat u dit kan kloon met:

git-kloon

Dit is die voorkant

git-kloon

Dit is die agterkant

Die installering van die databasis self

Om die databasis te installeer, navigeer u na die.sql -lêer wat in die backend -lêergids is met behulp van die volgende opdragte (maak seker dat u dit op u eie pad stel.

mysql

skep databasis switchit verlaat mysql -u root -p switchit <Your_Path_to_Backend_Repo/switchit.sql

Installeer Apache

Noudat ons al die kode en die databasis opstel het, kan ons Apache installeer en ons backend daarop uitvoer. Ons sal dit doen met:

apt -get installeer apache2 -y

Vervang dan die lêers in/var/ww/html met die in die gids van die voorkantmap.

As alles goed verloop, moet u via die APIPA -adres: 169.254.10.1 in u blaaier met u webwerf kan skakel.

Stap 3: Arduino -kommunikasie

Arduino kommunikasie
Arduino kommunikasie

Om ons huidige sensor en ons RFID -sensor te lees, gebruik ons 'n arduino. Gebruik die arduino -kode hieronder. Laai dit op met 'n USB-A na USB-B-kabel en die arduino IDE-sagteware. As dit opgelaai word, is die arduino -deel klaar.

Nou moet ons die naam van die reeksapparaat op die PI vind. Om dit te doen, maak seker dat in /boot/config.txt "enable_uart = 1" reg is. Maak ook seker dat "console = serial0, 115200" uit cmdline.txt verwyder word.

Kontroleer dan die poorte met

ls -l /dev

Dan moet een van die reeksname die Arduino wees. Vul hierdie naam in by die arduinocom -funksie in app.py

ser = serial. Serial ('/dev/ttyS0', 9600)

Doen dit slegs as die reekskommunikasie nie werk nie.

Stap 4: skakel die skakelaar aan

Wiring Up Skakel-dit
Wiring Up Skakel-dit
Wiring Up Skakel-dit
Wiring Up Skakel-dit

Alles is redelik eenvoudig, maar u moet die volgende in gedagte hou:

  • Wees versigtig met die stopcontact, 230 volt kan dodelik wees.
  • Maak seker dat u 'n vlakomskakelaar gebruik vir kommunikasie tussen die RPI en Arduino.
  • Maak seker dat u die rooi en groen pen gebruik voordat u die RGB soldeer. Toets dit vooraf!
  • Toets of niks kortsluit Voordat u die stroombaan aansit nie.

Stap 5: Gebruik die kode

As alles nou korrek verbind is, kan ons ons program uitvoer.

Om 'n lêer outomaties te laat loop tydens die aanvang, skep 'n lêer met:

sudo nano myscript.service

Plak dan (maak seker dat u u eie app.py -gids gebruik:

[Eenheid] Beskrywing = Switchit After = netwerk.target [Diens] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // verander na app.py gids // StandardOutput = erwe StandardError = erwe Herstart = altyd Gebruiker = pi [Installeer] WantedBy = multi-user.target

Druk dan op "ctrl + X" en kopieer dit na/etc/systemd/system.

Dan volg die volgende opdrag om dit outomaties te laat loop:

sudo systemctl aktiveer myscript.service

U kan meer inligting hieroor vind op die RaspBerry Pi -webwerf.

Herlaai en klaar

Herlaai u PI nou met:

sudo herlaai -h nou

Dit is hoe jy Switch-it maak!

Dankie dat u saamgevat het, hoop dit was nuttig. As u wenke of terugvoer het, moet asseblief nie 'n opmerking lewer nie.

Stap 6: (OPSIONEEL) die behuising

(OPSIONEEL) die behuising
(OPSIONEEL) die behuising
(OPSIONEEL) die behuising
(OPSIONEEL) die behuising
(OPSIONEEL) die behuising
(OPSIONEEL) die behuising
(OPSIONEEL) die behuising
(OPSIONEEL) die behuising

U kan die behuising heeltemal volgens u eie smaak bou. Ek gebruik 'n metaalkas met 'n deksel van 40x40x5 cm. Aangesien ek 'n metaal een gebruik het, moes ek gate boor en afstandhouers gebruik om alles van die grondplaat af te kry. Ek het gekies om 'n sentrale punt te gebruik waar die 5V, 3.3V en gnd beskikbaar is. Elke elektriese verbinding word gesoldeer met 'n stuk krimpbuis daarop. Vir die kabelbestuur het ek pads met draerbande gebruik.

Aanbeveel: