Tartalomjegyzék:
Videó: EnergyChain: 4 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:44
/ * A munka még folyamatban van */
Az Energy Chain egy POC, amely egyesíti az IOT -t és a blokkláncot.
Amit tettünk, lehetővé teszi az emberek számára, hogy az általuk előállított energiát bárkinek eladják, anélkül, hogy szükség lenne rájuk. A termelő és a fogyasztó közötti biztonság biztosítása érdekében a fogyasztó bármit csatlakoztathat a készülékhez, és energiát kaphat. A doboz méri az elfogyasztott áram mennyiségét, és írja be az egyenértéket
1. lépés: Anyagok
A projekt elkészítéséhez a következőket használjuk:
- 1 Raspberry Pi Zero
- 1 áramérzékelő AS712 (20A)
- 1 ADC 16 bites I2C ADS1555
- 1 RFID érzékelő RC522
- 1 relé 5V
- 1AC/DC 5V/2A átalakító ECL10US05-E a Farnell-től
- 1 elektromos aljzat
2. lépés: Kábelezés
Mindent össze kell kötnünk, ahogy a képen is látható, legyen óvatos a Raspberry Pi által szállított árammal.
Parancsvezetékek:
- 3v3 táp - relé 5V Vcc/áramérzékelő Vcc/RFID Vcc/ADC Vcc
- 5V teljesítmény - AC/DC átalakító 5v
- Földelés - relé 5V GND/áramérzékelő GND/AC/DC átalakító GND/RFID GND/ADC bemenet és kimenet 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 - relé 5V IN
- BCM 24 - RFID visszaállítás
- BCM 25 - RFID RST
3. lépés: Kód
Ez a kód a következőképpen működik:
Az RFID -érzékelő várja a címkét, és írja be a terminálba. Ezután az áramérzékelő méri az elfogyasztott váltakozó áram mennyiségét, és 100 mérésenként megjeleníti a terminálon a pillanatnyi teljesítményt. Ennek köszönhetően megkaphatjuk a kWh mennyiséget.
import aljzat, json
import sys from threading import Téma from pirc522 import RFID import RPi. GPIO mint GPIO ## GPIO könyvtár importálása import import import time 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 (jel, keret): globális futás print ("\ nCtrl+C rögzítve, az olvasás befejezése.") run = False rdr.cleanup () sys.exit () signal.signal (signal. SIGINT, end_read) def loopRead (s): DemandeTag = 1 DemandeMesure = 0 bol = Igaz, míg (bol): ha DemandeTag == 1: tag () DemandeTag = 0 DemandeMesure = 1, ha DemandeMesure == 1: Mesure2 () try: data = s.recv (BUFFER_SIZE), ha nem adat: megszakítja a nyomtatási adatokat JSON = 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 = Hamis, ha dataJSON ['message'] == "on": GPIO.output (11, GPIO. LOW) DemandeMesure = 1 DemandeTag = 1, ha dataJSON ['message'] == "off": GPIO.output (11, GPIO. HIGH) DemandeTag = 1 message = '') def tag (): rdr.wait_for_tag () (hiba, adatok) = rdr.request () time.sleep (0.25) (hiba, uid) = rdr.anticoll () ID = str (uid [0])+'. '+str (uid [1])+'. '+str (uid [2])+'. '+str (uid [3]) print ("Kártyaolvasási UID:"+ID) GPIO.output (11, GPIO. LOW) def Mesure (): mesure_voltage = 0 Nbre_mesure = 100 i = 0, míg i def Mesure2 (): mesure_voltage = 0 Nbre_mesure = 200 max_voltage = 0 min_voltage = 32768 mVparAmp = 100 Puissance = 0 i = 0 readValue = 0 míg 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. lépés: A doboz
Az összes elektronika kompaktabbá tétele érdekében egy dobozt terveztünk, amely mindent tartalmaz. Minden csavarozásához M3 csavarokat használunk.
Ajánlott:
DC - DC feszültség Lépés lekapcsoló mód Buck feszültségátalakító (LM2576/LM2596): 4 lépés
DC-DC feszültség Lépés lekapcsoló üzemmód Buck feszültségátalakító (LM2576/LM2596): A rendkívül hatékony bakkonverter készítése nehéz feladat, és még a tapasztalt mérnököknek is többféle kivitelre van szükségük, hogy a megfelelőt hozzák létre. egy DC-DC áramátalakító, amely csökkenti a feszültséget (miközben növeli
Akusztikus levitáció az Arduino Uno-val Lépésről lépésre (8 lépés): 8 lépés
Akusztikus lebegés az Arduino Uno-val Lépésről lépésre (8 lépés): ultrahangos hangátvivők L298N Dc női adapter tápegység egy egyenáramú tűvel Arduino UNOBreadboard és analóg portok a kód konvertálásához (C ++)
Élő 4G/5G HD videó streamelés DJI drónról alacsony késleltetéssel [3 lépés]: 3 lépés
Élő 4G/5G HD videó streaming a DJI Drone-tól alacsony késleltetéssel [3 lépés]: Az alábbi útmutató segít abban, hogy szinte bármilyen DJI drónról élő HD minőségű videó streameket kapjon. A FlytOS mobilalkalmazás és a FlytNow webes alkalmazás segítségével elindíthatja a videó streamingjét a drónról
Bolt - DIY vezeték nélküli töltő éjszakai óra (6 lépés): 6 lépés (képekkel)
Bolt - DIY vezeték nélküli töltés éjszakai óra (6 lépés): Az induktív töltés (más néven vezeték nélküli töltés vagy vezeték nélküli töltés) a vezeték nélküli áramátvitel egyik típusa. Elektromágneses indukciót használ a hordozható eszközök áramellátásához. A leggyakoribb alkalmazás a Qi vezeték nélküli töltő
4 lépés az akkumulátor belső ellenállásának méréséhez: 4 lépés
4 lépés az akkumulátor belső ellenállásának mérésére: Íme a 4 egyszerű lépés, amelyek segítenek mérni az akkumulátor belső ellenállását