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

Hi! So this is my first post.

I know close to nothing about hardware. I hve done computer programming so i know how to manipulate data in C, C++ and Python. So my use for arduino is fairly simple. I want to input data (in meters or feet) from a PerfectFlite altimeter and use that data to turn a servo.

I have found a lot of information on the servo but i have found nothing on how to interface an altimeter. So since i know nothing i though i would ask here.

What requirenments/type of output would an altimeter need to interface?
I have heard somewhere about PerfectFlite altimeters having telemetry output, what does this mean?
Does anybody know any PerfectFlite altiimeters that can interface with arduino?
How does the coding work to import data from the altimeter?

Thank you!

P.s. I have noticed in some other posts that some people question the concept of using an altimeter in a rocket (did i mention this is for a Rocket) because of dynmic pressure and all that. Plese dont question this here. My team an i know what we are doing we just need to get the data into the board so we can use it.
Logged

Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 652
Posts: 50869
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I want to input data (in meters or feet) from a PerfectFlite altimeter
A link to the device in question would be useful. What method(s) of communication can you use to talk to it? Serial? SPI? I2C?
Logged

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

Quote
I want to input data (in meters or feet) from a PerfectFlite altimeter
A link to the device in question would be useful. What method(s) of communication can you use to talk to it? Serial? SPI? I2C?

From my research it seems like Serial would be a better option, but doesnt this depend on the altimeter?
Logged

Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 652
Posts: 50869
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
but doesnt this depend on the altimeter?
Yes. You still haven't told us exactly which altimeter you are trying to interface with, by posting a link.
Logged

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

I am trying to interface it with the Strato Logger Altimeter: http://www.perfectflite.com/sl100.html Thanks
Logged

0
Offline Offline
Full Member
***
Karma: 5
Posts: 241
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It does not look like your choice of altimeter allows for direct reading of the altitude as it just logs the data for analysis after the flight.  You could probably hack something if you had the schematics and/or the datasheet on the baro sensor used.

You might be better off starting off with MPXH6101A which measures pressure from 5 to 105 kPa, is 5 kPa low enough?  Although it is surface mounted module I have hon soldered quite a few of these very easily.  Build the basic circuit as shown in the datasheet and either take the output from that circuit directly into the ADC on the arduino.  If the 10-bit ADC does give you enough resolution run it into a separate 12-bit ADC and have arduino read that.

wade
Logged

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

But do you know what are the specifications to be able to interface? It is not absolutely necessary to use the Strato Logger. The pnut altimiter says that it has Telemetry output for real-time data in flight with your RF link. What does this mean?
Logged

0
Offline Offline
Full Member
***
Karma: 5
Posts: 241
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I misspoke when I said it was only a logger, it also provides altitude data on a serial port here is the description of the serial port settings direct from the manual

"Serial port settings should be configured for 9,600BPS, 8 data bits, no parity, and 1 stop bit. Output data format from the altimeter is ASCII text based, with a <CR> and <LF> character appended to the end of each line."

So you could take the TX port on the logger and wire it to the RX pin on your Arduino and make sure the serial parameters on the Arduino match those stated above and you should be able to read the altitude directly and set thresholds in your sketch to trigger events based upon altitude.

wade
Logged

0
Offline Offline
Faraday Member
**
Karma: 8
Posts: 2526
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Beware, the Stratologger is a 3.3V system and most arduinos are 5V.  A direct connection will result in damage to the Stratologger.

Use a 3.3V to 5V level translator between the Stratologger and a 5V arduino, or use a 3.3V arduino.

IIRC you have to configure the Stratologger for telemetry mode.

Once you get everything safely connected and configured electrically, the software side should be a simple reading of the text data coming across the serial port, with the usual problem of converting the characters "1234" into an integer.

-j
Logged

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

Thank you everyone for you help. I have one more question, as I said, I have no experience with inputing data from hardware. So, in the user manual of the PerfectFlite Stratto Logger, under the 'Telemetry output' section:

The StratoLogger has an on-board data connector that is used
for two basic functions:  Post-flight retrieval of saved data from
the altimeter, and real time data output during flight using the
telemetry feature

Serial port settings should be configured for 9,600BPS, 8 data
bits, no parity, and 1 stop bit.  Output data format from the
altimeter is ASCII text based, with a <CR> and <LF> character
appended to the end of each line.

When telemetry data is selected to start “OnLaunch”, all data
will be AGL (above ground level) altitudes:
198<CR><LF>   {all data points are AGL altitude}
248<CR><LF>
300<CR><LF>
349<CR><LF>
398<CR><LF>
447<CR><LF>
497<CR><LF>

So I was hoping that some of you could kinda guide me on the part of getting the data into the altimeter. Specially on the part of 9600BPS and 8 data bits, no party and 1 stop bit.

I also don't quite understand that 'the format of the altimeter is ASCII text based'. According to http://www.arduino.cc/en/Reference/ASCIIchart , ASCII is used to encode text into numerical values, but an altimeter does not measure in letters, it measures in numbers (feet or meters)...

If you are reading this and can help in anything of the above it will be greatly appreciated. Thank you.
Logged

Pages: [1]   Go Up
Jump to: