欢迎光临散文网 会员登陆 & 注册

【自己动手做一台SLAM导航机器人】附录B:用于ROS机器人管理调度的后台服务器搭建

2023-04-03 04:29 作者:小虎哥哥爱学习  | 我要投稿

本专栏目录

  • 前言

  • 第一章: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.


【自己动手做一台SLAM导航机器人】附录B:用于ROS机器人管理调度的后台服务器搭建的评论 (共 条)

分享到微博请遵守国家法律