Ardupilot开源代码之Rover上路 - 后续1

Ardupilot开源代码之Rover上路 - 后续1

  • 1. 源由
  • 2. 问题汇总
    • 2.1 问题1:飞控选择
    • 2.2 问题2:飞控安装位置和固定
    • 2.3 问题3:各种插头、插座配套
    • 2.4 问题4:分电板缺陷
    • 2.5 问题5:电机+编码器接线及正反向问题
    • 2.6 问题6:Ardupilot是否支持编码器?
  • 3. 基础知识
    • 3.1 电机工作电压
    • 3.2 编码器工作原理
    • 3.3 舵机规格
  • 4. 参考资料

1. 源由

纪念下今天折腾了一天,为此,特地撰文一篇。

将Ardupilot Rover折腾上路的艰辛历程记录下来,感兴趣的小伙盘也来指点下江山,帮我出出主意。

2. 问题汇总

2.1 问题1:飞控选择

做计划的时候,选择了手边的两块板子,当时考虑Kakute F7是因为有2.54的排针方便。

  • Aocoda-RC H743Dual
  • KAKUTE F7 AIO

而实际情况是KAKUTE F7 AIO只有6个PWM,无法满足阿克曼车的控制,很多人会好奇了吧。

一个接收机就能玩的无人车,飞控竟然说还折腾不了。确实啊,这APM高大上呀,呵呵!

阿克曼无人车实际上是机器人底盘,所以人家有超精密的定位系统,这可有编码器啊。

在这里插入图片描述
好了,我们算下PWM IO:

  • 电机PWM控制 1个IO
  • 编码器 2个IO
  • 伺服转向系统 1个IO

所有的加起来:(1 + 2) x 2 + 1 = 7个

2.2 问题2:飞控安装位置和固定

虽然四轴大量的焊接,但是要知道四轴飞机基本上结构上固定都是固定的,这个阿克曼的车,飞控固定在哪里?这个结构件哪里来,之前都没有考虑到?

好吧,从VTOL上面正好找到一个当时存在一些问题的结构,凑合着用;同时也注定了必须将飞控安装于Rover的最上层,以便更好的获取GPS信号。

在这里插入图片描述

2.3 问题3:各种插头、插座配套

为什么说插接头的重要性?

  1. 原有设计规格

购买的是阿克曼机器人底盘,其原来配套的是OpenCTR的那套主控,所以带来了一下底盘接口没有配套插座的问题:

  • LED灯带 3线插座 //这个是不兼容的
  • 转向Servo经典插座 //这个是兼容的
  • 电机+编码器插座 //6pin插座不兼容
  1. 飞控安装与顶层

飞控安装的结构件有GPS,要求放在最开阔的位置,以便更好的GPS信号。
阿克曼车是分层的,电机,转向Servo、LED等都在底层。
如果像飞控那样焊死,到时候加装或者拆卸都涉及焊接问题。
因此最好的问题就是底层和控制两层进行插头/插座的分离。

最终决策:6pin 电机+编码器规格的插头插座 三套来解决电机、编码器、LED灯带、转向伺服的连接问题。

2.4 问题4:分电板缺陷

配套Aocoda-RC PDB 3060分电板,看上去至少感觉还是蛮不错的。但是依然存在几个问题:

  1. Servo经典插接3pin焊接焊盘太小,上锡非常不易; //焊盘太小
  2. S1/S2 没有Servo经典插接3pin;//有servo经典插接的只有6个PWM
  3. S3/S4/S5 S6/S7/S8排的很密,插线比较困难;

注:其实之前在VTOL上也遇到一些IO不够用问题,比如:四旋翼的VTOL。若能增加一个连接件,上层飞控能够引出4pin PWM扩展Servo经典接口(S/VX/GND)那就非常好了。
在这里插入图片描述

2.5 问题5:电机+编码器接线及正反向问题

在这里插入图片描述

在这里插入图片描述

这里有一个最终的问题就是:线序解法一致的情况下,同样PWM时,电机转向按照塔克官方设计,是能保证车子往前开,而不是原地转圈嘛???? — 有待验证,官方技术支持未回复,从资料上看,用户应该按照正常线序连接。

在这里插入图片描述

2.6 问题6:Ardupilot是否支持编码器?

  1. 一看到全新研发,我就害怕,这能和国际接轨不?????
  2. 例子:13个脉冲一圈,减速比1:30,为什么输出轴转一圈是 13 x 30 x 4 = 1560??? 这里的4是什么?Magic Number?

在这里插入图片描述

3. 基础知识

3.1 电机工作电压

貌似只能上3S,如果4S ~ 6S还得买降压模块,万幸!

在这里插入图片描述

3.2 编码器工作原理

在这里插入图片描述
在这里插入图片描述

3.3 舵机规格

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 参考资料

【1】Ardupilot开源代码之Rover上路计划

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1421053.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

树莓派python开发

树莓派自带thonny 点亮LED灯 import RPi.GPIO as GPIO import time# 设置GPIO模式为BCM GPIO.setmode(GPIO.BCM)# 设置LED引脚 led_pin 18# 设置LED引脚为输出 GPIO.setup(led_pin, GPIO.OUT)# 点亮LED GPIO.output(led_pin, GPIO.HIGH)# 延时2秒 time.sleep(2)# 关闭LED GPI…

电商核心技术揭秘55:社群与粉丝经济的结合

相关系列文章 电商技术揭秘相关系列文章合集(1) 电商技术揭秘相关系列文章合集(2) 电商技术揭秘相关系列文章合集(3) 电商技术揭秘四十一:电商平台的营销系统浅析 电商技术揭秘四十二&#…

Jboss 反序列化 CVE-2017-12149

一、漏洞简介 JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。在/invoker/readonly路径下,攻击者可以构造序列化代码传入服务器进行反序列化,由于没有对反序列化操作进行任何检测,导致攻击者可以执行任意代码。 而jbo…

重发布和路由策略实验(课堂练习)

需求: 将1.1.1.0/24网段(不在OSPF中)重发布到网络中,不允许出现次优路径,实现全网可达。 需求分析: 1、在R1上重发布1.1.1.0/24网段,但是需要过滤192.168.12.0/24和192.168.13.0/24 2、在R2和R3…

考研数学|强化阶段怎么刷《660》《880》《1000》?

强化阶段想要刷好题,首先要选一本适合自己的题集! 一般在强化阶段,大家用多个最多的题集就是660题,880题还有1000题 660题的特点是只训练客观题,虽然题目的质量很高,但是训练面还是比较窄 880题是综合训…

关于DDD和COLA的一些总结和思考

1|0思维:面向对象和面向过程 领域驱动设计本质上是讲的面向对象,但是谈面向对象,始终无法绕开面向过程,所以我们先好好说一下面向过程和面向对象这两个概念。 什么是面向过程呢,其实就是我们学习编程时最初被植入的逻辑…

C++笔记(STL标准库)

1.STL六大部件 容器 Containers分配器 Allocators:帮容器分配内存算法 Algorithms迭代器 Iterators:算法通过迭代器操作容器里的数据,是一种泛化的指针适配器 Adapters:修改或扩展已有类或函数的接口以满足特定的需求仿函数 Func…

《动手学深度学习》V2(11-18)

文章目录 十一、二 模型选择与过拟合和欠拟合1、模型的选择2、过拟合和欠拟合3、估计模型容量4、线性分类器的VC维5、过拟合欠拟合的代码实现 :fire:①生成数据集②定义评估损失③定义训练函数④三阶多项式函数拟合⑤线性函数拟合(欠拟合)⑤高阶多项式函数拟合(过拟合) 十三、权…

【020】基于JavaWeb实现的批报管理系统

项目介绍 基于jspservlet实现的批报管理系统采用B/S架构,该项目设计了一个角色管理员,管理员实现了我的案件、查询统计、项目维护等三大功能模块 技术栈 开发工具:Idea2020.3 运行环境:jdk1.8tomcat9.0mysql5.7 服务端技术:j…

