本专栏目录
前言
第一章:Linux基础
第二章:ROS入门
第三章:感知与大脑
第四章:差分底盘设计
第五章:树莓派3开发环境搭建
第六章:SLAM建图与自主避障导航
第七章:语音交互与自然语言处理
附录A:用于ROS机器人交互的Android手机APP开发
附录B:用于ROS机器人管理调度的后台服务器搭建
附录C:如何选择ROS机器人平台进行SLAM导航入门
视频教程
https://www.bilibili.com/video/BV1jS4y1a7Lz
centos7下部署Django后台服务器用于ROS机器人管理调度:
nginx
uwsgi
django
python3
下面这本书是本篇文章的参考文献,大家有需要可以入手一本:
0.安装步骤预览
(1)系统默认自带python2.x,所以需要先安装python3.x
(2)python2对应pip,python3对应pip3,用源码安装python3后pip3也自动安装了
(3)用pip3安装virtualenv
(4)用virtualenv创建python3的虚拟环境
(5)在创建的虚拟环境中,用pip3安装Django和uwsgi
(6)安装nginx
(7)创建django项目
(8)关联nginx、uwsgi、django
注:使用root身份登录系统执行
1.编译安装python3
(1)依赖安装
(2)编译安装
2.用pip3安装virtualenv
3.用virtualenv创建python3的虚拟环境
4.在创建的虚拟环境中,用pip3安装django和uwsgi
5.安装nginx
6.创建一个django的项目
(1)新建项目
(2)新建应用
编辑应用中的views.py文件:
(3)测试
7.关联nginx、uwsgi、django
(1)防火墙中相应端口开放,允许外网访问
默认开放给外网http访问的端口是80,所以需要在服务器的防火墙中允许80端口,不然外网的请求进不了服务器;
如果想开放给外网http访问的端口是其他端口(如8080),依照下面的例子,在服务器的防火墙中允许该端口(8080),同时用步骤(2)方法开放允许http访问的端口(8080)。
(2)开放允许http访问的端口
确保外网访问nginx服务器的http端口、nginx与uwsgi通信的socket的端口都在http访问端口的列表中。
(3)关联nginx与uwsgi
#为django站点创建一个nginx服务的配置文件
#在文件mysite_django.conf中填入如下内容
#如遇到nginx服务启动失败,请检查mysite_django.conf中指定的端口是否被占用
(4)关联uwsgi与django
#创建uwsgi配置文件
#在mysite_django_uwsgi.ini文件中填入如下内容
(5)nginx+uwsgi+django联调测试
联调架构如下图所示:
后记
为了防止后续大家找不到本篇文章,我同步制作了一份文章的pdf和本专栏涉及的例程代码放在github和gitee方便大家下载,如果下面给出的github下载链接打不开,可以尝试gitee下载链接:
github下载链接:https://github.com/xiihoo/DIY_A_SLAM_Navigation_Robot
gitee下载链接:https://gitee.com/xiihoo-robot/DIY_A_SLAM_Navigation_Robot
技术交流
QQ技术交流群:117698356
参考文献
[1] 张虎,机器人SLAM导航核心技术与实战[M]. 机械工业出版社,2022.