Let me provide a comprehensive solution addressing all the issues you’re experiencing with false inventory alerts.
Signal Smoothing Algorithms:
Implement a multi-stage filtering approach at the IoT gateway level before data reaches FT MES. First, apply a simple moving average filter with a 30-second window (assuming 1-second sensor sampling). This smooths out high-frequency noise and vibration-induced fluctuations:
smoothed_weight = average(last_30_readings)
Second, add outlier rejection using a median absolute deviation filter. If a reading deviates more than 3 standard deviations from the recent median, discard it as a transient spike:
IF abs(current_reading - median) > 3 * MAD THEN
discard_reading
This prevents single erratic readings from affecting the smoothed value.
Hysteresis Logic:
This is critical for preventing alert churn. Implement a dual-threshold system with hysteresis:
- Alert trigger threshold: 15% of bin capacity (your current reorder point)
- Alert clear threshold: 20% of bin capacity (5% above trigger)
- Confirmation delay: Alert only after weight remains below trigger threshold for 3 consecutive minutes
Once an alert is triggered, it won’t clear until inventory rises above 20%, preventing oscillating alerts when inventory hovers near the threshold. The 3-minute confirmation delay filters out momentary drops caused by material removal in progress.
Configure this in your IoT gateway or edge processing layer:
IF smoothed_weight < trigger_threshold THEN
increment_below_threshold_counter
IF counter >= 180_seconds THEN
send_alert_to_mes
ELSE IF smoothed_weight > clear_threshold THEN
clear_alert_in_mes
reset_counter
RF Shielding Techniques:
For the bins near AGV infrastructure showing higher false alert rates:
-
Cable Shielding: Upgrade sensor cables to double-shielded twisted pair with continuous metal conduit from sensor to junction box. Ensure shield continuity-no breaks in the shield connection. Ground shields at the instrument end only (not both ends) to prevent ground loops.
-
RF Filtering: Install inline EMI/RFI filters on each sensor signal line near the load cell. Look for filters rated for your AGV frequency range (typically 2.4-5.8 GHz for WiFi-based systems). These filters should pass the low-frequency load cell signals (< 100 Hz) while attenuating RF interference.
-
Physical Separation: If possible, route sensor cables at least 1 meter away from AGV charging stations and high-power RF transmitters. Where separation isn’t possible, use metal cable tray or conduit to provide additional shielding.
-
Sensor Grounding: Verify all load cells have proper earth ground connections. Poor grounding makes sensors act as antennas, picking up RF noise. Use star grounding topology-all sensor grounds should connect to a single common ground point, not daisy-chained.
Sensor Calibration Validation:
Establish a quarterly calibration program:
-
Zero Calibration: With bin empty, verify sensor reads zero (±0.5% of full scale). Adjust zero offset if needed.
-
Span Calibration: Add certified test weights at 25%, 50%, 75%, and 100% of bin capacity. Sensor readings should be within ±1% of known weights. If error exceeds 2%, recalibrate or replace the sensor.
-
Linearity Check: Plot calibration points and verify linear response. Non-linear response indicates sensor damage or mechanical binding.
-
Repeatability Test: Remove and reapply test weights 5 times. Readings should vary by less than 0.5%. Higher variation indicates mechanical issues (loose mounting, debris, structural flexing).
For your specific case with BIN-047 reading 142.3kg when actual level was 195kg (27% low), this is too large to be RF interference alone. I suspect sensor calibration drift combined with RF noise. That sensor needs immediate recalibration.
Implementation in FT MES 10.0:
The material-mgmt module has limited signal processing capabilities, so implement filtering at the data source:
- Configure your IoT gateway/PLC to apply the smoothing and hysteresis logic before publishing to MES
- In FT MES, adjust the AlertDelaySeconds parameter in material-mgmt configuration to add an additional confirmation delay at the MES level
- Increase the AlertThresholdHysteresis parameter to 5% to implement the dual-threshold approach
- Enable the DataQualityValidation flag to reject sensor readings marked as poor quality by the IoT layer
Validation Approach:
After implementing these changes:
- Monitor false alert rate for 2 weeks-target should be < 2% false positive rate
- Verify true alerts still occur promptly (within 5 minutes of actual low stock condition)
- Compare automated alerts against manual bin checks for 20-30 bins to validate accuracy
- Fine-tune filter time constants and hysteresis thresholds based on results
Additional Recommendations:
- Install a few reference sensors in low-RF areas to establish baseline performance
- Log raw sensor data alongside filtered data for troubleshooting
- Create a sensor health dashboard showing signal quality metrics (noise level, calibration status, last validation date)
- Consider upgrading to load cells with better RF immunity specifications if problems persist despite filtering and shielding
Implementing this comprehensive approach should reduce your false alert rate from 15-20% down to under 3%, while maintaining reliable detection of actual low-stock conditions.