机器人开发及制作.docx

上传人:b****5 文档编号:12193792 上传时间:2023-04-17 格式:DOCX 页数:37 大小:5.36MB
下载 相关 举报
机器人开发及制作.docx_第1页
第1页 / 共37页
机器人开发及制作.docx_第2页
第2页 / 共37页
机器人开发及制作.docx_第3页
第3页 / 共37页
机器人开发及制作.docx_第4页
第4页 / 共37页
机器人开发及制作.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

机器人开发及制作.docx

《机器人开发及制作.docx》由会员分享,可在线阅读,更多相关《机器人开发及制作.docx(37页珍藏版)》请在冰豆网上搜索。

机器人开发及制作.docx

机器人开发及制作

 机器人开发及制作 → 

陀螺仪用了3片村田的ENC-03,加速度用了一片ADI的ADXL330

两板机械位置对应,可上下连接则系统变成TWI(I2C)数字输出3轴陀螺仪加速度计

也可单独使用上板,则为模拟输出3轴陀螺仪加速度计

整体尺寸3cm X 3cm X 3cm

一共有三块板,上面两块是模拟的,垂直板上有个Z轴陀螺仪,加上最下面一块就可以完成采样,及滤波的,变成I2C数字输出了

如果光要中间板=两轴陀螺仪+3轴加速度【模拟输出】

如果要中间板与垂直板=3轴陀螺仪+3轴加速度【模拟输出】

如果三块都要=3轴陀螺仪+3轴加速度【数字输出】

底板上面有一片MCU,用AVR的M8或者M48/M88/168

XY轴PCB板

轴陀螺仪板,正反双面布,旋转轴方向相反,这样调整程序方便

两片ENC-03电路并联,实际安装时只装一片

三轴加速度计用的是ADXL330,PCB板子布了,但遥控飞可以不焊

把3轴陀螺仪/加速度独立布板,而非象德国人那样布在一起

是想以后3轴陀螺仪/加速度模块还可以DIY其它

2片ENC-03及1片ADXL330垂直安装的Z轴陀螺仪板,正反双面布,旋转轴方向相反,这样调整程序方便

两片ENC-03电路并联,实际安装时只装一片

从这个调试软件发现两个问题,一是串口传输还是偶尔有误码的,大概因为用8M晶体的原因

上次邮购,就买了一个14.7456M晶振,竟然根本不能用,很郁闷

还有一个问题是XY两轴的采样值竟然是“联动的”,就是X轴旋转Y轴输出跟着旋转

视频中就可以看出,但实际量运放模拟输出电压是不同的,没想通是为什么

看了下视频都是显示的是角速度和线加速度,实际应用的时候是不是要积分成角度来用呢

看你怎么用了,如果要用角速度算倾斜角,需要角速度与时间的积分来算

其它方法就未必,比如在静止时只用3轴加速度也可以算出倾角

4轴算法可以有很多种,大家都可以群策群力啊

甚至坛子里还有外国人用神经网络算法

看了你测试三轴的视频挺不错的。

也挺奇怪你的加速度XY轴怎么变化一样啊?

会不会你程序或者硬件采集的是通一通道啊?

还有下次出视频可以动作温柔点,看你那么折腾挺累的吧,呵呵!

其实可以试试把加速度的值用串口接收下来,用exlce制成图表看看曲线图,更直观。

还有在手上摇动的时候,把角速度用积分的方式得到的值,用同样方法制成曲线图,应该基本和加速度的曲线吻合的(其实就是倾角值)如果这两个值吻合精度做到很高,就可以拿来判断飞行器的姿态了。

你会DELPHI那就更好了可以直接制表,做成以后调试四轴电路的工具,其实老外就是这么做的,看到你做的比较顺利,所以我也随便说说,太高深的我也说不了,嘿嘿。

,如果直接用角速度积分计算倾角没有加速度的配合,我想初始值很难定吧,然后经过一段时间的误差积累还是要人为通过眼看矫正的,这应该就是有些朋友仅仅用角速度传感器做的四轴效果

你说的对,我理解仅靠角速度积分计算倾角,肯定有积分误差的累积的

它不能用来标定相对水平面的绝对倾斜角

XY轴联动可能是我的程序BUG,我用量过硬件XY两轴的输出电压不一样的

视频中的DELPHI程序是我随便画的,只反应采样值,不是很直观

而且一般WINDOWS基于GDI的控件不适合做高速图象刷新的页面

所以我又用DELPHI + DIRECT X SDK 做了一个3D版的,准备把模型姿态实时绘制到PC上,这样更酷些

不过PC端软件工作量要大些,先上个做了一半的3D页面拷屏

再做了一个简单的4轴模型,用来显示3D姿态

 

呵呵,整到晚上3点多,终于找到BUG,数字三轴陀螺仪/加速度计调试通过,发视频庆祝一下

陀螺仪三片ENC-03,3轴量程300度/秒,加速度计一片ADXL330,3轴正负3G

输出400khz TWI(I2C)总线,精度十位,0-1023

视频1,可看出静止时,除加速度Z轴垂直地面,多一个G的输出外,其它陀螺仪的3轴及加速度计XY轴硬件都已校正到中点:

视频2,陀螺仪实物与屏幕采样值联动,按顺序分别测试了陀螺仪Z轴、Y轴、X轴

然后在静止状态,看不同轴正反方向朝下时,1个G的重力加速度与其它轴的区别

视频3,陀螺仪连接到3D模型页面,采样值已传送到程序左上角显示区

但3D的虚拟4轴模型还未与之连接,发现还有两大部分程序工作:

1.根据三轴陀螺仪/加速度计的输出计算各轴姿态角度

2.根据各轴姿态角度将虚拟4轴模型绘制到3D空间中

需要用到高数矩阵运算中的坐标变换,毕业多年早忘了,看来一晚上是搞不定了

回头给你整理个陀螺仪装焊图

第二个视频看来已经很正常咯,3轴角度相当的正常了,恭喜恭喜

问题出现在什么地方呢,是你的程序问题?

程序BUG,变址寄存器值搞错,数据顺序存储错误,汇编写的程序存储器绝对地址容易搞错

用我的PCB时请注意,过流采样是 ADC03 管脚,而ADC06我用作电池电压检测了 

如果你不是自己写程序,而用德国人的程序,无论那一版 

采样部分语句要稍作修改:

 

ldi main_temp0, 0b00000011; 

out ADMUX, main_temp0; 

否则上电运行会出现过流保护,现象电机是启动完成后,转速逐步降低直到停止 

注意采样前保护比较器地址、采样后恢复比较器地址 

ENC-03MB 新做了一个3轴陀螺仪,油光锃亮啊

这次把采样滤波MPU换成了20MHz的 M48,价格比M8还便宜

每us可执行20条语句,速度那个快啊!

今天上班扩充了程序,在主控板上同时采样了陀螺仪、加速度、系统输入电压、输入电流

还有8路接收机遥控信号,接收机用的是FUTABA FP-R115F,改装后输出8通道PPM比例信号

PC端依旧沿用上次陀螺仪的程序,由于通信协议定了6路16位信号,就显示了接收机的前6道结果

从左到右分别为:

副翼1、升降2、油门3、方向4、开关通道5、比例旋钮6。

7道、8道也接收了,显示不下,懒的改串口通信程序了。

这是接收机,可以看到比正常的多了一根PPM信号线:

接收机5V电源由主控板供给,PPM引入主控板ICP捕捉管脚,分别采样8路脉宽:

记得以前有人问我四轴的PID参数怎么调?

我的办法就是那三个多余的6、7、8比例通道

设置遥控器上的VR(A)/VR(B)/VR(C)三个旋钮连接到6、7、8通道,边飞边调,调稳为止

打开FP-R115F外壳,里面有上下两块PCB

一块是高频接收板,一块是舵机信号输出板,高频部分与舵机部分就是通过PPM信号控制的

两板之间有3根线连接,除了地线和+5V,剩下的那根就是PPM信号线

加根线引出到三芯插座中即可,改装对原有接收机外形功能等都没有影响接上ADXL330后,ACC_X/Y/Z在摇摆时能输出不同电压了,打算用这个来做一个两轮平衡机器人。

昨天焊了板, 没有焊加速度计,焊了两只水平的陀螺仪, 测量了一下有些怪现象。

情况1:

REG1117-3.3输出3.3v,陀螺仪输出1.3v左右, 经运放LMV324输出1.25v左右

情况2:

REG1117-3.3输出2.2V,陀螺仪输出1.3v左右, 经运放LMV324输出0.5v左右

似乎刚焊接完芯片还是热的时候是情况1, 冷了之后是情况2。

把lmv324拆了以后REG1117输出恢复正常。

 但奇怪, lmv324是是用5V电源, 不可能把3.3V拉低到2.2V的阿

LMV324换了两片, reg1117-33也换了两片, 结果依然这样, 想不通

你可能是ENC-03方向焊错了,焊接正常的话,运放输出是1.5 - 1.65伏

117 3.3一定输出 3.3V,跟焊不焊运放没关系的,拉低到2V是肯定焊错了,或有短路

我记得我用AD测出来的大概是1.3-1.5之间,

用我这个电路,运放输出至少不低于1.3,否则不是焊错,就是ENC-03已经摔过并中点偏移了

确认焊接无误而输出电压在1.3V到1.5伏,可以加焊那几个470K校正电阻【大小可微调】,能校正到1.5-1.65,这样用3.3V采样参考电压

保证陀螺仪 【中点值 = ADC MAX / 2】,再重复一下117稳压输出一定要是对的,否则可能有局部短路,会搞坏ENC-03的

特别是焊ADXL330时,器件很小4MM x 4MM,底面焊锡一多就短路,要当心

奇怪,以下是我顺手翻动是的值,单位是mv, 如1:

1324是1.324mv, 前面的1:

是没用的,请问这正常吗?

1:

13241:

13741:

22611:

19301:

14441:

10861:

04271:

00871:

11071:

29971:

01021:

29971:

00931:

2997

1:

12501:

00841:

29971:

07521:

00901:

29971:

00991:

29971:

00991:

29971:

00961:

29971:

0087

1:

03571:

29971:

00931:

04801:

13591:

24051:

14031:

1054

回去检查过一次,没有发现焊接错误与虚焊。

楼主发的邮件上提到220k, 4.7k, 不用焊, 但在焊接图上没有发现220k 和4.7k的电阻, 请指教

另外我用的是LMV324,而楼主的是LM324,会不会是问题?

现在的情况还是一样, 接运放, 3.3V 输出拉到2.18, 不接运放,正常3.3输出

你只装焊来了ADXL330,ADXL330是不经过运放的,和 RickyZhou 不是一回事,他只装ENC-03

不是220k, 4.7k不装,是220k, 470k不装,因为这两种阻值的都是用来校正输出的电阻

如果你的ADC采样参考电压是3.0V或3.3V,用LM324足以,其输出好象是VCC-1.5V

3.3V参考电压时陀螺仪中点可硬件校正到1.65V附近,3.0V参考电压时陀螺仪中点可硬件校正到1.50V附近

LMV324在5V供电时,输出电压可接近5V,比ADC参考电压高太多,反而不好

器件并不一定是范围越大越好,我的理解是匹配够用就行

楼上两位实在不好意思,跟你们讲了好久都是以我新的手工布线的板子来说的

我搞错版本了,给你们的板子是原来自动布线的,还没有220k 与470k校正电阻

下图是你们那个版本不装焊的电阻示意图,我那时标100k或0k的

这个图是ENC-03的方向图,供焊接时参考

静止时是1370mv左右,相差不过5mv。

但是摇摆时会超过2V,但不超过3V,应该是正常吧?

测量过两个轴都是这样的值。

运放输出1.37V很正常,新的基本就是这个输出,猛烈摔过中点电压可能会变

原理图

把ref基准电压调低,使静止输出为2.5v ,试验结果:

这是个交流放大器,在运动过程突然停止,会出现前冲现象(不会我电路参数有问题吧?

),

我觉得不如用这套电路:

我也在示波器上观察到这个现象,正在找原因,理论上不应该出来反相的波形的

上一个图是村田给的参考电路,其中加了两级滤波,可以消除噪声

下一个是德国人的直接放大,区别只在4.7u和100k的高通滤波

Vref加电解稳压只有好处没有坏处,你可以试试把高通滤波去掉

对,把高通去掉 就好了,或者在4.7u两端跨一电阻会好一些

三轴加速度传感器ADXL330,真的很小,价格70还可以接受

无铅的大概贵几十块吧,性能一致

实在太小4mm X 4mm,手工焊接挺难的,用电烙铁是有点难度,毕竟是MFL封装的。

可以用热风枪吹啊

我是把他翻过来脚朝上,用废管脚连焊的,焊好后点些热胶固定保护,我用的是ST公司的传感器。

外形和你这个一样 5mm*5mm 的,把它背紧靠着线路板就基本和线路板平行了,测量误差也小。

有热风枪当然最好了。

哈哈,好办法,顺便问问加了加速度传感器后,稳定效果如何?

并请教加速度传感器信号和陀螺仪信号如何混控的?

这个算法一直没想的很清楚

陀螺仪板加入校准电阻

解析板采用贴片M8,16M晶振,TWI总线输出,可工作在400kb/s,每数据包12字节,传递6个2进制16位数

分别表示3轴陀螺仪与3轴加速度,精度都是10位,抛弃首次采样值,然后移动加权平均

解析板上预留了一红一绿两个LED,显示陀螺仪及通信状态

两板机械位置对应,可上下连接则系统变成TWI数字输出3轴陀螺仪加速度计

也可单独使用上板,则为模拟输出3轴陀螺仪加速度计

整体尺寸3cm X 3cm X 3cm,以后有空再给它做个透明外壳

ENC-03的贴片有两种封装:

 ENC-03M ,及ENC-03R。

前者较大,后者较小。

(后者是4mm * 8mm, 华科尔的四轴就是使用后者)。

开始我一直奇怪,为何M型号,又会分 ENC-03MA及ENC-03MB。

 R型号分 ENC-03RC与ENC-03RD。

先看一下村田的ENC-03M 数据手册上的描述:

ENC-03R 的数据手册也明确指出需要使用二只ENC-03RC,配合一只ENC-03RD (或2只RD,配合一只RC)。

但在国内的四轴爱好者中,我打了几个网友的电话,竟然没有人留意到有上面的区别。

三只传感器均是使用同一只型号。

最令人吃惊的是,在华科尔四轴上,竟然使用的是三只ENC-03RC,没有使用ENC-03RD,为什么呢?

看附图,对照安装的装配示意图和楼上的实物;

楼上的实物在水平上已经是物理角度是90度了,我想两个型号的差异仅在内部结构对方向的参照点不同而言

我用过这种传感器,建议使用大的,不要用小的,否则会遇上不必要的麻烦。

一般应用MA,MB没有多在区别

小的问题什么问题?

 其实内部结构是一样的。

 我已经向村田的技术支持证实了这一点,大的与小的技术参数是完全一样的。

华科尔的就是使用小的。

我们以后还打算做出手掌那么大的小四轴,传感器就需要用到小的了 

,所以公司才想替换,我们的产品在空间上不是问题。

他们公司的工作人员来过我们公司,在不增加电路的情况下解决不了问题,所以现在还是用大的

