Main

Advanced Temperature Control

Main.AdvancedTemperatureControl History

Hide minor edits - Show changes to output

Deleted lines 17-30:
<table>
<tr>
<td>
<a target="_blank"  href="https://www.amazon.com/gp/product/B07GMFWMRY/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B07GMFWMRY&linkCode=as2&tag=apmonitor-20&linkId=240e25095dffdf5a68ecc98a1b707e2f"><img border="0" src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&MarketPlace=US&ASIN=B07GMFWMRY&ServiceVersion=20070822&ID=AsinImage&WS=1&Format=_SL250_&tag=apmonitor-20" ></a><img src="//ir-na.amazon-adsystem.com/e/ir?t=apmonitor-20&l=am2&o=1&a=B07GMFWMRY" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />
</td>
<td>
<iframe style="width:120px;height:240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="//ws-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&OneJS=1&Operation=GetAdHtml&MarketPlace=US&source=ac&ref=tf_til&ad_type=product_link&tracking_id=apmonitor-20&marketplace=amazon&region=US&placement=B07GMFWMRY&asins=B07GMFWMRY&linkId=ef7e3c8c25c02a504ef84d62a51f77d9&show_border=false&link_opens_in_new_window=true&price_color=333333&title_color=0066c0&bg_color=ffffff">
</iframe>
</td>
</tr>
</table>
(:htmlend:)

(:html:)
Changed line 19 from:
<button class="button"><span>Purchase Lab Kit</span></button>
to:
<button class="button"><span>Get Lab Kit</span></button>
September 10, 2018, at 05:08 PM by 173.117.162.65 -
Changed line 100 from:
  width: 200px;
to:
  width: 300px;
September 10, 2018, at 05:07 PM by 173.117.162.65 -
Deleted lines 30-40:
(:toggle hide purchase button show="Get Temperature Control Lab":)
(:div id=purchase:)
The lab kit includes:

* Arduino Uno
* Temperature control PCB shield
* USB barrel jack power cable for heaters
* 5V USB power supply (US plug)
* USB cable for serial connection to MacOS, Windows, or Linux computer
* Small cardboard box

Changed lines 32-48 from:
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="CZWTTVAV9BJ8C">
<table>
<tr><td><input type="hidden" name="on0" value="Lab Type">Lab Type</td></tr><tr><td><select name="os0">
<option value="Basic (PID) and Advanced Control (MPC) Kit">Basic (PID) and Advanced Control (MPC) Kit $35.00 USD</option>
</select> </td></tr>
<tr><td><input type="hidden" name="on1" value="Firmware (can change later)">Arduino Firmware (can change later)</td></tr><tr><td><select name="os1">
<option value="MATLAB and Simulink">MATLAB and Simulink </option>
<option value="Python">Python </option>
</select> </td></tr>
<tr><td><input type="hidden" name="on2" value="Other notes (e.g. EU Plug)">Other notes (e.g. EU Plug)</td></tr><tr><td><input type="text" name="os2" maxlength="200"></td></tr>
</table>
<input type="hidden" name="currency_code" value="USD">
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form
>
to:
<a href='https://apmonitor.com/pdc/index.php/Main/PurchaseLabKit'>
<button class
="button"><span>Purchase Lab Kit</span></button>
</a>
Changed lines 36-37 from:
(:divend:)
to:
Added lines 87-130:
(:htmlend:)


(:html:)
<style>
.button {
  border-radius: 4px;
  background-color: #0000ff;
  border: none;
  color: #FFFFFF;
  text-align: center;
  font-size: 28px;
  padding: 20px;
  width: 200px;
  transition: all 0.5s;
  cursor: pointer;
  margin: 5px;
}

.button span {
  cursor: pointer;
  display: inline-block;
  position: relative;
  transition: 0.5s;
}

.button span:after {
  content: '\00bb';
  position: absolute;
  opacity: 0;
  top: 0;
  right: -20px;
  transition: 0.5s;
}

.button:hover span {
  padding-right: 25px;
}

.button:hover span:after {
  opacity: 1;
  right: 0;
}
</style>
Added lines 98-113:
(:html:)
<script type="text/javascript">
_linkedin_partner_id = "452500";
window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || [];
window._linkedin_data_partner_ids.push(_linkedin_partner_id);
</script><script type="text/javascript">
(function(){var s = document.getElementsByTagName("script")[0];
var b = document.createElement("script");
b.type = "text/javascript";b.async = true;
b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js";
s.parentNode.insertBefore(b, s);})();
</script>
<noscript>
<img height="1" width="1" style="display:none;" alt="" src="https://dc.ads.linkedin.com/collect/?pid=452500&fmt=gif" />
</noscript>
(:htmlend:)
August 24, 2018, at 04:30 PM by 10.35.117.63 -
Changed lines 17-29 from:
%width=350px%Attach:tclab_device.png
to:
(:html:)
<table>
<tr>
<td>
<a target="
_blank"  href="https://www.amazon.com/gp/product/B07GMFWMRY/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B07GMFWMRY&linkCode=as2&tag=apmonitor-20&linkId=240e25095dffdf5a68ecc98a1b707e2f"><img border="0" src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&MarketPlace=US&ASIN=B07GMFWMRY&ServiceVersion=20070822&ID=AsinImage&WS=1&Format=_SL250_&tag=apmonitor-20" ></a><img src="//ir-na.amazon-adsystem.com/e/ir?t=apmonitor-20&l=am2&o=1&a=B07GMFWMRY" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />
</td>
<td>
<iframe style="width:120px;height:240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="//ws-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&OneJS=1&Operation=GetAdHtml&MarketPlace=US&source=ac&ref=tf_til&ad_type=product_link&tracking_id=apmonitor-20&marketplace=amazon&region=US&placement=B07GMFWMRY&asins=B07GMFWMRY&linkId=ef7e3c8c25c02a504ef84d62a51f77d9&show_border=false&link_opens_in_new_window=true&price_color=333333&title_color=0066c0&bg_color=ffffff">
</iframe>
</td>
</tr>
</table>
(:htmlend:)
March 14, 2018, at 12:11 AM by 10.37.118.243 -
Changed line 67 from:
(:toggle init=hide id=mpc hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
to:
Attach:mpc_mimo_tclab.gif
March 14, 2018, at 12:11 AM by 10.37.118.243 -
Changed line 67 from:
(:toggle init=hide id=mpc button=1 hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
to:
(:toggle init=hide id=mpc hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
March 14, 2018, at 12:10 AM by 10.37.118.243 -
Changed line 67 from:
(:toggle init=hide button hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
to:
(:toggle init=hide id=mpc button=1 hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
March 14, 2018, at 12:08 AM by 10.37.118.243 -
Changed line 67 from:
(:toggle init=hide hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
to:
(:toggle init=hide button hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
March 14, 2018, at 12:07 AM by 10.37.118.243 -
Changed lines 67-72 from:
Attach:mpc_siso_tclab.gif

(:toggle hide mimo button
show="Show MIMO MPC":)
(:div id=mimo:)
Attach:mpc_mimo_tclab.gif
(:divend
:)
to:
(:toggle init=hide hide=mpc_siso_tclab.gif show=mpc_mimo_tclab.gif:)
March 14, 2018, at 12:03 AM by 10.37.118.243 -
Added lines 69-73:
(:toggle hide mimo button show="Show MIMO MPC":)
(:div id=mimo:)
Attach:mpc_mimo_tclab.gif
(:divend:)

Deleted line 90:
Attach:mpc_mimo_tclab.gif
March 13, 2018, at 11:56 PM by 10.37.118.243 -
Changed lines 84-86 from:
* [[Attach:Lab_H_MHE_and_MPC.pdf|Lab H - Moving Horizon Estimation with MPC]]
to:
* [[Attach:Lab_H_MHE_and_MPC.pdf|Lab H - Moving Horizon Estimation with MPC]]

Attach:mpc_mimo_tclab.gif
March 13, 2018, at 06:20 PM by 10.37.118.243 -
Added lines 66-67:

Attach:mpc_siso_tclab.gif
March 13, 2018, at 12:57 AM by 10.5.113.167 -
Changed line 5 from:
These labs are hands-on applications of advanced temperature control with two heaters and two temperature sensors. The labs reinforce principles of model development, estimation, and advanced control methods.
to:
This Arduino lab is a hands-on applications of advanced temperature control with two heaters and two temperature sensors. The labs reinforce principles of model development, estimation, and advanced control methods.
March 13, 2018, at 12:50 AM by 10.5.113.167 -
Changed lines 5-6 from:
This lab is an application of advanced temperature control with two heaters and two temperature sensors.
to:
These labs are hands-on applications of advanced temperature control with two heaters and two temperature sensors. The labs reinforce principles of model development, estimation, and advanced control methods.

(:html:)
<iframe width="560" height="315" src="https://www.youtube.com/embed/dzl-h9_jP0o" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
(:htmlend:)

The heater power output is adjusted to maintain a desired temperature setpoint. Thermal energy from the heater is transferred by conduction, convection, and radiation to the temperature sensor
.
Changed line 15 from:
The heater power output is adjusted to maintain a desired temperature setpoint. Thermal energy from the heater is transferred by conduction, convection, and radiation to the temperature sensor. This lab is a resource for model identification, estimation, and advanced control development.
to:
This lab is a resource for model identification, estimation, and advanced control development with full source code examples available in MATLAB and Python.
March 12, 2018, at 04:16 PM by 10.4.53.164 -
Changed line 76 from:
* [[Attach:Lab_H_MHE_and_MPC|Lab H - Moving Horizon Estimation with MPC]]
to:
* [[Attach:Lab_H_MHE_and_MPC.pdf|Lab H - Moving Horizon Estimation with MPC]]
March 09, 2018, at 04:51 PM by 10.24.210.202 -
Changed line 75 from:
* [[Attach:Lab_G_Nonlinear_MPC.pdf|Lab G - Nonlinear Model Predictive Control]]
to:
* [[Attach:Lab_G_Nonlinear_MPC.pdf|Lab G - Nonlinear Model Predictive Control]] with [[https://youtu.be/eoZRcbilKTU|MATLAB and Python]]
March 07, 2018, at 01:38 AM by 174.148.66.37 -
Changed line 74 from:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]] with [[https://youtu.be/P_tPc0LvHJY|Python]] and [[https://youtu.be/7WMVUMM5Dt0|MATLAB]] Solutions
to:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]] with [[https://youtu.be/P_tPc0LvHJY|Python]] and [[https://youtu.be/7WMVUMM5Dt0|MATLAB]]
March 02, 2018, at 06:06 AM by 45.56.3.173 -
Changed line 74 from:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]] and [[https://youtu.be/P_tPc0LvHJY|Python (GEKKO) Solution]] and [[https://youtu.be/7WMVUMM5Dt0|MATLAB Solution]]
to:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]] with [[https://youtu.be/P_tPc0LvHJY|Python]] and [[https://youtu.be/7WMVUMM5Dt0|MATLAB]] Solutions
March 02, 2018, at 06:05 AM by 45.56.3.173 -
Changed line 74 from:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]] and [[https://youtu.be/P_tPc0LvHJY|Solution]]
to:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]] and [[https://youtu.be/P_tPc0LvHJY|Python (GEKKO) Solution]] and [[https://youtu.be/7WMVUMM5Dt0|MATLAB Solution]]
Changed line 74 from:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]]
to:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]] and [[https://youtu.be/P_tPc0LvHJY|Solution]]
February 19, 2018, at 04:08 PM by 174.148.184.8 -
Changed line 74 from:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear MPC]]
to:
* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear Model Predictive Control]]
Changed line 76 from:
* [[Attach:Lab_H_MHE_and_MPC|Lab H - Estimation with MPC]]
to:
* [[Attach:Lab_H_MHE_and_MPC|Lab H - Moving Horizon Estimation with MPC]]
February 19, 2018, at 04:07 PM by 174.148.184.8 -
Changed lines 55-56 from:
The advanced control lab explores multivariate control with Multiple Input Multiple Output (MIMO) modeling, estimation, and control.
to:
This advanced control lab is for multivariate control with Multiple Input Multiple Output (MIMO) modeling, estimation, and control.
Changed lines 75-77 from:


to:
* [[Attach:Lab_G_Nonlinear_MPC.pdf|Lab G - Nonlinear Model Predictive Control]]
* [[Attach:Lab_H_MHE_and_MPC|Lab H - Estimation with MPC]]
February 19, 2018, at 03:15 PM by 174.148.184.8 -
Changed lines 5-6 from:
This lab is an application of advanced temperature control with two heaters and two temperature sensors. The heater power output is adjusted to maintain a desired temperature setpoint. Thermal energy from the heater is transferred by conduction, convection, and radiation to the temperature sensor. This lab is a resource for model identification, estimation, and advanced control development.
to:
This lab is an application of advanced temperature control with two heaters and two temperature sensors.

%width=550px%Attach:tclab_schematic.png

The heater power output is adjusted to maintain a desired temperature setpoint. Thermal energy from the heater is transferred by conduction, convection, and radiation to the temperature sensor. This lab is a resource for model identification, estimation, and advanced control development.
Deleted lines 43-44:

%width=500px%Attach:tclab_schematic.png
February 19, 2018, at 03:15 PM by 174.148.184.8 -
Deleted lines 18-19:

%width=550px%Attach:arduino_lab_kit.png
February 19, 2018, at 03:14 PM by 174.148.184.8 -
Changed line 7 from:
Attach:tclab_device.png
to:
%width=350px%Attach:tclab_device.png
February 19, 2018, at 03:09 PM by 174.148.184.8 -
Changed line 7 from:
%width=400px%Attach:tclab_device.png
to:
Attach:tclab_device.png
Added lines 70-74:
* [[Attach:Lab_E_Hybrid_Estimation.pdf|Lab E - Hybrid Model Estimation]] and [[https://youtu.be/eEjjkHb1e_E|Solution]]

'''Model Predictive Control'''

* [[Attach:Lab_F_Linear_MPC.pdf|Lab F - Linear MPC]]
Changed lines 63-65 from:
* [[Main/Lab_A_SISO_Model.pdf|Lab A - Single Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling|Solution]]
* [[Main/Lab_B_MIMO_Model.pdf|Lab B - Dual Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling2|Solution]]
to:
* [[Attach:Lab_A_SISO_Model.pdf|Lab A - Single Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling|Solution]]
* [[Attach:Lab_B_MIMO_Model.pdf|Lab B - Dual Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling2|Solution]]
Changed lines 68-69 from:
* [[Main/Lab_C_Parameter_Estimation.pdf|Lab C - Parameter Estimation]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoEstimation2|Solution]]
* [[Main/Lab_D_2nd_Order_Estimation.pdf|Lab D - Empirical Model Estimation]] and [[https://youtu.be/Cp6fPUptc74|Solution]]
to:
* [[Attach:Lab_C_Parameter_Estimation.pdf|Lab C - Parameter Estimation]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoEstimation2|Solution]]
* [[Attach:Lab_D_2nd_Order_Estimation.pdf|Lab D - Empirical Model Estimation]] and [[https://youtu.be/Cp6fPUptc74|Solution]]
Changed lines 63-65 from:
* [[Main/Lab_A_SISO_Model.pdf|A: Single Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling|Solution]]
* [[Main/Lab_B_MIMO_Model.pdf|B: Dual Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling2|Solution]]
to:
* [[Main/Lab_A_SISO_Model.pdf|Lab A - Single Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling|Solution]]
* [[Main/Lab_B_MIMO_Model.pdf|Lab B - Dual Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling2|Solution]]
Changed lines 68-69 from:
* [[Main/Lab_C_Parameter_Estimation.pdf|C: Parameter Estimation]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoEstimation2|Solution]]
* [[Main/Lab_D_2nd_Order_Estimation.pdf|D: Empirical Model Estimation]] and [[https://youtu.be/Cp6fPUptc74|Solution]]
to:
* [[Main/Lab_C_Parameter_Estimation.pdf|Lab C - Parameter Estimation]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoEstimation2|Solution]]
* [[Main/Lab_D_2nd_Order_Estimation.pdf|Lab D - Empirical Model Estimation]] and [[https://youtu.be/Cp6fPUptc74|Solution]]
Added lines 1-72:
(:title Advanced Temperature Control:)
(:keywords Arduino, PID, temperature, control, process control, course:)
(:description Temperature Control with an Arduino Device:)

This lab is an application of advanced temperature control with two heaters and two temperature sensors. The heater power output is adjusted to maintain a desired temperature setpoint. Thermal energy from the heater is transferred by conduction, convection, and radiation to the temperature sensor. This lab is a resource for model identification, estimation, and advanced control development.

%width=400px%Attach:tclab_device.png

(:toggle hide purchase button show="Get Temperature Control Lab":)
(:div id=purchase:)
The lab kit includes:

* Arduino Uno
* Temperature control PCB shield
* USB barrel jack power cable for heaters
* 5V USB power supply (US plug)
* USB cable for serial connection to MacOS, Windows, or Linux computer
* Small cardboard box

%width=550px%Attach:arduino_lab_kit.png

(:html:)
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="CZWTTVAV9BJ8C">
<table>
<tr><td><input type="hidden" name="on0" value="Lab Type">Lab Type</td></tr><tr><td><select name="os0">
<option value="Basic (PID) and Advanced Control (MPC) Kit">Basic (PID) and Advanced Control (MPC) Kit $35.00 USD</option>
</select> </td></tr>
<tr><td><input type="hidden" name="on1" value="Firmware (can change later)">Arduino Firmware (can change later)</td></tr><tr><td><select name="os1">
<option value="MATLAB and Simulink">MATLAB and Simulink </option>
<option value="Python">Python </option>
</select> </td></tr>
<tr><td><input type="hidden" name="on2" value="Other notes (e.g. EU Plug)">Other notes (e.g. EU Plug)</td></tr><tr><td><input type="text" name="os2" maxlength="200"></td></tr>
</table>
<input type="hidden" name="currency_code" value="USD">
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
(:htmlend:)
(:divend:)

%width=500px%Attach:tclab_schematic.png

!!!! Lab Resources

Lab software is available in MATLAB, Python, and Simulink. The [[http://gekko.readthedocs.io/en/latest/|GEKKO package]] is recommended for Python or first-time users without a language preference.

* [[https://github.com/APMonitor/arduino|TCLab Files on GitHub]]

A basic version of this lab is also available. The more basic lab instructions are for tuning a Proportional Integral Derivative (PID) controller with Single Input Single Output (SISO) control.

* [[https://apmonitor.com/heat.htm|Basic (PID) Control Lab]]

The advanced control lab explores multivariate control with Multiple Input Multiple Output (MIMO) modeling, estimation, and control.

!!!! Lab Instructions

The advanced control lab has three phases including model development, parameter and state estimation, and advanced control. The models developed and tuned in the initial phase are used directly in model predictive control. Model forms are from empirical identification or fundamental energy balance relationships and include single (SISO) and dual heater (MIMO) modules. Relationships may be linear or nonlinear with continuous or discrete variables.

'''Model Development'''

* [[Main/Lab_A_SISO_Model.pdf|A: Single Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling|Solution]]
* [[Main/Lab_B_MIMO_Model.pdf|B: Dual Heater Modeling]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoModeling2|Solution]]

'''Parameter and State Estimation'''

* [[Main/Lab_C_Parameter_Estimation.pdf|C: Parameter Estimation]] and [[http://apmonitor.com/pdc/index.php/Main/ArduinoEstimation2|Solution]]
* [[Main/Lab_D_2nd_Order_Estimation.pdf|D: Empirical Model Estimation]] and [[https://youtu.be/Cp6fPUptc74|Solution]]