Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
slice:z-n [2019/04/02 15:28] – Michael Radunsky | slice:z-n [2020/08/21 15:46] – Michael Radunsky |
---|
===== Ziegler-Nichols Loop Tuning ===== | ===== Ziegler-Nichols Loop Tuning ===== |
| The Ziegler-Nichols loop tuning protocol(([[https://staff.guilan.ac.ir/staff/users/chaibakhsh/fckeditor_repo/file/documents/Optimum%20Settings%20for%20Automatic%20Controllers%20(Ziegler%20and%20Nichols,%201942).pdf|Optimum Settings for Automatic Controllers, by J.G. Zieger and N. B. Nichols]] and\\ |
| [[https://en.wikipedia.org/wiki/Ziegler%E2%80%93Nichols_method|Wikipedia]])) is a simple method to establishing the loop parameter values for a PI or PID control loop. This protocol is designed to optimize the loop for disturbance rejection.\\ |
| ==== Links ==== |
| Click here for the [[slice:qt|SLICE-QT Manual]].\\ |
| Click here for the [[slice:quick_start_qt|SLICE-QTC Quick Start Guide]].\\ |
| Click here for the [[slice:qt:API|SLICE-QTC API]].\\ |
| Click here for the [[https://www.vescent.com/products/electronics/slice/slice-qt-four-channel-temperature-controller/|SLICE-QTC web page]].\\ |
| Click here for the [[https://github.com/Vescent|Github page for SLICE-QTC GUI]]\\ |
| Click here for the [[https://github.com/Vescent/SLICE-QT-Firmware-Upgrade|Github page for SLICE-QTC firmware revisions]]\\ |
| |
This protocol is designed to optimize the loops for disturbance rejection. | ==== Instructions ==== |
<WRAP center round box 60%> | <WRAP center round box 60%> |
| {{ :warning-sign.png?50&nolink }} | There is the possibility for the loop to go unstable at too high gain. Use caution as gain is increased. | | | {{ :warning-sign.png?50&nolink }} | There is the possibility for the loop to go unstable at too high gain. Use caution as gain is increased. | |
- Set Proportional Gain (K<sub>P</sub>) to 0 | - Set Proportional Gain (K<sub>P</sub>) to 0 |
- Turn off Integral and Differential portions of the loop (T<sub>I</sub> & T<sub>D</sub>, respectively) | - Turn off Integral and Differential portions of the loop (T<sub>I</sub> & T<sub>D</sub>, respectively) |
- While monitoring the error in temperature on rolling graph, **slowly** increase K<sub>P</sub> until the error begins to oscillate | - While monitoring the error in temperature on rolling graph on the SLICE-QTC display or an [[slice:qt#front-panel_inputs_outputs|external oscilloscope]], **slowly** increase K<sub>P</sub> until the error begins to oscillate |
- Use the {{slice:graph_scale_x.gif}} and {{slice:graph_scale_y.gif}} icons, to scale displayed response appropriately | - Use the {{slice:graph_scale_x.gif}} and {{slice:graph_scale_y.gif}} icons, to scale displayed response appropriately |
- Use the {{slice:graph_pause.gif}} icon to pause the graph | - Use the {{slice:graph_pause.gif}} icon to pause the graph |
- Note K<sub>P</sub> where oscillation begins, K<sub>P, cr</sub> | - Note: the pause icon only pauses the graph, not the servo control |
| - Note K<sub>P</sub> where oscillation begins; this is K<sub>P, cr</sub>, the critical proportional gain. |
- Use the Cursors enabled by touching the {{slice:cursors.gif}} icon to measure the period of oscillation, T<sub>cr</sub> | - Use the Cursors enabled by touching the {{slice:cursors.gif}} icon to measure the period of oscillation, T<sub>cr</sub> |
| - You can use the two rotary knobs or touch & drag the cursors on the touch screen |
- Use the following table to set the values of K<sub>P</sub>, T<sub>I</sub>, and T<sub>D</sub> | - Use the following table to set the values of K<sub>P</sub>, T<sub>I</sub>, and T<sub>D</sub> |
| |
<WRAP center round box 60%><tabcaption Z-N |Ziegler-Nichols loop values> | <WRAP center round box 60%><tabcaption Z-N |Ziegler-Nichols loop values> |
| **Type of Controller** | K<sub>P</sub> | T<sub>I</sub> | T<sub>D</sub> | | | **Type of Control Loop** | K<sub>P</sub> | T<sub>I</sub> | T<sub>D</sub> | |
| **PI** | 0.45K<sub>P, cr</sub> | 0.83T<sub>cr</sub> | 0 | | | **PI** | 0.45•K<sub>P, cr</sub> | 0.83•T<sub>cr</sub> | 0 | |
| **PID** | 0.6K<sub>P, cr</sub> | 0.5T<sub>cr</sub> | 0.125T<sub>cr</sub> | | | **PID** | 0.6•K<sub>P, cr</sub> | 0.5•T<sub>cr</sub> | 0.125•T<sub>cr</sub> | |
</tabcaption></WRAP> | </tabcaption></WRAP> |
| |
| |
| |