一种数据处理方法及装置

文档序号:1672406 发布日期:2019-12-31 浏览:16次 >En<

阅读说明:本技术 一种数据处理方法及装置 (Data processing method and device ) 是由 秦坤明 于 2019-09-16 设计创作,主要内容包括:本申请实施例公开了一种数据处理方法及装置,该方法包括:判断误差是否处于误差阈值范围内,所述误差为输入值与输出值之间的差值,所述输入值为被控制对象的参数的阈值,所述输出值为所述参数在当前时刻的值;在判断出所述误差处于所述误差阈值范围内的情况下,根据被控制对象与设定值的映射关系获取所述被控制对象对应的第一设定值,所述第一设定值为所述被控制对象当前时刻对应的微分设定值;根据所述第一设定值生成控制指令;向所述被控制对象发送所述控制指令,所述控制指令用于调整所述参数的值。能够提升控制稳定性。(The embodiment of the application discloses a data processing method and a device, wherein the method comprises the following steps: judging whether an error is within an error threshold range, wherein the error is a difference value between an input value and an output value, the input value is a threshold value of a parameter of a controlled object, and the output value is a value of the parameter at the current moment; under the condition that the error is judged to be within the error threshold range, acquiring a first set value corresponding to the controlled object according to the mapping relation between the controlled object and the set value, wherein the first set value is a differential set value corresponding to the current moment of the controlled object; generating a control instruction according to the first set value; and sending the control instruction to the controlled object, wherein the control instruction is used for adjusting the value of the parameter. The control stability can be improved.)

一种数据处理方法及装置

技术领域

本发明涉及通信技术领域,尤其涉及一种数据处理方法及装置。

背景技术

随着人们日常生活水平的提高,人们对自动化控制的需求越来越高,小到3D打印机的温度控制器、大到汽车中的定速巡航都需要恒温、恒速的控制。目前,恒温、恒速的控制是通过比例积分微分(proportion integral differential,PID)算法配合硬件电路来实现的。具体来说,是以设定的速度或者温度值与实际速度或者实际温度的差值作为偏差,将偏差的比例、积分和微分通过线性组合得到控制量,以实现对速度、温度的调节。

但是,由于目前的PID算法在实际运用中启动阶段速度或温度值会出现超调震荡的现象,以致控制的速度或温度不稳定,控制效率低。

发明内容

本申请实施例提供一种数据处理方法及装置,可以解决启动过程中超调速度震荡的问题,提升控制稳定性。

第一方面,本申请实施例提供一种数据处理方法,包括:

判断误差是否处于误差阈值范围内,所述误差为输入值与输出值之间的差值,所述输入值为被控制对象的参数的阈值,所述输出值为所述参数在当前时刻的值;

在判断出所述误差处于所述误差阈值范围内的情况下,根据被控制对象与设定值的映射关系获取所述被控制对象对应的第一设定值,所述第一设定值为所述被控制对象当前时刻对应的微分设定值;

根据所述第一设定值生成控制指令;

向所述被控制对象发送所述控制指令,所述控制指令用于调整所述参数的值。

在一种可能的实现方式中,所述根据所述第一设定值生成控制指令,包括:

根据所述第一设定值计算第一控制量;

计算第一比例系数与所述第一控制量的积,得到第一结果,所述第一比例系数为根据被控制对象与比例系数的对应关系获取的所述被控制对象对应的控制量比例系数;

计算第二比例系数与所述输出值的积,得到第二结果,所述第二比例系数为根据所述对应关系获取的所述被控对象对应的输出值比例系数;

计算所述第一结果与所述第二结果的和,得到第二控制量;

根据所述第二控制量生成控制指令。

在一种可能的实现方式中,所述根据所述第一设定值计算第一控制量包括:

确定所述误差的当前变化速率;

根据所述当前变化速率和第一阈值确定所述误差的变化趋势,所述第一阈值为所述误差对应的微分阈值;

计算所述第一设定值与所述变化趋势对应值的积,得到第三控制量;

根据所述第三控制量确定第一控制量。

在一种可能的实现方式中,所述根据所述第三控制量确定第一控制量,包括:

获取所述误差的上一变化趋势,所述上一变化趋势为上一时刻的变化趋势;

根据所述映射关系获取所述被控制对象对应的第二设定值,所述第二设定值为所述被控制对象上一时刻对应的微分设定值;

计算所述第二设定值和所述上一变化趋势对应值的积,得到第四控制量;

根据所述第三控制量与所述第四控制量确定第一控制量。

