I've got Uni project in which I will have a small enclosure with a nichrome wire inside as a heating element, I am supposed to implement a PID controller using a microcontroller to maintain the temperature inside the enclosure at 50c by turning on/off the voltage supplied (using MOSFET) to the heating element, also a fan to speed up getting rid of extra heat introduced by outside sources.

Now I have to wait for quite a while until I receive the parts, was wondering what sort of software I can use to first try to simulate this project as closely as possible to try to come up with a PID controller, this will help me to learn about PID itself and my project before I start the practical part.


  • \$\begingroup\$ I think you can use Proteus for simulation. You can test your code in proteus and giving some value to Arduino pin and simulate it. Just give some voltage based on your calculation (try searching for the output values of a thermal sensor) \$\endgroup\$
    – Aimkiller
    Dec 21, 2020 at 17:59
  • \$\begingroup\$ Free? Circuit or physical system? \$\endgroup\$
    – Ron Beyer
    Dec 21, 2020 at 18:09
  • \$\begingroup\$ I would suggest tinkercad for arduino. \$\endgroup\$ Dec 21, 2020 at 18:28
  • \$\begingroup\$ Somewhere is the code for STM32 of the Chinese reverse engineered clone of Hakko T12 soldering station. However it doesn't use a nichrome wire, rather a combination of two metals that act also as a thermocouple. When the MOSFET is not on, the temperature is read. Pretty clever way. \$\endgroup\$ Dec 21, 2020 at 19:57

1 Answer 1


Although you could use just about any program to simulate a thermal system, just make the time steps small in comparison to the temperature change between steps, you can also use programs such as MATLAB (and the free alternatives such as Scilab and Octave) etc. You could even use Excel if you were so inclined.

But I suggest using LTspice, which is freely downloadable. You use analogs for temperature to simulate the thermal aspects (table from this tutorial:

enter image description here

In your system there is no thermal equivalent of inductance, but there are thermal systems where there is.

Of course if you have no idea of what the the parameters are, it will be difficult to come up with realistic simulations but you'll probably learn something in the process and when you get the actual parts you can adjust the parameters to conform to reality (and run tests faster than on real hardware, most likely).

  • 1
    \$\begingroup\$ +1 for excel (to begin with), its really fast and easy to set up, and helps you understand how the equations work and interact with each other. Its also a fast way to get nice graphs \$\endgroup\$
    – BeB00
    Dec 21, 2020 at 18:40
  • \$\begingroup\$ LTSpice would be really good if you were building an analog controller. Matlab with Simulink is nicer if you want something that translates more directly into 'puter code. Or Python, if you want to write the simulation from scratch. \$\endgroup\$
    – TimWescott
    Dec 21, 2020 at 19:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.