Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Mini-guide: Hvordan bruke Modbus (med HomeSeer)


Moskus

Anbefalte innlegg

11 timer siden, Christopher Stenersen skrev:

Jeg fikk svar på fremgangsmåte for å få en fornuftig timestamp fra registerne som skal vise dato for siste filterskift:

 

"This is not easy, but it can be done:

First, calculate the filter replacement time in seconds:
Read x: register 7002
If x < 0 then add 65536
Read y: register 7003
If y < 0 then add 65536
Multiply y with 65536 and add the result to x.

The result is the internal representation of the filter replacement time in seconds.

Substract 2212122512. This is the number of seconds since 1.1.2016 00:00. Divide by 86400 to get the number of days since 1.1.2016."

 

Må si jeg ble forbauset over hvor komplekst dette var uten at det var nevnt i modbus manualen.. men det ser ut til å stemme ganske bra.

Det er egentlig ikke så komplekst når man tenker gjennom det.

Verdiene du får over Modbus er Signed16bit, som vil si at bit 15 er +/-Bit

Det betyr at verdien 32768 kommer som -32768 over Modbus. For å konvertere denne til et positivt tall(eller unsigned om du vil), legges 65536 til. Dette gjøres for begge integer.(MSW(Most significant word) og LSW(Least significant word))

 

Deretter settes disse to Unsigned16bit integerne sammen til et Unsigned32Bit dataord. 

Dette gjøres ved å multiplisere MSW med 65536(Fordi 65536 er verdien av Bit16 i et dataord. Også beskrevet som 2^16)

Deretter legges LSW til for å få riktig verdi.

 

Flexit har av en eller annen grunn valgt å ta utgangspunkt i 1.1.2016 som sitt "0-punkt". Det som er vanlig er å bruke unix timestamp som tar utgangspunkt i 1.1.1970.

De har også valgt å legge inn filterskift til et timestamp, heller en "Tid igjen" verdi. 

 

 

Kalkulatoren på windows er forøvrig et godt verktøy nå man skal lære seg, eller regne på binærtall hvis man velger den som heter programmering.

 

 

 

 

Lenke til kommentar
Del på andre sider

  • 1 måned senere...
20 timer siden, Morten B skrev:

Lyst å dele koden til dashboardet her? Så slipper jeg bygge alt selv :P
Ev. også config for modbus-sensorene. 

 - badges: []
    cards:
      - entities:
          - entity: input_select.villavent_fan
        show_header_toggle: false
        type: entities
      - entities:
          - entity: input_number.villavent_temperatur
        show_header_toggle: false
        title: Temperatur settpunkt
        type: entities
      - cards:
          - entities:
              - entity: sensor.villavent_temperatur_tilluft
                name: Tilluft
              - entity: sensor.villavent_temperatur_fratrekk
                name: Fratrekk
            name: Temperatur
            show:
              state: true
            type: 'custom:mini-graph-card'
          - entities:
              - entity: sensor.villavent_viftehastighet_tilluft
                name: Tilluft
              - entity: sensor.villavent_viftehastighet_fratrekk
                name: Fratrekk
            name: Viftehastighet
            show:
              state: true
            type: 'custom:mini-graph-card'
        type: horizontal-stack
      - entities:
          - entity: sensor.villavent_rotor_state_text
        type: glance
      - entity: sensor.villavent_filter_elapsed
        max: 365
        min: 0
        name: siden filterbytte
        severity:
          green: 0
          red: 365
          yellow: 300
        theme: default
        type: gauge
        unit: dager
      - entities:
          - entity: sensor.villavent_rotor_state
          - entity: sensor.villavent_utetemp
          - entity: sensor.villavent_alarm
          - entity: sensor.villavent_alarm_details
          - entity: sensor.villavent_temperature_set_point
        title: Midlertidige
        type: entities
    icon: 'mdi:fan'

Det er noen triks for å få dette til å fungere, feks at endring i temp settpunkt (input_number.villavent_temperature) trigger en node-red automasjon som trekker fra 11 fra verdien og kjører en modus.write_register service call

Lenke til kommentar
Del på andre sider

  • 3 uker senere...
3 minutter siden, Moskus skrev:

Jeg skal jo over på HS4 engang, men jeg har det ikke travelt... ;) 

 

Hehe ja ikke sant! Jeg har vært veldig fornøyd med denne runden med hs4. Første runde var det mye tull, men nå er det stabilt i det minste!:)

  • Like 1
Lenke til kommentar
Del på andre sider

  • 2 uker senere...
På 10.3.2020 den 18.32, Fredrick skrev:

EDIT: Av frykt for å fucke til noe uforklarlig på nettverket ved å endre til .0.1/24 så gikk jeg heller for å koble gateway til en gammel router, koblet med på den med laptop og endret der range til .0.1/24 før jeg på gateway endret til fast IP på .1.1/24 range som gjør at jeg nå får tak i den også på det vanlige nettverket mitt :)

Sleit også med å få tak i gateway'en, og har også en Ubiquiti ruter (UDM).  Men det er ikke nødvendig å endre IP range på ruteren.  Hvis du endrer IP-adresse på PCen til en statisk IP-adresse i samme range som gatewayen så er det tilstrekkelig.  Du mister internett-tilgangen selvfølgelig, men du får tilgang til gatewayen fordi du nå ligger i samme IP-range som den.

  • Like 1
Lenke til kommentar
Del på andre sider

  • 3 måneder senere...

Jeg prøver å følge guiden for å sette opp Homeseer mot mitt nyinstallerte Systemair SAVE VSR300. Har kjøpt samme adapter som Moskus, men kommer ikke lenger enn til punkt 2 i guiden.

Når jeg logger meg inn på adapteren så ser skjermbildet for RS485-konfigurasjon ikke likt ut med det som vises i guiden:

image.png.9870b6864ba1f1e641797dd1b8fd7142.png

 

Hos meg mangler "remote port number" , har kun ett felt for port (Local). Er det her jeg skal sette 8234?

I tillegg står det XON/XOFF i stedet for RTS/CTS under Flow Control, har dette noe å si?

Eller har jeg fått feil adapter, eller evt. feil firmware?

Prøvde å finne og laste ned firmware, fant en link, men den feiler.

 

Lenke til kommentar
Del på andre sider

Flow control skal kunne endres i nedtrekksmenyen.

Local port nummer er den du skal sette til 8234 ja.

 

det finnes mange forskjellige modbus tcp/rtu gatewayer. det har ikke noe å si at oppsettet ser helt likt ut, da funksjonen er den samme

 

 

Har du sjekket at modbus er aktivert i aggregatet?

Endret av Tverfyll
Lenke til kommentar
Del på andre sider

Takker for svar.

Adapteren har nøyaktig samme merke og modellbetegnelse som den som er vist i guiden, men er tydeligvis ikke helt lik.

Poenget med det jeg nevnte om flow control var at valget RTS/CTS ikke fantes, det er enten XON/XOFF eller None. Men XON/XOFF er vel nesten det samme som RTS/CTS.

Nå hadde jeg ikke koblet adapteren til aggregatet ennå, jeg bare koblet den opp på nettet for å teste at jeg kunne aksessere den. Vil det påvirke hva jeg ser av valg i menyene at den ikke er koblet til aggregatet?

Bare det å finne adapteren i nettet var en utfordring for en amatør som meg. Etter mye om og men og den del søking fant jeg ut at adapteren tydeligvis var satt opp med en spesifikk fast IP i et adresseområde som jeg ikke kunne nå slik ruteren min var konfigurert. Heldigvis hadde jeg en gammel ruter liggende som jeg kunne endre konfigurasjon på og sette opp et lite separat nettverk med adapteren og en pc, og da fikk jeg tak i adapteren og kunne sette en mer passende IP. Hadde vært mye enklere om adapteren kom med dynamisk IP som default.

Lenke til kommentar
Del på andre sider

On 01/07/2021 at 23:14, JxxxIxxx said:

Vil det påvirke hva jeg ser av valg i menyene at den ikke er koblet til aggregatet?

Nei, iallfall ikke som jeg vet.

 

On 01/07/2021 at 23:14, JxxxIxxx said:

ut at adapteren tydeligvis var satt opp med en spesifikk fast IP i et adresseområde som jeg ikke kunne nå slik ruteren min var konfigurert

Ja, det er dessverre et problem. Noen mener at dette er enklere enn om nettverksdingsen hadde fått en IP fra DHCP-serveren, men jeg vet ikke jeg...

Lenke til kommentar
Del på andre sider

JxxxIxxx skrev (På 1.7.2021 den 23.14):

Men XON/XOFF er vel nesten det samme som RTS/CTS.

Poenget er likt, start og stoppsignal for dataoverføring. RTS/CTS er egne signalledninger i RS232 kabelen mens XON/XOFF er ASCII kode som sendes som data.

  • Like 1
Lenke til kommentar
Del på andre sider

On 01/07/2021 at 23:14, JxxxIxxx said:

Takker for svar.

