Pagina's

dinsdag 23 juni 2020

Voortgang 2.

21-2-2022

Of is het nou andersom: zonder tegenvallers geen doorbraken.

Het gehele project ligt stil, en wordt herzien.

De laatste wijzigingen aan de regenmeter, deed veel meer slecht dan goed. Het dataverkeer door de regenmeter nam zoveel stroom weg, dat het display in de huiskamer stond te knipperen.

Het spanningsverlies in de datakabel, en dan natuurlijk de stroomvoorziening, is zodanig groot, dat ik een drastische maatregel moet nemen.
En dan kijk ik hoe ons elektriciteitsnet is opgebouwd. Ik ga de spanning verhogen naar 24volt. Het elektriciteitsnet werkt ook met hoogspanningen, en dat is zonder flauwekul gewoon voor het beperken van de energieverliezen. Een verdubbeling van de spanning, bij mij van 12 naar 24 volt, geeft slechts een kwart van de energieverliezen.

Bijna alle stations moeten nu op de schop. En zeker op de plaatsen waar geen digitale DC/DC converter in zitten, maar een voorschakelweerstand. Ook op plaatsen waar bovendien direct gebruik wordt gemaakt van de 12 volt.

De voedingsvoorziening van het geheel gaat bovendien helemaal veranderd worden. Alleen het kastje blijft hetzelfde.
Na verloop van tijd zijn daarin dingen veranderd, eruitgehaald, geplaatst en weer veranderd. Een zooitje alom.
En dan kies ik ook nog om de bestaande 12 volt, zowel van de accu als de adapter, te behouden, en om te zetten naar 24volt. Hiermee bespaar ik behoorlijk wat mee.
Bovendien kan ik enkele zaken nog wat verbeteren, is de verwachting.


13-2-2022.

Zonder doorbraken geen tegenvallers.

Wat nu weer.
Als ik bij het éne de problemen oplos, worden de problemen opgeschoven naar een ander deel.
Zelfs met het inpluggen van de buitenstations, is er een zodanige dip in de spanning dat de bediening in de huiskamer herstart.
Vervelender is nu ook, dat bij datatansmissie vanuit het regenstation het display in de woonkamer reseted. Hoezo spanningsverliezen in de bekabeling.

Het spanningsverlies in de kabels is van die orde, dat ik hier drastisch op moet aanpassen.

Ik ga hetzelfde principe toepassen als het elektriciteitsnet. Dus omhoog met de spanning, en pas bij de stations transformeren. Hierdoor wordt de stroom door de kabeltjes aanzienlijk lager, dus heb ik minder verliezen in de kabel. 
Dat komt dan ten goede aan de spanning aan de stations.
Ik zit te denken aan een spanning van 24 volt, en misschien nog meer, maar dat is dan makkelijk op te schroeven. Want ik neem geen 24 volt voedingsapparaat, maar ga uit van de oorspronkelijke 12 volt, die ik omhoog breng naar 24 volt.

Maar dat betekend dat ik echt overal op zijn minst een dc/dc converter moet plaatsen; een serieweerstand is niet meer genoeg.
Op enkele plaatsen heb ik ook nog 12V verbruikers, dus moet ik daar een extra converter plaatsen.

Opgeteld heb ik nog 6 converters nodig.
En dan nog alles ombouwen. Step by step.


4-3-2022.

Wederom een doorbraak.
Nu het netwerk. Ik heb geen vastlopers meer in het zonneoog en de regenmeter.

Op 26-1 heb ik na elke bitbewerking een delay(10) geplaatst, en dit is het resultaat.
De voorzichtige redenering hieraan vooafgaand was, dat bitmanipulaties op de achtergrond zouden worden afgewerkt, terwijl ik het resultaat zoals die zou moeten worden, al aan het gebruiken was. Oftewel, je kunt niet straffeloos eten terwijl het gerecht nog wordt klaargemaakt. Ik bouw nu een half uur wachttijd in, met de veronderstelling dat het eten dan wel klaar zou kunnen zijn. Het is een gok.


3-2-2022.

Alweer een hele ontdekking gedaan: met grote mate van zekerheid de hoofdoorzaak van de problemen van de regenmeter ontdekt.
SPANNIINGSVERLIES op de kabel.

Alles werkt heel erg mooi volgend de plannen die ik maak. De 5volt die ik op elk station nodig heb, betrek ik uit de 12volt die ik meestuur met de netwerkkabel. Schommelingen tot 6 volt verlies, worden daarmee opgevangen.
Maar hoe zit het met verbruikers in de stations die 12volt nodig hebben? Tja, daar heb ik niet voldoende bij stilgestaan.

Om één of ander reden bedacht ik dat de oorzaak misschien wel eens zou kunnen liggen aan het spanningsverlies in de kabel. 
Ik was dit alweer een beetje vergeten, waardoor ik daar geen aandacht meer aan besteedde. En ineens dacht ik eraan, en gelijk een proef genomen.
Ik heb de regenmeter in de kamer opgesteld. Dat is ongeveer halverwege de bekabeling, van als die in de tuin staat.
EN wat bleek: zelfs in de kamer kwam de pomp maar nauwelijks op gang. Laat staan in de tuin.
En hier zit dus DE oorzaak, van alle storingen, waarmee ik al vanaf het begin van deze regenmeter mee kamp. Want als de regen uit de beker gepompt moet worden en dat gebeurt niet, dan wordt alles nat in de regenbeker, ook de elektronica.

Nu heb ik al heel veel elekronica uit de regenbeker gehaald, ook niks mis mee hoor, en samen met het epoxyseren (bestaat deze naam al) draagt het wel bij aan een beter ontwerp van de regenmeter.

Maar hoe los ik dit op. Ik had 2 opties:
  1. de spanning opkrikken. Dat gaat tegenwoordig zo mooi.
  2. het bijplaatsen van een buffer in de vorm van een accu.
Nu zijn er heel mooie dingetjes in de handel dat een spanning kan opkrikken. Als voorbeeld kan uit een penlite batterij 12 volt gecreerd worden, geen probleem. Er zit wel een maar aan: het gaat wel ten koste van de aangeboden 12volt, wat zijn weerslag kan hebben op de andere stations. De vraag is dan, hoe ver kan ik gaan om deze methode straffeloos te gebruiken. Dat vond ik te riskant.
Dus heb ik voor een accu gekozen.

Maar hoe zwaar moet een accu zijn? Want hij hoeft maar heel even, maximaal 10 seconden, energie te leveren. En dan ook nog, werk soort accu. Zo kwam LiIon voorbij, maar dat vergt een zeer dure oplaadtechniek, omdat die geen druppellading aan kan.
NiMH is eigenlijk de beste optie. De voorloper hiervan, de NiCd, zou een zeer goede optie zijn, ware het niet dat die met een geheugenconflict zit. Die zou ik dan om de zoveel tijd helemaal moeten ontladen en weer opladen. De te leveren stroom voor de pomt zou die moeiteloos moeten kunnen leveren, maar toch.
De NiMH heeft het geheugeneffect niet, dus moest het die worden.

Om te kunnen bekijken wat het energieverbruik van de pomp precies doet, omdat ik de piekstroom nodig heb voor het bepalen van de grootte van de accu, heb ik een klein programmaatje geschreven, waarmee ik op de seriele plotter van arduino de stroomopname kan bekijken. Zo kan ik in 55miliseconden 500 waarnemingen zien. Een prachtig beeld. En zo kreeg ik inzicht in de structuur van het verbruik van de pomp in de vorm van de absolute piekstroom en de nominale, zeg maar de normaalstroom.

Na een dag lang zoeken naar een heel kleine accu van 12 volt, was dat niet de goede weg. Ik kwam op zeer dure oplossingen, samengestelde  accu's voor speciale doeleinden.
Ook het zelf samenstellen van 10 accubatterijen in potlood of penlite werd véél te groot, want ik zit ook met ruimtegebrek.

En een blokje van 9volt dan? Hm, zal de pomp goed lopen op 9volt? Dat bleek dus het geval. En zo ben ik op een 9volt accu gekomen voor.... €4,99.
Die ga ik constant druppelladen, dat zou moeten kunnen.
Wel voor alle zekerheid, plaats ik een temperatuursensor op de accu, want bij overladen wordt de aangevoerde energie omgezet in warmte, en is dus een maat voor een volle accu.


24-1-2022.

Het is een bewogen periode geweest.
EN.. ik heb iets heel leuks.

De regenmeter is toch weer een flop als ik het buiten opstel. Binnen een dag een overgelopen regenbeker door storingen.
Waarschijnlijk is de stekerverbinding van de loadcell heel erg gevoelig voor vocht.

De stap die ik nu zet is om de elektronica volledig uit de regenbeker te verbannen. Dit houdt in, dat ik met 2 kabels naar de regenmeter moet gaan. De elektronica komt dan volledig in een kastje buiten de regenmeter. En dat kastje is absoluut spuitwaterdicht, zoals dat zo mooi heet.

En ik ga met goede epoxyhars aan de gang. 
Er komt ook een warmteweerstand onder in de regenbeker, waarmee ik hoop dat er minder condens ontstaat.
De warmteweerstand en de thermosensor wil ik appart ingieten in de hars, zodat er geen vocht bij kan komen.
Het pompje kan wel wat vocht aan, kan ik ook niks aan doen. Misschien áls dit problemen geeft, kan ik het helemaal inpakken.

De loadcell is zo'n kwetsbaar ding, en met name de bedrading, dat ik dit inmiddels flink heb gestabiliseerd. De draadjes op verschillende plaatsen vastgelijmd aan het vaste deel van de weegconstructie.
Ja, en daardoor moet ik echt een stekerverbinding houden om aan het kabeltje vast te maken.
De stekerverbinding heb ik nu overkapt, een dakje gemaakt. Dit is nu én vastgelijmt, én overgoten met hars.

Ja, de hars.
Dit verdient extra aandacht.
De 2-componentenlijn, epo-x-y van Bison, was een vreselijk gedoe. Te stroperig, niet goed te mengen, en uit te gieten al helemaal niet. Blaaaooiii...
Ik had me daardoor al voorgenomen om bij gelegenheid echte epoxy aan te schaffen.
Op epoxyshop.nl ben ik daar zeer goed in geslaagd. Vele soorten en hoeveelheden.
van flesjes 180 gram tot bulk in grote containers. Voor sieraden tot gietvloeren. Veelbelovend.
Ok, besteld vóór het weekend. Mogelijk zaterdag in huis.
Maandag nog niks, maar wel een mail voor tevredenheidsonderzoek. (?)
Ik een mail terug. Hoezo tevreden.
Gelijk een mail terug. Moet dan toch echt morgen in huis zijn.
Volgende dag weer geen zending, wel een email dat pakketje is afgegeven bij een point, omdat ik niet thuis was. Hoezo niet thuis.....
Beetje irritatie alom.

Ondertussen ben ik met een loadcell die ik nog had liggen van een vermeende uitval, een klein weegschaaltje gemaakt, waarmee ik heel eenvoudig de twee componenten kan mengen in de juiste verhouding. Dat had ik eenvoudig opgezet, en werkte goed.

Ondertussen pakketje opgehaald, ik helemaal blij natuurlijk. 
Mailtje van epoxyshop, dat ik het pakketje in bezit had, wenste me veel plezier ermee.
Ik antwoord, en tevens mijn idee verteld over mijn weegschaaltje.

En toen is het begonnen.
Een heel geinteresseerd mailtje terug. Dat zou dé oplossing zijn van hun problemen van de juiste verhouding bij elkaar brengen. De juiste verhouding is heel erg belangrijk, want chemie verbruikt elkaar, totdat het goed is, en als er iets van de één of de ander over is, blijft het als appart product erin zitten, en wordt het zo'n troep.

Ik heb een demo-filmpje opgestuurd. Hij helemaal enthousiast. Zag ook dat het meer zou aansluiten bij hun als het tot 30 kilo zou gaan. Ook een mooie weegschaal gezien waarin het opgebouwd zou kunnen worden.
De bedoeling zal zijn dat ik mijn systeem in de weegschaal van hun inbouw, om eens te kijken hoe het fuctioneert. Maar dat is een volgende stap, die ik binnenkort verwacht.

Het programma dat ik hiervoor geschreven heb, is toepasbaar van enkele grammen (praktijk bij mij is om en nabij 2 gram samenstelling) tot 30 kilo bij hun op de werkvloer.
Ondertussen is epoxyshop bezig om bij een chinese leverancier te kijken of zij ook zoiets hebben. Verwachting is van niet. Maar china doet niet moeilijk als het op ontwerpen aankomt, in tegenstelling tot andere landen.

En zo ben ik verwikkeld in een heel leuke uitdaging met een toch wel flink bedrijf. Kijk maar eens op internet.

En dan levert een hobby toch leuke uitdagingen op.
Wordt vervolgd.


3-1-2022.

SD opslag station.

Afgelopen dagen ben ik bezig geweest om bruikbare tabellen te krijgen voor excel.
En ineens ging het heel erg snel.
Waar ik al vele maanden tegenaan hik, kwam nu in een stroomversnelling.

Handmatig elke dag een verzameltabel maken was veel te omslachtig. Dat zie ik me niet elke dag doen.

Maar we hebben computers!
En op de SD zit er een heel grote. Niet groter dan een luciferdoosje (ken je die nog?), maar met een hart van goud. Dat dingetje kan voor mij eindeloze dingen doen. Tabellen samenstellen bijvoorbeeld.
Ik zei al, het ging ineens heel erg snel.

Als basis word er per dag een verzameltabel gemaakt. Hierin staan alle data van alle stations, per minuut een resultaat. Ik had deze al eerder handmatig gemaakt. De grafieken die daaruit voortkomen zijn indrukwekkend.

Verder krijg ik van hier uit een uurtabel. Data dat per uur worden verzameld in een maand tabel. Elke maand krijg ik een nieuwe tabel, met elk uur een waarde.

Elk jaar krijg ik een tabel met waarden van elke dag, de dagtabellen.

En ik krijg een maandtabel, een tabel waarin elke maand een waarde wordt uitgeschreven. Deze tabel is eindeloos.

Ik zou ook nog een weektabel kunnen maken, in een eindeloos bestand. Moet ik nog bekijken, kan altijd nog.

Maar waarvan dan?
  1. buitentemperatuur, de thermometer.
  2. luchtvochtigheid buiten, de hygrometer.
  3. luchtdruk, de barometer.
  4. regenmeter, in mm per 5 minuten, uur, dag en maand.
  5. windsnelheid gemidd per minuut, uur en dag.
  6. windsnelheid piek per minuut, uur en dag.
  7. windrichting, gemiddeld per minuut en uur.
  8. zonneschijn, aantal seconden per minuut, uur, dag en maand.
En ik heb ze nu allemaal tegelijk werkend. Nog niet alles buiten, de windmetingen en de regenmeter nog binnen, maar er zit nu schot in.

Waar ik ook naar ga kijken is, of ik een USB monitor programma kan vinden waarmee ik rechtstreeks naar bestand kan opslaan. misschien zelfs in excel bestand. Arduino heeft een zeer simpele, kan ik alleen maar kijken, en met selecteren kopieren naar kladblok of word. Leuke zoektocht. 
Als een lezer een idee heeft wat ik daarvoor moet hebben, houd ik me aanbevolen.


GELUKKIG NIEUW JAAR ALLEMAAL.

29-12-2021

Het zonneoog heb ik helemaal omgegooid.
Het bleek niet haalbaar een enig stabiele situatie te krijgen. En welke factoren zou ik er nu weer bij moeten halen? Hoe hoog is de temperatuur? Zou ik last kunnen krijgen, dat de 2 diodes niet exact gelijk zouden kunnen zijn?
Allemaal vragen die het criterium wanneer er zon wordt gedetecteerd, roet in het eten kunnen gooien.

En dus gooi ik het over een andere boeg. 
De dallas temperatuursensor.
Die heb ik al op meer plaatsen in het project zitten. Maar de vraag is hoofdzakelijk: kan het de hoge temperatuur wel aan? de sensor kan 150graden aan.
Tja, eigenlijk weet ik nieteens hoe heet het kan worden onder de glazen bol.
Dus laat ik gewoon maar eens eraan beginnen.

Ik bouw het oog op dezelfde manier op als de pyranometer, alleen in plaats van de diodes heb ik nu de dallas sensor geplaatst. Het koperen dakje heb ik erop gelijmt, en bovendien zwart gemaakt, neemt beter de temperatuur over.
Al gauw kwam ik er achter, dat de temperatuur helemaal niet zo veel omhoog gaat als de zon erop schijnt. In de winter zou ik dan dus heel andere waarden krijgen dan in de zomer, omdat de buitentemperatuur heel erg van invloed zal zijn.
Ik heb nu een 2e dallas sensor geplaats onderin het doosje buiten. Dit is mijn referentie.
Overigens, de dallas sensor heeft een heel hoge nauwkeurigheid van enkele honderdsten graden. En daar is dus geen spreiding in, wat ik met de diodes wel had.
Na wat testen is het verschil in temperatuur onderin en bovenin het doosje niet echt groot. Ik houd zelfs slechts 2 graden aan als criterium dat de zon schijnt.
Bovendien kreeg ik condens onder in het bolletje. Daartegen heb ik twee dingen gedaan: silica gel en een warmteweerstand. De gel is bekend, dat zijn die droogkorreltjes die altijd in een katoenen zakje zit. Die worden vaak meeverpakt in voor vocht kwetsbare producten. De warmteweerstand is inderdaad gewoon een weerstand die de zaak een paar graden opstookt. Beiden heb ik onderin het doosje zitten.

Afgelopen dinsdag hadden we af en toe wat zonneschijn, zo rond 13:15 uur. Die zag je goed terug in de data, dus het schijnt te werken.


Van de regenmeter heb ik het kleine printplaatje onderin de regenbeker ingegoten in de epoxyhars. Dit ga ik binnenkort buiten uitproberen, maar dan moet het eerst een beetje beter weer zijn hoor.
De epoxyhars heb ik trouwens verkregen van 2 componentenlijm van Bison,
epo-x-y heet het.. Ik vind het wel een heel gedoe, en je knijpt er gewoon 2 halve tubes lijm in. (de lijm en de harder). Het verwerkt ook niet lekker.
Nu heb je andere producten in de handel. Twee componenten die je mengt. Gewoon in potjes of bussen. van 300cl tot 10 kilo! En ook nog in dikke stroperige tot zeer dunne varianten. Het uiteindelijke resultaat is een knoerthard blok, dat sterker is dan beton. En in verhouding met de lijm vele malen goedkoper. Dit wordt dan wel mijn volgende aankoop, als ik meer met epoxy wil gaan doen.




9-12-2021

Sinds 15-11 de regenmeter op de testbank gehad. Geen storingen. Welliswaar zonder water.
Ik had ook de kleine printplaat buiten de regenbeker hangen.
Afgelopen 2 dagen met water gewerkt. Ook geen storingen. Dan toch vocht het probleem??
Ik ga de loadcell en de temperatuursensor appart naar de arduino brengen. De sensor is seriele communicatie, en de loadcell heeft een weerstandwaarde van 1kΩ, dus ik verwacht geen storingen op de langere bekabeling. En anders zien we dán wel weer.


De pyranometer heb ik in elkaar geknutseld.

De kortgewiekte diode met de ragdunne koperdraadjes eraan.

De samengestelde onderdelen.

Samenstelling koperen plaatje, diode en plastic staafje als drager.
Met 2-seconden lijm aan elkaar geplakt.

Hier dan het geheel.











De windvaan  heb ik bordeau-rood geschilderd. (had ik liggen) Dit om schitteringen van de zon in het plexiglas te voorkomen. Dat gaf wat lichtflitsen in de ruimte.


15-11-2021

De intensiteit liggen de laatste weken op de regenmeter en het zonneoog.

De regenmeter krijg ik maar niet storingvrij. Zelfs op de testbamk is hij een keer vastgelopen. Hierin zie ik nog niet echt een patroon, dus de oorzaak blijft gissen.


Bij het zonneoog ben ik een volslagen andere weg ingeslagen.
Als je de historie van zonnemetingen bekijkt, maken ze gebruik van de zonne-straling, de warmte van de zon dus.
Tot voor kort (2006) werd de zon via een brandglas (bolvormig, omdat het van alle kanten moet werken) op een stuk papier met indelingen beschenen.
Je raad het al: als de zon schijnt, wordt er papier gebrand. Bij bewolking dus niet.
Dit heet overigens een pyranometer. (pyr van piromaan, brand..., denk ik)
Nu kan de temperatuur behoorlijk oplopen; 150grC is niet zeldzaam.
Tja, hoe meet je dat.
Met een bimetaal zou het mooiste zijn, wordt er beschreven. Maar deze blijken erg duur.
Een kleine diode kan meestal die temperatuur wel aan.
Een diode, de 1N4148, heeft een heel strak temperatuurverloop op de doorlaatspanning. Van 0 - 90 graden een verloop van 0,2 volt. Weinig? Welnee! gewoon versterken.
Op internet is wel weer iets te vinden. Hierop heb ik een variant bedacht.

Ik gebruik hiervoor wel het doosje met het bolle graasje, dat van kunstof is.

Het rondje met de punt in het midden, is de diode.
Het hoedje daar bovenop een dun koperen plaatje, dat zwart is gemaakt.
De vlakke kanten van dat plaatje staan in oost/westelijke richting; de zon staat dan laag. Rond het middaguur stast de zon hoog genoeg om het gehele plaatje te beschijnen. Via dit plaatje wordt de diode opgewarmd.

De diodes maken deel uit van een brug. De andere kant van de brug zijn 1% weerstanden. De 2e diode is exact dezelfde diode als de diode onder het hoedje. Deze zet de brug bij schaduw in evenwicht, en is zo een mooi referentiepunt.


21-10-2021

Een gevalletje van flinke schade: 7 stuks arduino Nano kapot.
Ik weet niet wát ik precies heb gedaan, maar ik heb 7 stuks uitval.
Zeker een deel heeft te maken met beschadiging door een te hoge spanning, het andere deel is me niet helemaal duidelijk. Ik heb ook wel eens een print gehad waarop een foutje zat, waarbij twee aansluitingen op de arduino aan elkaar zaten. Welliswaar héél minuscuul, maar toch. Met het blote oog niet te zien. En in hoeverre dit de beschadiging heeft veroorzaakt, is me niet duidelijk.
Enfin, ik moet er dus weer een paar aanschaffen.


En dit bijna allemaal met de regenmeter. Die heb ik in zijn loopbaan al eens verwisseld van hier binnen met buiten. Met de regenmeter heb ik ook alle arduino's die ik nog had liggen, uitgeprobeerd. De ene gaf het binnen een uur al op, de andere pas na 3 dagen. 
De arduino's die het hielden, heb ik appart gehouden. één ervan heb ik nu in de regenmeter zitten, Maar eenmaal buiten ging het weer mis.

Ik ben nu een duurtest-opstelling klaar staan. Maar eens door laten draaien.
Hoger op de plank staat een schaal met water. Via een slang met een klem erop, laat ik druppelgewijs water lopen in de regenmeter. De afvoer van de pomp loopt ook weer in een schaal.

Ik zal maar weer eens wat doen aan de opslag, het uiteindelijke doel van het hele weerstation. Ik ben benieuwd wat de opslag allemaal als resultaat heeft, want de vorige keer was het niet helemaal vlekkeloos verlopen. Ik kreeg vervelende storingen, waardoor ik gecrachte bestanden kreeg. Hmm.. niet echt fijn.


11-10-2021

Vandaag een bijzondere ontdekking, of eigenlijk een bevestiging voor wat ik dacht.
Ik heb de laatste tijd al veel te maken gehad met niet goed lopende, zelfs van steeds vastlopende arduino's.

Zoals ik al eerder zei: ik dacht op een gegeven moment aan conflicterende datastromen. Nu gebruik ik SoftwareSerial, maar ook de hardware serial wordt altijd aangesproken, al hangt er geen computer aan de USB. De Serial.-opdrachten doen wel iets in het programma.

Nu ik de problemen steeds meer met de regenmeter kreeg, heb ik het hier eerst uitgeprobeerd.
Eerste maar een versie met alle Serial.print-opdrachten in de commend geplaatst. Dit gaf zeer goede resultaten, totaal geen vastloper meer.
Nu heb ik een wissel gemaakt (SerialPrintAnable) die standaard op false staat. Zelfs de Serial.begin wordt daarmee niet geactiveerd.
Hiermee heb ik ook geen vastlopers.

Nu kunnen er drie dingen aan de hand zijn:
1. verkeerde update van de bibliotheken, zowel Serial als softwarSerial.
2. verkeerde arduino NANO, want die heb ik er laatst nieuwe gekocht.
3. defecte arduino. De laatste serie nano's hebben de nare eigenschap om slecht op de 12volt ingang te reageren; heb ik nooit eerder meegemaakt. Volgens de leverancier kunnen de nano's geen 12volt aan, hooguit 9volt. Dat slecht reageren houdt een spontane reset in. (door oververhitting van de print?? door de spanningsregelaar)

Op 1. heb ik geen invloed, hooguit melden.
Op 2. heb ik wel invloed: 
Op 3. is gewoon gebeurd, en de status is mij nu onbekend. Wel heb ik nog een ongebruikte van de laatste serie, zodat ik die serie kan uitproberen.

Test de software van de regenmeter op een oudere arduino. Daarvoor kan ik de arduino gebruiken uit de 2e monitor, helaas wel eentje met de oude bootloader. En anders omwisselen met de ventilatie.
En natuurlijk met de SerialPrintAnable op true.
Hiermee ga ik weer de duurtest in. Ben erg benieuwd.
Als dit goed werkt, probeer ik die ongebruikte Nano uit de laatste serie. Ben benieuwd.

Een ander puntje is de baudrates van de serials, 9600 voor de hardware Serial, 4800 voor de softwareSerial.
Nu heeft dit altijd goed gewerkt!! Maar ik heb toch eens goed gegoogled, met name over baudrates en conflicten. Daar wordt toch wel op ingegaan, en niet positief. Ik heb het nog niet helemaal op een rijtje, wat dat betekend voor mijn project. Misschien eens in het forum aankaarten. Maar eerst de testjes uitvoeren.


30-9-2021

Voortgang, wát voortgang!
Het zit even niet mee.
Veel van wat ik aanpak, flopt op de een of andere manier.
Desondanks pak ik toch telkens de draad weer op.

Het zonneoog heeft twee keer een metamorfose ondergaan. Ik was toch niet echt tevreden met het uiteindelijke resultaat. Want hoe kan ik nou de zon bepalen met als referentie het gemiddelde van de afgelopen 1000 metingen? (dat zijn 50 minuten). Dat klopt gewoon niet. In de grafiek ziet dat er heel indrukwekkend uit, maar daar is het wel mee gezegd.

Ik was ook niet tevreden met de sensorwaarden als de zon aan de horizon staat. De sensoren keken recht omhoog. Nou, daar is dus geen zon 's-morgens vroeg en 's-avonds laat.
Ik heb wat geexperimenteerd met de sensoren op 30⁰.
Ook het wit maken van de tussenschotjes heb ik geprobeerd. Maar toen had ik bijna geen verschil meer tussen de sensoren.
Uiteindelijk heb ik een zwarte mousepad gekocht en dat als tussenschot gebruikt. Wel nog de sensoren op 30⁰, en nu ben ik dik tevreden.
Alleen nog de duurtest doen over enkele dagen, met visuele waarneming wanneer het nou echt zonnig is en echt bewolkt. Het lijkt erop dat dit verschil in de sensoren aanzienlijk is, dus goed te gebruiken.

De regenmeter werd van kwaad naar veel erger.
De regenbeker is enkele keren naar binnen gehaald. Hij staat nu weer op mijn tafel.

Arduino NANO, tja, ook zoiets!
Ik heb dus contact met de leverancier gehad. "Ze mogen hooguit 9Volt hebben" Uuuhhh.. o ja? Ik dacht tot 16 volt. Jaja, de originele, die chinese dingetjes niet hoor. 😵
Goed, dan gewoon direkt op 5Volt aansluiten, want die heb ik meestal wel aan boord van de stations. En anders maken we 5Volt.
Het rare gedrag van de regenmeter was daarmee gelijk opgelost...... dacht ik.

Regenmeter.
Ik moest nu een andere printplaat maken, en die in een appart kastje plaatsen.Toen begon de ellende pas echt.
Om één of andere reden ging het niet meer. Steeds loopt het programma vast, of slechts deels. Jaha, dat kan ook, deels. Vraag me niet hoe dat kan, maar een programma kan ook voor de helft werken.
Nu zijn er programmatisch een hoop dingen die fout kunnen gaan. Met name verwijzingen naar niet bestaande lokaties. Arduino probeert dit gewoon uit te voeren. Ik moet er zelf voor zorgen dat die verwijzingen goed zijn.
Later bleek de printplaat niet geheel correct gemonteerd. Een sluitinkje en vuile ruimte tussen de sporen heb je zo. Ook kwam ik fabrikagefoutjes tegen van de printplaat. Slordig afgewerkte zaagsneden tussen de sporen. De splinters koper hingen erbij. Ook het herhaaldelijk schooonkrabben en borstelen van de printplaat lijkt het niet goed te doen aan de kwaliteit.
Maar ook de papieren printplaat en vocht combinatie is ook niet leuk. En ik denk dat ik het daarin moet zoeken.
Ik heb nu nieuwe printplaten besteld van epoxy. Glasvezel en hars. Uitstekende eigenschappen. 
Waarom dan niet gelijk epoxy toegepast? Mijn hofleverancier heeft het niet, niet dat type dat ik wil. En de prijs...... Maar nu kost het dubbel. (zucht) 

Maar eerst ga ik een paar dagen met vakantie.

1-9-2021

Wat laat ik jullie schandalig in de steek zeg! Alsof er niets is gebeurd.
Of eigenlijk, er is zóveel gebeurd, dat ik het overzicht een beetje kwijt ben voor de BLOG. Maar ik ga een poging wagen.

Zonne-oog.
Voor enkelen een oude bekende.
Een bolletje met daaronder 4 sensoren, LDR's voor de techneuten. Gescheiden door zwarte schotjes, in een vierkant opgesteld.
De gedachte is dat er altijd minstens één in de volle zon staat, en minstens één in de volle schaduw.

Om een mooi beeld te krijgen van de hoeveelheid zon op een dag, doe ik elke 3 seconden een waarneming. (4 stuks, 4 sensoren). Daaruit kies ik de sensor met het meeste licht, en één met het minste licht. Hoe groter dit verschil, hoe feller de zon is, is de gedachte. Want als er geen bewolking is, is de hoeveelheid licht aan de schaduwzijde zeer gering. Als er bewolking is, is er veel lichtreflexi aan de schaduwzijde van de bewolking, dus meer licht aan die zijde.

Als je één en ander in grafiekjes uiteenzet, krijg je een goed beeld wanneer de zon schijnt.

Even aanklikken, dan heb je een duidelijk beeld.
De groene lijn is het maximale licht op de sensoren. De rode lijn het minimale.
De donkerblauwe lijn onderin het verschil van die twee.
De paarse lijn is het gemiddelde van de laatste 1000 waarnemingen van de groene.
De oranje lijn een vaste maat van 400.
Onderaan een lichtblauwe rechte lijn een vaste maat van 100.
De 2e van boven (rose) geeft aan wanneer de zon schijnt. (berekend). hoog is zon, laag is geen zon.
De bovenste blauwe lijn is een tussenstand voor de zon.
Er is zon, als: 
  • groen (maximum) boven de lijn 400 (oranje) uit komt.
  • én groen (maximum) boven paars (gemiddelde) is.
  • én het verschil (blauw) boven 100 (lichtblauw) zit.
Dit blijkt in de praktijk heel redelijk te zijn.

Om het echt heel goed te krijgen, moet ik een hele dag heel allert zijn op het weer buiten. Hiervan moet ik tot op de minuut bijhouden, hoe het met het luchtdek is.
En dan is het nog afwachten hoe het in een ander jaargetijde is.
Blijft finetunen hoor.

Acculader.
De acculader voor de fiets van Yvonne heeft lang stilgelegen. De tegenslagen daarvoor waren daar reden van.
Uiteindelijk heb ik er voor gekozen om een eenvoudige acculader aan te schaffen.
Om toch te zorgen dat het niet uit de hand kan lopen, heb ik er een klein kastje bijgebouwd. Deze houdt de temperatuur van de accu in de gaten, en schakeld zonodig uit.
Normaal wordt de toegevoerde energie voor het laden in de capaciteit van de accu gestopt. Is de accu vol, dan wordt de toegevoerde energie omgezet in warmte.

Met een eenvoudig schakelingetje, wordt deze temperatuur in de gaten gehouden, en schakeld de lader uit bij stijging van die temperatuur. De accu bezit al een temperatuuropnemer, dat aan de steker wordt doorgegeven.






Weerhuisje.
Die heeft ook een verandering ondergaan. Dit zijn de vochtigheid en de temperatuurmeting.
Ik was niet tevreden over de afvoer van de warme lucht rondom de sensoren.

Ik heb nu een extra pijp aangebracht, met daarboven een piepklein ventilatortje. De gedachte is, dat de buitenlucht van onderaf door de pijp wordt gezogen.
In de pijp zitten de sensoren.
Buiten de pijp wordt de zon afgeschermd door het dakpannetjes-effect van de soepkommetjes en de bordjes. 

Dit heeft buiten verwachting een zeer goed resultaat. De temperatuur geeft heel natuurgetrouw weer.

Regenmeter.
Aanvankelijk ging dit goed.
Maar, waar of niet, regen bleek de boosdoener. Verzin ik niet zelf hoor.

Ik moets dus een afdoende manier vinden om de printplaat droog te houden.
Ik probeer nu iets met een dubbele bodem in de constructie, maar ben bang dat ik wel weer een appart kastje moet maken voor de printplaat. Maar eerst nog even op deze manier proberen. Want alles in 1 constructie vind ik wel zo mooi.

Ik heb nu weer de regenmeter op mijn werktafel staan.
Wat me vandaag ook overkwam, is een fout in de nieuwe serie arduino's, die ik vorige maand heb aangeschaft. Het blijken dingetjes met een eigen wil te zijn. En ik bepaal middels het programma, wat het moet doen, en dan is een eigen wil niet fijn. 
Ik heb inmiddels contact gehad mer de leverancier. Hij vertelde dat ik niet de enige was. Voorlopig heb ik er twee toegestuurd gekregen. Ik moet hem op de hoogte houden.

Makkie.
De spoelautomaat van de vijver van een vriend heeft een update nodig. Dit apparaat is uit het jaar nul, althans zo lijkt het.
Twee jaar terug maakte ik houtjes-touwtjes programma's. Afgelopen jaren ben ik heel erg gegroeid in het schrijven van programma's. En dat merk je in dit project.
Ik ben nu een geheel nieuw programma aan het schrijven. Dit kost alleen tijd, en geen materiaal. Maar wel weer leuk om te doen.

Windmeting.
Dit is een heel leuk project geworden.

Van plexiglas heb ik alles bebouwd, zoals het de bedoeling was.
Alleen de lagering van de as zijn toch kogellagers geworden.
Heel misschien worden die ooit nog vervangen voor magnetische lagers, want dat was de originele opzet.

Tussendoor kijk ik nog steeds stiekem op internet naar onderwerpen over magnetische lagers. En telkent ontdek ik weer andere feitjes.

En zo hoop ik uiteindelijk toch een goed idee te krijgen hoe ik het moet aanpakken.

Maar zoals het nu is, werkt het goed. De pijl "valt" nog wel een bepaalde kant op, maar dat heeft dus met die lagers te maken. Want die hebben vanwege de geringe afmetingen, een wat schokkend verloop in de omtrek; het lager is niet in een exact rond gat geplaatst, zodat je de kogeltjes "voelt" bij het ronddraaien.
In het programma vang ik dat "vallen" op door alleen naar de pijl te kijken, als het harder waait dan windkracht 1, en dat is in te stellen. Dus als de pijl door geen-wind een bepaalde kant op valt, wordt dat niet meegenomen in de meting.

Het windmolentje is goed zoals het is. Super soepel draaiend, al 2 jaar.
Die vervang ik pas, als ik een goed concept heb voor de magnetische lagers.

ventilatie.
Het ventilatiesysteem, eigenlijk mijn eerste thuisproject, was ook aan een opfrisbeurt toe.
Daarna bleek deze erg te storen op het netwerk. Alhoewel de ventilatie niks met het weerstation te maken heeft, heeft deze vanaf het begin wel deel uitgemaakt van het netwerk. Dit, omdat op andere plaatsen in huis, bijvoorbeeld de keuken, deel uitmaakt van de ventilatie. En als je dan tóch een netwerk door het huis hebt lopen, dan maar gelijk daarvan gebruik gemaakt.
Dit was even een opfrissertje.

Dus, veel storing op het netwerk.
Nu heb ik het communicatieprotocol verschillende keren aangepast, maar de ventilatie bleef daarin wat achter. Ik heb destijds in een hap-snap de ventilatie aangepast, maar enkele dingen over het hoofd gezien. Dit heb ik nu aangepast.
Maar nu is het nog niet helemaal goed. Echt even de tijd voor nemen.

voeding.

De centrale voeding van het project dus.

Ik had al lange tijd de behoefte om het laadcircuit van de interne accu zo optimaal mogelijk af te regelen. Dat wil zeggen, 13,8 volt is 80% lading, is de meest gebruikte veilige marge. 14,2 volt is de maximaal toegestane grens. Bovendien blijft de accu in druppellading. Ik heb het laadcircuit afgesteld op 14,15 volt. Bovendien kan ik dit precies aflezen aan de VU-meter in het kastje van de voeding. 
Na dit droog afregelen dacht ik, dat het wel goed zat. Nu het netwerk er weer aan hangt, zakt de laadspanning van de accu. En toch regel ik die niet bij, omdat een kapotte accu veel schadelijker is.

Om de accu fit te houden moet ik deze elke maand even laten werken (stekervoeding er tijdelijk uit halen.)

19-4-2021

Even iets heel anders, en dat kan bij mij, dat weet je.
f1-Lawaai om zeep!

Als je formule 1 kijkt, zal het je wel opgevallen zijn dat het lawaai van het circuit heel erg op de voorgrond wordt gedraaid, ten koste van het commentaar. En dat allemaal om het race-belevenis van het publiek op te schroeven. Nou, van mij hoeft het niet.

En ik, electronicus in hart en nieren, moet daar tocht iets op kunnen verzinnen!
Ja, maar het is toch niet zo eenvoudig.

Nu heeft het commentaar de eigenschap puur mono te zijn, en het lawaai stereo. Nou, dacht ik, daar is wel wat mee te doen.
Want hoe werken karaoke-apparaten? Juist, heel vaak met de zangonderdrukking van een bestaande single.

Na wat uitgeprobeerd te hebben ben ik er nog steeds niet uit hoe ik het moet aanpakken. Ja, wel wát ik moet doen, maar het lukt nog niet hoe ik het moet doen.

Op internet is alles te vinden, heb ik altijd geroepen. Nou, mooi niet dus.

Dus zelf maar wat uitproberen.
Ik gebruik daarvoor de opamp. De redenatie is, als ik op de 2 ingangen Links en Rechts zet, ik de mono eruit filter.

Ja, ik zie je al denken, het moet toch  andersom. En dat is nu net het probleem dat opgelost moet worden.

Ik ben begonnen met grote stappen, snel thuis, maar dat werkte niet.
Nu probeer ik het stapje voor stapje, en..... dat werkt ook niet.

Ik geef er normaal gesproken niet snel de brui aan, maar hier geef ik toch echt even (?) de moed op. Resultaat, zie forto.

Misschien later weer, als de herrie van de formule 1 me toch erg te veel wordt.




6-4-2021

Nu mijn windvaan klaar is, wacht ik op redelijk weer, om dat ding op het dak te zetten en af te stellen. Het hagelt en sneeuwt erg vandaag, en we zijn er nog niet van af.

Wat ik wilde, is nu voor elkaar: op afstand bepaalde parameters instelen op de windvaan.
Het heeft wat hoofdbrekens gekost, maar het werkt nu.
Want wat is het geval: als je zo bezig bent met het instellen, dan wil je niet gestoord worden door andere data dat over het netwerk lopen.
Ik heb daartoe een prioriteitenverbinding moeten ontwikkelen, kortweg de prior.
Omdat zo'n priorverbinding tussen twee explesiete stations plaatsvind, heb ik het stationBestemming ge-her-introduceerd. Bovendien draagt alle dataverkeer de opdracht 100 met zich mee.
Als zo'n verbinding wordt opgebouwd, wordt er op de betreffende stations de vlag gehesen, jawel, de priorvlag. Bovendien wordt de bezetlijn geactiveert, waardoor alle andere stations niets op het datanet zetten. En omdat de betreffende stations de vlag hebben gehesen, weten ze dat ze de bezetlijn moeten negeren.
Na afloop worden de vlaggen gestreken, en de bezetlijn vrijgegeven.

Dit hele proces heeft wat tijd gekost om te ontwikkelen, maar volgens mij werkt dit nu feilloos. Het is ook direkt bruikbaar voor andere stations, waarbij ik deze prior-communicatie wil gaan inzetten.


17-3-2021

Goh, mijn vorige berichtje is al weer anderhalve maand geleden.

Ik ben heel druk geweest met de bouw van een windvaan.
Een plaxiglas doosje waar alles in zit, en een plexiglas pijl (jaja, je moet goed kijken).

Waarom plexiglas?
Nou, ik was van plan met magneetjes de as-lagers te maken, en dat leek me mooi om te laten zien, hoe het werkt. Maar dat is volledig mislukt. 
Dan maar heel kleine lagertjes. En dat plexiglas had ik liggen, dat wilde ik toch gebruiken. En mocht het ik de toekomst nog lukken met die magneetlagers, dan zien we wel weer verder. 
Ja, ik kijk af en toe nog wel eens op internet wat ze schrijven over passieve magneetlagers. Ik merk wel, dat de inzichten beter worden. Maar ik heb ook zo'n idee, dat er zo min mogelijk wordt geinformeerd, om hun eigen boeltje veilig te stellen. Want ik ontkom niet aan het idee, dat men veel meer weet, maar het voor zichzelf houden. Commercie......!

Vandaag heb ik nog een paar onderdeeltjes binnen gekregen, dus kan ik mijn windvaan af gaan bouwen. Ik heb een paar stoelpootdoppen gekocht, waarmee ik een waterdichte doorgang van de as kan maken. Niet onderdompelbaar, maar wel zeker regendicht.

Ik ben heel erg bezig geweest het het netwerk. Ik wilde persé die ene fout eruit halen. Het kwam maar 10 - 20 keer per dag voor, maar ik wil het eigenlijk perfect hebben.
Door al het gekl... werkte het op een gegeven moment helemaal niet meer. Nou, dan heb je ineens helemaal niks meer, want alles valt of staat met een goed communicatie netwerk. Want wat heb je aan een temperatuurmeter, als je die niet kunt uitlezen? En dat geldt voor alle weersgrootheden.

Uiteindelijk heb ik stappen terug moeten doen. Gelukkig kan ik dat doen, omdat ik, zeker bij grote veranderingen, een volgende versie van mijn programma maak. Daardoor kan je altijd terug. Versienummers van 40 zijn geen uitzondering.

En nu werkt het weer, maar nog wel met die foutjes die er al in zaten. Wel heeft het me weer meer inzicht opgeleverd.
Zo leer je steeds weer bij. 

En dan nu de regenmeter. alweer!

Die had ik in de tuin gezet, maar gaf niks aan.
Ook die heb ik vandaag op mijn tafel gehad. Mijn conclusie is dat hij weer lek is. En dat is funest voor de werking. Het staat nu doelloos ergens onder mijn tafel.
Ik heb nog een oude keukenweegshaal liggen, speciaal bewaard voor dit doel.
Die heb ik maar eens aan een grondig onderzoek onderworpen.
Ik ging uit van een bepaald type weegschaal, maar dat is het niet. 
Voor de techneuten onder jullie: deze weegschaal berust op het princiepe van een bewegende condensator. Heel prachtig, maar dit is erg vochtgevoelig, en mogelijk ook temperatuurgevoelig. Voor een keukenweegschaal is dat niet zo erg, want voor die korte tijd dat die wordt gebruikt, is het stabiel genoeg. Voor de lange duur (regenmeter) werkt dat niet.
Ik wil er één met rekstrookjes. Het liefst 4. Je hebt ook nog met 2 of 1 rekstrookje, allen met zijn voor en nadelen. Maar 4 is voor mij de beste. Deze is dan automatisch temperatuur-ongevoelig. Ze geven daardoor gerust een werkgebied van -10 to +50 graden celcius op, met een verloop van 0,05%. pfffff, verwaarloosbaar dus.
Ik weet al enigszinds wat ik wil hebben, en voor nog geen tientje heb ik een weegmodule, waar alles op en aan zit. Alleen nog maar de entourage eromheen.....

En dan de wijziging op de SD. Daar heb ik een extra Nano gezet als buffer voor alle inkomende data.
Ik kwam erachter, dat het SD-station af en toe heel erg lang bezig was met verwerken van binnengekomen data. En als die daar mee bezig is, loopt het gegarandeers data mis, en dat kan je als SD-opslagmedium niet hebben.
Die toegevoegde Nano heeft een buffer van 1000 bytes, de interne buffer is slechts 64, en dat zou meer dan genoeg moeten zijn voor het normale werk. Maar is dus te klein, als je met heel andere dingen bezig bent.
De grote buffer doet nog iets meer: die selecteert gelijk de data, dat voor de SD nodig is. De SD zelf krijgt het daardoor veel makkelijker, en kan lekker zijn dingetje doen. En het werkt geweldig! Wel heb ik een andere printplaat moeten ontwerpen voor deze nieuwe variant.


31-1-2021

Vandaag een bijzonder geval: een mogelijke oorzaak van verkeerde datastromen.

Ik heb al heel lang last van enige fouten in de datastromen op het net. Daardoor mis ik bepaalde data om verder te verwerken.

Van de meeste data is het geen ramp als ik daar wat van mis, maar het is vooral lastig als ik de kloksignalen mis. Nou heb ik dat wel enigszinds opgevangen in het programma, maar het zit me niet lekker. Het is niet fraai als ik gaten heb in mijn data.

Hoe ben ik er achter gekomen:
Ik ben al weken bezig om de regenmeter goed te krijgen. En daarvoor gebruik ik het "project monitor", het kleinste projectje om alle datastromen te tonen op een monitor.
Het regenprogramma zet elke minuut een hoop data op het net, dat ik met monitor uitlees.
Af en toe verlies ik wat data, soms met een interval van 19 of 38 minuten.
Het moest dus volgens mij iets met conflicterende datastromen te maken hebben.

Ik ben er altijd vanuit gegaan, dat het verzenden, of althand zeker het bufferen, van data vanzelf gereguleerd zou worden.
Dat blijkt nu dus niet het geval te zijn.

Omdat ik nu toch tijd zat heb, 😄  wilde ik toch het probleem met de regenmeterdata proberen te achterhalen. Maar daarvoor moet ik alle data monitoren, om het verband tussen verschillende datastromen van de stations te bekijken.
Ik heb dus even een klein stationnetje gemaakt op een prikbordje, de originele zit aan de regenmeter, een heus "monitorstationnetje". En die heb ik ingesteld op het monitoren van alle data.
Bovendien heb ik een tellertje meelopen dat voor mij bijhoudt hoeveel goede datastromen, hoeveel verkeerde en hoeveel ongeldige datastromen op het net voorkomen. Ik hoef daardoor niet konstand te turen op de monitor, maar scroll eenvoudigweg naar de verandering van de foutencode-teller, dat natuurlijk ineens verandert als er zich een fout voordoet.

Zo ben ik er achter gekomen, dat twee stations gelijktijdig zenden, en deze datastromen door elkaar lopen. En eigenlijk verbaast mij dit.

Ik ga nu op zoek naar een softwarematige oplossing. Toch weer eens goed in de mogelijkheden van dataverkeer duiken. Inmiddels heb ik wel wat meer ervaring opgedaan sinds het begin.

Een ander, hardwarematige, oplossing zou kunnen worden, om mijn oorsprokelijke idee van ver aan het begin van het gebruik van het netwerk, om een derde lijn, een bezetlijn, te creeeren. Voordat een station wilt gaan zenden, moet hij eerst de bezetlijn hoog maken, en weer laag zetten, als hij klaar is. Elk station dat wilt gaan zenden, checkt deze bezetlijn, en kan pas tot zenden overgaan, al de bezetlijn laag is.
Ik verwacht hiermee geen gelijktijdigheid van meerdere stations, omdat ik het hier heb over een enkele microseconde checktijd. Op de kans van gelijktijdigheid, durf ik geen voorspelling meer te maken, ik heb mijn lesje geleerd hiermee.


23-1-2021

Afgelopen weken ben ik merendeel bezig geweest met de regenmeter.
Eigenlijk was die compleet onbruikbaar.
Dat ben ik nu aan het verbeteren.

Tussendoor doe ik nog andere dingetjes met al bestaande projecten.
En... ik ben bezig een netwerkbuffer te maken voor de SD. Dit houdt in, dat data bestemd voor opslag, de SD dus, niet verloren gaat. Want af en toe gaat er toch stiekem wat data verloren. En dat wil ik voor opslag beslist niet. Ik maak dus een soort van voorportaal voor de netwerkdata voor de SD. Met een apparte NANO.

En.... ik heb de eerste aankondiging gezien van een ..... blueberry pi micro, net een arduino NANO, maar dan met veel meer eigenschappen, zoals de NANO BLE dat ik in de SD heb gezet. De pi heb je wel weer voor een nano prijsje, 4,95 euro. Erg interessant. Maar nu even nog niet, want ik heb nu al 15 stuks nano in mijn project zitten. Laat eerst maar de kinderziektes eruit zijn, voordat ik me op de pi stort.

24-12-2020

De voeding is inmiddels aangepast. De ledjes geven nu beter aan wat de toestand van de voeding is.
Met snel knipperende ledjes worden de storingtoestanden gesignaleerd. Alleen nog de storingen op het net zetten, waardoor andere stations daarop kunnen reageren.

De acculader lijkt ook goed te gaan, moet nog uittesten.
Ik heb wat handige dingetjes aangeschaft. Eén ervan is een kleine 1 Ohm weerstand in TO220 behuizing, en daatdoor lekker klein en zeker veel minder kwetsbaar. Ook die heb ik op internet gevonden. Ik wist niet dat die bestonden.

De regenmeter lijkt perfect te zijn geworden. Nu staat die in de duurtest in de regen. Ben benieuwd.

17-12-2020

De acculader staat even op hold, even laten bezinken terwijl ik op onderdelen wacht.

Dat geeft me gelegenheid om tataal andere dingen na te gaan.
De voeding moet aangepast worden (zie schrijven van 11-11-2020). Mooie gelegenheid nu.

4-12-2020

Even een update op dit overzicht.

Afgelopen 2 weken ben ik bezig geweest met een acculader voor de fiets van Yvonne. Ook hier kom ik dingen tegen die mij aan de studie zet. Namelijk de werking van schakelende voedingen en de hoge schakelfrequentie vanuit de arduino. Deze laatste heb ik nog niet helemaal door hoe het nou echt zit, maar dat gaat wel komen.

En ik heb de regenmeter weer op mijn werktafel staan.
De data die daar vanaf kwam, is totaal onbruikbaar. De data schoot alle kanten op, waar ik totaal geen vat op leek te krijgen.
Maar inmiddels denk ik waar ik het moet zoeken. In een eenvoudig builtje cilicagel. Die moet eruit! Want cilicagel haalt het vocht uit de lucht, en dat merkt de druksensor. En dat gebeurt ongecontroleerd, daar heb ik geen vat op. Dus moet dat builtje eruit. Hoe ik dan de sensor droog moet houden, moet ik nog uitzoeken. Want condens wil ik niet hebben. Ik denk dat ik een erg droge dag moet afwachten om de regenmeter in elkaar te zetten, zodat de lucht om te beginnen droog is.

11-11-2020

Officieel begin van het carnavalsseizoen..... maar dit jaar niet.

Spanningsuitval, wie heeft er nog nooit van gehoord!
Ja, het uitvallen is lastig, maar het terugkomen van de stroom misschien nog veel vervelender. Want wat vind je van al die klokken die weer goed gezet moeten worden? En het ongecontroleerd opstarten van allerlei systemen?

Om dat op te vangen heb ik voor mijn project een slimme (nou ja...) voeding gebouwd, althans, dat dacht ik.

"Elke keten is zo sterk als zijn zwakste schakel", toch?

Ik heb er een accu in zitten die de zaak even opvangt bij spanningsuitval. Niet écht noodzakelijk, meer leuk.

Die zwakste schakel is een aansluitsteker van de voedingssteker. En als die los zit, dan zie ik dat nergens in terug. Althans, nu nog niet. Ik heb er wel in doorgedacht, maar nog niet daadwerkelijk in uitvoering gezet. Dat ga ik binnenkort toch echt doen.

Het plan was om een spanningsuitval te melden op het communicatienet, en de stations datgene te laten uitschakelen dat niet noodzakelijk was. Daarmee beperk ik het stroomverbruik, om de accu zo lang mogelijk spanning te laten leveren.

Nu had ik al de keuze gemaakt om een kleine accu te nemen, waarmee ik ongeveer een uurtje kan overbruggen. Als de accu te ver zou ontladen, schakelt hij zichzelf af, en dat werk prima. Want een loodaccu moet je niet helemaal leegtrekken, is erg slecht voor dat ding.

Nu heb ik in de netwerkkabel nog 4 draadjes over voor dingen in de toekomst. Daar overheen kan ik natuurlijk een geschakelde 12V laten lopen, die dus uitschakelt als de spanning uitvalt. Daar kan ik dus de stations iets mee laten schakelen om de stroom te beperken. 
Dit zal ik nog verder uitwerken.
Tevens kan ik een geluidssignaaltje laten afgaan.

5-11-2020
Afgelopen dagen bezig geweest met het bedieningskastje voor in de huiskamer.
Waar knijpers al niet goed voor zijn.

Vroeger werkte ik ook al veel met triplex, latjes en houtlijm. Die hobby heb ik dus weer opgepakt.

29-10-2020

De regenmeter is een redelijk succes. De opzet is goed.
De onderste deel van de beker lekte wat lucht weg. Daardoor verloopt de druk onderin met de tijd. En dat moeten we echt niet willen. Want ook al staat er nog wat water in de beker, die moet wel stabiel uitlezen over een aantal dagen. Een duurtest zal moeten uitwijzen of het nu is opgelost.
Waar ik wel heel erg tevreden over ben is de gevoeligheid van de metingen. Ik kan met gemak regen meten met een nauwkeurigheid van 0,1mm. Met alle hulde voor Bosch.

Verder ben ik bezig geweest met de SSD. De opslag van data van de regenmeter en barometer is nu ook mogelijk.

Wat mij ook opvalt, omdat ik projecten een poosje laat liggen, dat ik behoorlijk vooruitgang boek in mijn denken, hoe ik softwarematig de zaken aanpak. 
Het gebeurt daardoor wel eens dat ik bepaalde delen herschrijf, om het beter en overzichtelijker te maken.
Wat ik hierbij niet moet vergeten is, dat ik niet zomaar procedures kan veranderen, met als gevolg dat de andere stations niet meer zouden werken. Maar als het echt niet anders kan, dan moet het maar even. Dan moet ik alle andere stations onder handen nemen.

17-10-2020
De regenmeter is softwarematig een succes geworden. Met een simulator kan ik het behoorlijk laten regenen, met goede data als gevolg. Die data kan ik ook al verzenden en laten zien in "monitor", nu nog op het display tonen.
Daarna ga ik met de regenbeker aan de gang, het echte werk.

10-10-2020
Heej, 10-10 was ook de officiele startdatum van de telefonie die alle telefoonnummers met 10 cijfers omzette. Maar dat even terzijde.

Momenteel loop ik erg vast op de bediening van de huiskamer. Ik krijg de data van de wekker niet juist opgeslagen en/of teruggelezen. Erg frustrerend als je daar dagen op blijft hangen.

Dus ga ik wat anders doen: de regenmeter.
Zie dit item voor verder verslag.

6-8-2020.
Het is zó'n mooi weer, dat ik dit project even lekker heb laten liggen. Dat wil niet zeggen dat ik er niet mee bezig ben, want in mijn hoofd kan ik wel eens ergens mee bezig zijn. Zo ook de opslag op SD. En dan met name de data van sensoren, getallen dus.

Strings gaan prima, maar getallen is een heel erg ingewikkelde.
Getallen kan ik alleen maar opslaan in losse cijfers. Dus het getal 125 heeft 3 cijfers voor de opslag, 1, 2 en 5.. 
En waar zit dan het ingewikkelde ervan? In het teruglezen! Want wat moet ik met drie losse cijfers. (als eerder voorbeeld). Niks dus. En eenvoudig achter elkaar zetten lukt me niet, ja, in string, maar daar ik niks mee. Ik kan er niet mee rekenen bijvoorbeeld. En omzetten in een getal waarmee ik wél kan rekenen, gaat niet.

Nou kan ik slechts 1 cijfer gelijktijdig uitlezen van SD. Ja, ook met een buffer meerdere tekens tegelijk, maar dan moet ik de lengte van het getal kennen, en dat is niet zo.
Dus, één voor één uitlezen.
Ik heb er nou toch een manier op gevonden.
Bij het uitlezen begint het met het cijfer van de hoogste waarde, in ons voorbeeld dus de 1. (deze heeft de waarde x100). Even in een mooie opstelling:

Ik lees 1.
x10 = 10.
ik lees 2 erbij = 12.
x10 = 120.
ik lees 5 erbij, = 125.
ik lees volgende, dat is het einde, dus lees eigenlijk niks meer.
Resultaat = 125. En dat is dus wat ik moest hebben. En omdat ik deze procedure in een rekenkundige variabele doe, kan ik er dus alles mee doen wat ik wil.
_________________________________________________
26-7-2020.

Alvast weer een filmpje en een tekeningetjes.

Met het zoeken naar een grafisch schermpje, kwam ik ook een led-matrix tegen. Heeeej!, die heb ik ook ergens liggen, in mijn sensorendoos. Ooit eens een pakket sensoren aangeschaft.

Nou, die led-matrix had ik eigenlijk snel onder de knie, dat werkt goed.
De pijlen recht en in een hoek van 45 graden, zijn prima te doen.
De pijlen onder 22 graden eigenlijk gewoon niet te doen, maar alternatiefjes zijn ok. Uiteindelijk heb ik een tekeningetje gemaakt (zie foto) en daar een pijl op getekend onder 22 graden. De bolletjes moeten de ledjes voorstellen die ik 'aan' moet zetten. Zoals je op het filpje kunt zien is dit het resultaat.

Maar, is dít het nou?? Heel leuk dit schermpje, maar ik ben niet echt tevreden. Als het dit is, dan kan ik net zo goed zo grof tewerk gaan op het LCD scherm, scheelt me weer een scherm.
Maar wil ik het écht mooi hebben, dan wordt het toch een grafisch display. Een 128x64 dots is een veel gebruikte, en die heb je voor geen € 10. Is toch de moeite waard.
____________________________________________________
25-7-2020.
Ik ben bezig geweest om een windpijl te maken op het LCD scherm. Dat ging over het algemeen erg goed.
Mijn bedoeling is, om, zoals te zien is in het filmpje, de pijl helemaal rechts op het scherm te plaatsen, verdeeld over 4 regels en 6 kolommen (tekens naast elkaar), dus totaal 24 tekens. 
Overigens is dit niet, het in het project gebruikte scherm, dat dubbel zo breed is dan deze. Maar de bedoeling is duidelijk.

Nou is dit scherm een tekstscherm, dus moet ik de mogelijkheid benutten om zelf tekens te maken om de pijl te kunnen maken.
De pijlen op de video zijn nog eenvoudig te maken, en heb ik telkens maar 7 of 8 verschillende tekens per pijl nodig. En als ik het goed uitkien, gebruik ik bepaalde tekens meerdere keren in een pijlafbeelding.
Maar de schuine pijlen moeten met veel meer verschillende tekens gemaakt worden. En dan loop ik tegen de beperkingen aan van een LCD aan, dat maar 8 zelfgemaakte tekens gelijktijdig kan bevatten.

Ik heb van alles geprobeerd om dit op te lossen, maar het gaat gewoon niet. Ook de fora op internet geven geen oplossing.
Een mogelijkheid is, om de pijl eenvoudiger te maken. Het ziet er dan niet zo strak uit. Ik moet dit nog uitzoeken.
Een andere mogelijkheid is een grafisch schermpje. Ik houd dit in gedachten.
__________________________________________________
18-7-2020.
Nu ik de nieuwe SD kaart heb, ben ik heel blij gestemt, omdat het programma voor de opslag op SD heel goed werkt. Ik heb wat aan lopen kl.... , toen ik in de gaten kreeg dat de SD kapot was, dus ik was niet zeker of datgene wát ik heb gemaakt, of het ook werkte. Nou, ja dus, en dat valt heel erg mee.

Ondertussen heb ik weer wat materiaal besteld.
Kleine kogellagertjes voor de windmetingen, want nee, het lukt me niet met magnetische lagers. Alles wat je googled over magnetische lagers geeft geen uitsluitsel of het wel kan met permanente magneten. En tóch heb ik nog steeds het gevoel dat het zou moeten kunnen.
Ook heb ik besteld een paar dingen, die voor later weer nodig zijn. Voor mijn voeding, voor het tweede bedieningsdisplay voor in de kamer. Ik kan nu volop vooruit.
_______________________________________________
14-7-2020.
Een fikse tegenvaller: magnetische lagers bestaan niet in de variant van pemanente magneten. Wél met elektromagneten, die worden aangestuurd middels sensoren. Maar dat laatste wist ik al.

Ik had me vandaag een minicursus magnetisme toebedacht; de hele dag op de computer over magnetisme. Ik vond het zelfs zwaar worden, zo uitzichtloos dat het leek. En het ís uitzichtloos.
En dat reimt niet met het gevóel dat ik heb, dat het gewoon moet gáán met permanente magneten, maar ik weet niet hóe.

Dus nu toch maar een paar kleine kogellagertjes uit de modelbouw. Even uitzoeken of ik gegevens kan krijgen over de mate van soepelheid van de lagers, wan ik wil wel dat de windvaan in de goede richting staat, ook bij heel weinig wind. De paktijk zal het laten zien.
_________________________________________________
14-7-2020.
Ik heb een mail terug van supermagnete. Helaas teleurstellend. "Zij zijn geen techneuten, en kunnen mij net verder helpen". Het zijn fysisi, geen techneuten.
Ik moet dus zelf op onderzoek uitgaan. Maar ook daarvoor hebben we internet. 😁
________________________________________________
13-7-2020.

Intermezzo: de powerLEDverlichting in mijn werkkamer.
Ik heb een powerlichtbalk van 5 x 50W LED boven mijn werktafel gehangen.
Het zijn 5 LED's en 5 ventilatoren.
Elk setje appart schakel ik met een infrarood afstandbediening, en dat werkt prima. En natuurlijk met een arduino aan boord. Dat vanwege de afstandbediening en de aansturing van de speciale triacs. Die triac is een overblijfsel van het koelkastproject. Daarin zat die triac. Het speciale aan die triac is, dat die met een arduino rechtstreeks aangesturd kan worden. En vanwege de zeer geringe prijs heb ik er bij ali gelijk tien besteld; je weet maar nooit waarvoor ik ze nodig kan hebben. Nou, hiervoor dus.
_____________________________________________________
12-7-2020 / 2.
Ook vlak voor de crash ben ik bezig geweest met de windmetingen.
Daar gebeurde wat ik niet wilde: het werkt niet met de magneten. Ik zit met een giga denkvaud.
Vanavond heb ik gemaild met supermagnete.nl, waar ik de magneten vandaan heb, om te achterhalen wat ik fout doe. Zij hebben meerdere magneetprojecten van klanten op hun website staan. Leuk om eens daar naar te kijken.
______________________________________________________
12-7-2020.
Ik ben op het display bezig geweest met de bediening met een encoder. Dit gaat nu heel erg lekker.
Ik gebruik pijltjes (<< >>>) om de te selecteren item te kiezen.
Met de knop kan ik die pijltjes op een bepaalde regel draaien. Tevens draai ik, om nóg meer items in beeld te krijgen.
Wil ik een item selecteren, druk ik op de knop. En zo ga ik achtereenvolgens de drie opties door. In dit geval het dimmen of juist feller zetten van de verlichting van het LCD.

 
__________________________________________________
10-7-2020.
Maar eerst de ventilatieklep gerepareerd.
Ik merkte al langer dat de klep niet lekker meer functioneerde. De klep zelf is van karton gemaakt. En kookwarme vocht doet daar geen goed aan. De helgt van het karton was verdwenen, de andere helft hinh er slapjes bij.
De reden dat dit van karton was, is dat ik wilde uitproberen of het werkte. Nou, dat deed het dus.
Van een dekseltje van een groentepot heb ik een nieuwe klep gemaakt. Met ijzerdrad is die ook nog eens stevig vastgemaakt. En nou is die weer OK.
____________________________________________________
9-7-2020
Daar ben ik weer.
Ik ben er even uit geweest; de computer was gecrached, moederbord kapot. Gelukkig zijn mijn data bewaard gebleven.
Het had ook zijn voordelen: mijn kamer is behoorlijk opgeruimd. 😄 En dat maak ik straks eerst even af. Het zal wel vanavond worden, voordat ik weer iets kan doen aan het project.

Allereerst heb ik vanmiddag tussendoor de ventilatie aangepast. Het was vandaag zó vochtig en warm, dat ik het hier in huis niet onder de 90% kon komen. En als dat te snel gaat, kan het programma het niet bijbenen, en blijft de ventilatie eindeloos doordraaien. Rotherrie hoor.
Nu heb ik ingebouwd, als de ventilatie 2 uren acher elkaar blijft draaien, er ingegrepen wordt. En dat gaat nu goed.

Daarn wil ik doorgaan met opslag op SD.
Oeps, ik moet een nieuwe SD kaart kopen, die ik gebruikte is kapot gegaan. Waardoor is me een raadsel..... Even bij de appie kijken of zij er een hebben. Niet dus. Morgen naar de stad.

Vlak voor de crash ben ik bezig geweest met een encoderknop op het bedieningspaneel voor selekteren van menu-items. Net zoals op een magnetron bijvoorbeeld. Dat is een knop die eindeloos gedraaid kan worden, er zit geen einde op, wat vroeger op de volumeknop van een radio wel zo was.
Dat laten scrollen van menuregels met de encoder, ging heel erg naar tevredenheid. En daar ga ik nu aan verder.
____________________________________________
28-6-2020.
Ik heb een klok in het systeem zitten, een Real Time Clock. Die heb ik er maar één in zitten.
Elke minuut zendt dat station waar de klok in zit, een signaal rond met de datum en tijd. Stations die hiermee iets willen doen, pikken dat signaal op, andere negeren dat kloksignaal.

Er zijn momenteel 2 uitgesproken tijden, dat er echt iets mee gebeurt, dat is 12 uur 's-nachts en elk heel uur.

Nu ben ik bezig met de opslag van data op de SD. Ik zie zomaar een kloksignaal vergeten worden, niet gesignaleerd, en wel het hele-uur signaal.
Elke heel uur laat ik de SD een backup van alle databestanden maken. Dat gebeurt nu dus even niet.

Nu kan ik twee dingen doen: 
  1. niet naar :00 seconden kijken, maar naar verandering van de minuut. Hierdoor wordt de backup altijd nog wel gemaakt, al is het een of twee minuten later.
  2. De verzonden data laten bevestigen. Deze mogelijkheid heb ik al vanaf het begin ingebouwd, maar nog nooit toegepast.
Het voordeel van bevestigen kan ik ook gebruiken voor relevante waarnemingen, zoals weerdata, daar wil je eigenlijk niks van missen. Maar nu doe ik geen acties op eventueel het missen van die data.

Het bevestigen gaat als volgt:
Het station dat data het net opstuurt, bewaart zelf nog de gegevens, totdat het station waarvoor die gegevens bestemd zijn, heeft bevestigd. Zo niet (binnen een bepaalde tijd), dat verzend hij die nogmaals.
Dat er daardoor waarschijnlijk een andere tijdsfactor verschil in zit, neem je maar voor lief.
__________________________________________
27-6-2020.
De 556 gaat 'm ook niet worden, die kost 3 keer zoveel meer dan 2 stuks 555. Ja, wie op de kleintjes let....

Ook voor de bediening en display-station heb ik nu de watchdog vast ingebouwd. Er was nog plek zat onder de arduino (groot model).
De bediening liep ook steeds vast, net zoals de ventilatie.
En hier bewees het nut zich van het monitorprogramma. Het bleek dat met de dataverzending vanuit het weerhuisje naar de SD deze stations in storing vielen.

Sinds ik data wil verzenden naar de SD, doe ik dat zo min mogelijk, dus met zo veel mogelijk data in één keer. En daar waren die stations niet op ingericht.
Seriele data kan maximaal 64 items in één keer verzenden.
Vanaf het begin schatte ik het maximum op 20 items. De buffers in die stations waren ook daarop ingesteld.
En als je dan ruim 50 items wegstuurt, nou, dan lopen die buffers over, en vernietigt het een deeltje van het programma, met een vastloper als gevolg.
Na het aanpassen van die buffers, loopt het probleemloos.

________________________________________
25-6-2020.
Vandaag de watchdog-timer uitgeprobeerd.
Afgelopen nacht ben ik in mijn slaap bezig geweest met een oplossing. Toen ik vannacht wakker werd, had ik niet veel tijd meer nodig om een oplossing te bedenken. En die moest ik naturlijk op papier zetten; ik zou het anders maar vergeten!

Het is een 556 geworden, een dubbele 555 in één huisje.

Maar voorlopig moet ik het met 2 stuks 555's doen, want ik had het idee dat ik het met één afkon.

En.. het werkt fantastich.
Elke keer laadt het een condensator op.
Op verschillende plaatsen in het programma geef ik een puls aan de 555, waardoor het reset. De condensator kan dan opnieuw opgeladen worden. Maar als die puls uitblijft, wordt de condensator verder opgeladen, met een reset naar de arduino tot gevolg.
Eigenlijk simpel, maar het werkt.

De gedachte hierachter had ik al langer in beeld, maar nu pas uitgewerkt.
_____________________________________________________
23-6-2020.
Maar een nieuwe voortgang-post gemaakt, omdat de lay-out van de andere niet meer hersteld kan worden.
Het lijkt wel, alsof de tekst op een ander blad staat dan de foto's, en die dan over elkaar worden gelegd. Alleen synchroniseren die twee bladen niet, waardoor de éne wel scrolld, en de ander stil blijft staan. Niet meer mee te werken dus.

Nou goed!

Intussen werkt de SD-opslag, zeg maar de SSD, naar behoren. Nog niet zo ver, dat ik meetwaarden kan gaan opslaan, maar dat komt steeds dichterbij.

Verder heb ik een netwerkmonitor gemaakt. Voorlopig nog in concept, prikaansluitingen, maar het werkt.
Wat doet dat ding? Hij laat op een beeldscherm zien, wat er allemaal op het netwerkje gebeurt. Alle data wordt nu én in koude gatallen getoond, maar ook in uitgewerkte data.
De stations versturen alles in kouwe getallen het netwerk op. Het te ontvangenn station 'weet' wat die getallen betekenen. Nou, dat doet die monitor dus ook. Dus zowel kouwe data als de uitwerking.

Erg leuk om dat te monitoren, maar wat heb je er aan?
Gaandeweg heb ik bij alle stations enige vorm van monitoring ingebouwd. Dit heb ik nodig om uit te zoeken of de data wel goed word verwerkt op zowel de verzender als de ontvanger. Dat hept me wel om de data goed af te werken, en ook weer aan beide zijden.
Met deze monitor heb ik altijd álle datastromen inzichtelijk. En als het hierin goed gaat, dan weet ik zeker dat de data goed het netwerk op gaat. Hoe het dan ontvangen wordt, dat is dan punt twee.
Tevens heb ik inzichtelijk hoe druk het op mijn netwerk is. Maar met een gemiddelde van zo'n 10 datablokken per minuut zit ik nog heel rustig. Eén blok is maximaal 64 bytes.

Maar als ik de data wil monitoren, dan heb ik nu het hele boeltje aan computer en monitoren aan staan, en dat vreet stroom. Sinds ik thuis ben gebruiken we meer stroom. Ja logisch, maar toch een puntje van aandacht.

Afgelopen weekend had ik een zoon van mij aan de telefoon. Hij zette gewoon de raspbery pi in als volwaardige computer. En waarom niet? Dat ding heeft alles om als zodanig te werken; het is een volwaardig moederbord, en dat op (bijna) creditcard-formaat. 85x56mm!
De prijs is me nog te veel. Maar ook kleinere systemen, de raspbery zero, de eerste in deze soort, mag er zijn voor mijn doel: monitoren van de data. Maar er komt dan nog bij: een voedingsadapter, een HDMI kabel, een fatsoenlijk doosje om in op te bergen....... Ja, dan loopt de prijs flink op.
Deze gaat dus in de wacht, want het zou zomaar kunnen zijn, dat ik er later méér mee wil doen, en dan kan ik misschien toch beter naar een wat zwaarder type gaan.
Het grootste voordeel is natuurlijk het energieverbruik. Maximaal zo'n 15 watt. Komt daar de monitor zelf nog bij, maar die hoeft niet altijd aan te staan. De raspbery overigens ook niet. Al moet je dan een foefje gebruiken om bij inschakeling van de monitor op de arduino geen reset te krijgen, wat weer het proces verstoord.

Foefje:
Een kleine uitleg.
Als ik de monitor van het IDE opstart, gaar de arduino in reset.
Als ik de computer inschakel als die verbinding heeft met de arduino, gaat die arduino in reset.
Een reset van arduino kan vervelende gevolgen hebben voor het proces. De laatste data ben ik zowiezo kwijt, maar hij kan zomaar naar oudere instellingen teruggaan, áls ik die al opsla. Want anders gaat die arduino gewoon naar zijn oude initialisatie.
Dat foefje bestaat uit een condensator, waarmee ik de resetpin aan de 5V hang. Een (gebruikelijke) korte reset wordt dan tegengewerkt, en vind dus niet plaats. Een lange reset, handmatig, werkt wel, en is dan dus functioneel. Met het uploaden van een programma naar een arduino moet ik even de condensator eraf halen, want het systeem maakt vlak voor het uploaden een reset. Handmatig kan ik die niet geven, omdat ik niet precies weet wanneer dat nodig is.

Wat ook gebeurt is, dat arduino's vastlopen, om wat voor reden dan ook. Dit is niet altijd duidelijk.
Maar daar hebben ze in computerland wat op gevonden: de watchdog. Het doet precies dat wat het zegt: waken over het proces.
Zodra een proces vastloopt, geeft het een reset.
Nu heeft de arduino uno een software-watchdog aan boord. Maar nu werk ik met andere processoren, en die werken daar niet op.
Bovendien moet je heel erg uitkijken, dat je het goed gebruikt. Een verkeerde instelling kan de arduino zomaar onbruikbaar maken; het gaat telkens in reset, als je het probeert op te starten. Hij is dan alleen maar het zwijgen op te leggen met de grote hamer.

Wat doet een watchdog:
Een timertje van bijvoorbeeld 1 seconde, wordt steeds gereset, overal in het programma. Dat is een handeling die je overal in het proces moet invoeren. Je moet er voor waken dat de tijd tussen twee resetten nooit langer is dan die 1 seconde. Je moet dus steeds die bal hoog houden, het mag niet op de grond vallen, want dan ben je af.
Die timer doet hetzelde. Als hij buiten die ene seconde valt, dan geeft het een reset, de bal raakt de grond.
Nu is die ene seconde niet heilig, en kan elke waarde aannemen; die moet je zelf instellen.

Arduino zelf vermeld de watchdog zelfs niet in zijn handleidingen en references. Omdat je er zo mee moet uitkijken. Het programma is niet zomaar op een andere arduino te gebruiken, met de hamer als gevolg.

Nu heb ik een arduino die af en toe spontaan vastloopt. Het ventilatiesysteem loopt af en toe vast. En daarvoor heb ik een harware-watchdog bedacht.
Wat dacht je van de 555? Een ouderwets timertje met 8 poten, en nog heel populair.
Het is een heel slim ding, waarmee je tijden kunt creeeren tussen megaherzen en pulsen van meerdere uren. En dat allemaal analoog. Hij is welliswaar niet heel erg stabiel, maar wel recht-toe-recht-aan, makkelijk te hanteren.

En díe wil ik nou gaan inzetten.
Het idee is dat ik de timer steeds reset door de arduino, en daardoor niet actief wordt. Maar als de arduino vastloopt, krijgt de timer geen reset meer, en reset hij op zijn beurt de arduino.
En daarvoor heb ik één I/O pin nodig van de arduino, en de nooit gebruikte reset-pin.
En dat ga ik nu uitproberen.




maandag 8 juni 2020

Marsmannetjes


Wij hebben regelmatig masmannetjes op bezoek.

Ze komen met heel kenmerkende voertuigen aanzetten. Dit is één van de vele soorten.

Maar dit keer waren ze niet zómaar hier. Zij wilden toch iets aan hun voertuig laten doen. Pimpen dus.
En daar mag ik bij helpen.

We begonnen met delen van het vaartuig uit elkaar te halen. De ruimte hierbinnen is zo wel duidelijk.
Maar binnenin is het véél spannender. 

Er zitten dingen in, die ik niet begrijp.

Maar.... er staat iets van een code op, iets van DHT en 11.
Nou, wíj hebben internet, dus maar eens gekeken.

Het heeft iets met nattigheid te maken, maar waar precies weet ik niet.

Zullen ze op Mars dan toch water hebben??
Uiteindelijk heeft het vaartuig een nieuw uiterlijk gekregen. Ze hebben nu ook meer ruimte in het vaartuig.

Maar intussentijd hebben zij ook niet stil gezeten.

Ze hebben boodschappen gedaan. Van de bouwmarkt hebben ze wat dingen laten bezorgen, en of ik die dingen op hun vaartuig wilde monteren.
Ja, dat wil ik wel.

En voor hun boodschappen hebben ze hun eigen boodschappenwagentje. Ja, die mochten ze op onze tuintafel stallen.

zondag 7 juni 2020

Zonnemeter

7-6-2020.
De zonnemeter bestaat uit een bolletje met 4 lichtgevoelige weerstanden (LDR), onderling afgescheiden door een zwart schermpje.

De reden dat ik er 4 heb genomen is, omdat de zon draait. In deze opstelling is er bij zonneschijn altijd wel één LDR die in de schaduw staat, en dus veschillende weerstanden meet.

Er zijn dus vier verschillende waarden (zie scherm). Uit die vier waarden is straks wel een en ander mee te doen. In ieder geval of de zon volop schijnt, of verscholen achter de wolken.

Hier moet ik nog veel mee spelen om tot bruikbare waarnemingen te komen.
Ook de mate van zonneschijn is goed te meten, maar ook hiervoor geldt, een beetje mee spelen om de goede conclusies te trekken.

Foto-transitoren vs. lichtgevoelige weerstanden.
Jaren geleden al ben ik met een zonnevolger bezig geweest voor een zonnepaneel.
Met het gebruik van foto-transistoren lukte het niet om tegen de zon in te kijken; deze raakten snel in de verzadiging, waardoor er geen bruikbare verschillen meer waren tussen de transistoren onderling.
Bij lichtgevoelige weerstanden speelt dit niet. Zelfs bij de meest felle zon zie je nuances die bruikbaar zijn.

donderdag 28 mei 2020

Regenmeter

31-5-2020.
Ik plaats de gewone baromer ook op dezelfde processor als van de regenmeter. De twee barometers (één voor de luchtdruk, één voor de regenmeter) trek ik de waarden van elkaar af tot op hondersten. Wat over blijft is de waterdruk op de bodem van de beker.
Waarom zet ik de barometer hier bij? Woor de verwerking van de data ben ik niet geinteresseert in honderdsten of tienden van de luchtdruk. Ook praktisch kom ik in de knoei, en dat is eigenlijk de hoofdreden.
_______________________________________________________
28-5-2020.
De regenmeter is een appart geval.

Wat zijn mijn gedachten:
Om tot een meting te komen die heel nauwkeurig de hoeveelheid regen in een beker moet meten, zijn er wel enige manieren te bedenken.
  • Een ultrasone meting. Hierbij moet je denken aan een sensor aan de binnenkant bovenin een beker. Die sensor is naar onder gericht. De sensor zendt telkens een ultrasone puls uit. De echo is een maat voor de afstand tot de vloeistof in de beker.
    Eerlijk gezegd heb ik hier nog niet echt onderzoek naar gedaan. Met name over de nauwkeurigheid heb ik geen kennis.
  • Door middel van gewicht van de gehele beker. Klinkt logisch. Maar dit is erg gevoelig door de wind op de beker.
  • Een opnemer in het water. Deze methode is erg onderhevig aan de vervuilingsgraad van het water. Bovendien erg onnauwkeurig. Niet geschikt dus.
Vanaf het begin zit ik al in een bepaalde richting te denken.
Ik ben nu al bezig met een barometer, dat heel nauwkeurig meet, zeker tot op 0,1 mBar. (10 pascal). 
Ik wil die sensor gebruiken voor de regenmeter. De sensor kan geen nattigheid verdragen. Dus moet er een vlies tussen als scheiding.

Wat wordt de praktische constructie:
Ik maak een beker met een dubbele bodem. De dubbele bodem wordt dichtgezet met een vlies. Elk beetje regen bovenin de beker geeft een drukverhoging in het onderste deel van de beker.
Nu ben ik al veel eerder met dit idee aan de gang gegaan. Nu heb ik gedacht aan een dun siliconevel, Silicone is namelijk super soepel, bovendien heel sterk en rekbaar, en dat is het beste.
Via internet ben ik bij een bedrijf terecht gekomen, die mij wel een monstertje wilden toesturen. 
 Dit is een heel mooi dun vel.
Nu wil ik zorgen om het onderste deel zo klein mogelijk te houden, waardoor bij het minste niveau-verschil ook een meetbaar drukverschil onderin te meten is.
Nu is de druk op de boden recht evenredig met de hoogte in waterkolom boven de bodem. 
Bovendien zie je in de meest eenvoudige regenmeters dat de milimeter-aanduiding op de beker helemaal geen milimeters zijn. Dit komt, omdat er bovenin een trechter zit. Dit werk als een soort versterker. Want stel dat het oppervlak van de cirkel bovenin de beker, de trechter, 3x groeter is dan de oppervlakte van de bodem, dan is elke 3 echte milimeter op de schaalverdeling slechts 1 milimeter aan gevallen regenwater. Dit is op de beker dan ook makkelijker af te lezen.
Hetzelfde geldt voor mijn beker. In dezelfde bekervorm als in het voorbeeld betekent dit, dat elke milimeter aan regenwater ik 3 milimeter aan waterkolom meet.

Berekening:
Ai, hier ben ik eerlkijk gezegd nog niet mee bezig geweest. Laat ik het hier maar eens opzetten.

Nu is 10 meter water gelijk aan 1014 mBar. Omdat mijn barometer een nauwkeurigheid heeft van 0,1 mBar, heb ik een uitleesbaarheid van ongeveer 10000 punten op 10 meter. Dit is 1 punt per mm. En laat ik dát nou net nodig hebben. En als ik dan het trechterprinciepe gebruik, kan ik zomaar een nauwkeurigheid maken van enkele tienden mm.

Wat zeg je? Een slimmerik zegt, maar de buitenlucht drukt ook op het water in de beker, en dus op de ingebouwde barometer.
Daar heb ik over nagedacht. Ik meet namelijk ook de luchtdruk buiten als onderdeel van mijn weerstation. En die waarde trek ik af van de waarde in de regenmeter. En zo heb ik dan direkt de kolom waterdruk in de beker.

En dan het legen van de beker. Nou, die gooi ik steeds leeg. Nee, natuurlijk niet.
Hiervoor gebruik ik het hevelprinciepe. Ik breng een buisje aan door de wand van de beker, in ieder geval onder de lijn waar de trechtervorm begint.
Aan de binnekant komt die tot vlak boven de bodem (siliconevel). Buiten de beker zakt het tot flink onder de beker.
Op een gegeven moment gaat het systeem afhevelen, en doet dat totdat de beker hoegenaamd leeg is. En kan het vullen weer opnieuw beginnen.

Al deze bewegingen worden geregistreerd. En met deze waarden kan ik volop aan de slag. Ik zie precies wanneer de beker leegloopt. De waarde die vóór dat moment is gemeten is belangrijk. Evenals de waarde die na leegloop wordt gemeten.

Ik heb lang nagedacht over de bevestiging van het silicone vel.
Eerst dacht ik om deze te klemmen tussen een mofverbinding van stukken PVC pijp. Er is heus wel een maat te vinden van een mofverbinding met enige speling, waarin het vel tussengezet kan worden. Maar ik vind dit geen makkelijke en fraaie verbindeing.
Maar onlangs zat ik te denken aan twee PVC flensen (appendages van leidingen). Hiertussen is op zeer eenvoudige wijze het vel te plaatsen. En dan kan ik daarop weer makkelijk met stukjes leiding en verlopen (trechter) aan de gang.
Nu ken ik een bedrijf ik Rucphen, en daar ga ik maar eens rustig rondneuzen.



zondag 24 mei 2020

SD

20-5-2021

Ik ben weer eens in de SD gedoken, want die lag werkeloos aan de kant. Zelfs de preciese reden daarvan weet ik niet meer.

Ik ben bezig verschillende logboeken te maken, zodat ik kan zien wat ik ook al weer heb gedaan, en waarom.
Voor de SD betekent dat, dat ik nu precies weet hoe ik data moet verwerken. Als simpel voorbeeld: als ik het getal 1034 heb, wil ik niet dat dit 4 geheugenplaatsen inneemt, terwijl het ook met 2 kan. Het getal 34567 nog steeds 2 geheugenplaatsen, tegen 5 in normale opslag.
Maar dat vereist een gedegen protocol, en dat is gelukt. 

Het deel waarmee ik data wil verzamelen om uiteindelijk in excel te plaatsen, heb ik helemaal opnieuw aangepakt. De reden hiervan is, dat ik weet dat ik hoe langer hoe meer ervaring opdoe over het programmeren opzich. Ik pak dingen sreeds slimmer en gestructureerder aan, met alle voordelen van dien.
Oude programma's bezie ik nu als wat geklungel. Daar zit ik overigens niet mee hoor, dat is gewoon zo. En nog steeds leer ik veel bij.

Met een paar simpele handelingen op de bediening in de werkkamer, kan ik allerlei zaken aansturen aan de SD. Bijvoorbeeld ook een overzicht geven van alle bestanden op de SD. Er staan vaak indrukwekkende getallen achter, dat de bestandsgrootte weergeeft. Maar hoeveel is dat nou in totaal? Loop ik op een gegeven moment niet vast op het totale geheugen van de SD-kaart?
Die vraag heb ik nu kunnen beantwoorden door het totaal verbruikte geheugen weer te geven onderaan het overzicht. Maar dan liep ik gelijk tegen een ander probleem: ik heb geen direkte mogelijkheid om zo'n grote getallen weer te geven, laat staan mee op te tellen.
Ik heb een SD-kaart van 16GB.
Het grootste getal dat ik in de arduino kan weergeven met 100% preciesie is ruim 4 miljart. Voor grotere getallen ben ik die preciesie kwijt; het getal 1 of 2, of zelfs nog groter, kan hij niet meer optellen.


Dus heb ik een andere methode ontwikkeld.
Voor elk cijfer van het getal, gebruik ik 1 geheugenplaats, 1 byte.
Voor het getal 16GB heb ik dus 11 bytes nodig.
Ik gebruik 2 van die reeksen, 1 "resultaat" en 1 "opteller". Het resultaat hoef ik verder niks aan te doen, dat blijft zo. De opteller moet ik eerst bewerken: van een normaal getal moet ik elk cijfer appart in de byte plaatsen. 
Vervolgens tel ik de twee reeksen bij elkaar op, zoals je dat zou doen op papier. Gewoon per cijfer bij elkaar optellen. Hierbij moet ik er voor zorgen dat de cijfers niet groter worden dan 9, want elk cijfer kent het getal 0 tot 9. (terwijl elke byte tot 255 kan komen). Het optellen is dus optellen per byte, en eventueel 1 onthouden, en bij de volgende bij op te tellen, echt, zoals je op papier zou doen.

Elke keer als ik een bestand lees, of eigenlijk weergeef, kan ik de grootte van dat bestand bepalen. Die druk ik af, vanwege het overzicht. Tevens plaats ik dat getal in de opteller, en tel ik dat op bij het resultaat. Op het einde van het overzicht toon ik het totaal, het resltaat, inclusief de voorloopnullen. Die voorloopnullen zijn niet gebruikelijk, maar hier heb ik die mogelijkheid wel. En dan zie ik in een oogopslag, hoeveel ik nog afzit van het totaal van 16GB.
Bovendien kan ik punten plaatsen bij de duizendtallen enz. En dat kan normaal niet. Dan heb je gewoon een reeks cijfers achter elkaar, en zie maar waar de makkelijke punten staan.
Bovendien 2, (ha), kan ik dit systeem onbeperkt uitbreiden voor de hoeveelheid cijfens dat ik nodig heb.

23-1-2021

Het blijkt dat bepaalde handelingen op de SD zeer tijdrovend zijn. Met name een backup maken van de data op een gegeven moment kan wel een kwartier in beslag nemen.
Hier ben ik erg van geschrokken. Want al die tijd neemt de SD nauwelijks nieuwe data op. Ik schrijf expres nauwelijks, omdat de eerste 64 bytes wel worden gebufferd. Maar dat is zeker niet genoeg.

Waar ik mee ben begonnen is, een netwerkbuffer te maken met een apparte arduino, een voorportaal zeg maar voor de SD.
De SD zelf neemt dus geen data meer aan van het netwerk. Dat doet de netwerkbuffer nu dus. Die buffer is in eerste instantie 1000 bytes groot, en dat is aanzienlijk meer dan de 64 bytes van de processor zelf.
De netwerkbuffer geeft zijn data pas door, als de SD het weer aankan. En dat is een kwestie van seintjes naar elkaar geven en daarop reageren.

Overigens heb ik het backuppen van data eruit gehaald, omdat ik regelmatig de data op de computer zet. Waarom dat backups maken op de SD?

29-10-2020

Het is al weer even geleden, maar toch weer wat aan de SSD gedaan.

Na wat resultaten van het weerhuisje opgeslagen te hebben, heb ik de SSD afgekoppeld. Ik was toch niet echt tevreden hoe ik de data op zou slaan.

Nu, in afwachting van de resultaten van de regenmeter, ben ik weer in de SSD gedoken.
En wat blijkt, ik kan de data met een vijfde van de ruimte opslaan, en dat is wat ik wilde. Het is alleen even het uitvoeren.

Verder kan ik straks de data van de regenmeter en de barometer opslaan.

Verder denk ik na over her aansturen van de SSD vanuir de bediening. Menugestuurd wil ik alle data die op de schijf staat, tevoorschijn toveren voor verwerking. Want dát is natuurlijk waar het allemaal om draait: opslaan, registratie, en analiseren van de data.

23-6-2020.
Nu heb ik toch niet de oude print kunnen gebruiken.

Een nieuwe print betekent ook een nieuwe opzet. Het is een heel compact station geworden. 7x7cm, zonder stekers. Het werkt als het ware als een harde schijf, maar dan solid-state, een SSD als het ware.
Ook de voeding is aangepast. Voor het eerst gebruik ik geen lineaire voeding, maar een schakelende. Het grote voordeel hiervan is, dat deze veel efficienter met de energie omgaan. Een lineaire voeding vernietigt (= omzetten in warmte) het teveel aan spanning, terwijl een schakelende elke keer kleine beetjes spanning aanvoerd wat nodig is om de boel draaiende te houden. zoiets als "je krijgt wat je nodig hebt, en niet meer". Alleen doet hij dat ongeveer 1 miljoen keer per seconde. (heb ik zélf geteld)

De tweede stap was, om deze SSD te kunnen beheersen. Dat gaat hoe langer hoe beter.
De nieuwe processor gaf nog wat problemen, maar dat lijk ik nu onder de knie te krijgen.

Volgende stap is om de meetwaarden van het weerhuisje op te slaan.
_____________________________________________
16-6-2020.
Gewoon maar weer eens op internet gekeken. Er zijn een aantal ontwikkelborden, die zeer aantrekkelijk zijn. Alleen is de prijs niet echt aantrekkelijk. €200 tot € 400 is niks.

Nu kwam ik ook op een website terecht, waar de arduino nano 3.3 werd beschreven. Ja, die had ik al eens eerder gezien, maar vanwege die 3.3 ben ik er niet verder ingedoken.
Maar wat blijkt? De eigenschappen dat deze 3.3 hebben (ja, meerdere types), zijn voor mij zeer aantrekkelijk. Met name het hoeveelheid geheugen. En dan praat je over 30 keer het programmageheugen, en 128 keer het variabelengeheugen. JA, daar kan ik wat mee.

En die 3.3 dan?
Op het moment ben ik daar ook niet meer bang voor. Ik heb het al eerder aan de hand gehad met de barometer. Het heeft me, door het experimenteren, wel een barometer (van een paar euro) gekost, maar nu beheers ik die techniek.

Want wat is 3.3 eigenlijk.
Heel simpel. Alle arduino-kaarten werken standaard op 5Volt, zowel voeding als logica. Alleen de 3.3 werken op 3,3Volt. En dát moet je goed begrijpen.
Nu zijn er in de handel heel simpele oplossingen hiervoor, alleen moet je dat wel weten.
Gelukkig wordt je veelvuldig gewaarschuwd voor dit verschijnsel, en zelfs oplossingen aangedragen, dus is het niet moeilijk meer. Want als je het begrijpt, dan kan je zelf oplossingen bedenken.
En die oplossing is een converter, omzetter, die 5Volt in 3,3Volt omzet, en andersom. Dus als je die tussen al je datalijnen zet, en de juiste voeding geeft, is het opgelost.

Praktisch gezien kan ik het printplaatje gebruiken van de eerste opzet van de SD. Het enige is, dat de converter erbijgezet moet worden en die ruimte heb ik op de printplaat.
Bovendien is dit printplaatje 1 op 1 oversteekbaar met de gewone nano, buiten de converter om dan. Dus de bedrading moet ik aanpassen.
______________________________________________
10-6-2020.
Ik ben al weer een poos bezig om iets zinnigs op de SD te zetten. Een beetje mee spelen is wel leerzaam hoor, maar je wilt er op een gegeven moment ook wel iets leuks mee doen.

Ik wilde de resultaten van het zonne-oog laten opslaan. Dus die twee dingen met elkaar laten praten. Beide stations hebben een flinke update gehad.

De processor van de SD kreeg het best wel voor de kiezen.
En wat blijkt weer: mogelijk geheugenproblemen. (alweer??)
En ik ben pas bij het begin!
Ik ben bang, als ik een mega2560 gebruik, dat het niet genoeg is. En iets anders héb je gewoon niet, of je moet naar de pi gaan, maar dat is geel arduino. En de pi is erg duur, maar dan héb je ook wat. Het is eigenlijk een kompleet moederbord op miniformaat.

En wat nu???????
_____________________________________________
6-6-2020.
Afgelopen dagen ben ik intensief met de SD bezig geweest.
Het verwerken van data is nog niet zó eenvoudig.

Ik heb besloten om elke dag, per sensor, een nieuw bestand aan te maken. Dit, omdat elke sensor zijn eigen interval-tijd kan hebben, waardoor ze dan veschillende grootte hebben, waardoor ze niet synchroon in de tijd zijn.
Bovendien wil ik de bestanden nog enigszind hanteerbaar maken.

Hierdoor is het logisch dat de bestanden een datumfactor moeten meekrijgen. Dit los ik op door mappen aan te maken met als naam de datum van vandaag. Het formaat van de mapnaam wordt dan jj-mm-dd.

Elk databestand heeft zijn eigen naam. bijv. S01TEMP1. S van sensor, 01 is volgnummer en de rest een verkorte naam van de sensor. Altijd 8 tekens lang.

Om niet te hoeven rekenen (kan trouwens niet in arduino) heb ik een datum-bestand aangemaakt. Daar staan 3 datums in: van vandaag, van gisteren en van eergisteren.
Elke dag om 00:00 uur wordt dit bestand opnieuw geschreven (overschrijven lukt niet). En dan natuurlijk weer met 3 datums. Van de afgevallen datum worden de backup-bestanden gewist. van de datum van gisteren worden backup-bestanden gemaakt.
Bovendien wil ik elke uur de backup bijwerken.
Backup-bestanden gebruik ik om bij eventuele calamiteiten terug te kunnen grijpen naar deze bestanden. Zo heb ik altijd van 2 dagen van alle data een backup.

Ook elke dag om 00:00 uur wordt er een map aangemaakt met de dag van vandaag. Daaronder komen alle nieuwe databestanden te staan. De naam van die bestanden haal ik uit het index-bestand.

Het index-bestand bestaat dus uit de naam van het databestand. 
Als 2e item de volledige naam van de sensor. maximaal 30 tekens.
Als derde item de intervaltijd van opslag naar SD. Het formaat hiervan is 000500. Dit is elke 5 minuten.

