Serielle Schnittstelle zwischen Arduino und Raspberry Pi

  • Hallo :D

    Ich hätte eine Frage zu seriellen Schnittstelle zwischen Arduino und Raspberry.


    Undzwar muss ich ein Projekt machen, indem der Arduino Messwerte an den Raspberry sendet, und der Raspberry Pi dann mit den Werten rechnet.

    Ich habe schon eine "Probe Schnittstelle" gemacht von einem Tutorial und mir ist aufgefallen, dass der Port sich ändert, wenn man den Arduino ausschaltet oder aussteckt.

    Und ich möchte nicht immer wieder durch die Konsole schauen, welcher Port das ist. Das wäre sehr ineffektiv. Ich würde dies gerne sozusagen "automatisieren".


    Ein Freund hat mir dann den Tipp gegeben, dass ich vom Raspberry aus einfach in jeden Port sozusagen eine Art "Code" sende, wie z.B. die Ziffer 1 und der Port, an dem der Arduino ist, die 1 dann wieder zurück gibt und ich so herausfinden kann, inwelchem Port der Arduino ist.


    Ich frage mich nun nur wie ich das wohl machen könnte.


    Ich kann mir zwar vorstellen, dass ich sozusagen eine schleife mache, indem der Raspberry Pi dann den Code in die Ports sendet, und ein If-else Statements folgt, der kontrolliert, ob er den Code auch wieder zurückbekommt oder nicht. Aber ich weiss nicht genau wie ich das umsetzen soll.


    Kann mir vielleicht einer von euch weiter helfen?


    Mit freundlichen Grüßen,

    EleckTroniiKz

  • EleckTroniiKz

    Changed the title of the thread from “Serielle Schnittstelle zischen Arduino und RAspberry Pi” to “Serielle Schnittstelle zwischen Arduino und Raspberry Pi”.
  • Das ist aber keine so besonders gute Idee. Denn was, wenn an der anderen Seite Code laeuft, der dieses Byte irgendwie interpretiert?


    Es gibt verschiedene Wege, dieses Problem zu loesen. Der wahrscheinlich einfachste: wenn der Arduino USB2Serial chip eine Seriennummer hat, dann findest du das Geraet *immer* unter /dev/serial/by-id/. Und wenn du ihn immer an die gleiche Stelle steckst, dann unter /dev/serial/by-path.

  • Das ist aber keine so besonders gute Idee. Denn was, wenn an der anderen Seite Code laeuft, der dieses Byte irgendwie interpretiert?


    Es gibt verschiedene Wege, dieses Problem zu loesen. Der wahrscheinlich einfachste: wenn der Arduino USB2Serial chip eine Seriennummer hat, dann findest du das Geraet *immer* unter /dev/serial/by-id/. Und wenn du ihn immer an die gleiche Stelle steckst, dann unter /dev/serial/by-path.

    Und wie genau finde ich die ID des Arduino heraus? Also nach by-id/... kommt ja dann die ID hin.

  • Mal an und abstecken, und gucken, was sich veraendert.

  • Eben nicht da. Musst du schon in dem by-id Verzeichnis mache.

  • So wie jedes andere Verzeichnis auf deinem Computer auch? Es tut mir leid, aber einen Computer-Fuehrerschein stelle ich hier nicht aus. Grundlagen zur Nutzung von UNIX kann man sich nun wirklich selbst erarbeiten, statt zu verlangen hier an die Hand genommen zu werden.