Serre agricole capteurs distants

Bonjour à vous communauté d'Arduino!

Tout d'abord une présentation. Je suis technicien en électronique industrielle dans une usine et je travaille aussi actuellement dans un projet d'échange de service sur une coop de ferme située au Québec. Le projet consiste à remplacer 3 contrôleurs Igrow indépendants sur 3 serres séparées (mesurant chacune 35 mètres par 15 mètres) par 3 Arduino Mega qui seront reliés entre eux par port série pour l'optimisation des ressources (irrigation et chauffage) et chacun aura un shield Ethernet reliés par câble à une switch Ethernet pour l'acquisition des données et le contrôle à distance depuis un web server. Actuellement, un seul Arduino a été implanté et il contrôle l'ouverture des roll-up par paliers, une fan et des volets, le chauffage de l'air et du sol et l'rrigation. Le problème est que je veux prendre plusieurs points de température et d'humidité à une distance jusqu'à 40 mètres de l'Arduino. J'utilise des DS18B20 sur des canaux séparés (1 par fil) avec du câble blindé à une distance d'environ 15 mètres et j'ai baissé la résistance pull-up à 2,3k chacun et ça fonctionne bien mais pas plus loin. Y a-t-il une autre solution que d'ajouer un autre contrôleur au milieu de la serre? Pour l'humidité j'essaie le SHT10 mais les résultats ne sont pas très concluants. Avez-vous testés d'autres capteurs ou d'autres stratégies sur des projets similaires à faible coût? Merci d'avances pour le partage de vos connaissances et expériences!

Le DHT22 est fiable pour l'hygrométrie.

un DHT22 correctement configuré selon la datasheet adafruit peut-être joint jusqu'à 100m

ça a été discuté sur le forum en anglais il y a "quelques temps" (2013 !) pour le même usage et @akaj9 disait avoir sans soucis 60m

un peu plus loin dans la discussion @ariadrianto a répondu pouvoir atteindre 150m avec un câble UTP Cat 5E

Sur la température, @68tjs (du forum Français mais en anglais dans ce post) qui a aussi posté cela concernant un LM35

LM35_adaptation.png

Salut,

Patatrak:
J'utilise des DS18B20 sur des canaux séparés (1 par fil) avec du câble blindé à une distance d'environ 15 mètres et j'ai baissé la résistance pull-up à 2,3k chacun et ça fonctionne bien mais pas plus loin.

Autant que je me souvienne, il NE FAUT PAS DE CABLE BLINDE.
J'utilise du simple cable téléphonique et mon réseau faisait plus de 70m avec une 20e de sondes sans pb.
Par contre, plutot que de le branché directement sur les GPIO, je suis passé par un DS2482 (I2C -> 1W).
Plus d'info sur ma page : http://destroyedlolo.info/BananaPI/1wire/

Patatrak:
...
J'utilise des DS18B20

Bonsoir
Une bonne lecture sur le sujet
8)

Merci tout le monde pour vos réponses aussi rapides! Je vais utiliser des dht22 avec une alimentation séparée et du câble UTP.
destryedlolo est-ce que tu fais passer 8 signaux de dht22 dans le même câble UTP?
J-M-L et Artouste merci pour les liens!

Patatrak:
destryedlolo est-ce que tu fais passer 8 signaux de dht22 dans le même câble UTP?

Non, les miens sont a proximité immédiate de mes ESP8266 et donc ont des câbles dédiés (je n'en utilise pour le moment que pour mon poulailler qui est séparé de la maison).

Mais ... je suis en train de faire un adaptateur 1-wire pour DHT22 à base d'Arduino tiny ce qui me permettra d'avoir de telles sondes sur mon réseau domestique.

destroyedlolo:
Non, les miens sont a proximité immédiate de mes ESP8266 et donc ont des câbles dédiés (je n'en utilise pour le moment que pour mon poulailler qui est séparé de la maison).

Mais ... je suis en train de faire un adaptateur 1-wire pour DHT22 à base d'Arduino tiny ce qui me permettra d'avoir de telles sondes sur mon réseau domestique.

Bonsoir
tu "entend" quoi exactement en finalité par "adaptateur 1W DHT22" ?

tu "travaille" sur quelle base " ATtiny" ?
Clock "interne/externe" ?

Salut,

Artouste:
tu "entend" quoi exactement en finalité par "adaptateur 1W DHT22" ?

Ben utiliser un ATtiny pour exposer des DHT22 sur mon réseau 1-wire.
En d'autres termes, l'Arduino expose un "device" 1-wire sur mon bus : lorsqu'une demande de conversion arrive, elle lance une conversion sur le DHT22 puis expose la réponse avec des ordres de lecture de scratchpad comme le font les sondes "normales".

Artouste:
tu "travaille" sur quelle base " ATtiny" ?
Clock "interne/externe" ?

Pour le moment, je n'ai fait que des prototypes a base d'Uno : ca fonctionne vraiment très bien, pour le moment juste pour la température en simulant un DS18B20.
Il me semble en avoir parlé il y a quelques mois sur ce forum ... mais j'ai un peu laissé en plan car j'avais d'autres choses à faire.
Mais je m'y remet :slight_smile:

En regardant les forks de OneWireArduinoSlave, il va peut-être falloir que je réintegre du code pour prendre en charge les ATTiny : a voir.
Mais bon, dans un 1er temps, je vais quand même finir la prise en charge de l'humidité et ensuite je m'attaque aux ATTiny :slight_smile:

destroyedlolo:
En regardant les forks de OneWireArduinoSlave, il va peut-être falloir que je réintegre du code pour prendre en charge les ATTiny : a voir.
Mais bon, dans un 1er temps, je vais quand même finir la prise en charge de l'humidité et ensuite je m'attaque aux ATTiny :slight_smile: