{"id":8727,"date":"2021-09-29T01:22:36","date_gmt":"2021-09-29T01:22:36","guid":{"rendered":"https:\/\/bryceautomation.com\/?p=8727"},"modified":"2021-09-29T01:22:40","modified_gmt":"2021-09-29T01:22:40","slug":"controllogix-btdt-instruction","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/","title":{"rendered":"ControlLogix BTDT Instruction"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\">Introduction to the ControlLogix BTDT Instruction<\/h4>\n\n\n\n<p>The ControlLogix BTDT Instruction is a type of Bit Field Distributor.  This is an acronym for &#8220;Bit Field Distributor with Target&#8221;.  We use this type of instruction in Function Block Programming.   If you use ladder logic programming, check out the post on the <a href=\"https:\/\/bryceautomation.com\/index.php\/2020\/12\/15\/controllogix-bit-field-distributor\/\">BTD Instruction.<\/a><\/p><div id=\"bryce-3331319312\" 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>We use the BTDT instruction to distribute bits from one area into another area of memory.  In this case, we&#8217;ll combine two INT&#8217;s into one DINT.  INTs are 16 bit tags.  On the other hand, DINTs are 32 bit tags.  Older processors such as the SLC-500 or PLC-5 used 16 bit integers.  At times, its&#8217; necessary to move two of these 16 bit tags into a single 32 bit tag.  Another example would be data from a Modbus network.  DeviceNet is another example of when we might combine smaller amounts of data into a single 32 bit integer.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How the BTDT Works<\/h4>\n\n\n\n<p>Consider the following example:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"540\" height=\"170\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-19.png\" alt=\"\" class=\"wp-image-8728 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-19.png 540w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-19-300x94.png 300w\" data-sizes=\"(max-width: 540px) 100vw, 540px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 540px; --smush-placeholder-aspect-ratio: 540\/170;\" \/><\/figure>\n\n\n\n<p>In this case, we&#8217;ll move the data from mySourceArray[0] into the lower 16 bits of &#8220;myDestination&#8221;.  Likewise, we&#8217;ll move the data from mySourceArray[1] into the upper 16 bits of the &#8220;myDestination&#8221; tag.  We&#8217;ll need two BTDT instructions to make this happen.  Keep in mind the Source and Target inputs are not changed.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">First BTDT Instruction<\/h4>\n\n\n\n<p>There are a few things we will need to consider before setting up our first instruction.  We need to know our source tag, which is mySourceArray[0].  Additionally, we need to know the starting bit in this tag that we wish to move.  In this case, it&#8217;s bit 0.  We also need to know the length of the data we wish to move.  This will be 16 bits.  At the same time, we need to know a couple things about our destination.  The starting bit number in the destination is 0.   With this in mind, we&#8217;ll set up our first BTDT instruction. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"429\" height=\"216\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.png\" alt=\"\" class=\"wp-image-8730 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.png 429w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21-300x151.png 300w\" data-sizes=\"(max-width: 429px) 100vw, 429px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 429px; --smush-placeholder-aspect-ratio: 429\/216;\" \/><\/figure>\n\n\n\n<p>In this case, since we want to start with a &#8220;Blank Slate&#8221; when building our final result, the target value is 0.   The target value writes to the instruction&#8217;s destination prior to distributing the bits.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">The second BTDT instruction<\/h4>\n\n\n\n<p>At this time, we&#8217;ll move mySourceArray[1] starting at bit 0.  The length again is 16 bits.   However, in our destination, we start at bit #16.  Since we want to build from the value of our previous BTDT instruction, we&#8217;ll tie the destination of BTDT_01 into the target of BTDT_02.<\/p>\n\n\n\n<p>We&#8217;ll end up with logic that looks similar to this example:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"940\" height=\"244\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-22.png\" alt=\"\" class=\"wp-image-8731 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-22.png 940w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-22-300x78.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-22-768x199.png 768w\" data-sizes=\"(max-width: 940px) 100vw, 940px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 940px; --smush-placeholder-aspect-ratio: 940\/244;\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Check the Result<\/h4>\n\n\n\n<p>Finally, we&#8217;re ready to see if our logic works as we anticipated.  Let&#8217;s take a look at the tag database.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"539\" height=\"148\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-23.png\" alt=\"\" class=\"wp-image-8732 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-23.png 539w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-23-300x82.png 300w\" data-sizes=\"(max-width: 539px) 100vw, 539px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 539px; --smush-placeholder-aspect-ratio: 539\/148;\" \/><\/figure>\n\n\n\n<p>As you would expect, mySourceArray[0] appears on bits 0 to 15 of &#8220;myDestination&#8221;.  Likewise, the 16 bits of mySourceArray[1] appear on bits 16 to 31 of &#8220;myDestination&#8221;.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Converting a 32 bit integer into two 16 bit integers<\/h4>\n\n\n\n<p>Let&#8217;s try this the other way.   At this time, we&#8217;ll simply reverse the process.  Let&#8217;s take bits 0 to 15 of &#8220;myDestination&#8221;, and move these bits into mySourceArray[0].  Likewise, we&#8217;ll take bits 15 to 31 of &#8220;myDestination&#8221;, and copy these bits into &#8220;mySourceArray[1]&#8221;.  The logic will appear a little bit different.  I&#8217;ll modify the value of &#8220;myDestination&#8221; first, so we can ensure the logic is working.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"940\" height=\"245\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-24.png\" alt=\"\" class=\"wp-image-8733 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-24.png 940w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-24-300x78.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-24-768x200.png 768w\" data-sizes=\"(max-width: 940px) 100vw, 940px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 940px; --smush-placeholder-aspect-ratio: 940\/245;\" \/><\/figure>\n\n\n\n<p>Now that our logic is all set up, let&#8217;s see how well we did.  Remember, the Source and Target values do not change.  The only tag that changes here is mySourceArray[0], and mySourceArray[1].<\/p>\n\n\n\n<p>As you can see, our logic worked very well.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"548\" height=\"152\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-25.png\" alt=\"\" class=\"wp-image-8734 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-25.png 548w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-25-300x83.png 300w\" data-sizes=\"(max-width: 548px) 100vw, 548px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 548px; --smush-placeholder-aspect-ratio: 548\/152;\" \/><\/figure>\n\n\n\n<p>For other ControlLogix information, 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-1079130537\" 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>Introduction to the ControlLogix BTDT Instruction The ControlLogix BTDT Instruction is a type of Bit Field Distributor. This is an acronym for &#8220;Bit Field Distributor with Target&#8221;. We use this type of instruction in Function Block Programming. If you use ladder logic programming, check out the post on the BTD Instruction. We use the BTDT <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":8730,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[396,394,395],"class_list":{"0":"post-8727","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-controllogix","8":"tag-bit-field-distribute","9":"tag-btdt","10":"tag-function-block-btd","11":"czr-hentry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ControlLogix BTDT Instruction - Bryce Automation<\/title>\n<meta name=\"description\" content=\"Using the ControlLogix BTDT Instruction to consolidate two INT&#039;s into a DINT. Likewise, we can convert a DINT into two INT&#039;s.\" \/>\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\/2021\/09\/29\/controllogix-btdt-instruction\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ControlLogix BTDT Instruction - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"Using the ControlLogix BTDT Instruction to consolidate two INT&#039;s into a DINT. Likewise, we can convert a DINT into two INT&#039;s.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/\" \/>\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=\"2021-09-29T01:22:36+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-09-29T01:22:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.png\" \/>\n\t<meta property=\"og:image:width\" content=\"429\" \/>\n\t<meta property=\"og:image:height\" content=\"216\" \/>\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\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"ControlLogix BTDT Instruction\",\"datePublished\":\"2021-09-29T01:22:36+00:00\",\"dateModified\":\"2021-09-29T01:22:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/\"},\"wordCount\":587,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/image-21.png\",\"keywords\":[\"Bit field Distribute\",\"BTDT\",\"Function block BTD\"],\"articleSection\":[\"ControlLogix\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/\",\"name\":\"ControlLogix BTDT Instruction - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/image-21.png\",\"datePublished\":\"2021-09-29T01:22:36+00:00\",\"dateModified\":\"2021-09-29T01:22:40+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"Using the ControlLogix BTDT Instruction to consolidate two INT's into a DINT. Likewise, we can convert a DINT into two INT's.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/image-21.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/image-21.png\",\"width\":429,\"height\":216,\"caption\":\"BTDT\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/09\\\/29\\\/controllogix-btdt-instruction\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ControlLogix BTDT Instruction\"}]},{\"@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 BTDT Instruction - Bryce Automation","description":"Using the ControlLogix BTDT Instruction to consolidate two INT's into a DINT. Likewise, we can convert a DINT into two INT's.","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\/2021\/09\/29\/controllogix-btdt-instruction\/","og_locale":"en_US","og_type":"article","og_title":"ControlLogix BTDT Instruction - Bryce Automation","og_description":"Using the ControlLogix BTDT Instruction to consolidate two INT's into a DINT. Likewise, we can convert a DINT into two INT's.","og_url":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2021-09-29T01:22:36+00:00","article_modified_time":"2021-09-29T01:22:40+00:00","og_image":[{"width":429,"height":216,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.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\/2021\/09\/29\/controllogix-btdt-instruction\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"ControlLogix BTDT Instruction","datePublished":"2021-09-29T01:22:36+00:00","dateModified":"2021-09-29T01:22:40+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/"},"wordCount":587,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.png","keywords":["Bit field Distribute","BTDT","Function block BTD"],"articleSection":["ControlLogix"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/","url":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/","name":"ControlLogix BTDT Instruction - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.png","datePublished":"2021-09-29T01:22:36+00:00","dateModified":"2021-09-29T01:22:40+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"Using the ControlLogix BTDT Instruction to consolidate two INT's into a DINT. Likewise, we can convert a DINT into two INT's.","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/09\/image-21.png","width":429,"height":216,"caption":"BTDT"},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2021\/09\/29\/controllogix-btdt-instruction\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"ControlLogix BTDT Instruction"}]},{"@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\/8727","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=8727"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/8727\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/8730"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=8727"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=8727"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=8727"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}