Opbygning af MQTT-systemet

For at synkronisere ind- og udgange udveksler begge Web-IO’er beskeder via MQTT. Hver Web-IO offentliggør tilstanden af sine egne input som en publisher til brokeren.

Samtidig modtages input-tilstande fra den anden enhed som et abonnement. Når en enhed modtager en tilstandsændring på et input fra den modsatte enhed, ændrer den tilstanden på sit tilsvarende output.

Del 1: Opsætning af MQTT-mægleren

For at sætte et MQTT-kommunikationssystem op skal du først bruge en broker. Det fungerer som et meddelelsescenter og koordinerer kommunikationsflowet mellem deltagerne.

I denne manual er en gratis, offentlig broker til mindre applikationer kaldet

CloudMQTT

brugt. Til brug i større skala er der et stort antal andre udbydere til rådighed. Med kommercielle og gratis softwareløsninger kan du også køre dine egne MQTT-mæglere på internettet eller intranettet. Der findes hardware-apparater, der er klar til brug, f.eks. fra IBM. En detaljeret oversigt kan findes på siden

“MQTT-ressourcer”

.

Broker-godkendelse kræver, at hver Web-IO har et brugernavn og en adgangskode. For at sikre, at ingen anden enhed, der er tilsluttet brokeren, sender beskeder til enhedsemnerne, oprettes adgangsautorisation via ACL’er.

Oversigt over brokerens konfiguration
Web-IO 1 Web-IO 2
Brugernavn webio1 webio1
Adgangskode Super$afe123 Super$afe123
Skriveadgang til webio1/in/# webio2/in/#
Læseadgang til webio2/in/# webio1/in/#
[info] Brug af jokertegnene + og # eliminerer behovet for eksplicit at liste rettighederne for hvert enkelt emne. + står for alle elementer på et niveau i hierarkiet, mens # repræsenterer hele undertræet under et niveau.

Oprettelse af en mæglerkonto

CloudMQTT tilbyder pakken “CuteCat”, en gratis online mægler til op til 10 enheder.

  • Åbn webstedet

    www.cloudmqtt.com

    og vælg menupunktet ‘Planer’.
  • Vælg den gratis plan CuteCat, og følg instruktionerne på skærmen.

Oprettelse af en broker-instans

Når du har logget ind på kontrolpanelet, kan du oprette en ny broker.

  • Vælg Amazons datacenter i Irland såvel som
  • den gratis plan CuteCat.

Konfiguration af brokeren til Box-to-Box-brug

På detaljesiden kan du foretage de nødvendige indstillinger af din mægler til Web-IO Box-2-Box-applikationen.

  • Klik på Detaljer ved siden af din mæglerinstans

Oprettelse af brugere

Opret brugerne webio1 og webio2, hver med adgangskoden Super$afe123.

Tildeling af adgangsrettigheder

Opret nu adgangskontrollisten (ACL). Her angiver du for hver bruger de rettigheder, han har til at skrive om et emne.

Optagelse af forbindelsesdata

I det sidste trin skal du rulle ned til bunden af detaljesiden og skrive forbindelsesdataene for din mægler ned.

Du skal bruge serveradressen og porten.

Del 2: Opsætning af Web-IO’er

Grundlæggende indstillinger for MQTT

Åbn webgrænsefladen på den første Web-IO som beskrevet i brugervejledningen. Log derefter på med administrationsbrugeren.

  • I konfigurationsområdet skal du vælge menupunktet Communication paths >> MQTT.

Angiv nu forbindelsesdataene for MQTT-mægleren.

  • Aktivér MQTT.
  • Indtast brugernavnet for den første Web-IO.
  • Indtast den tilsvarende adgangskode.
  • Til sidst skal du indtaste værtsnavnet og
  • MQTT-mæglerens port.
  • For at Box-2-Box-applikationen kan fungere, skal du aktivere udgangene til MQTT.

Web-IO MQTT-opsætning OK

Når du har klikket på knappen Anvend, viser enheden et grønt flueben for at indikere, at ændringerne er blevet anvendt.

Konfiguration af handlinger for indgangene

En handling bestemmer, hvordan Web-IO’en reagerer på en trigger. Ud over de generelle specifikationer “Betegnelse” og “Aktiveringsstatus” består en handling af en udløser og en handling, der udføres, når udløseren aktiveres.

Når der sker en tilstandsændring på en enheds input, skal den anden enhed informeres om dette via MQTT. Det betyder, at der oprettes en handling for hvert input, som udfører en MQTT Publish, når der sker en tilstandsændring.

Vælg menupunktet Handlinger i konfigurationsområdet.

Klik nu på knappen Tilføj.

Generelle instruktioner

  • Aktivér handlingen, og giv den et logisk navn. Det gør det lettere at identificere handlingen på oversigtssiden og i menuen.

