After assembling the board I quickly tested the MAX31856 with a library that I found on github and as it turns out the temperature reading was not as expected, checking the schematic I realized that I made a mistake and reversed the sensing lines coming from the thermocouple. Oops. Fixed that and temp was good.
Next I thought of the control loop, the output signal would look like a PWM signal modified with a imposed fixed time at one end to take the temp measurement. The rest of the signal is composed of the duty cycle given by the PID library where we input the setpoint and the measured temperature from each cycle and it outputs a control value
But first I had to see how the commuting between driving the element and measure the temp will behave and here I stumbled across problems. The library for MAX31856 enables the chip in continuous measurement mode and sets the error detecting flags for generating interrupts whenever something goes wrong like open connection to the thermocouple, over voltage etc. This gave me problems as even I disabled every flag for error reporting even after making the measurement an over voltage error would appear.
The next thing I have to try is to start writing the code from scratch and set the IC in single shot measurement. If that won't work even powering the IC from a digital pin and shut it down completely (not the most elegant solution).
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.