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

    Mini-guide: Hvordan bruke Modbus (med HomeSeer)

    Med en Modbus-plugin og et hardware-interface kan du enkelt få til å styre utstyr som støtter det. Modbus er ikke en uvanlig standard når det gjelder ventilasjonsutstyr og varmepumper, bl.a. fordi den er enkel å implementere i utstyret og relativt enkel for andre å bruke.

     

    Vi fikk montert et Systemair VTR-500 anlegg rundt påske, og fikk beskjed om at det gamle Z-wave adapteret dessverre ikke ville fungere med dette (som jeg fremdeles mener hadde vært den foretrukne metoden). Da ble Modbus redningen. :)

     

    Modbus er i utgangspunktet en forholdsvis enkel protokoll, hvor det spørres om eller sendes informasjon på en adresse (dvs. et heltall). Ulempen med den er at det er litt arbeid å få det til, fordi det ikke finnes noen ferdige oppsett.

     

    PS. Denne guiden er i utgangspunktet ment for HomeSeer-brukere, men prinsippet vil gjelde for alle.

    Jeg fikk hjelp til mitt første oppsett av en vennlig sjel på HomeSeer-forumet, det følgende er nærmest en gjenfortelling. Takk skal du ha, du vet hvem du er! :) 

     

    Hva du trenger:

    • Interface.
      Du trenger et. I praksis er det to valg; enten et som kobles til via USB eller et som går via nettverket. Jeg valgte det siste, og kjøpte dette interfacet for vi har fått lagt opp nettverk til loftet hvor aggregatet står fra teknisk rom i kjeller.
       
    • Modbus-plugin
      Installer, aktiver og start. Den ligger under "Lighting & Primary Technology"

     

     

    1. Oppkobling.

    Den korte versjonen: Kolbe A til A, B til B og G til G.

     

    Jeg brukte en CAT6-kabel og rensket endene på lederne. Tvinnet lederne sammen pr. farge, og brukte orange for A, grønn for B og brun for G.

     

    image.png

     

    Det samme på selve aggregatet. RS485-porten er øverst til høyre (eller nederst til venstre, alt etter som du ser på livet), merket med A(+), B(-) og G.

     

    image.png

     

    Koble så adapteret til nettverket og til strøm.

    image.png

     

    2. Konfigurasjon (for de med nettverksinterface)

    Utfordringen kan være å finne boksen. Der kan en nettverksscanner (f.eks. Advanced IP Scanner) være til hjelp. Finn enheten som har den samme MAC-adressen som står på baksiden av interfacet. Jeg har en Fingbox, og fikk selvfølgelig notifikasjon da den ble plugget inn.

     

    Tast inn IP-adressen i nettleseren med http:// foran, f.eks. http://192.168.0.174. Brukernavn og passord er "admin".

     

    Endre IP-adresse til en fast adresse:

    Gå til Local IP config. Endre IP Type til Static IP, og sett inn en adresse som er ledig. Trykk Save.

    image.png
     

    Sett nå inn den nye IPen i nettleseren. :)

     

    RS485 konfigureres slik (de røde innstillingene er viktige):

    image.png

    Baud-rate må settes til det som er støttet for ditt spesifikke aggregat. Nyere modeller har 115200 som maks hastighet, mens eldre modeller har lavere hastigheter. Ellers er data size = 8, Parity = None, Stop-bit = 1, og Flow kan fint være RTS/CTS.

     

    Workmode skal være "TCP Server" og "ModbusTCP". Hvorfor standardport ikke funker vet jeg ikke, men HS-forum-fyren hadde også endret denne. Det måtte jeg også. 8234 fungerer fint.

     

    Trykk Save. ;)

     

     

    3. Plugin-installasjon

    Modbus-plugin'en ligger i Updateren, dvs nederst under "Additional Interfaces" -> "Lighting & Primary Technology" (øverst).

    Velg denne, og trykk Installer-knappen som dukker opp under plugin-listen din.

    Aktiver plugin'en.

     

     

    4. Plugin konfigurasjon

    Gå til Plugins -> Modbus -> Modbus Config.

    image.png

    Nå skal vi legge til interfacet ditt.

    Har du et IP-interface som jeg, så trykker du på knappen til venstre (Add IP-RTU Master), hvis du har et som kobles til med USB, så trykker du på knappen til høyre (Add Serial RTU-Master).

     

    Trykk, og du blir videresendt til konfigurasjon av interface-devicen. Her kommer oppsett for IP-interfacet:

    image.png

    Endre IP og port  til det du satte opp interfacet til å bruke.

    Om polling spurte jeg SystemAir, og fikk til svar at det ikke var noe problem å polle hvert sekund om jeg ville. Jeg safer den litt med 10 sekunder. Dette kan imidlertid være avhengig av hvilket aggregat du har og hvor gammelt det er.

     

    5. Oppsett

    Nå begynner det spennende. Eller kjedeligste, alt ettersom hvordan man ser det. Hver parameter man vil lese ut må man legge inn manuelt. Det som gjør det ekstra spennende er at adressene ikke er standardiserte som man kunne ønske seg. De er forskjellige fra leverandør til leverandør, men også fra modell til modell og til og med forskjellig mellom revisjoner eller årsmodeller.

     

    Vi har et VTR-500. Det har hatt det samme modellnummeret lenge, men har blitt oppgradert fra år til år. Da var det ikke bare å google for å finne frem (noe som forøvrig anbefales). Jeg fant til slutt beskrivelsen av Modbus-adressene på systemair.com. Jeg søkte etter "modbus", og under "Documents" på søkeresultater fant jeg til slutt SAVE Modbus Variable List 20190116 (Rev. 29).pdf (1 214 kb).

     

    Du må altså finne ut hvilke parametre ditt aggregat bruker.

     

    Når du har funnet den er det bare å legge inn de verdiene du vil. Problemet er vel kanskje å finne hvilke du ønsker deg...

     

     

    Eksempel 1: Hastighet på viftene for tilluft og fratrekk.

    I PDF-dokumentet over fant jeg denne:

    image.png

     

    Altså må jeg bruke modbus-adresse 12401 for tilluft-hastigheten og 12402 for fratrekk. Det er et "Read Input Register", det vil si at man kun kan lese variabelen.

     

    Gå til Plugins -> Modbus -> Modbus Config. Der ser du interfacet og en knapp hvor det står "Add Device".

    image.png

    Trykk på "Add Device".

     

    Da kommer du til en ny Device. Der konfigurerer vi Modbus-parametre ihht. adressen vi legger til.

    image.png

     

    Det kan være en idé å endre Status Graphics også:

    image.png

     

     

    Eksempel 2: Viftehastighet

    For meg er det register 1131 og 1132:

    image.png

     

    Dette er et "Holding Register", dvs. man kan skrive verdier til den. Det legges inn på samme måte, men nå bruker man "Holding Register" istedenfor "Input Register".

     

    image.png

     

    Det er litt ulogisk at vi skal ha en "Read Only Device", men ellers får man et tekstfelt og vi må jo gjøre det litt mer praktisk enn det.

    image.png

     

     

     

    ... så er det bare å legge til andre verdier. Dette er mine:

    image.png

     

    ... som jeg har konfigurert slik:

    image.png

     

    Dette gir tilstrekkelig informasjon kontroll over anlegget, men det er mulig jeg har oversett noe.

    Hvilke verdier har du lagt inn? :) 

     

     

    PS! Det er en ganske solid bug i konfigurasjonen pr. dags dato (juni 2019) når man skal sette "Multiplier". Se under:

    Spoiler

     

    Denne er viktig å ha riktig hvis man f.eks. skal lese ut temperaturer ettersom de er multiplisert med 10, dvs. 15,8 grader rapporteres som 158. For å få riktig verdi i HomeSeer, skal man altså gange det tallet med 0,1.

     

    Problemet er at man ikke kan sette noe annet enn 1 med andre nettlesere enn Internet Explorer, av alle ting:

     

    image.png

     

     

    Endret av Moskus

    Brukertilbakemelding

    Anbefalte kommentarer



    Jeg bestilte et slikt interface etter å ha lest guiden her, men bare et par dager etterpå fikk jeg tilsendt en Systemair IAM modul vederlagsfritt som del av en garantisak på Villavent-systemet mitt. Så jeg koblet opp modbus på denne før jeg mottok RS485 interface i posten. Usikker på om det er noen forskjell i ytelsen på disse, men det ser da ut til å fungere greit (bortsett fra å sette temperatur som nevnt over).

     

    Så, om noen vil kjøpe et interface, send meg en pm :) 

    Lenke til kommentar
    Del på andre sider

    2 timer siden, kjempis skrev:

    Så jeg koblet opp modbus på denne før jeg mottok RS485 interface i posten. Usikker på om det er noen forskjell i ytelsen på disse, men det ser da ut til å fungere greit (bortsett fra å sette temperatur som nevnt over).

    Er Systemair IAM et Modbus/TCP-interface? Var jo hendig. :) 

    Lenke til kommentar
    Del på andre sider

    Er mulighet for begge deler på den ja, dog ikke samtidig. Litt stiv pris på 2000 NOK, men da var det jo desto greiere å ha et aggregat med "medfødt" softwarefeil som måtte fikses  ;)  Var visst billigere for de å sende meg en gratis IAM-modul fremfor å sende ut servicemann.

     

    https://www.systemair.com/no/Norge/Produktkatalog/boligventilasjon/tilbehor-boligsystem/tilbehor-boligaggregater/iam/internett-tilgangsmodul---iam/

    Sitat

    IAM kan også benyttes som lokal Modbus TCP til RTU-modus.

     

    Lenke til kommentar
    Del på andre sider

    @Moskus

     

    image.png

     

    Jeg har vært i kontakt med utvikleren om dette med "multiplier", og han lovte ved juletider å se på dette. Var visst noe familiære greier som gjorde at det kunne ta litt tid. Han skulle da lage en ny versjon, men ser for meg ut som det ikke er skjedd noe til nå.

     

    Men jeg har nå prøvd med Chrome, Edge og også Internet Explorer, men jeg får ikke dette til å virke. Har også tidligere prøvd å endre setting for komma (engelsk). Hvilket kunststykke gjorde du?

    Lenke til kommentar
    Del på andre sider

    5 timer siden, PerAN skrev:

    Gå inn i regional settings i windows og sett region til US, så funker det nok..

    Sjekk også at tusen-skilletegn ikke er satt til punktum.

     

    Jeg foretrekker UK, da blir punktum desimaltegn, men beholder 24h-klokke. :) 

    Lenke til kommentar
    Del på andre sider

    43 minutter siden, JohnMartin skrev:

    @Moskus, undersøkte du noe mer vedr å endre setpunkt på temperatur via plugin?

    Nei, til nå har jeg bare registrert at det ikke fungerer. Regner med at det har noe med komma-desimalskille-tullet å gjøre.

    Lenke til kommentar
    Del på andre sider

    On 04/11/2019 at 15:31, Armas said:

    Noen som har ett godt tips om ett rimelig  USB-Interface som funker bra? 

     

    Jeg kjøpte en slik:
    111944569765?ssPageName=STRK:MEBIDX:IT&_https://www.ebay.com/itm/USB-To-RS485-Converter-Adapter-Support-Win7-Win8-Win10-EPSOLAR-EPEVER/111944569765?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649

     

    Fungerte fint frem til jeg byttet den ut med ethernet-interface

    • Like 1
    Lenke til kommentar
    Del på andre sider

    Hei!

     

    Ser det er noen som ikke får til å sette temperatur på tilluft. Hvis dere skriver til aggregatet, må dere bruke original verdiene. Multiplieren som settes til 0,1 er bare en "display modifier". Når dere skriver "18" til aggregatet, skjønner det ingenting, for det vil ha verdier mellom 120-300.

     

    Dere må enten skrive verdi med 120-300 (180 for temperatur 18), eller lage knappeoppsett slik jeg gjorde det.

     

    Når det gjelder viftehastighetene så ser det ut som dere endrer innstillingene til modusene. Da må dere sørge for at det er korrekt modus som er aktivt.

    Det enkleste er å stille inn modusene med viftehastighetene dere ønske (på aggregatet for å gjøre det enklest), for så endre modus istedenfor. :)

     

    image.thumb.png.7b81da7b7c0931c9f6af5ccebb0baa08.png

     

    image.png.f01e55404de2e782182e945d51ce9ef5.png

    • Like 1
    • Thanks 1
    Lenke til kommentar
    Del på andre sider

    Hmmm! Jeg har prøvd å skrive originalverdier, men jeg har ikke prøvd knapper! Takk for tipset! :)

     

     

    1 time siden, MrE skrev:

    Når det gjelder viftehastighetene så ser det ut som dere endrer innstillingene til modusene. Da må dere sørge for at det er korrekt modus som er aktivt.

    Hvis man endrer modus til "Oppfrisk", "Max/min", etc og setter viftene "High" f.eks, så endres modus "Manual", iallfall her.

    Lenke til kommentar
    Del på andre sider

    3 hours ago, MrE said:

    Hei!

     

    Ser det er noen som ikke får til å sette temperatur på tilluft. Hvis dere skriver til aggregatet, må dere bruke original verdiene. Multiplieren som settes til 0,1 er bare en "display modifier". Når dere skriver "18" til aggregatet, skjønner det ingenting, for det vil ha verdier mellom 120-300.

     

    Dere må enten skrive verdi med 120-300 (180 for temperatur 18), eller lage knappeoppsett slik jeg gjorde det.

     

    Når det gjelder viftehastighetene så ser det ut som dere endrer innstillingene til modusene. Da må dere sørge for at det er korrekt modus som er aktivt.

    Det enkleste er å stille inn modusene med viftehastighetene dere ønske (på aggregatet for å gjøre det enklest), for så endre modus istedenfor. :)

     

    image.thumb.png.7b81da7b7c0931c9f6af5ccebb0baa08.png

     

    image.png.f01e55404de2e782182e945d51ce9ef5.png

     

    Hvordan aggregat har du?
    Kunne du evt. postet et bilde av modbus adressene? :)

     

     

    Endret av JohnMartin
    Lenke til kommentar
    Del på andre sider

    2 hours ago, Moskus said:

    Nei, huff! :(

    Knapper endret ingenting. Samme som før:

    image.png

     

    ... er nesten som jeg lurer på om det er riktig register?

     

    Er ikke 2054 Input register?
    Og så må du bruke 2001 som holding register for å endre setpunkt?

     

    Jeg fikk ihvertfall til å endre setpunkt temperatur ved å sende 120 til 2001 med holding register.

    Og leser av setpoint med 2054 Input.

     

    Takk @MrE, har ikke tenkt så langt.

    Endret av JohnMartin
    Lenke til kommentar
    Del på andre sider

    Jeg har Systemair VSR-300 som ble installert i 2017. Bruker Modbus TCP/IP og skriver og leser kun på holdingregister. 

    Adresse 2001 er temperatur holding register. Jeg leser temp og sender settpunkt temp på denne adressen. Hvis noen her bruker Modbus RTU kan dere gjerne sjekke ut om dere klarer å lese/skrive på holdingregister på samme adresse.

     

    @JohnMartin

    Her er adressene:

     

    image.png.503c76050343d5e7f1ab32ecc170d66c.png

     

     

    Brukermodus (1161) ser slik ut - jeg oversatte de jeg kanskje kommer til å bruke.

     

     

    image.png.17b19d62ff4f7af77f61610c5efaeb87.png

     

     

     

    Brukermodus endre ser slik ut:

     

     

    image.png.72bac6560a42955982af013e6850942e.png

     

     

     

     

    @Moskus

    Det var egentlig en presisering at når du endrer viftehastighetene med de adressene du har lagt inn, endrer du kun innstillingen til brukermodus Manual (jeg kaller denne modusen for Normal, hvis man ikke har montert fuktsensorer eller co2 sensorer direkte tilknyttet aggregatet er denne modusen normal modus).

    Når du trykker på High viftehastighet, og så endrer modus til f. eks Borte vil begge viftene gå til Lav hastighet.

    Endrer du tilbake til Manual vil viftene gå til det de sist var innstilt på (via knappene dine i HS).

    Jeg vet ikke hvordan styringen din er videre i anlegget, men når du har innstilling for både viftehastighet OG brukermodus, vil du få 2 styringer som overstyrer hverandre.

    Du har egentlig skrevet det selv i guiden din, men det som heter MANUAL i adresselisten er ikke for manuell innstilling, men innstilling for brukermodus Manuell.

    Det ble litt kronglete skrevet, men håper du forstår.

    Disse adressene har du brukt;

    image.png.dd133dc86d65a85195067741549ebb0c.png

    Adressene til resten av brukermodusene finnes i adresselisten, men under gruppen User Modes, fordi de andre modusene er ikke normalmoduser, det er midlertidige og gjerne tidsbegrensede moduser. Se utklipp nedenfor :)

    image.png.f4d3fcbba6d10bf05d98f19d8eded8f1.png

    Legger også ved adresselisten til Systemair SAVECair.

     

    NB dere må ikke endre på RPM eller % pådrag på viftene, forhold dere til low normal high og max.

    Endrer dere rpm eller % pådrag på viftene vil innreguleringen av anlegget bli feil og dere har da ikke lenger ett innregulert anlegg. Spesielt Normal viftehastighet må dere ikke endre på.

    Det kan godt være forskjell på tilluft og avtrekk i RPM eller % pådrag, da dette kommer an på trykkfall og ventiler i kanalnettet.

     

    88350-SAVE Modbus Variable List 20190116 (Rev. 29).pdf

     

    Endret av MrE
    • Like 1
    Lenke til kommentar
    Del på andre sider

    Takk, @MrE !!

     

    Nå ble dette mye klarere. Fått fikset det som jeg har lagt bort fordi det ikke har funket ?

    Jeg kjører også Modbus TCP/IP.

     

    Viste ikke at man kunne bruke holding register på alt. 

    Har bare brukt det som har stått på modbus lista, med varierende hell.

    Lenke til kommentar
    Del på andre sider

    Takk for hjelp, men jeg kommer skjevt ut allerede fra begynnelsen av..

     

    På mitt anlegg er det ikke A/B/G betegnelser som er brukt, men noe litt annet.. Jeg har A1/B1/A2/B2. Skal jeg bruke A1/B1 og så hente jord fra annet punkt? Ser ut til at det er nederst til venstre. 

     

    Eller betyr G noe annet enn jord i modbus sammenheng?

     

    IMG_20191215_144051.thumb.jpg.869cc59cf83eae92412ec838e0559abd.jpg

     

    Lenke til kommentar
    Del på andre sider

    20 minutes ago, Fredrick said:

    Takk for hjelp, men jeg kommer skjevt ut allerede fra begynnelsen av..

     

    På mitt anlegg er det ikke A/B/G betegnelser som er brukt, men noe litt annet.. Jeg har A1/B1/A2/B2. Skal jeg bruke A1/B1 og så hente jord fra annet punkt? Ser ut til at det er nederst til venstre. 

     

    Eller betyr G noe annet enn jord i modbus sammenheng?

     

     

    På USB interfacet jeg brukte først, så hadde jeg bare A og B. Så da brukte jeg ikke G(som jeg tror er jord). Funket ihvertfall fint hos meg. :)

     

    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 en kommentar...

    ×   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.