{"id":1350,"date":"2026-04-14T09:28:00","date_gmt":"2026-04-14T16:28:00","guid":{"rendered":"https:\/\/www.kenwalger.com\/blog\/?p=1350"},"modified":"2026-03-17T10:35:09","modified_gmt":"2026-03-17T17:35:09","slug":"digital-twins-physical-objects-explained","status":"publish","type":"post","link":"https:\/\/www.kenwalger.com\/blog\/data-engineering\/digital-twins-physical-objects-explained\/","title":{"rendered":"The Backyard Quarry, Part 5: Digital Twins for Physical Objects"},"content":{"rendered":"<p>At this point in the Backyard Quarry project, something subtle has happened.<\/p>\n<p>We started with a pile of rocks.<\/p>\n<p>We now have:<\/p>\n<ul>\n<li>a schema<\/li>\n<li>a capture process<\/li>\n<li>stored images<\/li>\n<li>searchable metadata<\/li>\n<li>classification<\/li>\n<li>lifecycle states<\/li>\n<\/ul>\n<p>Each rock has a record.<\/p>\n<p>Each record represents something in the physical world.<\/p>\n<p>And that leads to a useful observation.<\/p>\n<p>We\u2019re no longer just cataloging rocks.<\/p>\n<p>We\u2019re building digital representations of them.<\/p>\n<h2>What Is a Digital Twin?<\/h2>\n<p>In simple terms, a digital twin is:<\/p>\n<blockquote><p>A structured digital representation of a physical object.<\/p><\/blockquote>\n<p>That representation can include:<\/p>\n<ul>\n<li>identity<\/li>\n<li>properties<\/li>\n<li>visual data<\/li>\n<li>state<\/li>\n<li>history<\/li>\n<\/ul>\n<p>In the context of the Quarry, a rock\u2019s digital twin might look like:<\/p>\n<pre><code class=\"language-plaintext\">rock_id: QRY-042\nweight_lb: 12.3\ndimensions_cm: 18 x 10 x 7\ncolor: gray\nrock_type: granite\nstatus: for_sale\nimages: [rock_042_1.jpg, rock_042_2.jpg]\nmodel: rock_042.obj\n<\/code><\/pre>\n<p>It\u2019s not the rock itself.<\/p>\n<p>But it\u2019s a useful abstraction of it.<\/p>\n<h2>More Than Just Metadata<\/h2>\n<p>At first glance, a digital twin might look like a simple database record.<\/p>\n<p>But there\u2019s an important difference.<\/p>\n<p>A well-designed digital twin combines multiple types of data:<\/p>\n<ul>\n<li>structured metadata (easy to query)<\/li>\n<li>unstructured assets (images, models)<\/li>\n<li>derived attributes (classification, embeddings)<\/li>\n<li>state over time<\/li>\n<\/ul>\n<p>It\u2019s not just describing the object.<\/p>\n<p>It\u2019s enabling interaction with it through software.<\/p>\n<h2>The Time Dimension<\/h2>\n<p>One of the most important aspects of a digital twin is that it can change over time.<\/p>\n<p>Even a rock \u2014 which is about as static as objects get \u2014 has a lifecycle in the system:<\/p>\n<pre><code class=\"language-plaintext\">collected \u2192 cataloged \u2192 listed_for_sale \u2192 sold\n<\/code><\/pre>\n<p>Each transition adds context.<\/p>\n<p>Now we\u2019re not just storing a snapshot.<\/p>\n<p>We\u2019re tracking a history.<\/p>\n<p>This becomes much more important in other domains.<\/p>\n<h2>Where This Shows Up<\/h2>\n<p>The interesting part is that this pattern isn\u2019t unique to rocks.<\/p>\n<p>It appears in many different systems.<\/p>\n<h3>Manufacturing<\/h3>\n<ul>\n<li>digital twins of machine parts<\/li>\n<li>tracking condition and usage<\/li>\n<li>linking physical components to system data<\/li>\n<\/ul>\n<h3>Museums and Archives<\/h3>\n<ul>\n<li>artifacts with metadata, images, provenance<\/li>\n<li>digitized collections<\/li>\n<li>searchable historical records<\/li>\n<\/ul>\n<h3>Agriculture<\/h3>\n<ul>\n<li>crops tracked over time<\/li>\n<li>environmental data<\/li>\n<li>growth and yield metrics<\/li>\n<\/ul>\n<h3>Healthcare and Motion<\/h3>\n<ul>\n<li>human movement captured as data<\/li>\n<li>gait analysis<\/li>\n<li>rehabilitation tracking<\/li>\n<\/ul>\n<p>This last one starts to look a lot like something else entirely.<\/p>\n<h2>From Objects to Systems<\/h2>\n<p>What the Backyard Quarry demonstrates, in a small way, is that once you:<\/p>\n<ul>\n<li>represent objects as data<\/li>\n<li>capture their properties<\/li>\n<li>store and index them<\/li>\n<\/ul>\n<p>you\u2019ve created the foundation for a larger system.<\/p>\n<p>The digital twin becomes a building block.<\/p>\n<p>And systems are built from collections of these building blocks.<\/p>\n<h2>The Abstraction Layer<\/h2>\n<p>A useful way to think about digital twins is as an abstraction layer.<\/p>\n<p>They sit between:<\/p>\n<figure id=\"attachment_1353\" aria-describedby=\"caption-attachment-1353\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1353\" data-permalink=\"https:\/\/www.kenwalger.com\/blog\/data-engineering\/digital-twins-physical-objects-explained\/attachment\/digital-twin-abstraction-layer-diagram\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?fit=1997%2C971&amp;ssl=1\" data-orig-size=\"1997,971\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"digital-twin-abstraction-layer-diagram\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Digital twins act as a bridge between physical objects and software systems.&lt;\/p&gt;\n\" data-medium-file=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?fit=300%2C146&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?fit=840%2C409&amp;ssl=1\" class=\"size-large wp-image-1353\" src=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?resize=840%2C409&#038;ssl=1\" alt=\"Diagram showing how physical objects are captured and represented as digital twins with metadata, assets, and application layers.\" width=\"840\" height=\"409\" srcset=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?resize=1024%2C498&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?resize=300%2C146&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?resize=768%2C373&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?resize=1536%2C747&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?resize=1200%2C583&amp;ssl=1 1200w, https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?w=1997&amp;ssl=1 1997w, https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/uploads\/2026\/04\/digital-twin-abstraction-layer-diagram.png?w=1680&amp;ssl=1 1680w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption id=\"caption-attachment-1353\" class=\"wp-caption-text\">Digital twins act as a bridge between physical objects and software systems.<code><br \/><\/code><\/figcaption><\/figure>\n<p>Applications don\u2019t interact with rocks directly.<\/p>\n<p>They interact with the representation of rocks.<\/p>\n<p>That layer enables:<\/p>\n<ul>\n<li>search<\/li>\n<li>analytics<\/li>\n<li>visualization<\/li>\n<li>automation<\/li>\n<\/ul>\n<p>Without it, everything remains manual and unstructured.<\/p>\n<h2>The Limits of the Model<\/h2>\n<p>Of course, digital twins are not perfect representations.<\/p>\n<p>They are approximations.<\/p>\n<p>Some properties are easy to capture.<\/p>\n<p>Others are difficult or impossible.<\/p>\n<p>Even in the Quarry:<\/p>\n<ul>\n<li>weight is approximate<\/li>\n<li>dimensions are imprecise<\/li>\n<li>visual data depends on lighting<\/li>\n<li>3D models may be incomplete<\/li>\n<\/ul>\n<p>The goal isn\u2019t perfect fidelity.<\/p>\n<p>It\u2019s usefulness.<\/p>\n<h2>The Real Insight<\/h2>\n<p>At this point, the Backyard Quarry starts to feel less like a joke and more like a small version of a much larger idea.<\/p>\n<p>Many modern systems are built around digital twins.<\/p>\n<p>Not because the concept is new.<\/p>\n<p>But because we now have the tools to make it practical:<\/p>\n<ul>\n<li>cheap sensors<\/li>\n<li>high-resolution cameras<\/li>\n<li>scalable storage<\/li>\n<li>machine learning<\/li>\n<\/ul>\n<p>The pattern has existed for a long time.<\/p>\n<p>The difference is that we can now implement it at scale.<\/p>\n<h2>What Comes Next<\/h2>\n<p>So far, the Quarry system works at a small scale.<\/p>\n<p>A handful of rocks.<\/p>\n<p>A manageable dataset.<\/p>\n<p>But what happens when the number of objects grows?<\/p>\n<p>When the dataset becomes:<\/p>\n<ul>\n<li>hundreds<\/li>\n<li>thousands<\/li>\n<li>or millions<\/li>\n<\/ul>\n<p>The next post explores that question.<\/p>\n<p>Because designing a system for a small dataset is one thing.<\/p>\n<p>Designing a system that scales is something else entirely.<\/p>\n<p>And somewhere along the way, it becomes clear that a pile of rocks is enough to illustrate ideas that show up across entire industries.<\/p>\n<p>Yet another surprise in this <strong>Backyard Quarry<\/strong> journey.<\/p>\n<h2>The Rock Quarry Series<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.kenwalger.com\/blog\/software-engineering\/the-backyard-quarry-turning-rocks-into-data\/\">The Backyard Quarry: Turning Rocks Into Data<\/a><\/li>\n<li><a href=\"https:\/\/www.kenwalger.com\/blog\/data-engineering\/designing-a-schema-for-physical-objects\">The Backyard Quarry, Part 2: Designing a Schema for Physical Objects<\/a><\/li>\n<li><a href=\"https:\/\/www.kenwalger.com\/blog\/data-engineering\/capturing-physical-objects-data-pipeline\">The Backyard Quarry, Part 3: Capturing the Physical World<\/a><\/li>\n<li><a href=\"https:\/\/www.kenwalger.com\/blog\/data-engineering\/searching-physical-objects-data-indexing\">The Backyard Quarry, Part 4: Searching a Pile of Rocks<\/a><\/li>\n<\/ul>\n<a class=\"synved-social-button synved-social-button-share synved-social-size-48 synved-social-resolution-single synved-social-provider-facebook nolightbox\" data-provider=\"facebook\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Facebook\" href=\"https:\/\/www.facebook.com\/sharer.php?u=https%3A%2F%2Fwww.kenwalger.com%2Fblog%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1350&#038;t=The%20Backyard%20Quarry%2C%20Part%205%3A%20Digital%20Twins%20for%20Physical%20Objects&#038;s=100&#038;p&#091;url&#093;=https%3A%2F%2Fwww.kenwalger.com%2Fblog%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1350&#038;p&#091;images&#093;&#091;0&#093;=https%3A%2F%2Fwww.kenwalger.com%2Fblog%2Fwp-content%2Fuploads%2F2026%2F04%2Fdigital-twin-abstraction-layer-diagram-1024x498.png&#038;p&#091;title&#093;=The%20Backyard%20Quarry%2C%20Part%205%3A%20Digital%20Twins%20for%20Physical%20Objects\" style=\"font-size: 0px;width:48px;height:48px;margin:0;margin-bottom:5px;margin-right:5px\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"Facebook\" title=\"Share on Facebook\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"48\" height=\"48\" style=\"display: inline;width:48px;height:48px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/96x96\/facebook.png?resize=48%2C48&#038;ssl=1\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-48 synved-social-resolution-single synved-social-provider-twitter nolightbox\" data-provider=\"twitter\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Twitter\" href=\"https:\/\/twitter.com\/intent\/tweet?url=https%3A%2F%2Fwww.kenwalger.com%2Fblog%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1350&#038;text=Hey%20check%20this%20out\" style=\"font-size: 0px;width:48px;height:48px;margin:0;margin-bottom:5px;margin-right:5px\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"twitter\" title=\"Share on Twitter\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"48\" height=\"48\" style=\"display: inline;width:48px;height:48px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/96x96\/twitter.png?resize=48%2C48&#038;ssl=1\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-48 synved-social-resolution-single synved-social-provider-reddit nolightbox\" data-provider=\"reddit\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Reddit\" href=\"https:\/\/www.reddit.com\/submit?url=https%3A%2F%2Fwww.kenwalger.com%2Fblog%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1350&#038;title=The%20Backyard%20Quarry%2C%20Part%205%3A%20Digital%20Twins%20for%20Physical%20Objects\" style=\"font-size: 0px;width:48px;height:48px;margin:0;margin-bottom:5px;margin-right:5px\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"reddit\" title=\"Share on Reddit\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"48\" height=\"48\" style=\"display: inline;width:48px;height:48px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/96x96\/reddit.png?resize=48%2C48&#038;ssl=1\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-48 synved-social-resolution-single synved-social-provider-linkedin nolightbox\" data-provider=\"linkedin\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Linkedin\" href=\"https:\/\/www.linkedin.com\/shareArticle?mini=true&#038;url=https%3A%2F%2Fwww.kenwalger.com%2Fblog%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1350&#038;title=The%20Backyard%20Quarry%2C%20Part%205%3A%20Digital%20Twins%20for%20Physical%20Objects\" style=\"font-size: 0px;width:48px;height:48px;margin:0;margin-bottom:5px;margin-right:5px\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"linkedin\" title=\"Share on Linkedin\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"48\" height=\"48\" style=\"display: inline;width:48px;height:48px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/96x96\/linkedin.png?resize=48%2C48&#038;ssl=1\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-48 synved-social-resolution-single synved-social-provider-mail nolightbox\" data-provider=\"mail\" rel=\"nofollow\" title=\"Share by email\" href=\"mailto:?subject=The%20Backyard%20Quarry%2C%20Part%205%3A%20Digital%20Twins%20for%20Physical%20Objects&#038;body=Hey%20check%20this%20out:%20https%3A%2F%2Fwww.kenwalger.com%2Fblog%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1350\" style=\"font-size: 0px;width:48px;height:48px;margin:0;margin-bottom:5px\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"mail\" title=\"Share by email\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"48\" height=\"48\" style=\"display: inline;width:48px;height:48px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/i0.wp.com\/www.kenwalger.com\/blog\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/96x96\/mail.png?resize=48%2C48&#038;ssl=1\" \/><\/a>","protected":false},"excerpt":{"rendered":"<p>At this point in the Backyard Quarry project, something subtle has happened. We started with a pile of rocks. We now have: a schema a capture process stored images searchable metadata classification lifecycle states Each rock has a record. Each record represents something in the physical world. And that leads to a useful observation. We\u2019re &hellip; <a href=\"https:\/\/www.kenwalger.com\/blog\/data-engineering\/digital-twins-physical-objects-explained\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;The Backyard Quarry, Part 5: Digital Twins for Physical Objects&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"pmpro_default_level":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1739,1738],"tags":[1743,1740,1741,1754,1713],"yst_prominent_words":[99,695,797,967],"class_list":["post-1350","post","type-post","status-publish","format-standard","hentry","category-data-engineering","category-software-engineering","tag-data-architecture","tag-data-modeling","tag-digital-twins","tag-software-engineering","tag-system-design","pmpro-has-access"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8lx70-lM","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/posts\/1350","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/comments?post=1350"}],"version-history":[{"count":6,"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/posts\/1350\/revisions"}],"predecessor-version":[{"id":1357,"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/posts\/1350\/revisions\/1357"}],"wp:attachment":[{"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/media?parent=1350"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/categories?post=1350"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/tags?post=1350"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/www.kenwalger.com\/blog\/wp-json\/wp\/v2\/yst_prominent_words?post=1350"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}