罗兰在MATLAB的艺术

把想法变成MATLAB

请注意

罗兰在MATLAB的艺术已经存档,不会被更新。

通过电位器控制RGB LED使用Arduino和MATLAB

我想介绍一下本周的客座博客Ankit德赛。Ankit适合测试团队在MathWorks &测量。Ankit曾使用MATLAB对两台计算机之间的数据传输。在这篇文章中他将讨论使用MATLAB支持Arduino包。金宝app

Arduino快速增长为原型平台,学生、爱好者和工程师。的Arduino金宝app MATLAB支持包允许您使用Arduino电路板,例如UNO和Duemilanove,允许交互式开发和调试。MATL金宝appAB支持的支持包在所有平台上工作,不需要任何额外的工具箱。

Arduino金宝app使用MATLAB支持包串口接口在MATLAB和Arduino电路板进行交流沟通。

最近,我得到了我的手Arduino发明家工具包Sparkfun一起,Onomitra Ghosh决定建立一个使用装备和小项目Arduino金宝app MATLAB支持包。我决定开始一个简单的项目控制的颜色的RGB LED通过电位计。

整个项目分为三个阶段:

  1. 设置Arduino和案板
  2. 建立了MATLAB和支持包金宝app
  3. 编写MATLAB代码

内容

设置Arduino和案板

根据你工作的平台,Arduino的网站有一组详细的说明设置Arduino IDE和Arduino板连接。设置完成后,我曾在案板设置类似CIRC-08Sparkfun Arduino发明家的装备,除了我用RGB LED代替绿色领导因此代替使用销9——我使用针9、10和11所示

在这个阶段Arduino电路板和其他组件都准备好了。

建立了MATLAB和支持包金宝app

MATLAB支金宝app持包Arduino伴随着一个服务器程序adiosrv.pde在Arduino董事会,可以下载。一旦下载,adiosrv.pde威尔:

  1. 等待和倾听MATLAB命令
  2. 在接收MATLAB命令,执行并返回结果

执行的步骤/下载服务器程序写入Arduino电路板是如下:

  1. 打开Arduino IDE
  2. 选择adiosrv。pde文件通过文件>打开IDE中导航
  3. 点击上传按钮

我现在准备在MATLAB代码。

编写MATLAB代码

MATLAB支金宝app持Arduino包提供了一组很容易使用功能来执行基本的操作,比如模拟阅读,模拟,数字读和数字写。

为目的的这个例子中,我遵循以下顺序:

  1. 从模拟输入读取一个值销0,我连接电位计
  2. 计算强度R, G, B的颜色使得基于阅读的价值
  3. 编写计算R, G, B强度模拟输出针9、10和11所示
  4. 循环为预定的时间序列

MATLAB上述序列看起来像:

%连接向董事会= arduino (“COM8”);
a.pinMode(9,“输出”);a.pinMode(10,“输出”);a.pinMode(11,“输出”);
%从现在开始定时器抽搐;
而toc / 60 < 1%运行1分钟。%从模拟读取模拟输入销0%返回的值是0到1023之间sensorValue = a.analogRead (0);
%的电位计值从0到511,我们将消失了从红色到%绿色保持蓝色恒定0。如果0 < = sensorValue & & sensorValue < 512 greenIntensity =地板(sensorValue / 2.0);redIntensity = 255 - greenintensity;blueIntensity = 0;其他%电位计值从511年到1023年,我们将消退导致从%绿色蓝色保持红色恒定0。blueIntensity =地板(sensorValue / 2.0) - 256;greenIntensity = 255 - blueIntensity;redIntensity = 0;结束
%写强度模拟输出插脚a.analogWrite (9, redIntensity);greenIntensity a.analogWrite(10日);blueIntensity a.analogWrite(11日);结束
%关闭会话中删除(一个);清楚的;

结论

为什么,你可能会问,我需要MATLAB在Arduino IDE当我可以代码吗?答案很简单——交互式开发和调试能力。

在这个项目中工作的时候,有这么多例子我想看看返回的值电位计我把旋钮或快速设置LED的RGB值。使用Arduino IDE,我就更新了代码,重新编译它并上传代码向董事会之前我能看到更新的效果。MATLAB支持包,我可金宝app以只是动态调整的设置没有任何额外的步骤。

确保你检查网络研讨会:学习基本的机电一体化概念使用Arduino电路板和MATLAB,更多地了解模拟和数字I / O以及直流伺服和步进电机控制。

你/想用Arduino用于冷却项目?




使用MATLAB®7.13发表


评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。