# Archive for July 7th, 2017

### AD9850 Module: Oscillator Thermal Time Constant

Posted by Ed in Amateur Radio, Electronics Workbench, Science on 2017-07-07

With an LM75 atop the 125 MHz oscillator and the whole thing wrapped in foam:

Let it cool overnight in the Basement Laboratory, fire it up, record the temperature every 30 seconds, and get the slightly chunky blue curve:

Because we know this is one of those exponential-approach problems, the equation looks like:

`Temp(t) = T`

_{final} + (T_{init} - T_{final}) × e^{-t/τ}

We can find the time constant by either going through the hassle of an RMS curve fit or just winging it by assuming:

- The initial temperature, which is 22.5 °C = close to 22.7 °C ambient
- The final temperature (call it 42 °C)
- Any good data point will suffice

The point at 480 s is a nice, round 40 °C, so plug ’em in:

`40.0 = 42.0 + (22.7 - 42.0) × e`

^{-480/τ}

Turning the crank produces τ = 212 s, which looks about right.

Trying it again with the 36.125 °C point at 240 s pops out 200.0 °C.

Time for a third opinion!

Because we live in the future, the ever-so-smooth red curve comes from unleashing LibreOffice Calc’s Goal Seek to find a time constant that minimizes the RMS Error. After a moment, it suggests 199.4 s, which I’ll accept as definitive.

The spreadsheet looks like this:

T_init | 22.5 | ||

T_final | 42.0 | ||

Tau | 199.4 | ||

Time s | Temp °C | Exp App | Error² |

0 | 22.250 | 22.500 | 0.063 |

30 | 25.500 | 25.224 | 0.076 |

60 | 28.000 | 27.567 | 0.187 |

90 | 30.125 | 29.583 | 0.294 |

120 | 31.750 | 31.317 | 0.187 |

150 | 33.250 | 32.810 | 0.194 |

180 | 34.375 | 34.093 | 0.079 |

210 | 35.375 | 35.198 | 0.031 |

240 | 36.125 | 36.148 | 0.001 |

270 | 36.813 | 36.965 | 0.023 |

300 | 37.500 | 37.668 | 0.028 |

330 | 38.125 | 38.273 | 0.022 |

360 | 38.500 | 38.794 | 0.086 |

390 | 39.000 | 39.242 | 0.058 |

420 | 39.500 | 39.627 | 0.016 |

450 | 39.750 | 39.959 | 0.043 |

480 | 40.000 | 40.244 | 0.059 |

510 | 40.250 | 40.489 | 0.057 |

540 | 40.500 | 40.700 | 0.040 |

570 | 40.750 | 40.882 | 0.017 |

600 | 41.000 | 41.038 | 0.001 |

RMS Error | 0.273 |

The `Exp App`

column is the exponential equation, assuming the three variables at the top, the `Error²`

column is the squared error between the measurement and the equation, and the `RMS Error`

cell contains the square root of the average of those squared errors.

The Goal Seeker couldn’t push `RMS Error`

to zero and gave up with `Tau`

= 199.4. That’s sensitive to the initial and final temperatures, but close enough to my back of the envelope to remind me not to screw around with extensive calculations when “two minutes” will suffice.

Basically, after five time constants = 1000 s = 15 minutes, the oscillator is stable enough to not worry about.

## Blowback