1 Introduction

1.1 The importance of water retention behaviour

The water retention curve (WRC) represents a fundamental relationship for the description and modelling of the hydraulic and mechanical behaviour of unsaturated soils. Bearing in itself the relationship between degree of saturation \(S_{r}\) and capillary pressure \(p_\mathrm{c}\), or matric suction s, it allows to derive the unsaturated permeability for water and air flow and also the effective stress state [11].

The unsaturated permeability function is elementary to the modelling of fluid flow (water or air) through unsaturated porous media, and different approaches have been made to model permeability as a function of degree of saturation or suction [7, 34, 49]. For the modelling of effective stress in unsaturated soils, different theoretical approaches, e. g. by Bishop [5], Khalili and Khabbaz [19], Lu and Likos [25], and Lu et al. [26], have been established. According to [5], the effective stress \(\sigma '\) in unsaturated soils can be calculated from total stress \(\sigma\), pore air pressure \(u_{a}\) and pore water pressure \(u_{w}\) based on Eq. 1. Here, \(\chi\) is the so-called Bishop- or effective stress-parameter.

$$\begin{aligned} \sigma ' = \sigma - u_{a} + \chi (u_{a}-u_{w}) \end{aligned}$$
(1)

With the definition of matric suction \(s=u_{a}-u_{w}\) and if the pore air pressure is equal to atmospheric air pressure, usually set to zero \((u_{a} = 0)\), Eq. 1 can be simplified to Eq. 2.

$$\begin{aligned} \sigma ' = \sigma + \chi s \end{aligned}$$
(2)

If \(\chi = S_{r}\) is assumed, the effective stress can be expressed with the help of the water retention curve, given by the function \(S_{r} = f(s)\). This approach has been further developed by [25] and [26] in the framework of the suction stress concept, using the water retention curve for a closed-form equation for effective stress.

Due to the relevance of the WRC, its measurement is still a main focus of experimental unsaturated soil mechanics and different methods for the application and measurement of suction, such as the hanging water column method or axis translation technique, have been developed over the years [50]. As the measurement of the WRC is time-consuming and very laborious, different attempts are made for facilitating the experimental procedures, e. g. by continuous automatic monitoring of degree of saturation and suction [23, 37], or by innovative testing environments, allowing for measurements of water content over time with minimal sample disturbance [44].

There is a general consensus in the literature that the WRC is a very complicated relationship, as it shows a hysteretic behaviour (hydraulic path dependence), with different paths being measured in the s-\(S_{r}\)-plane during drainage or imbibition. The origin of the hysteresis effect is believed to lie in microscopic effects, such as different contact angles of pore water for drying and wetting, or the phenomenon of air entrapment [4, 24]. Furthermore, there is a dependence of the WRC on soil dry density \(\rho _\mathrm{d}\), void ratio e and grain size or pore size distribution. Therefore, different efforts have been made to predict the WRC from basic granulometric soil properties, e. g. by Aubertin et al. [3]. In many cases, the effect of hysteresis is ignored, and only monotonic hydraulic paths are considered and approximated by fitting models, such as the empirical models by Brooks and Corey [6], van Genuchten [49] and Fredlund and Xing [12]. However, there are also new models for the water retention curve, incorporating hysteresis, in order to predict the hydraulic behaviour on scanning paths, such as the models presented by Li [21], Pedroso and Williams [36] and Fuentes and Triantafyllidis [13].

Recent research is also focussing on non-equilibrium, i. e. transient, water retention behaviour, where the current degree of saturation and suction is not necessarily in equilibrium. Traditionally, the WRC has been considered a stationary or equilibrium relationship. The transient, or dynamic WRC, evolving from fast changes in suction or prescribed flow with high flow rates, has been investigated amongst others by Topp et al. [46], Hassanizadeh et al. [14], Zhuang [53], Milatz et al. [30] and Li et al. [22]. Independent findings show that different water retention curves are obtained for different rates of pore water volume change \(\frac{\partial V_{w}}{\partial t}\) or depending on the change rate of degree of saturation with time \(\frac{\partial S_{r}}{\partial t}\). This behaviour needs to be further investigated, because under natural conditions, fast, forced, non-equilibrium flow of pore water might occur quite frequently, e. g. during heavy rain events, which could have an impact on slope stability.

Another current experimental approach is the investigation of the microscopic hydraulic behaviour of unsaturated soils using imaging methods, such as computed tomography (CT). With the help of CT-imaging, the microscopic phase distribution in the soil, as a mixture of grains, air and water can be resolved in 3D and tracked over time by a series of CT scans. The microscopic data can then be analysed to link it to the macroscopic behaviour, i. e. to a measurable WRC. For this purpose, different authors have already applied X-ray tomography [15, 17, 18, 31] or tomography based on synchrotron radiation [8, 45, 52].

1.2 Scope of this paper

In this contribution, a new testing device for the automated measurement of arbitrary hydraulic paths of the WRC of granular media is presented. The testing device uses a miniature 3D-printed syringe pump and low-cost pressure sensors for suction measurement. The control of the syringe pump that is used to apply a flow of pore water out of or into the soil specimen for drainage or imbibition paths of the WRC, and the data logging of pore water pressure measured underneath a porous plate, are both managed by a Raspberry Pi single-board computer [42]. The whole testing procedure, consisting of different consecutive hydraulic test stages, in which the specimen degree of saturation is changed, while suction is measured as a response, is fully coded in a single Python programme [38], running on the Raspberry Pi. With the new device being placed in a CT-scanner, also microscopic states of the air and water distribution inside unsaturated granular media for different hydraulic paths, i. e. drainage, imbibition and scanning paths, are supposed to be investigated in the near future. However, this paper focuses on the hardware and software approaches in the development of the new test set-up, as well as on measured transient WRCs of two different granular media that will be presented and discussed.

2 Experimental method

2.1 Continuous measurement of transient water retention curves in coarse granular media

The proposed new experimental set-up is based on a few years of preliminary work which led to the development of a transient method to measure the WRC of different granular media with a low suction range (typically a few kilopascals), such as sandy soils [27, 30]. The method is based on prescribed pore water flow out of and into small cylindrical sand specimens in order to change their degree of saturation starting from an initially water-saturated state. In contrast to conventional methods, suction is not applied, but measured as a response to the changes of degree of saturation, making use of a tensiometer sensor. The method has already been applied to investigate different hydraulic paths, especially scanning paths, of different sands at cyclic drainage and imbibition [27] and to investigate non-equilibrium WRCs by applying different flow rates of pore water [30, 33]. With a suitable set-up, allowing to control axial stress and to measure the axial displacement of the specimen top, also capillary collapse during cyclic drainage and imbibition could be investigated [32]. The mentioned method, that was originally applied within a modified simple shear device, described in [29], has now been redesigned in a miniaturised and simplified version with the aim to place the whole set-up in a CT-scanner.

The new device is supposed to allow the easy and rather automated testing of arbitrary hydraulic paths of the WRC of granular media, using open-source software and cheap and easily available hardware solutions, which has, to the author’s knowledge, not been realised before. The development of the new device is guided by the idea to use the Raspberry Pi single-board computer in soil mechanical teaching and research, a thought that has been followed by the author for some years now. In the framework of a previous development project, a miniature compression device for uniaxial compression tests on unsaturated granular media and parallel investigations with computed tomography has been developed [28]. This first experimental set-up, called the UNSAT-Pi, has already been used for hydro-mechanical experiments on the shear strength of unsaturated granular soils with parallel CT-imaging [31]. The new testing device for water retention tests, named UNSAT-Pi 2, considers a lot of experience gathered in the previous project. The different hardware and software components, the new development is based on, will be presented in the following.

2.2 Hardware

The new testing device generally consists of a cylindrical specimen container with a porous plate in the bottom, additionally covered by a microporous membrane filter, connecting the specimen pore water to a drainage system and a second water port for the measurement of (negative) pore water pressure, or suction s, through the porous plate. The changes of \(S_{r}\) are applied with the help of a syringe pump. Matric suction is measured with a pressure sensor, connected to the drainage system. For the control of the whole test set-up and for data acquisition, a Raspberry Pi model 3 B+ single-board computer is used. A schematic wiring diagram of the full experimental set-up with all components is illustrated in Fig. 1. A photograph of different hardware components is shown in Fig. 2.

Fig. 1
figure 1

UNSAT-Pi 2: schematic wiring diagram of the experimental hardware components built around the Raspberry Pi single-board computer

Fig. 2
figure 2

Detail of experimental set-up: specimen holder and syringe pump (top), control unit (bottom), consisting of Raspberry Pi \((1)\), pore water pressure sensors \((2)\), analog-to-digital converter \((3)\), motor controller board \((4)\) and syringe pump stepper motor cable \((5)\)

2.2.1 Specimen holder

The specimen holder has been designed for CT-imaging of cylindrical specimens with a height-to-diameter ratio of \(h/d = 12~\mathrm {mm}/12~\mathrm {mm}\). The bottom of the specimen container holds a porous sinter glass plate (VitraPOR, porosity 2, pore size 40–100 \(\upmu\)m, manufactured by ROBU Glasfilter Geräte GmbH) with a diameter of 10 mm and a height of 2 mm\(\,\pm \,\)0.2 mm. The filter plate is covered by a thin microporous membrane filter (Versapor-800, pore size 0.8 \(\upmu\)m, manufactured by PALL Corp.), which is clamped under the acrylic cell that is tightly fit over the base piece, sealing it against leakage. The combination of the porous sinter glass plate and the microporous membrane filter ensures a well-distributed water flow over 69% of the specimen bottom area, while at the same time preventing air from entering the drainage system below. Similar microporous membrane filters have already been used for the measurement of the water retention curve by Nishimura et al. [35] in order to reduce the equilibrium time in outflow experiments.

2.2.2 Syringe pump for pore water volume change

For the change of degree of saturation by pumping of pore water, an open-source 3D-printed syringe pump that has been presented by Wijnen et al. [51] was built according to published 3D-printing plans. The layout of the syringe pump has been slightly modified to bear a thin 1-ml syringe (Omnifix-F Luer Solo, 0.01–1 ml, manufactured by B. Braun Melsungen AG). The syringe pump is driven by a NEMA 17 stepper motor (type 17HS13-0404S, 12 V, 0.4 A, torque 26 Ncm), which is controlled by the Raspberry Pi’s General Purpose Input Output-pins (GPIO-pins) using a DRV8825 stepper motor controller board [10]. These GPIO-pins allow to input or output logical signals, which can be either high or low, or 1 or 0, coding information and tasks for peripheral devices. The stepper motor and motor controller are typically used in 3D printers, where a high positioning accuracy is needed. The GPIO-pins can be addressed in the main Python code to cause the stepper motor driver to start motor movement. The applied stepper motor has a resolution of 200 steps for a full \(360^{\circ }\)-revolution. As the motor controller board allows for microstepping, a further refinement of 32 microsteps per step can be obtained. For the thrust of the syringe plunger, the motor turns a M5-threaded spindle which has a pitch of \(0.8\, {\mathrm{mm}}/360^{\circ }\) revolution. Considering the resolution of rotation of the stepper motor with the microstepping option, a syringe plunger thrust of \(0.8/200/32 = 0.000125~\frac{\mathrm {mm}}{\mathrm {step}}\) is obtained. With a given thrust, the moved pore water volume per step only depends on the area of the syringe plunger, which has been determined by calibration experiments to be \(17.396\, {\mathrm{mm}}^2\), resulting in a resolution of pore water volume change of \(0.000125 \cdot 17.396 = 2.1745\times 10^{-3}~\frac{\mathrm {mm}^3}{\mathrm {step}}\). This resolution corresponds to changes of degree of saturation of \(4.067\times 10^{-6}~\frac{1}{\mathrm {step}}\) for the sand specimens and \(4.207\times 10^{-6}~\frac{1}{\mathrm {step}}\) for the glass bead specimens investigated here, considering their pore volumes \(V_\mathrm{p}\).

The set-up for the calibration of the syringe pump is shown in Fig. 3 (top). In several calibration experiments, a stepwise water volume change was applied with the syringe pump, pushing water into a glass container placed on a laboratory balance (BP 310 S, manufactured by Sartorius Lab Instruments GmbH & Co. KG) with a resolution of 0.001 g, corresponding to a resolution of recorded water volume change of 1 mm\(^3\). Afterwards, the same amount of water was drawn back from the balance in several steps. With this calibration procedure, the pumping behaviour in both flow directions can be investigated, in order to calculate the calibration constant as an average of all applied flow paths as shown in Fig. 3 (bottom). The calibration tests have been repeated three times for two different flow rates. The results show no noticeable influence of different flow rates, because the flow is forced by the stepper motor that is very accurate, as long as its pushing capacity is not exceeded, which is guaranteed here. However, due to the mechanical layout of the syringe pump, using a threaded spindle, a certain hysteresis effect upon changes of flow direction cannot be avoided due to a backlash in the thread. The practical hysteresis error cannot be easily quantified, because also the balance readings might include a hysteresis error, when water is drawn back from the weighing plate in the calibration experiments. However, it is tried to assess the hysteresis error from the available calibration data for changes in flow direction. Considering the pore volume \(V_\mathrm{p}\) of the sand and glass bead specimens investigated in this contribution, a change in flow direction from imbibition to drainage would lead to a theoretical maximum error in degree of saturation of \(\Delta S_{r} = 0.00954\) in the case of a sand specimen and \(\Delta S_{r} = 0.00987\) in the case of a glass bead specimen, which is below 1% of degree of saturation.

Fig. 3
figure 3

Calibration of syringe pump with a laboratory balance: calibration set-up (top) and calibration data of pore water volume change (bottom)

2.2.3 Pressure sensors for suction measurement

Matric suction is measured with a set of two low-cost pressure transducers (Honeywell Miniature Low Pressure Sensor, type 26PCBFA6G, differential measurement [16]) with a pressure range of \(\pm \,5\) psi (\(\pm \,34.75\) kPa), connected to the drainage system. The sensors are supplied with an excitation voltage of 12 V DC via a laboratory power source. The analog sensor output signal is transformed to a digital signal by a 16-bit analog-to-digital converter (ADS1115, manufactured by Adafruit Learning Systems) with programmable gain amplifier for signal amplification and sent to the Raspberry Pi single-board computer via its built-in \(\mathrm {I}^{2}\mathrm {C}\)-data bus, as shown in Figs. 1 and 2. In order to minimise measurement noise, the data of the two pressure sensors are read as a differential signal by the analog-to-digital converter, which allows obtaining very smooth pressure readings. For this purpose, one sensor is connected to the water drainage system, while the other sensor only measures the ambient zero air pressure. Although the pressure sensor has a temperature-compensated, stabilised linear signal, a unique calibration has been done for the applied system. A hanging water column apparatus by Törzs et al. [47], based on ASTM D6836-16 [1], has been used to apply small suction increments, in order to calibrate the sensor set-up. Figure 4 compares the applied suction steps, measured by an independent very accurate reference air pressure sensor (Low Pressure Transducer, type PGM-02KG by Kyowa Electronic Instruments Co., Ltd. [20]), to the data, measured with the new test set-up. The pore water pressure sensor has been filled with de-ionised water in an elastic tube to which the air-underpressure system of the hanging water column apparatus has been connected. With the applied calibration, the pressure sensor set-up is found to be very accurate for the measurement of the typically low suction in coarse granular media.

Fig. 4
figure 4

Calibration of pressure sensors with a hanging water column apparatus: measured suction response versus applied reference suction in the underpressure system

2.3 Software and software–hardware interaction

The water retention test is coded in the programming language Python. The Raspberry Pi single-board computer runs the Debian-based operating system Raspbian [43], which already contains a Python 3 installation. The whole experiment is run by a single Python script that contains code lines for the control of the stepper motor of the syringe pump, for the calculation of degree of saturation from the initial state and amount of pumped water, derived from the motor steps, and finally, for the reading and logging of suction, measured by the pressure sensor. An example Python script of the testing procedure is listed in appendix. The script allows the user to program the different drainage and imbibition steps, and the data are continuously written to a text file in comma separated value-format during the running test.

For the implementation of the analog-to-digital converter and other functionalities, different Python libraries have to be installed and loaded. Furthermore, the \(\mathrm {I}^{2}\mathrm {C}\)-data bus of the Raspberry Pi has to be enabled in order to communicate with peripheral devices. In the following paragraph, the design of the software will be presented in its most important details.

2.3.1 Control of syringe pump

The drainage and imbibition steps are controlled by two functions, called drying and wetting, as shown in the Python script in appendix. Within these functions, the motor controller board is pulsed to cause as many steps as correspond to a given change in degree of saturation, considering the calibration for the resolution of pore water volume change or degree of saturation change per microstep, as shown in Sect. 2.2.2. The pulses are applied via the GPIO-pins of the Raspberry Pi within a loop over the steps to be applied. Setting a logical signal to high on the step-pin (STEP) of the stepper motor controller causes the motor to run a step. The two functions drying and wetting only differ in the rotation direction of the stepper motor, given by a logical signal via the corresponding GPIO-pin pulling high or low the direction-pin (DIR) of the motor controller, either applying drainage or imbibition. Pulling low or high the sleep-pin (SLP) of the motor controller board allows to put the motor driver to rest in order to save current consumption or to wake it up for being run. The microstepping of the stepper motor (here, a reduction of \(\frac{1}{32}\) of a single step is set) is coded with three other GPIO-pins of the Raspberry Pi, giving either high or low logical signals to the M0-, M1- and M2-pins of the motor controller board. A good documentation on running stepper motors with the Raspberry Pi and the DRV8825 stepper motor controller board [10] can be found in the online Raspberry Pi Stepper Motor Documentation [41].

Another function, named just_log, allows to only log data over a preselected time period, without a pore water volume change being applied. This is useful in the beginning and end of an experiment to monitor the development and equilibration of suction over time, when no flow is applied. All functions are called from a main programme, in which the planned test stages are successively run, as shown in appendix.

2.3.2 Suction measurement and data acquisition

For suction measurement, an analog-to-digital converter is needed to transform the analog voltage readings from the pressure sensors into digital data that can be processed by the Raspberry Pi. In order to read data from the implemented Adafruit ADS1115 analog-to-digital converter [2], the Adafruit_ADS1x15-library is needed that contains different functions for data conversion. The implemented 16-bit analog-to-digital converter is equipped with a programmable gain amplifier that allows boosting small signals. Considering the 16-bit resolution, a gain factor of 16 of the gain amplifier and the pressure range of the applied pressure sensor, a resolution of suction measurement of ca. 0.005 kPa can be achieved, which is high enough to resolve the small suction values representative of coarse granular media.

In the current implementation of the Python script, as shown in appendix, the data acquisition is programmed in the main loop of each drainage or imbibition step. For each step of pore water volume change to be applied, the analog-to-digital converter is read to obtain a current suction measurement that is written to a text file by the function write_data. For timing purposes in data logging, the Python library for time access and conversions [40] is loaded. For mathematical applications, the Python library for mathematical functions [39] is also contained in the programme.

The current degree of saturation is calculated within the functions drying and wetting for the current step count \(n_{\mathrm {step}}\) from the calibrated pore water volume change \(\Delta V_{w}\) per step (negative for drainage, positive for imbibition, unit: \(\frac{\mathrm {mm}^{3}}{\mathrm {step}}\)) according to Eq. 3, with \(S_{r,0}\) being the initial degree of saturation at the beginning of each test stage and \(V_\mathrm{p}\) being the pore volume, which is assumed to remain constant during each water retention test. The current degree of saturation is also written to the results file together with a corresponding suction value.

$$\begin{aligned} S_{r}(n_{\mathrm {step}}) = S_{r,0} + \frac{\Delta V_{w} \cdot n_{\mathrm {step}}}{V_\mathrm{p}} \end{aligned}$$
(3)

3 Testing procedure

3.1 Investigated soils

Two different granular media have been tested to obtain transient WRCs for different consecutive hydraulic paths. The first is a coarse-to-medium coarse sand, named “Hamburger Sand”, in the following referred to as “Hamburg Sand”, used as a model sand at Hamburg University of Technology. In order to investigate differences in the macroscopic and microscopic water retention behaviour that might originate from grain shape properties, a polydisperse packing of spherical glass beads, with its grain size distribution approximating that of Hamburg Sand, is also tested for comparison. The packing of glass beads represents a mixture of different grain size fractions of soda-lime glass beads (SiLi beads, type S, manufactured by Sigmund Lindner GmbH). The mixture contains 14.02% of glass beads with 0.25 mm \(\le d \le\) 0.5 mm, 51.98% of beads with 0.5 mm \(< d \le\) 0.75 mm, 32.77% of beads with 0.75 mm \(< d \le\) 1.0 mm, and 1.23% of beads with 1.0 mm \(< d \le\) 1.3 mm. Selected soil mechanical properties of the two tested soils are summarised in Table 1. A comparison of grain size distribution curves and photographs of Hamburg Sand and a glass bead specimen enclosed in the specimen holder are shown in Fig. 5.

Table 1 Selected soil parameters of Hamburg Sand and the packing of glass beads
Fig. 5
figure 5

Grain size distribution curves of Hamburg Sand and glass beads and photographs of specimen holder filled with the different materials (the sand is rather dry, while the glass beads are still saturated)

3.2 Test and specimen preparation

For a bubble-free filling of the drainage ports before specimen preparation, the syringe pump is applied to slowly flush de-ionised water upwards through the channels and through the bottom filter plate. All further handling of the specimen holder, especially the clamping of the microporous membrane on top of the filter plate, is done under water to avoid entrapped air bubbles in the drainage system.

Initially water-saturated specimens are prepared by pouring dry material (sand or glass beads) into the water-filled specimen holder with all drainage ports already connected and filled with de-ionised water. The material is filled into the specimen holder in layers and is carefully compacted to obtain the desired specimen height of 12 mm. Finally, the specimen is sealed against evaporation by a 3D-printed plastic cap with a central bore hole to connect the specimen top to the ambient air pressure. The specimens of Hamburg Sand are prepared with an initial void ratio \(e_{0}=0.65\) (porosity \(n = 0.394\)), corresponding to a medium dense-to-dense packing, with the relative density \(I_{n} = 0.5\) calculated according to Eq. 4. The glass bead specimens are prepared with the same relative density (\(I_{n} = 0.5\)); however, corresponding to a different initial void ratio \(e_{0} = 0.615\) (porosity \(n = 0.381\)) due to different minimum and maximum void ratios, compare Table 1.

$$\begin{aligned} I_{n} = \frac{n_{\mathrm {max}} - n}{n_{\mathrm {max}} - n_{\mathrm {min}}} \end{aligned}$$
(4)

3.3 Hydraulic test conditions

After specimen preparation, the hydraulic experiment is started via a Python script. The experiment consists of different consecutive hydraulic paths that are applied by pumping pore water out of and into the specimen with the syringe pump. The tests performed so far start from a fully saturated state on a primary drainage path. Afterwards, a main imbibition path is started by pumping pore water back into the specimen. After main imbibition, further hydraulic paths can be added to the test programme. Here, different drainage and imbibition scanning paths will be investigated. In the recent version of the Python programme, described in Sect. 2.3, the pore water is pumped with a constant flow rate that can be modified by the user with a delay parameter.

All tests have been run with the same flow rate for all hydraulic test stages, \(\frac{\partial V_{w}}{\partial t} = 0.0597~\frac{\mathrm {mm}^{3}}{\mathrm {s}}\), corresponding to \(\frac{\partial S_{r}}{\partial t} \approx 0.000112~\frac{1}{\mathrm {s}}\) for Hamburg Sand and \(\frac{\partial S_{r}}{\partial t} \approx 0.000116~\frac{1}{\mathrm {s}}\) for the glass bead specimens. With this flow rate, the full test procedures presented in the following, generally consisting of eight hydraulic test stages, can be run in about 480 minutes.

As the water volume change is controlled in the tests, the phenomenon of air entrapment upon imbibition after a first drainage would lead to over-saturation, with pore water rising above the specimen top, if the same amount of pore water was reinjected. This effect would become visible by excess pore water pressure being measured by the pressure sensor. In order to avoid this effect, air entrapment is already considered in the applied main imbibition path by increasing the degree of saturation to a value that is limited by the amount of entrapped air \(\Delta S_{a}\), so that after imbibition \(S_{r}\) is only increased to \(1-\Delta S_{a}\), considering air entrapment. However, for this purpose, \(\Delta S_{a}\) must be known from other experiments.

4 Experimental results

For each material, two tests with a sequence of different drainage and imbibition paths have been run. In this section, the measured suction responses and the obtained hysteretic water retention curves of Hamburg Sand and the packing of glass beads will be presented and discussed.

4.1 Hamburg Sand

Figure 6 (top) shows two identical paths of \(S_{r}\)-change, applied with the syringe pump, versus test time for two specimens of Hamburg Sand. The tests start with primary drainage from \(S_{r,0} = 1.0\), followed by main imbibition from \(S_{r} = 0.3\) up to \(S_{r} = 0.857\). This value has been found to represent the degree of saturation reached after air entrapment \(1-\Delta S_{a}\) with \(\Delta S_{a} = 0.143\) for the tested sand. After main imbibition, different drainage and imbibition paths between \(S_{r} = 0.7\) and \(S_{r} = 0.3\) and between \(S_{r} = 0.5\) and \(S_{r} = 0.3\) are appended to the test programme, in order to investigate the cyclic behaviour on higher-order drainage and imbibition scanning paths. The lower boundary of \(S_{r} = 0.3\) has been selected for two purposes: Firstly, with degree of saturation becoming too low and suction increasing massively when the residual degree of saturation is approached, the risk of occurring air bubbles underneath the filter system grows. Secondly, it is known that the suction measurement with a tensiometer system will encounter problems when the water phase is not continuous any longer. In this state, the hydraulic contact between the water phase and the filter system above the pore water pressure sensor is likely to be lost, so that no good suction response is measured any longer. Therefore, technically speaking, the presented method is limited by a lower boundary of saturation that should be identified by preliminary tests.

Fig. 6
figure 6

Applied change of degree of saturation (top) and measured matric suction (bottom) versus time from two hydraulic tests on Hamburg Sand with \(e_{0} = 0.65\) (\(\frac{\partial V_{w}}{\partial t} = 0.0597~\frac{\mathrm {mm}^{3}}{\mathrm {s}}\), \(\frac{\partial S_{r}}{\partial t} \approx 0.000112~\frac{1}{\mathrm {s}}\))

The measured suction responses are plotted versus test time in Fig. 6 (bottom). Although the initial macroscopic specimen state and the hydraulic boundary conditions are the same, slightly different suction responses are measured. The maximum absolute difference between the suctions measured in test 1 and test 2 is 0.3 kPa. In both tests, oscillations and drops of measured suction can be noticed, especially on the first two drainage paths for suctions close to the air entry value of the tested material. As suction is measured through the porous plate and membrane filter in the bottom of the specimen, the oscillations occurring upon air entry could be related to sudden air channels, breaking through the pores from the specimen top to the bottom and leading to a temporal rupture of measured suction. This hypothetical microscopic explanation for the observed macroscopic behaviour could be further clarified with the help of the planned CT-imaging during water retention tests. However, coarse insights into the microscopic processes upon drainage and imbibition can already be obtained by a careful visual inspection of the specimen during a test. For instance, a colour change of the specimen can be noticed during drainage in all experiments, which is due to the emptying of pores. If the specimen is carefully observed through the transparent acrylic cell, also sudden drainage events of initially water-filled pores close to the cell walls can be noticed from time to time, which shows that drainage and also imbibition represent a non-continuous process on the microscale.

The combination of prescribed paths of \(S_{r}\) and measured s allows to plot a water retention curve of the tested material, as shown in Fig. 7. The same figure also contains a primary drainage path, measured with the HYPROP evaporation test [37, 48], manufactured by UMS GmbH/METER Group. The HYPROP test has been run on a specimen with \(h/d = 50~\mathrm {mm}/80~\mathrm {mm}\) and with an equal initial void ratio of \(e_{0} = 0.65\). The primary drainage path, measured in the evaporation test, lies close to the primary drainage path, measured with the new set-up in test 2. However, both curves measured in the transient tests 1 and 2 show slightly higher suction values. Both transient curves deviate from the primary drainage curve, measured in the evaporation test, for \(S_{r}>0.9\). These differences could be explained by the different specimen volumes being investigated, but also by different hydraulic boundary conditions. Although the HYPROP test represents an experiment with a transient and continuous measurement of suction, developing due to free evaporation at the specimen top, the flow conditions in the HYPROP test are different, because the evaporation represents slow and quasi-static flow conditions, while in the new test, rather fast flow is applied at the specimen bottom. The differences in the WRCs might therefore result from different microscopic distributions of \(S_{r}\) and s due to different specimen volumes and other flow conditions and directions. Furthermore, in the evaporation test, suction is obtained from two embedded tensiometer measurements in different heights within the specimen, while the new test set-up considers suction measurement through the porous base plate.

Fig. 7
figure 7

Measured water retention curves from two hydraulic tests on Hamburg Sand with \(e_{0} = 0.65\) compared to water retention data from a HYPROP evaporation test

Both measured WRCs of Hamburg Sand show typical closed ellipsoid scanning paths that smoothly run into or start from the bounding primary drainage and main imbibition curves. The resolution of suction measurement is high enough to give very smooth hydraulic paths in the s-\(S_{r}\)-plane.

4.2 Glass beads

In analogy to the tests on Hamburg Sand, two tests on glass beads have been run with the difference that another degree of saturation after air entrapment must be considered. Apparently, the degree of air entrapment \(\Delta S_{a}\) is lower in the packing of glass beads compared to the sand specimen, which could be due to the slightly different porosities but also due to different grain shapes and grain surface roughness. The applied changes of \(S_{r}\) versus test time are plotted in Fig. 8 (top). After a primary drainage path with \(S_{r}\) being decreased from 1.0 to 0.3, a main imbibition path up to \(1-\Delta S_{a} = 0.9\) with \(\Delta S_{a} = 0.1\) is applied. After a second drainage path to \(S_{r} = 0.3\), further imbibition and drainage scanning paths between \(S_{r} = 0.3\) and \(S_{r} = 0.7\) and between \(S_{r} = 0.3\) and \(S_{r} = 0.5\) are applied, as shown in Fig. 8 (top).

Fig. 8
figure 8

Applied change of degree of saturation (top) and measured matric suction (bottom) versus time from two hydraulic tests on glass beads with \(e_{0} = 0.615\) (\(\frac{\partial V_{w}}{\partial t} = 0.0597~\frac{\mathrm {mm}^{3}}{\mathrm {s}}\), \(\frac{\partial S_{r}}{\partial t} \approx 0.000116~\frac{1}{\mathrm {s}}\))

The suction response measured in the two tests on glass beads also reproduces very well. However, a maximum suction difference of 0.25 kPa occurring at points of oscillations is found by comparing the data. Similar to the tests on Hamburg Sand, these oscillations are measured on the drainage paths after air entry.

A combination of the paths of \(S_{r}\) and s allows to visualise the WRC of the packing of glass beads, as shown in Fig. 9. The obtained hydraulic paths in the s-\(S_{r}\)-plane reproduce very well. The experimental data are also compared to a primary drainage path obtained from a HYPROP test on a glass bead specimen with the same initial void ratio \(e_{0}=0.615\). Although there are slight differences in the slopes, the primary drainage paths measured in the two transient tests lie very close to the primary drainage path measured in the HYPROP test.

Fig. 9
figure 9

Measured water retention curves from two hydraulic tests on glass beads with \(e_{0} = 0.615\) compared to water retention data from a HYPROP evaporation test

4.3 Comparison of sand and glass bead behaviour

A comparison of the measured primary drainage and following main imbibition paths of Hamburg Sand and glass beads is shown in Fig. 10. It can be noticed that a good repeatability of experimental curves is given for both materials. Occurring deviations between the curves will be discussed further below.

Generally, Hamburg Sand shows more pronounced capillary effects with a higher air entry value compared to the packing of glass beads. This is also confirmed by the evaporation test results. A further difference in the hydraulic behaviour of the two tested materials can be seen in the effect of air entrapment, leading to a higher degree of saturation of the glass bead specimens after a full imbibition. Although the change of degree of saturation is prescribed in the experiments, the measured WRCs indicate that more air is entrapped in the sand compared to the glass beads.

Fig. 10
figure 10

Comparison of primary drainage and main imbibition paths measured in hydraulic tests on Hamburg Sand and glass beads

4.4 Measurement of arbitrary hydraulic paths

After a general test of the new experimental set-up, it can be applied for the measurement of arbitrary hydraulic paths with the aim to further discover the hydraulic behaviour on higher-order scanning paths and cyclic behaviour. To illustrate the testing possibilities, another experiment on glass beads with 14 consecutive test stages has been run. The test, presented in the following, focuses on a stepwise decrease in the cyclic range of degree of saturation in the first seven test stages. The last seven test stages represent a cycling between \(S_{r} = 0.6\) and \(S_{r} = 0.7\), as shown in Fig. 11, where the test stages are highlighted by a different colour.

Fig. 11
figure 11

Applied change of degree of saturation (top) and measured matric suction (bottom) versus time from a hydraulic test with different cyclic paths on glass beads with \(e_{0} = 0.615\) (\(\frac{\partial V_{w}}{\partial t} = 0.0597~\frac{\mathrm {mm}^{3}}{\mathrm {s}}\), \(\frac{\partial S_{r}}{\partial t} \approx 0.000116~\frac{1}{\mathrm {s}}\))

The obtained suction response is similar to the experimental results presented before. The reconstructed WRC in Fig. 12 reveals that the transient primary drainage curve is close to the measured primary drainage curve from the evaporation test. As the cyclic range of degree of saturation is reduced in every stage, a multitude of different drainage and imbibition curves are measured that form closed ellipses between the bounding primary drainage and main imbibition curves. In the last test stages, cyclic scanning paths with small amplitudes of \(S_{r}\) are measured. These paths also show a closed elliptical shape and are essentially the same, if a slight drift in the measured suction values is neglected.

Fig. 12
figure 12

Measured water retention curves from a hydraulic test with different cyclic paths on glass beads with \(e_{0} = 0.615\) compared to water retention data from a HYPROP evaporation test

4.5 Discussion of results

The experimental results and their comparison to data measured independently in the HYPROP tests show that the new experimental method can be applied to measure representative WRCs of different granular media in a continuous and transient way. The selected flow rate appears to be low enough for transient effects to be neglected because the measured suction responses are close to the data from very slow evaporation tests. This allows a rather quick testing compared to conventional equilibrium methods.

The measured WRCs indicate a more pronounced capillarity with higher air entry value within the sand compared to the glass beads despite identical grain size distribution curves and a lower initial void ratio of the glass beads. This might indicate that the grain size distribution and the pore volume, represented by void ratio, are not the only parameters governing the magnitude of occurring suction. It is probable that also the pore size distribution and also the pore geometries at different initial void ratios of the investigated materials (\(e_{0}=0.65\) for the sand and \(e_{0}=0.615\) for the glass beads) influence the capillary effects. In particular, the microscopic pore geometries are not the same for both materials, which might lead to a different influence on capillarity. Furthermore, the different mineralogical composition of the sand, mainly consisting of quartz, in comparison with the soda-lime glass beads, might result in different contact angles and thus also influence capillarity and the measured macroscopic WRCs.

All measured water retention data show oscillations of matric suction during drainage after air entry, whereas rather smooth suction responses are measured during imbibition paths. This behaviour can be explained by the microscopic breakthrough of air from the specimen top down to its bottom, known as capillary fingering, temporarily changing the hydraulic contact of the pore water with the water-saturated drainage system underneath the filter membrane where suction is measured. The transparent specimen container allows to observe this mechanism of air entry during drainage for both investigated materials. In contrast, the very smooth suction response measured during imbibition can be explained by the pore water approaching upwards through the bottom filter into the specimen, thus creating an immediate and quasi-holohedral hydraulic contact compared to drainage where air-filled pores are in contact with the filter membrane.

Although the measured WRCs show a good repeatability, the comparison of curves for the same material in Fig. 10 shows deviations which may be due to several reasons, discussed in the following. An explanation for differences in the measured water retention curves of the same material might be inhomogeneities in the specimen void ratios and consequently in the microscopic distribution of water content or degree of saturation which can be further investigated with the help of the planned CT scans during the water retention tests. As degree of saturation is a volume-averaged soil property, a representative elementary volume (REV) is always needed. Despite a good agreement between results from the transient test and the evaporation test for primary drainage, it could be checked whether the specimen size is large enough, for a degree of saturation to be representative of the overall hydraulic specimen state. For this purpose, a so-called REV-analysis on CT-data, segmented into the three phases, namely solid, water and air, could be run. Alternatively, different experiments with varying specimen sizes and volumes could be done to compare the measured WRCs for representativeness. However, due to the good agreement with the WRCs measured in evaporation tests on much larger specimen volumes, such further studies have been neglected here.

Further differences in the measured macroscopic water retention curves can also be due to different initial specimen states. Owing to the specimen preparation procedure, differences in the initial degree of saturation and matric suction might occur. Strictly speaking, an initially water-saturated state is an assumption, because the microscopic water distribution at the specimen top after sand pluviation can only be coarsely considered by making sure that the water level is at the same height as the top of the sand grains. This shortcoming might be addressed with the help of CT-imaging, allowing to visualise and calculate the microscopic water distribution, in order to evaluate the initial degree of saturation.

The initial void ratio and degree of saturation of the specimens are influenced by the actual specimen height after specimen preparation. Throughout the tests, a constant specimen volume is assumed which can be justified by medium-to-high specimen compaction and the cap that ensures the selected specimen height of 12 mm by fixing the specimen top. However, it is known that capillary collapse can occur during imbibition paths. The resulting settlements would reduce the specimen void ratio during a test and change its capillary effects and water retention behaviour with a tendency to higher air entry values with lower void ratio. Therefore, differences in the measured suction responses might also be due to deviating initial void ratios. An inhomogeneity of void ratio is also a result of segregation that is especially occurring in packings of glass beads, if mixing is not appropriately done during specimen preparation. Sudden drops of suction might be a consequence of microscopic grain redistributions. As in this test configuration no settlements are measured, this behaviour remains hypothetical.

However, the planned CT-experiments could also shed light on the development of specimen height due to grain movements during a water retention test. Additionally, questions of specimen homogeneity, leading to inhomogeneous distributions of e and \(S_{r}\), can also be addressed by means of CT-imaging with the same experimental set-up in future.

5 Conclusion and outlook

In this contribution, a new experimental set-up based on a single-board computer as well as on low-cost hardware and sensors for the automated and continuous measurement of the water retention curve of granular media has been presented. The large freedom of possibilities to develop own test set-ups with the Raspberry Pi single-board computer and Python programming language has been highlighted and is meant to encourage other researchers to use these possibilities for their own individual test layouts.

With the help of the presented experimental set-up, nearly arbitrary paths of the WRC of granular media, such as coarse-grained sand and glass beads, can be measured in an automated way. The test runs automatically after specimen preparation and programming of the hydraulic stages to be applied. Compared to other equilibrium methods, no long testing times and frequent manual readings of s or \(S_{r}\) are needed, because the tests are run in a transient way, with \(S_{r}\) being changed with a selected flow rate and s being measured as a response. As also higher flow rates can be prescribed, the new test set-up could be applied to investigate transient effects on the water retention curve.

In future tests, the two materials, Hamburg Sand and the packing of glass beads with the same grain size distribution, will be investigated by means of CT-imaging, focussing on the microscopic hydraulic behaviour. For this purpose, water retention tests with intermediate CT scans at preselected macroscopic degrees of saturation are already planned. The analysis of the 3D-data is supposed to give information on the micro-hydraulic processes on a grain scale, such as the water distribution, air–water and solid–water interfacial areas, as well as curvatures of water menisci on different hydraulic paths. These analyses will hopefully allow to identify and better understand the microscopic processes that are responsible for the macroscopic water retention behaviour, obtained by plotting a macroscopic degree of saturation versus macroscopic suction that is measured globally through a porous plate.