Matlab通过串口通讯控制两个直流电机正转反转
% ReadUsbSerial
% 2018年1月29日% v1
% 2018年1月30日% v2 删除了fscanf(Obj1);太耗时间了。
clc;clear
delete(instrfindall)
TimeOut=1;
% Find a serial port object.
Obj1 = instrfind('Type', 'serial', 'Port','COM11','Timeout',TimeOut, 'Tag', '');
% Create the serial port object if it does not exist
% otherwise use the object that was found.
if isempty(Obj1)
Obj1 = serial('COM11','Timeout',TimeOut);
else
fclose(Obj1);
Obj1 = Obj1(1);
end
% Connect to instrument object, obj1.
fopen(Obj1);% Obj1
% Communicating with instrument object, obj1.
NumTime=5;
TXY=2*(rand(2,NumTime)-0.5)*1e3;%-10000到10000毫秒
TXY=round(TXY);%整数
DirectionPN=['N','P'];
set(Obj1,'timeout',10)
for NN=1:NumTime
pause(0.01)
TX=TXY(1,NN);
TY=TXY(2,NN);
TXStr=[DirectionPN(double(TX>=0)+1),'X',num2str(abs(TX))];
TYStr=[DirectionPN(double(TY>=0)+1),'Y',num2str(abs(TY))];
fprintf(Obj1, TYStr);%TY转动
pause(abs(TY*1E-3)+0.5)
TYStr
pause(0.01)
fprintf(Obj1, TXStr);%TX转动
pause(abs(TX*1E-3)+0.5)
TXStr
end
fclose(Obj1)
最后
以上就是优美歌曲最近收集整理的关于Matlab串口通讯控制直流电机的全部内容,更多相关Matlab串口通讯控制直流电机内容请搜索靠谱客的其他文章。
发表评论 取消回复