控制系统的状态机实现

多传感器融合的状态机实现方法

状态机模型的简介和定义

  1. 状态机是有限状态自动机的简称,是现实事物运行规则抽象而成的一个数学模型。

先来解释什么是“状态”。现实事物是有不同状态的,例如一个LED等,就有 亮 和 灭两种状态。我们通常所说的状态机是有限状态机,也就是被描述的事物的状态的数量是有限个,例如LED灯的状态就是两个 亮和 灭。

状态机,也就是 State Machine ,不是指一台实际机器,而是指一个数学模型。说白了,一般就是指一张状态转换图。
2. 状态机的四种关键词
State ,状态。一个状态机至少要包含两个状态。例如上面灯泡的例子,有 灯泡亮和 灯泡灭两个状态。

Event ,事件。事件就是执行某个操作的触发条件或者口令。对于灯泡,“打开开关”就是一个事件。

Action ,动作。事件发生以后要执行动作。例如事件是“打开开关”,动作是“开灯”。编程的时候,一个 Action 一般就对应一个函数。

Transition ,变换。也就是从一个状态变化为另一个状态。例如“开灯过程”就是一个变换。
3.说人话环节
状态机就是一个系统化的执行工作的流程 比如一天的工作包含了很多部分 A执行完要去执行B但是A发生过程中出现了异常那么下一步不能去做B而要去做C,如此复杂混乱的过程如何能够有效有规律周密的执行呢,这就必须要使用状态机模型来进行控制,一个状态必须包含此时的状态信息和下一个状态的有效信息

在无人机控制系统中用到的状态机的实现方法![在这里插入图片描述](https://img-blog.csdnimg.cn/2be985640e8a493aa76f38bfedf4ac34在这里插入图片描述

首先无人机控制系统的状态机实现目的主要是飞行器的飞行动作 比如欧拉角期望值改变成什么角度用来完成一个掉头动作等。
在第二版本的程序优化中,对于多传感器融合的部分也采用了状态机来进行处理。
为了同时保证上位机的数据稳定性和下位机的数据高灵敏度的特性,在融合的过程也结合了一部分冗余的思路,即下位机发的数据有更高的优先级,上位机发的数据有更高的可信度,在每读取三次下位位机数据后进行一次状态解算,得出状态机的一种状态,再基于下一次对上位机数据的读取得出一个状态机的状态,即可完成一个周期的状态解算,程序得到有效的控制。
既保证了有效性有保证了灵敏度。

猜你喜欢

转载自blog.csdn.net/qq_32464727/article/details/119850736