Arduino与树莓派结合两大使用场景

一直想把手里的Arduino和Raspberry Pi结合起来产生更大的能量,现将两者合在一起的两大场景整理如下:

Arduino与树莓派结合两大使用场景

1、Raspberry Pi做上位机控制Arduino

目的是希望Arduino直接与Raspberry Pi连接,SSH控制Raspberry Pi并在其上边编程,上传至Arduino,从而省去电脑一直拖着Arduino的麻烦。目前Arduino已有适配Raspberry Pi的版本,可直接执行以下程序安装:

sudo apt-get install arduino

安装完毕后,可在RasPi的图形环境下打开Arduino程序(此过程也遇到了很多难缠的问题,可参考此贴)。当然,我们想要的并非是在GUI打开的Arduino,而是通过SSH也能打开的Arduino IDE。为达到此目的,本文以在Mac系统为例进行讲解:

原理:SSH有一个特别之处在于可以进行X11Forwarding处理,在Client上通过SSH的X11Forwarding可以实现远程GUI程序的启动和执行;
第一步:在Mac上安装XQuartz; //SSH把远程数据转发到本地xserver上渲染,本地须有xserver环境
第二步:修改Pi上的SSH配置文件(sudo nano /etc/ssh/sshd_config),配置X11Forwarding yes;
第三步:SSH连接语句修改如下:ssh -X pi@x.x.x.x

OK,接着,把你的Arduino的USB口插到RasPi上,在SSH窗口输入命令:arduino,如无其他配置问题,你应该已经看到Arduino IDE界面了。剩下的自行发挥吧。

2、Arduino与Raspberry Pi通信

目的是为了将Arduino与各类传感器的结果通过Raspberry Pi进行存储、计算和网络传输。该部分的应用已经在之前的文章《空气粉尘浓度检测》中有过详细阐述,可移步此处。

如果希望利用其他串口方式进行通信,可参考如下文章:

http://www.eeboard.com/bbs/thread-16429-1-1.html
http://www.doctormonk.com/2012/04/raspberry-pi-and-arduino.html
http://sullerton.com/2012/11/raspberrypi-and-arduino-playing-nicely-together/