在一种可能的实现方式中,所述根据所述第三控制量与所述第四控制量确定第一控制量,包括:

获取第一累积误差,所述第一累积误差为所述当前时刻之前所有时刻的误差之和;

判断所述误差是否小于第二阈值;

在判断出所述误差小于第二阈值的情况下,计算所述误差与所述第一累积误差之和,得到第二累积误差;

计算所述第二累积误差和第三阈值的积,得到第五控制量,所述第三阈值为所述误差对应的积分阈值;

根据所述第三控制量、所述第四控制量以及所述第五控制量确定第一控制量。

在一种可能的实现方式中,所述根据所述第三控制量与所述第四控制量确定第一控制量,还包括:

在判断出所述误差大于或等于所述第二阈值的情况下,根据所述映射关系获取所述被控制对象对应的第三设定值,所述第三设定值为所述被控制对象对应的积分设定值;

计算所述误差与所述第三设定值的乘积与所述第一累积误差之和,得到第三累积误差;

计算所述第三累积误差和所述第三阈值的积,得到第六控制量;

根据所述第三控制量、所述第四控制量以及所述第六控制量确定第一控制量。

在一种可能的实现方式中,所述根据所述第三控制量、所述第四控制量以及所述第五控制量确定第一控制量,包括:

计算所述误差与第四阈值的积,得到第七控制量,所述第四阈值为所述误差对应的比例阈值;

根据所述第三控制量、所述第四控制量、所述第五控制量以及所述第七控制量确定第一控制量。

第二方面,本申请实施例提供一种数据处理装置,包括:

第一判断单元,用于判断误差是否处于误差阈值范围内,所述误差为输入值与输出值之间的差值,所述输入值为被控制对象的参数的阈值,所述输出值为所述参数在当前时刻的值;

第一获取单元,用于在判断出所述误差处于所述误差阈值范围内的情况下,根据被控制对象与设定值的映射关系获取所述被控制对象对应的第一设定值,所述第一设定值为所述被控制对象当前时刻对应的微分设定值;

生成单元,用于根据所述第一设定值生成控制指令;

发送单元,用于向所述被控制对象发送所述控制指令,所述控制指令用于调整所述参数的值。

在一种可能的实现方式中,所述生成单元,具体用于:

根据所述第一设定值计算第一控制量;

计算第一比例系数与所述第一控制量的积,得到第一结果,所述第一比例系数为根据被控制对象与比例系数的对应关系获取的所述被控制对象对应的控制量比例系数;

计算第二比例系数与所述输出值的积,得到第二结果,所述第二比例系数为根据所述对应关系获取的所述被控对象对应的输出值比例系数;

计算所述第一结果与所述第二结果的和,得到第二控制量;

根据所述第二控制量生成控制指令。

在一种可能的实现方式中,所述生成单元,具体用于:

确定所述误差的当前变化速率;

根据所述当前变化速率和第一阈值确定所述误差的变化趋势,所述第一阈值为所述误差对应的微分阈值;

计算所述第一设定值与所述变化趋势对应值的积,得到第三控制量;

根据所述第三控制量确定第一控制量。

在一种可能的实现方式中,所述生成单元,具体用于:

获取所述误差的上一变化趋势,所述上一变化趋势为上一时刻的变化趋势;

根据所述映射关系获取所述被控制对象对应的第二设定值,所述第二设定值为所述被控制对象上一时刻对应的微分设定值;

计算所述第二设定值和所述上一变化趋势对应值的积,得到第四控制量;

根据所述第三控制量与所述第四控制量确定第一控制量。

在一种可能的实现方式中,所述生成单元,具体用于:

获取第一累积误差,所述第一累积误差为所述当前时刻之前所有时刻的误差之和;

判断所述误差是否小于第二阈值;

在判断出所述误差小于第二阈值的情况下,计算所述误差与所述第一累积误差之和,得到第二累积误差;

计算所述第二累积误差和第三阈值的积,得到第五控制量,所述第三阈值为所述误差对应的积分阈值;

根据所述第三控制量、所述第四控制量以及所述第五控制量确定第一控制量。

在一种可能的实现方式中,所述生成单元,还用于:

在判断出所述误差大于或等于所述第二阈值的情况下,根据所述映射关系获取所述被控制对象对应的第三设定值,所述第三设定值为所述被控制对象对应的积分设定值;

计算所述误差与所述第三设定值的乘积与所述第一累积误差之和,得到第三累积误差;

计算所述第三累积误差和所述第三阈值的积,得到第六控制量;

根据所述第三控制量、所述第四控制量以及所述第六控制量确定第一控制量。

在一种可能的实现方式中,所述生成单元,具体用于:

计算所述误差与第四阈值的积,得到第七控制量,所述第四阈值为所述误差对应的比例阈值;

根据所述第三控制量、所述第四控制量、所述第五控制量以及所述第七控制量确定第一控制量。

第三方面,本申请实施例提供了一种数据处理装置,该装置包括处理器、存储器、输入设备、输出设备,所述处理器、所述存储器、所述输入设备、所述输出设备相互连接,其中,所述存储器用于存储支持所述洗衣机执行上述进程识别方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时使该处理器执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。

在本申请实施例中,通过判断误差是否处于误差阈值范围内,该误差为输入值与输出值之间的差值,所述输入值为被控制对象的参数的阈值,所述输出值为所述参数在当前时刻的值。在判断出误差处于误差阈值范围内的情况下,获取被控制对象对应的第一设定值,根据第一设定值生成控制指令,并向被控制对象发送该控制指令,该控制指令用于调整参数的值。通过判断误差的范围可以更精准的对参数进行精准调节,根据获取的设定值对当前误差进行计算,能够对实际启动阶段速度或者温度参数进行微调,可以解决PID算法在实际运用中启动阶段速度或温度值会出现超调震荡的问题,能够提升控制稳定性,提高控制的效率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供一种数据处理方法的流程示意图;

图2是本申请实施例提供的另一种数据处理方法的流程示意图;

图3是本申请实施例提供的一种数据处理方法的应用场景图;

图4是本申请实施例提供的一种数据处理装置的结构示意图;

图5是本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、产品或设备固有的其他步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

请参阅图1,图1是本申请实施例提供的一种数据处理方法的流程示意图。如图1所示,该数据处理方法包括:

101、判断误差是否处于误差阈值范围内。

本申请实施例的上述方法可以由处理器来执行,也可以是包含处理器的装置来执行。其中,处理器可将控制指令发送至被控制对象,以便于被控制对象调整自身参数的值。被控制对象可以是电路中的电机,参数为该电路中电机的转速;也可以是电路中的加热装置,参数为该加热装置的温度,还可以是电路中的水位调节装置,参数为电路中水位的高度。其中被控制对象以及参数的类型不做限制。可以理解的是,通过实施本申请的方法,可以使得在电机、加热装置以及水位调节装置在启动阶段稳定的进行调节,以达到自动化控制的目的。

具体地,该数据处理方法分为三个部分:比例,积分,微分控制。在被控制对象启动后,处理器周期性地获取被控制对象的参数当前时刻的值,上述参数当前时刻的值为输出值,处理器在获取到被控制对象的参数当前时刻的值后,计算输入值与该时刻的输出值的差,输入值为参数的目标值,是被控制对象需要达到的值。将这个差值作为当前误差。通过对该误差进行比例、积分、微分的计算后,得到控制量,将该控制量发送至被控制对象,以便于被控制对象在当前时刻调节参数的值。

在计算出误差后,为了解决被控制对象在启动过程中超调速度震荡的问题,对该误差进行微分计算,首先判断误差是否处于误差阈值范围内,因为微分是对参数的值进行微调的,若是判断出误差处于误差阈值范围内,则对计算误差的微分,生成控制指令。若是判断出误差不处于阈值范围内,则确定当前时刻不需要进行微调,即不需要微分的部分。而需要大幅度的调制直到在某一个时刻误差在阈值范围内后,再进行微分的调节。

102、在判断出上述误差处于上述误差阈值范围内的情况下,根据被控制对象与设定值的映射关系获取上述被控制对象对应的第一设定值。

在一种可能的实现方式中,在判断出该误差处于误差阈值范围内的情况下,进行微分的调节。根据被控制对象与设定值的映射关系获取上述被控制对象对应的第一设定值,第一设定值是一个小于1的正数。其中,被控制对象在具体实现中为一种装置或一种产品,每一种产品对应了不同的设定值,其中设定值不止一个,在获取到第一设定值之后,可以根据该第一设定值生成控制指令,其中控制指令包括控制量。

103、根据上述第一设定值生成控制指令。

在一种可能的实现方式中,根据第一设定值生成控制指令,其中可以根据第一设定值与该误差的微分项计算得到控制量,从而根据控制量生成控制指令。控制指令用于处理器发送至被控制对象调节参数的值。可以理解的是,控制量可以是正数,也可以是负数。

104、向上述被控制对象发送上述控制指令,上述控制指令用于调整上述参数的值。

在一种可能的实现方式中,处理器向被控制对象发送控制指令,其中控制指令中包含上述第二控制量,被控制对象可立即调整当前参数的值。例如,在电路中的电机作为被控制对象接收到处理器发送的控制指令后,调整自身的转速,以达到控制指令中的要求。

在本申请实施例中,通过判断误差是否处于误差阈值范围内,该误差为输入值与输出值之间的差值,上述输入值为被控制对象的参数的阈值,上述输出值为上述参数在当前时刻的值。在判断出误差处于误差阈值范围内的情况下,获取被控制对象对应的第一设定值,根据第一设定值生成控制指令,并向被控制对象发送该控制指令,该控制指令用于调整参数的值。通过判断误差的范围可以更精准的对参数进行精准调节,根据获取的设定值对当前误差进行计算,能够对实际启动阶段速度或者温度参数进行微调,可以解决PID算法在实际运用中启动阶段速度或温度值会出现超调震荡的问题,能够提升控制稳定性,提高控制的效率。

请参阅图2,图2是本申请实施例提供的一种数据处理方法的流程示意图。如图2所示,该数据处理方法包括:

201、根据上述第一设定值计算第一控制量。

在一种可能的实现方式中,第一控制量的值可以由三个部分组成,微分项、积分项以及比例项。

在一种可能的实现方式中,微分项可以是当前时刻的微分控制量与上一时刻的微分控制量的和作为当前时刻的微分项控制量,具体的,首先计算误差的当前变化速率,即用当前时刻的误差与上一时刻的误差的差,得到误差的当前时刻变化速率,再根据计算出的当前时刻速率与第一阈值的积为误差的变化趋势的对应值,得到第三控制量,其中该变化趋势对应值若大于零表示上升趋势,小于零表示下降趋势。第一阈值为该误差对应的微分阈值,是一个不为零的常数。在得到变换趋势对应值后,计算第一设定值与该变化趋势对应的值的积,得到第三控制量,将第三控制量和第一控制量的和的值赋给第一控制量,即更新第一控制量的值。

在一种可能的实现方式中,可以在上述第一控制量的基础上获取上述误差的上一时刻的变化趋势,并且根据上述映射关系获取上述被控制对象对应的第二设定值,其中第二设定值为被控制对象对应的上一时刻微分设定值,第二设定值是一个小于1的正数。在传统的PID算法中,计算微分项只根据当前时刻的误差的微分来得到控制量,而在本申请提供的数据处理方法中,会计算上述第二设定值和上述上一时刻的变化趋势对应的值的积,得到第四控制量,并且将在上述第一控制量的基础上,将第四控制量与上述第一控制量的和确定为新的第一控制量。

在一种可能的实现方式中,在判断误差是否处于误差阈值范围内之后,还可以计算积分项,即先获取当前时刻之前的每一个时刻的误差,并求和,得到第一累积误差,然后判断当前时刻误差是否小于第二阈值,在这里,第二阈值可以是0,若是在判断出上述误差小于第二阈值的情况下,计算上述误差与上述第一累积误差之和,得到第二累积误差。并且计算第二累积误差和第三阈值的积,得到第五控制量,该第三阈值为上述误差对应的积分阈值,其中第三阈值是不为零的常数。在计算得到第五控制量后,可以在上述第一控制量的基础上增加第五控制量的作为新的第一控制量。

在一种可能的实现方式中,若判断判断出上述误差大于或等于上述第二阈值的情况下,根据上述映射关系获取上述被控制对象对应的第三设定值,上述第三设定值为上述被控制对象对应的积分设定值,其中,第三设定值是一个不为零的正数。第三设定值用于控制参数的值的变换快慢,可以根据实际产品进行设置,第三设定值越大,参数变化得越明显,第三设定值越小,参数变化得越平缓。在获取到第三设定值之后,计算误差与第三设定值的乘积,将乘积的结果与上述第一累积误差之和,得到第三累积误差,可以理解为在求和的时候第三设定值为当前时刻误差前的系数,得到的求和结果为第三累积误差。接着计算第三累积误差和上述第三阈值的积,得到第六控制量,并且重复更新上述第一控制量的操作,将上述第一控制量、上述第三控制量、上述第五控制量之和确定为新的第一控制量。

在一种可能的实现方式中,在判断误差是否处于误差阈值范围内之后,还可以计算比例项,比例项就将第四阈值与当前时刻误差相乘,得到第七控制量,其中,第四阈值是一个不为零的常数,是一个比例系数,在得到第六控制量之后,更新第一控制量,得到新的第一控制量。

