Door Prognostics and Health Management
System for monitoring the functionality of enlcosed spaces
Last November my garage door arm bracket got partially dislodged. This kind of failure gives no warning before it happens. I had nothing else going on, so that was enough motivation to build a monitoring system from scratch.
The system detects faults before they become failures. Every time the door moves, the system wakes up, captures the motion signature, runs it through some fault detection models hosted in AWS IoT, and logs the result. The system needs human intervention when an alarm fires or when a battery dies. It’s deployed across three households including mine.
The project focus is on garage doors, with fault detection ranging from arm bracket issues which are straightforward to validate to torsion spring failures, which are harder to test without a safe test stand and are theoretical implementations.
Typical garage door installation:

Partially dislodged garage door arm bracket:
Current implementations
Tech stack:
3D Printing, Python, C++, AWS
Measurement system:
The system uses an accelerometer. Calibration protocol includes the sequence of opening and closing the garage door, starting from the closed position to fully open and then back to the closed position.
The door moves relative to the tracks, and this can cause problems if the accelerometer is not positioned correctly. The reference tilt angle is be adjusted using a semi-automated procedure. Here are three outputs for three angles, -17 deg (CCW), 0 deg, and 17 deg (CW).

The shape of the signal comes from the rate of tilt around the turn, and can be expressed by a the following first order differential equation:
\[\frac{d\theta}{dt} = f(\theta, G, t),\]
where f(, G, t) represents the function describing the dynamics of the garage door, and G is the geometry of the system.
To determine the optimal tilt angle, a sweep is be performed at varying tilt increments, which uses mutual information between two signals at a time. A hinge function is used to “fit” the calibration model.

In this instance, the sensor was positioned at a five-degree CW offset.
Once the system is ready to go, a dashboard is used to give real-time updates using a mobile app or a browser.
Fault Detection Models in AWS IoT:
