ardupilot开发 --- Rpanion-server 篇

在这里插入图片描述

0. 前言

Rpanion Server 是一个运行在无人机板载计算机上的开软软件方案,是ardupilot生态中的一个开源方案。
它的功能包括:

  • 配置页面
    浏览器访问http://localhost:3000http://<本机IP>:3000可以进入配置页面。
    假如运行 Rpanion-server 的主机有两个网卡,一个有线网卡IP为192.168.100.197,另一个是无线网卡IP为10.0.2.100,并且无线网卡创建了一个wifi热点叫 RepanionWifi。
    那么你的PC如何进入到Rpanion-server配置页呢?
    【方法1】
    用网线让你的PC与主机192.168.100.197处在同一个局域网内,那么你的PC可以直接访问192.168.100.197:3000进入Rpanion-server配置页面。
    【方法2】
    让你的PC连接到热点RepanionWifi,那么你的PC可以直接访问10.0.2.100:3000进入Rpanion-server配置页面。
    在这里插入图片描述

  • 通过UART 或 USB 连接飞控;mavlink数据包的UDP、TCP转发;

    • UDP client
      相当于mavproxy中的ouput add 功能。
      往地址为<remoteIP> : <remotePort>的远程 UDP client 发送mavlink包。
    • UDP Server
      接收并处理来自UDP client 的mavlink包。
      告诉那些个UDP client 们,要给老子发消息,就往<IP of 老子> : <UDP Server Port>这个地址发!发错地址一概不理,哼!!
    • TCP Server
      本机与远程主机建立TCP连接,以相互发收mavlink包,建立mavlink通讯链路。

      在这里插入图片描述
      在这里插入图片描述
  • 访问USB摄像机(如webcam);搭建RTSP流媒体服务;为USB相机创建视频流供客户端拉流;
    (1)在主机上用GStreamer搭建RTSP流媒体服务器;
    (2)获取USB相机的视频帧,制作成视频流并发布(注册)到 (1) 中创建的流媒体服务器上;
    (3)那么用户终端(客户端)就可以从该流媒体服务器上拉流了。
    注意:客户端主机和机载计算机(流媒体服务器)要处在同一个(虚拟)局域网中,不然客户端是无法拉流的。

    在这里插入图片描述

  • 网络RTK注入;

    在这里插入图片描述

  • 网络设置、wifi热点配置
    (1)设置有线网卡:动态获取IP?静态IP?
    (2)设置无线网卡:
    (2.1)无线网卡的连接参数:连接哪个无线网络(需要手动添加)?动态获取IP?静态IP?
    (2.2)wifi热点配置:无线网卡可以创建一个wifi热点(又称 wifi access point、wifi hotspot),PC连接该热点后就可以用浏览器访问Rpanion server配置页面,如http://10.0.2.100:3000根据你配置的IP而定!
    注意:修改网络配置需要在命令行输入密码!

    在这里插入图片描述

    在这里插入图片描述

  • Ad-Hoc Wifi 网络模式
    目前几乎用不到这个功能!
    Ad-Hoc是点对点网络连接模式,两台或多台具备无线网卡的PC直接进行无线网络互联,不用结过AP设备(如路由器)。更多知识点请参考这里

  • vpn配置
    联合ZeroTier一起使用!
    可实现异地组网、内网穿透,使得飞控的数传数据可通过4g网络UDP给接入互联网的移动终端!
    step1)注册、登录zerotier(本人用的谷歌账号授权登录)、并创建一个网络
    在这里插入图片描述
    step2)配置Rpanion-server中的VPN使得板载计算机加入这个网络,从而获得一个虚拟局域网IP,如10.147.19.107
    在这里插入图片描述
    在这里插入图片描述
    step3)Windows PC 运行ZeroTier.exe,输入 step1 创建的Network ID,让Windows PC也加入这个网络,同样得到一个虚拟局域网IP。
    在这里插入图片描述
    在这里插入图片描述
    step4)此时Linux板载计算机和 Windows PC 处在同一个由ZeroTier提供的“虚拟”局域网中。
    在这里插入图片描述
    step5)Windows PC 成功 ping 通 Linux 板载计算机!
    在这里插入图片描述
    step6)在Rpanion-server中新增一个 Mavlink 的 UDP 转发,或开启一个 Mavlink 的 UDP Server.
    在这里插入图片描述
    step7)在Windows PC 中成功用mission planner 连接上飞控。
    在这里插入图片描述

  • 日志上传云端
    待续…

1. 实践

文档

安装

以开发模式运行

以开发模式运行,任何代码改动都会触发重新编译并重新加载Rpanion-server,便于调试。
Rpanion-server = React前端页面程序 + node.js后端服务程序
前端代码+后端代码
前端程序:运行在端口3000
后端程序:运行在端口3001

cd ~/shd/RpanionServer-ws/Rpanion-server
## 单独运行no
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值