Intéressant ! Tu pourrais nous en dire plus sur les capteurs utilisés ? C'est du fait maison ? Des trucs achetés ? Tu pourrais partager le source Arduino ?
De mon côté, je compte plutôt utiliser modbus, pour le dialogue et la config. Sauf pour les sorties de sécurité (vent/pluie), qui seront du TOR, en utilisant une entrée US/U, pour plus de fiabilité (linknx peut ne pas tourner).
Sinon, pour le capteur angulaire, j'ai trouvé une méthode sioux ; je n'utilise que des capteurs Hall classique (sortie collecteur ouvert). J'ai 16 trous sur la couronne (c'est la même que pour l'anémomètre ; regarde sur Thingiverse), dans lesquels je peux mettre des aimants, ou pas, pour faire des 1 et des 0. Je place 4 capteurs à effet Hall sur la platine fixe. J'ai codé un bout de script python pour me chercher une combinaison d'aimants (en fonction de la position des capteurs) de telle façon à ce que chacune des 16 positions de la girouette me donne un code binaire 4 bits unique. Suivant la disposition des capteurs, il y a des solutions ou pas (certaines positions ont 384 solutions).
En gros, c'est un code binaire sur un registre à décalage
De mon côté, je compte plutôt utiliser modbus, pour le dialogue et la config. Sauf pour les sorties de sécurité (vent/pluie), qui seront du TOR, en utilisant une entrée US/U, pour plus de fiabilité (linknx peut ne pas tourner).
Sinon, pour le capteur angulaire, j'ai trouvé une méthode sioux ; je n'utilise que des capteurs Hall classique (sortie collecteur ouvert). J'ai 16 trous sur la couronne (c'est la même que pour l'anémomètre ; regarde sur Thingiverse), dans lesquels je peux mettre des aimants, ou pas, pour faire des 1 et des 0. Je place 4 capteurs à effet Hall sur la platine fixe. J'ai codé un bout de script python pour me chercher une combinaison d'aimants (en fonction de la position des capteurs) de telle façon à ce que chacune des 16 positions de la girouette me donne un code binaire 4 bits unique. Suivant la disposition des capteurs, il y a des solutions ou pas (certaines positions ont 384 solutions).
En gros, c'est un code binaire sur un registre à décalage