Inhoudsopgave:

Energieketen: 4 stappen
Energieketen: 4 stappen

Video: Energieketen: 4 stappen

Video: Energieketen: 4 stappen
Video: Zo stap je over naar Coolblue Energie 2024, Juli-
Anonim
Energieketen
Energieketen

/* Werk nog in uitvoering */

Energy Chain is een POC die IOT en Blockchain combineert.

Met wat we hebben gemaakt, kunnen mensen de energie die ze produceren aan iedereen verkopen zonder dat er een laag nodig is. Om de veiligheid tussen de producent en de consument te waarborgen, kan de consument erop aansluiten wat hij wil en energie krijgen. De doos meet de hoeveelheid verbruikte stroom en schrijft het equivalent

Stap 1: Materialen

Materialen
Materialen
Materialen
Materialen
Materialen
Materialen

Om dit project te maken, gebruiken we:

- 1 Raspberry Pi Nul

- 1 stroomsensor AS712 (20A)

- 1 ADC 16 bit I2C ADS1555

- 1 RFID-sensor RC522

- 1 relais 5V

- 1AC/DC 5V/2A omvormer ECL10US05-E van Farnell

- 1 stopcontact

Stap 2: Bedrading

Bedrading
Bedrading

We moeten alles met elkaar verbinden zoals op de afbeelding wordt getoond, wees voorzichtig met de stroom die door de Raspberry Pi wordt geleverd.

Commando bedrading:

  • 3v3-voeding - relais 5V Vcc/stroomsensor Vcc/RFID Vcc/ADC Vcc
  • 5v Voeding - AC/DC-omzetter 5v
  • Aarde - Relais 5V GND/Stroomsensor GND/AC/DC-converter GND/RFID GND/ADC ingang en uitgang 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 - Relais 5V IN
  • BCM 24 - RFID-reset
  • BCM 25 - RFID RST

Stap 3: Coderen

Deze code werkt als volgt:

De RFID-sensor wacht op een tag en schrijft deze in de terminal. Vervolgens meet de stroomsensor de hoeveelheid verbruikte wisselstroom en geeft in de terminal het momentane vermogen elke 100 metingen weer. Dankzij dat kunnen we de hoeveelheid kWh krijgen.

import-socket, json

import sys van threading import Thread van pirc522 import RFID import RPi. GPIO als GPIO ## Import GPIO bibliotheek import signaal import tijd import Adafruit_ADS1x15 GPIO.setmode(GPIO. BOARD) GPIO.setup(11, GPIO. OUT) GPIO.output(11, True) 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 (signaal, frame): globale uitvoering print("\nCtrl+C vastgelegd, einde lezen.") run = False rdr.cleanup() sys.exit() signal.signal(signal. SIGINT, end_read) def loopRead(s): DemandeTag=1 DemandeMesure=0 bol = True while (bol): if DemandeTag==1: tag() DemandeTag=0 DemandeMesure=1 if DemandeMesure==1: Mesure2() probeer: data = s.recv(BUFFER_SIZE) indien niet data: breek afdrukgegevens dataJSON = json.loads(data) if "message" in dataJSON: print dataJSON['message'] if dataJSON['message'] == "exit": print('Exit demande') GPIO.output (11, GPIO. HIGH) DemandeTag=0 DemandeMesure=0 bol = False if dataJSON['message'] == "aan": GPIO.output(11, GPIO. LOW) DemandeMesure=1 DemandeTag=1 if dataJSON['message'] == "off": GPIO.output(11, GPIO. HIGH) DemandeTag=1 message='' behalve uitzondering als e: continue s.close() def tag(): rdr.wait_for_tag() (fout, data) = rdr.request() time.sleep(0.25) (fout, uid) = rdr.anticoll() ID=str(uid[0])+'.'+str(uid[1])+'.'+str(uid[2])+'.'+str(uid[3]) print("Kaart gelezen UID: "+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 while imax_voltage: max_voltage=readValue if readValue def Mesure3(): print(str(adc.read_adc(0, gain=1))) if _name_ == "_main_": s = socket.socket(socket. AF_INET, socket. SOCK_STREAM) #s.connect((TCP_IP, TCP_PORT)) #s.setblocking(0) loopRead(s)

Stap 4: De doos

Om alle elektronica compacter te maken, hebben we een doos ontworpen waar alles in kan. Om alles vast te schroeven gebruiken we M3 schroeven.

Aanbevolen: