美文网首页全栈工程师修炼玩转树莓派树莓派
树莓派远程及文件传输:以呼吸参数测量及获取为例

树莓派远程及文件传输:以呼吸参数测量及获取为例

作者: 代码咖啡 | 来源:发表于2016-08-04 16:03 被阅读913次

    一、所需设备

    1. 野生的树莓派一只
    2. 萌萌哒windows 10台式机一个
    3. 装有raspbian系统的胖胖的4G SD卡一张
    4. 名字有点长 的Micro HDMI USB充电线一条
    5. 输出5V = 2A充电头(装逼名称:变压器)一枚
    6. 另加一连串乱七八糟的硬件电路板导联线
    7. 一个被笔者落下的显示屏(可以直接使用台式机的显示屏)

    二、设备图片

    野生的树莓派 翻个个儿的野生的树莓派 萌萌哒windows 10台式机 肥肥的4G SD卡 身姿妖娆的Micro HDMI USB充电线 学名“变压器”的充电头 一堆不知名的硬件 我们的主角:气流感应器

    三、树莓派知识储备

    戳这里==> 树莓派菜鸟入门攻略

    四、组装

    完成图如下:


    组装完成

    从图中我们可以看到,我们主要做的工作就是:

    • 将Rj-45水晶头网线插到树莓派的以太网接口中
    • 将两块硬件电路板按照引脚的位置插到树莓派上
    • 接通树莓派的电源
    • 插上装有raspbian操作系统的SD卡

    等待片刻,待我们看到指示灯如下图亮起来,我们的树莓派硬件层已经组装完成:

    四盏指示灯(橙黄、闪绿、绿、红)全部亮起,说明我们的树莓派已组装完成

    五、 树莓派网络配置

    在组装完树莓派以后,我们需要让我们的树莓派编程“中央空调”,即:让其他电脑都可以通过远程/局域网来访问控制我们的树莓派我们的树莓派。

    首先,我们需要给我们的树莓派接上显示屏,方便我们对树莓派进行网络参数配置。

    raspberian系统GUI显示屏

    然后,打开命令行,使用指令修改或获取我们树莓派的IP地址。

    • 打开命令行
    raspberian命令行 raspberian命令行
    • 通过命令行,进入/etc/network文件夹
    进入/etc/network文件夹 网络参数配置的文件夹——/etc/network文件夹
    • 对interfaces文件进行查看编辑
    编辑interfaces文件(管理员身份) interfases文件内容

    因为我们通过rj-45接头的网线连接树莓派,所以我们修改宽带信息,即eth0参数下的ip地址等信息:

    auto lo
    iface lo inet loopback
    
    auto eth0
    iface eth0 inet static
    address 172.17.64.197
    network 255.255.255.0
    gateway 172.17.64.1
    

    上述代码为静态IP配置,其好处是:当树莓派固定在指定局域网中使用,我们无需每次使用树莓派都查看其IP地址信息;其坏处是:当网络变掉时,需要重新接上树莓派的HDMI视频接口连接上显示屏,然后通过USB连接鼠标键盘,在延时性超强的图形化界面下重新配置IP地址,笔者表示已经累死在插拔显示屏的路上。。。

    下面,我们来看看动态IP配置的代码:

    auto lo
    iface lo inet loopback
    
    auto eth0
    iface eth0 inet dhcp
    

    好处是:适用于经常变化的网络环境下,只需要通过访问路由器的设备IP列表即可查看树莓派的IP地址;其坏处是:每次都要查看树莓派的IP地址。

    最后,萌萌哒windows 10台式机登场,连接树莓派所在的局域网,使用ping命令验证网络配置是否成功。

    其指令为:

    ping [ip地址]
    

    如我们的IP地址为:

    172.17.64.197
    

    我们只要输入一下代码即可:

    ping 172.17.64.197
    

    若网络ping不通,我们需要检查网络问题,因该问题不属于本教程范围,大家可以查看网上相关资料解决。

    六、 让程序跑起来

    完成网络配置以后,我们就要开始实现远程访问并获取呼吸相关的数据了。

    我们可以使用ssh命令与树莓派建立连接,ssh配置参考:

    如何在Windows 10上启用SSH

    点击此处下载openssh

    ssh命令如下:

    ssh [用户名]@[IP地址或域名]
    

    按下enter键,命令行会提示输入密码。

    树莓派raspberian系统的用户及密码为:

    用户:pi
    密码:raspberry
    

    所以我们ssh远程操作指令如下:

    ~$ ssh pi@172.17.64.197
    pi@172.17.64.197's password: raspberry
    

    远程连接上我们的树莓派后,我们运行我们的python文件来获取呼吸的数据:

    pi@raspberry ~ $ sudo python ./iHealth/iHealth-python/getBreaths_send.py
    

    PS:因调试原因,我们将 getBreaths_send.py文件拷贝了一份并修改了其中的代码命名为zz_getBreaths_send.py,将其数据存入~/iHealth/iHealth-python/data-breath文件夹,产生数据文件的名称为:breath_年-月-日_时:分:秒.txt

    在我们点击enter键前,我们将与树莓派连接的气流感应器靠近鼻孔,自然的呼气:

    将气流感应器靠近鼻孔自然地呼吸

    随着程序的运行以及我们自然的呼吸,我们可以看到命令行出现如下图所示的数据:

    呼吸气流数据

    其显示的格式如下:

    {'breath': [气流大小]} [当前采样点标号]
    

    但是我们txt数据文件的数据存储格式为:

    呼吸数据存储内容

    七、 远程获取呼吸数据文件

    若远程获取呼吸数据的文件,我们需要用到scp的命令,scp的命令格式如下:

    scp [用户名]@[IP地址]:[文件路径]
    

    如我们需要获取树莓派的getBreath_send.py文件,我们需要使用如下指令代码:

    scp pi@172.17.64.197:~/iHealth/iHealth-python/data-breath/breath_2016-08-02_11\:19\:33.txt
    

    \:为转移字符,表示:

    当然我们的windows电脑是无法直接使用scp命令的,我们可以点击下面链接,直接下载winscp软件:
    点击下载winscp

    PS: winscp分为命令行和GUI两种模式,其中GUI使用与命令行类似,只要知道树莓派的用户名密码IP地址即可连接。

    到目前为止我们树莓派呼吸数据的提取教程结束了,希望可以给入门树莓派的同学们带来一些帮助。文章挺长的,感谢大家阅读!

    相关文章

      网友评论

      • b89cb4a6c56d:哥哥,我想知道乱七八糟的线都是什么线:persevere:

      本文标题:树莓派远程及文件传输:以呼吸参数测量及获取为例

      本文链接:https://www.haomeiwen.com/subject/vswcsttx.html