Inhaltsverzeichnis:

Energiekette: 4 Schritte
Energiekette: 4 Schritte

Video: Energiekette: 4 Schritte

Video: Energiekette: 4 Schritte
Video: Energiekette/Schleppkette E4.1 - Montageanleitung 2024, Juli
Anonim
Energiekette
Energiekette

/* Arbeiten noch im Gange */

Energy Chain ist ein POC, das IOT und Blockchain kombiniert.

Was wir gemacht haben, ermöglicht es den Menschen, die Energie, die sie produzieren, an jeden zu verkaufen, ohne dass eine Stufe benötigt wird. Um die Sicherheit zwischen Erzeuger und Verbraucher zu gewährleisten, kann der Verbraucher daran anschließen, was er möchte und Energie beziehen. Die Box misst die verbrauchte Strommenge und schreibt das Äquivalent

Schritt 1: Materialien

Materialien
Materialien
Materialien
Materialien
Materialien
Materialien

Um dieses Projekt zu machen, verwenden wir:

- 1 Raspberry Pi Zero

- 1 Stromsensor AS712 (20A)

- 1 ADC 16bit I2C ADS1555

- 1 RFID-Sensor RC522

- 1 Relais 5V

- 1AC/DC 5V/2A Wandler ECL10US05-E von Farnell

- 1 Steckdose

Schritt 2: Verkabelung

Verdrahtung
Verdrahtung

Wir müssen alles zusammen verdrahten, wie es im Bild gezeigt ist, achten Sie auf den Strom, den der Raspberry Pi liefert.

Befehlsverkabelung:

  • 3v3 Leistung - Relais 5V Vcc/Stromsensor Vcc/RFID Vcc/ADC Vcc
  • 5V Power - AC/DC-Wandler 5V
  • Masse - Relais 5V GND/Stromsensor GND/AC/DC Wandler GND/RFID GND/ADC Ein- und Ausgang 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

Schritt 3: Code

Dieser Code funktioniert wie folgt:

Der RFID-Sensor wartet auf einen Tag und schreibt ihn in das Terminal. Dann misst der Stromsensor die Menge des verbrauchten Wechselstroms und zeigt im Terminal alle 100 Messungen die momentane Leistung an. Dank dessen können wir die Menge an kWh erhalten.

Import-Socket, json

sys aus Threading importieren Thread aus pirc522 importieren RFID importieren RPi. GPIO als GPIO importieren ## GPIO-Bibliothek importieren Signal importieren Importzeit importieren 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(signal, frame): global run print("\nStrg+C erfasst, Lesen beenden.") 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() try: data = s.recv(BUFFER_SIZE) wenn nicht data: break print data 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'] == "on": GPIO.output(11, GPIO. LOW) DemandeMesure=1 DemandeTag=1 if dataJSON['message'] == "off": GPIO.output(11, GPIO. HIGH) DemandeTag=1 message='' außer Ausnahme wie e: weiter s.close() def tag(): rdr.wait_for_tag() (Fehler, Daten) = rdr.request() time.sleep(0.25) (Fehler, uid) = rdr.anticoll() ID=str(uid[0])+'.'+str(uid[1])+'.'+str(uid[2])+'.'+str(uid[3]) print("Kartenlese-UID: "+ID) GPIO.output(11, GPIO. LOW) def Mesure(): mesure_voltage = 0 Nbre_mesure=100 i = 0 während 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)

Schritt 4: Die Box

Um die gesamte Elektronik kompakter zu machen, haben wir eine Box entworfen, die alles enthält. Zum Anschrauben verwenden wir M3-Schrauben.

Empfohlen: