matlab连接板,怎样用Matlab连接控制Arduino开发板

在本篇文章中,我们将新建一个简单的MATLAB m文件来与Arduino开发板进行通信。 MATLAB用于Arduino硬件的支持包允许您使用MATLAB通过USB电缆与该开发板通信。支持包适用于32位和64位Windows系统、64位Mac OS和64位Linux。

安装包

您可以通过MATLAB轻松安装软件包。

首先,启动MATLAB,然后单击Add-Ons下拉菜单。在下拉菜单中,单击“Get Hardware Support Packages”。它将启动包安装程序窗口。

52f10ccd9bac9d7299beb58f93885e4d.gif

matlab1.png (47.51 KB, 下载次数: 134)

2018-8-14 08:54 上传

选择Install from internet,然后选择Next。

52f10ccd9bac9d7299beb58f93885e4d.gif

matlab2.png (39.6 KB, 下载次数: 129)

2018-8-14 08:53 上传

在下一个窗口中,您将看到MATLAB和Simulink的所有可用包。选择Arduino软件包,然后选中显示的所有软件包,单击“Next”继续安装。请注意,这张图片显示我正在重新安装Arduino软件包,因为我之前已经安装过它们。

52f10ccd9bac9d7299beb58f93885e4d.gif

matlab3.png (84.26 KB, 下载次数: 136)

2018-8-14 08:54 上传

接下来,安装程序将要求您登录MathWorks帐户。如果您没有帐户,可以在安装期间创建一个帐户。在下一个界面上接受许可协议,然后继续下载软件包。现在您需要等待MATLAB下载并安装所有必需的软件包。

测试

安装软件包后,将Arduino开发板连接到PC并在MATLAB命令窗口中键入以下命令,

>> a = arduino()复制代码

如果您的PC连接了多个Arduino,则必须指定要与之通信的开发板类型:

>> a = arduino(‘com3’, ‘uno’)复制代码

然后MATLAB将尝试与您的电路板通信。如果成功,MATLAB将显示连接到PC的Arduino开发板的属性,如下所示:

52f10ccd9bac9d7299beb58f93885e4d.gif

matlab4.png (48.82 KB, 下载次数: 135)

2018-8-14 08:53 上传

此信息显示电路板所连接的端口、Arduino电路板的型号以及开发板可用的引脚和库。

在工作区中,您将看到一个变量a,它是MATLAB Arduino对象。运行以下命令以清除此对象。

>> clear a复制代码

此命令将从工作区中删除对象a。

接线图

如下所示连接电路图以完成以下两个示例:

52f10ccd9bac9d7299beb58f93885e4d.gif

matlab_5.png (131.22 KB, 下载次数: 130)

2018-8-14 08:53 上传

它看起来类似:

52f10ccd9bac9d7299beb58f93885e4d.gif

matlab_6.png (229.61 KB, 下载次数: 140)

2018-8-14 08:53 上传

实验1:使用MATLAB进行数字I / O

在这个例子中,我们将使用MATLAB实现LED闪烁。

所需的硬件

●    Arduino Uno开发板

●    1k欧姆电阻器

●    用于arduino的USB线

●    LED指示灯

代码

启动MATLAB并创建一个m文件并编写以下代码:

% create an arduino object

a = arduino('com3', 'uno');

% start the loop to blink led for 10 seconds

for i = 1:10

writeDigitalPin(a, 'D11', 1);

pause(0.5);

writeDigitalPin(a, 'D11', 0);

pause(0.5);

end

% end communication with arduino

clear a复制代码

确保MATLAB中没有存储先前的Arduino对象,否则MATLAB将显示错误消息。保存文件并运行它。这将使得LED每1秒闪烁一次。

步骤

●    启动MATLAB并安装Arduino硬件支持包(如果尚未安装)。

●    将您的开发板连接到PC并测试它是否与MATLAB一起正常工作。

●    按照电路图所示连接电路,并通过电阻将引脚11连接到LED引脚的一端。

●    将LED的另一端连接到arduino板上的接地引脚。

●    写下您的m文件并保存。运行您的文件,MATLAB会将该文件烧录到您的开发板上。

●    LED指示灯开始闪烁。

实验2:模拟信号控制

在这个例子中,我们将使用脉冲宽度调制信号来改变LED的亮度。程序通过将引脚提供的最大和最小电压除以我们将达到led的最大亮度的迭代次数来计算brightness_step。

所需的硬件

●    Arduino Uno开发板

●    1k欧姆电阻器

●    用于arduino的USB线

●    LED指示灯

如上图所示连接电路。

代码

% create an arduino object

a = arduino('com3', 'uno');

% calculate a brightness step

brightness_step = (5-0)/20;

% start a loop to brighten up the led

for i = 1:20

writePWMVoltage(a, 'D11', i*brightness_step);

pause(0.1)

end

% start a loop to turn off the led in steps so that it looks like

% led is fading

for i = 1:20;

writePWMVoltage(a, 'D11', 5-i*brightness_step);

pause(0.1)

end

% end communication with arduino

clear a复制代码

步骤

●    启动MATLAB并安装Arduino硬件支持包(如果尚未安装)。

●    将您的开发板与PC连接,并测试它是否与MATLAB一起正常工作。

●    按电路连接图所示连接电路,通过电阻将引脚11连接到LED引脚的一端。

●    将LED的另一端连接到arduino板上的接地引脚。

●    写下您的m文件并保存。运行您的文件,MATLAB会将该文件烧录到您的开发板上。

●    LED指示灯开始变亮,然后变暗。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值