Pages: [1]   Go Down
Author Topic: WeatherShield Pressure, Temperature, Humidity  (Read 19445 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 38
EtherMania - For network enthusiasts
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

At EtherMania we developed a shield that allow reading Pressure, Temperature and Humidity.
The shield is equipped with three sensors and a PIC12F683 microcontroller programmed with a specific firmware that interfaces with Arduino through a two line bidirectional synchronous serial connection. The microcontroller is responsible for sampling and averaging the last 8 humidity, pressure and temperature values, providing it to the Arduino in an ASCII readable format expressed in Celsius, hPa and relative % units. Individual raw unprocessed samples are also available for reading.
We provide a library to easy interface the shield with Arduino, and a set of sketches explaining how to use it.
More details at this link: http://www.ethermania.com/shop/index.php?main_page=product_info&products_id=612&language=en

Enjoy!


* WShield_LRG.jpg (119.87 KB, 837x735 - viewed 132 times.)
Logged

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


Well documented!! looks as an interesting shield. Did you post it to shieldlist.org allready?

Idea:
A weathershield with connectors so I can place the sensors at some distance of the shield.

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
Newbie
*
Karma: 0
Posts: 38
EtherMania - For network enthusiasts
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks robtillaart for your feedback!

When we started to develop the shield we had in mind the possibility to separate the full shield (with sensors) from Arduino. I mean... the shield is connected to the Arduino board through 4 wires (a pair for +5V and GND, one wire for the clock and one wire for the bi-directional data communications). You can connect the shield with a standard CAT5 cable and put it at some distance from the Arduino...
The shield mounts a microcontroller that takes care of reading the sensors and communicates with Arduino in a digital way, so you don't have any problem related to noise on the sensors lines because they are very short. The shield has a voltage regulator on board... so even the voltage stability is the best.
The code in the communication library let you able to slow down the communication timing if you have problems with long cables.
You can also assign to each shield a specific address through a specific command... so you can have more than one shield sharing the same serial communication wires. The address is stored on a EEPROM memory in the shield so you don't have to assign it at each power up cycle.

Thanks!
Logged

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


How long can the cables be in practice ?
what is your experience with that?

The averaged formats, as there are 8 measurements, how many digits precission is there?
does it return an int or a float (sorry did not dive into the documents).

Is it possible to get a " lowpass " value of the measurements?

float getLowPasstempC()
{
  temperature = Talpha * temperature + (1-Talpha) * readSensorT();
  return temperature;
}

float getLowPassHumidity()
{
  Humidity= Halpha * Humidity+ (1-Halpha) * readSensorH();
  return Humidity;
}

and of course the possibility to set the alpha factors..

The advantage is that it is faster and it also takes in account previous readings.

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
Newbie
*
Karma: 0
Posts: 38
EtherMania - For network enthusiasts
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi,

Quote
How long can the cables be in practice ?
what is your experience with that?

A customer used a couple of meters of CAT5E cable and did not reported any problem. I think the overall length is something dependent to a lot of factors like noisy environment and so on. Just imagine that the communication does not use differential signals but TTL level signals... so I expect to have no more than "some meters".
Reducing the bus speed will help to reduce the communication errors could be inferred by cable length and/or noise.

Quote
The averaged formats, as there are 8 measurements, how many digits precission is there?
Internally are counted as float. But the result is exported with 1 precision digit. Having more than one digit seems not significant because sensors could not assure so high precision.

Quote
does it return an int or a float
We use three bytes to store the result in a packet transfer. It's a proprietary format used to optimize the communication between the shield and Arduino.
The provided library is able to decode to int (for raw datas), float (for averaged datas) and plain ASCII text.

Quote
Is it possible to get a " lowpass " value of the measurements?
Yes, This could be done at the Arduino side reading the full raw measures (provided as number between 0 to 1024) instead of the averaged ones. The shield buffer contains at maximum 8 samples for each channel (temperature, pressure, humidity) a user could read bypassing any averaging performed by the shield.
Reading the raw values allows users to calculate whatever he need. The sample buffer is a "circular" buffer. User could read any of the samples or could ask for "the latest one".

Just a quick note: the averaged values are "temperature compensated" by the shield following the sensor datasheet specifications. Temperature compensation is not applied to raw samples. For this reason you can have some differences between straight average calculation from raw values and the results provided by the shield if you don't compensate your values.

Thanks!
Logged

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


Sounds good, thanks!
Logged

Rob Tillaart

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

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

Hi guys,

I wondering if you know if this shield works with Intel's galileo board?

Many thanks

C
Logged

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

The proof is as always in the pudding test ...
Logged

Rob Tillaart

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

Pages: [1]   Go Up
Jump to: