classdef TrackingDifferentiator < handle properties prevError prevOutput Ts end methods function obj = TrackingDifferentiator(Ts) obj.prevError = 0; obj.prevOutput = 0; obj.Ts = Ts; end function output = differentiate(obj, error) output = (error - obj.prevError) / obj.Ts; obj.prevError = error; end function reset(obj) obj.prevError = 0; obj.prevOutput = 0; end end end
时间: 2024-02-10 11:29:35 浏览: 143
obj2mat.rar_.obj文件_obj_obj matlab_obj 转mat_obj格式文件
5星 · 资源好评率100%
这是一个名为 TrackingDifferentiator 的类定义。它具有三个属性:prevError、prevOutput 和 Ts。该类还定义了三个方法:构造函数 TrackingDifferentiator、differentiate 和 reset。
构造函数 TrackingDifferentiator 接受一个参数 Ts,并用该参数初始化 prevError、prevOutput 和 Ts 属性。
方法 differentiate 接受一个参数 error,并返回计算得到的输出值。输出值是当前误差 error 与上一次的误差 prevError 的差值除以时间步长 Ts。在计算之后,该方法还会更新 prevError 的值为当前的误差值。
方法 reset 用于将 prevError 和 prevOutput 属性重置为初始值,即将它们都设置为 0。
此类的目的是实现一个跟踪微分器,可以计算给定误差值的微分。
阅读全文