使用Arduino、NeoGPS和MPU6050,我在SD卡上记录了一些数据。
在Matlab上,我正在将MPU6050的加成从字节值转换为m/s^2。
我有一个土木工程师的背景,所以我不是很实际的编码。
我想知道是否存在更有效的解决方案,特别是使用索引?
这里是我的哑代码
%Open the file
filename= uigetfile ('.csv');
fileID = fopen (filename);
logmpu6050 =csvread(filename);
fclose (fileID);
%Converting acceleration from Byte to m/s^2
[ax,ay,az]=convms(logmpu6050);
%Replacing the old accelaration values with the new
cat1=logmpu6050(:,1:8);
cat2=cat(2,ax,ay,az);
cat3=logmpu6050(:,13:15);
newlogmpu6050= cat(2,cat1,cat2,cat3); 永远感谢你的耐心!
发布于 2017-05-17 15:50:01
由于ax, ay, az在中间连接,它破坏了用于索引到logmpu6050的流程,因此不能完全使用索引来创建矩阵。
但是,如果要在一行中执行此操作,则可以执行以下操作:
newlogmpu6050 = [logmpu6050(:,1:8) ax ay az logmpu6050(:,13:15)];这仍然执行所需的级联,但您并不是不必要地调用cat,在我看来,这看起来更整洁。
https://stackoverflow.com/questions/44029070
复制相似问题