Schwimmbadsteuerung online bringen

  • Hallo
    Ich hab nicht viel Erfahrung mit den Raspberry.
    Ich habe eine SPS Steuerung die Heizung und Pumpen unseres Schwimmbecken steuert. Ich würde gerne die Temperaturen übers Handy auslesen können.
    Wenn eine Störung Auftritt würde ich gerne per Mail oder PushNachricht verständigt werden. Die Kommunikation zwischen SPS und Raspberry würde über Modbus RTU laufen wobei der Raspberry als Slave agieren muß.

    Wie setzte ich das Projekt am besten um.
    Im Anhang ist noch eine Qraphische Übersicht.
    :helpnew: :danke_ATDE:

  • Hallo noisefloor

    Die einzige Schnitstelle die ich habe ist Modbus RTU, zur not würde auch RS232 gehen da bin ich aber auf 40 Zeichen beschränkt.

    Ich dachte mir das ich die einzelnen Temperaturwerte über jeweils eine Adresse schicke, und die Summenstörung über ein einzelnes Bit sende.
    Wenn ich das bit zyklisch abfrage und es ändert seinen Wert auf 1 dann Sende ich eine Mail aus.
    Soll einmal mit mehren Störungen funktionieren, zB. Pumpe leuft trocken oder Filter verschmutzt.

    Die Anbindung über Modbus überfordert mein können.
    Auf eine Programmiersprache habe ich mich noch nicht entschieden.
    In der SPS kann ich alles ändern, das Programm habe ich dort selbst geschrieben.
    Gruß Martin

  • Hi Martin,
    Modbus hab' ich mal für JumpY in sein -> RFID-Projekt eingebaut <-. Das läuft über RS485 ... da redet der RPi mit einem oder mehreren Arduinos. Vielleicht hilft Dir das ja ein wenig weiter und/oder Du kannst Dir da was abschauen ...

    cu,
    -ds-

  • [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Hallo dreamshader[/font]

    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Manchmal sieht man den Wald vor lauter Bäumen nicht.[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Ich hab eine funktionierende Modbus Verbindung zwischen Meinem Display und der Steuerung.[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Jetzt müste ich nur noch zuhören können. Da Werden Pakete mit Startadressen durch die Gegend geschickt. Leider bringe ich QModbus nicht zum laufen.[/font]

    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Lg. Martin [/font]

  • Hallo dreamsheader

    Ich hab gemäs deiner Anleitung die libmodus-3.1.2 instaliert.
    Die Verzeichnisse /usr/local/lib und include sind mit den Daten gefüllt.

    Beim Starten der Datei ./RaspiRFIDModbus.c kommt es zu Fehlern.

    Wo hab ich da den Fehler gemacht?
    Oder liegt es daran das ich Raspicomm verwende.

    Lg. Martin

  • Hallo

    Ich nehme an ud meinst folgenden Befehl.

    Liegt das am comm Modul?

    Danke im Vorraus

  • Bitte Schön

    Bis auf die Adresse vom usb Anschluß ist alles gleich geblieben
    Gruß Martin

  • Hi,
    also ... da fehlen die hash-Zeichen vor einigen defines und includes,
    die enum-Geschichte ist ebenfalls unvollständig (da steht scheinbar ein Teil in der falschen Zeile am Ende),
    dann fehlt ein Teil am Schluss.
    Hast Du das unter Windows oder so editiert ...
    Das file kann so nicht übersetzt werden.
    Wo hast Du das denn her?
    Da ist vermutlich gründlich was beim kopieren schiefgegangen ...

    //Ah ok ... ich dachte es mir schon ... da hast Du eines von den files die ich für Jumpy gebastelt habe genommen. Wie gesagt ... da ist was beim Kopieren schief gelaufen oder Du hast das unter Windows editiert.


    cu,
    -ds-

  • hallo dreamshader

    Das File nochmal downgeloaded un per WinSCP auf den Raspberry kobiert.
    Mit nano die Adresse geändert.
    Compiliert ohne Fehler.

    Beim Ausführen bekomme ich jetzt folgende Fehlermeldung.

    Code
    ./RaspiRFIDModbus: error while loading shared libraries: libmodbus.so.5: cannot open shared object file: No such file or directory


    Sourcecode:

  • Hallo Martin,
    schau mal unter /usr/local/lib nach, ob die Modbus-Lib richtig installiert wurde:

    Code
    pi@rpi-lcurr ~ $ ls -l /usr/local/lib/libmodbus.*
    -rwxr-xr-x 1 root staff    919 Apr  9 02:58 /usr/local/lib/libmodbus.la
    lrwxrwxrwx 1 root staff     18 Apr  9 02:58 /usr/local/lib/libmodbus.so -> libmodbus.so.5.1.0
    lrwxrwxrwx 1 root staff     18 Apr  9 02:58 /usr/local/lib/libmodbus.so.5 -> libmodbus.so.5.1.0
    -rwxr-xr-x 1 root staff 114648 Apr  9 02:58 /usr/local/lib/libmodbus.so.5.1.0
    pi@rpi-lcurr ~ $

    cu,
    -ds-

  • Hallo
    das passt

    Code
    pi@raspberrypi ~ $ ls -l /usr/local/lib/libmodbus.*
    -rwxr-xr-x 1 root staff    919 Aug 23 22:01 /usr/local/lib/libmodbus.la
    lrwxrwxrwx 1 root staff     18 Aug 23 22:01 /usr/local/lib/libmodbus.so -> libmodbus.so.5.1.0
    lrwxrwxrwx 1 root staff     18 Aug 23 22:01 /usr/local/lib/libmodbus.so.5 -> libmodbus.so.5.1.0
    -rwxr-xr-x 1 root staff 101909 Aug 23 22:01 /usr/local/lib/libmodbus.so.5.1.0
    pi@raspberrypi ~ $
  • Hm ... erstaunlich ...

    Bist Du sicher, dass die lib ok ist?

    Code
    pi@rpi-lcurr ~ $ file /usr/local/lib/libmodbus.*
    /usr/local/lib/libmodbus.la:       libtool library file, ASCII text
    /usr/local/lib/libmodbus.so:       symbolic link to libmodbus.so.5.1.0
    /usr/local/lib/libmodbus.so.5:     symbolic link to libmodbus.so.5.1.0
    /usr/local/lib/libmodbus.so.5.1.0: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=9b79ef4a77ea96b6aee210393891ee7fe17670b1, not stripped
    pi@rpi-lcurr ~ $

    Wenn ja, dann versuch mal nach -> diesen Beiträgen <- den dynamischen Linker zu aktualisieren ...

    cu,
    -ds-

  • Hallo dreamshader
    Das dürfte passen

    Code
    pi@raspberrypi ~ $ file /usr/local/lib/libmodbus.*
    /usr/local/lib/libmodbus.la:       libtool library file,
    /usr/local/lib/libmodbus.so:       symbolic link to `libmodbus.so.5.1.0'
    /usr/local/lib/libmodbus.so.5:     symbolic link to `libmodbus.so.5.1.0'
    /usr/local/lib/libmodbus.so.5.1.0: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x69d89a57b9061f837f759ab2a95bc231de6e6dc3, not stripped
    pi@raspberrypi ~ $

    Vielleicht liegt es wirklich am comm modul
    Automatisch zusammengefügt:
    Dieser Sourcecode war original dabei.

    Da bekomme ich aber nur diese Ausgabe:

    Das dürfte kein Modbus sein sondern nur ein einfaches auslesen ohne Register.

    Einmal editiert, zuletzt von Martin R (24. August 2015 um 15:12)

  • Hallo,
    ich glaube, das liegt an der Library:


    ...
    /usr/local/lib/libmodbus.so.5.1.0: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=9b79ef4a77ea96b6aee210393891ee7fe17670b1, not stripped


    ...
    /usr/local/lib/libmodbus.so.5.1.0: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x69d89a57b9061f837f759ab2a95bc231de6e6dc3, not stripped

    da fehlt bei Dir das EABI5 ...
    Ist jetzt aber nur eine Vermutung, denn normalerweise sollte er die libs unter /usr/local/lib finden.


    ...
    Das dürfte kein Modbus sein sondern nur ein einfaches auslesen ohne Register.

    da hast du wohl wahr ...

    cu,
    -ds-

  • Hallo dreamshader

    Bin da grad auf was merkwürdiges gestoßen.

    Die Angaben von deinem link bezüglich libmodbus sind unterschiedlich, war scheinlich nachtäglich geändert worden.
    https://www.forum-raspberrypi.de/Thread-arduino-rs485-kommunikation-raspi-arduino?page=2&highlight=modbus

    Bei Github giebt es keine Datei configure

    Bild:
    Links ist das Zibfile, rechts von Github

    Gruß Martin

  • Welches zip-Archiv meinst Du :s

    Zum Thema github:

    Zitat


    ...
    To install, just run the usual dance, ./configure && make install. Run ./autogen.sh first to generate the configure script if required.
    ...


    Das musst Du erst erzeugen ;)
    Jedenfalls habe ich den Verdacht, dass das bei Dir an der Lib liegt.

    cu,
    -ds-

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!