yaboPP电子
项目

构建一个PICAXE 14M2和步进电机的红外跟踪器

2017年1月17日通过查尔斯·r·汉普顿

追踪红外光源并不像你想象的那么困难;一个14针PICAXE,一个带有驱动IC的步进电机,三个光电晶体管和一些其他的组件就可以完成这一任务。

本文演示了如何构建一个使用步进电机跟踪光源的红外传感器。

一个简单的概念

假设你想用一个指针或其他设备跟踪一个平面上的对象,并自动执行。这不仅是可能的,而且如果你把它分解成几个单独的任务会很简单:

  • 在被跟踪的物体上安装一个红外线光源。
  • 将步进电机连接到PICAXE微控制器上的输出。
  • 将三个光电晶体管连接到PICAXE微控制器的输入端。
  • 将光电晶体管阵列和指针连接到步进电机轴上。
  • 为PICAXE自动存储器编写代码,使步进电机按照光电晶体管的指令转动。

好吧,也许这需要更多的东西,比如电子设计、机械设计、组件选择和编程技能,但本文将为您提供这些已经完成的工作。继续读下去!

PICAXE新手吗?

yaboPP电子All About Circuits提供了PICAXE系列微控制器的丰富信息。最重要的是,这些文章从基础开始。如果你有使用其他c的经验,PICAXEs对你来说是轻而易举的事情。如果你刚开始使用微处理器,没有比这更好的地方了在这里

红外光源

创建红外光源真的很容易;你需要一个红外LED(如LTE-5228A),一个低电压直流电源(如电池),一个限流电阻,以避免烧坏LED,和电线连接在一起。下面的照片显示了一个例子。

注意,正电压(红色导线)通过电阻连接到LED的阳极,负引线连接到阴极。电阻器可以如图所示在正引线中,也可以在负引线中;两种方式都可以。

你可以使用不同的组件和值来设计你的红外线光源。一个临界值是光的波长;它应该非常接近935nm,因为这是OP505A光电晶体管的灵敏度峰值的波长。

步进电机

一个快速的在线搜索将会带来大量关于步进电机的信息——超过你想要或需要知道的。事实上,第十三章AAC电子教科书中有一页专门讨论这个话题。

这里没有必要重复大量的信息。足以说,一个步进电机是典型的低压直流电机,包含磁铁和线圈安排,使应用驱动电流的绕组在一个适当的顺序将导致输出轴在步骤旋转。根据步进电机的设计,步长可大可小;大的步伐导致更多的“不稳定”的移动,而小的步伐导致更平稳的移动。旋转速度可以通过驱动电流从一个绕组移动到另一个绕组的速度来控制。

步进电机有两相或两相以上;两相步进器可以在单极配置或双极配置中驱动。这里选择的电机是单极电机。该项目采用单极驱动电路,但仅供记录,允许单极驱动的电机也可以由双极驱动电路控制。

有些步进电机有内部传动装置。这些齿轮的设置通常是为了减缓旋转和增加扭矩。本项目使用的电机是一个小型齿轮减速步进电机,如下图所示。

如你所见,有一个PCB包含在步进电机。PCB上的电路包括一个ULN2003A集成电路,其中包含7对达林顿晶体管,其中使用了4对。每一对由两个NPN双极结晶体管组成,作为微控制器输出的小电流信号和步进电机绕组等大电流负载之间的接口。有一个关于达林顿夫妇的讨论第四章AAC电子教科书。yabosports官网

28BYJ-48电机,像许多步进电机一样,有四个绕组,每个绕组可以单独充电。因此,控制PCB使用四个输入(In1, In2, In3和In4)到ULN2003a,每个都通过达林顿驱动器连接到步进电机的四个绕组之一。注意,从控制PCB到步进电机有五根线,一根是电源,四根是信号,通向四个绕组。一个LED和它的限流电阻被提供给每个绕组,以指示电源何时提供。

控制板的原理图如下所示,注释提供了有关电路运行的附加信息。

点击放大

原理图及组装完成

这个项目的其余部分的示意图如下所示。为了看到整个电路,您必须使用此原理图和本文前一节所示的步进电机控制器原理图。

点击放大

这是PICAXE 14M2的引脚图。注意只有两个C端口引脚具有ADC(模数转换)能力:C.0和C.4。但是这三个光电晶体管中的每一个都必须连接到ADC引脚;幸运的是,在B端口有一个可用的ADC引脚:B.5。