Adapteren har nøyaktig samme merke og modellbetegnelse som den som er vist i guiden, men er tydeligvis ikke helt lik.

Poenget med det jeg nevnte om flow control var at valget RTS/CTS ikke fantes, det er enten XON/XOFF eller None. Men XON/XOFF er vel nesten det samme som RTS/CTS.

Nå hadde jeg ikke koblet adapteren til aggregatet ennå, jeg bare koblet den opp på nettet for å teste at jeg kunne aksessere den. Vil det påvirke hva jeg ser av valg i menyene at den ikke er koblet til aggregatet?

Bare det å finne adapteren i nettet var en utfordring for en amatør som meg. Etter mye om og men og den del søking fant jeg ut at adapteren tydeligvis var satt opp med en spesifikk fast IP i et adresseområde som jeg ikke kunne nå slik ruteren min var konfigurert. Heldigvis hadde jeg en gammel ruter liggende som jeg kunne endre konfigurasjon på og sette opp et lite separat nettverk med adapteren og en pc, og da fikk jeg tak i adapteren og kunne sette en mer passende IP. Hadde vært mye enklere om adapteren kom med dynamisk IP som default.

 

Koblet til adapteren i går kveld, installerte Modbus plugin i HS3 og konfigurerte noen devicer og det gikk tilsynelatende fint. Kunne lese ut info fra aggregatet og også styre noen innstillinger. Så langt så alt lovende ut.

 

Men i dag begynte det å halge med feilmeldinger i HS loggen, meldinger slik som dette:

Error in ReadValue: Unable to read data from the transport connection: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

og

 

 

Read error for Fan level

Et eller annet er ustabilt, men jeg har ikkke forutsetninger for å kunne si hva det kan være.

 

Har prøvd å restarte plugin og restarte Modbus-adapteren og det virker litt av og til i korte perioder, men så begynner feilmeldingene ganske fort og da ser det ut som alt svikter og jeg får hundrevis av slike meldinger (sannsynligvis hver gang den poller).

Modbus-adapteren er satt opp slik:

image.png.e69d6f816e4dfec5ff37d00955f530cd.png

 

Det merkelige er at alt fungerte tilsynelatende fint i nesten et døgn før problemerne begynte, uten at noe er endret i systemet i løpet av den tiden.

 

 

Lenke til kommentar
Del på andre sider

Har du mulighet til å justere response timeout, og pollefrekvens i hs?


HS tror den snakker med en TCP device, som har helt andre hastigheter en en RTU device.

det kan derfor hende at HS spammer aggregatet, og gjør at det til slutt kutter kommunikasjonen. 

Lenke til kommentar
Del på andre sider

45 minutes ago, Tverfyll said:

Har du mulighet til å justere response timeout, og pollefrekvens i hs?


HS tror den snakker med en TCP device, som har helt andre hastigheter en en RTU device.

det kan derfor hende at HS spammer aggregatet, og gjør at det til slutt kutter kommunikasjonen. 

Dette er det jeg kan sette i HS plugin:

image.png.502542e5c3cee2500b99601ca1863b17.png

Lenke til kommentar
Del på andre sider

Noen som har fått til kommunikasjon mot "Flexit Nordic S4" ved hjelp av adaptert i guiden? (USR-TCP232-410S ) ?

 

Ringte Flexit for noen dager siden og fikk tilsendt modbus veiledning og "signallista" på mail (ligger vedlagt). Men jeg har foreløpig ikke klart og få noen fornuftig respons fra aggregatet. (nå er dette første gang jeg prøver på modbus dog).

 

Kommunikasjons oppsettet i henhold veiledninga fra Flexit: 

image.png.df42614a767154225de08b37efd5f934.png

 

Satt da opp USRen i henhold til dette:

 

image.png.6880e07374d3f878c9ffa3ae64d3e24b.png

 

 

Lasta ned "CAS Modbus Scanner" (som ble nevnt tidligere i tråden her), for å se hva som var mulig å hente ut.

Kjørte ført en "discover" på alle devicer (bus adresser?).  Og fikk da "statusen" returnert med  en blanding av følgende: Timeout, Exception -2 (Message is to short), -8 ,-11 osv på alle devicer.

 

image.thumb.png.e7dec71224132ad40609cc4807025611.png

 

(Kan legge til at om baudrate ble endret til 4800 eller 19200 så fikk jeg timeout på alt. Så tyder på at 9600 er korrekt i henhold til veiledning)

 

Prøvde så og sette opp noen av adressene i Excel dokumentet.

 

Først la jeg til en ny connection:

