Vibrační senzor

Odpovědět
Axamith
Příspěvky: 530
Registrován: 09 srp 2017, 08:17
Reputation: 0
Kontaktovat uživatele:

Vibrační senzor

Příspěvek od Axamith » 06 lis 2018, 11:52

Potřebuji zpracovat výstup z vibračního senzoru. Testoval jsem jak samostatné snímače, tak hotový modul s A/D výstupem. První dva jsem zavrhl, potřebují pro svoji aktivaci relativně velké vibrace, či spíše naklonění.
Druhé dva pracují zase příliš citlivě. Když jsem vyhodnocoval detekci změny stavu sepnutí, stačilo klepnout rukou do stolu nebo jen přijít po prkenné podlaze a už z toho byly desítky změny stavu.
Celé zařízené potřebuji dostat do co nejmenší spotřeby, tak by mi samotné čidlo vyhovovalo lépe, než celý modul (jistě, šlo by ho napájet přes PIN).
Mám představu, že do proměnné uložím aktuální stav snímače, Arduino uspím, po probuzení (perioda 8s.) znovu analyzuji stav snímače, porovnám s předchozím stavem a pokud je rozdíl, spustím proces odeslání informace, pokud rozdíl není, znovu uložím stav a uspím ....
Nenapadá někoho, jak tyto mnohonásobné sepnutí odfiltrovat nebo vyhodnotit? Zařízení bude pracovat jako alarm ve venkovním prostředí, tak aby nereagovalo na poryv větru atd.
Přikládám krátké video sériového monitoru, při kterém snímač reaguje na klepnutí do stolu a zavření šuplíku.

snatch1.zip
(1.78 MiB) Staženo 157 x

Axamith
Příspěvky: 530
Registrován: 09 srp 2017, 08:17
Reputation: 0
Kontaktovat uživatele:

Re: Vibrační senzor

Příspěvek od Axamith » 06 lis 2018, 19:32

Vyzkoušel jsem různé možnosti práce s vibračním senzorem. Jako nejvhodnější se nyní jeví detekce změny stavu podle příkladu z předešlého příspěvku. trochu upravit, vyhodit LEDku, počítání času ... podmínkou jen porovnávat stav předešlého a současného stavu. Ale když Arduino spí, nic nenaměří.
Co takhle připojit do série k v senzoru kondenzátor a měřit napětí nabití. Když senzor nesepne, nenabije se na hodnotu Vcc.

Takže fce by byla následující:
- kondenzátor vybít
- změřit napětí (mělo by být nula)
- uspat
- perioda spánku
- probudit
- změřit napětí na kondenzátoru
- je-li větší než nula (nebo nastavená mez), proběhlo sepnutí během spánku, odešle info o alarmu

Otázka zní, jak kondenzátor přes Pin vybíjet? Napadlo mě přes tranzistor ovládaný dalším pinem ke kondenzátoru připojit vybíjecí odpor. Ale nešlo by elegantněji (SW)?
A další otázka, co periodické nabíjení kondenzátoru udělá s baterií?

SW.png
SW.png (1.99 KiB) Zobrazeno 1520 x

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 14 hostů