Author Contributions
Conceptualization, P.L. and P.P.; methodology, P.L. and P.P.; software, P.L. and T.S.; validation, P.L., P.P., S.P. (Sarut Puangragsa) and T.S.; formal analysis, P.L., S.P. (Supavee Pourbunthidkul) and P.P.; investigation, P.L. and S.P. (Supavee Pourbunthidkul); data curation, P.L., T.S. and P.P.; writing—original draft preparation, P.L. and P.P.; writing—review and editing, P.L., S.P. (Supavee Pourbunthidkul), P.P., N.H. and P.W.; visualization, P.L.; supervision, P.P.; funding acquisition, P.P. All authors have read and agreed to the published version of the manuscript.
Figure 1.
The methodology workflow for hybrid clustering–LSTM rainfall prediction framework.
Figure 1.
The methodology workflow for hybrid clustering–LSTM rainfall prediction framework.
Figure 2.
System architecture and workflow for satellite-based rainfall prediction.
Figure 2.
System architecture and workflow for satellite-based rainfall prediction.
Figure 3.
The satellite receiver system architecture showing signal flow from LNB down-conversion through SDR digitization and GNU Radio processing, to centralized data management and control.
Figure 3.
The satellite receiver system architecture showing signal flow from LNB down-conversion through SDR digitization and GNU Radio processing, to centralized data management and control.
Figure 4.
Hardware implementation of the satellite receiver system showing the interconnections between the Zedboard development board, AD9361 RF transceiver module, and Mini PC with GNU Radio software.
Figure 4.
Hardware implementation of the satellite receiver system showing the interconnections between the Zedboard development board, AD9361 RF transceiver module, and Mini PC with GNU Radio software.
Figure 5.
GNU Radio software for SNR computation and signal processing.
Figure 5.
GNU Radio software for SNR computation and signal processing.
Figure 6.
Radio Astronomy Service control software interface: (a) The dashboard displays system status information alongside antenna position indicators which include south–north and west–east gauges and grid position display and motor performance metrics. (b) The Receiver Control module shows real-time SNR monitoring with signal parameters and SNR history time-series plot and system health indicators.
Figure 6.
Radio Astronomy Service control software interface: (a) The dashboard displays system status information alongside antenna position indicators which include south–north and west–east gauges and grid position display and motor performance metrics. (b) The Receiver Control module shows real-time SNR monitoring with signal parameters and SNR history time-series plot and system health indicators.
Figure 7.
The control system architecture demonstrates parallel servo control chains which operate the azimuth (primary axis) and elevation (secondary axis) through software coordination with dual encoder feedback for each axis.
Figure 7.
The control system architecture demonstrates parallel servo control chains which operate the azimuth (primary axis) and elevation (secondary axis) through software coordination with dual encoder feedback for each axis.
Figure 8.
The 12-m ground station with annotated two-axis control system components: receiver chain, primary axis (azimuth) motor and encoder set, and secondary axis (elevation) motor and encoder set.
Figure 8.
The 12-m ground station with annotated two-axis control system components: receiver chain, primary axis (azimuth) motor and encoder set, and secondary axis (elevation) motor and encoder set.
Figure 9.
Control system hardware components: (a) dual encoder set (absolute and incremental); (b) primary and secondary axis SERVOPACK units; and (c) control board for UDP-based communication interface.
Figure 9.
Control system hardware components: (a) dual encoder set (absolute and incremental); (b) primary and secondary axis SERVOPACK units; and (c) control board for UDP-based communication interface.
Figure 10.
Meteorological station with rain gauge, anemometer, and atmospheric sensors.
Figure 10.
Meteorological station with rain gauge, anemometer, and atmospheric sensors.
Figure 11.
Weather Home Software interface showing 72-h historical meteorological data.
Figure 11.
Weather Home Software interface showing 72-h historical meteorological data.
Figure 12.
The representative sample dataset contains 55,000 to 65,000 entries which include three main variables: (a) time-series absolute atmospheric pressure; (b) SNR measurements; and (c) hourly rainfall accumulation.
Figure 12.
The representative sample dataset contains 55,000 to 65,000 entries which include three main variables: (a) time-series absolute atmospheric pressure; (b) SNR measurements; and (c) hourly rainfall accumulation.
Figure 13.
Distribution of atmospheric variables with kernel density estimation (KDE): (a) absolute pressure; (b) SNR values; and (c) hourly rainfall. The green dashed line indicates the mean value, while the yellow dashed line represents the median value of each distribution.
Figure 13.
Distribution of atmospheric variables with kernel density estimation (KDE): (a) absolute pressure; (b) SNR values; and (c) hourly rainfall. The green dashed line indicates the mean value, while the yellow dashed line represents the median value of each distribution.
Figure 14.
Data preprocessing for rainfall prediction.
Figure 14.
Data preprocessing for rainfall prediction.
Figure 15.
K-Means Clustering analysis. The Elbow Method demonstrates within-cluster sum of squares against number of clusters to identify the optimal k value at 4 where the curve reaches its inflection point.
Figure 15.
K-Means Clustering analysis. The Elbow Method demonstrates within-cluster sum of squares against number of clusters to identify the optimal k value at 4 where the curve reaches its inflection point.
Figure 16.
Boxplot distributions of Signal-to-Noise Ratio (SNR), atmospheric pressure, and rainfall intensity for the four atmospheric clusters (C0–C3) obtained using the K-Means algorithm: (a) signal-to-noise ratio (SNR, dB); (b) atmospheric pressure (hPa); (c) rainfall intensity (mm/h).
Figure 16.
Boxplot distributions of Signal-to-Noise Ratio (SNR), atmospheric pressure, and rainfall intensity for the four atmospheric clusters (C0–C3) obtained using the K-Means algorithm: (a) signal-to-noise ratio (SNR, dB); (b) atmospheric pressure (hPa); (c) rainfall intensity (mm/h).
Figure 17.
SMOTE balancing results showing kernel density estimates (KDE) for each atmospheric regime: (a) Cluster 0 (clear sky); (b) Cluster 1 (stratiform); (c) Cluster 2 (convective); and (d) Cluster 3 (mixed circulation). Each row displays original imbalanced distributions (blue) versus balanced distributions (orange) for SNR, absolute pressure, and rainfall across three feature dimensions.
Figure 17.
SMOTE balancing results showing kernel density estimates (KDE) for each atmospheric regime: (a) Cluster 0 (clear sky); (b) Cluster 1 (stratiform); (c) Cluster 2 (convective); and (d) Cluster 3 (mixed circulation). Each row displays original imbalanced distributions (blue) versus balanced distributions (orange) for SNR, absolute pressure, and rainfall across three feature dimensions.
Figure 18.
LSTM network architecture for rainfall prediction.
Figure 18.
LSTM network architecture for rainfall prediction.
Figure 19.
Test set prediction performance across all atmospheric regimes: (a) Cluster 0 (clear sky); (b) Cluster 1 (stratiform); (c) Cluster 2 (convective); and (d) Cluster 3 (mixed circulation). Each panel displays actual rainfall values (blue) versus LSTM predicted values (red) over the test period.
Figure 19.
Test set prediction performance across all atmospheric regimes: (a) Cluster 0 (clear sky); (b) Cluster 1 (stratiform); (c) Cluster 2 (convective); and (d) Cluster 3 (mixed circulation). Each panel displays actual rainfall values (blue) versus LSTM predicted values (red) over the test period.
Figure 20.
Scatter plots of actual versus predicted rainfall for all four clusters with perfect prediction line (red dashed): (a) cluster 0; (b) cluster 1; (c) cluster 2; and (d) cluster 3.
Figure 20.
Scatter plots of actual versus predicted rainfall for all four clusters with perfect prediction line (red dashed): (a) cluster 0; (b) cluster 1; (c) cluster 2; and (d) cluster 3.
Table 1.
Technical specifications of the Universal Ku-Band LNB (Infosat True-4).
Table 1.
Technical specifications of the Universal Ku-Band LNB (Infosat True-4).
| Specification | Details |
|---|
| Model | Infosat True-4 (Universal Quad LNB) |
| Input Frequency (RF) | 10.70–12.75 GHz |
| Output Frequency (IF) | 950–2150 GHz |
| Local Oscillator (LO) | 9.75 GHz (Low Band), 10.60 GHz (High Band) |
| Noise Figure | 0.3 dB |
| Number of Outputs | 4 Independent Outputs (Quad LNB) |
| Polarization | Linear (Vertical/Horizontal) |
| Connector Type | F-Type |
| Compatibility | Universal Ku-Band satellite dishes; supports multi-receiver usage |
| Application | Ku-Band signal monitoring, Earth–space propagation studies |
| Environmental Protection | Weather-resistant outdoor enclosure |
Table 2.
Technical specifications of the HamGeek Zedboard with AD9361 SDR Platform.
Table 2.
Technical specifications of the HamGeek Zedboard with AD9361 SDR Platform.
| Component | Specification | Details |
|---|
| Zedboard | Processor | Zynq-7000 SoC XC7Z020-CLG484-100 (ARM Cortex-A9 + FPGA PL) |
| | Memory | 512 MB DDR3, 256 MB Quad-SPI Flash, 8 GB SD Card |
| | RF/SDR Support | Compatible with AD9361 (70 MHz–6 GHz, 56 MHz BW) |
| | Communication Interfaces | USB-JTAG, USB OTG 2.0, USB-UART, Gigabit Ethernet |
| | Clock Sources | 33.33333 MHz (PS), 100 MHz (PL) |
| | User I/O | 8 LEDs, 7 push buttons, 8 DIP switches |
| | Debugging | Onboard USB-JTAG and standard JTAG connector |
| AD9361 | Rx Frequency Range | 70 MHz-6.0 GHz |
| | Tx Frequency Range | 47 MHz-6.0 GHz |
| | Channel Bandwidth | <200 kHz to 56 MHz |
| | ADC/DAC | 12-bit ADCs, 10-bit DACs |
| | Rx Gain Range | 0–74.5 dB |
| | Rx Noise Figure | 2 dB at 800 MHz |
| | Tx EVM | ≤−40 dB |
| | Tx Noise Floor | ≤−157 dBm/Hz |
| | Tx Monitor Range | ≥66 dB (1 dB accuracy) |
| | LO step size | 2.4 Hz |
| | Reference Clock | 19–50 MHz (crystal), 20–80 MHz (oscillator) |
Table 3.
Mechanical drive assembly specifications.
Table 3.
Mechanical drive assembly specifications.
| Specification | Primary Axis (Azimuth) | Secondary Axis (Elevation) |
|---|
| Motor Power | 1.5 kW | 1.5 kW |
| Motor Speed | 1500 rpm | 1500 rpm |
| Motor Torque | 8.3 N-m | 8.3 N-m |
| Gearing Ratio | 1:30,000 | 1:59,400 |
| Maximum Slew Rate | 0.30 deg/s | 0.15 deg/s |
| Position Measuring Error | 0.1% | 0.1% |
Table 4.
Specifications of Yaskawa SERVOPACK.
Table 4.
Specifications of Yaskawa SERVOPACK.
| Specification | Details |
|---|
| Model | Yaskawa SERVOPACK SGDB-15ADC |
| Rated Motor Power | 1.5 kW |
| Rated Voltage | 200–240 VAC, 1Ø/3Ø |
| Support Motor Speed | Up to 5000 rpm |
| Motor Base Frequency | 200 Hz |
| Motor Frequency Range | 0–300 Hz |
| Operating Temperature | 0–55 °C |
| Protection Features | Overload protection, overvoltage/undervoltage, overheat, motor protection (internally provided) |
Table 5.
Specifications of the absolute and incremental encoders used in the dual-encoder assembly.
Table 5.
Specifications of the absolute and incremental encoders used in the dual-encoder assembly.
| Specification | Omron E6CP-A | Omron E6B2-A |
|---|
| Encoder Type | Absolute Rotary Encoder | Incremental Rotary Encoder |
| Measurement Principle | Optical, multi-turn absolute position | Optical quadrature pulse output |
| Gear Ratio (in system) | 1:1 (direct coupling) | 1:360 (gearbox assembly) |
| Effective Angular Resolution | 0.0005° (1.8 arc-seconds) | Enhanced through gear ratio |
| Max Response Frequency | 20 kHz | 100 kHz |
| Application Role | Initial absolute orientation (no homing required) | Real-time angular displacement tracking |
Table 6.
Meteorological reference station specifications.
Table 6.
Meteorological reference station specifications.
| Specification | Details |
|---|
| Temperature | Outdoor range | −40 to +60 °C |
| | Indoor range | 0 to +60 °C |
| | Accuracy | ±1 °C |
| Relative Humidity | Range | 10–99% RH |
| | Accuracy | ±5% RH |
| Barometric Pressure | Range | 300–1100 hPa |
| | Resolution | 0.1 hPa |
| | Instrument type | ±3 hPa |
| | Recording interval | Hourly accumulation |
| Wind | Speed range | 0–50 m/s |
| | Speed accuracy | ±10% or ±3 m/s |
| | Direction range | 0–360° |
| | Direction resolution | 8-point compass |
Table 7.
Statistical characteristics of the dataset.
Table 7.
Statistical characteristics of the dataset.
| Feature | Mean | Median | StdDev | Min | Max | Range |
|---|
| SNR (dB) | 20.073 | 20.760 | 2.927 | 8.000 | 30.110 | 22.110 |
| Pressure (hPa) | 1007.928 | 1007.900 | 1.820 | 1003.000 | 1014.100 | 11.100 |
| Rainfall (mm/h) | 0.386 | 0.000 | 2.984 | 0.000 | 54.300 | 54.300 |
Table 8.
LSTM training hyperparameters and configuration settings for rainfall prediction models.
Table 8.
LSTM training hyperparameters and configuration settings for rainfall prediction models.
| Hyperparameter | Details |
|---|
| Optimizer | Adam |
| Dropout | 0.2 |
| Batch Size | 64 |
| Epoch | 1000 with Early Stopping |
| Train/Test Spilt | 80%/20% |
| Loss Function | Mean Squared Error (MSE) |
Table 9.
Performance metrics of cluster-specific LSTM models for rainfall prediction.
Table 9.
Performance metrics of cluster-specific LSTM models for rainfall prediction.
| Cluster | MAE | MAE | R2 |
|---|
| Cluster 0 | 0.0036 | 0.0499 | 0.9237 |
| Cluster 1 | 0.0068 | 0.0493 | 0.9439 |
| Cluster 2 | 0.2273 | 0.8921 | 0.9763 |
| Cluster 3 | 0.0031 | 0.0580 | 0.9508 |
Table 10.
Classification metrics for rainfall detection (threshold: 0.1 mm/h) across all clusters.
Table 10.
Classification metrics for rainfall detection (threshold: 0.1 mm/h) across all clusters.
| Cluster | POD | FAR | CSI | HSS |
|---|
| Cluster 0 | 0.7514 | 0.2247 | 0.6170 | 0.7570 |
| Cluster 1 | 0.7534 | 0.1958 | 0.6367 | 0.7698 |
| Cluster 2 | 0.9881 | 0.0347 | 0.9542 | 0.9671 |
| Cluster 3 | 0.9960 | 0.0305 | 0.9657 | 0.9820 |
Table 11.
Hyperparameter configurations for RNN and GRU architectures.
Table 11.
Hyperparameter configurations for RNN and GRU architectures.
| Hyperparameter | Recurrent Neural Network (RNN) | Gated Recurrent Unit (GRU) |
|---|
| Optimizer | Adam | Adam |
| Batch Size | 64 | 64 |
| Dropout | - | 0.2 |
| Epoch (max) | 1000 (Early Stopping) | 1000 (Early Stopping) |
| Train/Test Split | 80%/20% | 80%/20% |
| Loss Function | MSE | MSE |
Table 12.
Comparative performance metrics of RNN, GRU, and LSTM architectures for rainfall prediction.
Table 12.
Comparative performance metrics of RNN, GRU, and LSTM architectures for rainfall prediction.
| Architecture | Cluster | MAE | MSE | R2 |
|---|
| Recurrent Neural | Cluster 0 | 0.0098 | 0.0724 | 0.8451 |
| Network (RNN) | Cluster 1 | 0.0112 | 0.0759 | 0.8627 |
| | Cluster 2 | 0.3214 | 1.1843 | 0.9021 |
| | Cluster 3 | 0.0091 | 0.0795 | 0.8712 |
| Gated Recurrent | Cluster 0 | 0.0041 | 0.0528 | 0.9125 |
| Unit (GRU) | Cluster 1 | 0.0061 | 0.0512 | 0.9348 |
| | Cluster 2 | 0.2411 | 0.9234 | 0.9695 |
| | Cluster 3 | 0.0038 | 0.0622 | 0.9417 |
| Long Short-Term | Cluster 0 | 0.0036 | 0.0499 | 0.9237 |
| Memory (LSTM) | Cluster 1 | 0.0068 | 0.0493 | 0.9439 |
| | Cluster 2 | 0.2273 | 0.8921 | 0.9763 |
| | Cluster 3 | 0.0031 | 0.0580 | 0.9508 |
Table 13.
Performance comparison between single LSTM baseline and hybrid clustering-based approach.
Table 13.
Performance comparison between single LSTM baseline and hybrid clustering-based approach.
| Model Type | R2 Score | MAE (mm/h) | MSE (mm2/h2) | Training Time |
|---|
| Single LSTM (No Clustering) | 0.8341 ± 0.023 | 0.1847 ± 0.012 | 1.2389 ± 0.087 | 2.3 h |
| LSTM with Clustering | 0.9487 ± 0.015 | 0.0594 ± 0.008 | 0.3748 ± 0.025 | 4.2 h |
| Improvement | +13.7% | −67.8% | −69.7% | +83% |
Table 14.
Performance comparison of selected rainfall prediction methods.
Table 14.
Performance comparison of selected rainfall prediction methods.
| Method | R2 | MAE (mm/h) | RMSE (mm/h) | MSE (mm/h) |
|---|
| ITU-R P.838-3 | 0.6524 | 0.8734 | 1.1123 | 1.2372 |
| Support Vector Regression | 0.8123 | 0.1456 | 0.3814 | 0.1455 |
| Single LSTM (No Clustering) | 0.8341 | 0.1847 | 0.4305 | 1.2389 |
| LSTM with Clustering | 0.9487 | 0.0594 | 0.1936 | 0.3748 |
Table 15.
Training performance for cluster-specific LSTM models.
Table 15.
Training performance for cluster-specific LSTM models.
| Cluster | Training Time | Simples | Regime |
|---|
| Cluster 0 | 52 min | 24,500 | Clear sky/Light rain |
| Cluster 1 | 58 min | 25,200 | Stratiform systems |
| Cluster 2 | 71 min | 24,800 | Convective events |
| Cluster 3 | 63 min | 24,700 | Transitional |
| Baseline | 2.3 h | 99,200 | Single LSTM |
Table 16.
Inference performance metrics for operational deployment.
Table 16.
Inference performance metrics for operational deployment.
| Metric | Single Sample | Batch (100) | Threshold |
|---|
| Latency | 11.4 ms | 38 ms total | <50 ms |
| Throughput | 87.7 samples/s | 2632 samples/s | >30 samples |
| GPU Memory | 2.3 GB per cluster | 9.2 GB total | <12 GB |
Table 17.
Performance validation against Thailand Meteorological Department operational observations.
Table 17.
Performance validation against Thailand Meteorological Department operational observations.
| Performance Metric | Value | Reference |
|---|
| Correlation coefficient (r) | 0.949 ± 0.015 | Nearest TMD station |
| MAE (mm/h) | 0.059 ± 0.008 | 38-day test period |
| RMSE (mm/h) | 0.193 ± 0.021 | Statistical validation |
| Bias (%) | −2.1 ± 1.1 | Systematic neutrality |