19年初的时候在实验室终于搞定了自己的一套树莓派的嵌入式管理平台,实现了对履带式坦克机器人的控制以及之智能家传感器的管理,由于之前开发的平台还是基于18年的raspbian(搭建过程如下:SmartRobotControlPlateform——智能机器人控制平台),最近家里的4B一直空着,必须让它发光发热,决定重新在4b 上搭建一套嵌入式平台,搭建过程中发现有些库换了,因此,记录下基于2021-05-07-raspios-buster-armhf的4B搭建过程。
具体成果参考github项目:https://github.com/ecjtuseclab/SmartRobotControlPlateform
这里我使用的镜像是:2021-05-07-raspios-buster-armhf.img,原来一直用的是2018-11-13-raspbian-stretch.img。
环境为:raspbian+python3.7+mariadb+redis
1、系统安装
1.1 烧入系统,自动连接wifi,并ssh登录
官方镜像下载地址:https://www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit
使用迅雷下载非常快。
参考此文(树莓派安装raspbian并配置开发环境 或者 树莓派安装ubuntu_meta并配置开发环境)烧录系统封到内存卡中,
下载烧录软件:Win32DiskImager-0.9.5-binary
链接:https://pan.baidu.com/s/1IG4HQDqaFCjf9Py4DeBWEA 密码:gjj2
烧录成功后,在 boot 盘中,放入 空白的ssh 和 wpa_supplicant.conf 两个文件:
country=CN ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="无线网络名称" psk="无线密码" key_mgmt=WPA-PSK priority=1 }
开启树莓派,在路由器中可以看到改树莓派的IP,
使用MobaXterm(自带shh和文件管理,特别方便操作)或者putty(下载链接:https://pan.baidu.com/s/1Mu3OFaqtdjY0eH8Vsfi7zQ 密码:ufu4)连接树莓派,用户名默认:pi,密码默认:raspberry。
修改密码
sudo passwd pi
1.2 开启VNC(可选,建议开启)
ssh登录后,进入树莓派的配置管理界面
sudo raspi-config
Interfacing Options -> VNC -> Yes
然后重启,用VNC Viewer登录出现这个情况,
解决办法:changing the resolution to the highest(更改更高的分辨率即可)
重新进入ssh,
sudo raspi-config
Display Options----Resolution---DMT51(不要选default)
更多分辨率设置,参考 树莓派Raspberry实践笔记—显示分辨率配置 对VNC的分辨率进行设置!
重启系统 sudo reboot
下载VNC客户端:
链接:https://pan.baidu.com/s/1FPkQKdXNgI6hQT3fDI4YXQ 提取码:7ut6
用VNC Viewer登录即可见到最新的树莓派系统。
PS:使用的是raspbian自带的远程桌面vnc,传文件、命令也可以直接复制到运程桌面中,比较方便。
1.3 更改清华源
树莓派的清华源官方介绍地址:https://mirror.tuna.tsinghua.edu.cn/help/raspbian/
ssh进入树莓派,编辑 /etc/apt/sources.list
sudo nano /etc/apt/sources.list
# 编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代: deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
编辑 /etc/apt/sources.list.d/raspi.list
sudo nano /etc/apt/sources.list.d/raspi.list
# 编辑 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
更新软件源列表,并更新软件
sudo apt-get update
sudo apt-get upgrade
1.4 切换python运行版本为3.7
参考:在Ubuntu_meta 16.04中设置默认Python3.5的命令
直接执行这两个命令即可:
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,既可看到切换成功
如果需要切换回python2.7,之需要输入:
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 150 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 100
2、安装Pi 仪表盘
同时将Apache和php配置完成。
2.1 安装Apache
安装apache,在命令行终端中输入一下命令:
sudo apt-get install apache2
测试:
在浏览器里输入 http://树莓派IP,如果看到了Apache2 Ubuntu Default Page,那就说明Apache就成功的安装了,
2.2 安装PHP
在 Pi 的终端运行以下命令。
sudo apt-get install php7.3-fpm php7.3-cli php7.3-curl php7.3-gd php7.3-cgi
sudo service php7.3-fpm restart
2.3 部署 Pi Dashboard
在 Pi 的终端运行以下命令。
#如果已安装过 git 客户端可以跳过下一行 sudo apt-get install git cd /var/www/html sudo git clone https://github.com/nxez/pi-dashboard.git
# 如果github下载非常慢,所用下面的命令替换
sudo git clone https://github.com.cnpmjs.org/nxez/pi-dashboard.git
即可通过 http://树莓派IP/pi-dashboard
访问部署好了的 Pi Dashboard。但是访问后Apache并没有运行PHP文件!!!
解决办法:安装php对于apache的模块
sudo apt install php libapache2-mod-php
同样如果页面无法显示,可以尝试在树莓派终端给源码添加运行权限,例如你上传之后的路径是 /var/www/html/pi-dashboard
,则运行。
cd /var/www/html sudo chown -R www-data pi-dashboard
到这步已经可以访问我们搭建好的 Pi Dashboard 了,如下图:
3、安装MySQL(MariaDB)
参考此文:Ubuntu下安装MySQL
安装MySQL——MariaDB
sudo apt-get install mariadb-server
sudo apt-get install mariadb-server
1
安装完毕后,使用空密码登录mysql。
sudo mysql -u root -p
1
修改密码过程
use mysql; # 连接数据库
set password=PASSWORD('123456');# 修改密码为123456
flush privileges; # 刷新
exit;
————————————————
版权声明:本文为CSDN博主「几何木偶」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_38413498/article/details/105067118
5、安装Django
参考此文:ubuntu安装Django
pip install django
#或者
#pip3 install django
a、安装pymysql数据库模块
参考此文:Django安装数据库MySQLdb
pip install pymysql
#或者
#pip3 install pymysql
如果运行Django提示无法访问mysql数据库,则
进入mysql数据库
sudo mysql
查询user表
use mysql
select Host,User from user;
发现有两条root记录,其中 localhsot root 是 mariadb 数据库安装默认的,需要删除
重启mysql服务
sudo service mysql restart
运行正常
可以访问
6、安装Redis
参考此文:linux与python3安装redis
sudo apt-get install redis*
pip install redis
#或者
#pip3 install redis
7、Python安装pymysql
参考此文:python安装PyMySQL
8、Python安装密码学库Crypto
pip install Crypto
#或者
#pip3 install Crypto
如果还是出错,参考此博文:python3.6 错误: ModuleNotFoundError:No module named "Crypto"
https://blog.csdn.net/zoulonglong/article/details/79552813
9、python安装MySQLclient
参考此文:python安装MySQLclient
10、安装sumbus模块
sudo apt-get install python-smbus
pip install smbus
11、安装视频流mjpg-streamer-experimental
参考此文:https://www.jianshu.com/p/ecea3a8291ed
12、安装ffmpeg视频推流工具
参考此文:https://blog.csdn.net/weixin_33946020/article/details/87618803
13、安装与配置激光雷达
安装hiredis
参考资料:https://blog.csdn.net/qq_27385759/article/details/78981884
安装cmake
sudo apt install cmake
编译、安装、运行激光雷达程序
mkdir build
cd build
cmake ../ -G "CodeBlocks - Unix Makefiles"
make
sudo chmod 777 /dev/ttyUSB0(NOTE:please select correct serial in “app
ode.cpp”)
./delta_lidar_node