因为之前比较忙,近期开始更新全系列的matlab教程
从软件下载树莓派matlab的镜像,比较慢,可以直接从gthub下载,MAC下载比较快,windows的话可以使用谷歌浏览器下载,网速好点一般可以直接下载
更新:https://github.com/mathworks/Raspbian_OS_Setup/releases
新版matlab2020的镜像支持4B
Matlab与Raspberry 3B+
对于硬件树莓派就不多加赘述了,在这里主要是讲解Simulink对外部硬件的编程。笔者最早接触Matlab是从2012版开始,对于算法处理,目前个人觉得单从计算方面来说,Matlab很不错。下面进入正文。
1 硬软件基础
- Matlab 2019a
- 树莓派 3B+(新版matlab2020的镜像支持4B)
- 支持UVC的摄像头
2 镜像准备与安装
烧录镜像的步骤尽量在Matlab中进行,这样在后期连接时更方便一点,不用另外在镜像中另外安装Mathwork,首先,如下图,安装Simlink与Matlab对树莓派的附加功能
点击相应的补充包安装即可,在这里安装失败的原因大体有两个
- 网络原因
可以进入mathwork官网下载,然后按照解压后的文件中的readme.txt直接操作即可,也可以选择一个月黑风高的夜晚(咳~~~~) - 路径问题
整个matlab路径中含有中文字符,调换路径即可
在安装完成以后点击管理
然后按照提示操作即可,注意以下三点:
1)如果只打算使用树莓派作为算法承载的工具,做图像识别的话,强烈建议使用Mathwork自带的镜像,这样可以减小出错和调试的时间
2)镜像下载问题:网络不好的可以在下面的网站选择对应的版本下载(强烈建议在一个月黑风高的晚上下载,咳~~~~)https://github.com/mathworks/Raspbian_OS_Setup/releases
3)在这块注意一点,不一定要用官方镜像,也可以使用其他的镜像,但是需要安装matlab的补充包
连接好以后,可以在matlab中输入raspi 测试一下,如下图:
Simulink对硬件编程
在安装完成Simulink对树莓派的支持包后可以看到,Simulink中会增加针对树莓派的块。
1.编程
选择如下图两个块,设置的话直接默认就可以
导入Matlab fuction
在其中编程
function [r_out,g_out,b_out]=trackball(r_in,g_in,b_in,thresh_in)
%%get rgb color
r = r_in;
g = g_in;
b = b_in;
thresh = thresh_in;
%%calculate green
justgreen = g - r/2 - b/2;
bw = justgreen > thresh;
%% find center
[x,y] = find(bw);
xm = mean(x);
ym = mean(y);
%% creat the red dot
xx = max(1,xm-5):min(xm+5,size(bw,1));
yy = max(1,ym-5):min(ym+5,size(bw,2));
bwbw = zeros(size(bw),'uint8');
bwbw(xx,yy) = 255;
%% rgb out
r_out = uint8((r_in + bwbw));
g_out = uint8((g_in - bwbw));
b_out = uint8((b_in - bwbw));
其中thresh的值可以设为固定值30
2.下载
按下图点击option
``有如下设置即可:
将运行模式调为External,时间调为inf