Jag hade en tanke på att centralenheten också skulle kommunicera med solpanelernas laddningsregulator över Modbus, men den tanken har jag skrotat. Regulatorns Modbus klarar endast 9600 baud, vilket är på tok för långsamt. Det skulle uppstå sådana väntetider på svar, att programmet helt enkelt skulle haka upp sig.
Tyvärr skulle nog en del av de 24 olika parametrar som regulatorn kan erbjuda kunna vara mycket nyttiga och användbara, så jag har som plan B att låta en separat processor, ex. en Arduino Nano, kontinuerligt samla in parametervärdena över Modbus, och sedan på begäran leverera "de senaste" till centralenheten över I2C (400 kbps).
Jag tänker ändå, att den inkommande sommaren tittar jag hur långt man kommer med befintliga sensoreringar och parametrar. Ifall de parametrar som nu s.a.s uteblir, skulle kunna förbättra beräkningarna, så får jag planera det tillägget nästa vintersäsong.
En sådan viktig parameter, vilken endast regulatorn kan ge är, att laddningen av batterierna går över i s.k ”floating”. Det är nämligen då som regulatorn anser att batteriet är fullt laddat.
Den uppgiften behövs bl.a för att beräkna i vilket skick batteriet är. Mellan två tillfällen av ”Batteriet fullt laddat” räknar man hur mycket laddning man tagit ut Cout [As] och hur mycket laddning gått in Cin [As] och förhållandet mellan dessa Cout/Cin [%] anger konditionen. (As är ju samma som Coulomb, men jag mäter Ampere, och jag mäter sekunder, därför As

Av en kommentator tidigare i tråden fick jag veta, att ett nytt batteri grovt sett kan ligga på ca 90%, men att det ganska snart kan falla till 60..70%. I något skede faller nivån sedan så lågt, att det börjar bli dags att byta ut batteriet. Vet inte exakt vilken nivå det är, men det märker man sedan. => Viktigt att ha något man kan följa.
Sedan sägs det, att speciellt blybatterier (som används här), trots att de är batterier avsedda för solpanelsanläggningar, inte tycker om att alltför ofta tömmas mycket, att det tär på livslängden.
Jag har försökt hitta mera information om den saken, men det verkar bara finns riktgivande information, inget som man kunde använda i beräkningar.
Förhoppningen är förstås, att jag genom att kontinuerligt följa med laddnings- och urladdningsnivåer, hur ofta och hur mycket och sådant, skall lära mig att förstå hur det hänger ihop.
Man kunde kanske då försöka optimera belastningen av batteriet på ett annat sätt.(?)
Men som sagt, det blir ingen Modbus nu åtminstone. Senare…
Menyhanteringen, eller meny-”navigeringen”, som jag kallar rutinen, är uppbyggd utgående från LCD-displayens begränsningar: 4 rader á 20 tecken och styrd av Hitachi-kretsen HD44780. (Den kretsen har redan minst 40 år på nacken, men är de facto standard för små textdisplayer – trots sina egenheter och begränsningar.)
Alla menyer har max 4 rader och max 18 tecken. Den näst sista teckenpositionen på raden är ett tomrum före den sista, vilken är reserverad för cursorn, vilken är en pil till följande meny (”>”).
Menyhierarkin är som ett [liggande] träd, med pil Vänster går man till föregående nivå [mot roten], med pilarna Upp och Ner flyttar man cursorn till föregående/följande rad, och med pil Höger går man till följande nivå enligt den rad som cursorn står på. Inga menyer ”scrollas” (har inte flera än fyra rader), bara för att hanteringen blir enklare så.
Det sätter kanske en del begränsningar, men jag tycker nog att jag får ihop en tillräckligt logisk menyuppdelning ändå. Det här användargränssnittet är ju trots allt inte för vilken användare som helst, utan endast för ”tränade” systemadministratörer. Viss statusinformation får och kan vem som helst titta på, men alla egentliga inställningar kräver, att man först klarat av pin-koden.
I slutändan på grenarna i menyträdet kan man sedan ställa in 1 - 4 parametrar. Vissa tas i användning genast, andra kräver kvittering med att trycka Enter (t.ex. tid och datum ställer du in alla "delar", och först därefter kvittering).
För menyerna behövs en hel del textsträngar och för hierarkin behövs parametrar vilka pekar på föregående/nästa nivå. Det kan vara besvärligt att hantera alltihop, i synnerhet då man vill lägga till eller ändra menyer och nivåer. När jag höll på med mitt växthusprojekt utvecklade jag ett system i LibreOffice Calc (som MS Excel). Kalkylbladet producerar automatiskt både textsträngarna och menykartan så, att man med enbart Copy-Paste kan flytta in dom i Source-filen.
Jag hade tänkt lägga in några bilder av displayen och navigeringen, men LCD-displayen verkar uppdateras med en sådan frekvens, att absolut ingen text syns på bilden. Jag skall försöka med en kort video, i annat fall kanske bara skissa upp det.
Jag får återkomma till det.