I am developing a quasi-passive AFO using parts of the OpenExo Design and firmware. I recently noticed an issue with between the torque-angle plots while walking. These plots are useful to characterize the elastic element of the device. During loading there was a nice linear region as expected for a spring based system, but the unloading period dropped to 0 Nm of torque almost instantly. Normally the unloading curve follows the loading curve, with some hysteresis. What might be going on here?
This weird behavior is a result of different filtering strengths being applied to the torque and angle data. The torque data is minimally filtered, where as the angle data is filtered more strongly. As a result, during rapid movements, such as spring unloading, the torque drops quickly but the angle change is delayed due to the larger filtering delay. Thus, you see a large change in torque over a small change in angle. That would imply the spring would stiffen during unloading! Mechanically speaking, this is not likely happening for a simple spring system. If you remove the filtering from the torque and angle data, you will see normal unloading curve where the torque slowly decreases as the angle changes. Torque should ideally drop to ~0 Nm at the same angle it started being loaded, if you used a fixed neutral or engagement angle for your device.

