delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mail set sender to geda-user-bounces using -f |
X-Recipient: | geda-user AT delorie DOT com |
DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; |
d=gmail.com; s=20120113; | |
h=mime-version:in-reply-to:references:date:message-id:subject:from:to | |
:content-type:content-transfer-encoding; | |
bh=4qIB8c3zox2m+s4qQpezdzGfZz9iky+1VX/AKqf60FU=; | |
b=OAaMaw2n+9Erl52Yw+XBDLfcZPBUroathM33PdYuK38Dar1wnPQUtjNhUoF6i0bqAr | |
xrlLvIXRj+nsyZ/Gsv0wS14I5IU7EcJv5jpBzCquRJXux4j/qY3ve9363hEGKy9SApTu | |
oVp1m0FoNGd40W3ekpj3IXziL1hGZl+oP8UE6WAWD0VqQPRqjHTsJ75mf1SAv8/8KOvO | |
2+/tgpExFB03BEPlQ8xZ9bbCTZMPSqWzfpc3Rrg2zl6lHGQCRO+zbEIEVzcYLfJaNDVi | |
X+9dxwRz5ntriYR+xYOVxq8tGMPXKYzC1njWzYZXjRHqTUi7ZshVylesRtnjVx4E4XmJ | |
nKaA== | |
MIME-Version: | 1.0 |
X-Received: | by 10.140.90.81 with SMTP id w75mr18819946qgd.57.1425654675675; |
Fri, 06 Mar 2015 07:11:15 -0800 (PST) | |
In-Reply-To: | <54F98855.4060903@optonline.net> |
References: | <CAF3uCZ=G0FztqBtpfvssYCz9WrUORX8+J45xmH9+KutaX6c+gw AT mail DOT gmail DOT com> |
<201503051621 DOT t25GL09H018380 AT envy DOT delorie DOT com> | |
<54F98855 DOT 4060903 AT optonline DOT net> | |
Date: | Fri, 6 Mar 2015 16:11:15 +0100 |
Message-ID: | <CAGYR9vfWc5Z3t4T2T82r1O4=LiRQSHPpGNhKevanz4BUA=zW-g@mail.gmail.com> |
Subject: | Re: [geda-user] [OT] Temperature sensor and control recommendation |
From: | Bernhard Kraft <bkraf0j9 AT gmail DOT com> |
To: | geda-user AT delorie DOT com |
X-MIME-Autoconverted: | from quoted-printable to 8bit by delorie.com id t26FBJ6b024327 |
Reply-To: | geda-user AT delorie DOT com |
Errors-To: | nobody AT delorie DOT com |
X-Mailing-List: | geda-user AT delorie DOT com |
X-Unsubscribes-To: | listserv AT delorie DOT com |
There are some free code examples around for implementing the "running average" algorithm which is probably what you want. But I still think you need a decent enough ADC (14-16 bit) to solve the requirements (resolution = 450/0.3) On Fri, Mar 6, 2015 at 11:58 AM, gene glick <geneglick AT optonline DOT net> wrote: > On 03/05/2015 11:21 AM, DJ Delorie wrote: >> >> >>> I'm facing the need to control the temperature of a small sample in a >>> chamber between room temperature and about 450°C with a precision of >>> 0.3°C or better. >> >> >> I use a thermocouple to monitor my woodstove, but I don't care so much >> about precision. I use a DS2760 thermocouple kit from Parallax for >> it, and a high-temp thermocouple probe from Omega.com. >> >> For monitoring my geothermal system, I used RTDs and an MCU's ADC to >> measure them. I got extra precision by doing each measurement 64 >> times and averaging, and the tech who calibrated my geothermal system >> says they're spot-on. >> >> I use the same averaging trick on my thermostats to get 0.1F readings >> on a 1C-rated sensor. If your sensor isn't noisy enough to use this >> trick, you can always add noise - you're basically building a 1-bit >> ADC. >> >> > we use this trick at work as well - converts a 12-bit ADC to 16-bit > precision. I think the relationship requires you need 2^n samples for each > bit of additional resolution. This is off the top of my head, but is > probably close. So if I remember correctly, we had to sample an extra 16X to > get the additional 4-bit precision. It works really well. But yes, it relies > on noise to work and assumes the measurement is relatively stable over the > sampling period. I believe the technical term for this trick is decimation. > > gene > >
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |