zoukankan      html  css  js  c++  java
  • SmartRobotControlPlateform——智能机器人控制平台(新)

    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 盘中,放入 空白的sshwpa_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

    参考:[转]:Ubuntu 下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
  • 相关阅读:
    CXX解析CSV文件
    linux通过cifs挂载windows共享目录
    oracle生产环境存储过程调试方案
    imp导入库表空间找不到问题记录
    银行怎么盘头寸
    jQuery插件之【jqGrid】常用语法整理-【更新】
    Jquery一些笔记
    request对象的五个集合
    jQuery插件之【jqGrid】常用语法整理-【更新】
    MVC中几种常用ActionResult
  • 原文地址:https://www.cnblogs.com/little-kwy/p/14940321.html
Copyright © 2011-2022 走看看