为了能够很好的调节PID,我现学了matlab gui界面的设计,及实时曲线的绘制,能够很方便的调节PID。单片机可以把设定值和返回值通过232串口传输到上位机,上位机通过修改P I D 的参数也可以实时的传输给下位机。界面图如下:
1、pid.m文件部分重要程序如下
function pushbutton1_Callback(hObject, eventdata, handles)
global s;
s=serial('COM3');
set(s,'BaudRate',9600,'DataBit',8,'StopBits',1,'Parity','none','F lowControl','none');
s.InputBufferSize=1020;
s.OutputBufferSize=1024;
s.ReadAsyncMode='continuous';
s.BytesAvailableFcnMode='byte';
s.Timeout=0.2;
s.TimerPeriod=0.5;
s.TimerFcn=@instrcallback;
s.Terminator='CR';
warning off;
fopen(s);
function pushbutton2_Callback(hObject, eventdata, handles)
global s;
fclose(s);