Sadržaj:

Energetski lanac: 4 koraka
Energetski lanac: 4 koraka

Video: Energetski lanac: 4 koraka

Video: Energetski lanac: 4 koraka
Video: ВСЕ РЕЛИГИИ СЛУЖАТ САТАНЕ? Откровение оккультиста. Предсказание | Контроль теней 2024, Srpanj
Anonim
Energetski lanac
Energetski lanac

/ * Radovi su još u tijeku */

Energetski lanac je POC koji kombinira IOT i Blockchain.

Ono što smo napravili omogućava ljudima da prodaju energiju koju proizvode bilo kome bez ikakvog nivoa. Kako bi osigurao sigurnost između proizvođača i potrošača, potrošač može na njega spojiti što god želi i dobiti energiju. Okvir mjeri količinu potrošene struje i upisuje ekvivalent

Korak 1: Materijali

Materijali
Materijali
Materijali
Materijali
Materijali
Materijali

Za izradu ovog projekta koristit ćemo:

- 1 malina Pi Zero

- 1 osjetnik struje AS712 (20A)

- 1 ADC 16 -bitni I2C ADS1555

- 1 RFID osjetnik RC522

- 1 relej 5V

- 1AC/DC 5V/2A pretvarač ECL10US05-E iz Farnella

- 1 električna utičnica

Korak 2: Ožičenje

Ožičenje
Ožičenje

Moramo sve povezati kako je prikazano na slici, pazite na struju koju isporučuje Raspberry Pi.

Komandno ožičenje:

  • Napajanje 3v3 - Relej 5V Vcc/Senzor struje Vcc/RFID Vcc/ADC Vcc
  • 5v Snaga - AC/DC pretvarač 5v
  • Uzemljenje - relejni 5V GND/osjetnik struje GND/AC/DC pretvarač GND/RFID GND/ADC ulaz i izlaz GND
  • BCM 2 - ADC SDA
  • BCM 3 - ADC SCL
  • BCM 4 - ADC CLK
  • BCM 6 - RFID SDA
  • BCM 9 - RFID MISO
  • BCM 10 - RFID MOSI
  • BCM 11 - RFID SCK
  • BCM 17 - Relej 5V IN
  • BCM 24 - Vraćanje RFID -a
  • BCM 25 - RFID RST

Korak 3: Kodirajte

Ovaj kod funkcionira na sljedeći način:

RFID osjetnik čeka oznaku i upisuje je u terminal. Zatim osjetnik struje mjeri količinu potrošene izmjenične struje i prikazuje na terminalu trenutnu snagu svakih 100 mjera. Zahvaljujući tome možemo dobiti količinu kWh.

utičnica za uvoz, json

import sys iz threading import Thread from pirc522 import RFID import RPi. GPIO kao GPIO ## Uvoz GPIO biblioteke uvoz signala za uvoz Vrijeme uvoza Adafruit_ADS1x15 GPIO.setmode (GPIO. BOARD) GPIO.setup (11, GPIO. OUT) GPIO.output (11, Tačno) rdr = RFID () util = rdr.util () util.debug = True TCP_IP = '172.31.29.215' TCP_PORT = 5000 BUFFER_SIZE = 1024 adc = Adafruit_ADS1x15. ADS1115 () def end_read (signal, okvir): globalno pokretanje print ("\ nCtrl+C snimljen, završetak čitanja.") run = False rdr.cleanup () sys.exit () signal.signal (signal. SIGINT, end_read) def loopRead (s): DemandeTag = 1 DemandeMesure = 0 bol = Točno dok (bol): ako je DemandeTag == 1: tag () DemandeTag = 0 DemandeMesure = 1 ako je DemandeMesure == 1: Mesure2 () pokušajte: data = s.recv (BUFFER_SIZE) ako nije podatak: prekinite podatke ispisa JSON = json.loads (data) if "message" u dataJSON: ispis podatakaJSON ['message'] if dataJSON ['message'] == "exit": print ('Exit demande') GPIO.output (11, GPIO. HIGH) DemandeTag = 0 DemandeMesure = 0 bol = Netačno ako je dataJSON ['message'] == "on": GPIO.output (11, GPIO. LOW) DemandeMesure = 1 DemandeTag = 1 ako je dataJSON ['message'] == "off": GPIO.output (11, GPIO. HIGH) DemandeTag = 1 message = '' osim iznimke kao e: nastavite s.close () def tag (): rdr.wait_for_tag () (error, data) = rdr.request () time.sleep (0.25) (error, uid) = rdr.anticoll () ID = str (uid [0])+'. '+str (uid [1])+'. '+str (uid [2])+'. '+str (uid [3]) print ("URI za čitanje kartice:"+ID) GPIO.output (11, GPIO. LOW) def Mesure (): mesure_voltage = 0 Nbre_mesure = 100 i = 0 while i def Mesure2 (): mesure_voltage = 0 Nbre_mesure = 200 max_voltage = 0 min_voltage = 32768 mVparAmp = 100 Puissance = 0 i = 0 readValue = 0 dok imax_voltage: max_voltage = readValue if readValue def Mesure3 (): print (str (adc.read_adc (0, gain = 1))) ako je _name_ == "_main_": s = socket.socket (socket. AF_INET, socket. SOCK_STREAM) #s.connect ((TCP_IP, TCP_PORT)) #s.setblocking (0) loopRead (s)

Korak 4: Kutija

Kako bismo svu elektroniku učinili kompaktnijom, osmislili smo kutiju koja će sadržavati sve unutra. Za pričvršćivanje svega koristit ćemo vijke M3.

Preporučeni: