matlab如何用模拟输入解算姿态角

 时间:2024-10-19 17:38:32

matlab如何用模拟输入解算姿态角?下面和小编一起看看吧

工具/原料

电脑

方法/步骤

1、1:完成matlab的串口,并且实时通过波形显示数据2:添加RTT查看CPU使用率的扩展功能,MPU6050读取数据的优化

matlab如何用模拟输入解算姿态角

matlab如何用模拟输入解算姿态角

2、3:四元素表示的坐标变化,四元素与欧拉角的关系和Madgwick的IMUupdate算法4:飞控数据采集线程和数据处理线程的安排,类似于生产者与消费者的关系。

matlab如何用模拟输入解算姿态角

3、matlab串口初始化还是比较简单的,网上的资料也很多,这里就直接贴初始化代码了

matlab如何用模拟输入解算姿态角

4、matlab串口我们采用回调脑栲葱蛸函数,类似于中断方式哈,但是mtalb的串口十分的不好用哈,没有多线程,而我们在中断里面需要进行莆奶通氰波形显示,四元素旋转等各种数据操作,是需要花费点时间的,这就导致我们的数据平率不能很高。。当上传的速率达到100hz以后,就会出错了。。50hz也不稳定。。这个实在是有点。。。担心以后的系统辨识和惯性导航的数据处理了。。头疼。。。matlab采用符号‘!’为结束符,碰到这个符号matlab就会调用回调函数,中间的数据都是逗号隔开的,数据顺序一次为accex,accey,accez,temp,gyrox,gyroy,gyroz,cpu_major,q0,q1,q2,q3发送,数据通过sprintf进行格式化,然后通过rt_kprintf函数发送,

matlab如何用模拟输入解算姿态角

5、temp是MPU6050读出的温度数,cp掼鸿乡羰u_major是CPU使用率,q0,q1,q2,q3分别对应四元素的四个参数,q0是实数,其他分别醑穿哩侬对应i,j,k的参数。matlab数据处理:收到数据后,其实标准的处理方式是用matlab的regexp函数,用正则表达式将数据读取出来,我们没有用这个,上传数据格式我们自己可以控制,所以处理起来很简单,没必要用到复杂的正则表达式,而且正则表达式处理时间应该比我们自己简单的处理方法的时间要长,所以采用简单的处理方法。处理方法是先将数据中的空格去掉,然后去掉结束符感叹号,最后把数据中的间隔福逗号去掉,去掉后调用str2num函数将字符串转换为数字就行了。

matlab如何用模拟输入解算姿态角

matlab怎么运行代码 如何把matlab中的公式导入word中 手把手教你用matlab画一个“波形图” matlab中字母下标怎么打 matlab角度怎么表示
热门搜索
短发蛋卷头发型图片 图片转成pdf 图片搜人 手指画图片大全 没头脑和不高兴图片