Arduino Uno, serielle Schnittstellen

Hallo,

als erste praktische Anwendung will ich die Tankanzeigen in einem Wohnmobil etwas genauer als 20l-Schritte machen :sunglasses:.
Dazu habe ich mit dem HC-SR04 den Versuchsaufbau und das Programm wie ich es will erstellt. Dann musste ich feststellen, dass sein wasserdichter "Bruder" unterhalb von 20cm nicht funktioniert :roll_eyes:.
Einzige Alternative, die ich gefunden habe ist der SEN0311 von DFRobot. Der hat aber eine serielle Schnittstelle. An sich kein Problem, den Sketch liefert man freundlicherweise mit. Es w├Ąre also nicht viel Aufwand, meinen Sketch anzupassen.

Das Problem sind aber zwei Tanks, die ├╝berwacht werden m├╝ssen. Somit zwei serielle Schnittstellen ...

Ich habe aber nirgends etwas finden k├Ânnen, wo sich dar├╝ber ausgelassen wird, ob das mit Softserial machbar ist.
Mir ist klar, das hier nur eine Emulation des USART stattfindet und eine wirkliche serielle Schnittstelle nicht ersetzt wird.

Die Abfrage der F├╝llst├Ąnde sowie der Rest des Sketches haben aber alle Zeit der Welt, es gibt absolut nichts zeitkritisches im gesamten Sketch.
Es werden noch drei Temperatursensoren und, wenn ich es hinbekomme das Gewicht der Gasflasche ausgelesen.
Diese sechs Abfragen sollen im loop laufen, die Messwerte werden an ein Display ├╝bergeben und falls kein Alarm ansteht legt der Controller sich bis zur n├Ąchsten Runde schlafen.

Myserial1 k├Ânnte also in aller Seelenruhe die vier Bytes des Sensors abholen und danach Myserial2 ebenfalls in aller Seelenruhe die seines Sensors.

Geht das , Softserial zwei Schnittstellen zuzuweisen?
Ist das Ganze in Euren Augen so machbar oder bekomme ich irgend welche Probleme?

cu

Na dann mach doch. :wink:
In den Beispielen zu SofftwareSerial gibt es ein Beispiel TwoPortReceive.

Wenn nicht weiterkommst, dann bring Deinen aufs n├Âtigste runtergebrochenen Sketch :wink:

Kommt drauf an, wer den Sensoren sagt, da├č sie ihre Daten ├╝bermitteln sollen. Dann k├Ânnte man die Sensoren ├╝ber RS-485 ankoppeln.

@my_xy_projekt
Danke, hatte ich gelesen, aber nicht gefunden.
Mit dem Stichwort TwoPortReceive war meine Suche erfolgreicher ...

@DrDiettrich
Der Sensor liefert die Daten eigentlich kontinuierlich aus.

Output Communication

When "RX" floats or input High level, the module outputs processed value, the data is more steady, response time: 100-300ms; when input Low level, the module outputs real-time value, response time: 100ms.

cu

Ja, das funktioniert def. Du musst nur verhindern, dass die Schnittstellen gleichzeitig angesprochen werden. Das funktioniert nicht.
Wenn du sie aber innerhalb deines Sketches nacheinander ansteuerst, kein Problem.

Mit dieser Beschreibung komme ich nicht klar, und auch nicht mit der Seite von DFRobot :frowning:

Sag mir bitte immer wo Du hinf├Ąhrst, Dein Wohnmobil parkst oder abstellst damitt ich mich immer au├čerhalb des Feuerballs aufhalten kann.

Einen Tank f├╝r Kraftstoff mit einem daf├╝r nicht zugelassenen Sensor zu messen ist meiner Ansicht grob fahrl├Ąssig.

Gr├╝├če Uwe

Wasser und Abwasser gibt es auch....

Das steht klar in dessen Spec. Das ist die Umschaltzeit von Senden auf Empfangen, weil es ja nur 1 Wandler ist.

Gru├č Tommy

Erstaunlicher Weise ist das gar kein Problem.
Da ist nix verboten, solange der Tank und die Einbauten dicht sind.
Passieren kann dann auch nix.

z.B. die Schleifer der ├╝blichen Tankgeber sind offen. selbst wenn sie wegen Kurzschluss fl├╝ssiges Metall verspritzen, passiert nix.
Auch sind Benzinpumpen in aller Regel B├╝rstenmotore. Diese sind keinesfalls Benzindicht, manche gar ganz offen. Und die Kohlen feuern erheblich. Was bei 12Vund ca 5A auch kein gro├čes Wunder ist.

Mein Tipp lautet "Kapazitive F├╝llstandsgeber"

@uwefed
Du kannst beruhigt neben mir parken, ich schrieb ja "wasserdicht" ....

Habe ich auch schon ├╝berlegt.
Drucksensoren sind auch noch im Spiel, da bin ich mir aber nicht im klaren, wie man ein eindringen von Wasser am Schlauchende verhindert. St├Ąndig bel├╝ften ist zu aufwendig.

cu

Hallo hawe07546,
oder die Tanks auf eine Waage stellen und wiegen.
Ich w├╝nsche einen geschmeidigen Tag und viel Spass beim Programmieren in C++.