Satura rādītājs:

EnergyChain: 4 soļi
EnergyChain: 4 soļi

Video: EnergyChain: 4 soļi

Video: EnergyChain: 4 soļi
Video: D4 Sorc Chain Lightning Crackling V2 2024, Jūlijs
Anonim
EnergyChain
EnergyChain

/ * Darbs vēl turpinās */

Enerģijas ķēde ir POC, kas apvieno IOT un Blockchain.

Tas, ko mēs izveidojām, ļauj cilvēkiem pārdot saražoto enerģiju ikvienam bez nepieciešamības. Lai nodrošinātu drošību starp ražotāju un patērētāju, patērētājs var pievienot tam visu, ko vēlas, un iegūt enerģiju. Kastīte mēra patērētās strāvas daudzumu un uzraksta ekvivalentu

1. solis: materiāli

Materiāli
Materiāli
Materiāli
Materiāli
Materiāli
Materiāli

Lai izveidotu šo projektu, mēs izmantosim:

- 1 Raspberry Pi Zero

- 1 strāvas sensors AS712 (20A)

- 1 ADC 16bit I2C ADS1555

- 1 RFID sensors RC522

- 1 relejs 5V

- 1AC/DC 5V/2A pārveidotājs ECL10US05-E no Farnell

- 1 elektrības kontaktligzda

2. solis: Elektroinstalācija

Elektroinstalācija
Elektroinstalācija

Mums viss jāsavieno kopā, kā parādīts attēlā, esiet uzmanīgs pret Raspberry Pi piegādāto strāvu.

Komandu vadi:

  • 3v3 barošana - relejs 5V Vcc/strāvas sensors Vcc/RFID Vcc/ADC Vcc
  • 5V barošana - maiņstrāvas/līdzstrāvas pārveidotājs 5v
  • Zeme - relejs 5V GND/strāvas sensors GND/AC/DC pārveidotājs GND/RFID GND/ADC ieeja un izeja 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 - relejs 5V IN
  • BCM 24 - RFID atiestatīšana
  • BCM 25 - RFID RST

3. darbība: kods

Šis kods darbojas šādi:

RFID sensors gaida atzīmi un pieraksta to terminālī. Pēc tam strāvas sensors mēra patērētās maiņstrāvas daudzumu un terminālī parāda momentāno jaudu ik pēc 100 mērījumiem. Pateicoties tam, mēs varam iegūt kWh daudzumu.

importa ligzda, json

importēt sistēmu no pavedienu importēšanas Pavedienu no pirc522 importēt RFID importēt RPi. GPIO kā GPIO ## Importēt GPIO bibliotēkas importa signāla importēšanas laika importēšanu 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 (signāls, kadrs): globāla darbība print ("\ nCtrl+C notverti, beidzas lasīt.") run = False rdr.cleanup () sys.exit () signal.signal (signal. SIGINT, end_read) def loopRead (s): DemandeTag = 1 DemandeMesure = 0 bol = True, kamēr (bol): ja DemandeTag == 1: tags () DemandeTag = 0 DemandeMesure = 1, ja DemandeMesure == 1: Mesure2 () mēģiniet: data = s.recv (BUFFER_SIZE), ja ne dati: pārtrauciet drukas datu datusJSON = json.loads (dati), ja datos ir "ziņojums" JSON: drukāt datus JSON ['ziņojums'], ja dati DemandeTag = 0 DemandeMesure = 0 bol = Nepareizi, ja datiJSON ['message'] == "on": GPIO.output (11, GPIO. LOW) DemandeMesure = 1 DemandeTag = 1, ja dati) def tag (): rdr.wait_for_tag () (kļūda, dati) = rdr.request () time.sleep (0.25) (kļūda, uid) = rdr.anticoll () ID = str (uid [0])+'. '+str (uid [1])+'. '+str (uid [2])+'. '+str (uid [3]) print ("Kartes lasīšanas UID:"+ID) GPIO.output (11, GPIO. LOW) def Mesure (): mesure_voltage = 0 Nbre_mesure = 100 i = 0, kamēr i def Mesure2 (): mesure_voltage = 0 Nbre_mesure = 200 max_voltage = 0 min_voltage = 32768 mVparAmp = 100 Puissance = 0 i = 0 readValue = 0 kamēr 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)

4. solis: kaste

Lai padarītu visu elektroniku kompaktāku, mēs izveidojām kastīti, kurā būs viss iekšpusē. Lai pieskrūvētu visu, mēs izmantosim M3 skrūves.

Ieteicams: