Boiling Sous-Vide Eggs Using Clojure's Transducers
blog.eikeland.se
Boiling Sous-Vide Eggs Using Clojure's Transducers
1–10 of 28 posts
Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#2Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#3Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#4From the picture it looks to me like egg is undercooked i.e. the white is still runny and kind of mucousy, ideally you want a solid tender white and a totally separate uncooked yolk. A slightly higher temperature (67 deg C) would ensure the white properly solidifies whilst still being cool enough to avoid cooking the yolk. 45 minutes is unnecessarily long a long as he egg remains under 70 degrees not much will be hap…
Also, the sensor might not be calibrated correctly, I have a reference thermometer (therma-pen), but won't bother calibrating a toy setup when I have a proper one ;)
Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#5From the picture it looks to me like egg is undercooked i.e. the white is still runny and kind of mucousy, ideally you want a solid tender white and a totally separate uncooked yolk. A slightly higher temperature (67 deg C) would ensure the white properly solidifies whilst still being cool enough to avoid cooking the yolk. 45 minutes is unnecessarily long a long as he egg remains under 70 degrees not much will be hap…
I agree, 67 could be better, you can also use two different temperatures, one for the yolk and then one (higher) for the whites for a short time - by ramping up the heat (or using two baths) at the end of the cooking. Better picture of another egg from this run: http://cl.ly/image/030N390L0D06 - white not totally set. Also, the sensor might not be calibrated correctly, I have a reference thermometer (therma-pen), but…
http://www.cookingissues.com/2011/05/03/tea-time-cooking-iss...
Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#6For temperature control, you probably want to use a PI controller with Anti-windup. This will compensate for the limits on actuator (heating element) output, and prevent large overshoots from "windup" of the Integral element. http://jagger.berkeley.edu/~pack/me132/Section15.pdf
Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#7From the picture it looks to me like egg is undercooked i.e. the white is still runny and kind of mucousy, ideally you want a solid tender white and a totally separate uncooked yolk. A slightly higher temperature (67 deg C) would ensure the white properly solidifies whilst still being cool enough to avoid cooking the yolk. 45 minutes is unnecessarily long a long as he egg remains under 70 degrees not much will be hap…
http://www.splendidtable.org/story/theres-more-than-one-way-...
he has a video demonstrating temperatures https://www.youtube.com/watch?v=GpvbNG1Dzhk
Guess it boiles down to personal preference
Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#8For temperature control, you probably want to use a PI controller with Anti-windup. This will compensate for the limits on actuator (heating element) output, and prevent large overshoots from "windup" of the Integral element. http://jagger.berkeley.edu/~pack/me132/Section15.pdf
Very good tip, thanks! I'll consider that for my proper setup, I've had some problems finding proper calibration values for some water containers and heaters because of the lag in the system.
There's no natural resonance in the system caused by energy-storing elements. For instance, if you drop a cold egg into a pot of water at exactly 80 C, it won't overshoot and go up to 85 C before settling to 80 C. Mechanical systems on the other hand often have "spring-like" behavior that causes them to resonate at certain frequencies.
If you want to get hardcore with the control design then you could look into fuzzy logic controllers. It's common in high-end appliances: http://en.wikipedia.org/wiki/Fuzzy_control_system
Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#9It is also used quite a bit in capacity allocation in a wide variety of industries. Instead of using NP Complete scheduling and discrete optimization that might not terminate, you take a page out of Hayek and use the PID algorithm to set a price on the capacity of each independent asset. Then, scheduling and allocation often becomes a matter of convex linear optimization.
In terms of practical use, I have zero doubt in my mind that the PID algorithm accounts for more economic impact than Page Rank or many other HN-popular algorithms. Just adding up the value of applications that I personally know about, it saves its users > $10B/year. I would wager that the only algorithm that surpasses its economic impact would be Simplex.
It is also incredibly extensible. I've seen variants where the integral term is swapped out with fourier transforms, or the derivative term is swapped out with ARIMAs or Hierarchical Forecasting algorithms or Neural Networks. You can hack the shit out of it, tailoring it to even the most obscure use cases if you wanted to. Like, for example, cooking an egg.
Re: Boiling Sous-Vide Eggs Using Clojure's Transducers
#10 (defn pid-transducer [set-point k-p k-i k-d]
(fn [xf]
(let [pid (volatile! (make-pid set-point k-d k-i k-d))]
(fn
([] (xf))
([result] (xf result))
([result input]
(vswap! pid (fn [p] (calculate-pid p input)))
(xf result (:output @pid)))))))
If guessing that the first 'k-d' on the third line should be a 'k-p'. I'm glad this bug didn't mess up your eggs!