MATLAB Answers

Estimation of transfer function

6 views (last 30 days)
Omar Khalifa
Omar Khalifa on 18 Apr 2020
Commented: Ameer Hamza on 18 Apr 2020
I'm trying to control 220V 100 Watt "Band Heater" by creating PID controller, So in order to set PID gains i need to determine Transfer Function of band heater, I applied 220V to the heater and record the output temperature (using thermocouple) in array and send the records to MATLAB, but there was a problem when i tried to estimate transfer function, MATLAB asks me Number of poles and Number of zeros, and i couldn't determine them, So my question is: What could be the approximated number of poles and zeros for this system?

Answers (1)

Ameer Hamza
Ameer Hamza on 18 Apr 2020
The number of poles and zeros depends on the mathematical model of your system. If you have a differential equation describing the dynamics of your band heater, then you can use that equation to find out the exact numbers of poles and zeros. If you don't have a mathematical model, then you need to use "trial and error", by using different settings for the number of poles and zeros and select the one with the best fit. Typically for a real-world system with slow dynamic dynamics (i.e., slow rise time, less overshooting, etc.), estimating a transfer function with one zero and two poles will be enough. If the system has a fast dynamic response, then you will need to use a higher-order transfer function.
Since you are using a heating system, which usually has a response time of several seconds, even using a transfer function with one pole and no zeros will be enough. Still, I suggest using two poles and one zero for better accuracy.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!