10-05-16, 11:52 PM | #11 |
Supreme EcoRenovator
|
I had the best luck using the libraries and code from hacktronics. Most all of the other sites have libraries that you have to tweak (taking out comments to set options and such) before they will work. For actively practicing software engineers, this is a trivial step taken early in the project. For me, this is another stumbling block along the way. The more code I can just copy and paste, the better. The hacktronics libraries are already "optimized" beforehand by whoever, and work good enough for me.
here is their 1wire tutorial: https://www.hacktronics.com/Tutorial...-tutorial.html If you are using the multilogger, the sketch written for it will find all the sensors and log them to an sd card all by itself. All you have to do is fabricate the sensor string and plug it in. I don't know how the board sorts out the sensors, but once it does they should sort the same way every time. Again, another trivial task for engineers. Unless you have intimate knowledge of the reverse polish 1wire sorting algorithm, the first time is a mystery. After some decoding, the order is constant until you mess with the sensor string. |
The Following 2 Users Say Thank You to jeff5may For This Useful Post: |
10-06-16, 02:20 AM | #12 |
Journeyman EcoRenovator
Join Date: Jan 2011
Location: Seattle
Posts: 326
Thanks: 109
Thanked 23 Times in 18 Posts
|
I appreciate the information gentlemen. That is what I was looking for.
What would be a good distance between sensors down the borehole? If I drill a 4" borehole 100', and drop the sensors down 10' apart, would that be enough sensors to pick up the temperature differences from a water bearing (heat removing) layer? That also brings me to another question. After the test hole shows the data needed, why wouldn't I put two loops down one hole? One for the solar flat plate collector loop and the other for the heat exchange loop? Thanks, Geo |
10-06-16, 11:18 AM | #13 | |
Supreme EcoRenovator
|
Quote:
An aquifer throws another twist into the method. Not bad for the heat pump, not good for storage. How much flow, how thick the layer, etc. makes a world of difference. Ten feet may not be close enough together for fine measurements. Last edited by jeff5may; 10-19-16 at 01:49 PM.. Reason: spelling |
|
10-19-16, 11:41 AM | #14 |
Lurking Renovator
Join Date: Jan 2014
Location: Rhode Island
Posts: 5
Thanks: 0
Thanked 1 Time in 1 Post
|
|
The Following User Says Thank You to ChrisJ For This Useful Post: | Geo NR Gee (10-19-16) |
08-06-17, 12:15 PM | #15 |
Journeyman EcoRenovator
Join Date: Jan 2011
Location: Seattle
Posts: 326
Thanks: 109
Thanked 23 Times in 18 Posts
|
Update on the oneWire DS18B20 temperature sensors and data logging for my future borehole. The issue that I am having is when stringing 20 of the sensors together. I have read that you need to use a 4.7 ohm resistor. The plan is to check temperatures down a 100' hole with the sensors every 5 feet. Do I need a resistor on each sensor?
I found waterproof oneWire DS18B20 temperature sensors in a 10 pack for about $15.00 that are wired up and ready to string together. But would 20 of those sensors work with that many hooked up together? |
08-07-17, 06:42 PM | #16 |
Supreme EcoRenovator
|
Check the data sheet. I believe that the correct value of resistance is 4.7k ohms. Whenever you want to run more than a certain number of sensors on one line, it is more reliable to pull the line high with a transistor if you are wiring them in parasite power mode. If the sensors are wired with a separate power wire, the pull-up transistor is not necessary.
Last edited by jeff5may; 08-07-17 at 11:15 PM.. |
08-08-17, 12:26 AM | #17 |
Journeyman EcoRenovator
Join Date: Jan 2011
Location: Seattle
Posts: 326
Thanks: 109
Thanked 23 Times in 18 Posts
|
Are you saying that I could have a string 100ft long with a total of 20 sensors with the three wires setup? One for positive (5 volts), a ground, and data and I wouldn't need any resistor? Great!
|
08-08-17, 10:10 AM | #18 |
Supreme EcoRenovator
|
You will still need a pull-up resistor on the data line, only one, somewhere near the data logger, no matter what mode you run the sensors in. The more sensors you string up, the more load they will put on the data line. If the sensors are given "external" power (by running a dedicated power wire), the single 4.7k resistor is sufficient to maintain operation. This is because the sensors don't suck significant current from the data line. The sensors use an "open drain" type of transmit circuit, which relies on the data line to be in a logic "high" state when it is inactive. When the sensors are transmitting a logic "low" state, they present a ~100 ohm load on the data line to draw it below ~0.5 volts. The controller, well, it has whatever it has in it to pull the line low.
Parasite power mode is where you can run into problems. When running multiple sensors on a single wire to both supply power to the devices and read data, the "master control device" must be smart. The pullup resistor must still be there, at the controller, to provide "weak" pullup for data integrity. When power is first applied, all of the sensors initialize after receiving sufficient power from the data line. They take next to no power (microwatts) to start up. They are slaves, so they just sit there and "listen" for commands from the controller. The master issues commands by pulling the data line low to tell the sensors what to do. It then switches to "receive" mode. In this state, the controller "listens" to the data line, and the sensors "talk" by pulling the data line to ground. Again, the "weak" pullup resistor is sufficient to maintain operation. The sensors draw very little power from the data wire, and everything works. During certain operations (mainly when the sensors are told to read temperature and save the value internally), the sensors draw much more power doing their jobs. They go from drawing microwatts to milliwatts while they are active. If more than a few sensors are sucking power from the data line, the pullup resistor cannot pass sufficient current to feed them all at once. The sensors that are starved of power then drop out and restart once the data line goes back above 3 volts or so. They don't finish their jobs, and when queried for results will lie to the controller. There are ways around this situation from occurring, and the protocol specifies a "strong" pullup transistor to be installed that shorts the data line to the power supply during high-drain operations. In certain configurations, a smaller resistance value can be substituted for the 4.7k pullup resistor. This resistor must fall between the range where it can still drop enough voltage for the data line to be seen as a "low" logic state when individual devices pull it low, and where it passes enough current to keep the data line above 3 volts or so when the sensors are doing their jobs. With your application of 20 sensors on one line, no value of pullup resistor can provide that "fudge" factor running in parasite power mode. If all 20 sensors are told to read temperature at the same time, the combined load is too great. If a small enough resistance is substituted to keep all of the sensors alive while they are working hard, that value is too small to drop enough voltage when the individual devices try to pull the line low to talk on the line. In your application, a "strong" pullup transistor must be used, as well as a "weak" pullup resistor, to ensure reliable operation. Otherwise, the sensors (and/or controller) can burn out trying to transmit data. Let it be known that that the manufacturer specs both components, strong pullup transistor and weak pullup resistor, regardless of whether the sensors are running in parasite power mode or not. Doing so removes all speculation on their behalf as to what will work in custom made interfaces. Last edited by jeff5may; 08-08-17 at 01:35 PM.. |
The Following User Says Thank You to jeff5may For This Useful Post: | Geo NR Gee (08-08-17) |
|
|