Arduino pH sensor
Introduction
3 major commercially available or mass-produced solutions:
- Atlas Scientific and Gravity analog pH Kit with board, sensor and buffer solutions. Hiqh quality, not open source.
- DFRobot Gravity: Analog pH Sensor Kit
- Other (Chinese) manufacturers.
- Seeed Studio
If the pH electrode is labotorary grade, it is not designed for submerging into measuring solution permanently. Thus, use an industrial-grade pH electrode (lifecycle about 3 years), but calibrate it at least twice every year.
Theory
Briefly
An ideal pH sensor because H+ ions. Ranging linearly:
- U = 0 @ pH 7
- U > 0 @ pH < 7
- U < 0 @ pH > 7
A high quality op amp is needed to amplify the voltage.
The pH electrode
- a passive sensor
See more about impedance and Arduino ADC at https://www.e-tinkers.com/2020/07/a-review-on-seeed-studio-ph-and-ec-sensor-kits-part-1/
Nernst Equation
The Gibbs free energy is related to the free energy change under standard state by
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta G = \Delta G^0 + RT\ln Q }
where Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q} is the reaction potential, Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle R} is the universal ideal gas constant. Also
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta G = -zFE } where Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle F=N_A q} is the Faraday constant, Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle z} is the number of electrons transferred in cell reaction, and thus we have
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{align} E_\text{cell} &= E_\text{cell}^0 - \frac{RT}{zF}\ln Q \\ &= E_\text{cell}^0 - \frac{2.3RT}{nF}\ln Q \end{align} }
Calibration
1
1
Calibration
Code
References
https://www.e-tinkers.com/2019/11/measure-ph-with-a-low-cost-arduino-ph-sensor-board/