clc
clear
close all
sum=0;
H0=input("输入垂直距离,单位mm");
L0=input("输入水平距离,单位mm");
N0=input("输入水平距离,数据个数");
a(1)=atan(H0/L0);
b(1)=a(1)*180/3.14159
disp(a)
for i=2:N0
sum=sum+a(i-1);
a(i)=atan((i)*H0/L0)-sum;
b(i)=a(i)*180/3.14159;
end
disp(a);
disp(b);

2021-09-19matlab距离角度代码,俯仰扫描_matlab

因为俯仰中,放激光头的步进电机,如果想目标H面上每次扫描距离相等,必须旋转不一样的角度。这个和XY平面二维机不一样。

这个俯仰,如果想扫描距离相等,必须每次电机转动角度不一样。

这个代码就是用来计算这个数的

其中b是角度

a是弧度单位。

将数据计算之后,放到单片机的数组中。

每次取数据出来扫描角度就行了。

但是如果数组太多数据,那么单片机可能不够,需要加外置芯片,比如那种屏幕字母需要一个W25Q16之类的芯片存储字库一样。