微控制器v.1上的电子协议

您好,社区! 这篇文章是经典的“自行车”,但是对于电子学和机器人学的初学者来说可能很有趣。

如您所知,现在最小,最简单的机器人技术已组装在Atmega或STM等微控制器上。 在本文中,我基本上不采用像Raspberry这样的小型计算机。

在机器人技术中,除了运动外,有时还需要至少对周围空间进行评估。 所以-我没有遇到简单MK的光学光栅传感器。 流行的“线传感器”不是那样。 在Giktims和类似资源上进行搜索可以找到相机的链接,但是对于简单的MK而言,它们的速度太快了,一篇关于使用8台PC的文章也是如此。 LED作为光电二极管。

图片

因此,这个想法诞生了,它通过与第一个活生物体类比来制造原始的光栅传感器-原生釉。 下面写的所有内容仅出于我自己的娱乐目的而做,没有花最少的钱,也没有实际的应用。 再说一遍自行车,但要尊重尼普科夫和机械电视之父。
细节剪下...

一个BPW85C光电晶体管可用。 可以用在光传感器上聚焦光的雷达扫描仪来制造。

选项1


为了聚焦,可以使用旋转抛物面镜和固定的光电晶体管进行聚焦。 我没有镜子,但是有一块平坦的锡。 用我的双手工作3个小时后,获得了10戈比和几乎抛物线形的镜子。


抛物面镜。 很难照镜子))

组装好旋转装置后,发现光不仅以某种方式从镜子进入,而且从所有侧面进入。 传感器无法被屏幕覆盖,因为大多数视图也会关闭。 我不得不拒绝。

选项2


要聚焦,请使用一个收集镜头,收集照相机的类似物。

找不到所需直径(12毫米)的透镜;我不得不用我的双手将它们制成光盘(存在具有良好光学性能的塑料)。 是的,这是一个残酷的童年木制玩具。 事实证明,聚焦是可以接受的,焦点甚至小于光电晶体管的晶体。

镜头视图

旋转安装-微型15mm步进电机。 同一系列的皮带减速齿轮-“一无所有”。 左右旋转角度约为45°。

一般视图

通过A4988驱动器,Amtega328P MK控制步进电机。 使用半步模式,对于每个半步,都会从ADC MK读取信号。 在ADC之前,晶体管上还有一个放大器,因为光电晶体管信号微弱。 未经处理的接收数据立即通过RS-232发送到计算机。 照明图已在计算机上建立。

一般视图

总计:同时进行水平扫描。 读取时有320线的分辨率,实际分辨率很难测量,在使用一个点光源的测试中,结果是6/320,即每个光栅约53线。

但这是第一个模型,第二个模型(用于2D)将在下一篇文章中介绍。

测试:



测试不同的照明。 绿色图是ADC的电压电平,黑白图是MK“看到”的信号转换的结果。


单点测试。 实际分辨率约为53行


在明亮的背景上“射击”的三个手指电池

“视频”速度为每秒4帧(周期),并由SD的功能决定。 对于一个假设的应用程序(?)在一个简单的机器人中-足够了。

最主要的是,视频拍摄仅占用微控制器的资源,如果有必要,还有可能采取其他措施,甚至进行图像识别。

还尝试进行AGC(自动曝光),但是增益太非线性了。 在运算放大器上可以在下一版本中完成。

资料来源:

在VBasic 6上存档CodeVisionAVR和接收器的源代码



亚力山大

Source: https://habr.com/ru/post/zh-CN411227/


All Articles