建模
Simulink 建模简单可以描述为模块的拖拽与连线的过程。
我们需要从A1端口(分压线接入)读取分压信号,所以从库里拖入一个 Analog Input模块,并双击设置端口号为1,设置采样时间为 0.01 S。另外还需要输出到 PWM的第二个引脚( LED连接处),所以拖入一个 PWM 模块,并双击设置端口号为2。
为了简化整个下载过程,我们这里对信号不做任何算法处理,直接将两个模块连接起来,如下图。这也就意味着 LED 的亮度与光敏电阻状态直接相关。
图10 模型截图
编译下载
Simulink Support Package for Arduino Hardware支持几乎所有的 Arduino 型号。在点击红色方框的按钮编译下载之前,需要通过配置页面来指定当前所使用的 Arduino 板卡类型,如下图。
图11 设置Arduino板卡
确保 Arduino 与电脑相连,点击上图模型截图中红色方框的编译按钮,框图将会自动生成C/C++ 代码,并后台自动调用 Arduino IDE 进行编译下载到 Arduino板卡上去。
此时,你用手捂住光敏电阻,便会看到 LED 灯亮度的变化。
在线调试
对于 Arduino MEGA 2560等型号,还支持在线调试。在配置页面,除了选择型号外,如下图设置为 ‘External mode’。
图12 设置在线调试运行
点击图中的绿色仿真按钮。
图13 在线调试
此时,框图同样被生成代码并编译下载到 Arduino 上运行,同时 Simulink 模型运行,双击打开示波器 Scope 模块实时看到当前所读取的传感器信号。这个数据也可以保存下载,做后期传感器标定与分析。
图14 信号波形
传感器标定,也就是经常都需要将原始值进行线性或非线性缩放以及平移,得到有物理含义的数值,比如自定义的光照强度等级。如下图,中间接入一个简单的查表模块进行线性缩放。
评 论
请勿进行人身攻击,谩骂以及任何违法国家相关法律法规的言论。
正在加载评论...