2024. április 28., vasárnap

Gyorskeresés

Raspberry pi pico projekt #2 - csengő

Írta: | Kulcsszavak: pi pico . DIY . ajtócsengő

[ ÚJ BEJEGYZÉS ]

Feleségem szeretett volna egy csengőt a mi lakásunkhoz a házban.
Megint remek alkalom a gyakorláshoz :K . Az alap most is a pi pico. Ezt próbáltam a lehető legegyszerűbbre megcsinálni. Utánajártam hogyan lehet audio-t lejátszani ezzel az rp2040 alapú mikrovezérlővel. Szerencsére a circuitpython jól kezeli a hang lejátszását, ráadásul MP3 playback is van! Remek!

Kellett egy hangszóró.
Kezdetben ilyen kis gyenge, mini hangszóróval teszteltem, hogy működik-e a lejátszás. Csak nagyon közel tartva a fülemhez hallottam, hogy szól. Szóval vagy rakok rá egy erősítőt, vagy kitalálok valami mást. Volt otthon egy forrasztható 3,5mm csatlakozó alljzat és rengeteg használaton kívüli hangszóró.

Akkor elkezdtem kigondolni, hogyan legyen meg nagyjából a kapcsolási rajz.

Nosza, próbáljuk meg összerakni!

Rendeltem egy szilárdtest relét, ezt használom arra, hogy a hangszórót ki-bekapcsoljam. Nem akartam szétszedni a hangszóró elektronikáját, az remekül működött.
Az ajtó kinti oldalára került a doboz a vezérlővel és a gombbal.

Lehet megint elborzadni a látványtól.


Azóta kicsit át lett alakítva. Például lett a gombnak megfelelő rugalmas alátámasztása, miután párom tesztelte és teljes erővel benyomta :D

A visszajelző led addig világít, amíg a csengő szól.

Hozzávalók:
- pi pico
- szilárdtest relé (1A 230V AC, 5v DC, magas aktív)
- forrasztható 3,5mm jack alljzat
- nyomógomb
- egy valamelyest szebb doboz
- vezetékek, NYÁK, stb.
- opcionálisan egy darab LED a visszajelzéshez

Itt a forráskód, amit ez az eszköz használ:

# SPDX-FileCopyrightText: 2021 Kattni Rembor for Adafruit Industries
#
# SPDX-License-Identifier: MIT

"""
CircuitPython single MP3 playback example for Raspberry Pi Pico.
Plays a single MP3 once.
"""
import board
import time
import audiomp3
import audiopwmio
import digitalio

# Simple doorbell script with mp3 playback

# button for the doorbell
button = digitalio.DigitalInOut(board.GP16)
button.switch_to_input(pull=digitalio.Pull.DOWN)
# switch 230V~ for the speaker with a solid state relay
relay = digitalio.DigitalInOut(board.GP18)
relay.direction = digitalio.Direction.OUTPUT
# button led
led = digitalio.DigitalInOut(board.GP21)
led.direction = digitalio.Direction.OUTPUT
# 3,5mm audio output
audio = audiopwmio.PWMAudioOut(board.GP15)

decoder = audiomp3.MP3Decoder(open("doorbell-1.mp3", "rb"))

while True:
if (button.value):
led.value = True
relay.value = True
audio.play(decoder)
while audio.playing:
time.sleep(5)
relay.value = False
pass
print("Done playing!")
led.value = False
relay.value = False

Plusz poén, hogy a pico a tápfeszültséget egy router-től kapja USB-n keresztül. Azon a routeren OpenWrt fut, amire feltettem fájlrendszer kezelésre alkalmas kiegészítőt. Most már ssh-n keresztül tudom módosítani a pico-n lévő fájlokat (kódok, hangok).

Hozzászólások

(#1) [K2]

Ennél a vonalnál a bekapcsolási zaj, ami zavaró lehet. Erre a célra talán jobb lehet egy USB porttal rendelkező MP3 modul, azok jellemzően meg tudnak hajtani egy hangszórót alapból. Itt egy olyan példa, amely gombokkal és soros kommunikációval is vezérelhető: [link]

"Sum ergo cogito; cogito ergo dubito" - Jonathan Hepburn

(#2) DraXoN


DraXoN
addikt
LOGOUT blog

Kicsit "ágyúval verébre" eset :) ... fun meg minden, de tényleg kellett ez? :D

Mindenesetre akármi is a "kellett" részre a válasz, én pár dolgot módosítanék:
1, A külső doboz helyett inkább falon kívüli "csengő" kapcsolót használnék :)
2, A kábelt nem kívülről csatlakoztatnám hanem ezen csengőn belül
3, Kábelcsatornában vinném át a kábelt.
+1, De leginkább az egész egységet belül a lakásban tartanám (ott egy dobozban) és csak a nyomógombnak vinném ki a vezetéket a csengőbe.
+2, Ha van hajlamunk vésni, akár süllyesztett kapcsoló is lehet :)

[ Szerkesztve ]

The human head cannot turn 360 degrees... || Ryzen 7 5700X; RX580 8G; 64GB; 2TB + 240GB + 2TB || Samsung Galaxy Z Flip 5

(#3) saja


saja
tag

Igen. Valóban kissé túl van komplikálva a dolog :) . Gyakorlásnak viszont nem volt rossz.

Köszönöm az ötleteket, a zaj annyira nem zavaró, de megfontolom a külön mp3 egység beépítését.

Át fogom alakítani, valóban belülre rakom a vezérlést inkább.
Illetve kellene egy megoldás, hogy a kert kapuhoz valami rádiós, nem sokat fogyasztó (esetleg kinetikus?) csengő gomb is hozzá legyen kapcsolva (egy kicsit eltérő audio fájlt játszana le hozzá).

Következő két pico project, amiről még készül egy-egy rövid írás:
- lámpa kapcsoló (ha még nem volt eléggé "ágyúval verébre" típusú megoldás ez is :DDD )
- LED szalag, szekrény díszvilágítás

[ Szerkesztve ]

keep calm and code erlang

(#4) [K2] válasza saja (#3) üzenetére

Áh, ez annyira nem komplikált. Ha egyszer végre megvalósítom a kapucsengő projektemet... na az lesz az :DDD

Ha komolyan fontolóra veszed az MP3 modult, szólj, van még itthon egy fölösben.

Kapcsoló a másik irányból: [link] - A vevő részben 12V-os a relé, emlékeim szerint csak amiatt kell neki 12V táp, 5V-os relével ennyiről is működhet. Most nem találom a vevőmet, nem tudom ezt megerősíteni. Ha ebben az irányban indulnál, akkor felkutatom.

"Sum ergo cogito; cogito ergo dubito" - Jonathan Hepburn

(#5) hcl


hcl
félisten
LOGOUT blog

Egy egy-két tranzisztoros erősítő (akár készen ebay-ről, vagy Somogyi kit), meg egy Arduino is megtette volna :) Viszont azokkal a hangszórókkal gondolom a halott is felkel :D :C

Mutogatni való hater díszpinty

(#6) DraXoN válasza hcl (#5) üzenetére


DraXoN
addikt
LOGOUT blog

Ne keljen, de akkor jó az ilyen projekt ha mondjuk vizuális jelzés is kell (akár több helyiségbe), ha csenget valaki.

Mondjuk gondolkodtam pár éve, hogy a mikrómat átalakítom, hogy ne csipogjon ha befejezi, hanem játszon valami zenét :D (láttam videót japán mikroról, kb. csak bocsánatot nem kért annyit "dumált", "csipogott", "zenélt" a különböző műveleteknél :DDD).. Az ardurino-t akkor meg is vettem hozzá... azóta is "csak ottvan" a fiókban.

[ Szerkesztve ]

The human head cannot turn 360 degrees... || Ryzen 7 5700X; RX580 8G; 64GB; 2TB + 240GB + 2TB || Samsung Galaxy Z Flip 5

(#7) saja


saja
tag

Belülre került a vezérlés. A kapcsoló input tüskéjéhez egy 100mF-os kondenzátorral még hozzá kellett kötnöm a földelést is, hogy a mindenféle elektromágneses zaj ne zavarjon be (ha hozzáértem akkor is érzékelt :D ).

keep calm and code erlang

(#8) DraXoN válasza saja (#7) üzenetére


DraXoN
addikt
LOGOUT blog

(ha hozzáértem akkor is érzékelt :D ).
LoL :D

Már csak egy kábel csatorna kellett vola, ha már ilyen "szép új" kapcsoló lett berakva :)

Bár elnézve a szomszédban levő konektorba fixen dugott valamit, aminek a vezetéke egy U szeggel van "fixálva", mi az? :DDD

The human head cannot turn 360 degrees... || Ryzen 7 5700X; RX580 8G; 64GB; 2TB + 240GB + 2TB || Samsung Galaxy Z Flip 5

További hozzászólások megtekintése...
Copyright © 2000-2024 PROHARDVER Informatikai Kft.