其中,第一设定值、第二设定值以及第三设定值可以是相同的设定值也可以是不同的,这里不做限定。第一阈值、第三阈值以及第四阈值也可以是相同的常数,也可以是不同的,这里也不做限定。

202、计算第一比例系数与上述第一控制量的积,得到第一结果。

其中,传统的PID算法是直接将第一控制量的值与输出值相加得到第二控制量,从而对被控制对象的控制,而本申请在第一控制量与输出值之前分别增加了一个比例系数,即先根据得到的第一控制量与第一比例系数计算得到第一结果。其中第一比例系数是根据被控制对象与比例系数的对应关系获取的上述被控制对象对应的控制量比例系数,可以是技术人员设置的与相关的产品对应的比例系数,其中比例系数为小于或等于1的正数,这里不做限定。

203、计算第二比例系数与上述输出值的积,得到第二结果。

在一种可能的实现方式中,根据被控制对象与比例系数的对应关系获取的上述被控制对象对应的输出值比例系数,得到第二比例系数,其中第二比例系数为小于或等于1的正数,上述第一比例系数与第二比例系数可以相同也可以不同,第一比例系数与第二比例系数的和可以为1也可以不为1,这里不做限定。计算该输出值与第二比例系数的基得到第二结果,将第一结果和第二结果之和作为被控制对象下一时刻需要调整到的值。

204、计算上述第一结果与上述第二结果的和,得到第二控制量。

在一种可能的实现方式中,计算上述第一结果和上述第二结果的和,得到第二控制量,将第二控制量作为当前时刻被控制对象需要输出至的值,生成控制指令,由处理器发送至被控制对象,以便于被控制对象根据控制指令中的第二控制量调整参数的值。

205、根据上述第二控制量生成控制指令。

在一种可能的实现方式中,处理器在得到计算结果之后,生成一个用于发送至被控制对象的控制指令,其中控制指令包括上述第二控制量,即在被控制对象接收到控制指令后,根据控制指令中的第二控制量与当前时刻的输出值比较,确定调整方向,并进行调整。

例如,当前时刻在电路中电机的转速为800转每分钟,而输入值为1000转每分钟,处理器在根据误差计算出第二控制量为900转每分钟后,电机接收到处理器发送的控制指令,将电机的转速上调制900转每分钟。

在本申请实施例中,通过判断误差是否处于误差阈值范围内,该误差为输入值与输出值之间的差值,上述输入值为被控制对象的参数的阈值,上述输出值为上述参数在当前时刻的值。在判断出误差处于误差阈值范围内的情况下,获取被控制对象对应的第一设定值,根据第一设定值生成控制指令,并向被控制对象发送该控制指令,该控制指令用于调整参数的值。通过判断误差的范围可以更精准的对参数进行精准调节,根据获取的设定值对当前误差进行计算,能够对实际启动阶段速度或者温度参数进行微调,可以解决PID算法在实际运用中启动阶段速度或温度值会出现超调震荡的问题,能够提升控制稳定性,提高控制的效率。

请参阅图3,图3是本申请实施例提供的一种数据处理方法的应用场景图。如图3上述,该图以直流低压电机速度控制为例进行讲解,该方法可以但不限于应用直流低压电机速度,还可以应用于交流电机、高压直流电机、高压交流电机,以及恒温调节电路等等。

如图3所示,图中包含三个部分,图3仅为可以实现的一种电路结构,可以但不限于如图3所示的电路结构。31为电路中的电机,电机的转速为本申请实施例中的参数,33为处理器部分为微处理器MCU1,32为电机速度检测电路,可以但不限于包含一个或多个霍尔传感器或者光栅等器件。

硬件电路根据当前时刻电机的速度输出不同的脉冲宽度,并输入到微处理器的MCU1的2脚,MCU1检测2脚的脉冲宽度并得到当前时刻电机实际的速度Actualspeed,上述微处理器MCU1根据电机设定速度(Setspeed)和当前时刻实际的速度(Actualspeed)的差值得出误差e(t),e(t)=Setspeed–Actualspeed。

可选地,在获取到实际电机的转速后,可对电机的速度进行滤波处理,得到更精确的速度,

在一种可能的实现方式中,在获取到第一设定值后,计算上述误差的微分项,即误差的变化速率可以用斜率来表示,在曲线中,纵坐标为误差,横坐标为时间,若当前时刻的误差用e(t)表示,则该误差在当前时刻的变化速率为e(t)-e(t-1)/t-(t-1)=e(t)-e(t-1),即用当前时刻的误差减去上一时刻的误差,得到当前变化速率。

具体地,根据上一时刻的速度(Lastactualspeed)和当前时刻的实际速度(Actualspeed)可以得到误差在当前时刻的变化速率,e(t)-e(t-1)/t-(t-1),即上一时刻的误差e(t-1)=Setspeed–LastActualspeed与当前时刻的误差之差e(t)=Setspeed–Actualspeed,则误差的变化速率E_D=e(t)-e(t-1)=Setspeed–Actualspeed-(Setspeed–LastActualspeed)=LastActualspeed–Actualspeed。需要说明的是,当上述e(t)处于误差阈值范围内才计算当前误差的微分项,而当e(t)不处于误差阈值范围内的情况下,则确定当前微分项的值为0,不影响积分项和比例项的计算。

在一种可能的实现方式中,在误差e(t)处于上述误差阈值范围内的情况下,如-300<e(t)<300的情况下,计算出当前变化速率为e(t)-e(t-1),在PID算法中,将上述变化速率与第一阈值,即微分阈值相乘作为误差的变化趋势,以微分阈值D为例,则变化趋势为D[e(t)-e(t-1)],可以以变化趋势对应值与0的关系来代表变化趋势是上升趋势还是下降趋势。

获取第一阈值D,在获取到第一阈值后,计算误差的变化趋势值,P_D=D[e(t)-e(t-1)],此时P_D误差的变化趋势。进一步地,可以获取上述误差的上一变化趋势Last_P_D,获取人为设定的第一设定值以及第二设定值,根据第二设定值和上述上一变化趋势对应值的积,得到第四控制量。这里以第一设定值为1/4,第二设定值为3/4为例,P_D=1/4P_D+3/4Last_P_D,则此时P_D的值表示第一控制值,第二控制值为输出值与上述第一控制量的值之和。若在判断出上述误差不处于误差阈值范围内的情况下,P_D=0,并通过积分项和比例项更新第一控制量的值。

在得到上述结果的基础上,还可以计算误差的积分项,其中,获取第一累积误差,上述第一累积误差为上述当前时刻之前所有时刻的误差之和,判断上述误差是否小于第二阈值,在判断出上述误差小于第二阈值的情况下,计算上述误差与上述第一累积误差之和,得到第二累积误差,即if(e(t)<0);E_M+=e(t);其中E_M得到的结果为第二累积误差,并根据计算第二累积误差和第三阈值的积,得到第五控制量P_I=I*E_M,其中第三阈值为I。并求和更新第一控制量。在判断出上述误差大于或等于上述第二阈值的情况下,计算上述误差与上述第三设定值的乘积与上述第一累积误差之和,得到第三累积误差,以该第三设定值为2为例,E_M+=(2*e(t));P_I=I*E_M。此时P_I的值为上述第六控制量,并根据第五控制量更新上述第一控制量。

其中,在上述微分和积分计算结果的基础上可以根据误差可以直接得到比例项的值:P_P=P*e(t)(P为第四阈值,即为比例系数)。

在计算第一控制量与上述输出值的和,得到第二控制量时,若包含上述微分项和积分项以及比例项,则第一控制量的值为P_O=P_P+P_I+P_D;第二控制量为MO_OUT=1/4MO_OUT+3/4P_O,其中,1/4为第二比例系数的示例,3/4为第一比例系数的示例,具体的值这里不做限定。该第二控制量用于生成控制指令调整电机的转速,即根据MO_OUT的值控制PWM占空比,从而控制电机的转速。

请参阅图4,图4是本申请实施例提供的一种数据处理装置的结构示意图。如图4所示,该数据处理装置4000包括:

第一判断单元401,用于判断误差是否处于误差阈值范围内,上述误差为输入值与输出值之间的差值,上述输入值为被控制对象的参数的阈值,上述输出值为上述参数在当前时刻的值;

第一获取单元402,用于在判断出上述误差处于上述误差阈值范围内的情况下,根据被控制对象与设定值的映射关系获取上述被控制对象对应的第一设定值,上述第一设定值为上述被控制对象当前时刻对应的微分设定值;

生成单元403,用于根据上述第一设定值生成控制指令;

发送单元404,用于向上述被控制对象发送上述控制指令,上述控制指令用于调整上述参数的值。

在一种可能的实现方式中,上述生成单元403,具体用于:

根据上述第一设定值计算第一控制量;

计算第一比例系数与上述第一控制量的积,得到第一结果,上述第一比例系数为根据被控制对象与比例系数的对应关系获取的上述被控制对象对应的控制量比例系数;

计算第二比例系数与上述输出值的积,得到第二结果,上述第二比例系数为根据上述对应关系获取的上述被控对象对应的输出值比例系数;

计算上述第一结果与上述第二结果的和,得到第二控制量;

根据上述第二控制量生成控制指令。

在一种可能的实现方式中,上述生成单元403,具体用于:

确定上述误差的当前变化速率;

根据上述当前变化速率和第一阈值确定上述误差的变化趋势,上述第一阈值为上述误差对应的微分阈值;

计算上述第一设定值与上述变化趋势对应值的积,得到第三控制量;

根据上述第三控制量确定第一控制量。

在一种可能的实现方式中,上述生成单元403,具体用于:

获取上述误差的上一变化趋势,上述上一变化趋势为上一时刻的变化趋势;

根据上述映射关系获取上述被控制对象对应的第二设定值,上述第二设定值为上述被控制对象上一时刻对应的微分设定值;

计算上述第二设定值和上述上一变化趋势对应值的积,得到第四控制量;

根据上述第三控制量与上述第四控制量确定第一控制量。

在一种可能的实现方式中,上述生成单元403,具体用于:

获取第一累积误差,上述第一累积误差为上述当前时刻之前所有时刻的误差之和;

判断上述误差是否小于第二阈值;

在判断出上述误差小于第二阈值的情况下,计算上述误差与上述第一累积误差之和,得到第二累积误差;

计算上述第二累积误差和第三阈值的积,得到第五控制量,上述第三阈值为上述误差对应的积分阈值;

根据上述第三控制量、上述第四控制量以及上述第五控制量确定第一控制量。

在一种可能的实现方式中,上述生成单元403,还用于:

在判断出上述误差大于或等于上述第二阈值的情况下,根据上述映射关系获取上述被控制对象对应的第三设定值,上述第三设定值为上述被控制对象对应的积分设定值;

计算上述误差与上述第三设定值的乘积与上述第一累积误差之和,得到第三累积误差;

计算上述第三累积误差和上述第三阈值的积,得到第六控制量;

根据上述第三控制量、上述第四控制量以及上述第六控制量确定第一控制量。

在一种可能的实现方式中,上述生成单元403,具体用于:

计算上述误差与第四阈值的积,得到第七控制量,上述第四阈值为上述误差对应的比例阈值;

根据上述第三控制量、上述第四控制量、上述第五控制量以及上述第七控制量确定第一控制量。

在本申请实施例中,通过判断误差是否处于误差阈值范围内,该误差为输入值与输出值之间的差值,上述输入值为被控制对象的参数的阈值,上述输出值为上述参数在当前时刻的值。在判断出误差处于误差阈值范围内的情况下,获取被控制对象对应的第一设定值,根据第一设定值生成控制指令,并向被控制对象发送该控制指令,该控制指令用于调整参数的值。通过判断误差的范围可以更精准的对参数进行精准调节,根据获取的设定值对当前误差进行计算,能够对实际启动阶段速度或者温度参数进行微调,可以解决PID算法在实际运用中启动阶段速度或温度值会出现超调震荡的问题,能够提升控制稳定性,提高控制的效率。

可以理解的是,本申请实施例的数据处理装置的第一判断单元401、第一获取单元402、生成单元403、发送单元404的功能可以根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。

请参阅图5,图5是本申请实施例提供的电子设备的结构示意图。如图5所示,该电子设备5000包括:一个或多个处理器501、输入设备502、输出设备503、存储器504。上述处理器501、输入设备502、输出设备503、以及存储器504通过总线连接。输入设备502用于接收数据,输出设备503用于发送数据。存储器504用于存储计算机程序,该计算机程序包括程序指令,处理器501用于执行存储器504存储的程序指令,其中,处理器501被配置用于调用程序指令执行以下步骤:

判断误差是否处于误差阈值范围内,上述误差为输入值与输出值之间的差值,上述输入值为被控制对象的参数的阈值,上述输出值为上述参数在当前时刻的值;

在判断出上述误差处于上述误差阈值范围内的情况下,根据被控制对象与设定值的映射关系获取上述被控制对象对应的第一设定值,上述第一设定值为上述被控制对象的当前时刻对应的微分设定值;

根据上述第一设定值生成控制指令;

上述处理器501控制输出设备503向上述被控制对象发送上述控制指令,上述控制指令用于调整上述参数的值。

在一种可能的实现方式中,上述处理器501根据上述第一设定值生成控制指令,包括:

根据上述第一设定值计算第一控制量;

