Na jaren van afwezigheid wil ik jullie een vraagstukje voorleggen. Ik ben benieuwd naar jullie gedachten en suggesties. Het heeft wel wat introductie nodig. Alvast bedankt voor de moeite.
Ik ben bezig om m'n 3 zonweringen (uitvalschermen) elektrisch bedienbaar te maken. In de basis is dat al gelukt: de buismotoren zitten er inmiddels in en ik heb een schakelkastje gemaakt waar de sturing in zit. Die bevat knoppen om het e.e.a. handmatig te bedienen, de ontvanger van twee afstandsbedieningen en een Arduino Nano om in de toekomst wat zaken te kunnen gaan automatiseren. Na zonsondergang automatisch de zonweringen omhoog halen, bediening/statuscontrole met een app of een doe-net-als-of-we-thuis-zijn-stand zijn dingen waar ik dan aan denk. De basis werkt nu in ieder geval en ik kan het naar wens en gelegenheid gaan uitbreiden.
Waar ik nu het eerste mee aan de slag wil, is detecteren of het hard waait en zo ja, de zonweringen omhoog halen. De meestgebruikte methode daarvoor is een windmeter, maar ik vermoed dat het e.e.a. vrij snel false positives én false negatives zou opleveren. Het betreft hier namelijk een wijkje van appartementencomplexen waar het nog wel eens raar kan waaien, zonder per sé de zonweringen in gevaar te brengen. Daarom heb ik besloten om voorlopig een andere weg in te slaan: aan het einde van ieder uitvalscherm een versnellingsmeter (accelerometer) plaatsen, om daarmee de daadwerkelijke beweging te meten. Bijkomend voordeel is dat ik ook de stand van de zonweringen kan meten. Het enige nadeel lijkt dat het niet mogelijk is om met opgerolde zonweringen te bepalen of het waait, wat ik (nog) niet als een echt probleem ervaar.
Ik heb 3 ADXL345's (datasheet) meebesteld met wat andere spulletjes, die ik nodig had voor de schakelkast. Nu ik er mee aan de slag wil, blijkt echter dat de twee ondersteunde communicatieprotocollen (SPI en I2C niet compatible zijn met communicatie op langere afstand. De verste versnellingsmeter zou op ongeveer 8 meter van de Arduino zitten. Daar komt bij kijken dat ik nog maar een beperkt aantal pinnen over heb op m'n Arduino Nano en die maar 1 hardware SPI en 1 I2C interface heeft. I2C heeft de minste pinnen nodig, maar een ADXL345 biedt slechts keuze uit twee adressen. Voor SPI heb ik precies genoeg pinnen, maar dan blijft het langeafstandsprobleem over.
Het internet gaf me de suggestie om SPI over RS485 te gaan doen. Voor dat doel heb ik een aantal LTC485 (datasheet) gekocht. Daar heb ik niet echt goed over nagedacht, want ik kom er niet echt uit hoe ik m'n CS- en kloklijnen hiermee zou verbinden. Als ik voor ieder van de 3 CS-lijnen een aderpaar nodig heb, dan kom ik er niet met het stuk CAT5-kabel dat ik had gehoopt hiervoor in te kunnen zetten. En kabels met meer dan 8 aders zijn lastig te vinden. Meerdere kabels zou kunnen, maar maken het wat lastiger om het nog een beetje toonbaar op de armen van de zonwering te bevestigen. Daarnaast voelt het ook als overkill. En de ADXL345's ondersteunen naar mijn weten geen daisy chaining.
Een andere gedachte is om de sensorunits te gaan voorzien van een eigen microcontroller, waardoor ik meer invloed heb over de te ondersteunen protocollen. Maar ik wil het ook niet complexer maken dan noodzakelijk. En dat ik waar ik nu een beetje vastloop en waar ik jullie graag om advies zou vragen.
Wat zouden jullie doen? Wat zijn jullie gedachten hierbij?
Overigens ben ik niet zo heel gehecht aan de sensoren en chips die ik nu heb liggen. Als het leidt tot een beter eindresultaat dan sta ik er voor open om iets anders aan te schaffen.