image.png.2e3073e653924e78c4944a8fbe2cf55b.png

 

Så la jeg til en ny device på den connectionen: (Antar at det er device "1" som er Aggregatet sin "bus" adresses ? )

 

image.png.709414c934712452762ab597bf7b4651.png

 

 

 

Så la jeg adressen til "Exhaust air fan speed" :  (prøve med flere forskjellig lenghts, først så antok jeg at 9 var start "bytet" til adressen i holding reigisteret og at man da måtte ha lenght 3 (4 byte) for å få en "real" verdi.  (Men ser vel nå at det kanskje ikke er helt slik modbus funker..) 

 

image.png.914c86d2c8eeb9f13c2e5dc593ce2cb1.png

 

I hennhold til excel dok:

image.thumb.png.f6e70ba3de51ba6b04b59321e60f2b2b.png

 

Har prøv med disse også (lagt til både som input status (1xxxx) og input register (3xxxx), da jeg var litt usikker.

 

image.thumb.png.6683bb1f44e4639510116ef49eb4b3a6.png

 

Prøvde så og polle disse adressene, men responsen blir jeg ikke klok på. i 95% av tilfellene får jeg returnert en feilmelding om at at det er "invalid lenght" short eller long, eller timeout (På samme adresse). En sjelden gang får jeg opp et "lesbart" resultat uten feilmelding. Men har ikke klart å se noe fornuftig data.

 

Her er et par av de lesbare resultatene som har kommet, men poller jeg igjen får jeg mange feilmeldinger igjen, før/om jeg får et lesbart resultat igjen. 

image.thumb.png.aaa12a2cf0669c5bec2d53ac1e29b713.png

 

image.thumb.png.61a771f1a5e9c7d1542e2682b282e44c.png

 

 

Begynner å gå litt tom for ideer å teste ut nå:

 

*Har prøvd å bytte A/B på modbus adaptere (det resulterte i timeout. men måtte bare prøve...)

*Har prøvd flere baud rates men kun 9600 gir en respons annet en timeout. (så det er nok rett i henhold til spec)

*Har prøvd begge alternativene under "flow mode" på USRen (None og XON/XOFF)

*Har prøvd mange adresser i alle registeret men ikke fått noe fornuftig tilbake.

 

Er veldig interessert i høre om noen har fått det til? Eventuelt om noen vil prøve med de samme settings som jeg har lagt inn (i henhold til manualen/signalisten) og se hva resultatet blir. Eller om noen guruer her har forslag til hva annet jeg kan teste, eventuelt ser en åpenbar feil?  (som sakt er jeg ingen modbus ekspert..)

 

Jeg antar at modbus er modbus og det bør være likegyldig hvilket adapter man bruker?  

 

 

111398_fdv_117989.pdf 111399_modbus_econordic_basic.xlsx

Endret av Random
Lenke til kommentar
Del på andre sider

Random skrev (26 minutter siden):

Noen som har fått til kommunikasjon mot "Flexit Nordic S4" ved hjelp av adaptert i guiden? (USR-TCP232-410S ) ?

 

Ringte Flexit for noen dager siden og fikk tilsendt modbus veiledning og "signallista" på mail (ligger vedlagt). Men jeg har foreløpig ikke klart og få noen fornuftig respons fra aggregatet. (nå er dette første gang jeg prøver på modbus dog).

 

 

Jeg har integrert FLEXIT NORDIC S4 til LogicMachine (Schneider Wiser KNX).
- Produksjonsdato på aggregatet måtte være nyere enn 21. mai 2019 for Modbus integrasjonen. (MItt var eldre og jeg fikk tilsendt nytt hovedkort).
- Modbus tilkoblet direkte på hovedkortet av aggregatet (Ikke eksterne kabelen). 
- Logic Machine har innebygget Modbus og tilkoblet der. 
- Oppsett og mapping av alle parameter (Måtte lage en JSON profil - kan sende den jeg har om ønskelig)
- Plundret litt med JSON filen og litt med formateringen på verdiene i LogicMachine for å få ut meningsfulle data. 

Etter integrasjon ligger alle data nå integrert i KNX og logikken og kan styres der via gruppeadresser som øvrige KNX data. Integrert i visuelt grensesnitt og kan styre det hele og lese ut data.  

Lenke til kommentar
Del på andre sider

@stemic01 takk for tilbakemelding, da er det tydeligvis håp.

 

Usikker på prod dato, men den eneste datostemplinga jeg finner er denne (så det kan jo muligens tyde på at mitt HK er litt for gammelt?

 

image.png.26244e6e3b29ca1e8f8175885635ec6d.png

 

 

Modbus kabelen er dog tilkoblet inne på HK (mener jeg leste tidligere i tråden, at den ikke var det på de aggregater som hadde gammelt HK?) Og det går joe noe kommunikasjon der på baud 9600..

 

Men da kan jo ha skjedd oppdateringer på HK etter 21.mai? Hvordan ser det ut på ditt HK, kobler du direkte inn på HK? 

 

image.thumb.png.3b2bd57b92ec357ac6d245791cb090ce.png

 

 

Her er hvertfal medfølgende tegning:

image.thumb.png.38bfbf829746a890337b28bf54872800.png

 

Oppkobling mot USR (klippet av den pluggen som hang på modbus kabelen).

 

image.png.fbfe4b94a3ee870982937be8e3cbb64f.png

 

 

Du må gjerne laste opp Json fil, men kan vel ikke uten videre integrere den i homeseer som jeg skal bruke (men kan jo se hvile adresser du har brukt da antar jeg). Planen min var å plukke ut de parameterene/adressene jeg ønsket å lese fra /skrive til. Sjekke at det det fungerte med CAS modbus scanner og så legge de til enkeltvis i Homseer i henhold til guiden til Moskus .

 

Men det hadde jo vært greit og fått avklart om jeg må få nytt HK først :P

Endret av Random
Lenke til kommentar
Del på andre sider

ALDER: Sendte mail til Flexit om det og de svarer raskt på om det er modbus innebygget eller ikke. 

TILKOBLING: 
Tilkoblet via kabelsett (SE PDF UNDER).  --> (ni behöver fortfarande ha de tillbehören som krävs för modbuskommunikation). 

- Sentralenhet CU Res - 116400

- Ledningssett tilbehør Nordic - 116405

https://www.flexit.no/globalassets/catalog/documents/111398_fdv_117989.pdf

 

JSON: Sjekk vedlagte fil. Det er den jeg bruker nå. Mulig den ikke er perfekt programmert, men det ser ut for å fungere fint her ihvertfall. Det kan ihvertfall gi deg noen indikasjoner på hvilke adresser du kan bruke osv. 

La oss få høre hvordan det gikk. 



 

_NordicS4_test 015.json

Lenke til kommentar
Del på andre sider

20 hours ago, JxxxIxxx said:

Men i dag begynte det å halge med feilmeldinger i HS loggen, meldinger slik som dette:

Error in ReadValue: Unable to read data from the transport connection: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

Jeg får det når Modbus-adapteret har blitt koblet fra nettverket eller har hatt strømavbrudd. Restart av plugin'en har alltid rettet det.

Lenke til kommentar
Del på andre sider

5 hours ago, Moskus said:

Jeg får det når Modbus-adapteret har blitt koblet fra nettverket eller har hatt strømavbrudd. Restart av plugin'en har alltid rettet det.

 

Noen av gangene hjalp det å restarte plugin'en, men ellers så kom feilene opp igjen bare sekunder etter at jeg hadde enablet plugin igjen s¨å det har ikkje vært konsistent.

For øyeblikket har jeg gitt litt opp og har disablet plugin'en.

Jeg mistenker også at problemet kan være en ustabilitet i mobus-adapteren som gjør at HS mister kontakten med den.

Den første gangen jeg fikk problemet så var adapteren heller ikke mulig å nå via web browse eller ping eller noe annet, og jeg måtte ta strømmen på den for å få den opp igjen. Men senere har pluginen i HS feilet uten at adapteren har vært offline, jeg har kunnet aksessere adapteren fra nettleser f.eks., mens HS gir feilmeldinger, så symptomene er ikke konsistente.

Jeg har en annen Modbus-adapter av en litt annen type som jeg kanskje kommer til å prøve når jeg får litt ledig tid.

Jeg har også en IAM (Internet Access Module) tilkoblet aggregatet og denne kan stilles om til å fungere som en modbus adapter, men da mister jeg kontroll via app og det har jeg lyst til å beholde av ulike grunner.

Endret av JxxxIxxx
Lenke til kommentar
Del på andre sider

21 hours ago, JxxxIxxx said:

Jeg har også en IAM (Internet Access Module) tilkoblet aggregatet og denne kan stilles om til å fungere som en modbus adapter, men da mister jeg kontroll via app og det har jeg lyst til å beholde av ulike grunner.

Jeg har lurt på å skaffe meg den. Ikke så mye for kontrollen sin del, for det går fint med Modbus, men mer at den gir oppdateringer.

Lenke til kommentar
Del på andre sider

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.