树莓派全域快门相机的外部硬触发的坑

源自知乎:佳狼狼狼狼狼

01-21 13:48

在构建长基线双目相机项目时,树莓派Global Shutter相机因其性价比和全域快门特性成为理想选择。然而,实现外部硬件触发的过程并非一帆风顺,其中隐藏着批次差异、电平匹配和软件配置等多个“坑”。这篇内容详尽记录了从焊接、排障到成功配置的全过程,能为后续开发者节省大量调试时间,提供一套可靠的解决方案。

树莓派全域快门相机的外部硬触发的坑智能速览

  • 硬件触发存在批次差异,部分相机需移除特定电阻才能启用功能。

  • 相机触发引脚焊盘极为脆弱,焊接后需用热熔胶加固以防脱落。

  • 相机触发电平为1.8V,需通过电阻分压匹配树莓派3.3V的GPIO输出。

  • 触发逻辑为低电平有效,且触发脉冲宽度需等于快门速度。

  • 软件配置需设置Slave模式、延长超时时间并开启always-on模式。

树莓派全域快门相机的外部硬触发的坑精华内容

要实现树莓派相机的精准同步,外部硬件触发是关键。但实际操作中,从焊接、电平匹配到软件配置,每一步都可能隐藏着让你耗费数天时间的“坑”,只有系统性地解决这些问题,才能让相机稳定工作。

硬件准备与焊接

树莓派Global Shutter相机基于SONY IMX296传感器,拥有1456×1088的分辨率。对于运动目标捕捉,其全域快门特性可以完全避免果冻效应,且较低分辨率在计算机视觉处理中更具优势,暗光表现也更好。

要实现外部硬触发,首先需要焊接相机背部的8个引脚。这些焊盘非常小且脆弱,操作时务必小心。实践中,即使不慎弄掉GND焊盘,由于相机通过CSI线与树莓派连接后已共地,通常不影响使用。但四个固定螺丝孔处的焊盘并不接地,这一点需要注意。焊接完成后,强烈建议立刻用热熔胶对引脚进行固定,防止后续使用中因拉扯而损坏。

致命的批次差异

最大的“坑”来自相机的硬件批次差异。根据官方文档,部分批次的相机需要移除一颗电阻才能启用外部硬触发功能。如果恰好买到了需要改动但未改动的批次,外部触发信号将无法生效。

具体现象是,触发信号输入后,电平无法被正常拉低。使用示波器测量会发现,本应为0V的低电平被拉高至约0.8V。解决方法是拆开相机背部的保护板,检查是否有额外的六条腿芯片,若有,则必须移除其左上角的那颗特定电阻。这个隐藏问题排查起来非常耗时,是项目中最容易卡住的地方。

电平匹配与触发逻辑

相机的XTR引脚触发电压要求为1.8V,而树莓派GPIO输出的标准电压是3.3V。直接连接有风险,必须进行电平转换。官方建议使用1.5kΩ和1.8kΩ的电阻进行分压。若手头没有精确电阻,也可以使用1kΩ和1.5kΩ组合,分压后得到约2V的电压,经测试相机短期可以耐受,长期使用问题不大。

此外,相机触发是低电平触发,这与常见的高电平触发逻辑相反。编写控制代码时,输出低电平(或PWM的低电平部分)才会触发相机快门。同时,触发信号的持续时间(脉冲宽度)需要等于相机的快门曝光时间,这在代码实现中需精确控制。

软件配置三要素

硬件连接无误后,软件配置同样关键。首先,推荐开启相机的`always-on`模式,避免相机被意外关闭。通过编辑`/boot/firmware/config.txt`文件,末尾添加`dtoverlay=imx296,always-on`即可。

其次,由于使用外部触发,相机应设置为Slave模式。为了方便,可以将其设为默认模式。创建`/etc/modprobe.d/imx296.conf`文件,写入`options imx296 trigger_mode=1`,这样每次开机相机都会自动进入Slave模式。

最后,必须修改相机超时时间。默认情况下,Slave模式的相机若在1秒内未收到触发信号,就会报错重启。需要根据树莓派型号,编辑`rpi_apps.yaml`文件,取消`camera_timeout_value_ms`字段的注释并修改为一个较大值,如60000(60秒)或更大,以确保相机能稳定等待触发。

从硬件焊接的小心翼翼,到排查批次差异的焦头烂额,再到电平与软件的精细调校,成功点亮树莓派相机的外部触发功能,是一条充满挑战但收获颇丰的道路。掌握这些细节,意味着能够构建出稳定、精准的同步视觉系统,为后续的双目视觉、运动分析等高级应用打下坚实基础。

内容由AI生成
0
扫一下,分享更方便,购买更轻松
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

最新文章 热门文章