Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
http://www.elfafoorum.eu/faq.php
See more
See less

MODBUS protokolli tõlgendus

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    MODBUS protokolli tõlgendus

    Mure sai alguse kokkuhoiu soovist ....
    Teemaks on päiksepaneelide inverter ja erldiseisva arvesti ( EM340 3F2T 65A MID MODBUS ) omavaheline suhtlus Modbus RTU kaudu.
    Ideaalis on olemas Froniusel oma Smart Meter aga seda ei raatsinud soetada kuna maksab veidi rohkem kui alternatiivid. Eelpool mainitud arvesti aga on füüsiliselt kui ka seal oleva menüü poolest identsed kuid Inverter ei taha seda sellegi poolest kuidagi ära tunda.
    Panin arvuti järgi ja kuulasin modbusi liiklust pealt, et mida ta välja saadab
    Kood:
    Rx:000000-17:42:12.968-FD F9 F9 FF FF FD F7 AC 00 7F 3E BF 74
    Rx:000001-17:42:13.031-FD F9 F9 FF FF FD F7 AC 00 7F 3E BF 74
    Rx:000002-17:42:13.093-FD F9 F9 FF FF FD F7 AC 00 7F 3E BF 74
    Rx:000003-17:42:13.156-FD F9 F3 AB FD B7 97 00 7F 3E BF 74
    Rx:000004-17:42:13.218-FD F9 F3 AB FD B7 97 00 7F 3E BF 74
    Rx:000005-17:42:13.280-FD F9 F3 AB FD B7 97 00 7F 3E BF 74
    Rx:000006-17:42:13.341-FD F9 F3 AB FD B7 97 00 7F 3E BF 74
    Rx:000007-17:42:13.405-FD F9 F3 AB FD B7 97 00 7F 3E BF 74
    Rx:000008-17:42:13.468-FD F9 79 F5 FB 0F A8 00 7F 3E BF 74
    Rx:000009-17:42:13.515-FD F9 C7 FD FB 29 38
    Rx:000010-17:42:13.655-00 7F 3E BF 74
    Rx:000011-17:42:13.717-FD F9 FF FF FF FB 77 7A 00 7F 7E 5F 2F FB FF 6D B7
    Rx:000012-17:42:13.779-FD F9 FF E9 FF FD 15 E3 00 7F 7E BF 55 0D 29
    Rx:000013-17:42:13.841-FD F9 FF E9 FF FD 15 E3 00 7F 7E BF 55 0D 29
    Rx:000014-17:42:13.904-FD F9 FF E9 FF FD 15 E3 00 7F 7E BF 55 0D 29
    See antud suhtlus aga ei näe kuidagi välja modbus rtu protokollina
    Kui proovisin arvestilt ise andmeid küsida siis see suhtlus on veidi teistsugune (kellaajad on puudu):
    Kood:
    Tx:000034-01 03 00 00 00 0A C5 CD
    Rx:000035-01 03 14 09 1B 00 00 09 44 00 00 09 31 00 00 0F D4 00 00 0F FB 00 00 DE 34
    Tx:000036-01 03 00 00 00 0A C5 CD
    Rx:000037-01 03 14 09 1A 00 00 09 44 00 00 09 33 00 00 0F D3 00 00 0F FD 00 00 7E B1
    Tx:000038-01 03 00 00 00 0A C5 CD
    Rx:000039-01 03 14 09 1A 00 00 09 43 00 00 09 32 00 00 0F D2 00 00 0F FB 00 00 CD 8E
    Tx:000040-01 03 00 00 00 0A C5 CD
    ....
    Siit loeb ilusti välja aadressi ja funktsiooni koodi jms.

    Küsimus on, et kas leidub siit mõni kes aitaks selle esimese sõnumi lahti mõtestada või millele selline teistsugune sõnum viitab?

    #2
    See viitab sellele, et füüsiliselt kasutatakse Modbus RTU-d aga tarkvaraline suhtlus käib mingi muu protokolliga (sisuliselt sama mis User Defined Function code) või füüsiline RTU on teistmoodi seadistatud kui sinu lugemise puhul.
    Oled seda infot mõne Modbus decooderi peal dekodeerinud, ei anna midagi mõistlikku?

    Comment


      #3
      Senised otsingud dekooderi osas ei ole tulemust andnud.
      Üks rakendus millega liiklust salvestasin andis sellise tulemuse:
      Click image for larger version  Name:	modbus.jpg Views:	0 Size:	319,5 KB ID:	1112079



      Originaal Smart Meteri andmed:
      https://www.europe-solarstore.com/do...structions.pdf

      Ja selle alternatiivse mõõtja andmed:
      https://www.camax.co.uk/downloads/EM340DS-Datasheet.pdf
      Lisatud failid
      viimati muutis kasutaja Cass; 25 03 2021, 12:14.

      Comment


        #4
        Stop bit ja data bit seadetega oled katsetanud? Checksum xxx BAD nagu viitaks, et seal võib midagi valesti olla.

        Comment


          #5
          Seda eraldi ei katsetanud kuid kui lähtuda Smart Meteri andmelehe andmetest siis vaikimisi on:
          Number of bits 8
          Stop bit 1
          Ja ma kahtlen, et paigaldamisel midagi ekstra muudetakse seadetes.

          See nüanss on mu pealtkuulamise usb rs485 konverteril, et see on 2 juhtmega kuid inverteri ja arvesti vahel käib 3 juhet (D+,D- ja GND) + varjestus mida ei ole mu CAT6 kaablil.

          Comment


            #6
            Kui ise arvestilt andmeid küsisid oli Checksum OK või ka BAD?

            Comment


              #7
              Esimeses postituses olev teine koodilõik on need andmed mis liikusid kui küsisin otse arvestilt:

              Tx: 01 03 00 00 00 0A C5 CD
              Rx: 01 03 14 09 1B 00 00 09 44 00 00 09 31 00 00 0F D4 00 00 0F FB 00 00 DE 34

              Ja need on modbus rtu decoderi jaoks loetavad andmed. Ehk siis CRC on OK

              Comment


                #8
                Ma küsisin seda ka selle mõttega, et äkki see Port Monitor, mida sa kasutasid on vähe vildakas, või mingi muu seal ahelas, millest CRC viga tekkib. Millest on need ???? seal piltidel?

                Comment

                Working...
                X