{"id":6098,"date":"2023-06-22T12:07:22","date_gmt":"2023-06-22T12:07:22","guid":{"rendered":"https:\/\/www.novotek.com\/dk\/?post_type=insights&#038;p=6098"},"modified":"2025-02-13T13:56:54","modified_gmt":"2025-02-13T13:56:54","slug":"mqtt-i-industriel-automation","status":"publish","type":"insights","link":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/","title":{"rendered":"MQTT i Industriel Automation"},"content":{"rendered":"<div class=\"container-md paragraph  \">\n<p><em>MQTT (Message Queuing Telemetry Transport)<\/em> <em>er en forbindelsesstandard til effektiv dataudveksling<\/em><\/p>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Det er en standard protokol designet til p\u00e5lidelig og effektiv dataudveksling mellem enheder og systemer over netv\u00e6rk.<\/p>\n<\/div>\n\n<div class=\"container-md image  \">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"560\" src=\"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top.jpg\" alt=\"mqtt header\" class=\"wp-image-6106\" srcset=\"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top.jpg 1024w, https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top-300x164.jpg 300w, https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top-768x420.jpg 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Protokollen er s\u00e6rligt popul\u00e6r inden for industrielle automationsanvendelser p\u00e5 grund af dens enkelthed. Det er en letv\u00e6gtsprotokol, der bruger den tilg\u00e6ngelige b\u00e5ndbredde effektivt og er p\u00e5lidelig i levering af beskeder.<\/p>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Derudover kan protokollen ops\u00e6ttes meget fleksibelt i forhold til Quality of Service og bruger publish\/subscribe princippet i stedet for den traditionelle klient\/server.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h2 class=\"wp-block-heading\" id=\"hvad-er-mqtt\">Hvad er MQTT &#8211; og hvordan fungerer det?<\/h2>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>MQTT er en kommunikationsprotokol, der f\u00f8lger en publisher-subscriber-model. Det betyder, at der er en klient, der fungerer som en udgiver (publisher) af data, hvor enheder fungerer enten som udgivere eller abonnenter af data. Udbydere (publishers) sender data med specifikke emner (topics), og abonnenter (subscribers) modtager disse data ved at abonnere p\u00e5 de relevante emner.<\/p>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Protokollen kr\u00e6ver minimal b\u00e5ndbredde og ressourcer, hvilket g\u00f8r det ideelt til brug i IoT-enheder og netv\u00e6rk med begr\u00e6nsede ressourcer.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h2 class=\"wp-block-heading\">Hvad er en MQTT Broker?<\/h2>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>MQTT fungerer ved hj\u00e6lp af en central komponent kaldet en MQTT broker. Brokeren er ansvarlig for at formidle kommunikationen mellem udgivere og abonnenter. N\u00e5r en udgiver \u00f8nsker at sende data, opretter den forbindelse til MQTT brokeren og sender en besked med et bestemt emne (topic). Abonnenter, der er interesseret i specifikke emner, registrerer sig hos brokeren og modtager beskeder, der er m\u00e6rket med de relevante emner.<\/p>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>P\u00e5 denne m\u00e5de kan udgivere og abonnenter kommunikere uden direkte at kende hinanden.<\/p>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>MQTT brokeren opretholder ogs\u00e5 en liste over tilsluttede klienter og deres abonnementsoplysninger. Der findes forskellige open source (mest kendt er <a href=\"https:\/\/mosquitto.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Mosquito<\/a>) og kommercielle MQTT brokere (mest kendt er <a href=\"https:\/\/www.hivemq.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">HiveMQ<\/a>), der kan implementeres p\u00e5 forskellige platforme.<\/p>\n<\/div>\n\n<div class=\"wp-block-image\"><div class=\"container-md image  aligncenter\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"528\" src=\"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/MQTT_detaljert_arkitektur-1024x528.png\" alt=\"mqtt arkitektur\" class=\"wp-image-6340\" srcset=\"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/MQTT_detaljert_arkitektur-1024x528.png 1024w, https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/MQTT_detaljert_arkitektur-300x155.png 300w, https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/MQTT_detaljert_arkitektur-768x396.png 768w, https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/MQTT_detaljert_arkitektur-1536x793.png 1536w, https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/MQTT_detaljert_arkitektur.png 1800w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div><\/div>\n\n<div class=\"container-md heading  \">\n<h2 class=\"wp-block-heading\">Topics og Payload<\/h2>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Udover det fleksible set-up i kommunikationsarkitektur, kan indholdet af beskederne ogs\u00e5 udfyldes efter eget sk\u00f8n. Beskeder kan struktureres ud fra s\u00e5kaldte Topics: en hierarkisk reference til et bestemt emne, der ligner en URL. Beskeder kan derefter udgives p\u00e5 det p\u00e5g\u00e6ldende sted med frit udfyldeligt indhold, dvs. nyttelasten. Abonnenter kan v\u00e6lge mellem emnerne i hierarkiet og definere nyttelasten efter behov. Til dette bruges ofte JSON-formatet, som producerer tekst, der er let at l\u00e6se og fortolke for mennesker.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h2 class=\"wp-block-heading\">Hvad er Sparkplug B?<\/h2>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Sparkplug B er en MQTT-baseret standard specielt designet til industrielle automationsscenarier. Denne standard definerer et ensartet format for dataudveksling og enhedsstyring mellem MQTT-enheder i et industrielt milj\u00f8. Sparkplug B-standarden g\u00f8r det nemt at oprette forbindelse mellem forskellige IoT-enheder, softwareapplikationer og cloud-tjenester i industriel automation.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h2 class=\"wp-block-heading\">Anvendelse af MQTT i Industriel Automation:<\/h2>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Som n\u00e6vnt er brugen af \u200b\u200bMQTT stigende, ogs\u00e5 inden for <a href=\"https:\/\/www.novotek.com\/dk\/automation\/\">industriel automation<\/a>. Store cloud-udbydere s\u00e5som Microsoft, Google og Amazon foretr\u00e6kker denne protokol til at registrere data og tilbyder derfor MQTT-indgangspunkter s\u00e5som Azure IoT Hub. P\u00e5 den anden side er det p\u00e5 grund af protokollens enkelhed muligt at indlejre en MQTT-klient p\u00e5 alle slags enheder: fra komplette Windows-systemer til sm\u00e5 Raspberry Pi&#8217;s og Arduino-kort. I dag er der endda sensorer, der kan publicere deres data direkte i MQTT.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h2 class=\"wp-block-heading\">Her er nogle anvendelsesomr\u00e5der for MQTT i industriel automation:<\/h2>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h3 class=\"wp-block-heading\">Sensor- og Aktuatorintegration:<\/h3>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>I industriel automation er der ofte mange sensorer og aktuatorer spredt over et anl\u00e6g. Disse enheder kan kommunikere med hinanden ved hj\u00e6lp af MQTT. Sensorer fungerer som udgivere og sender data om f.eks. temperatur, tryk eller fugtighed. Aktuatorer, s\u00e5som motorer eller ventilatorer, kan v\u00e6re abonnenter, der modtager kommandoer og styringsbeskeder via MQTT. Dette muligg\u00f8r realtidsstyring af enheder og feedbackloop.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h3 class=\"wp-block-heading\">Dataopsamling og Overv\u00e5gning:<\/h3>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Industriel automation kr\u00e6ver ofte overv\u00e5gning af forskellige parametre og <a href=\"https:\/\/www.novotek.com\/dk\/digitalisering\/dataopsamling-og-rapportering\/\">dataopsamling<\/a> fra forskellige enheder. MQTT g\u00f8r det nemt at indsamle data fra forskellige kilder ved at abonnere p\u00e5 specifikke emner. Data fra sensorer, maskiner eller produktionslinjer kan sendes til en MQTT broker, hvor andre systemer kan abonnere og behandle disse data. Dette giver mulighed for realtidsanalyse, overv\u00e5gning og fejlfinding.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h3 class=\"wp-block-heading\">Fl\u00e5destyring og fjernadgang:<\/h3>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Industrielle anl\u00e6g kan have et stort antal enheder spredt over forskellige placeringer. MQTT g\u00f8r det muligt at oprette forbindelse til disse enheder p\u00e5 tv\u00e6rs af forskellige netv\u00e6rk. Ved at bruge MQTT kan operat\u00f8rer og vedligeholdelsesteam fjernstyre og overv\u00e5ge enheder og systemer i realtid. Dette letter fl\u00e5destyring og minimerer nedetid, da man kan identificere og l\u00f8se problemer hurtigt.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h3 class=\"wp-block-heading\">Integration med eksisterende systemer:<\/h3>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>Industriel automation omfatter ofte komplekse systemer, s\u00e5som <a href=\"https:\/\/www.novotek.com\/dk\/automation\/hmi-scada\/\">SCADA<\/a> (Supervisory Control and Data Acquisition) eller ERP (Enterprise Resource Planning). MQTT giver mulighed for at integrere disse systemer ved at fungere som en bro mellem forskellige protokoller og enheder. Data fra forskellige systemer kan sendes via MQTT til centrale systemer, der bruger disse data til at tr\u00e6ffe beslutninger og optimere processer.<\/p>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>L\u00e6s ogs\u00e5: <a href=\"https:\/\/www.novotek.com\/dk\/insight\/unified-namespace-uns-intelligence-hub\/\"><strong>3 m\u00e5der at bygge et Unified Namespace med Intelligence Hub<\/strong><\/a><\/p>\n<\/div>\n\n<div class=\"container-md separator  \">\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n<\/div>\n\n<div class=\"container-md paragraph  \">\n<p>MQTT er en stadig mere popul\u00e6r protokol, is\u00e6r til transport af data fra fysiske enheder til skyen. For p\u00e5 trods af, at denne protokol har eksisteret i mere end 20 \u00e5r, ser den ud til at v\u00e6re s\u00e6rdeles velegnet til at v\u00e6re med til at forme Industrial Internet of Things (<a href=\"https:\/\/www.novotek.com\/dk\/insight\/hvad-er-iiot\/\"><strong>IIoT<\/strong><\/a>), som har v\u00e6ret stigende de seneste \u00e5r.<\/p>\n<\/div>\n\n<div class=\"container-md heading  \">\n<h2 class=\"wp-block-heading\">Vil du vide mere om MQTT og hvordan det kan anvendes i industriel automation?<\/h2>\n<\/div>\n\n<div class=\"container-md form  \"><script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n\/* ]]> *\/\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gravity-theme gform-theme--no-framework' data-form-theme='gravity-theme' data-form-index='0' id='gform_wrapper_46' ><form method='post' enctype='multipart\/form-data'  id='gform_46'  action='\/dk\/wp-json\/wp\/v2\/insights\/6098' data-formid='46' novalidate>\n                        <div class='gform-body gform_body'><div id='gform_fields_46' class='gform_fields top_label form_sublabel_below description_below validation_below'><div id=\"field_46_12\" class=\"gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_46_12'>Instagram<\/label><div class='ginput_container'><input name='input_12' id='input_46_12' type='text' value='' autocomplete='new-password'\/><\/div><div class='gfield_description' id='gfield_description_46_12'>Dette felt er til validering og b\u00f8r ikke \u00e6ndres.<\/div><\/div><div id=\"field_46_10\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_46_10'>Fornavn<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(P\u00e5kr\u00e6vet)<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_10' id='input_46_10' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_46_9\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_46_9'>Efternavn<\/label><div class='ginput_container ginput_container_text'><input name='input_9' id='input_46_9' type='text' value='' class='large'      aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_46_1\" class=\"gfield gfield--type-email gfield--input-type-email gfield--width-full gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_46_1'>Email<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(P\u00e5kr\u00e6vet)<\/span><\/span><\/label><div class='ginput_container ginput_container_email'>\n                            <input name='input_1' id='input_46_1' type='email' value='' class='large'    aria-required=\"true\" aria-invalid=\"false\"  \/>\n                        <\/div><\/div><div id=\"field_46_11\" class=\"gfield gfield--type-phone gfield--input-type-phone gfield--width-full field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_46_11'>Telefon<\/label><div class='ginput_container ginput_container_phone'><input name='input_11' id='input_46_11' type='tel' value='' class='large'    aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_46_5\" class=\"gfield gfield--type-textarea gfield--input-type-textarea field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_46_5'>Kommentar<\/label><div class='ginput_container ginput_container_textarea'><textarea name='input_5' id='input_46_5' class='textarea small'   maxlength='300'   aria-invalid=\"false\"   rows='10' cols='50'><\/textarea><\/div><\/div><fieldset id=\"field_46_7\" class=\"gfield gfield--type-consent gfield--type-choice gfield--input-type-consent gfield--width-full gfield_contains_required field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible\"  ><legend class='gfield_label gform-field-label gfield_label_before_complex' >Samtykke<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(P\u00e5kr\u00e6vet)<\/span><\/span><\/legend><div class='ginput_container ginput_container_consent'><input name='input_7.1' id='input_46_7_1' type='checkbox' value='1'  aria-describedby=\"gfield_consent_description_46_7\" aria-required=\"true\" aria-invalid=\"false\"   \/> <label class=\"gform-field-label gform-field-label--type-inline gfield_consent_label\" for='input_46_7_1' >Jeg accepterer Novoteks Privacy Policy<\/label><input type='hidden' name='input_7.2' value='Jeg accepterer Novoteks Privacy Policy' class='gform_hidden' \/><input type='hidden' name='input_7.3' value='37' class='gform_hidden' \/><\/div><div class='gfield_description gfield_consent_description' id='gfield_consent_description_46_7' tabindex='0'>L\u00e6s Novoteks Privacy Policy her: https:\/\/www.novotek.com\/about-novotek\/privacy-policy\/<\/div><\/fieldset><div id=\"field_46_8\" class=\"gfield gfield--type-captcha gfield--input-type-captcha gfield--width-full field_sublabel_below gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_46_8'>CAPTCHA<\/label><div id='input_46_8' class='ginput_container ginput_recaptcha' data-sitekey='6LcdcKEqAAAAAJnE-QthpxfSt1YiubwuFJXpIDr_'  data-theme='light' data-tabindex='-1' data-size='invisible' data-badge='bottomright'><\/div><\/div><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <input type='submit' id='gform_submit_button_46' class='gform_button button gform-button--width-full' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' value='SEND FORMULAR'  \/> \n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_46' value='postback' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_46' id='gform_theme_46' value='gravity-theme' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_46' id='gform_style_settings_46' value='{&quot;inputPrimaryColor&quot;:&quot;#204ce5&quot;}' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_46' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='46' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='DKK' value='VUizPFKDVwj2Ap5Tb+nXcYQFObKi1Q0XSNhyavGtoWpK5\/A5F9hQcQsJUo\/km0SP60+ExYWOCX9nIMyxebffqEAU6t73yYEvtKbDUsSKQojRx5c=' \/>\n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_46' value='WyJ7XCI3LjFcIjpcIjc5YWY0ZGIxOTI0ZjQxOTcwMDgzN2RlYmVlOTE2MGM4XCIsXCI3LjJcIjpcIjMxZDI4YzA4ZWQwMDYyZjkxY2RhOGQ5ODIyYjk1MjAzXCIsXCI3LjNcIjpcImY3MWFlNmVjMDY4NjMxM2MyZjhhYzM4NDE4ODNiYWMzXCJ9IiwiYTE4ZWU4YTU0OTUwNGIwZDI0ODM1YjgzNzFhNWFlMzMiXQ==' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_46' id='gform_target_page_number_46' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_46' id='gform_source_page_number_46' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <\/form>\n                        <\/div><script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\ndocument.addEventListener( \"DOMContentLoaded\", function() {  gform.initializeOnLoaded( function() {gformInitSpinner( 46, 'https:\/\/www.novotek.com\/dk\/wp-content\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery('#gform_ajax_frame_46').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_46');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_46').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_46').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_46').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_46').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/  }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_46').val();gformInitSpinner( 46, 'https:\/\/www.novotek.com\/dk\/wp-content\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [46, current_page]);window['gf_submitting_46'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_46').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [46]);window['gf_submitting_46'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_46').text());}else{jQuery('#gform_46').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"46\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);        if (event && event.defaultPrevented) {                return;        }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_46\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_46\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_46\" );        let postRenderFired = false;        function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 46, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} );  }, false );\n\/* ]]> *\/\n<\/script>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>MQTT er en standard protokol designet til p\u00e5lidelig og effektiv dataudveksling mellem enheder og systemer over netv\u00e6rk.<\/p>\n","protected":false},"featured_media":0,"template":"","insight_category":[30],"class_list":["post-6098","insights","type-insights","status-publish","hentry","insight_category-artikel"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>MQTT - standard protokol til dataudveksling<\/title>\n<meta name=\"description\" content=\"MQTT bruges i industriel automation til at muligg\u00f8re p\u00e5lidelig og effektiv kommunikation mellem forskellige enheder og systemer.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/\" \/>\n<meta property=\"og:locale\" content=\"da_DK\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MQTT - standard protokol til dataudveksling\" \/>\n<meta property=\"og:description\" content=\"MQTT bruges i industriel automation til at muligg\u00f8re p\u00e5lidelig og effektiv kommunikation mellem forskellige enheder og systemer.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/\" \/>\n<meta property=\"og:site_name\" content=\"Novotek Danmark\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-13T13:56:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top.jpg.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"560\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimeret l\u00e6setid\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutter\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/\",\"url\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/\",\"name\":\"MQTT - standard protokol til dataudveksling\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/wp-content\\\/uploads\\\/sites\\\/4\\\/artikler\\\/mqtt-top.jpg\",\"datePublished\":\"2023-06-22T12:07:22+00:00\",\"dateModified\":\"2025-02-13T13:56:54+00:00\",\"description\":\"MQTT bruges i industriel automation til at muligg\u00f8re p\u00e5lidelig og effektiv kommunikation mellem forskellige enheder og systemer.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/#breadcrumb\"},\"inLanguage\":\"da-DK\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"da-DK\",\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/wp-content\\\/uploads\\\/sites\\\/4\\\/artikler\\\/mqtt-top.jpg.webp\",\"contentUrl\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/wp-content\\\/uploads\\\/sites\\\/4\\\/artikler\\\/mqtt-top.jpg.webp\",\"width\":1024,\"height\":560,\"caption\":\"mqtt header\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/insight\\\/mqtt-i-industriel-automation\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MQTT i Industriel Automation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/#website\",\"url\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/\",\"name\":\"Novotek Danmark\",\"description\":\"Automation, digitalisering og analyse\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"da-DK\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/#organization\",\"name\":\"Novotek Danmark\",\"url\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"da-DK\",\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/wp-content\\\/uploads\\\/sites\\\/4\\\/Denmark_files\\\/novotek-logotyp-rgb-pos.png\",\"contentUrl\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/wp-content\\\/uploads\\\/sites\\\/4\\\/Denmark_files\\\/novotek-logotyp-rgb-pos.png\",\"width\":1794,\"height\":520,\"caption\":\"Novotek Danmark\"},\"image\":{\"@id\":\"https:\\\/\\\/www.novotek.com\\\/dk\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/company\\\/novotek-denmark\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/NovotekCorp\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MQTT - standard protokol til dataudveksling","description":"MQTT bruges i industriel automation til at muligg\u00f8re p\u00e5lidelig og effektiv kommunikation mellem forskellige enheder og systemer.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/","og_locale":"da_DK","og_type":"article","og_title":"MQTT - standard protokol til dataudveksling","og_description":"MQTT bruges i industriel automation til at muligg\u00f8re p\u00e5lidelig og effektiv kommunikation mellem forskellige enheder og systemer.","og_url":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/","og_site_name":"Novotek Danmark","article_modified_time":"2025-02-13T13:56:54+00:00","og_image":[{"width":1024,"height":560,"url":"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top.jpg.webp","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Estimeret l\u00e6setid":"5 minutter"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/","url":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/","name":"MQTT - standard protokol til dataudveksling","isPartOf":{"@id":"https:\/\/www.novotek.com\/dk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/#primaryimage"},"image":{"@id":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/#primaryimage"},"thumbnailUrl":"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top.jpg","datePublished":"2023-06-22T12:07:22+00:00","dateModified":"2025-02-13T13:56:54+00:00","description":"MQTT bruges i industriel automation til at muligg\u00f8re p\u00e5lidelig og effektiv kommunikation mellem forskellige enheder og systemer.","breadcrumb":{"@id":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/#breadcrumb"},"inLanguage":"da-DK","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/"]}]},{"@type":"ImageObject","inLanguage":"da-DK","@id":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/#primaryimage","url":"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top.jpg.webp","contentUrl":"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/artikler\/mqtt-top.jpg.webp","width":1024,"height":560,"caption":"mqtt header"},{"@type":"BreadcrumbList","@id":"https:\/\/www.novotek.com\/dk\/insight\/mqtt-i-industriel-automation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.novotek.com\/dk\/"},{"@type":"ListItem","position":2,"name":"MQTT i Industriel Automation"}]},{"@type":"WebSite","@id":"https:\/\/www.novotek.com\/dk\/#website","url":"https:\/\/www.novotek.com\/dk\/","name":"Novotek Danmark","description":"Automation, digitalisering og analyse","publisher":{"@id":"https:\/\/www.novotek.com\/dk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.novotek.com\/dk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"da-DK"},{"@type":"Organization","@id":"https:\/\/www.novotek.com\/dk\/#organization","name":"Novotek Danmark","url":"https:\/\/www.novotek.com\/dk\/","logo":{"@type":"ImageObject","inLanguage":"da-DK","@id":"https:\/\/www.novotek.com\/dk\/#\/schema\/logo\/image\/","url":"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/Denmark_files\/novotek-logotyp-rgb-pos.png","contentUrl":"https:\/\/www.novotek.com\/dk\/wp-content\/uploads\/sites\/4\/Denmark_files\/novotek-logotyp-rgb-pos.png","width":1794,"height":520,"caption":"Novotek Danmark"},"image":{"@id":"https:\/\/www.novotek.com\/dk\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/company\/novotek-denmark","https:\/\/www.youtube.com\/user\/NovotekCorp"]}]}},"_links":{"self":[{"href":"https:\/\/www.novotek.com\/dk\/wp-json\/wp\/v2\/insights\/6098","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.novotek.com\/dk\/wp-json\/wp\/v2\/insights"}],"about":[{"href":"https:\/\/www.novotek.com\/dk\/wp-json\/wp\/v2\/types\/insights"}],"wp:attachment":[{"href":"https:\/\/www.novotek.com\/dk\/wp-json\/wp\/v2\/media?parent=6098"}],"wp:term":[{"taxonomy":"insight_category","embeddable":true,"href":"https:\/\/www.novotek.com\/dk\/wp-json\/wp\/v2\/insight_category?post=6098"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}