Jump to content

SDI-12: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
ce for tone and organization; redundant to use same link as reference ; origins
Break up into sections and fill in sections with content from the specification document; used 'RS-232' page as rough template; removes deadlinks & uncited info
Line 2: Line 2:
{{refimprove|date=March 2013}}
{{refimprove|date=March 2013}}


'''SDI-12''' is the acronym for '''"Serial Data Interface at 1200 Baud"'''. SDI-12 is an asynchronous, [[ASCII]], [[serial communications]] [[communications protocol|protocol]] that was developed for intelligent sensor instruments that typically monitor [[environmental data]]. These instruments are typically low-power (12 volts), are often used in remote locations, and usually communicate with a [[data logger]] or other [[data acquisition]] device. In this [[master-slave]] configuration, the data logger typically acts as the master to the sensor instruments, which are the slaves. One master can communicate with multiple slaves, so the SDI-12 protocol requires that each device in the serial network be identified with a unique address, which is represented by a single [[ASCII]] character.
'''SDI-12''' (short for '''serial/digital interface at 1200 baud'''<ref name="spec-doc">[http://www.sdi-12.org/current%20specification/SDI-12_version1_3%20January%2026,%202013.pdf SDI-12 specification v1.3]</ref>) is an asynchronous [[serial communications]] [[communications protocol|protocol]] developed for intelligent sensory instruments that typically monitor [[environmental data]]. These instruments are typically low-power (12 volts), are often used in remote locations, and usually communicate with a [[data logger]] or other [[data acquisition]] device. The protocol follows a [[master-slave]] configuration whereby a [[data acquisition]] device acts as the master (SDI-12 Recorder and Interrogator) and the data monitoring instruments act as slaves (SDI-12 sensors), each identified with a unique address.


==History==
The first edition of the standard was issued in 1988. The most recent revision is version 1.3 from 2012.


The first edition of the standard was issued in 1988. The most recent revision (v1.3) was published January 26, 2013.
==Application==
Communication is achieved by digital signals along a single serial line. The digital addressing system allows an SDI-Recorder to send out an address over a single line that is occupied by up to 62 sensors. Only the pre-configured sensor matching that address will respond (handshake). Other sensors on the same line will not respond until called and typically stay in "sleep mode" (low power mode), until called.


==Scope of Standard==
A single data logger serial port and cable can connect to many sensors. In contrast, the number of analog sesnors that can be connected to a data logger is limited by the available nmber of analog input channels. This allows more sensors to be used on a limited number of channels, transmit over longer distances and save power. However, an SDI-12 sensor must include extra processing components to support the communication protocol. Since many sensors already incorporate a microprocessor to linearize and process raw sensor signals into engineering units, the extra expense may be minor.


The [[SDI Support Group]] defines in version 1.3 of the standard:<ref name="spec-doc" />
Electrically, the standard uses a three wire digital connection - data, ground and 12&nbsp;V. The data signal, using 5&nbsp;V logic levels, bears no resemblance to RS-485 or RS-232 although the timing is similar. The inline data is human readable as the data is transmitted in plain ASCII.


* Electrical interface characteristics such as number of conductors, voltage logic levels and transitions, and line impedance.
As specified by the SDI-12 Support Group,<ref>[http://www.sdi-12.org/ SDI-12 Support Group]</ref> all SDI-12 communications are transmitted in [[ASCII]] at 1200 [[baud]] with 7 data bits and an even parity bit. A [[Serial communications|serial]] [[universal asynchronous receiver/transmitter#Break condition|''break'' signal]] is sent by the master prior to any SDI-12 message to alert the connected slaves of the impending communication. Only the slave whose address matches the address in the sent message should respond. [[Checksums]] were introduced to the SDI-12 protocol with the V1.3 release.

* Communications protocol such as means of establishing contact with a specific address (sensor), the measurement command set, sensor response behavior, byte frame format and allowed characters.

* Timing requirements such as length of the break condition used to awaken sensors, minimum time between messages and length of time before a sensor enters a low-power state.

The standard only provides guidelines on transient protection and does not address connectors at all.

==Advantages of the standard==

The specification document describes a number of advantages including:

* Interchangeability of sensors without reprogramming of data acquisition devices

* Power is supplied to sensors through the interface

* Ability to implement self-calibration algorithms within the sensor itself and use low-cost [[EEPROM|EEPROMs] for information storage

* Applicability of training in SDI-12 to a variety of sensors and data recorders

The standard is in the public domain.<ref>[http://sdi-12.org/specification.php Current Version of the SDI-12 Specification]</ref>

==Standard Details==

Communication occurs over a single data line in [[half-duplex]]. The digital addressing system allows an SDI-Recorder to communicate with up to 62 individual sensors. Only the pre-configured sensor matching that address will respond (handshake). Other sensors on the same line will not respond until called and typically stay in "sleep mode" (low power mode), until called.

Electrically the protocol is a three wire digital connection - data, ground and 12&nbsp;V. The data signal, using 5&nbsp;V logic levels, bears no resemblance to RS-485 or RS-232 although the timing is similar. The inline data is human readable as the data is transmitted in plain ASCII.

All SDI-12 communications are transmitted in [[ASCII]] at 1200 [[baud]] with 7 data bits and an even parity bit. A [[Serial communications|serial]] [[universal asynchronous receiver/transmitter#Break condition|''break'' signal]] is sent by the master prior to any SDI-12 message to alert the connected slaves of the impending communication. Only the slave whose address matches the address in the sent message should respond. [[Checksums]] were introduced to the SDI-12 protocol with the V1.3 release.


== See also==
== See also==
* [[Data logger]]
* [[Data logger]]
* [[RS-232]]
* [[RS-485]]
* [[RS-485]]
* [[Serial communications]]
* [[Serial communications]]
Line 24: Line 52:
{{reflist}}
{{reflist}}


== External links ==
*[http://www.sdi-12.org/ SDI-12 Support Group]


{{Computer-bus}}
{{Computer-bus}}

== External links for documentation==
* http://embedded-system-programming.googlegroups.com/web/sdi_documentation.pdf?gsc=AoB4IAsAAAA9i-tO7e2_GLNlOJ2brKeg


{{DEFAULTSORT:Sdi-12}}
{{DEFAULTSORT:Sdi-12}}

Revision as of 19:29, 5 May 2014

SDI-12 (short for serial/digital interface at 1200 baud[1]) is an asynchronous serial communications protocol developed for intelligent sensory instruments that typically monitor environmental data. These instruments are typically low-power (12 volts), are often used in remote locations, and usually communicate with a data logger or other data acquisition device. The protocol follows a master-slave configuration whereby a data acquisition device acts as the master (SDI-12 Recorder and Interrogator) and the data monitoring instruments act as slaves (SDI-12 sensors), each identified with a unique address.

History

The first edition of the standard was issued in 1988. The most recent revision (v1.3) was published January 26, 2013.

Scope of Standard

The SDI Support Group defines in version 1.3 of the standard:[1]

  • Electrical interface characteristics such as number of conductors, voltage logic levels and transitions, and line impedance.
  • Communications protocol such as means of establishing contact with a specific address (sensor), the measurement command set, sensor response behavior, byte frame format and allowed characters.
  • Timing requirements such as length of the break condition used to awaken sensors, minimum time between messages and length of time before a sensor enters a low-power state.

The standard only provides guidelines on transient protection and does not address connectors at all.

Advantages of the standard

The specification document describes a number of advantages including:

  • Interchangeability of sensors without reprogramming of data acquisition devices
  • Power is supplied to sensors through the interface
  • Ability to implement self-calibration algorithms within the sensor itself and use low-cost [[EEPROM|EEPROMs] for information storage
  • Applicability of training in SDI-12 to a variety of sensors and data recorders

The standard is in the public domain.[2]

Standard Details

Communication occurs over a single data line in half-duplex. The digital addressing system allows an SDI-Recorder to communicate with up to 62 individual sensors. Only the pre-configured sensor matching that address will respond (handshake). Other sensors on the same line will not respond until called and typically stay in "sleep mode" (low power mode), until called.

Electrically the protocol is a three wire digital connection - data, ground and 12 V. The data signal, using 5 V logic levels, bears no resemblance to RS-485 or RS-232 although the timing is similar. The inline data is human readable as the data is transmitted in plain ASCII.

All SDI-12 communications are transmitted in ASCII at 1200 baud with 7 data bits and an even parity bit. A serial break signal is sent by the master prior to any SDI-12 message to alert the connected slaves of the impending communication. Only the slave whose address matches the address in the sent message should respond. Checksums were introduced to the SDI-12 protocol with the V1.3 release.

See also

References