2012年用F2做的线阵CCD相机

2019-08-20 18:44发布



(本文在另外两个网站发过,包括a摸。)
我用STM32F215RGT6做的线阵CCD相机。硬件是: CCD + 一片运放 + CPU,没有用CPLD之类。
也许,运放都不需要,没有验证过。
线阵CCD的驱动全部用定时器TIM1的四个通道实现,用片上AD进行采集,DMA存储到片上RAM中;
以上整个过程全部用硬件实现,只在一帧图像结束后才用CPU软件进行干预,中断方式(对这一帧图像数据进行处理)。

下图是线阵CCD官方的驱动时序图:
1.png

如果严格按照官方时序,只靠一个定时器实现是不太可能的。(也许能够实现。)
所以,在研究官方时序以后(这一步很重要),结合定时器,设计了一种即满足驱动要求、又容易实现的新的时序图。
另外,增加了一个控制AD的信号,在片内启动AD工作。
最快时钟频率是1MHz,2000多个像素。所以,每秒可以拍摄400次以上。在一些特殊场合很有用。下面就看数据处理的速度了。
下图是是实际实现的时序,用逻辑分析仪采集的,和官方时序有较大区别:
2.png


下图是测试样板,自己用AutoCAD画的,黑杠宽度是5mm,黑杠的中心间距是15mm,一共19条黑杠:
3.png


下图是实验装置,相机、镜头、三脚架之类的。
4.png


下图是PC采集到的一帧图像。图像数据在CPU中断期间,通过串口发给PC,用专用的软件还原成图案。
当时还不会用USB,现在可以做更好,以提高每秒扫描帧数。
梳子图案就是19条黑杠的图像:
5.png


以后的工作,光圈、焦距、镜头等等,需要根据现场进行选择,有一些其他知识要学习。实验时候用的是一百元的镜头。

实验发现,白天调试好光圈和焦距,可以拍出清晰的图像;
到了晚上,图像就很差了,必须重新调整光圈、焦距。
所以,虽然到了这一步,离实际使用环境还有一段路要走。
主要是动态调节积分时间。

线阵CCD相机,贵在传感器和镜头。






友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
正点原子
1楼-- · 2019-08-21 00:19
不错啊,多年前就那么屌
xuande
2楼-- · 2019-08-21 04:23
正点原子 发表于 2016-3-22 21:25
不错啊,多年前就那么屌





s091937
3楼-- · 2019-08-21 07:12
楼主 我最近在用407片上AD采集线阵CCD信号 有些问题想请教,困惑了很久
xuande
4楼-- · 2019-08-21 12:27
s091937 发表于 2017-3-9 17:43
楼主 我最近在用407片上AD采集线阵CCD信号 有些问题想请教,困惑了很久


直接说,在这里。


s091937
5楼-- · 2019-08-21 15:20
 精彩回答 2  元偷偷看……
xuande
6楼-- · 2019-08-21 20:46
s091937 发表于 2017-3-10 23:57
CCD用的是TCD1702,输出方波频率1M,用407的定时器2捕获方波上升沿并触发AD1的5通道,AD完成后触发DMA到数 ...


我找不到1702的手册。
如果怀疑频率快,不妨降低,试验一下。

另外,整个过程包含几个步骤,
应当分开调试,保证每步都是对的,最后合起来。



一周热门 更多>