⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pidcallback.asv

📁 matlab 在pid领域的新的应用。用matlab环境实现pid控制。
💻 ASV
字号:
function pidcallback(obj, event)
global p p2a p2b i i2a i2b d d2a d2b p2 i2 d2 time2 count2 s data flagopen ;


i=1;
j=1;
k=1;
n=1;
data = fread(s,count2,'uint16');%这个地方应该怎么定义呢
fwrite(s,[4 p2a p2b i2a i2b d2a d2b time2],'uint8'); 
fclose(s);
delete(s);
clear s;
datax(1) = 0 ;
datay(1) = 0 ;
error(1) = 0 ;
length(data)
%h1=findobj(0,'tag','axes1')
for i=1:length(data)
    if mod(i,4)==2

      datax(j)=(data(i)*256*256+data(i-1))/1000; 
        j=j+1;
    elseif mod(i,4)==0
        datay(k)=(data(i)*256*256+data(i-1))/1000;
         k=k+1;
        error(n)=(datax(j-1)-datay(k-1));
        n=n+1;
    end
end
length(datax)
m=0:time2*0.4096:(length(datax)-1)*time2*0.4096;

%h=plot(h1,m,datay,'r','linewidth',2);
hold on ;
h=plot(m,datay,'r','linewidth',2);
x=get(h,'xdata');
y=get(h,'ydata');
imin=find(min(y)==y);
imax=find(max(y)==y);
text(x(imin(1)),y(imin(1)),strcat('\leftarrow最小值=',num2str(y(imin(1)))),'fontsize',9)
text(x(imax(1)),y(imax(1)),strcat('\leftarrow最大值=',num2str(y(imax(1)))),'fontsize',9)
hold on;
plot(m,datax,'b','linewidth',2);
hold on;
xlabel('时间(ms)');
ylabel('位置(pi)');
title('位置跟踪曲线');

clear data;
clear datax;
clear datay;

% fwrite(s,[4 p2a p2b i2a i2b d2a d2b time2],'uint8'); 
% fclose(s);
% delete(s);
% clear s;


flagopen=1;
%receive=fread(s);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -