Daftar Isi:

EnergyChain: 4 Langkah
EnergyChain: 4 Langkah

Video: EnergyChain: 4 Langkah

Video: EnergyChain: 4 Langkah
Video: Energy-Chain/Cable carier/Cable duct - Inventor 2021 Tutorial 2024, Juli
Anonim
Rantai Energi
Rantai Energi

/* Pekerjaan masih berlangsung */

Energy Chain adalah POC yang menggabungkan IOT dan Blockchain.

Apa yang kami buat memungkinkan orang untuk menjual energi yang mereka hasilkan kepada siapa pun tanpa memerlukan tingkatan apa pun. Untuk memastikan keamanan antara produsen dan konsumen, konsumen dapat menghubungkan apa pun yang diinginkannya dan mendapatkan energi. Kotak mengukur jumlah arus yang dikonsumsi dan menulis setara

Langkah 1: Bahan

Bahan
Bahan
Bahan
Bahan
Bahan
Bahan

Untuk membuat projet ini kita akan menggunakan:

- 1 Raspberry Pi Nol

- 1 sensor arus AS712 (20A)

- 1 ADC 16bit I2C ADS1555

- 1 sensor RFID RC522

- 1 relai 5V

- Konverter 1AC/DC 5V/2A ECL10US05-E dari Farnell

- 1 colokan listrik

Langkah 2: Pengkabelan

Pengkabelan
Pengkabelan

Kita perlu menyatukan semuanya seperti yang ditunjukkan pada gambar, hati-hati dengan arus yang dikirim oleh Raspberry Pi.

Pengkabelan perintah:

  • Daya 3v3 - Relai 5V Vcc/Sensor Arus Vcc/RFID Vcc/ADC Vcc
  • Daya 5v - Konverter AC/DC 5v
  • Ground - Relay 5V GND/Sensor Arus GND/AC/DC converter GND/RFID GND/ADC input dan output GND
  • BCM 2 - ADC SDA
  • BCM 3 - ADC SCL
  • BCM 4 - ADC CLK
  • BCM 6 - SDA RFID
  • BCM 9 - RFID MISO
  • BCM 10 - RFID MOSI
  • BCM 11 - SCK RFID
  • BCM 17 - Relai 5V IN
  • BCM 24 - Atur Ulang RFID
  • BCM 25 - RFID RST

Langkah 3: Kode

Kode ini berfungsi sebagai berikut:

Sensor RFID menunggu tag dan menuliskannya di Terminal. Kemudian sensor arus mengukur jumlah arus AC yang dikonsumsi dan menampilkan di terminal daya sesaat setiap 100 pengukuran. Berkat itu, kita bisa mendapatkan jumlah kWh.

soket impor, json

import sys from threading import Thread from pirc522 import RFID import RPi. GPIO as GPIO ## Import GPIO library import signal import time import Adafruit_ADS1x15 GPIO.setmode(GPIO. BOARD) GPIO.setup(11, GPIO. OUT) GPIO.output(11, Benar) rdr = RFID() util = rdr.util() util.debug = Benar TCP_IP = '172.31.29.215' TCP_PORT = 5000 BUFFER_SIZE = 1024 adc = Adafruit_ADS1x15. ADS1115() def end_read(sinyal, bingkai): global run print("\nCtrl+C ditangkap, akhiri pembacaan.") 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) jika bukan data: break print data dataJSON = json.loads(data) if "message" di dataJSON: print dataJSON['message'] if dataJSON['message'] == "exit": print('Exit demande') GPIO.output(11, GPIO. HIGH) DemandeTag=0 DemandeMesure=0 bol = Salah jika dataJSON['pesan'] == "on": GPIO.output(11, GPIO. LOW) DemandeMesure=1 DemandeTag=1 if dataJSON['message'] == "off": GPIO.output(11, GPIO. HIGH) DemandeTag=1 message='' kecuali Pengecualian sebagai e: lanjutkan 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("Pembacaan kartu UID: "+ID) GPIO.output(11, GPIO. LOW) def Mesure(): mesure_voltage = 0 Nbre_mesure=100 i = 0 sedangkan 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)

Langkah 4: Kotak

Untuk membuat semua elektronik lebih kompak, kami merancang sebuah kotak yang akan berisi semua yang ada di dalamnya. Untuk mengencangkan semuanya, kita akan menggunakan sekrup M3.

Direkomendasikan: