Pmod DPG1 Reference Manual

The Digilent Pmod DPG1 (Revision A) is a differential pressure gauge. With NXP's MP3V5010DP piezoresistive transducer and Texas Instrument's ADCS7476 12-bit Analog-to-Digital Converter, you can detect when a change in pressure between the two ports occurs and send digital information to your system board.

Download This Reference Manual

Features

  • Differential piezoresistive transducer
  • 12-bit ADC
  • 0 to 10 kPa differential pressure range
  • Temperature compensated and calibrated
  • 6-pin Pmod connector with SPI interface
  • Follows Digilent Pmod Interface Specification Type 2

Functional Description

The Pmod DPG1 is designed to detect a differential pressure ranging from 0 kPa to 10 kPa. It uses an embedded 12-bit ADC to provide the user with a serial stream of data representative of the measured pressure difference between the two ports on the sensor.


Specifications

Parameter Min Typical1 Max Units
Recommended Operating Voltage 3.125 3.3 3.5 V
Maximum Supply Voltage - - 5.5 V
Maximum Pressure2 - - 75 kPa
Minimum Pressure Offset3 0.1 0.24 0.38 V
Sensor Accuracy -0.54 0 0.54 kPa
Parameter Value Units
Communication Protocol SPI Mode 04
Power Supply Current draw5 10 mA
Sensor Response Time 1 mS
Sensor Bandwidth 500 Hz

Note1 - Data in the Typical Column uses VCC at 3.3V unless otherwise noted
Note2 - Where the pressure at P1 (top nozzle) is greater than the pressure at P2 (bottom nozzle)
Note3 - Output voltage corresponding to a pressure differential of 0 kPa
Note4 - CPOL = 0, CHPA = 0
Note5 - Normal operation with VCC at 3.3V


Interfacing with the Pmod

The Pmod DPG1 communicates with the host board via the SPI protocol with SPI Mode 0 (CPOL = 0, CPHA = 0). The 12 bits of digital data are sent to the system board in 16 clock cycles with the most significant bit first. For the embedded ADC7476, each bit is shifted out on each falling edge of the serial clock line after the chip select line is brought low with the first four bits as leading zeroes and the remaining bits representing the 12 bits of data. The datasheet for the ADC7476 recommends that for faster microcontrollers or DSPs that the serial clock line is first brought to a high state before being brought low after the fall of the chip select line to ensure that the first bit is valid.

As a differential pressure module, it should be noted that the Pmod can only accept a certain range of pressure differences without damaging the internal piezoresistive silicon. When the Pmod is laid on a flat surface such that transducer is above the PCB, the top most nozzle is P1 (the receiving nozzle to detect fluctuating pressure) and the bottom most nozzle is P2 (the pressure reference nozzle for P1). The pressure at P1 is recommended to be between 0 and 10 kPa above the pressure present at P2. Pressures outside of this range may cause permanent damage to the device.

To convert the serial data stream back into a corresponding pressure, users may use the following equation:

Pmod DPG1 solving for pressure

What can I safely measure with the Pmod DPG1

The recommended pressure differential range for the embedded MP3V5010 on the Pmod DPG1 is between 0 kPa and 10 kPa, so it is ideally suited for applications such as measuring small pressure changes inside a venturi meter, as a pressure plate to detect when something touches it, or to determine the air pressure exerted by the normal human lung (presuming you are not a trumpet player or in another field where you need above average lung pressure). Notably, the Pmod DPG1 is not able to measure the air pressure inside of a car or bike tire.

The reference article for the human lung pressure, for those of you that are interested, can be found from the National Center for Biotechnology Information website here.

Additionally, the Pmod DPG1 is only able to measure dry fluids, such as air, as opposed to being able to measure water pressure.

But what is the lowest pressure that the Pmod DPG1 can detect? With an embedded 12-bit ADC that is powered at 3 V, the LSB will have a corresponding voltage of 0.732 mV, but the MP3V5010 has a listed sensitivity of 270 mV per kPa, or equivalently, 0.270 mV per Pascal. This means an LSB change will not occur until an approximate change of 3 Pascals of pressure occurs. Based on Wikipedia's list of orders of magnitude of pressure, a U.S. dollar bill exerts approximately 1 Pascal. Additionally, the lung air pressure difference of a normal breath from a person is approximately 300 Pascals, so the module is very capable of measuring very small changes in pressure.

Pinout Table Diagram

Pin Signal Description
1 SS Chip Select
2 NC Not Connected
3 MISO Master-In-Slave-Out
4 SCK Serial Clock
5 GND Power Supply Ground
6 VCC Power Supply (3.3V)

The Pmod DPG1 is capable of converting up to 1 MSa per second of 12-bit data, but the transducer response time to a step change of 1 kPa is 1 ms. Smaller changes in pressure will take less time for the transducer to change its output voltage.

Any external power applied to the Pmod DPG1 must be within 2.7 V and 3.3 V to ensure that the on-board chips operate correctly; however, it is recommended that Pmod is operated at 3.3 V since an embedded regulator reduces the 3.3 V down to 3 V for the various embedded components


Physical Dimensions

The pins on the pin header are spaced 100 mil apart. The PCB is 1.0 inches long on the sides parallel to the pins on the pin header and 0.8 inches long on the sides perpendicular to the pin header. The transducer nozzles extend an additional 0.25 inches and the height of the transducer extends 0.375 inches above the PCB.


Additional Information

The schematics of the Pmod DPG1 are available here. Additional information about the ADC including communication modes and specific timings of the chip can be found by checking out its datasheet here. Similarly, the datasheet for the transducer can be found here.

Example code demonstrating how to get information from the Pmod DPG1 can be found here. ​

If you have any questions or comments about the Pmod DPG1, feel free to post them under the appropriate section (“Add-on Boards”) of the Digilent Forum.