智能车学习(十七)——舵机学习
一、舵机的结构
舵机简单的说就是集成了直流电机、电机控制器和减速器等,并封装在一个便于安装的外壳里的伺服单元。能够利用简单的输入信号比较精确的转动给定角度的电机系统。舵机安装了一个电位器(或其它角度传感器)检测输出轴转动角度,控制板根据电位器的信息能比较精确的控制和保持输出轴的角度。这样的直流电机控制方式叫闭环控制,所以舵机更准确的说是伺服马达,英文servo。
二、舵机的规格和选型
舵机的规格主要有几个方面:转速、转矩、电压、尺寸、重量、材料等。我们在做舵机的选型时要对以上几个方面进行综合考虑。
1、转速
转速由舵机无负载的情况下转过60°角所需时间来衡量,常见舵机的速度一般在0.11/60°~0.21S/60°之间
2、转矩
舵机扭矩的单位是KG·CM,这是一个扭矩单位。可以理解为在舵盘上距舵机轴中心水平距离1CM处,舵机能够带动的物体重量
3、电压
厂商提供的速度、转矩数据和测试电压有关,在4.8V和6V两种测试电压下这两个参数有比较大的差别。如Futaba S-9001 在 4.8V 时扭力为 3.9kg、速度为 0.22 秒,在 6.0V 时扭力为 5.2kg、速度为 0.18 秒。若无特别注明,JR 的舵机都是以 4.8V 为测试电压,Futaba则是以 6.0V 作为测试电压。
舵机的工作电压对性能有重大的影响,舵机推荐的电压一般都是4.8V或6V。当然,有的舵机可以在7V以上工作,比如12V的舵机也不少。较高的电压可以提高电机的速度和扭矩。选择舵机还需要看我们的控制卡所能提供的电压
4、尺寸、重量和材质
塑料齿轮的舵机在超出极限负荷的条件下使用可能会崩齿,金属齿轮的舵机则可能会电机过热损毁或外壳变形。所以材质的选择并没有绝对的倾向,关键是将舵机使用在设计规格之内。
选择舵机需要在计算自己所需扭矩和速度,并确定使用电压的条件下,选择有150%左右甚至更大扭矩富余的舵机。
三、C车S3010舵机一些心得
1、摘要
C车机械方面主要是三个方面:对称(舵机,电机,寻迹),重心低,降质量(电机弱)
其中,舵机对称可以让代码的复杂度下降,不需要使用软件进行硬件的修补,即PID参数简单可调好用,最重要的是使用代码进行修补,代码的可移植性很差,讲道理有太多参数要调节。
2、舵机安装
(1)选择黄色垫片个数
从这届来看的话,C车摄像头和光电使用3个黄色厚垫片最佳,可以把底盘最大限度的降低,如果使用4个底盘会蹭到赛道(地板)。
信标使用1个厚和1个薄垫片最佳,可以不碰到信标的亚克力板,且最大降低重心。
(2)安装轮子支架(重要)
A、前轮倾斜角度
黄色小垫片的个数选择如图
有一定度数的时候,可以产生一个斜向的力,有助于前轮平稳转动。测试结果一般选择图中第二种,但是如果无法让两侧达到对称时,可以微调垫片,让两个支架对称。
B、内倾角度
调节旋钮长度,一般2.4到3mm都可以。看车子情况进行调节
C、对称安装
要让两个支架安装的非常对称,才能让舵机最终的打角左右对称,给一些经验测试对称的方法:
1、图中箭头处可以用两个4mm的碳素杆进行延长,然后观察角度是否对称,这辆车就明显不是很对称
2、图中画线处可以用4mm的碳素杆进行延长,观察是否水平
3、图中箭头处,应该使用碳素杆进行延长,观察是否水平
……
切记调节好,不管花费几个小时,调节好之后,对后面的对称有着至关重要的作用,这个是很多人忽视的,主要就是因为国产的车模锁孔是TM有空程量的,所以一定要调节好,希望能够国产给力啊。
(3)舵机支架安装
A、支架选择
推荐选择这种舵机支架,虽然不怎么好调节,但是是淘宝上唯一一种和底板锁孔,以及和车子结构配合的最好的支架。
B、舵机安装
安装如图,保证箭头处,上下分别对称,要求使用千分尺,精度0.02mm误差内。
C、舵机上车
选择合适铜柱配合舵机臂(后面说),横向箭头必须与车身平行,竖向箭头应该保证左右对称(舵机的俯视图应该是个梯形)
(4)舵机臂选择
1、不推荐图中舵机臂 ,PCB舵机臂硬度不是很够,高速下(电机不好的原因)可能不够给力,然后推荐使用雕刻机进行雕刻。长度28mm到32mm选择。
2、水平箭头在舵机在中值的时候,应该尽可能呈现水平或者略微倒V形,并且完美对称
3、水平箭头在舵机在最大打角的时候,必须水平,切左右箭头必须完美对称,如果发现并不对称,那就是步骤(2)和(3)出现了问题,反过去重新调节到对称。
(5)测试阿克曼角(调节拉杆长度)
车子装上轮胎(内部要有个黄色垫片),打死,箭头1和2的交点应该在箭头3的上,且左右必须对称,否则自行调节拉杆长度。
PS:如果你完美完成之前全部步骤,在这步最多微调一下,否则可以考虑重新翻工
(6)中值测试,极限测试
最后进行中值和极限的测试,一般来说左右到中值的间隔是一致的(一般不超过2个点,完美完成)。所以这里是最重要的
(7)驱动电压,频率
电压6V,频率75Hz,控制周期50Hz~75Hz
智能车学习(十七)——舵机学习的更多相关文章
- 智能车学习(十五)——K60野火2013版例程
一.中断函数注册方法: 1.格式: 配置某个功能的中断 注册中断函数 开启中断 2.一个例子 pit_init_ms(PIT0,);//定时中断初始化 set_vector_handler(PIT0_ ...
- 强化学习(十七) 基于模型的强化学习与Dyna算法框架
在前面我们讨论了基于价值的强化学习(Value Based RL)和基于策略的强化学习模型(Policy Based RL),本篇我们讨论最后一种强化学习流派,基于模型的强化学习(Model Base ...
- 201771010134杨其菊《面向对象程序设计(java)》第十七周学习总结
第十七周学习总结 1. 程序是一段静态的代码,它是应用程序执行的蓝本.进程是程序的一次动态执行,它对应了从代码加载.执行至执行完毕的一个完整过程.操作系统为每个进程分配一段独立的内存空间和系统资源,包 ...
- 201871010111-刘佳华《面向对象程序设计(java)》第十七周学习总结
201871010111-刘佳华<面向对象程序设计(java)>第十七周学习总结 实验十七 线程同步控制 实验时间 2019-12-20 第一部分:理论知识总结 16.Java 的线程调 ...
- 201271050130-滕江南-《面向对象程序设计(java)》第十七周学习总结
201271050130-滕江南-<面向对象程序设计(java)>第十七周学习总结 博文正文开头格式:(2分) 项目 内容 这个作业属于哪个课程 https://www.cnblogs.c ...
- 201871010104-陈园园《面向对象程序设计(java)》第十七周学习总结
201871010104-陈园园<面向对象程序设计(java)>第十七周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
- 201871010105-曹玉中《面向对象程序设计(java)》第十七周学习总结
201871010105-曹玉中<面向对象程序设计(java)>第十七周学习总结 项目 内容 这个作业属于哪个过程 https://www.cnblogs.com/nwnu-daizh/ ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第十七周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第十七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nw ...
- 达拉草201771010105《面向对象程序设计(java)》第十七周学习总结
达拉草201771010105<面向对象程序设计(java)>第十七周学习总结 第一部分:理论知识 1.多线程的概念: (1)多线程是进程执行过程中产生的多条执行线索. (2)多线程意味着 ...
随机推荐
- svn迁移到git仓库并保留commit历史记录
svn迁移到git仓库并保留commit历史记录 最近在做svn迁移到gitlab,由于之前一直是由svn做版本控制.最简单的方式是将svn的内容export出来,然后添加到gitlab即可.但是,如 ...
- NGUI实现Sprite裁切成圆形或者椭圆形(不完美)
先上效果 有个问题就是,UISprie用的Atlas的公用的材质,无法从当前要绘制的片段shader上获得uv百分比,所以当有其他的Sprite使用相同的Atlas时显示就有问题 其实Mesh是可以接 ...
- Unity3D研究院之拓展系统自带组件的Inspector视图
转自 http://www.xuanyusong.com/archives/3455 using UnityEngine; using System.Collections; using UnityE ...
- ASM:《X86汇编语言-从实模式到保护模式》第11章:进入保护模式
★PART1:进入保护模式 1. 全局描述符表(Global Descriptor Table,GDT) 32位保护模式下,如果要使用一个段,必须先登记,登记的信息包括段的起始地址,段的 ...
- form、iframe实现异步上传文件
转载自:http://blog.csdn.net/sunjing21/article/details/4779321 实现主要功能: 页面提供一个上传图片的input file选择框,用于上传某一类型 ...
- ajax基础语法、ajax做登录、ajax做用户名验证是否可用、ajax做关键字查询动态显示、ajax做用表格显示数据并增加操作列
AJAX: AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. ...
- 解决At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this log
pom增加:<dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</art ...
- Maven中手动引用第三方jar包
有些jar包在Maven库中并不支持,但我们又需要.所以就必须手动引入. 可分为三步完成: 1 ,在项目目录下创建Lib,把引入的jar包加入. 2.在pom.xml中引入dependences. 如 ...
- ArrayList 和 LinkedList 的区别
1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构.2.对于随机访问get和set,ArrayList优于LinkedList,因为LinkedList要移动 ...
- poj1417(种类并查集+dp)
题目:http://poj.org/problem?id=1417 题意:输入三个数m, p, q 分别表示接下来的输入行数,天使数目,恶魔数目: 接下来m行输入形如x, y, ch,ch为yes表示 ...