还有这种问题?

 你有没有拆开过外壳,看看它的机械结构的大小,是不是一样的?

 如果机械结构大一点的话,可能真的会有区别。

如果是同样大小的,就应该不会有区别

但我这边得到的消息是:

村田的所有技术人员、代理商,均保证M与R只是封装不同,性能指标完全一样的。

另:

MA与MB的区别在什么地方?

 为何村田的手册上,强调MA与MB要配合使用

DATASHEET 是有这么一说,但好象没讲为什么

是否是共振问题?

比如MA,MB性能一致,共振频率不同

故在上图中两片MA中间加入一片MB?

在华科尔四轴上,有一只ENC-03的外壳被拆掉

是4轴成品本来就是拆掉的?

还是你们分析时拆掉的?

如果是本来就拆掉的,可能就是改变共振频率的目的

呵呵,是被我们拆掉的。

后来外壳不知道放那里了。

我将新买的拆开,发现三只均是 ENC-03RC。

按上面大家提供的资料,及我电话与一些有经验的网友的交流,发现,全部均认为, 只使用一种型号的传感品就OK了。

没有必要两种型同时使用。

那村田的数据手册为何要这样推荐?

 真的不明白。

 ,也很奇怪,看了资料才明白,因为机械式的角速度传感器是通过测量机械音叉震动的变化来测量角速度的变化的,这里由于同种型号的器件使用的原材料(音叉)也基本一样,那么就存在一个机械共振频率的问题。

所以资料中也说明尽量分两种型号安装,虽然型号参数一样,但共振频率就不同了,同时也指出安装的基板(PCB类)尽量使用阻隔音频信号的材料。

我们平时用的时候确实没考虑的,也不会去关心这问题,但制造厂商肯定有这个顾虑,所以明文指出。

我们一般用的时候由于货源问题,可能同时采购不到两种型号,所以就只能安装时候注意点,考虑是音频共振,所以尽量分开点,pcb板焊接要牢固结实。

同意楼上,封装不同,机械共振频率也不同,从而提高精度

那里说得很明确了:

型号最末位不同的,性能完全一致,只是共振频率不同。

但是“Swell”这个词不知道确切怎么译为好。

另外,我看到规格书上那个运放的作用是做滤波器用的,不是某贴里面提到的‘因为灵敏度低必须用运放放大’。

原因在顶楼的第二幅图里面也说明了。

忽略这两个地方当然还可以用,只是性能上当然也有影响了

ENC-03最大用量是“类似共轴小LAMA模型的四合一接收机”,生产量非常大

看看航展上的小共轴数量就知道了,我有好几片就是收LAMA坏板拆来的

ESKY、科乐科 等应该都是你们的大客户

Z轴不存在,主要在X和Y轴的芯片型号要不一样哇我估计只要陀螺仪没焊在同一块板子上,用同一型号应该都不会有影响

ENC-03,这个陀螺...,由于价格优势被大量使用到锁尾上,建议有ENC-03的朋友做下温度实验,通电后用个电吹风吹它,看看他的输出是不是漂到西天去了,哈哈我按数据手册中的电路图搭了个电路来测试EN03,发现输出怎么是固定在1。

33V呢?

为什么要MA和MB分别用?

看看它的工作原理就知道了!

因为两个同后缀的频率一样,安在很近的同一板上,而固体是能传播震荡波的,于是两个就会交叉干扰而带来很大误差.因为厂家没有三个后缀的MC,所以要三轴使用就只能凑合了!

看你们被小日本人蒙的,要是没什么原因精明的日本人干嘛生产两款只是频率不同的东东呀.

是用不同型号的好些,毕竟有些东西不是我们这些搞业余的能测出来的,用相同型号的毕竟有隐患,说不定哪天四轴上天了,才发现这个问题,就,,,,,

有个想法:

用两片ENC-03MB和一片ENC-03RC,或者两片ENC-03RC和一片ENC-03MB,不知行的通不?

毕竟它们的频率也不一样

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1