Pages: [1]   Go Down
Author Topic: Arduino UNO and SCP1000  (Read 2549 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 1
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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

Georgina Ontario
Offline Offline
Sr. Member
****
Karma: 5
Posts: 437
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

How do you correct for altitude?

Get yourself a BMP085
http://www.sparkfun.com/products/9603

Get the library here..
http://code.google.com/p/bmp085driver/downloads/list

It should work a lot better.
Logged

Just another Hacker

Global Moderator
Netherlands
Offline Offline
Shannon Member
*****
Karma: 220
Posts: 13846
In theory there is no difference between theory and practice, however in practice there are many...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Please share the code used, maybe its in the SW.

Logged

Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

0
Offline Offline
Shannon Member
****
Karma: 214
Posts: 12424
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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

[ I won't respond to messages, use the forum please ]

0
Offline Offline
Shannon Member
****
Karma: 214
Posts: 12424
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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

[ I won't respond to messages, use the forum please ]

Georgina Ontario
Offline Offline
Sr. Member
****
Karma: 5
Posts: 437
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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 Offline
Shannon Member
****
Karma: 214
Posts: 12424
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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

[ I won't respond to messages, use the forum please ]

Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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 Offline
Shannon Member
****
Karma: 214
Posts: 12424
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sure its not a failure to declare types big enough?  I've not seen << misbehaving.
Logged

[ I won't respond to messages, use the forum please ]

Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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

Pages: [1]   Go Up
Jump to: