智能车制作

标题: 摄像头直立视频外加双路脉冲捕捉问题 [打印本页]

作者: 张永超    时间: 2014-1-5 20:18
标题: 摄像头直立视频外加双路脉冲捕捉问题
小弟最近在做飞思卡尔智能车,需要捕捉两个编码器的脉冲值,然后kl25的  LPTMR  模块一共是两个通道,悲剧的事情来了,其中   LPTMR0_ALT1   居然是外部晶振引脚。。这意味着我就不能用lptmr模块了?
那么小弟另辟他路,选择tpm模块进行脉冲捕捉。。思想是不是配置成上升沿捕捉,然后进中断,然后令一个num++,最后在固定时间去读num值便可是吧。。。。可是感觉这样好恶心。双路外部中断,这样感觉和我直立控制方面冲突啊。。而且我还有摄像头好几个中断。。所以不想用这个方式去捕捉。。
所以我的问题是
1.lptmr那个真的是已经不行了嘛??看技术手册上写[img]file:///C:/Users/lenovo/AppData/Roaming/Tencent/Users/351396821/QQ/WinTemp/RichOle/E26%7DMR%OYM73$@[6~B8OJ2Q.jpg[/img][img]file:///C:/Users/lenovo/AppData/Roaming/Tencent/Users/351396821/QQ/WinTemp/RichOle/E26%7DMR%OYM73$@[6~B8OJ2Q.jpg[/img]
TPS寄存器如下,是选择input通道的。可是引脚一共就两个啊,而且那个LPTMR0_ALT1还是外部晶振。。
            00 Pulse counter input 0 is selected.
            01 Pulse counter input 1 is selected.
            10 Pulse counter input 2 is selected.
            11 Pulse counter input 3 is selected.
2.看了论坛里有一个tpm捕捉产生的pwm脉冲的宽度的例程,所以不知道这个tpm有没有  捕捉脉冲次数的功能??
3。tpm可不可以不进中断便可读其中的tpm_cv的值??这个值是不是捕捉的脉冲的个数??如何清零??
4.。除了LPTMR  和 tpm模块。。kl25还可以怎么做就能捕捉到脉冲个数??要的是脉冲个数??还有,我不会清零啊。。有没有像16位单片机的那个xs128,有一个脉冲累加值寄存器可读可清零这样类似功能的模块啊????
总结一下。我就是想实现两个编码器的脉冲个数捕捉,从而反应我车速的大小。。。问题多。请各位版主,牛人谅解。还请细心回答~小弟在这谢谢大家了

(这个是我在那个飞思卡尔论坛发的帖子。也懒得再敲了。大家见谅啊)


最后附上直立视频,两天做出来的。。现在卡在了编码器上。。蛋疼。。。
视频一
http://v.youku.com/v_show/id_XNjU3NzU1MzUy.html
视频二
http://v.youku.com/v_show/id_XNjU3NzM5Mzgw.html


作者: 张永超    时间: 2014-1-5 20:20
http://v.youku.com/v_show/id_XNjU3NzM5Mzgw.html

作者: 张永超    时间: 2014-1-5 20:21
http://v.youku.com/v_show/id_XNjU3NzU1MzUy.html
作者: 张永超    时间: 2014-1-5 20:23
现在发表个帖子和回复还需要一直审核?????
作者: azraeltang    时间: 2014-1-5 20:56
速度只用了P?
作者: 张永超    时间: 2014-1-5 21:06
没用速度。。。只直立
作者: 张永超    时间: 2014-1-5 21:07
azraeltang 发表于 2014-1-5 20:56
速度只用了P?

没有做速度上的。只做直立了

作者: 头上两只角    时间: 2014-1-5 21:53
有意思 。。
作者: 张永超    时间: 2014-1-5 22:35
头上两只角 发表于 2014-1-5 21:53
有意思 。。

什么有意思????怎么解决

作者: 释是圣杰    时间: 2014-1-5 23:11
帅气!立的很好
作者: 为丞而琳    时间: 2014-1-6 00:23
你没加速度控制仅仅是直立控制就调到这么好了,不可思议啊?
作者: 张永超    时间: 2014-1-6 00:48
为丞而琳 发表于 2014-1-6 00:23
你没加速度控制仅仅是直立控制就调到这么好了,不可思议啊?

嗯哪。。不然纠结kl25如何捕捉两路脉冲干嘛

作者: 张永超    时间: 2014-1-6 00:50
释是圣杰 发表于 2014-1-5 23:11
帅气!立的很好

注意我的问题啊。。别只看视频啦

作者: 野火    时间: 2014-1-6 11:57
可以 参考 野火KL26 的代码,已经 实现 TPM 脉冲计数 功能

我们的 KL 资料下载地址:
http://www.znczz.com/thread-214363-1-1.html

作者: 张永超    时间: 2014-1-6 13:48
野火 发表于 2014-1-6 11:57
可以 参考 野火KL26 的代码,已经 实现 TPM 脉冲计数 功能

我们的 KL 资料下载地址:

火哥就是火哥。。一直力挺啊。。哈哈

作者: 記得灬初戀。    时间: 2014-1-6 13:56
看看
作者: 夜之冰木九羽    时间: 2014-1-6 15:34
我也碰到这样的问题,本来想试着用DMA解决的,最近在考试,还没来得及尝试……
作者: 张永超    时间: 2014-1-6 16:23
夜之冰木九羽 发表于 2014-1-6 15:34
我也碰到这样的问题,本来想试着用DMA解决的,最近在考试,还没来得及尝试……

dma影响摄像头采集。最好不用。。

作者: 张永超    时间: 2014-1-6 17:58
野火 发表于 2014-1-6 11:57
可以 参考 野火KL26 的代码,已经 实现 TPM 脉冲计数 功能

我们的 KL 资料下载地址:

感谢火哥的提醒。。问题解决。。

作者: 野火    时间: 2014-1-6 18:15
张永超 发表于 2014-1-6 17:58
感谢火哥的提醒。。问题解决。。

呵呵,举手之劳

作者: 张永超    时间: 2014-1-6 20:12
野火 发表于 2014-1-6 18:15
呵呵,举手之劳

哈哈。。幸好kl25的tpm模块的外部时钟引脚不是晶振引脚。。哈哈。。你的库都没有指明路径哦。。。小白的话就跪了。。今天和队友再一次钦佩一下野火的技术,,,nb

作者: 野火    时间: 2014-1-6 21:22
张永超 发表于 2014-1-6 20:12
哈哈。。幸好kl25的tpm模块的外部时钟引脚不是晶振引脚。。哈哈。。你的库都没有指明路径哦。。。小白的话 ...

可能你 之前没用过 我们 K60 的库。

我们的 管脚 都 有专门 的头文件 配置复用:Board\Inc\FIRE_PORT_cfg.h

//      模块通道    端口          可选范围                                    建议
#define TPM2_CH0_PIN    PTA1       //PTA1、PTB2、PTB18、PTE22
#define TPM2_CH1_PIN    PTA2       //PTA2、PTB3、PTB19、PTE23


想用哪个,就换哪个 ……可选的范围都整理好

作者: 张永超    时间: 2014-1-6 23:04
不是这个啦。。是在那个options里的那个c++选项里的preprossor那个指明路径那个。。不知道是不是这么叫的术语。。哈哈
作者: 张永超    时间: 2014-1-7 16:20
一会补上一个视频。。挺有意思的。。哈。。摄像头支架无限高
作者: 夜之冰木九羽    时间: 2014-1-7 21:32
张永超 发表于 2014-1-6 17:58
感谢火哥的提醒。。问题解决。。

想问问你是怎么做?求交流!

作者: 夜之冰木九羽    时间: 2014-1-7 22:15
看了火哥,思路有了……多谢火哥……
作者: 张永超    时间: 2014-1-8 13:24
夜之冰木九羽 发表于 2014-1-7 22:15
看了火哥,思路有了……多谢火哥……

你已经会了。。哈哈

作者: 赵宇    时间: 2014-1-8 17:51
你的机械会不会受电机电磁干扰,主板靠的好近???
作者: 张永超    时间: 2014-1-8 17:58
赵宇 发表于 2014-1-8 17:51
你的机械会不会受电机电磁干扰,主板靠的好近???

不知道啊。。 还没有跑呢。。等我验证后回答你。现在卡在了dma里了

作者: 赵宇    时间: 2014-1-9 14:45
我觉得你搭车时就应该考虑这些因素。。
作者: 张永超    时间: 2014-1-9 15:21
赵宇 发表于 2014-1-9 14:45
我觉得你搭车时就应该考虑这些因素。。

如果只是考虑而不去动手验证,那你什么时候能找到真理呢。。

作者: 张永超    时间: 2014-1-15 11:34
野火 发表于 2014-1-6 11:57
可以 参考 野火KL26 的代码,已经 实现 TPM 脉冲计数 功能

我们的 KL 资料下载地址:

现在有点想换k60了。。。。但是k60如何捕捉双路脉冲个数啊。。不想用dma。。怕影响摄像头采集。。还有用kl25驱动鹰眼,图像分裂。。已经吧摄像头降频到很低了。。

作者: 石秋燕子    时间: 2014-1-15 17:02
真是羡慕啊!我们组到现在还在调!哎!你是咋调的啊?
作者: 张永超    时间: 2014-1-15 18:28
石秋燕子 发表于 2014-1-15 17:02
真是羡慕啊!我们组到现在还在调!哎!你是咋调的啊?

慢慢调。。一点点调。。主要做过电赛

作者: 石秋燕子    时间: 2014-1-15 18:53
张永超 发表于 2014-1-15 18:28
慢慢调。。一点点调。。主要做过电赛

我没有做过电赛,并且是第一次做飞思卡尔,用的是K60,好不容易把硬件搭起来了,就开始调直立,可不管我们怎么改P和D的值车子就是一点动静也没有,用虚拟示波器看现象也看不出个所以然!哦!我们是按野火出的那个初级篇调的!以你调直立的经验,给点建议吧!

作者: 张永超    时间: 2014-1-15 19:39
。。。不是一点半点就能说出来的。。看看清华的直立方案吧
作者: 石秋燕子    时间: 2014-1-15 20:03
张永超 发表于 2014-1-15 19:39
。。。不是一点半点就能说出来的。。看看清华的直立方案吧

我们用的就是通过清华方案改编的程序!

作者: XYZ0613    时间: 2014-1-15 20:18
张永超 发表于 2014-1-6 16:23
dma影响摄像头采集。最好不用。。

你直立加上DMA采集图像(是行中断开DMA吧)后对直立没影响吗??

作者: 石秋燕子    时间: 2014-1-15 20:23
张永超 发表于 2014-1-15 19:39
。。。不是一点半点就能说出来的。。看看清华的直立方案吧

还是很谢谢你!{:soso_e100:}我们大概知道问题出在哪了!
作者: 张永超    时间: 2014-1-15 22:39
XYZ0613 发表于 2014-1-15 20:18
你直立加上DMA采集图像(是行中断开DMA吧)后对直立没影响吗??

没看见我说。。最好不用dma嘛

作者: 张永超    时间: 2014-1-15 22:40
XYZ0613 发表于 2014-1-15 20:18
你直立加上DMA采集图像(是行中断开DMA吧)后对直立没影响吗??

目前没有弄到直立上去看摄像头。因为至今我摄像头没有解决问题

作者: MicroJIA    时间: 2014-1-15 23:26
楼主你那么倾斜 后面不会触到地面?
作者: 张永超    时间: 2014-1-15 23:27
MicroJIA 发表于 2014-1-15 23:26
楼主你那么倾斜 后面不会触到地面?



作者: MicroJIA    时间: 2014-1-16 00:01
张永超 发表于 2014-1-15 23:27

没切割车模吗?  

作者: 张永超    时间: 2014-1-16 13:45
MicroJIA 发表于 2014-1-16 00:01
没切割车模吗?

简单的磨一下。你试试就知道了

作者: yuqianao    时间: 2014-1-23 21:17
张永超 发表于 2014-1-16 13:45
简单的磨一下。你试试就知道了

你是,磨了一点和上面电机架一样高,是这样吗?

作者: 鹿死谁的手    时间: 2014-1-24 11:57
太屌了,不加速度都这么好,我加了速度静止都不是很好,你的机械好给力啊,最近摄像头遇到问题了,采集回来的图像错位了,摄像头不大好弄,苦恼啊
作者: crabapple    时间: 2014-1-24 12:04
没有速度闭环的吗,立得挺好的。。
作者: 槲落槐苍    时间: 2014-2-22 11:24
楼主这个问题怎么解决的,两路外部中断和直立加摄像头会不会冲突啊
作者: 张永超    时间: 2014-2-22 13:37
不会啊。。。那个脉冲捕捉不是外部中断做的。。。而直立周期和摄像头采集时间长短。得需要好好考虑一下。。
作者: 石秋燕子    时间: 2014-3-6 19:54
唉!同学,你们的编码器弄出来没?
作者: 张永超    时间: 2014-3-6 20:18
石秋燕子 发表于 2014-3-6 19:54
唉!同学,你们的编码器弄出来没?

你是指kl25的双路编码器捕捉??我们采用的是kl25的tpm的外部时钟引脚接编码器的脉冲信号端。。大致思想是这样的,用编码器的脉冲作为tpm的外部时钟输入,每当来个上升沿或者下降沿,内部有个寄存器,(好像是cnt不大记得了)便会自加。。到时候查寄存器值就可以了。希望能对你有帮助

作者: 石秋燕子    时间: 2014-3-8 16:25
张永超 发表于 2014-3-6 20:18
你是指kl25的双路编码器捕捉??我们采用的是kl25的tpm的外部时钟引脚接编码器的脉冲信号端。。大致思想是 ...

谢啦!我们用的是K60,用了FTM正交解码,也能计数脉冲个数!

作者: cocoplayer    时间: 2014-4-16 21:49
看到你们解决了kl25脉冲计数的问题,就是不进中断计数,请问你们是怎么做的呢?小白不是太懂

作者: 张永超    时间: 2014-4-16 23:13
cocoplayer 发表于 2014-4-16 21:49
看到你们解决了kl25脉冲计数的问题,就是不进中断计数,请问你们是怎么做的呢?小白不是太懂

没有注意这个问题啊。。就是在pit中时期查 tpm中某个寄存器值而已啊  前提是编码器作为tpm外部时钟

作者: 隐逸流光    时间: 2015-3-28 20:54
直立怎么调啊,我用的是卡尔曼滤波
作者: xueyitianshi    时间: 2015-7-10 20:27
楼主,我们采集编码器的值的时候遇到同样的问题,可以把你在那个网站上的资料发给我一份吗?那个链接现在不存在了,谢了




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2