Volume Meassurement (Dry Method)

First of all, thanks for your interesting comments.

I do see some similarities when comparing this with the testing of diaphragm gas meters by using a bell prover

I’m trying to measure the volume of the object not the gas. I have no idea about these tests you are mentioning or the diaphragm gas meters; but I will search as it seems to be very interesting. If you have a link to a website, please post it.

In both cases here, measuring temperature and pressure with high precision and accuracy is important.

That's very true. My intention so far was just to test if this could work, high accuracy is not the goal yet. These are just preliminary tests and results. I'm using some good enough sensors (I guess) for this trial; but perhaps in a future stage of this, I will need to use better ones. I didn't want to go for expensive ones without making sure it could be done, find out practical problems and details by testing, writing the code and making a prototype.
I'm using:
-For Pressure Honeywell SSCDRNN250MGAA5 datasheet (Safety and Productivity Solutions | Honeywell)
-For temp LM35DZ (http://www.ti.com/lit/ds/symlink/lm35.pdf)
I chose this sensors mainly because of the simplicity of use and also because they are linear and should not introduce much problems other than constant errors which could be canceled by adding or subtracting a correction factor (if present). I placed means in the code for that. There could be small calibration issues and errors added as I don’t have precise standards to check; but they will be systematic and possible to cancel. I’m more interested in "behavior" of the physical variables at this point than their exact values. Later on it all needs precise adjustment and you are right about that.

However, I think there is a problem with precision ... it could be mathematical, poor matching of sensor range to ADC range, or perhaps higher ADC resolution is required.

That I don’t see very well; but I’ll check your suggestions carefully.
-I’m rounding the results just for display on the screen; but calculations are done without rounding with full floats before displaying the results. I’ll check anyway, there maybe some cases where its not. I though approximating 3 decimal digits was enough for display for now.
The AD conversion I’m using which includes averaging among other things, is resolving more than the 1024 normal steps the Arduino ADC can resolve (using it). I’ve been working on achieving this for a while now (you can check some of my previous Projects). That creates the 0.05hPa steps in the 0-250mbar range which will otherwise won’t be possible to achieve and constitute a very good observation from you which I haven’t noticed. Anyhow, the jumps and their differences in both cases (Start Pr and Pr@TC) are more because of other factors, I think. The fact that Arduino takes time to read the values and the code takes time to find the thresholds as there are other things that need to be done also (communication, etc). As example, deflation starts by time 20 000 milliseconds after the inflation is stopped at 150hPa (that’s what I set it for). Inflation is stopped by finding when the Pr surpasses that threshold and there is a small error involved there. Since time elapsed is the trigger, perhaps the resolution in the differentiation of time originated by the loop duration is creating the impression of the 0.25hPa. The loop duration is not fixed though, it depends on what needs to be done and that could be another factor. The 0.25hPa jumps you have observed, could be just this particular test. I have to observe if that repeats in others. On the other hand, Arduino finds the TC by looking for the Pr to drop to 36.7% of the initial value, then sends the value to the computer (the TC which is what I’m after and the Start Pr recorded). This is a true threshold comparison, different than the time elapsed triggering and the recording of the Start Pr and perhaps the reason for the diffrences in the resolutions you have observed in both cases (This could be more precise; but I don’t know???).

This is something I might need to try to improve as it adds uncertainty to the results; but honestly, I don’t think this is a major influential factor. The leaks and temp issues are, I guess. It will be good to be able to quantify how much uncertainty they add though, as you pointed out.

Also, much of the info such as Start Pr, Pr at TC is there as I placed all that from the very beginning of the Project trying to solve the exponential equation as you thought. They are still there in case any calculations are needed; but in reality I’m not using them in the calculations or solving the exponential equation to find the volume. To do that, I needed to precisely know the flow restrictor value I used, which is a constant in the equation. The restrictor is just an obstruction I placed inside the bleeding hose, which value I don’t know. I tried to calculate that and was difficult, so I opted for another more simple method. Since the container volume is a constant, the flow restrictor is a constant (assuming no leaks) and from the equivalences for a given volume there should be a Time “Constant” regardless of the initial Pr (as the TC concept suggests) the only factor affecting the TC (TC=R*C) is (C) the Volume of the container (affected by the volume of the object). In other words, the volume the air occupies. So I set up tests using fairly equal batteries as standards for which I measured the volume and presumed each of them equal. Ran the test with 0, 1, 2, 3, 4 and 5 batteries inside the container (each test 10 times) and then plotted expected Object Volume (determined by the batteries) vs. average TC measured in Excel, with the data being logged automatically. From there, I got an equation which relates Object Volume vs. TC which is fairly linear as expected.
Since the TC is the only factor I really need to have precisely measured, I concentrated on that and did not place much emphasis on the rest of the values (not needed). That’s probably why, you may have observed some precision problems; but they may not be affecting the results. Calculating the volume this way, gives much better results and accuracy than solving the exponential equation. This way any other factors influencing are contained in the equation by means of the TC. If the TC measurement is affected by anything constant (I'm aware of or not), the effect is present in the equation and effectively canceled. If trying to solve the exponential equation no other factor will be cancelled, unless I know about it and added it somehow to the calculations, if I can do that (probably not). Of course, all this procedure must be repeated precisely using a container and pneumatic system with zero leaks, real volume standards and at precise temperature. The repeatability should be improved considerably when all that and temp compensation are added. That’s why I think this is apparently working fine. I’m consistently obtaining excellent repeatability, like the one shown, given the container is not opened and temp. does not changes substantially (stays within about 1 Celsius). As you can see, I still have to work more on this to get there. Now is when $$$ is required.
Thanks.