计算第一比例系数与上述第一控制量的积,得到第一结果,上述第一比例系数为根据被控制对象与比例系数的对应关系获取的上述被控制对象对应的控制量比例系数;

计算第二比例系数与上述输出值的积,得到第二结果,上述第二比例系数为根据上述对应关系获取的上述被控对象对应的输出值比例系数;

计算上述第一结果与上述第二结果的和,得到第二控制量;

根据上述第二控制量生成控制指令。

在一种可能的实现方式中,上述处理器501根据上述第一设定值计算第一控制量包括:

确定上述误差的当前变化速率;

根据上述当前变化速率和第一阈值确定上述误差的变化趋势,上述第一阈值为上述误差对应的微分阈值;

计算上述第一设定值与上述变化趋势对应值的积,得到第三控制量;

根据上述第三控制量确定第一控制量。

在一种可能的实现方式中,上述处理器501根据上述第三控制量确定第一控制量,包括:

获取上述误差的上一变化趋势,上述上一变化趋势为上一时刻的变化趋势;

根据上述映射关系获取上述被控制对象对应的第二设定值,上述第二设定值为上述被控制对象上一时刻对应的微分设定值;

计算上述第二设定值和上述上一变化趋势对应值的积,得到第四控制量;

根据上述第三控制量与上述第四控制量确定第一控制量。

在一种可能的实现方式中,上述处理器501根据上述第三控制量与上述第四控制量确定第一控制量,包括:

获取第一累积误差,上述第一累积误差为上述当前时刻之前所有时刻的误差之和;

判断上述误差是否小于第二阈值;

在判断出上述误差小于第二阈值的情况下,计算上述误差与上述第一累积误差之和,得到第二累积误差;

计算上述第二累积误差和第三阈值的积,得到第五控制量,上述第三阈值为上述误差对应的积分阈值;

根据上述第三控制量、上述第四控制量以及上述第五控制量确定第一控制量。

在一种可能的实现方式中,上述处理器501根据上述第三控制量与上述第四控制量确定第一控制量,还包括:

在判断出上述误差大于或等于上述第二阈值的情况下,根据上述映射关系获取上述被控制对象对应的第三设定值,上述第三设定值为上述被控制对象对应的积分设定值;

计算上述误差与上述第三设定值的乘积与上述第一累积误差之和,得到第三累积误差;

计算上述第三累积误差和上述第三阈值的积,得到第六控制量;

根据上述第三控制量、上述第四控制量以及上述第六控制量确定第一控制量。

在一种可能的实现方式中,上述处理器501根据上述第三控制量、上述第四控制量以及上述第五控制量确定第一控制量,包括:

计算上述误差与第四阈值的积,得到第七控制量,上述第四阈值为上述误差对应的比例阈值;

根据上述第三控制量、上述第四控制量、上述第五控制量以及上述第七控制量确定第一控制量。

应当理解,在一些可行的实施方式中,上述处理器501可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

该存储器504可以包括只读存储器和随机存取存储器,并向处理器501提供指令和数据。存储器504的一部分还可以包括非易失性随机存取存储器。例如,存储器504还可以存储设备类型的信息。

具体实现中,上述信息处理装置可通过其内置的各个功能模块执行如上述图1、图2以及图3中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。

在本申请实施例中,通过判断误差是否处于误差阈值范围内,该误差为输入值与输出值之间的差值,上述输入值为被控制对象的参数的阈值,上述输出值为上述参数在当前时刻的值。在判断出误差处于误差阈值范围内的情况下,获取被控制对象对应的第一设定值,根据第一设定值生成控制指令,并向被控制对象发送该控制指令,该控制指令用于调整参数的值。通过判断误差的范围可以更精准的对参数进行精准调节,根据获取的设定值对当前误差进行计算,能够对实际启动阶段速度或者温度参数进行微调,可以解决PID算法在实际运用中启动阶段速度或温度值会出现超调震荡的问题,能够提升控制稳定性,提高控制的效率。

上述计算机可读存储介质可以是前述任一实施例提供的任务处理装置或者上述信息处理装置的内部存储单元,例如信息处理装置的硬盘或内存。该计算机可读存储介质也可以是该信息处理装置的外部存储设备,例如该信息处理装置上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flashcard)等。上述计算机可读存储介质还可以包括磁碟、光盘、只读存储记忆体(read-onlymemory,ROM)或随机存储记忆体(random access memory,RAM)等。进一步地,该计算机可读存储介质还可以既包括该信息处理装置的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该信息处理装置所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

本发明的权利要求书和说明书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

21页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于改进PI模型的压电驱动器迟滞建模及前馈控制方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!