这个项目的整个原型组装如下所示。每一部分的标签与原理图上的名称一致。在开始施工之前,最好将原理图中的每个部分与照片中相应的部件进行比较。

点击放大

请注意,三个红外传感器(Q1, Q2, Q3)的光电晶体管阵列显示在原理图中的红色矩形内。在上图的完整组装照片中,三个光电晶体管被显示附在一小块perfboard上,这是热粘合到输出轴的步进电机。

该组件的其他细节如下图所示。光电晶体管阵列应水平安装,并与步进电机的平顶平行。然而,这三个光电晶体管的排列方向应略有不同;25度的光电晶体管之间的角度应该是完美的。

零件清单

您将需要以下列表中的部件。此外,各种电线,焊锡,perfboard,一个良好调节的5VDC, 500mA电力供应,并且需要PICAXE编程电缆。

Ref一部分。 描述 项目编号
N/A 发光二极管,940nm, T1 3 / 4(数量1个) Digi-Key 160 - 1062
N/A 电池,碱性,AAA(3个) N/A N/A
N/A 支架,电池,3倍AAA N/A N/A
R1 电阻,¼W, 22kΩ Digi-Key 22 kqbk-nd
R2-R5 电阻,¼W, 10kΩ Digi-Key 10 kqbk-nd
R6-R8 电阻,¼W, 1kΩ Digi-Key 1.0 kqbk-nd
Q1-Q3 光电晶体管,IR, NPN, 935nm, T1 Digi-Key 365 - 1066
C1 陶瓷电容器,1µF, 50V Digi-Key 399 - 9797
j - 1 杰克,3.5毫米,3-Conductor Digi-Key cp1 - 3533
U1 单片机,PICAXE 14平方米+ PHAnderson.com PICAXE 14平方米+
N/A 面包板,无焊接,400个触点 Digi-Key 377 - 2094
N/A 电机,步进,5VDC,齿轮传动,控制PCB 在线 28 byj-48

代码

下面复制了这个项目的代码,并进行了很好的注释。此外,对于使用PICAXE微控制器有一定经验的大多数人来说,所使用的BASIC命令应该是熟悉的。如果你有问题,请咨询手册2它包含了所有PICAXE BASIC命令的解释。

一般来说,下面是代码的流程:

在第24行到29行,读取阵列中三个光电晶体管每个的电压,以确定照射到它们的红外光线的数量。模拟值被转换成数字值并存储在相应的寄存器中。

在第30行到第37行中,比较了这些值,如果中心的光电晶体管获得了最多的IR光,则不会发生进一步的变化。然而,如果右边或左边的光电晶体管比中间的更亮,程序流被发送到适当的线路,以使步进电机从左到右(第38行)或从右到左(第49行)。该过程不断重复,从而使中心光电晶体管始终定位指向红外光源。

采用的步进模式被称为“全步进”,它一次激励两个绕组,从而提供最大的扭矩从步进电机。其他选择包括“波浪步”和“半步”。

步进速度可以通过改变第11行的步进延迟值来控制。增加值会减慢步进速度;当数值为1000时,这个过程就会慢到几乎察觉不到运动。可用的最小阶跃延迟值为1,它产生最大的转速;值为0将停止电机转动,不能使用。

使用下面的按钮下载代码。

PA14M2_IR_Tracking_Controller.zip

演示视频

下面的视频显示了已完成的项目在运行中,尽管红外LED相当接近光电晶体管。它的操作范围比看起来要大得多;摄影灯光妨碍了手术。

请注意,步进控制PCB上的四个led灯亮着,正确地指示了哪些绕组通电,但您必须大大减慢操作以查看模式。

接下来是什么?

实验将揭示有用的跟踪范围。在室内,你应该使用视频中显示的一个LED大约10英尺。对于更大的范围和/或户外使用,您可以添加更多的led(和限流电阻)作为您的IR光源。只要记住,更多的led会更快地耗尽你的电池。

这个电路有一个明显的实际用途,但是现在,你必须自己去想它。同时,研究代码中的dirsB和pinsB命令,确保准确理解它们的功能。一旦你掌握了这一点,看看“半步进”电机,以减少每个步骤的大小,并提供更高的位置分辨率(以减少扭矩为代价)。

在评论中分享你的结果和想法。

玩得开心!

自己试试这个项目吧!BOM。

1评论