Page 1 of 2
Modbus Master IO-Link
Posted: 21 Sep 2020, 16:34
by Marius Kaiser
Hallo zusammen,
ich baue gerade für meine Masterarbeit einige Komponenten in einen Schaltschrank ein, um mit diesen mehrere Prüfstände zu überwachen. Die Basis für das Monitoring der Prüfstände bildet ein RevPi Connect + mit 1x DIO und 4x AIO.
Mit PiCotry und Node-Red habe ich bisher die Ein- und Ausgänge konfiguriert und für eine HMI vorbereitet. Da mir noch zwei Sensordaten fehlen und ich die Hardware bereits habe wollte ich nun per Modbus TCP diese Daten abfragen.
Hierbei handelt es sich um einen Beschleunigungssensor (VVB020) und einen Drehzahlsensor (DI5028) von IFM. Da diese beiden Sensor IO-Link Sensoren sind habe ich einen passenden IO-Link Master mit Modbus TCP-Schnittstelle besorgt (AL1940) und dachte es ist möglich damit zu kommunizieren. Doch aus irgendeinem Grund komme ich nicht an die Daten.
- IO-Link-Master_Konfiguration.PNG (71.65 KiB) Viewed 12031 times
Hier habe ich den IO-Link Master konfiguriert.
- PICotry.PNG (129.84 KiB) Viewed 12031 times
Und so PiCtory.
Tippe ich nun in die RevPi Console "piTest -r Modbus_Master_Status" ein erhalte ich folgende Nachricht: 1 Byte-Value of Modbus_Master_Status: 17 dez (=11 hex)
Dies deutet für mich auf einen Verbindungsfehler hin. Ach wenn ich probiere eins der Register zu lesen kommt nur 0 dez.
Ich habe mir das Video angeschaut, die Anleitung durchgelesen und auch hier im Forum habe ich gesucht.
Was mache ich falsch?
Link zum IO-Link-Master:
https://www.ifm.com/de/de/product/AL1940?tab=details
Re: Modbus Master IO-Link
Posted: 22 Sep 2020, 15:36
by dirk
Hi vielen Dank für Deine ausführlichen Informationen. Wir benötigen mehr Informationen. Kannst Du diese Dateien posten?
Code: Select all
/var/log/messages
/var/log/daemon.log
/etc/revpi/config.rsc
Dankeschön
Re: Modbus Master IO-Link
Posted: 23 Sep 2020, 12:41
by Marius Kaiser
Hallo Dirk,
anbei die gewünschten Daten. Es ist wirklich sehr viel und ich weiß nicht genau wo nach du suchst, deshalb alles.
cat /var/log/messages
Code: Select all
Sep 21 16:17:13 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1727" x-info="http://www.rsyslog.com"] rsyslogd was HUPed
Sep 21 16:39:27 RevPi40083 cron[1576]: (CRON) INFO (pidfile fd = 3)
Sep 21 16:39:27 RevPi40083 cron[1576]: (CRON) INFO (Running @reboot jobs)
Sep 21 16:39:27 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1571" x-info="http://www.rsyslog.com"] start
Sep 22 08:24:27 RevPi40083 cron[1699]: (CRON) INFO (pidfile fd = 3)
Sep 22 08:24:27 RevPi40083 cron[1699]: (CRON) INFO (Running @reboot jobs)
Sep 22 08:24:27 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1700" x-info="http://www.rsyslog.com"] start
Sep 22 08:34:27 RevPi40083 systemd-timesyncd[1655]: Synchronized to time server 141.64.5.250:123 (2.debian.pool.ntp.org).
Sep 22 08:39:01 RevPi40083 CRON[2706]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 22 09:09:01 RevPi40083 CRON[2852]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 22 09:17:01 RevPi40083 CRON[2914]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Sep 22 09:39:01 RevPi40083 CRON[2977]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 22 14:12:04 RevPi40083 cron[1603]: (CRON) INFO (pidfile fd = 3)
Sep 22 14:12:04 RevPi40083 cron[1603]: (CRON) INFO (Running @reboot jobs)
Sep 22 14:12:04 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1633" x-info="http://www.rsyslog.com"] start
Sep 22 14:13:34 RevPi40083 systemd-timesyncd[1567]: Synchronized to time server 144.76.43.40:123 (1.debian.pool.ntp.org).
Sep 22 14:17:01 RevPi40083 CRON[2298]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Sep 22 14:51:38 RevPi40083 cron[1708]: (CRON) INFO (pidfile fd = 3)
Sep 22 14:51:38 RevPi40083 cron[1708]: (CRON) INFO (Running @reboot jobs)
Sep 22 14:51:38 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1705" x-info="http://www.rsyslog.com"] start
Sep 22 14:52:08 RevPi40083 systemd-timesyncd[1650]: Synchronized to time server 144.76.159.151:123 (2.debian.pool.ntp.org).
Sep 22 15:09:01 RevPi40083 CRON[2549]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 22 15:17:01 RevPi40083 CRON[2644]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Sep 22 15:39:01 RevPi40083 CRON[2687]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 22 16:01:24 RevPi40083 cron[1609]: (CRON) INFO (pidfile fd = 3)
Sep 22 16:01:24 RevPi40083 cron[1609]: (CRON) INFO (Running @reboot jobs)
Sep 22 16:01:24 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1628" x-info="http://www.rsyslog.com"] start
Sep 22 16:01:54 RevPi40083 systemd-timesyncd[1575]: Synchronized to time server 193.30.120.245:123 (2.debian.pool.ntp.org).
Sep 22 16:09:01 RevPi40083 CRON[2046]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 22 16:17:01 RevPi40083 CRON[2111]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Sep 23 08:33:18 RevPi40083 cron[1489]: (CRON) INFO (pidfile fd = 3)
Sep 23 08:33:18 RevPi40083 cron[1489]: (CRON) INFO (Running @reboot jobs)
Sep 23 08:33:18 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1494" x-info="http://www.rsyslog.com"] start
Sep 23 08:33:47 RevPi40083 systemd-timesyncd[1279]: Synchronized to time server 195.50.171.101:123 (2.debian.pool.ntp.org).
Sep 23 08:39:01 RevPi40083 CRON[2687]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 23 09:09:01 RevPi40083 CRON[2765]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 23 09:17:01 RevPi40083 CRON[2828]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Sep 23 09:39:01 RevPi40083 CRON[2882]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 23 09:47:41 RevPi40083 cron[1567]: (CRON) INFO (pidfile fd = 3)
Sep 23 09:47:41 RevPi40083 cron[1567]: (CRON) INFO (Running @reboot jobs)
Sep 23 09:47:41 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1588" x-info="http://www.rsyslog.com"] start
Sep 23 09:48:11 RevPi40083 systemd-timesyncd[1502]: Synchronized to time server 194.190.168.1:123 (2.debian.pool.ntp.org).
Sep 23 10:09:01 RevPi40083 CRON[2475]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 23 10:17:01 RevPi40083 CRON[2608]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Sep 23 10:39:01 RevPi40083 CRON[6972]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 23 11:09:01 RevPi40083 CRON[7427]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Sep 23 11:17:01 RevPi40083 CRON[7531]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Sep 23 12:24:53 RevPi40083 cron[1648]: (CRON) INFO (pidfile fd = 3)
Sep 23 12:24:53 RevPi40083 cron[1648]: (CRON) INFO (Running @reboot jobs)
Sep 23 12:24:53 RevPi40083 liblogging-stdlog: [origin software="rsyslogd" swVersion="8.24.0" x-pid="1651" x-info="http://www.rsyslog.com"] start
Sep 23 12:25:23 RevPi40083 systemd-timesyncd[1573]: Synchronized to time server 163.237.218.19:123 (2.debian.pool.ntp.org).
Sep 23 12:39:01 RevPi40083 CRON[2579]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
Re: Modbus Master IO-Link
Posted: 23 Sep 2020, 12:43
by Marius Kaiser
Sep 23 11:31:10 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:16 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:21 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:27 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:32 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:38 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:43 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:49 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:31:54 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:32:00 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Sep 23 11:32:05 RevPi40083 piModbusMaster[1689]: Modbus connection failed: ip=192.168.1.250 errno=Operation now in progress
Re: Modbus Master IO-Link
Posted: 23 Sep 2020, 12:45
by Marius Kaiser
cat /etc/revpi/config.rsc
{"App":{"name": "PiCtory", "version": "1.4.4","saveTS": "20200922145632","language": "en","layout": {"north":{"size":70,"initClosed":false,"initHidden":false},"south":{"size":200,"initClosed":false,"initHidden":false,"children":{"layout1":{"east":{"size":663,"initClosed":false,"initHidden":false}}}},"east":{"size":70,"initClosed":true,"initHidden":false,"children":{}},"west":
Re: Modbus Master IO-Link
Posted: 24 Sep 2020, 15:17
by dirk
Hallo Marius Kaiser, danke für Deine Dateien. Es wäre klasse, wenn Du die Dateien in ein ZIP File packst und Deine Posts dann zusammenfasst. Dann ist es übersichtlicher auch für die anderen Community Member
Marius, es könnte sein, dass uns Node-Red hier in die Quere kommt. Daher deaktiviere bitte Node-Red und versuche, die Modbus Kommunikation erneut zu starten.
Re: Modbus Master IO-Link
Posted: 30 Sep 2020, 14:51
by Marius Kaiser
Hallo Dirk,
ich habe die Problematik jetzt anders gelöst. Ich glaube irgendetwas stimmt nicht mit dem IFM Gerät, da ich mit keinem Gerät über Modbus kommunizieren konnte. Ich hole mir jetzt die Daten direkt über den IO-Link Master mittels Abfrage der IO-Link Daten.
Trotzdem Danke
Re: Modbus Master IO-Link
Posted: 30 Sep 2020, 17:11
by dirk
Marius, danke für Deine positive Rückmeldung.
Re: Modbus Master IO-Link
Posted: 19 Oct 2020, 14:51
by Marius Kaiser
Hallo Dirk,
ich habe doch nochmal eine Frage zu diesem Thema. Das mit der IO-Link-Verbindung zu dem IFM Produkt hat geklappt.
Ich benutze jedoch zusätzlich noch eine Safety-SPS von Pilz. Hier benötige ich verschiedene Werte die direkt in die SPS gehen. Auch hier bietet sich die Modbus TCP-Schnittstelle an.
Ich bin deiner Anleitung auf Youtube gefolgt und auch der von Pilz unter:
https://www.pilz.com/download/open/AN_P ... -EN-01.pdf
Leider sagt mir meine SPS, dass Sie keine Verbindung zum RevPi aufbauen kann. Ich hatte es sowohl mit und ohne NodeRed aktiviert probiert. Aber leider kein Erfolg. NodeRes benötige ich für die Programmierung.
Vielleicht hast du noch einen Tipp?
Gruß
Marius
Re: Modbus Master IO-Link
Posted: 20 Oct 2020, 15:39
by Amar
Hi Marius,
Verify the Modbus TCP registers to read from the Safety-SPS of Pilz using Modbus Master Simulator QModMaster
https://sourceforge.net/projects/qmodmaster/
- QmodbusMaster.png (44.27 KiB) Viewed 11357 times
Then Configure appropriate Modbus actions in piCtory (Action ID Unit ID Function Code Register Addr. Quantity of Registers Action Interval (ms) Device Value).
Check the RevPi ModbusMaster log when you then try to connect to the Pilz Slave:
tail -f /var/log/daemon.log
Regards,
Amar