{"id":2890,"date":"2020-08-26T19:02:07","date_gmt":"2020-08-26T19:02:07","guid":{"rendered":"http:\/\/bryceautomation.com\/?p=2890"},"modified":"2020-11-15T15:02:29","modified_gmt":"2020-11-15T15:02:29","slug":"plantpax-4-1-pid","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/","title":{"rendered":"PlantPAx 4 PID"},"content":{"rendered":"\n<h3 class=\"wp-block-heading\">Introduction to PlantPAx 4 PID<\/h3>\n\n\n\n<p>We typically use the PlantPAx 4 PID (P_PIDE) in closed loop controls.   For example, we have a heating process.  This heating process provides a control value (CV) to the heat bands.   We monitor the process variable (PV) to see what effect our output has.   Our goal is to maintain a desired setpoint (SP).  For the same reason, we might control a tank level, or a flow rate in other closed loop systems.   In a closed loop system, we provide an output, and observe (through feedback) what effect the output has.  <\/p><div id=\"bryce-500254147\" 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>It&#8217;s important to realize that Function Block PIDEs work differently than Ladder Logic PIDs.  Function block PIDEs are velocity based, whereas ladder logic PIDs are based on traditional position algorithm.  In other words, your changes will cause less of a &#8220;Bump&#8221; in the system.  In other words, if the PV remains at 0, and the setpoint is 10 with a Kp of 1 (and no Integral or Derivative), your output will be 10%.   However, if you change Kp to 2, and increase the SP to 20, your output would go to 30 instead of 20 like you might expect from the positional PIDs.  <\/p>\n\n\n\n<p>Remember, this document is an example only, and your actual application may vary widely.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Set up the PlantPAx 4 PID<\/h3>\n\n\n\n<p>At this time, I&#8217;ll assume that you have already <a href=\"https:\/\/bryceautomation.com\/index.php\/2020\/08\/10\/getting-started-with-plantpax-4-1\/\">started a new FactoryTalk View SE Project.<\/a>  I&#8217;ll also assume that you have setup the required components for a <a href=\"https:\/\/bryceautomation.com\/index.php\/2020\/08\/10\/getting-started-with-plantpax-4-1\/\">basic PlantPAx project using the 4.1 process library.<\/a>  If you have not done so, you will also need to import the P_PIDE add on instruction, and the required GFX files into your FactoryTalk View SE project.  You will find this starting at page 75 of <a href=\"https:\/\/literature.rockwellautomation.com\/idc\/groups\/literature\/documents\/rm\/proces-rm013_-en-p.pdf\">Rockwell&#8217;s guide.<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">PID Logic<\/h3>\n\n\n\n<p>In this case, I&#8217;ve created a task in Studio 5000 that executes every 1000ms.   Also, I&#8217;ve created a Function block subroutine, and used the JSR statement to jump to this subroutine from the MainRoutine.<\/p>\n\n\n\n<p>Within the Function Block, our P_PIDE is set up as follows:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"872\" height=\"555\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-13.png\" alt=\"\" class=\"wp-image-2893 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-13.png 872w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-13-300x191.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-13-768x489.png 768w\" data-sizes=\"(max-width: 872px) 100vw, 872px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 872px; --smush-placeholder-aspect-ratio: 872\/555;\" \/><\/figure>\n\n\n\n<p>  In this case, we are simulating a heating process.   We are observing the actual temperature, and determining the output levels we need to provide to achieve and hold this temperature as close as possible.   Even under load disturbances, the Actual_Temperature_PV should come back to the setpoint of 500.   Although this is just a simulation, the Actual_Temperature_PV could alias a real world analog channel to get the temperature.  The Actual_Band_Command_CV might alias an analog output channel.   Be sure your process variable is updating 5 to 10 times faster than the loop execution time.  (Go to the properties of the module and verify the RTS (real time sampling).<\/p>\n\n\n\n<p>We&#8217;ll download the work, go online, and take the processor to Run or Remote Run mode.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">FactoryTalk View Display<\/h3>\n\n\n\n<p>We have a display screen in FactoryTalk view that appears as follows:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"933\" height=\"475\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-14.png\" alt=\"\" class=\"wp-image-2896 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-14.png 933w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-14-300x153.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-14-768x391.png 768w\" data-sizes=\"(max-width: 933px) 100vw, 933px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 933px; --smush-placeholder-aspect-ratio: 933\/475;\" \/><\/figure>\n\n\n\n<p>In this case, we have a trend chart that is monitoring the Actual_Temperature_PV, and the PID&#8217;s setpoint.  On the right of the chart, we can adjust the setpoint, and the system load.   Above all, I&#8217;ve added the very first global object out of the P_PID Graphics library.    I&#8217;ve set the global object parameters on this object to point to the P_PIDE instruction&#8217;s tag.<\/p>\n\n\n\n<p>Launch the SE Client.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Configure the P_PIDE using PlantPAx.<\/h3>\n\n\n\n<p>Now that the client is running, we are ready to configure the object.  Click the P_PIDE object in the bottom right corner of the graphics display.    Verify that you are in operator mode for this lesson.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"419\" height=\"350\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/operatormode.png\" alt=\"\" class=\"wp-image-2904 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/operatormode.png 419w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/operatormode-300x251.png 300w\" data-sizes=\"(max-width: 419px) 100vw, 419px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 419px; --smush-placeholder-aspect-ratio: 419\/350;\" \/><\/figure>\n\n\n\n<p>Go to Maintenance, Display Advanced Properties, and we will end up on the Tune tab.  Remember, this is just for training, and to understand the effects of changes in variables.   You will have to understand the risks, and take precautions when tuning a live system.  To begin, set our Proportional gain to 1, and the Setpoint to 500.  Integral and Derivative will start at 0.   I&#8217;ve already determined that 50% power is required to achieve the SP under full (100%) load, so we will start with this setting.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"473\" height=\"541\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-15.png\" alt=\"\" class=\"wp-image-2897 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-15.png 473w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-15-262x300.png 262w\" data-sizes=\"(max-width: 473px) 100vw, 473px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 473px; --smush-placeholder-aspect-ratio: 473\/541;\" \/><\/figure>\n\n\n\n<p>While we are here, observe the maintenance tab.   Take a look at the different displays you have access to for troubleshooting.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"368\" height=\"492\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/maintenance.png\" alt=\"\" class=\"wp-image-2898 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/maintenance.png 368w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/maintenance-224x300.png 224w\" data-sizes=\"(max-width: 368px) 100vw, 368px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 368px; --smush-placeholder-aspect-ratio: 368\/492;\" \/><\/figure>\n\n\n\n<p>On the Engineering tab, be sure  your execution time matches actual.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"369\" height=\"494\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-16.png\" alt=\"\" class=\"wp-image-2899 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-16.png 369w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-16-224x300.png 224w\" data-sizes=\"(max-width: 369px) 100vw, 369px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 369px; --smush-placeholder-aspect-ratio: 369\/494;\" \/><\/figure>\n\n\n\n<p>Another important setting is the Control Action, and the Algorithm.   In this case, more power should decrease the error, so this loop is reverse acting.  Also, I&#8217;m going to use the default (Independent) algorithm.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"369\" height=\"491\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-21.png\" alt=\"\" class=\"wp-image-2913 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-21.png 369w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-21-225x300.png 225w\" data-sizes=\"(max-width: 369px) 100vw, 369px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 369px; --smush-placeholder-aspect-ratio: 369\/491;\" \/><\/figure>\n\n\n\n<p>Verify the HMI Configuration is set up as follows:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"369\" height=\"491\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-17.png\" alt=\"\" class=\"wp-image-2900 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-17.png 369w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-17-225x300.png 225w\" data-sizes=\"(max-width: 369px) 100vw, 369px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 369px; --smush-placeholder-aspect-ratio: 369\/491;\" \/><\/figure>\n\n\n\n<p>Be sure your settings are as follows, and go to &#8220;Manual&#8221;.   Realize that in manual mode, the and output from the PID will become exactly what you have entered on the face plate.  In other words your manual CV entry will be sent directly to the output of the PID.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"544\" height=\"593\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/verifytune.png\" alt=\"\" class=\"wp-image-2901 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/verifytune.png 544w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/verifytune-275x300.png 275w\" data-sizes=\"(max-width: 544px) 100vw, 544px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 544px; --smush-placeholder-aspect-ratio: 544\/593;\" \/><\/figure>\n\n\n\n<p>Notice that you are close to the setpoint.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Tuning the PlantPAx 4 PID<\/h3>\n\n\n\n<p>Now that we have everything configured, let&#8217;s get a feel for how the loop responds by doing some manual tuning.   <\/p>\n\n\n\n<p><strong>Proportional<\/strong>:   In a velocity based controller, this is based on the change in error.<\/p>\n\n\n\n<p><strong>Integral<\/strong>:  This is based on error and time.<\/p>\n\n\n\n<p><strong>Derivative<\/strong>:  Derivative is based on rate of change of error.<\/p>\n\n\n\n<p>Our first goal is to find the &#8220;Ultimate Controller Gain&#8221;, or Ku Variable.    We will start with a value of 1, and cause a disturbance.   If the loop is stable, we will increase Kp to the value of 2, then to 3.   Once the loop becomes unstable, we will write down the natural period in minutes.   We will use this natural period for other tuning parameters.  Since only Kp, and Ki are used in most applications, we will find these values.  To simplify  the loop, we seldom use derivative.   A general rule of thumb is to then cut the Kp value in half for our starting point.  Realize this method is not practical in every situation.   You can research tuning methods to see which method might be best for your situation.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Find Kp<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Starting with Kp=1<\/h4>\n\n\n\n<p>Let&#8217;s look at what happens when Kp=1.  If you are completely unfamiliar with a process, you might start at Kp=0.1, and double each time until the loop becomes unstable.  For now, take the controller to &#8220;Automatic&#8221; mode under 100% load with an SP of 500.<\/p>\n\n\n\n<p>Start with the faceplate Maintenance | Advanced Display Properties | Engineering.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"479\" height=\"539\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/AutoMode.png\" alt=\"\" class=\"wp-image-2905 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/AutoMode.png 479w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/AutoMode-267x300.png 267w\" data-sizes=\"(max-width: 479px) 100vw, 479px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 479px; --smush-placeholder-aspect-ratio: 479\/539;\" \/><\/figure>\n\n\n\n<p>Now, set the load to 0% to cause a disturbance, and observe the action of the Process Variable.  Also, notice the CV (output) drops as the PV increases.<\/p>\n\n\n\n<p>Notice Kp=1 stabilizes.  <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"982\" height=\"538\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/kp1stable.png\" alt=\"\" class=\"wp-image-2906 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/kp1stable.png 982w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/kp1stable-300x164.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/kp1stable-768x421.png 768w\" data-sizes=\"(max-width: 982px) 100vw, 982px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 982px; --smush-placeholder-aspect-ratio: 982\/538;\" \/><\/figure>\n\n\n\n<p>Now, go back to Manual Mode at 100% load.  Notice your power level (CV) immediately goes to 50%.  Allow the loop time to stabilize.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Try Kp=2<\/h4>\n\n\n\n<p>Now, change the Kp value to 2.  Put the controller back into automatic mode, and with 0% load, observe the trend charts again.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"987\" height=\"580\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-19.png\" alt=\"\" class=\"wp-image-2907 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-19.png 987w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-19-300x176.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-19-768x451.png 768w\" data-sizes=\"(max-width: 987px) 100vw, 987px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 987px; --smush-placeholder-aspect-ratio: 987\/580;\" \/><\/figure>\n\n\n\n<p>Albeit a bit more unstable, you see that our values stabilized.  Again, go back to Manual Mode and set your load to 100%. Wait for the loop to stabilize.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Try Kp=3<\/h4>\n\n\n\n<p>Next, we will change the value of Kp to 3.  Again, put the controller back into automatic mode with 0% load.  Observe what happens.  As can be seen, we are clearly unstable.  Our CV is also unable to go below 0, and therefore we start to loose control.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"980\" height=\"585\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png\" alt=\"\" class=\"wp-image-2909 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png 980w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation-300x179.png 300w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation-768x458.png 768w\" data-sizes=\"(max-width: 980px) 100vw, 980px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 980px; --smush-placeholder-aspect-ratio: 980\/585;\" \/><\/figure>\n\n\n\n<p>For now, go to manual at 0% load, and set Kp to half.  This value will be 1.5 as per thumb rule.  Make note of the natural period (peak to peak).  This appears to be around .5 minutes, and we&#8217;ll call this the Ti variable for later use.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Calculate and test Integral<\/h3>\n\n\n\n<p>Another rule of thumb is that our Ki (since it&#8217;s in repeats per minute in this case) would be Kp\/Ti, whereas Ti is the natural period.  Our natural period is .5, so 1.5\/.5 would give us 3.  With Kp at 1.5, set Ki (Integral) to 3.  Through trial and error, I&#8217;ve already determined that our setpoint needs to be to achieve the SP under no (0%) load.  We need some amount of power to compensate for the ambient losses.<\/p>\n\n\n\n<p>Allow the loop to stabilize with our new settings.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"366\" height=\"483\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-20.png\" alt=\"\" class=\"wp-image-2911 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-20.png 366w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-20-227x300.png 227w\" data-sizes=\"(max-width: 366px) 100vw, 366px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 366px; --smush-placeholder-aspect-ratio: 366\/483;\" \/><\/figure>\n\n\n\n<p>At this point, you are ready to go to Automatic mode.   We&#8217;ll try various load changes.   For each load change, we should always be able to get back to 500 degrees.<\/p>\n\n\n\n<p>We could increase integral to get the loop to respond faster, but realize if we set integral too high, we could cause instability in the loop again.<\/p>\n\n\n\n<p>Here is our integral at 3.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"268\" height=\"301\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/Integral3.png\" alt=\"\" class=\"wp-image-2912 lazyload\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 268px; --smush-placeholder-aspect-ratio: 268\/301;\" \/><\/figure>\n\n\n\n<p>Here is our integral at 6.  <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"272\" height=\"306\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/Integral6.png\" alt=\"\" class=\"wp-image-2915 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/Integral6.png 272w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/Integral6-267x300.png 267w\" data-sizes=\"(max-width: 272px) 100vw, 272px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 272px; --smush-placeholder-aspect-ratio: 272\/306;\" \/><\/figure>\n\n\n\n<p>We clearly see a better response with the Integral at 6.   Let&#8217;s test this when the load goes to 0.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"539\" height=\"302\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/lowhigh.png\" alt=\"\" class=\"wp-image-2916 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/lowhigh.png 539w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/lowhigh-300x168.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\/302;\" \/><\/figure>\n\n\n\n<p>You can see that we get back to the SP fairly quickly.   We&#8217;ll leave our settings on 6 for integral.   However&#8230;.   Realize that we changed the slope when we made integral more aggressive.  If you use Derivative, understand that derivative is based on slope, so we could indirectly have made the derivative too aggressive.   Let&#8217;s try derivative to see what happens.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Calculate and test Derivative in PlantPAx 4 PID.<\/h3>\n\n\n\n<p>As I have said, derivative is seldom used, because it complicates the PID.  It causes actions that are hard to determine when the process variable is noisy, such as in a flow control system.    The rule of thumb for derive is that Kd=Kp(Td), where Td is 1\/8 of the natural period.  Therefore, Td would be .0625.  (From .5\/8).  Kd would be 1.5 * .0625, which is .094.  Let&#8217;s plug these numbers into our faceplate and observe what happens under no load and full load.<\/p>\n\n\n\n<p>Our derivative action opposes a change in the process variable.   That might be good for some applications, but we probably would not use it on this one.<\/p>\n\n\n\n<p>Look at the effect that Derivative had on the Control Variable.  I&#8217;m starting off at full load, and then I&#8217;ll go to 0 load when the PV reaches the SP.  In this case, the derivative is clearly slowing down our reaction time.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"682\" height=\"315\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-22.png\" alt=\"\" class=\"wp-image-2919 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-22.png 682w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/image-22-300x139.png 300w\" data-sizes=\"(max-width: 682px) 100vw, 682px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 682px; --smush-placeholder-aspect-ratio: 682\/315;\" \/><\/figure>\n\n\n\n<p>For more information, visit the <a href=\"https:\/\/bryceautomation.com\/index.php\/category\/plantpax\/\">PlantPAx category page!<\/a><\/p>\n\n\n\n<p>&#8212; Ricky Bryce<\/p>\n<div id=\"bryce-193641046\" 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 PlantPAx 4 PID We typically use the PlantPAx 4 PID (P_PIDE) in closed loop controls. For example, we have a heating process. This heating process provides a control value (CV) to the heat bands. We monitor the process variable (PV) to see what effect our output has. Our goal is to maintain a <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":2909,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[195],"tags":[227,226,48,196,225],"class_list":{"0":"post-2890","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-plantpax","8":"tag-derivative","9":"tag-integral","10":"tag-pid","11":"tag-plantpax","12":"tag-proportional","13":"czr-hentry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PlantPAx 4 PID (P_PIDE) Setup and Tuning - Bryce Automation<\/title>\n<meta name=\"description\" content=\"We will do basic PlantPax 4 PID setup and tuning. Observe the effects of various Proportional, Integral, and Derivative values on the PV..\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PlantPAx 4 PID (P_PIDE) Setup and Tuning - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"We will do basic PlantPax 4 PID setup and tuning. Observe the effects of various Proportional, Integral, and Derivative values on the PV..\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/\" \/>\n<meta property=\"og:site_name\" content=\"Bryce Automation\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ricky.bryce.7\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-26T19:02:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-11-15T15:02:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png\" \/>\n\t<meta property=\"og:image:width\" content=\"980\" \/>\n\t<meta property=\"og:image:height\" content=\"585\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ricky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"PlantPAx 4 PID\",\"datePublished\":\"2020-08-26T19:02:07+00:00\",\"dateModified\":\"2020-11-15T15:02:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/\"},\"wordCount\":1660,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/saturation.png\",\"keywords\":[\"Derivative\",\"Integral\",\"PID\",\"PlantPAx\",\"Proportional\"],\"articleSection\":[\"PlantPAx\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/\",\"name\":\"PlantPAx 4 PID (P_PIDE) Setup and Tuning - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/saturation.png\",\"datePublished\":\"2020-08-26T19:02:07+00:00\",\"dateModified\":\"2020-11-15T15:02:29+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"We will do basic PlantPax 4 PID setup and tuning. Observe the effects of various Proportional, Integral, and Derivative values on the PV..\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/saturation.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/saturation.png\",\"width\":980,\"height\":585},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2020\\\/08\\\/26\\\/plantpax-4-1-pid\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PlantPAx 4 PID\"}]},{\"@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":"PlantPAx 4 PID (P_PIDE) Setup and Tuning - Bryce Automation","description":"We will do basic PlantPax 4 PID setup and tuning. Observe the effects of various Proportional, Integral, and Derivative values on the PV..","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/","og_locale":"en_US","og_type":"article","og_title":"PlantPAx 4 PID (P_PIDE) Setup and Tuning - Bryce Automation","og_description":"We will do basic PlantPax 4 PID setup and tuning. Observe the effects of various Proportional, Integral, and Derivative values on the PV..","og_url":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2020-08-26T19:02:07+00:00","article_modified_time":"2020-11-15T15:02:29+00:00","og_image":[{"width":980,"height":585,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png","type":"image\/png"}],"author":"Ricky","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"PlantPAx 4 PID","datePublished":"2020-08-26T19:02:07+00:00","dateModified":"2020-11-15T15:02:29+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/"},"wordCount":1660,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png","keywords":["Derivative","Integral","PID","PlantPAx","Proportional"],"articleSection":["PlantPAx"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/","url":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/","name":"PlantPAx 4 PID (P_PIDE) Setup and Tuning - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png","datePublished":"2020-08-26T19:02:07+00:00","dateModified":"2020-11-15T15:02:29+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"We will do basic PlantPax 4 PID setup and tuning. Observe the effects of various Proportional, Integral, and Derivative values on the PV..","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2020\/08\/saturation.png","width":980,"height":585},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2020\/08\/26\/plantpax-4-1-pid\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"PlantPAx 4 PID"}]},{"@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\/2890","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=2890"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/2890\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/2909"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=2890"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=2890"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=2890"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}