Water meter: Itron Aquadis+ with pulse sensor
-
@meijeren It seems like I get occasional massive miscounts. During the last four days I had a night with +87 litre and a night with +595 litre. I think this happens random although we did run the dishwasher during this nights. During all other times the count was in line with the actual meter readings. Did you change anything on the values for MAX_FLOW, attachInterrupt (currently on falling flank) or the 0.5sek debounce setting? I found some people do change this.
-
on a residia, I found a way that makes no error:
http://forum.mysensors.org/topic/1647/water-meter-grey-scale-sensor/1 -
@epierre Did not know this sensor. However for the Aquadis+ meter this does not look like a good solution. It should reflect the metal piece compared to the white background. Also the led might spread the light too much for the sensor.
-
@bisschopsr hopefully not for the tone was quite small on the other and it worked perfectly well ! I think on the x0.0001 you could do that to detect the red cursor moving around.
-
Today I had another massive miscount. As expected this is happening random. I realigned the sensor 4 days ago. Until now the mismatch was 0. Today I had a +975 litre count in one hour. This is getting a little frustrating now. Any suggestions anyone?
-
@bisschopsr said:
TCRT5000 module...
What happens if the mirror is barely in position to reflect and the counter stay at rest or is moving very slowly?
I'm afraid that it will trigger many false events instead of just one (maybe depending on the ambient light).
Probably using a couple of detectors and trigger only when both see the reflection can help. -
@bisschopsr said:
TCRT5000 module...
What happens if the mirror is barely in position to reflect and the counter stay at rest or is moving very slowly?
I'm afraid that it will trigger many false events instead of just one (maybe depending on the ambient light).
Probably using a couple of detectors and trigger only when both see the reflection can help.@salvato said:
@bisschopsr said:
TCRT5000 module...
What happens if the mirror is barely in position to reflect and the counter stay at rest or is moving very slowly?
I'm afraid that it will trigger many false events instead of just one (maybe depending on the ambient light).
Probably using a couple of detectors and trigger only when both see the reflection can help.That is what I was thinking also. It must happen when the dish is stopped with the edge close to the detector or really moving slow. I was also thinking about using a second detector and only trigger when both see the dish. This might however mean modding a TCRT5000 sensor. Ambient light will not be the problem. The sensor and the dish are shielded from external light sources.
-
@salvato said:
@bisschopsr said:
TCRT5000 module...
What happens if the mirror is barely in position to reflect and the counter stay at rest or is moving very slowly?
I'm afraid that it will trigger many false events instead of just one (maybe depending on the ambient light).
Probably using a couple of detectors and trigger only when both see the reflection can help.That is what I was thinking also. It must happen when the dish is stopped with the edge close to the detector or really moving slow. I was also thinking about using a second detector and only trigger when both see the dish. This might however mean modding a TCRT5000 sensor. Ambient light will not be the problem. The sensor and the dish are shielded from external light sources.
@bisschopsr probably the number of miscounted can be reduced in software, by measuring the time between two successive pulses.
Measure the maximum number of counts per time unit you will ever need to count (e.g open all valves completely and see how fast it runs). Any pulses coming in faster can be ignored as they are fakes.
This will probably not eliminate all miscounts, but I suspect it will reduce it a lot. -
@bisschopsr probably the number of miscounted can be reduced in software, by measuring the time between two successive pulses.
Measure the maximum number of counts per time unit you will ever need to count (e.g open all valves completely and see how fast it runs). Any pulses coming in faster can be ignored as they are fakes.
This will probably not eliminate all miscounts, but I suspect it will reduce it a lot.@Yveaux Hi, Thx for the feedback however IMHO I believe this won't solve it. At some point I had a miscount of 47 litre's. This is something that can actually happen in normal life. I do agree with you for the big deviations where 950 litre is counted in a span of 15 minutes.
-
@Yveaux Hi, Thx for the feedback however IMHO I believe this won't solve it. At some point I had a miscount of 47 litre's. This is something that can actually happen in normal life. I do agree with you for the big deviations where 950 litre is counted in a span of 15 minutes.
@bisschopsr I suspect your issue is a combination of 'bouncing' sensor levels when switching and possibly flaky readouts when the wheel just happens to stop right below the sensor.
Bouncing sensor levels can be fixed by monitoring the rate of change in a certain interval. E.g. when at maximum water usage you get one count every second, then any pulses coming in at a higher rate then once a second can be regarded fakes.
You currently don't know if these 950 litres are counted in one second, or one hour, correct?Anyway, if you have access to an oscilloscope you could connect it to the water meter sensor and see what signal actually comes out of it.
Then you'll know what's causing the problem and you can start thinking of a solution. -
@bisschopsr I suspect your issue is a combination of 'bouncing' sensor levels when switching and possibly flaky readouts when the wheel just happens to stop right below the sensor.
Bouncing sensor levels can be fixed by monitoring the rate of change in a certain interval. E.g. when at maximum water usage you get one count every second, then any pulses coming in at a higher rate then once a second can be regarded fakes.
You currently don't know if these 950 litres are counted in one second, or one hour, correct?Anyway, if you have access to an oscilloscope you could connect it to the water meter sensor and see what signal actually comes out of it.
Then you'll know what's causing the problem and you can start thinking of a solution.@Yveaux said:
@bisschopsr I suspect your issue is a combination of 'bouncing' sensor levels when switching and possibly flaky readouts when the wheel just happens to stop right below the sensor.
Bouncing sensor levels can be fixed by monitoring the rate of change in a certain interval. E.g. when at maximum water usage you get one count every second, then any pulses coming in at a higher rate then once a second can be regarded fakes.
You currently don't know if these 950 litres are counted in one second, or one hour, correct?Anyway, if you have access to an oscilloscope you could connect it to the water meter sensor and see what signal actually comes out of it.
Then you'll know what's causing the problem and you can start thinking of a solution.Hi @Yveaux , I fully agree with your conclusion however this occurs only once every few days (I wish it was more often to enable analytics). I can do some analytics as the result is sent to my controller (Domoticz) every 5 minutes. That how I know it’s happening in a short timespan within the hour (in five minute frames). I believe it to happen when the silver dish or the red needle stops with the edge near the sensor. The sensor then starts floating slightly around the Schmitt triggers (LM 393) switch point. As the Schmitt trigger circuit has no hysteresis, this results inevitably in pulses to the Arduino. I’m considering two solutions. 1) built a hardware hysteresis around the LM393. 2) built in software hysteresis by using one of the analog pins of the Arduino. I prefer to do the latter since its more tuneable.
-
Hi, I don't know if this is easy to do but if if the red needle and the mirror are in different positions you could use a sort of flip-flop having two sensors one that set the FF and the other that reset it.
@salvato said:
Hi, I don't know if this is easy to do but if if the red needle and the mirror are in different positions you could use a sort of flip-flop having two sensors one that set the FF and the other that reset it.
I was looking into this. However I figured this might require another interupt capable pin which is not available anymore (if you want to do it from software). On the other hand a hardware solution might be feasable. The LM393 for one has two comperators.
-
I just follow for now, because I have the same water meter.
-
Hello,
I was reading this forum and this can be also a solution.I have the same problems with reading the water meter.
Use a special sensor for the Aquadis+, it costs about 70 Euro. (search for Cyble sensor)
Datasheet sensor: https://www.itron.com/PublishedContent/Cyble_Sensor_pb_EN_12-11.pdf
I have not tried this sensor yet.
Rob -
Hello,
I was reading this forum and this can be also a solution.I have the same problems with reading the water meter.
Use a special sensor for the Aquadis+, it costs about 70 Euro. (search for Cyble sensor)
Datasheet sensor: https://www.itron.com/PublishedContent/Cyble_Sensor_pb_EN_12-11.pdf
I have not tried this sensor yet.
Rob@rob.21 Thanks for the addition. This is indeed the original Itron device for enabling pulse counting on the standard Aquadis+. Although probably the best solution (no hassle, just fits, avoids miscounting) it's rather expensive. Also it's a hard to buy one and even more important, it runs on a non-replaceable battery. The ones I found on the market have a battery of 5 years old (I believe the battery should last for 10). And don't forget about the fun of building it yourself!
-
Hi All,
Herewith an update of my effort to get this working correctly. I decided to try and work with the analogue value coming from the TCRT5000. I adapted the original MySensors watermeter sketch to enable the use of the analogue input. I put in a software hysteresis mechanism and ‘tools’ to check the values coming from the TCRT. This appeared to be very successful the setup has been running now 24/7 since January 1st. The result so fa is zero miscounts! The counter value is the same as the reading on the meter itself. I will post more details later and I will upload everything to Github, so the code, the pictures of the setup and the PCB I’m developing for this. -
Hi all,
The design and the sketch are on github. Link
https://github.com/rbisschops/mySensors/tree/master/WatermeterThis is an early stage design. Any feedback is welcome!
Ralph
-
Hi All,
The water meter sensor has been running as of Jan 1st without a litre deviation compared to the actual water meter reading. That is 2 month! This week I received the most of the parts for the board. Made some final changed to the layout (see Github and Openhardware.io for the files). This week I will do a final quality check on the board. After that the order for the board goes out.
-
Just the let you know, the board is submitted for production (V0.10). Now I have to wait patiently. Meanwhile I probably will work on the sketch, get the parts not used anymore out. Also I need to further write the manual.