Instruktioner til aftrækkeren

  • Som trigger vælger Input.
  • Vælg det første input, dvs. Input0.
  • For en ændring vælges efter ON.

Instruktioner til den udførte handling

  • Vælg MQTT Publish som handling.
  • Meddelelserne for det første output på den første enhed offentliggøres under emnet “webio1/in/0”.
  • Som emnetekst vælges “ON” som det meddelelsesindhold, der skal offentliggøres, når udløseren anvendes.
  • For Topic Clear Text skal du indtaste indholdet af den besked, der skal sendes, når udløseren ikke længere er til stede. Dette er tilfældet, når udgangen er sat til OFF.
  • Beskeden skal kun sendes én gang, når hændelsen indtræffer. Vælg derfor her “Udfør kun handling én gang”.

Angiv derefter en handling med de tilsvarende værdier for Input 1 (Emne: webio/in/1).

Opsætning af handlinger for output

Generelle instruktioner

  • Aktivér handlingen, og giv den et logisk navn.

Instruktioner til aftrækkeren

  • Vælg her MQTT Abonner
  • Emnet er “webio2/in/0” for det første input på den anden enhed.
  • Emnetekst står for den modtagne meddelelses indhold, i dette tilfælde “ON”.

Instruktioner til den udførte handling

  • Da handlingen “Skift udgang” er valgt
  • En lokal udgang skal være kontakter
  • Det output, der skiftes, er Output 0
  • Den indstillede status er ON

Angiv nu de tre manglende handlinger for “Output0 off”, “Output1 on” og “Output1 off”:

Titel Emne Emne-tekst Handling Status
Output0 slukket webio2/in0 OFF Skift Output0 OFF
Output1 på webio2/in1 ON Switch Output1 ON
Output1 slukket webio2/in1 OFF Switch Output1 OFF

[info] Hvorfor udføres koblingshandlingerne for udgangene individuelt?

Hvis du vil gemme to handlinger, kan du sende beskeden “TOGGLE”, når der sker en statusændring, og vælge “TOGGLE” som handling i stedet for eksplicit at angive statusændringen.

Vi anbefaler ikke dette: MQTT-servicekvaliteten for Web-IO er indstillet til QoS1. Det betyder, at beskeder gentages, indtil målet har bekræftet modtagelsen.

Hvis en bekræftelse går tabt på grund af en transmissionsfejl, sendes toggle-beskeden igen, og der skiftes mål en gang til. I dette tilfælde er begge enheder ikke længere synkroniseret.

Konfiguration af anden Web-IO

I det sidste trin sender du konfigurationen til den anden Web-IO. Glem ikke at ændre brugere og emner!

Tiltag for output

Titel Emne Emne-tekst Handling Status
Output0 på webio2/in0 ON Skift udgang0 ON
Output0 slukket webio2/in0 OFF Skift Output0 OFF
Output1 på webio2/in1 ON Switch Output1 ON
Output1 slukket webio2/in1 OFF Switch Output1 OFF

Handlinger til input

Titel Emne Emne-tekst Ryd emne-tekst når du skifter til
switch Input0 webio2/in0 TÆNDT OFF ON
Kontakt Indgang1 webio2/in0 OFF OFF OFF

Prøv det selv

Har du lyst til at prøve MQTT? Vores Web-IO Digital er den ideelle indgang til IoT-universet.

Du skal blot anmode om Web-IO Digital som en prøve.

Har du stadig spørgsmål om Web-IO Digital eller MQTT?

Vi er klar til at hjælpe dig med alle spørgsmål.
Telefon: +45 4073 6058 (man.-fre. kl. 8-17)
E-mail: info@actcom.dk

Kom i gang - bestil en prøveversion i 30 dage.

Prøv vores produkter fra Wiesemann & Theis gratis i 30 dage ved at skrive det i ordrebekræftelsen: Ønsker at teste produktet.
Hvis du ikke ønsker at gøre brug af din returret inden for 30 dage, skal du blot betale den medfølgende faktura. Gratis forsendelse i Danmark.

Bestil prøveversion her:

Wiesemann & Theis GmbH blev grundlagt i 1979 af Reinhard Wiesemann og Rüdiger Theis. Med 50 ansatte producerer virksomheden mikrocomputer- og netværksteknologi i Wuppertal. I 2001 introducerede Wiesemann & Theis den første industrielle temperatursensor med et netværksinterface, Web-Thermometer, og har næsten 20 års erfaring inden for områderne Industri 4.0 og Internet of Things.

Active Communication har været distributør for W&T siden 1992 i Danmark og siden 2002 også i Sverige, Norge og Island. W&T’s produkter er ekstremt brugervenlige og pålidelige til en konkurrencedygtig pris.