Ik denk nu dat ik het redelijk op de rit heb om dit allemaal automatisch te laten plaatsvinden. Er zullen heus nog wel wat onregelmatigheden voordoen, maar daarvoor hebben ze het woord testen of debuggen uitgevonden.
______________________________________________
31-5-2020.
Inmiddels heb ik een protocol geschreven voor de seriele overdracht en opslag op SD.
Ik ga toch met integers werken.
Het grote voordeel is dat ik alle data op dezelfde wijze kan hanteren.
Bovendien kan ik met negatieve getallen werken.
En dat allemaal zonder een stopbit te genereren.
De enigste "beperking" is dat ik getallen tussen -8191 en 8191 kan verwerken.
__________________________________________
28-5-2020
Het is me echt meegevallen om met de SD te werken.

Wel heb ik verschillende manieren van opslag uitgeprobeerd. En dan kijken welke manier voor mijn doel werken.
En ook hier heb ik gekozen voor opslag van waarden kleiner dan 128. Want de data komt rechtstreeks van de seriele overdracht van de betreffende stations, en daar hanteer ik deze regel. Dit heeft te maken met het creeeren van een stopbit in de data; hiermee wordt het laatste stukje data aangegeven in de dataoverdracht.

Als ik dit zo opschrijf, bedenk ik me dat ik in plaats van bytes ook integers kan gebruiken als dataopslag. Alleen heb ik dan 2 bytes nodig per waarneming. Dit zou me best kunnen helpen om data makkelijker te versturen, in alle datastromen die er in het gehele project zijn.
En nu kan ik nog met enig fatsoen ingrijpen in het proces, straks als ik veel meer on-line heb staan, zal dat veel ingewikkelder worden.

BYTE vs INTEGER.
Alle informatie dat de processoren versturen, is 8 bits. (hee, dat klinkt bekend. Zo kennen we ook 16 bits en 32 bits in de computerwereld) Ik moet dus met 8 bits werken.
Een BIT is het kleinste stukje geheugen in een processor (of computer). Een BIT kan 2 standen aannemen, aan of uit, een 1 of een 0. meer niet!
Een 8 bits blokje noemen ze een BYTE. Hierin zijn 256 mogelijkheden, als je alle mogelijkheden bekijkt. 0 tot 255. Na 255 wordt het vanzelf weer 0, de zogenaamde overflow. Meestal is dit voldoende.

intermezzo:
In de overgang van het millennium zaten we hierdoor dik in de problemen met alle computers. Weet je dat nog? de zogenaamde millennium-bug was een fijt.
Wat was er aan de hand?
Vroeger was geheugen een heel kostbaar product. Er werd meer met kilobytes gewerkt, nu zijn dat megabytes, en zelfs gigabytes, en terrabytes zijn er ook al volop.
Doordat er vroeger weinig geheugen voorhanden was, werden in data de notatie van de datum slechts 2 cijfers gebruikt. En als men ergens een datum moest noteren, werd daar het getal 19 voor gezet, en had je 1953 (bijvoorbeeld).
Nou, en dat dus na 31 dec 1999 heel lastig, want je zou dan, met de eerder genoemde overflow, weer teruggaan naar 1900 in plaats van 2000. Ed nou net dát was het probleen, want alle systemen die met de datum rekenen, slaan op tilt.
De hele millennium-operatie was dus alleen het verwerken van de datum-notatie in een 4-cijferige opslag in plaats van 2-cijferig.

In mijn project gebeurt iets soortgelijks. Ik moet heel erg oppassen dat ik geen getallen gebruik groter dan 127. Want hierdoor krijg ik ongemerkt een stopbit in de datastroom, en worden verdere data vermeden. Hierdoor zijn de datastromen niet volledig, en bij een volgende datastroom wordt de data verkeerd geintrepeteerd. Dit, omdat de rest van de vorige stroom data als nieuwe data wordt gezien.
Ook de beperking van het grootste getal is lastig. Een barometerstand van 1014 mBar moet op een andere manier toegepast worden. Maar hier had ik gekozen voor de datum-constrctie zoals vroeger op de computers werd gedaan Ik trek 950 af van het getal, dus sla ik 0 tot 127 op, wat overeenkomt met 950 tot 1077. En mij enige notatie op scherm bijvoorbeeld, tel ik er gewoon weer 950 bij op.
Zoiets dergelijks moest ik gebruiken bij de buitentemperatuur.
Omdat bytes geen nagatieve getallen kan herbergen, moet ik de constructie bedenken plus en min 60 (bijvoorbeeld) Ik kan dan temperaturen van -60 tot +67 graden verwerken. Maar ook híer zou ik dus een aparte constructie moeten maken.

Een INTEGER daarentegen heeft 16 bits. En daarmee kan ik het getal van iets meer dan 64000 creeeren. Nou hier kan ik wat mee.
Want, nu hóef ik nergens meer met allerlei constructies te werken. Nu kan ik alle beschikbare data één op één overzetten, zonder rekening te houden met enige vorm van omzetten. Bovendien heb ik de mogelijkheid om negatieve getallen te gebruiken, dat een voordeel is van integers.


______________________________________________________
24-5-2020
Gisteren ben ik bezig geweest met de studie over het verwerken van data op een SD kaartje.

Printje is geschikt voor een micro SD van maximaal 32GB. Nou, die gaat er dus ook in, want ik wil met één kaartje volstaan, voor altijd.

De studie behelst hoe ik moet handelen om data weg te schrijven en hoe ik deze data weer kan uitlezen voor later gebruik.
Zo denk ik bijvoorbeeld om de data te gebruiken om rechtstreeks in te lezen in excel. Maar dát is nu nog een stap te ver hoor, laat ik eerst maar eens kijken en oefenen hoe het opstaan en weergeven van data werkt.

Wat wil ik opslaan:

  • natuurlijk de temperatuur buiten.
  • vochtigheid buiten.
  • luchtdruk buiten.
  • regenmeter (ook buiten).
  • windrichting.
  • windsnelheid, gemiddeld en piek.
  • aantal uren zon.
  •  
  • verder denk ik de vochtigheid binnen.
  • temperatuur binnen.
  •  
Kortom, hoofdzakelijk alle elementen van het weer.

De SD bewerkingen vormen een eigen station met processor. Deze krijgt de data toegezonden van alle andere stations.

De SD wordt aangestuurd vanuit een bibliotheekbestand. Hierbij zijn uitgebreide voorbeeldprogramma's voorhanden.
Wel mis ik nog enkele bewerkingen, die niet genoemd zijn in de bibliotheek-overzicht, de SD library. En hierbij is internet wederom een uniek medium om ook deze dingen uit te zoeken.

Dit printplaatje wordt aangestuurd via het SPI protocol. Dit is nieuw voor me, ja, ik kende het wel, maar heb er nog nooit mee gewerkt.

vrijdag 15 mei 2020

Weerstation: huisje voor vocht en temperatuur.

2-6-2020.
Ik heb een denkfout gemaakt.
De temperatuur loopt te hoog op in het huisje, Ik vergelijk het met een gewone thermometer aan de muur van de schuur, en die komt nooit in de zon.
Het is ook geen alternatief om daar de huisje aan te hangen, omdat de muur de warmte vasthoud, dat overdag is opgedaan, en dat is duidelijk merkbaar.

Maar hoe dan wel?
Warmte stijgt, dat is een basisprinciepe.
Dan moet ook bovenin de warmte weg kunnen stromen. En dat is in mijn huisje niet het geval. De warme lucht moet ook weer eerst naar beneden, alvorens het weg kan stromen.
De oplossing zie ik om de 3 bovenste cups te vervangen voor schoteltjes, of borden, uiteraard ook van plastic. Het enige waar ik op moet letten is, dat het niet mag inregenen.
Ik denk dat dezelfde winkel, waar ik de soepcups heb gehaald, dat die ook bordjes heeft.
Andere winkels zijn vaak al over gegaan op papieren (karton) bekers en kommetjes.
Eind van de week kom ik weer in die winkel, dus ik moet het even zo laten, want het kan deze week gaan regenen, dus ik kan niet zomaar de bovenste cups weghalen. Wél om eventueel uit te proberen.....
___________________________________________________
1-6-2020.

De buitenopstelling
De stuurprint en de sensorprint

En zo komt het op het display te staan.

De programma's zijn geschreven, de tests en correcties gedaan, klaar om functioneel in de tuin te worden gezet.
Een paar stukjes hout heb ik net wit geschilderd, ook, om de zon en dus de warmte te weerkaatsen. Want een hete bodem onder het huisje werk natuurlijk ook niet.

Nu sla ik een stuk over. De hardware.
Dat zijn 2 printplaatjes geworden. De processor enzo, en de sensoren voor in het huisje.
De printplaat met de sensoren passen prima in het huisje. Deze print wil ik op een plankje tussen 2 blokjes hout klemmen. De soepcups schuif ik daar overheen.

De paatsing van de sensoren heb ik welbedacht geplaatst. De temperatuursensor onderin, de bijbehorende weerstand (ja, je moet goed kijken), en de vochtsensor daarboven. Want ik wil een zo goed mogelijke temperatuur meten, en dat moet dan onder de eventuele warmtebronnen zijn. De vochtsensor en zeker de weerstand zijn zo van die warmtebronnen. En warmte stijgt, en bereikt dus niet de temperatuursensor. Daarentegen consumeert de temperatuursensor zó weinig stroom, dat de eigen opwarming, wat de temperatuurmeting zou kunnen beinvloeden, nihiel is.
De stand-by stroom is 1uA, en dus 5microwatt. De actieve stroom, welke eens in de 10 sec. plaats vindt, en dan nog héél erg kort, is 1mA, dus 5 miliwatt. Dit zijn indrukwekkende kleine waardem die deze sensor zo bijzonder maakt. En dat voor maar € 1,75.

Het weerhuisje staat in de tuin. Het staat nog nieteens zo gek. Gewoon, een weerhuisje.
En gelijk netjes op het display.
 ___________________________________________________
31-5-2020.
Bij het herschrijven van de serieel protocol, kom ik er achter dat de luchtdrukmeting niet hier kan komen. Deze verhuist toch naar de regenmeter.
________________________________________________
30-5-2020
Met die gatenzaag heb
ik de bodem voor het
 grootste gedeelte eruit
gehaald

  
   Ik heb onlangs wat versleten gereedschap vervangen (gatenzaagset). En een draadeind M3, moertjes en ringetjes gehaald. Ik heb gekozen voor messing (roest ook niet).

In de overgebleven rand heb ik 3 gaatjes geboord voor het draadeind.

Van aquarium-luchtslang heb ik stukjes gesneden van 2 cm voor afstandbusjes.
Hier zie je alle onderdelen bij elkaar.
Het rijgen kan beginen.
De stukjes luchtslang worden telkens tussen de cups geschoven als afstandhouder.
En dan de volgende cup.
Nu pas wordt de eerste cup zonder bodem erop geschoven.
En zo komt het geheel eruit te zien.

Als laatste heb ik ringetjes en moertjes geplaatst om alles stevig in elkaar te zeten.

Tot slot nog een stuk luchtslang om bij het bevestigen op een plankje te voorkomen, dat het zaakje in elkaar wordt gedrukt.
_____________________________________________________
16-5-2020
Ik ben alvast in de temperatuursensor gedoken. Het is een dallas DS18B20. Dit is een intelligente temperatuursensor, in zo'n klein huisje.

Er zijn verschillende manieren van aansluiten, dus daar ben ik wel even zoet mee. Flinke datasheet, in het engels... bbbrrrrrrr.....



_________________________________________________________
15-5-2020

Huisje!

Ja, een simpel plastic soepkommetje.

Wat is het idee??

Je moet een ruimte creëeren dat, ook in de volle zon, de luchttemperatuur meet, in de schaduw.

Als je kijkt naar weerhuisjes, want daar hebben we het over, dan zijn dat heel tochtige bouwwerkjes, waar de zonnewarmte zo optimaal mogelijk wordt afgevoerd.
Die huisjes zijn altijd wit (weerkaatst het zonlicht, en dus de warmte). Daar voldoet deze cup al aan.
Het mag niet inregenen. We zetten de cup op zijn kop.
Het moet windvast opgesteld worden. Daar heb ik over nagedacht.

Wat is de bedoeling?
Van een aantal cups haal ik grotendeels de bodem eruit.
In de overgebleven bodem boor ik 3 gaatjes. De cups schuif (rijg) ik op een paar draadeinden, maar telkens met een afstandbusje van 2 cm ertussen. Als bovenste drie neem ik gesloten cups, dus met bodem.
En zo heb ik dan een kleine ruimte, tochtig, wit, en regenvrij.

Maar waarom dan drie gesloten cups bovenaan?
Het zonlicht, dat de bovenste cup verwarmt, kan misschien nog bij de tweede cup komen, maar niet meer bij de derde (dichte) cup. Want tussen de bovenste drie cups tocht het ook, al is de bodem er niet uit.
Ook het sterk overlappen van de cups heeft hetzelfde voordeel. De zonnewarmte moet door minstens drie lagen plasic om in de holle ruimte te kunnen komen.

En zo heb ik, denk ik, een mooie ruimte om de thermometer, de vochtsensor en de barometer te plaatsen.

En in de buurt van deze constructie komt dan de processor en andere zaken.



donderdag 14 mei 2020

Voeding


Zo heb ik behoorlijk nagedacht over de voeding.

Ik wil één voeding maken voor alle stations. Omdat ik toch een netwerkkabel gebruik, waarin ik nog draden over heb, neem ik de voeding mee in deze kabel. Van daaruit worden alle stations gevoed.

Ik heb gekozen voor een voeding van 12 volt. Op elk station voer ik deze 12 volt naar de arduino, en eventueel naar een omzetter naar 5 volt voor zwaardere gevallen, bijvoorbeeld de LED van het display. (800mA) Want dat kan de arduino niet leveren.
Bovendien heb ik spanningverlies over de lange leidingen, maar ik houd genoeg over bij de stations. Bij het meevoeren van 5 volt in de kabel, zou de spanning wel eens te ver kunnen dalen, waardoor projecten niet meer werken.

Bovendien heb ik er een accu van 12 volt in opgenomen, om bij spanningsuitval bij te kunnen springen, en om te kunnen leveren als de hoofdvoeding net even te kort komt.

Verder kan ik enkele stromen en de accu spanning monitoren, om een goede werking te waarborgen. Tevens schakel ik de accu af, als deze te diep dreigt te ontladen, wat funest is voor een loodaccu.