{"id":22861,"date":"2025-02-27T22:50:51","date_gmt":"2025-02-27T22:50:51","guid":{"rendered":"https:\/\/liquidinstruments.com\/?p=22861"},"modified":"2025-08-29T04:40:54","modified_gmt":"2025-08-29T04:40:54","slug":"tuning-a-digital-pid-controller-with-a-unit-step-response","status":"publish","type":"post","link":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/","title":{"rendered":"Tuning a digital PID Controller with a unit step response","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column]\n    <div data-component='call_to_action' class='vc_row-fluid cta w-full mx-auto cta-outline'>\n      <div class='flex w-full gap-4 flex-col items-center'>\n      \n        <div class='max-w-prose wpb_column vc_column_container vc_col-sm-12'>\n          <div class='vc_column-inner'>\n            \n            <p>This blog provides a practical guide on tuning a digital PID controller using the unit step response method, leveraging real-time feedback and oscilloscope visualization for efficient adjustments.<\/p>\n\n          <\/div>\n        <\/div>\n        <div class=' flex flex-row gap-4 xs:flex-col'>\n          <a class=\"button relative gap-2 items-center blue filled medium  \" href=\"https:\/\/liquidinstruments.com\/frequency-domain-control-the-ultimate-guide-to-control-loops\/\" title=\"Guide to feedback and control loops\" target=\"\"><span class=\"flex-1\">Guide to feedback and control loops<\/span><\/a>\n  <a class=\"button relative gap-2 items-center blue filled medium  \" href=\"https:\/\/liquidinstruments.com\/products\/integrated-instruments\/pid-controller\/\" title=\"Explore PID Controller\" target=\"\"><span class=\"flex-1\">Explore PID Controller<\/span><\/a>\n  \n  \n        <\/div>\n      <\/div>\n    <\/div>[\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text css=&#8221;&#8221;]When tuning a digital <a href=\"https:\/\/liquidinstruments.com\/products\/integrated-instruments\/pid-controller\/\">PID controller<\/a>, you can adjust parameters interactively on a gain plot and observe the response in real time on an embedded<a href=\"https:\/\/liquidinstruments.com\/products\/integrated-instruments\/oscilloscope\/\"> oscilloscope<\/a>. This makes experimentally tuning your controller much easier than in traditional <a href=\"https:\/\/liquidinstruments.com\/solutions\/controls\/\" rel=\"noopener\">feedback systems<\/a>, and requires far less calculations from the user. For a detailed guide on frequency-domain control, read our <a href=\"https:\/\/liquidinstruments.com\/frequency-domain-control-the-ultimate-guide-to-control-loops\/\" rel=\"noopener\">application note<\/a>.<\/p>\n<p><span style=\"font-weight: 400;\"><img decoding=\"async\" class=\"aligncenter wp-image-22884 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.27.23\u202fPM.png\" alt=\"feedback control system block diagram\" width=\"778\" height=\"317\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.27.23\u202fPM.png 778w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.27.23\u202fPM-300x122.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.27.23\u202fPM-768x313.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.27.23\u202fPM-600x244.png 600w\" sizes=\"(max-width: 778px) 100vw, 778px\" \/><\/span><\/p>\n<p style=\"text-align: center;\">Figure 1: Typical feedback control system block diagram<\/p>\n<p>When constructing a feedback control loop as seen in Figure 1, using the block diagram approach can greatly simplify analysis. Figure 1 describes a closed-loop frequency control system, where X<sub>sp<\/sub> represents a set point input, C represents the controller, H represents the system under control, and X<sub>freq<\/sub> represents the output frequency of the system. In our feedback loop, S represents a sensor to measure our system output. By comparing this output to our desired setpoint, the controller can compensate for changes in the system.<\/p>\n<p>This difference between our desired set point and the system output is our error signal, \u03b5. If the sensor output and the set point match, our error signal will be zero. If our output is larger than the desired set point, the error will be negative and cause our controller to reduce the output.<\/p>\n<p>There are many ways to tune a feedback control system. In this example, we will outline how to begin tuning a digital PID controller experimentally, by beginning with a unit step input signal, viewing our system unit step response, and adjusting P, I, and D parameters while observing the response to achieve the desired result. To simulate a plant under test, we configure the Moku:Pro in <a href=\"https:\/\/liquidinstruments.com\/multi-instrument-mode\/\">Multi-Instrument Mode<\/a> (Figure 2), using a 100 Hz, 2nd order low-pass filter in the Digital Filter Box (Figure 3). The <a href=\"https:\/\/liquidinstruments.com\/products\/integrated-instruments\/oscilloscope\/\">Oscilloscope<\/a>\u2019s embedded waveform generator produces a square wave as our input step signal (Figure 4).<\/p>\n<h3 style=\"text-align: center;\"><img decoding=\"async\" class=\"alignnone wp-image-22885 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.28.37\u202fPM.png\" alt=\"Multi-instrument Mode configuration to use the Digital Filter Box to simulate a plant\" width=\"2008\" height=\"1060\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.28.37\u202fPM.png 2008w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.28.37\u202fPM-300x158.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.28.37\u202fPM-1024x541.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.28.37\u202fPM-768x405.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.28.37\u202fPM-1536x811.png 1536w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.28.37\u202fPM-600x317.png 600w\" sizes=\"(max-width: 2008px) 100vw, 2008px\" \/><\/h3>\n<p style=\"text-align: center;\">Figure 2: Multi-Instrument Mode configuration to use the Digital Filter Box to simulate a plant<\/p>\n<h3 style=\"text-align: center;\"><img decoding=\"async\" class=\"alignnone wp-image-22886 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.29.43\u202fPM.png\" alt=\"Digital Filter Box low-pass filter configuration\" width=\"1970\" height=\"900\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.29.43\u202fPM.png 1970w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.29.43\u202fPM-300x137.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.29.43\u202fPM-1024x468.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.29.43\u202fPM-768x351.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.29.43\u202fPM-1536x702.png 1536w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.29.43\u202fPM-600x274.png 600w\" sizes=\"(max-width: 1970px) 100vw, 1970px\" \/><\/h3>\n<p style=\"text-align: center;\">Figure 3: Digital Filter Box low-pass filter configuration<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" class=\"alignnone wp-image-22887 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.30.20\u202fPM.png\" alt=\"step signal generation using an embedded Waveform Generator\" width=\"1938\" height=\"898\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.30.20\u202fPM.png 1938w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.30.20\u202fPM-300x139.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.30.20\u202fPM-1024x474.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.30.20\u202fPM-768x356.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.30.20\u202fPM-1536x712.png 1536w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.30.20\u202fPM-600x278.png 600w\" sizes=\"(max-width: 1938px) 100vw, 1938px\" \/><\/p>\n<p style=\"text-align: center;\">Figure 4: Step signal generation using the embedded Waveform Generator<\/p>\n<h2 style=\"text-align: left;\">Set up the system<\/h2>\n<ol>\n<li>Connect the Moku:Pro PID Controller to your system as C, controller, in Figure 1.<\/li>\n<li>Ensure the input signal, which is the difference between the actual sensor output and the desired set point, Xsp, and output control signal, which is the output of C in Figure 1, are properly configured. To learn more about the input control matrix of the PID Controller, read this <a href=\"https:\/\/knowledge.liquidinstruments.com\/pid-controller\/how-does-the-control-matrix-work\" rel=\"noopener\">Knowledge Base article<\/a>. Connect the sensor feedback into Input 1 of <a href=\"https:\/\/liquidinstruments.com\/products\/hardware-platforms\/mokupro\/\">Moku:Pro<\/a>. Connect Output 1 of Moku:Pro to the tuning input of your plant, or system under control, H. This tuning input could be for a voltage-controlled oscillator (VCO), laser modulation input, or motor controller.<\/li>\n<li>Open the gain plot view by clicking on the Controller block for tuning and the embedded Oscilloscope at probe points before and after the controller in the Moku PID Controller, seen in Figure 5.<\/li>\n<\/ol>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-22888 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.54.49\u202fAM.png\" alt=\"\" width=\"952\" height=\"346\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.54.49\u202fAM.png 952w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.54.49\u202fAM-300x109.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.54.49\u202fAM-768x279.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.54.49\u202fAM-600x218.png 600w\" sizes=\"(max-width: 952px) 100vw, 952px\" \/><\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" class=\"aligncenter wp-image-22889 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM.png\" alt=\"Block diagram view of the Moku PID Controller, top. Gain plot of the Moku PID Controller and the embedded Oscilloscope view, bottom\" width=\"2616\" height=\"1544\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM.png 2560w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM-300x177.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM-1024x604.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM-768x453.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM-1536x907.png 1536w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM-2048x1209.png 2048w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.38.16\u202fAM-600x354.png 600w\" sizes=\"(max-width: 2616px) 100vw, 2616px\" \/><\/p>\n<p style=\"text-align: center;\">Figure 5: Block diagram view of the Moku PID Controller, top. Gain plot of the Moku PID Controller and the embedded Oscilloscope view, bottom.<\/p>\n<h2>Start with Proportional (P)<\/h2>\n<p style=\"text-align: center;\"><img decoding=\"async\" class=\"aligncenter wp-image-22891 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.35.58\u202fPM.png\" alt=\"Moku PID Controller interface\" width=\"1840\" height=\"1102\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.35.58\u202fPM.png 1840w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.35.58\u202fPM-300x180.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.35.58\u202fPM-1024x613.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.35.58\u202fPM-768x460.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.35.58\u202fPM-1536x920.png 1536w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.35.58\u202fPM-600x359.png 600w\" sizes=\"(max-width: 1840px) 100vw, 1840px\" \/>Figure 6: I and D equal to zero, increasing P.<\/p>\n<ol>\n<li style=\"text-align: left;\">Disable I and D initially.<\/li>\n<li style=\"text-align: left;\">Increase P by dragging it on the gain plot until the system starts responding quickly.<\/li>\n<li style=\"text-align: left;\">Watch the oscilloscope output\u2014if the system oscillates too much, reduce P slightly.<\/li>\n<\/ol>\n<h2 style=\"text-align: left;\">Add Integral (I) to remove steady-state error<\/h2>\n<ol>\n<li style=\"text-align: left;\">Slowly increase I to eliminate any steady-state error, as seen in Figure 7.<\/li>\n<\/ol>\n<p style=\"text-align: center;\"><img decoding=\"async\" width=\"2560\" height=\"1509\" class=\"size-full wp-image-22892 alignnone\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM.png\" alt=\"\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM.png 2560w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-300x177.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1024x604.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-768x453.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1536x905.png 1536w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-2048x1207.png 2048w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-600x354.png 600w\" sizes=\"(max-width: 2560px) 100vw, 2560px\" \/>Figure 7: Reduced P, modifying I.<\/p>\n<ol start=\"2\">\n<li style=\"text-align: left;\">Monitor the oscilloscope for overshoot\u2014too much I can cause excessive oscillations. In Figure 8, increasing I to 300 Hz causes noticeable oscillations.<\/li>\n<\/ol>\n<p><img decoding=\"async\" class=\"alignnone wp-image-22893 size-full\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1.png\" alt=\"Oscillations increase showcased on PID controller\" width=\"2616\" height=\"1542\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1.png 2560w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1-300x177.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1-1024x604.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1-768x453.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1-1536x905.png 1536w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1-2048x1207.png 2048w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-11.36.13\u202fAM-1-600x354.png 600w\" sizes=\"(max-width: 2616px) 100vw, 2616px\" \/><\/p>\n<p style=\"text-align: center;\">Figure 8: Oscillations increase with increased I.<\/p>\n<ol start=\"3\">\n<li style=\"text-align: left;\">If oscillations increase, consider slightly reducing P.<\/li>\n<\/ol>\n<h2>Add Derivative (D) to improve stability<\/h2>\n<ol>\n<li style=\"text-align: left;\">Gradually increase D to reduce overshoot and dampen oscillations, seen in Figure 9.<\/li>\n<\/ol>\n<p style=\"text-align: center;\"><img decoding=\"async\" width=\"1236\" height=\"727\" class=\"size-full wp-image-22895 aligncenter\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.22.43\u202fPM.png\" alt=\"\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.22.43\u202fPM.png 1236w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.22.43\u202fPM-300x176.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.22.43\u202fPM-1024x602.png 1024w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.22.43\u202fPM-768x452.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2025\/02\/Screenshot-2025-02-27-at-2.22.43\u202fPM-600x353.png 600w\" sizes=\"(max-width: 1236px) 100vw, 1236px\" \/><br \/>\nFigure 9: P and I set, adding D at 100 Hz.<\/p>\n<ol start=\"2\">\n<li>Be careful\u2014too much D can make the system noisy due to amplified high-frequency signals. You can also enable a differentiator saturation term to limit high-frequency gain.<\/li>\n<li>Adjust P, I, and D interactively while watching the oscilloscope for optimal performance.<\/li>\n<\/ol>\n<p>To further fine-tune the response, use small adjustments and observe the real-time response on the Oscilloscope. Using the Oscilloscope\u2019s built in measurements, you can also monitor rise time, overshoot, undershoot, and more, logging this information to a file if desired. These Oscilloscope traces can also be exported as .MAT files for <a href=\"https:\/\/liquidinstruments.com\/webinar-registration-automating-experiments-with-the-power-of-matlab-and-reconfigurable-instrumentation\/\" rel=\"noopener\">further analysis in MATLAB<\/a>. If needed, adjust output limits to protect external components, filters, or sampling rate for better stability. To implement cascaded controllers, use <a href=\"https:\/\/liquidinstruments.com\/multi-instrument-mode\/\" rel=\"noopener\">Multi-Instrument Mode<\/a> on <a href=\"https:\/\/liquidinstruments.com\/products\/hardware-platforms\/mokupro\/\">Moku:Pro<\/a>.[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][\/vc_column][\/vc_row]<\/p>\n<\/div>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>[vc_row][vc_column][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text css=&#8221;&#8221;]When tuning a digital PID controller, you can adjust parameters interactively on a gain plot and observe the response in real time on an embedded oscilloscope. This makes experimentally tuning your controller much easier than in traditional feedback systems, and requires far less calculations from the user. For a detailed guide on frequency-domain control, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":40,"featured_media":20302,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[3],"tags":[],"class_list":["post-22861","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","site-category-mokupro","site-category-pid-controller"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v27.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to Tune a PID Controller with the Unit Step Response Method<\/title>\n<meta name=\"description\" content=\"Learn to tune a digital PID controller using the unit step response method, with real-time parameter adjustments and oscilloscope feedback.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tuning a digital PID Controller with a unit step response\" \/>\n<meta property=\"og:description\" content=\"Learn to tune a digital PID controller using the unit step response method, with real-time parameter adjustments and oscilloscope feedback.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/\" \/>\n<meta property=\"og:site_name\" content=\"Liquid Instruments\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/LiquidInstruments\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-02-27T22:50:51+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-29T04:40:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1410\" \/>\n\t<meta property=\"og:image:height\" content=\"940\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"jpatterson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@liquidinstrmnts\" \/>\n<meta name=\"twitter:site\" content=\"@liquidinstrmnts\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"jpatterson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/\"},\"author\":{\"name\":\"jpatterson\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/person\/a90cfa3df7e1cd3895cac4a51dff60b5\"},\"headline\":\"Tuning a digital PID Controller with a unit step response\",\"datePublished\":\"2025-02-27T22:50:51+00:00\",\"dateModified\":\"2025-08-29T04:40:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/\"},\"wordCount\":861,\"publisher\":{\"@id\":\"https:\/\/liquidinstruments.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp\",\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/\",\"url\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/\",\"name\":\"How to Tune a PID Controller with the Unit Step Response Method\",\"isPartOf\":{\"@id\":\"https:\/\/liquidinstruments.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp\",\"datePublished\":\"2025-02-27T22:50:51+00:00\",\"dateModified\":\"2025-08-29T04:40:54+00:00\",\"description\":\"Learn to tune a digital PID controller using the unit step response method, with real-time parameter adjustments and oscilloscope feedback.\",\"breadcrumb\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage\",\"url\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp\",\"contentUrl\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp\",\"width\":1410,\"height\":940,\"caption\":\"Moku:Pro with PID software running and using API integration\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/liquidinstruments.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tuning a digital PID Controller with a unit step response\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/liquidinstruments.com\/#website\",\"url\":\"https:\/\/liquidinstruments.com\/\",\"name\":\"Liquid Instruments\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/liquidinstruments.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/liquidinstruments.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/liquidinstruments.com\/#organization\",\"name\":\"Liquid Instruments\",\"url\":\"https:\/\/liquidinstruments.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1\",\"width\":1000,\"height\":924,\"caption\":\"Liquid Instruments\"},\"image\":{\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/LiquidInstruments\/\",\"https:\/\/x.com\/liquidinstrmnts\",\"https:\/\/www.instagram.com\/liquidinstruments\/\",\"https:\/\/www.linkedin.com\/company\/liquidinstruments\/\",\"https:\/\/www.youtube.com\/c\/LiquidInstruments\",\"https:\/\/vimeo.com\/liquidinstruments\"],\"hasMerchantReturnPolicy\":{\"@type\":\"MerchantReturnPolicy\",\"merchantReturnLink\":\"https:\/\/liquidinstruments.com\/support\/warranty-repairs-and-service\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/person\/a90cfa3df7e1cd3895cac4a51dff60b5\",\"name\":\"jpatterson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3f4addf937f4e6300e74bf8a6d4d655c30b9302eec44ad3c439471b26ee5139b?s=96&d=wavatar&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3f4addf937f4e6300e74bf8a6d4d655c30b9302eec44ad3c439471b26ee5139b?s=96&d=wavatar&r=g\",\"caption\":\"jpatterson\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Tune a PID Controller with the Unit Step Response Method","description":"Learn to tune a digital PID controller using the unit step response method, with real-time parameter adjustments and oscilloscope feedback.","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:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/","og_locale":"en_US","og_type":"article","og_title":"Tuning a digital PID Controller with a unit step response","og_description":"Learn to tune a digital PID controller using the unit step response method, with real-time parameter adjustments and oscilloscope feedback.","og_url":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/","og_site_name":"Liquid Instruments","article_publisher":"https:\/\/www.facebook.com\/LiquidInstruments\/","article_published_time":"2025-02-27T22:50:51+00:00","article_modified_time":"2025-08-29T04:40:54+00:00","og_image":[{"width":1410,"height":940,"url":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp","type":"image\/webp"}],"author":"jpatterson","twitter_card":"summary_large_image","twitter_creator":"@liquidinstrmnts","twitter_site":"@liquidinstrmnts","twitter_misc":{"Written by":"jpatterson","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#article","isPartOf":{"@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/"},"author":{"name":"jpatterson","@id":"https:\/\/liquidinstruments.com\/#\/schema\/person\/a90cfa3df7e1cd3895cac4a51dff60b5"},"headline":"Tuning a digital PID Controller with a unit step response","datePublished":"2025-02-27T22:50:51+00:00","dateModified":"2025-08-29T04:40:54+00:00","mainEntityOfPage":{"@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/"},"wordCount":861,"publisher":{"@id":"https:\/\/liquidinstruments.com\/#organization"},"image":{"@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage"},"thumbnailUrl":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp","articleSection":["Blog"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/","url":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/","name":"How to Tune a PID Controller with the Unit Step Response Method","isPartOf":{"@id":"https:\/\/liquidinstruments.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage"},"image":{"@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage"},"thumbnailUrl":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp","datePublished":"2025-02-27T22:50:51+00:00","dateModified":"2025-08-29T04:40:54+00:00","description":"Learn to tune a digital PID controller using the unit step response method, with real-time parameter adjustments and oscilloscope feedback.","breadcrumb":{"@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#primaryimage","url":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp","contentUrl":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/10\/mokupro-pid-intuitive-software-and-API-integration.webp","width":1410,"height":940,"caption":"Moku:Pro with PID software running and using API integration"},{"@type":"BreadcrumbList","@id":"https:\/\/liquidinstruments.com\/blog\/tuning-a-digital-pid-controller-with-a-unit-step-response\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/liquidinstruments.com\/"},{"@type":"ListItem","position":2,"name":"Tuning a digital PID Controller with a unit step response"}]},{"@type":"WebSite","@id":"https:\/\/liquidinstruments.com\/#website","url":"https:\/\/liquidinstruments.com\/","name":"Liquid Instruments","description":"","publisher":{"@id":"https:\/\/liquidinstruments.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/liquidinstruments.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/liquidinstruments.com\/#organization","name":"Liquid Instruments","url":"https:\/\/liquidinstruments.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1","contentUrl":"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1","width":1000,"height":924,"caption":"Liquid Instruments"},"image":{"@id":"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/LiquidInstruments\/","https:\/\/x.com\/liquidinstrmnts","https:\/\/www.instagram.com\/liquidinstruments\/","https:\/\/www.linkedin.com\/company\/liquidinstruments\/","https:\/\/www.youtube.com\/c\/LiquidInstruments","https:\/\/vimeo.com\/liquidinstruments"],"hasMerchantReturnPolicy":{"@type":"MerchantReturnPolicy","merchantReturnLink":"https:\/\/liquidinstruments.com\/support\/warranty-repairs-and-service\/"}},{"@type":"Person","@id":"https:\/\/liquidinstruments.com\/#\/schema\/person\/a90cfa3df7e1cd3895cac4a51dff60b5","name":"jpatterson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/liquidinstruments.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3f4addf937f4e6300e74bf8a6d4d655c30b9302eec44ad3c439471b26ee5139b?s=96&d=wavatar&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3f4addf937f4e6300e74bf8a6d4d655c30b9302eec44ad3c439471b26ee5139b?s=96&d=wavatar&r=g","caption":"jpatterson"}}]}},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts\/22861","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/comments?post=22861"}],"version-history":[{"count":10,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts\/22861\/revisions"}],"predecessor-version":[{"id":25567,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts\/22861\/revisions\/25567"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/media\/20302"}],"wp:attachment":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/media?parent=22861"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/categories?post=22861"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/tags?post=22861"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}