{"id":3564,"date":"2025-04-18T11:46:50","date_gmt":"2025-04-18T11:46:50","guid":{"rendered":"https:\/\/webprojects.cloud\/wordpress\/splatco\/?post_type=spl_knowledgebase&#038;p=3564"},"modified":"2025-06-10T11:54:34","modified_gmt":"2025-06-10T11:54:34","slug":"pid-implementation-characterizing-your-process","status":"publish","type":"spl_knowledgebase","link":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/","title":{"rendered":"PID implementation: characterizing your process"},"content":{"rendered":"\n<p>The objective of &#8220;characterizing&#8221; the process is to determine its dynamic behaviour, which to us means its time constants, gain and possibly fixed delay (dead time). The way we do that is to apply a &#8220;step input&#8221; and record the output. We then use Excel to experimentally find a set of cascaded time constants that will fit the output versus time graph. We then repeat the process for a negative step.<\/p>\n\n\n\n<p>As a warmup exercise I suggest you set up PIDassist with the following settings:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Start with whatever settings it comes up with when you launch it.<\/li>\n\n\n\n<li>In the simulator set Delay Line to 0<\/li>\n\n\n\n<li>In the simulator set Gain to 1 and all min\/max values to 0\/1 respectively.<\/li>\n\n\n\n<li>In the controller select (check) Open Loop<\/li>\n\n\n\n<li>In the controller set the two alternate setpoints to 0.2 and 0.8 and enable (check) Cycle.<\/li>\n\n\n\n<li>In the controller set the sample time Ts to about 1\/5th of the shortest time constant in the process.<\/li>\n<\/ol>\n\n\n\n<p>Get the simulation running, and adjust the horizontal scale until you can see the green output catch up with the red input on each section of the graph.<\/p>\n\n\n\n<p>What you are seeing (in green) is the open loop step response of the process for increasing and decreasing outputs. It is the exact same stuff as we generated using spreadsheets in the theory chapter, and it is what you are now going to do with your process.<\/p>\n\n\n\n<p>You can get a fair bit of help with this from PIDassist and a SPLat controller. The SPLat can drive your process and PIDassist can log the results to disk.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The objective of &#8220;characterizing&#8221; the process is to determine its dynamic behaviour, which to us means its time constants, gain and possibly fixed delay (dead&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3547,"menu_order":0,"template":"","class_list":["post-3564","spl_knowledgebase","type-spl_knowledgebase","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PID implementation: characterizing your process - SPLat Controls<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PID implementation: characterizing your process - SPLat Controls\" \/>\n<meta property=\"og:description\" content=\"The objective of &#8220;characterizing&#8221; the process is to determine its dynamic behaviour, which to us means its time constants, gain and possibly fixed delay (dead...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/\" \/>\n<meta property=\"og:site_name\" content=\"SPLat Controls\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-10T11:54:34+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/\",\"name\":\"PID implementation: characterizing your process - SPLat Controls\",\"isPartOf\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website\"},\"datePublished\":\"2025-04-18T11:46:50+00:00\",\"dateModified\":\"2025-06-10T11:54:34+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorials, application notes and white papers\",\"item\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Tutorial: PID control with SPLat\",\"item\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"PID control: Implementation\",\"item\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"PID implementation: characterizing your process\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/\",\"name\":\"SPLat Controls\",\"description\":\"OEM Embedded Machine Controllers\",\"publisher\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization\",\"name\":\"SPLat Controls\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg\",\"contentUrl\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg\",\"caption\":\"SPLat Controls\"},\"image\":{\"@id\":\"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PID implementation: characterizing your process - SPLat Controls","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"PID implementation: characterizing your process - SPLat Controls","og_description":"The objective of &#8220;characterizing&#8221; the process is to determine its dynamic behaviour, which to us means its time constants, gain and possibly fixed delay (dead...","og_url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/","og_site_name":"SPLat Controls","article_modified_time":"2025-06-10T11:54:34+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/","name":"PID implementation: characterizing your process - SPLat Controls","isPartOf":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website"},"datePublished":"2025-04-18T11:46:50+00:00","dateModified":"2025-06-10T11:54:34+00:00","breadcrumb":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/pid-implementation-characterizing-your-process\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webprojects.cloud\/wordpress\/splatco\/"},{"@type":"ListItem","position":2,"name":"Tutorials, application notes and white papers","item":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/"},{"@type":"ListItem","position":3,"name":"Tutorial: PID control with SPLat","item":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/"},{"@type":"ListItem","position":4,"name":"PID control: Implementation","item":"https:\/\/webprojects.cloud\/wordpress\/splatco\/knowledgebase\/tutorials-application-notes-and-white-papers\/tutorial-pid-control-with-splat\/pid-control-implementation\/"},{"@type":"ListItem","position":5,"name":"PID implementation: characterizing your process"}]},{"@type":"WebSite","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#website","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/","name":"SPLat Controls","description":"OEM Embedded Machine Controllers","publisher":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webprojects.cloud\/wordpress\/splatco\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#organization","name":"SPLat Controls","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/","url":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg","contentUrl":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-content\/uploads\/2024\/10\/logo.svg","caption":"SPLat Controls"},"image":{"@id":"https:\/\/webprojects.cloud\/wordpress\/splatco\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/spl_knowledgebase\/3564","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/spl_knowledgebase"}],"about":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/types\/spl_knowledgebase"}],"author":[{"embeddable":true,"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/users\/1"}],"up":[{"embeddable":true,"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/spl_knowledgebase\/3547"}],"wp:attachment":[{"href":"https:\/\/webprojects.cloud\/wordpress\/splatco\/wp-json\/wp\/v2\/media?parent=3564"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}