I see a couple of issues here which leads to some questions. First you are using the analog outputs from the moisture sensor and not using them on board (they go to connectors to go off board.) Analog signals need to be processed on board only a short distance away (such as in to a local microprocessor that is only a few CM away from the sensor.) Analog signals tend to degrade with distance pick up interference and become inaccurate when sent long distances. That brings up my first question, how long are the wires between the various boards? Less than 1 meter or possibly much longer? The reason for asking this is even 5V digital signals do not travel very far very well. Internal to a pcb is fine, via wires to another board for 20cm or so is fine, but longer than that you need to use something like RS485 drivers that can go up 1.2KM over twisted pair wires. If your various boards are more than 20cm or so apart you probably need to add RS485 drivers to your design. There are rs485 modules with Fritzing parts around. For the analog signals you are probably better off to use the digital output from the moisture sensor. The down side to that is you only get one output (lower than 1 level or higher than that level) not an indication of how much moisture there is. If you need the actual moisture value, you likely need to add a nano or other microprocessor to this board then use the analog input on the Nano to convert to a digital value and use (possibly via and RS485 converter) to send that digital value to the other board where the value is used. The raw analog signal is unlikely to be accurate at the far end if sent directly. You can set up a test of this if you like by setting a moisture sensor up displaying its analog value via a local Nano and compare what a Nano on the far end of the wire measuring the same analog signal gets and see how closely they match and if that does for you (I suspect it will be quite inaccurate though!) Unfortunately this may cause a fair amount of work, but better work now than buying all the boards and finding out it doesn’t work! It would probably be a good idea to set up a test using the circuit from each board on a breadboard and try it over the distances that you need to go to find any problems before committing to boards. That is unfortunately a lot of work, but better than buying and assembling the boards only to discover they don’t work!
Peter
via google translate
Ich sehe hier ein paar Probleme, die zu einigen Fragen führen. Erstens verwenden Sie die analogen Ausgänge des Feuchtigkeitssensors und nicht auf der Platine (sie gehen zu Anschlüssen, um von der Platine wegzugehen). Analoge Signale müssen auf der Platine in kurzer Entfernung verarbeitet werden (z. B. in einem lokalen Mikroprozessor, der nur wenige Zentimeter vom Sensor entfernt ist). Analoge Signale neigen dazu, mit zunehmender Entfernung an Qualität zu verlieren, nehmen Störungen auf und werden ungenau, wenn sie über lange Distanzen gesendet werden. Das bringt mich zu meiner ersten Frage: Wie lang sind die Kabel zwischen den verschiedenen Platinen? Weniger als 1 Meter oder möglicherweise viel länger? Der Grund für diese Frage ist, dass selbst 5-V-Digitalsignale nicht sehr weit übertragen werden. Intern auf einer Platine ist in Ordnung, über Kabel zu einer anderen Platine für etwa 20 cm ist in Ordnung, aber länger als das müssen Sie so etwas wie RS485-Treiber verwenden, die über Twisted Pair-Kabel bis zu 1,2 km weit reichen können. Wenn Ihre verschiedenen Platinen mehr als etwa 20 cm voneinander entfernt sind, müssen Sie Ihrem Design wahrscheinlich RS485-Treiber hinzufügen. Es gibt RS485-Module mit Fritzing-Teilen. Für die analogen Signale ist es wahrscheinlich besser, den digitalen Ausgang des Feuchtigkeitssensors zu verwenden. Der Nachteil dabei ist, dass Sie nur einen Ausgang erhalten (niedriger als 1 Pegel oder höher als dieser Pegel) und keinen Hinweis darauf, wie viel Feuchtigkeit vorhanden ist. Wenn Sie den tatsächlichen Feuchtigkeitswert benötigen, müssen Sie dieser Platine wahrscheinlich einen Nano oder einen anderen Mikroprozessor hinzufügen und dann den analogen Eingang des Nano verwenden, um ihn in einen digitalen Wert umzuwandeln und diesen (möglicherweise über einen RS485-Konverter) an die andere Platine zu senden, wo der Wert verwendet wird. Das rohe analoge Signal ist am anderen Ende wahrscheinlich nicht genau, wenn es direkt gesendet wird. Sie können einen Test dafür einrichten, indem Sie einen Feuchtigkeitssensor einrichten, der seinen analogen Wert über einen lokalen Nano anzeigt, und vergleichen, was ein Nano am anderen Ende des Kabels, der dasselbe analoge Signal misst, erhält, und sehen, wie genau sie übereinstimmen und ob das für Sie funktioniert (ich vermute jedoch, dass es ziemlich ungenau sein wird!). Leider kann dies eine Menge Arbeit verursachen, aber es ist besser, jetzt zu arbeiten, als alle Platinen zu kaufen und herauszufinden, dass es nicht funktioniert! Es wäre wahrscheinlich eine gute Idee, einen Test mit den Schaltkreisen von jeder Platine auf einem Steckbrett durchzuführen und sie über die Entfernungen auszuprobieren, die Sie zurücklegen müssen, um etwaige Probleme zu finden, bevor Sie sich für Platinen entscheiden. Das ist leider viel Arbeit, aber immer noch besser, als die Platinen zu kaufen und zusammenzubauen, nur um dann festzustellen, dass sie nicht funktionieren!
Peter