活用三极管:3个三极管构建机器人的新传感器

1,遇见的实际问题:

a,机器人用了两个模拟信号传感器。但是实际上机器人不需要那么精确的模拟信号,而只需要判断这个模拟信号是否大于某个数值即可。

b,传感器返回的模拟电压会因为机器人的运动而不是很稳定,所以直接读模拟信号需要在软件上处理不稳定的问题。

c,机器人核心芯片模拟输入引脚不足。

2,提出解决方案:采用施密特触发器把模拟信号转为数字信号,同时具备硬件的消干扰功能。这样做同时满足了功能和稳定性的需求之外还解决了机器人芯片模拟输入引脚不足的问题。

3,提出解决方案的实施框架。手头上有三极管,各种数值的电阻若干。根据现有情况决定采用三极管组合构成一个施密特触发器。

4,确定电路图的基本结构。

活用三极管:3个三极管构建机器人的新传感器_第1张图片

5,确定施密特触发器的设计需求。模拟传感器的输出信号是0V~2.7V。施密特触发器的设计目标是当此信号大于2V时输出高电压,小于1.6V时输出低电压,而介于1.6V和2V之间的输出要依施密特触发器之前的状态而定。

6,根据需求,确定Rc1,Rc2和RE的关系。

因为:VHT = (RE*V+)/(RE + Rc2),VLT = (RE*V+)/(RE + Rc1)

而根据第5步的需求,以及三极管VBE结的电压为0.7V左右,在忽略这个电压做计算时,需要把原来VHT和VLT的设计电压减去0.7。即:VHT = 1.3V;VLT = 0.9;而V+为TTL电源电压约为4.8V。

因此:Rc2 = 2.7RE; Rc1 = 4.3RE

7,根据现有电阻的种类和输入电阻的需求确定RE,Rc1和Rc2的值。输入电阻要求越大越好,位于发射极的RE对输入电阻影响很大。这个施密特触发器的输入电阻在视基极和集电极之间为断路的情况下,约等于100RE + RB。因此,取RE大于1K时已经足够。根据现在手头上有的电阻,可以取RE = 2K,Rc1 = 8.2K,Rc2 = 5.6K。这种情况下,VHT = 1.26V,VLT = 0.9V。这个数值基本满足设计需求。

8,取R1,R2的值。从功能要求上来说,R1和R2的取值只要满足施密特触发器在两个工作状态的三极管都能正常打开和关闭就可以了。可以取R1=10K,R2=27K。

9,确定最后的输出电路。由于只由两个三极管组成的施密特触发器输出的低电压有点大。因此还需要一个输出级的三极管来把低电压和高电压两个电位拉开。配置一个简单的三极管静态工作电位就足够完成这个任务了。

10,最后的电路图:

活用三极管:3个三极管构建机器人的新传感器_第2张图片

11,测试。经过测试,输出信号基本达到要求。当输入电压大于1.3V左右输出稳定在VDD,小于0.9V时稳定在0.1V。施密特触发器缓冲阶段的特征很明显。

12,最后把这个电路手工做了两个模块暂时用在机器人身上。

活用三极管:3个三极管构建机器人的新传感器_第3张图片

       (本文为i艾技术作者原创,未经授权,不得转载)

        作者:iamnotstone

        编辑:i艾技术(ID:i-tech2016)




你可能感兴趣的:(活用三极管:3个三极管构建机器人的新传感器)