按钮,干簧管,霍尔,声音,震动,倾斜,红外开关小谈

说一说开关们

本文章分为

  • 按钮开关
  • 干簧管开关
  • 霍尔开关
  • 声音开关
  • 震动开关
  • 倾斜开关
  • 红外开关

按钮

所有的按键开关原理都大同小异,我的按钮开关模块的引脚有三条,vcc,gnd,out,接入电路时vcc接5v,gnd接地,out接arduino 的任意数字接口,比如7,它的工作逻辑也很简单,当按键松开时,out输出一般是LOW电压,当按键被按下时,out输出变为HIGH,基于这样一个反馈,我们可以编写一个含有if语句的程序来实现利用按键开关来控制的这样一个想法。

下面我举了个利用开关控制led亮灭的实验:

int button = 7;
int led = 6;
void setup() {
// put your setup code here, to run once:
    pinMode(button,INPUT);
    pinMode(led,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
    if(digitalRead(button) == HIGH){
      digitalWrite(led,HIGH);
      delay(200);
    }
    else{
      digitalWrite(led,LOW);
    }
}

干簧管开关

首先来了解什么是干簧管,干簧管又名磁簧开关:

磁簧开关的工作原理非常简单,两片端点处重叠的可磁化的簧片(通常由铁和镍这两种金属所组成的)密封于一玻璃管中,两簧片呈交迭状且间隔有一小段空隙(仅约几个微米),这两片簧片上的触点上镀有层很硬的金属,通常都是铑和钌,这层硬金属大大提升了切换次数及产品寿命。玻璃管中装填有高纯度的惰性气体(如氮气),部份干簧开关为了提升其高压性能,更会把内部做成真空状态。
簧片的作用相当与一个磁通导体。在尚未操作时,两片簧片并未接触;在通过永久磁铁或电磁线圈产生的磁场时,外加的磁场使两片簧片端点位置附近产生不同的极性, 当磁力超过簧片本身的弹力时,这两片簧片会吸合导通电路;当磁场减弱或消失后,干簧片由于本身的弹性而释放,触面就会分开从而打开电路。

其实说白了,高中物理老师告诉我们的感应起电就是干簧管的基本原理,惊不惊喜?此外,干簧管开关的作用就是可以将磁性物体空间上的靠近作为触发点,拓展了开关触发机制的多样性。

干簧管开关除了基础状态是HIGH,出发状态是LOW,其他使用起来的逻辑以及代码和按钮开关的一模一样,看上面就好了。

霍尔开关

霍尔原件熟不熟悉?利用的就是高中学过的霍尔效应。制成开关呢和干簧管的作用差不多,笔者实验过后的唯一感受是霍尔开关需要在霍尔元件的印章面靠进才有效果,而干簧管360°靠近都可以,但是霍尔元件更稳定准确。

声音开关

其实无非就是一个声音模块,只是这种模块呢它的输出端是数字输出,也就是一旦声音的强度达到某一阈值,它就输出HIGH,否则输出LOW,设计者制造出这样一个逻辑后声音模块自然而然地能够被当做开关来使用了。忘记说了,它既灵敏又准确。

倾斜开关 & 震动开关

两种开关只有触发机制的区别,操作逻辑也和上述开关大同小异,但是笔者有一点感受就是,倾斜开关时真的不灵敏也不准确,震动开关灵敏是灵敏,但是不是很准确。

红外开关

我这里说的红外开关,其实是我使用了红外避障模块后决定把它归为开关类的,它的优点很明显,灵敏而准确。一旦有物体在15cm内出现时,开关立马作出反应,同时红外避障模块对颜色的识别也有一定造诣,笔者实验表明黑色物体即使贴模块的脸也无法识别,而白色相对敏感,基于此特点,循迹小车的实现可以依靠它了。

总结
对于大多数开关模块来说,上面会有一个电位计,这个是用来调节灵敏度的,此外,如果有两个输出端A0,D0则是模拟输出和数字输出,因为实际上大部分开关都是基于一个阈值的模拟输出,如果有机会动手把模拟输出值打印在串口显示器上可以更真切的理解开关的含义。谢谢

你可能感兴趣的:(arduino)