Offline
Newbie
Karma: 0
Posts: 1
|
 |
« on: March 22, 2011, 07:12:14 pm » |
Hello,
I am an Atmospheric Science student at the University of Nevada in Reno, Nevada. Our professor purchased the Arduino boards and a set of SCP1000 chips equipped with the barometric pressure/temperature sensor.
We successfully wired the chip to the Arduino board and are attempting to run the "BarometricPressureSensor" example sketch for use in a project. After successfully uploading the sketch to the Arduino board, we are having trouble interpreting the results:
100000 10000000 Pressure [Pa]=3687 100001 10000100 Temp[C]=26.6511111 1111100 100000 10000000 Pressure [Pa]=3690 100001 10000100 Temp[C]=26.5511111 1111100 100000 10000000 Pressure [Pa]=3677 100001 10000100 Temp[C]=26.6011111 1111100 100000 10000000 Pressure [Pa]=3663
The pressure, in Pascals, in Reno, Nevada should be about 850 millibars, or approximately 85 000 Pascals.
At first, we thought the sensor onboard the SCP1000 might be faulty, so we tried another sensor on another Arduino board and are getting the same values.
If you could provide some insight into the SCP1000 and this issue, it would be greatly appreciated.
Thank you,
Nic Beres
|
|
|
|
|
Logged
|
|
|
|
|
|
|
Netherlands
Offline
Tesla Member
Karma: 90
Posts: 9407
In theory there is no difference between theory and practice, however in practice there are many...
|
 |
« Reply #2 on: March 23, 2011, 02:08:23 am » |
Please share the code used, maybe its in the SW.
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Tesla Member
Karma: 71
Posts: 6625
Arduino rocks
|
 |
« Reply #3 on: March 23, 2011, 12:35:38 pm » |
My SCP1000 works fine (incredibly sensitive, can 'measure' altitude to 20cm or something like that) - you need to show us the code to work out what's going wrong.
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Tesla Member
Karma: 71
Posts: 6625
Arduino rocks
|
 |
« Reply #4 on: March 23, 2011, 12:38:35 pm » |
Just a quick thought - you have read all 19 bits of pressure? address 0x1F reads the top 3 bits, 0x20 the bottom 16 bits.
|
|
|
|
|
Logged
|
|
|
|
|
Georgina Ontario
Offline
Sr. Member
Karma: 4
Posts: 437
Arduino rocks
|
 |
« Reply #5 on: March 23, 2011, 01:48:20 pm » |
Mark:
Is it "better" that the BMP085?
Could I use it to detect low frequency (Seconds per cycle as opposed to CPS) pressure waves?
If you are using a good library maybe you can point it out. I am always looking for ways to do things better...
|
|
|
|
|
Logged
|
Just another Hacker
|
|
|
|
0
Offline
Tesla Member
Karma: 71
Posts: 6625
Arduino rocks
|
 |
« Reply #6 on: March 24, 2011, 08:01:40 am » |
Looks like they have similar specs but the Bosch one is a lot quicker? Confused for a while with the Bosch datasheet using hPa as the unit of pressure - what? 0.01hPa = 1Pa (crazy Bosch engineers!) The SCP100 takes 0.75s for high-accuracy conversion I think, BMP085 is 25.5ms. For your bandwidth it might be better to have higher speed device or you'll be hitting the Shannon limit.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 2
|
 |
« Reply #7 on: April 04, 2011, 01:25:06 pm » |
There is a problem with the sample sketch in that the binary shifts do not work in some places. Replace wherever it says "<< n" where n is an integer with *(2^n) where you have precalculated 2 to the n.
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Tesla Member
Karma: 71
Posts: 6625
Arduino rocks
|
 |
« Reply #8 on: April 05, 2011, 03:39:14 am » |
Sure its not a failure to declare types big enough? I've not seen << misbehaving.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 2
|
 |
« Reply #9 on: April 06, 2011, 10:19:34 am » |
Yes, it's something like that. I can't remember the modifications I made, but the << 16 for the pressure definitely didn't work. I think I ended up using a 'long' for pressure. Try that. I'm also in the middle of writing a library for the SCP1000, so if you want I can make it available to you when finished.
|
|
|
|
|
Logged
|
|
|
|
|
|