{"id":5230,"date":"2020-12-16T11:45:24","date_gmt":"2020-12-16T11:45:24","guid":{"rendered":"http:\/\/bryceautomation.com\/?p=5230"},"modified":"2020-12-16T12:17:40","modified_gmt":"2020-12-16T12:17:40","slug":"controllogix-moving-average-mave","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/","title":{"rendered":"ControlLogix Moving Average (MAVE)"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\">ControlLogix Moving Average (MAVE)<\/h4>\n\n\n\n<p>The ControlLogix Moving Average (MAVE) allows you to smooth out a noisy process variable.  In other words, if your signal is bouncing around, the MAVE instruction will smooth it out.  For example, let&#8217;s consider a flow rate.   Because of disturbances in the flow of a liquid, the sensor might read different values at any given time.  The ControlLogix Moving Average (MAVE) instruction will simply average these results over the past few processor scans.  Therefore, the operator will see a more smooth flow rate reading of the sensor.  Remember, the MAVE instruction is only available in Function Block (and Structured Text) routines.  If you don&#8217;t have function block or structured text ability, you can look at the example using a <a href=\"https:\/\/bryceautomation.com\/index.php\/2019\/09\/28\/slc-500-fifo-find-moving-average\/\">FIFO<\/a> instruction.<\/p><div id=\"bryce-1264494700\" class=\"bryce-afterfirst bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"7728240895\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>\n\n\n\n<p>In this case, I&#8217;ll simulate a process variable with a 60-second timer.  Obviously, we do not normally need to average a timer, but I&#8217;m just using this for a sample signal.  Later on, we&#8217;ll configure the MAVE instruction to take an average of the samples from the timer.  Since the timer is always increasing, the output of the MAVE instruction should follow slightly behind the accumulated value of the timer.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"382\" height=\"142\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-86.png\" alt=\"\" class=\"wp-image-5232 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-86.png 382w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-86-300x112.png 300w\" data-sizes=\"(max-width: 382px) 100vw, 382px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 382px; --smush-placeholder-aspect-ratio: 382\/142;\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Set up the ControlLogix Moving Average (MAVE) Instruction<\/h4>\n\n\n\n<p>To start, we&#8217;ll create the following tags as arrays.  Notice the data type for the array is REAL[10].   In this example, we&#8217;ll take 10 samples.  The Storage array will store the samples.  The weighted array (if used) is a multiplier for each sample.  This gives a &#8220;weight&#8221; to each entry.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"444\" height=\"42\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-88.png\" alt=\"\" class=\"wp-image-5234 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-88.png 444w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-88-300x28.png 300w\" data-sizes=\"(max-width: 444px) 100vw, 444px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 444px; --smush-placeholder-aspect-ratio: 444\/42;\" \/><\/figure>\n\n\n\n<p>Now, lets add the MAVE Instruction to logic.  We&#8217;ll feed the process variable into the MAVE instruction.  The output will go to a tag that will store the result of the moving average calculation.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"501\" height=\"185\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-89.png\" alt=\"\" class=\"wp-image-5243 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-89.png 501w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-89-300x111.png 300w\" data-sizes=\"(max-width: 501px) 100vw, 501px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 501px; --smush-placeholder-aspect-ratio: 501\/185;\" \/><\/figure>\n\n\n\n<p>Press the Ellipsis (three dots) to configure the instruction.<\/p>\n\n\n\n<p>Let&#8217;s be sure our samples are enabled.  Likewise, set the number of samples to 10, since our array has the size of 10.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"487\" height=\"313\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png\" alt=\"\" class=\"wp-image-5244 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png 487w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90-300x193.png 300w\" data-sizes=\"(max-width: 487px) 100vw, 487px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 487px; --smush-placeholder-aspect-ratio: 487\/313;\" \/><\/figure>\n\n\n\n<p>If you choose a weighted calculation, you must set a multiplier for each element of the weighted array.  In this case, we&#8217;ll just use the uniform method, so we&#8217;ll set the &#8220;UseWeights&#8221; bit to 0.<\/p>\n\n\n\n<p>At this point, we&#8217;ll download and test our work.  The output of the instruction is the result of the last 10 scan samples.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"481\" height=\"185\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-91.png\" alt=\"\" class=\"wp-image-5245 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-91.png 481w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-91-300x115.png 300w\" data-sizes=\"(max-width: 481px) 100vw, 481px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 481px; --smush-placeholder-aspect-ratio: 481\/185;\" \/><\/figure>\n\n\n\n<p>For more information on ControlLogix, visit the <a href=\"https:\/\/bryceautomation.com\/index.php\/category\/controllogix\/\">Category Page!<\/a><\/p>\n\n\n\n<p>&#8212; Ricky Bryce<\/p>\n<div id=\"bryce-1396684777\" class=\"bryce-after-content bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"4667596182\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>ControlLogix Moving Average (MAVE) The ControlLogix Moving Average (MAVE) allows you to smooth out a noisy process variable. In other words, if your signal is bouncing around, the MAVE instruction will smooth it out. For example, let&#8217;s consider a flow rate. Because of disturbances in the flow of a liquid, the sensor might read different <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":5244,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[283,282],"class_list":{"0":"post-5230","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-controllogix","8":"tag-function-block","9":"tag-mave","10":"czr-hentry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ControlLogix Moving Average (MAVE) - Bryce Automation<\/title>\n<meta name=\"description\" content=\"Set up a ControlLogix Moving Average (MAVE) Instruction in Function Blocks. The MAVE instruction smooths a noisy process variable.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ControlLogix Moving Average (MAVE) - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"Set up a ControlLogix Moving Average (MAVE) Instruction in Function Blocks. The MAVE instruction smooths a noisy process variable.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/\" \/>\n<meta property=\"og:site_name\" content=\"Bryce Automation\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ricky.bryce.7\" \/>\n<meta property=\"article:published_time\" content=\"2020-12-16T11:45:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-12-16T12:17:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png\" \/>\n\t<meta property=\"og:image:width\" content=\"487\" \/>\n\t<meta property=\"og:image:height\" content=\"313\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ricky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"ControlLogix Moving Average (MAVE)\",\"datePublished\":\"2020-12-16T11:45:24+00:00\",\"dateModified\":\"2020-12-16T12:17:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/\"},\"wordCount\":400,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/12\\\/image-90.png\",\"keywords\":[\"function block\",\"mave\"],\"articleSection\":[\"ControlLogix\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/\",\"name\":\"ControlLogix Moving Average (MAVE) - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/12\\\/image-90.png\",\"datePublished\":\"2020-12-16T11:45:24+00:00\",\"dateModified\":\"2020-12-16T12:17:40+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"Set up a ControlLogix Moving Average (MAVE) Instruction in Function Blocks. The MAVE instruction smooths a noisy process variable.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/12\\\/image-90.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/12\\\/image-90.png\",\"width\":487,\"height\":313,\"caption\":\"mave config\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/12\\\/16\\\/controllogix-moving-average-mave\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ControlLogix Moving Average (MAVE)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/\",\"name\":\"Bryce Automation\",\"description\":\"Automating Home and Industry...\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/bryceautomation.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\",\"name\":\"Ricky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"caption\":\"Ricky\"},\"sameAs\":[\"http:\\\/\\\/bryceautomation.com\",\"https:\\\/\\\/www.facebook.com\\\/ricky.bryce.7\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/ricky-bryce-4367a416\\\/\"],\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/author\\\/ricky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ControlLogix Moving Average (MAVE) - Bryce Automation","description":"Set up a ControlLogix Moving Average (MAVE) Instruction in Function Blocks. The MAVE instruction smooths a noisy process variable.","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:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/","og_locale":"en_US","og_type":"article","og_title":"ControlLogix Moving Average (MAVE) - Bryce Automation","og_description":"Set up a ControlLogix Moving Average (MAVE) Instruction in Function Blocks. The MAVE instruction smooths a noisy process variable.","og_url":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2020-12-16T11:45:24+00:00","article_modified_time":"2020-12-16T12:17:40+00:00","og_image":[{"width":487,"height":313,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png","type":"image\/png"}],"author":"Ricky","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"ControlLogix Moving Average (MAVE)","datePublished":"2020-12-16T11:45:24+00:00","dateModified":"2020-12-16T12:17:40+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/"},"wordCount":400,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png","keywords":["function block","mave"],"articleSection":["ControlLogix"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/","url":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/","name":"ControlLogix Moving Average (MAVE) - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png","datePublished":"2020-12-16T11:45:24+00:00","dateModified":"2020-12-16T12:17:40+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"Set up a ControlLogix Moving Average (MAVE) Instruction in Function Blocks. The MAVE instruction smooths a noisy process variable.","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/12\/image-90.png","width":487,"height":313,"caption":"mave config"},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/12\/16\/controllogix-moving-average-mave\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"ControlLogix Moving Average (MAVE)"}]},{"@type":"WebSite","@id":"https:\/\/bryceautomation.com\/#website","url":"https:\/\/bryceautomation.com\/","name":"Bryce Automation","description":"Automating Home and Industry...","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/bryceautomation.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7","name":"Ricky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","url":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","caption":"Ricky"},"sameAs":["http:\/\/bryceautomation.com","https:\/\/www.facebook.com\/ricky.bryce.7","https:\/\/www.linkedin.com\/in\/ricky-bryce-4367a416\/"],"url":"https:\/\/bryceautomation.com\/index.php\/author\/ricky\/"}]}},"_links":{"self":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/5230","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/comments?post=5230"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/5230\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/5244"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=5230"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=5230"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=5230"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}