Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. [gelöst] Adapter ioBroker.modbus bringt ioBroker.sql dazu Datenpunkte zu disablen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Adapter ioBroker.modbus bringt ioBroker.sql dazu Datenpunkte zu disablen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Y
      ykuendig last edited by

      Nachdem ich nun den Modbus-Adapter testweise zum laufen brachte, habe ich den SQL-Adapter 1.4.3 installiert.

      Dieser schreibt in eine ymSql-Datenbank auf einer Synology im Netz (MariaDB); (gem. Anleitung installiert, ohne Probleme)

      Darauf habe ich die vom modbus gepollten Datenpunkte für 'history' aktiviert. Die wurden auch brav gespeichert. Die ganze Nacht über liefs gut. Dann gab es einen Unterbruch beim Modbus, Dieser konnte keinen reconnect machen und schrieb wiederholt Poll-Fehler ins Log.

      Nach einiger Zeit disable'te der SQL-Adapter die betroffenen Datenpunkte für 'history'

      Nachdem ich von anderen Problemen gelesen habe, bin auf die 1.4.2 zurück, was aber keine Änderung machte. Am nächsten Morgen zeigte sich das gleiche Bild.

      Ist das normal?

      Eigentlich würde ich erwarten, dass einfach keine Werte gespeichert werden (bis wieder welche kommen).

      Any ideas??

      Lösung: http://forum.iobroker.net/viewtopic.php … 808#p52808

      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Also der sql-Adapter deaktiviert von sich aus keinerlei Datenpunkte.

        Was aber sein kann (und das wäre zu prüfen) ist, dass der Modbus-adapter ggf Datenpunkte irgendwie neu anlegt. Sobald ein Datenpunkt gelöscht wird wird natürlich das history dafür deaktiviert 🙂

        Hast Du mal logs davon?

        1 Reply Last reply Reply Quote 0
        • Y
          ykuendig last edited by

          Habe die Anfrage von unterwegs gestellt. Werde mich aber bemühen, die Tage Logs zu provozieren. Ich habe vorgestern Einträge gesehen, welche aber vom sql Adapter kamen, desshalb die Frage bez. sql. Die Überlegung wegen modbus ist aber auch berechtigt… Melde mich morgen wieder.

          1 Reply Last reply Reply Quote 0
          • Y
            ykuendig last edited by

            So, ein Stück Log:

            inMem	2017-02-09 08:35:13.286	debug	message modbus.0.* modbus.0.holdingRegisters.3059_HausPower val=121.82, ack=true, ts=1486625713266, q=0, from=system.adapter.modbus.0, lc=1486625713266
            inMem	2017-02-09 08:35:13.282	debug	message modbus.0.* modbus.0.holdingRegisters.3057_HausP03 val=-26.85, ack=true, ts=1486625713264, q=0, from=system.adapter.modbus.0, lc=1486625713264
            inMem	2017-02-09 08:35:13.265	debug	message modbus.0.* modbus.0.holdingRegisters.3055_HausP02 val=166.57, ack=true, ts=1486625713255, q=0, from=system.adapter.modbus.0, lc=1486625713255
            inMem	2017-02-09 08:35:13.255	debug	message modbus.0.* modbus.0.holdingRegisters.3053_HausP01 val=-17.9, ack=true, ts=1486625713244, q=0, from=system.adapter.modbus.0, lc=1486625713244
            inMem	2017-02-09 08:35:13.224	debug	message modbus.0.* modbus.0.holdingRegisters.3035_HausLNM val=237.03, ack=true, ts=1486625713214, q=0, from=system.adapter.modbus.0, lc=1486625713214
            inMem	2017-02-09 08:35:13.200	debug	message modbus.0.* modbus.0.holdingRegisters.3009_HausStrom val=0.66, ack=true, ts=1486625713193, q=0, from=system.adapter.modbus.0, lc=1486625713193
            inMem	2017-02-09 08:35:03.565	debug	message modbus.0.* modbus.0.info.pollTime val=173, ack=true, ts=1486625703520, q=0, from=system.adapter.modbus.0, lc=1486625703520
            inMem	2017-02-09 08:35:03.562	debug	message modbus.0.* modbus.0.holdingRegisters.3059_HausPower val=129.67, ack=true, ts=1486625703518, q=0, from=system.adapter.modbus.0, lc=1486625703518
            inMem	2017-02-09 08:35:03.558	debug	message modbus.0.* modbus.0.holdingRegisters.3057_HausP03 val=-26.19, ack=true, ts=1486625703517, q=0, from=system.adapter.modbus.0, lc=1486625703517
            inMem	2017-02-09 08:35:03.555	debug	message modbus.0.* modbus.0.holdingRegisters.3055_HausP02 val=170.66, ack=true, ts=1486625703515, q=0, from=system.adapter.modbus.0, lc=1486625703515
            inMem	2017-02-09 08:35:03.552	debug	message modbus.0.* modbus.0.holdingRegisters.3053_HausP01 val=-14.79, ack=true, ts=1486625703513, q=0, from=system.adapter.modbus.0, lc=1486625703513
            inMem	2017-02-09 08:35:03.541	debug	message modbus.0.* modbus.0.holdingRegisters.3035_HausLNM val=237.11, ack=true, ts=1486625703509, q=0, from=system.adapter.modbus.0, lc=1486625703509
            inMem	2017-02-09 08:35:03.537	debug	message modbus.0.* modbus.0.holdingRegisters.3009_HausStrom val=0.67, ack=true, ts=1486625703508, q=0, from=system.adapter.modbus.0, lc=1486625703508
            inMem	2017-02-09 08:35:03.511	debug	message modbus.0.* modbus.0.info.connection val=true, ack=true, ts=1486625703502, q=0, from=system.adapter.modbus.0, lc=1486625703502
            sql.0	2017-02-09 08:35:03.494	info	disabled logging of modbus.0.holdingRegisters.3059_HausPower
            sql.0	2017-02-09 08:35:03.345	info	disabled logging of modbus.0.holdingRegisters.3057_HausP03
            sql.0	2017-02-09 08:35:03.263	info	disabled logging of modbus.0.holdingRegisters.3055_HausP02
            sql.0	2017-02-09 08:35:03.256	info	disabled logging of modbus.0.holdingRegisters.3053_HausP01
            sql.0	2017-02-09 08:35:03.124	info	disabled logging of modbus.0.holdingRegisters.3035_HausLNM
            sql.0	2017-02-09 08:35:02.991	info	disabled logging of modbus.0.holdingRegisters.3009_HausStrom
            modbus.0	2017-02-09 08:35:02.986	info	Connected to slave
            javascript.0	2017-02-09 08:35:02.792	info	script.js.common.Solar:Poll_Haus: Modbus Python Script -Haus- erfolgreich gelaufen, Werte akzeptiert
            modbus.0	2017-02-09 08:35:02.347	info	starting. Version 0.4.9 in /opt/iobroker/node_modules/iobroker.modbus, node: v4.7.3
            modbus.0	2017-02-09 08:35:02.263	debug	statesDB connected
            modbus.0	2017-02-09 08:35:02.114	debug	objectDB connected
            host.raspi3	2017-02-09 08:34:58.966	info	instance system.adapter.modbus.0 started with pid 10611
            host.raspi3	2017-02-09 08:34:58.928	info	object change system.adapter.modbus.0
            javascript.0	2017-02-09 08:34:47.681	info	script.js.common.Solar:Poll_Haus: Modbus Python Script -Haus- erfolgreich gelaufen, Werte akzeptiert
            sql.0	2017-02-09 08:34:40.161	info	Connected to mysql
            sql.0	2017-02-09 08:34:39.846	info	enabled logging of modbus.0.holdingRegisters.3009_HausStrom
            sql.0	2017-02-09 08:34:39.845	info	enabled logging of modbus.0.holdingRegisters.3059_HausPower
            sql.0	2017-02-09 08:34:39.843	info	enabled logging of modbus.0.holdingRegisters.3057_HausP03
            sql.0	2017-02-09 08:34:39.841	info	enabled logging of modbus.0.holdingRegisters.3055_HausP02
            sql.0	2017-02-09 08:34:39.840	info	enabled logging of modbus.0.holdingRegisters.3053_HausP01
            sql.0	2017-02-09 08:34:39.838	info	enabled logging of modbus.0.holdingRegisters.3035_HausLNM
            sql.0	2017-02-09 08:34:39.838	info	enabled logging of javascript.0.Solar.Schneider.SmaExport
            sql.0	2017-02-09 08:34:39.837	info	enabled logging of javascript.0.Solar.Schneider.SmaImport
            sql.0	2017-02-09 08:34:39.837	info	enabled logging of javascript.0.Solar.Schneider.SmaPower
            sql.0	2017-02-09 08:34:39.836	info	enabled logging of javascript.0.Solar.Schneider.SmaP03
            sql.0	2017-02-09 08:34:39.836	info	enabled logging of javascript.0.Solar.Schneider.SmaP02
            sql.0	2017-02-09 08:34:39.835	info	enabled logging of javascript.0.Solar.Schneider.SmaP01
            sql.0	2017-02-09 08:34:39.835	info	enabled logging of javascript.0.Solar.Schneider.SmaLNM
            sql.0	2017-02-09 08:34:39.834	info	enabled logging of javascript.0.Solar.Schneider.HausExport
            sql.0	2017-02-09 08:34:39.834	info	enabled logging of javascript.0.Solar.Schneider.HausImport
            sql.0	2017-02-09 08:34:39.833	info	enabled logging of javascript.0.Solar.Schneider.HausPower
            sql.0	2017-02-09 08:34:39.833	info	enabled logging of javascript.0.Solar.Schneider.HausP03
            sql.0	2017-02-09 08:34:39.832	info	enabled logging of javascript.0.Solar.Schneider.HausP02
            sql.0	2017-02-09 08:34:39.831	info	enabled logging of javascript.0.Solar.Schneider.HausP01
            sql.0	2017-02-09 08:34:39.826	info	enabled logging of javascript.0.Solar.Schneider.HausLNM
            sql.0	2017-02-09 08:34:39.145	info	starting. Version 1.4.2 in /opt/iobroker/node_modules/iobroker.sql, node: v4.7.3
            host.raspi3	2017-02-09 08:34:34.410	info	instance system.adapter.sql.0 started with pid 10477
            
            

            Habe dazu modbus und sql gestoppt. Dann die history Datenpunkte aktiviert. Dann die sql und modbus Adapter gestartet. Kurz darauf das Log kopiert. Noch habe ich keine tiefe Fehlersuche gemacht… vielleicht dann am Abend.

            1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 last edited by

              sieht für mich wie vermutet so aus als ob der modbus Adapter da Dinge komisch tut.

              @Bluefox: Kann das sein das es die "setObject" sind in modbus die Ursache sind? Ersetzen durch setObjectNotExists oder extendObject? extendObject wird ggf aber wenn es nicht existiert nen Fehler werfen … also muss man vorher prüfen ob das Objekt existiert ...

              1 Reply Last reply Reply Quote 0
              • Y
                ykuendig last edited by

                Das kann gut sein. Der modbus Adapter macht sowieso noch so ein paar Zicken. Ich werde mich dann am Abend mal dran setzten und etwas gucken. Da ich aber nicht wirklich JS kann… mal schauen.

                Das git habe ich schon 'kopiert' und etwas korrigiert bez. der serial-connection (s.a. modbus posting). Werden da aber wohl weitere Hilfe benötigen.

                1 Reply Last reply Reply Quote 0
                • Y
                  ykuendig last edited by

                  @apollon77; hattest natürlich Recht. Der Modbus-Adapter wars. Ich hab in meinem Modbus.Fork nun alle 'SetObject()' in 'SetObjectNotExists()' geändert; nun rennts. Danke für die Hilfe.

                  @Bluefox; wie kommen die Änderungen nun ins offizielle Git?? (ich bin Anfänger)

                  1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 last edited by

                    lass mich machen. Ich brauche von Bluefox die Info ob es Fälle gibt wo ein Update der Datenpunkte nötig ist, dann müsste man eher extedObject mit kram nutzen …

                    1 Reply Last reply Reply Quote 0
                    • Y
                      ykuendig last edited by

                      Du hast wieder Recht. Ändern der Datenpunkte geht nun nicht mehr…

                      Von 13 Fundstellen sind wohl die meisten OK. 4 Stellen beschreiben die Register welche gepollt werden. Diese können natürlich in der Konfiguration geändert werden. Leider habe ich JS und auch das extend Dingens noch nicht richtig kappiert. Kommt noch - Wäre doch gelacht... hmmm

                      1 Reply Last reply Reply Quote 0
                      • Y
                        ykuendig last edited by

                        Ich habe mir das nun aus verschiedenen Quellen, so zusammengezimmert. Funktion ist wie erwartet.

                         `adapter.getObject(main.ac.holdingRegs[i].id, function (err, data) {objects[id]});
                        					if (!err) {
                        						adapter.extendObject(main.ac.holdingRegs[i].id, objects[id]);
                        					} else {
                        						adapter.setObjectNotExists(main.ac.holdingRegs[i].id, objects[id]);
                        					}` 
                        Was meinen die Programmierer?[/i][/i][/i]
                        
                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          Nicht so ganz 🙂

                          ich hab mal so eine Funktion angelegt und nutze die:

                          function createExtendObject(id, objData) {
                              adapter.getObject(id, function (err, oldObj) {
                                  if (!err && oldObj) {
                                      adapter.extendObject(id, objData);
                                  } else {
                                      adapter.setObjectNotExists(id, objData);
                                  }
                              });
                          }
                          
                          

                          Installier mal Update vom Github. Und dann bitte nochmal testen

                          1 Reply Last reply Reply Quote 0
                          • Y
                            ykuendig last edited by

                            Noch hab ich nicht installiert. Sieht aber gut aus; und ich habe dafür 3 Stunden gepröbelt. grmmm.

                            Kann aber erst installieren , wenn das connection Problem auch im Git ist. Ist als issue dort beschrieben

                            Dann noch das in main.js:

                            • adapter.log.error('IP address is not defined');
                            • adapter.log.error('Port is not defined');

                            Und noch ein paar Tippser im index.html…. (ich habs ja geforkt, könnte sonst dort nochmal vergleichen)

                            UND apollon; was müsstest Du haben, den Adapter in gewisser Hinsicht richtig umzubauen??

                            1 Reply Last reply Reply Quote 0
                            • apollon77
                              apollon77 last edited by

                              @ykuendig:

                              Kann aber erst installieren , wenn das connection Problem auch im Git ist. Ist als issue dort beschrieben

                              Dann noch das in main.js:

                              • adapter.log.error('IP address is not defined');
                              • adapter.log.error('Port is not defined');

                              Und noch ein paar Tippser im index.html…. (ich habs ja geforkt, könnte sonst dort nochmal vergleichen) `

                              Die Serial-Sache hab ich mal versucht anders zu lösen, aber müsstest Du testen … Kopier dir den Code vorher weg dann kannst DU zurückgehen wenn meins nicht geht.

                              Zu Deinem github: Wenn DU es schon geforkt hast ist doch ein Pull-Request sehr simpel. Schick einen und ich schaue rein

                              @ykuendig:

                              UND apollon; was müsstest Du haben, den Adapter in gewisser Hinsicht richtig umzubauen?? `

                              Zuerst einmal Zeit und Verständnis dafür (ich kratze da gerade an der Oberfläche), Testhardware und so … Im ersten Schritt solltest Du ins Trello gehen (gibts nen Forum Thread) und da deine Wünsche an Anpassungen einkippen ...

                              1 Reply Last reply Reply Quote 0
                              • Y
                                ykuendig last edited by

                                Sehr gut.

                                Adapter ioBroker.modbus 0.40.10 <u>aus dem Git</u> ist installiert. Serial-Port funktioniert zZ recht gut. [werde das noch etwas im Auge behalten.]

                                Adapter-Instanz macht nun auch einen restart, wenn sie abgewürgt wird. [Die kämpft bei mir zZ gegen ein JS um den USB-Adapter am Serial-Port]

                                Datenpunkt-Handling sieht auch gut aus. Datenpunkte werden erzeugt. Änderungen werden 'extendet'.

                                Noch keine Probleme mit dem Sql-Adapter festgestellt.

                                -> Sieht nach Erfolg aus!

                                1 Reply Last reply Reply Quote 0
                                • apollon77
                                  apollon77 last edited by

                                  Na da freue ich mich. schickst Du noch nen PullRequest wegen den anderen Dingen? Dann warte ich noch mit dem Update

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  388
                                  Online

                                  31.8k
                                  Users

                                  80.0k
                                  Topics

                                  1.3m
                                  Posts

                                  2
                                  15
                                  2727
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo