树莓派网关 系统安装到环境搭建

4.1树莓派简介

树莓派(Raspberry Pi)是一款基于ARM的微型电脑主板,旨为学生编程教育而设计,别看其外表“娇小”,内“心”却很强大,视频、音频等 能通通皆有,可谓是“麻雀虽小,五脏俱全”。自问世以来,受众多计算机发烧友和创客的追捧,曾经一“派”难求。

树莓派(RaspberryPi)是尺寸仅有信用卡大小的一个小型电脑,您可以将树莓派连接电视、显示器、键盘鼠标等设备使用。

树莓派能替代日常桌面计算机的多种用途,包括文字处理、电子表格、媒体中心甚至是游戏。并且树莓派还可以播放高至1080p的高清视频。

本次设计使用的是树莓派4B(Raspberry Pi 4 Model B)。

树莓派(RaspberryPi)基金会发布了Raspberry Pi 4 Model B,这一代Raspberry Pi 4 Model B开发了3年的时间,内存(RAM)终于从万年不变的1GB升级为4GB,引入了USB 3.0,支持双屏4K输出,CPU和GPU的速度也更快,支持H.265 解码。具体来说,树莓派4的核心处理器(SoC)为博通BCM2711(四核1.5GHz, Cortex A72架构,树莓派3是四核A53),LPDDR4内存,由5V/3A USB-C供电或GPIO5V。

外围方面,支持双频Wi-Fi、蓝牙5.0、提供2个MicroHDMI 2.0接口(4K60FPS)、千兆网口、MIPIDSI接口、MIPICSI相机接口、立体声耳机接口、2个USB 3.0、2个USB 2.0,扩展接口依然是40针GPIO。

树莓派,英文名:“Raspberry Pi”,简写为RPi。它是一款基于ARM的微型电脑主板,SD/MicroSD卡为内存硬盘,卡片主板周围有1/2/4个USB接口和一个10/100 以太网接口(A型没有网口),可连接键盘、鼠标和网线,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口,以上部件全部整合在一张仅比信用卡稍大的主板上,具备所有PC的基本功能只需接通电视机和键盘,就能执行如电子表格、文字处理、玩游戏、播放高清视频等诸多功能。

4.2树莓派网关功能

树莓派通过串口使用zigbee协议实现与节点的连接,接收节点的温度和湿度数据,然后利用Mqtt协议将数据传送给云服务器,同时也将来自云服务器的控制信号传回给节点。所以,树莓派网关在物联网系统中实现数据传送、指令转发的功能。

4.3环境搭建

4.3.1烧录系统:

1.使用读卡器将sd卡和PC连接,再用SDFormatter格式化SD卡