初识C语言——第十八天

循环while/do while while 语法结构 while(表达式) 循环语句; break:在while循环中,break用于永久的终止循环 continue:在while循环中,continue的作用是跳过本次循环continue后面的代码 直接去判断部分,看是否进行下一次循环。 注意事项…

资料总结分享:瀑布图,GESA,生存曲线

目录 瀑布图 GESA 生存曲线 瀑布图 肿瘤的瀑布图是一种常用的数据可视化方式,用于展示个体患者或研究样本的肿瘤基因组学数据,通常包括基因突变、基因拷贝数变异、染色体重排等信息。 颜色编码: 柱状图通常会使用颜色编码来表示不同类型…

GIS数据—1984-2020中国1km人造夜间灯光观测数据

夜间灯光观测数据(Nighttime Light,NTL)是评估人类活动边界的常用手段,目前,该数据已经广泛应用于城市范围、不透水面、基础设施建设等一系列过程。今天,小编要带来的是长时间序列中国区域边界的夜间灯光观测数据。 数…

python-dict序列化的数据为啥前后不一致

前情提要及背景:流式数据的二次处理终结篇-CSDN博客 假如直接将dict进行str,那么编码数据都是一致的,但是在postman上就表现不那么好看,如下: 而之前的显示如下: 其中的差别就是单引号与双引号的差别了。 采用如下方案无疑是最笨的方法了: 在Python中,如果你想将处理…

浅谈SiC MOSFET之MOSFET

1.掺杂后的半导体 P型半导体,多子是空穴,少子是自由电子。 N型半导体,多子是自由电子,少子是空穴。 2.电中性 尽管他们分别有着空穴带正电,自由电子带负电,但是整体上是电中性的。 以P型半导体为例&…

Java开发工具Idea的下载与激活

一,官网下载Idea 建议从官网下载,安全、可靠。 1,点击此处进入官网下载 2,进入官网之后点击[Support],点击浮窗左侧[Download and Install] 3,跳入如下新界面,点击Download进入下载界面 4&am…

【OpenGL的数学01】从窗口空间计算视空间

文章目录 一、说明二、定义三、来自gl_FragCoord四、来自gl_FragCoord的XYZ4.1 从窗口到ndc4.2 从NDC到剪辑4.3 从剪辑到眼睛4.4 GLSL示例 五、从gl_FragCoord的XYZ优化方法 一、说明 本文将解释如何在给定窗口空间顶点位置的情况下重新计算眼空间顶点位置。以及相反的计算。其…

1064 朋友数

solution 给出n个整数&#xff0c;统计可能的位数和&#xff0c;并按升序输出&#xff08;考虑用set实现&#xff09; #include<iostream> #include<set> using namespace std; int main(){set<int> st;int n, x, sum;scanf("%d", &n);while…

实验八 Linux虚拟内存 实验9.1:统计系统缺页次数成功案例

运行环境&#xff1a; VMware17.5.1 build-23298084Ubuntu 16.04LTS ubuntu版本下载地址Linux-4.16.10 linux历史版本下载地址虚拟机配置&#xff1a;硬盘一般不少于40G就行 内核版本不同内核文件代码也有出入&#xff0c;版本差异性令c文件要修改&#xff0c;如若要在linux6.7…

【智能算法应用】遗传粒子群算法(GA-PSO)求解选址问题

目录 1.算法原理2.数学模型3.结果展示4.参考文献5.代码获取 1.算法原理 【智能算法】粒子群算法&#xff08;PSO&#xff09;原理及实现 经典PSO算法用于连续空间优化问题&#xff0c;选址问题作为组合优化问题&#xff0c;需要在离散空间中求解。因此&#xff0c;考虑遗传算…

springboot实现文件防盗链设计

shigen坚持更新文章的博客写手&#xff0c;擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长&#xff0c;分享认知&#xff0c;留住感动。 个人IP&#xff1a;shigen &#x1f44b;&#x1f44b;&#x1f44b;hello&#xff0c;伙伴们好久不见&…