Hoofdstuk 6 Zoemer

Alle codes (van proefjes) overzichtelijk op een rij

12 websites die kinderen leren basis programmeren

Transistor 8050

Meer weten….

In dit hoofdstuk leren we over zoemers en de geluiden die ze maken. En in ons volgende project zullen we een actieve zoemer om een ​​deurbel te maken en een passieve zoemer om alarm te maken.

Project 6.1 Deurbel

Wij gaan een deurbel maken met deze functionaliteit: wanneer de drukknopschakelaar wordt ingedrukt, klinkt de zoemer en wanneer de knop wordt losgelaten, stopt de zoemer. Dit is een tijdelijke schakelfunctie.


Componentenlijst

Componentenkennis

Zoemer
Een zoemer is een audiocomponent. Ze worden veel gebruikt in elektronische apparaten zoals rekenmachines, elektronische apparaten wekkers, autostoringsindicatoren, enz. Er zijn zowel actieve als passieve soorten zoemers.

Actief zoemers hebben een oscillator binnenin, deze zullen klinken zolang er stroom wordt geleverd.
Passieve zoemers vereisen een extern oscillatorsignaal (meestal met behulp van PWM met verschillende frequenties) om geluid te maken.

Actieve zoemers zijn gemakkelijker te gebruiken. Over het algemeen maken ze alleen een specifieke geluidsfrequentie.
Passieve zoemers hebben een extern circuit nodig om geluiden te maken, maar passieve zoemers kunnen worden bestuurd om verschillende geluiden te maken
frequenties. De resonantiefrequentie van de passieve zoemer in deze kit is 2 kHz, wat passief betekent de zoemer is het luidst wanneer de resonantiefrequentie 2 kHz is.


Hoe identificeer ik actieve en passieve zoemers?

  1. In de regel zit er op een actieve zoemer een label dat het gat bedekt waar het geluid wordt uitgezonden, maar er zijn uitzonderingen op deze regel.
  2. Actieve zoemers zijn qua fabricage complexer dan passieve zoemers. Er zijn veel circuits en kristaloscillatorelementen in actieve zoemers; dit alles wordt meestal beschermd met een waterdichte coating (en een behuizing) waardoor alleen de pinnen vanaf de onderkant zichtbaar zijn. Aan de andere kant doen passieve zoemers dat niet hebben een beschermende coating aan de onderkant. Vanuit de gaatjes kun je een passieve zoemer zien de printplaat, spoelen en een permanente magneet (alle of een combinatie van deze componenten afhankelijk van het model.

Transistoren
In dit project is een transistor vereist omdat de stroom van de zoemer zo groot is dat GPIO van de RPi-uitvoer vermogen kan niet voldoen aan de stroombehoefte die nodig is voor de werking. Hiervoor is een NPN-transistor nodigde stroom versterken.
Transistors, volledige naam: halfgeleidertransistor, is een halfgeleiderapparaat dat de stroom regelt (denk aan een transistor als een elektronisch “versterkings- of schakelapparaat”. Transistors kunnen worden gebruikt om zwakke signalen te versterken, of om als schakelaar te werken. Transistors hebben drie elektroden (PIN’s): basis (b), collector (c) en emitter (e). Wanneer er loopt stroom tussen “be”, dan zal “ce” een meervoudige stroomtoename hebben (transistor vergroting), in deze configuratie fungeert de transistor als versterker.
Wanneer de stroom geproduceerd door “be” groter wordt een bepaalde waarde, “ce” zal de stroomuitvoer beperken. op dit punt werkt de transistor in zijn verzadigingsgebied en werkt als een schakelaar.
Transistors zijn verkrijgbaar in twee typen, zoals hieronder weergegeven: PNP en NPN,

Dankzij de eigenschappen van de transistor worden ze vaak gebruikt als schakelaars in digitale schakelingen. Als microcontrollers
De uitgangsstroomcapaciteit is erg zwak. We zullen een transistor gebruiken om de stroom te versterken om componenten aan te sturen waarvoor een hogere stroom nodig is.
Wanneer we een NPN-transistor gebruiken om een ​​zoemer aan te sturen, gebruiken we vaak de volgende methode. Als GPIO een hoge uitvoer levert niveau, er vloeit stroom door R1 (weerstand 1), de transistor geleidt stroom en de zoemer maakt geluid.
Als GPIO een laag niveau uitvoert, vloeit er geen stroom door R1, de transistor geleidt geen stroom en zoemer blijft stil (geen geluiden).
Wanneer we een PNP-transistor gebruiken om een ​​zoemer aan te sturen, gebruiken we vaak de volgende methode. Als GPIO een laag niveau uitvoert,
Er zal stroom door R1 vloeien. De transistor geleidt stroom en de zoemer maakt geluid. Als GPIO-uitvoer hoog niveau, er vloeit geen stroom door R1, de transistor geleidt geen stroom en de zoemer blijft stil (geen geluiden). Hieronder staan ​​de schakelschema’s voor zowel een NPN- als een PNP-transistor om een ​​zoemer van stroom te voorzien.

Opmerking: in dit circuit is de voeding voor de zoemer 5V en de pull-up-weerstand van de drukknopschakelaar is aangesloten op de 3,3V-voeding. Eigenlijk kan de zoemer werken wanneer deze is aangesloten op de 3,3V-voeding maar dit zal een zwak geluid van de zoemer produceren (niet erg luid).


Code
In dit project wordt een zoemer bestuurd door een drukknopschakelaar. Wanneer de knopschakelaar wordt ingedrukt, wordt de zoemer klinkt en wanneer de knop wordt losgelaten, stopt de zoemer. Het is analoog aan ons eerdere project dat bestuurde een LED AAN en UIT.

#!/usr/bin/env python3
########################################################################
# Filename    : Doorbell.py
# Description : Make doorbell with buzzer and button
# Author      : www.freenove.com
# modification: 2023/05/11
########################################################################
from gpiozero import Buzzer, Button  
import time

buzzer = Buzzer(17)
button = Button(18)

def onButtonPressed():
    buzzer.on()
    print("Button is pressed, buzzer turned on >>>")
    
def onButtonReleased():
    buzzer.off()
    print("Button is released, buzzer turned off <<<")

def loop():
    button.when_pressed = onButtonPressed
    button.when_released = onButtonReleased
    while True :
        time.sleep(1)
        
def destroy():
    buzzer.close()
    button.close()

if __name__ == '__main__':     # Program entrance
    print ('Program is starting ... ')
    try:
        loop()
    except KeyboardInterrupt:  # Press ctrl-c to end the program.
        destroy()
        print("Ending program")

Code

PROJECT 6.2 Leer hier ook wat een Passieve zoemer is

Scroll naar boven