(链接:https://pan.baidu.com/s/17TyVl2kWP81Yc8VfiGn0JQ 提取码:4m35 )

树莓派网关 系统安装到环境搭建

2.在官网下载Raspberry Pi Imager,并用Raspberry Pi Imager下载镜像并写入镜像:

树莓派网关 系统安装到环境搭建

镜像分享(自带python3.7):链接:https://pan.baidu.com/s/1ZLa2Gcq8rOYjmQgxrcQa3Q  提取码:um2h 
 

4.3.2无屏幕显示的WiFi配置

在SD卡的boot盘中新建一个ssh的空文件,再删除txt后缀,实现打开ssh功能;同时,在TF卡boot盘中新建一个wpa_supplicant.conf文本文件,写入wifi配置,并删除txt后缀。

树莓派网关 系统安装到环境搭建

wpa_supplicant.conf文件代码:

country=CN

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1



network={

   ssid="PCDN"               //WiFi名称

   psk="abcd1234"      //对应WiFi密码

   key_mgmt=WPA-PSK          //WiFi加密方式

   priority=1                //设置优先级

}



network={

   ssid="abcd"

   psk="12345678"

   key_mgmt=WPA-PSK

   priority=2

}

4.3.3 VNC的配置

在电脑和树莓派处于同一局域网的前提下,查询出树莓派IP地址。

在Xshell软件中输入树莓派的IP地址,再输入用户名(默认:pi)和密码(默认:raspberry),再使用sudo raspi-config命令进入配置界面—>选择Interface Options —> VNC —> Yes,以启用VNC服务。

xshell:链接:https://pan.baidu.com/s/1nuYCvhwPbafHOx4i2alYNg  提取码:12nn 

树莓派网关 系统安装到环境搭建

配置好VNC后,打开从官网下载的VNC Viewer软件,输入树莓派的IP地址,在输入登录用户名和密码,初始用户名 pi,密码为 Raspberry,确认之后即可进入树莓派的远程桌面。

树莓派网关 系统安装到环境搭建

4.3.4换源

PS:树莓派很多问题跟镜像源有关,使用默认源的服务器在国外,下载太慢。

在Xshell中输入lsb_release -a查询树莓派对应的Debian版本号

树莓派网关 系统安装到环境搭建

选择了清华源,进入清华源官网(https://mirrors.tuna.tsinghua.edu.cn/help/raspbian/),找到对应Debian版本的修改方法。使用nano指令进行修改,ctrl+o保存,ctrl+x退出。(用#注释掉原来的即可),

树莓派网关 系统安装到环境搭建

sudo nano /etc/apt/sources.list

树莓派网关 系统安装到环境搭建

sudo nano /etc/apt/sources.list.d/raspi.list

树莓派网关 系统安装到环境搭建

再执行sudo apt-get update和sudo apt-get upgrade更新。

4.3.5 python3配置

系统自带python2.7和python3.7,建立软连接这个方法并不适用于,使用设置优先级。执行:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150

再输入python检验:

树莓派网关 系统安装到环境搭建

4.3.6串口配置

1.使用sudo vi/boot/config.txt进入文件进行编辑,在文件最后增加代码:

#ENABLE UART                //对换映射关系,从只有 serial1 -> ttyAMA0

enable_uart=1                到serial0 -> ttyS0 和 serial1 ->ttyAMA0

dtoverlay=pi3-disable-bt   //(硬件串口与mini串口默认映射对换)

然后保存文件重启树莓派使之生效。

树莓派网关 系统安装到环境搭建

  1. 通过如下两个命令停止和禁用串口的控制台功能
sudo systemctl stop serial-getty@ttyAMA0.service

sudo systemctl disable serial-getty@ttyAMA0.service
  1. 再通过sudo vi /boot/cmdline.txt打开文件,(vi编辑器使用不同于普通编辑器 直接百度

并删除console=serial0,115200

重启树莓派 (Ps:python3.7自带serial库)

4.3.7 MQTT的配置

MQTT协议是广泛应用的物联网协议,使用测试MQTT协议需要MQTT的代理。有两种方法使用MQTT服务,一是租用现成的MQTT服务器,如阿里云,百度云,华为云等公用的云平台提供的MQTT服务,使用公用的MQTT服务器的好处是省事,但如果仅仅用于测试学习还需要注册帐号,灵活性差些,有的平台还需要付费。另一方法是自己使用开源的MQTT组件来搭建。

MQTT服务器非常多,如apache的ActiveMQ,emtqqd,HiveMQ,Emitter,Mosquitto,Moquette等等。

  1. 先下载mosquitto需要的依赖:
sudo apt-get install libssl-dev

sudo apt-get install uuid-dev

sudo apt-get install cmake

  1. 下载mosquitto并解压:
wget http://mosquitto.org/files/source/mosquitto-1.5.4.tar.gz
  1. 解压:
    tar zxfv mosquitto-1.5.4.tar.gz

  2. 进入目录cd mosquitto-1.5.4
  3. 编译:make
  4. 安装:sudo make install
  5. 启动mosquitto:mosquitto -v

树莓派网关 系统安装到环境搭建

上一篇:国内公有云首个支持保留消息功能!百度智能云天工物联网核心套件技术再升级


下一篇:网络结构设计——负载均衡之LVS学习笔记(二)