Image of eBits Academy computing illustration

Soldriven kryptovalutautvinning - ett utbildningsprojekt

  • January 20, 2022
  • |
  • Jesper Nielsen

Detta helgprojekt bygger en liten soldriven Duino-Coin-miner som ett utbildningsexperiment med ESP32, nätverk och strömförsörjning. Det är ett hobbyprojekt, inte en investering eller ett löfte om inkomster.

Om du inte har hört talas om kryptovaluta

 

 

Kryptovaluta finns digitalt. Många system använder kryptografi och en gemensam transaktionshistorik för att hindra att samma värde används flera gånger; det betyder inte att filer är omöjliga att kopiera. Kan du skapa extra Duino-Coin genom att kopiera en fil? Nej: Duino-Coin är ett centraliserat projekt vars system hanterar saldon och transaktioner. Det ska inte beskrivas som en decentraliserad blockkedja som Bitcoin. Läs projektets aktuella dokumentation om protokoll, drift och begränsningar.

INNEHÅLL

DUINOCOIN

Duino-Coin är en centraliserad valuta som kan utvinnas på Arduino-kort, ESP8266/32, Raspberry Pi-enheter — aktuellt kortutbud; kontrollera exakt Raspberry Pi-modell, gränssnitt och tillbehörskompatibilitet, datorer och smarttelefoner. För att komma igång behöver du en av dessa enheter. I detta projekt använder vi en ESP32 som drivs av en solpanel och batteribank.

SKAPA KONTO

För att skapa ett konto/en plånbok går du till wallet.duinocoin.com i din webbläsare. Skärmen nedan visas; klicka på Create a new wallet.

Ange nu ditt användarnamn, lösenord och e-post. Använd användarnamnet och lösenordet för att logga in i plånboken senare.
Obs: användarnamnet anges också i Arduino-koden tillsammans med nätverksuppgifterna så att minern vet vilken plånbok den hör till.

ESP32-INSTÄLLNING

För att ställa in ESP32 som kryptovalutaminer laddar du ned ett .ino-skript. Det kräver att Arduino IDE är installerat på datorn. Följ vid behov denna guide: Ställ in ESP32 för Arduino och Platform IO

Följande länk visar projektets releaser. Exemplet nedan använder den historiska versionen 2.7.3; kontrollera aktuell dokumentation, filstruktur och kompatibilitet. Ladda ned relevant Sourcecode.ZIP och packa upp den.

Release Release 2.7.3 · revoxhere/duino-coin (github.com) 

I detta exempel öppnar du duino-coin-2.73 i mappen och väljer sedan ESP32_Code

 

Där finns en .ino-fil som heter ESP32_Code.ino. Dubbelklicka på den för att öppna den i Arduino IDE.

 

Innan du bygger och kompilerar anger du tre uppgifter i koden så att ESP32 kan ansluta till nätverket och plånboken som skapades i Skapa konto. Längst upp i källkoden finns följande. Ange dina egna uppgifter och behåll citattecknen "".
// Change this to your WiFi SSID
const char* ssid     = "Your WiFi SSID"; 
// Change this to your WiFi password           
const char* password = "Your WiFi password"; 
// Change this to your Duino-Coin username       
const char* ducouser = "Your Duino-Coin username";
// Change this if you want to display a custom rig   
const char* rigname  = "None";                     

TESTA UTVINNING

Logga in på kontot för att kontrollera om minern är ansluten och känns igen av plånboken.

Minern med namnet Solar-rig visas som registrerad och utvinner mynt. 

BMS (Battery Management System)

Till den soldrivna minern använder vi denna batterihållare med ett 18650-batteri för att driva ESP32 under mörka timmar. Hållaren har en inbyggd 3.3v-regulator som kan driva ESP32.

18650-batteriet köptes från batterilageret.dk. Batterier med olika kapacitet (mAh) finns. Högre mAh betyder att du kan driva ESP32-kortet längre. Projektet använder ett 18650-batteri med 3120 mAh från batterilageret.dk

BMS-specifikationer:

5~8V inspänning
3V & 1A utgång
5V & 2A utgång
LED-indikator (grön betyder fulladdat & röd betyder laddning)
3 x 3V-utgångar
3 x 5V-utgångar

Kontrollera att den aktuella batterihållaren har lämpligt cellskydd, laddningsstyrning och utgångsreglering. En skyddskrets ensam är ingen laddare. Mät utspänningen innan ESP32 ansluts och använd rätt cellpolaritet. Det finns en Micro USB-ingång som här används för att ansluta solpanelen — aktuellt utbud; kontrollera kompatibilitet. USB-A-utgången kan driva USB-A-elektronik.

SOLPANEL — aktuellt utbud; kontrollera kompatibilitet

Målet är ett fristående system som drivs helt av en solpanel — aktuellt utbud; kontrollera kompatibilitet. Följande solpanel — aktuellt utbud; kontrollera kompatibilitet valdes till projektet. Den är angiven till upp till 6W under specificerade testförhållanden. Den faktiska effekten beror på solljus, vinkel och temperatur och måste räcka till ESP32 samt förluster och eventuell batteriladdning. Samtidig drift och laddning kräver en laddningsmodul med lämpligt stöd för power-path/load-sharing; kontrollera dokumentationen.

Solpanelens specifikationer:

Maximal effekt: 6 W
Arbetsström: 1000mA
Arbetsspänning: 6V

Som bilden visar har solpanelen en USB-A — aktuellt utbud; kontrollera kompatibilitetutgång. Kontaktformen garanterar inte reglerad 5V. Kontrollera panelens maximala tomgångsspänning och laddningsmodulens tillåtna ingång; använd en lämplig regulator vid behov. Först när spänningarna är kompatibla ska de anslutas med en USB-A till Micro-USB-kabel.

HELA UPPKOPPLINGEN

Genom att ansluta solpanelen — aktuellt utbud; kontrollera kompatibilitet till batteriskölden kan du driva ESP32 under ljusa timmar, varefter 18650-batteriet tar över. Bilderna nedan visar ett 3D-utskrivet hölje som kan fästas på panelens baksida. Ladda ned och skriv ut höljet eller ladda ned projektet och ändra måtten med parameterinställningarna i Fusion 360.

Mowglli/Projekt_kasse_duinocoin: Filer för slicer och Fusion360-projekt. Höljet är parametriserat så att höjd, bredd och längd kan ändras (github.com)

OTA

Duino-Coin använder OTA så att du kan skicka nya kodversioner till din ESP32 över ett nätverk som stöds. Arduino OTA använder normalt lokal nätverksåtkomst; exponera inte en oskyddad OTA-port på internet. Följ aktuell firmwaredokumentation och använd autentisering där det stöds.
För att kompilera ny kod till din ESP32 med OTA går du till Tools  -> Port: -> Network ports 

BEGRÄNSNINGAR

Här bör Duino-Coin behandlas som ett utbildnings- och hobbyprojekt. Möjligheten att överföra eller växla ett saldo kan ändras; kontrollera projektets aktuella regler och tjänster. Det finns ingen garanti för värde, likviditet, framtida växling eller inkomster. Välj projektet för att lära dig elektronik, inte för en förväntad investeringsavkastning.

 

 

Lämna en kommentar

Observera att kommentarer måste godkännas innan de publiceras.