方案介绍
这个项目可以使用最多 6 节电池的智能电池充电器,打开显示屏并检查充电情况。
它将使用 1 到 6 节电池。第一个电池必须连接到 1 号点——该连接与为 Arduino 和其他电子设备供电的电压调节器相连。然后可以以任何顺序连接第 2 个和更高的。当您连接电池时,Read_Show_Volts 函数中会检测到电压,并将该电池添加到充电周期中。
它是如何工作的——我想容纳 6 节电池。使用 Arduino UNO 时,2 线 LCD 控制需要 A4 和 A5 模拟输入,而剩下的 4 个模拟输入太少了。所以我连接了一个 MCP-3008 8 通道模拟输入。我使用 2 个 1k 电阻器作为 MCP-3008 的每个输入的分压器。
程序中基本上调用了4个函数。
函数read_show_volts通过测试大于 8 伏的可用电压来检查每个连接以查看是否连接了电池。如果有 8v 或更高电压,则会将该连接添加到充电回路。
函数check_relays检查计时器计数器,当它达到最大值时,它将充电器移动到排队的下一个继电器。
函数update_display就是这样做的——更新显示。首先它显示线路 1 上连接 1、2 的电压以及线路 2 上连接 3 和 4 的电压。然后当计时器告诉它时,它会改变并显示线路 1 上连接 5 和 6 的电压,因为我有两个额外的模拟输入我显示系统电压(希望为 5 伏)和 iref 电压 – 3.3 伏。这些读数不是必需的,但有一个空白行,我不知道还能显示什么——我对想法持开放态度。
最后一个函数是read_distance_update 。这个很有趣,玩起来最有趣。我连接了一个 HC-SR04 超声波声纳测距装置。我想让液晶显示器监测电压,但我几乎从不站在那里看着液晶显示器——大多数时候它可以被关闭。我本可以放一个开关——简单的出路——但我所做的是把 HC-SR04 放进去,几秒钟后关掉液晶显示器。然后,当我将手靠近 HC-SR04 时,我重新打开液晶屏 X 秒。
大多数东西都有变量,因此您可以根据需要对其进行调整。我已将充电计时器设置为每块电池 1 小时。因此,如果连接了两节电池,它将每天充电 1 小时,每次 12 次。使用 4 节电池,每天 6 次将是 1 小时,依此类推。
只要我有 HC-SR04,我就添加了一个例程,将定时器循环更改为更短的时间——每块电池只需几秒钟。我这样做的原因是我可以看到它在电池之间切换正常,我不必等待一个小时就能看到它切换。如果您将手放在 HC-SR04 上几秒钟,它会闪烁 lcd 背光灯,因此您知道它已切换。然后,您会听到继电器每隔几秒钟切换一次。再次将手放在 HC-SR04 上,它将切换回来。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !