PCF8583 jako čítač impulsů

Problémy s návrhem, konstrukcí, zapojením, realizací elektronických zařízení

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
mhepp
Příspěvky: 30
Registrován: 16 srp 2017, 02:00

PCF8583 jako čítač impulsů

#1 Příspěvek od mhepp »

Ahoj,

mám problém s konstrukcí, kde používám PCF8583 jako čítač impulsů...

Zapojení je v podstatě katalogové, místo krystalu mám magnetický spínač (takové to co sepne při přiblížení magnetu) a pull-up rezistor. SW část zapojení funguje, problém je se zákmity na spínači. Registruji vždy 1-4 pulsy na jedno sepnutí (celkem náhodně).

Zkoušel jsem to omezit pomocí RC členu, ale dostal jsem se pouze do stavu, kdy se to asi celé rozkmitalo, takže jsem získal násobně více pulsů (cca 250 až 900 v závislosti na hodnotách R a C, počet samozřejmě náhodný ve velkém rozmezí). Potřebuji snímat pulsy maximálně desítka za sekundu, spíše budou ale velmi řídké (miskový srážkoměr).

Nemám k dispozici osciloskop, abych se podíval, co se děje na vstupu.

Dále mne napadlo použít hallův spínač, problém je v napájení -- 3.3V, nenašel jsem žádný, který by fungoval při tomto napětí -- poradíte, prosím?

Dále mne napadlo zařadit mezi spínač s RC optočlen, žádný jsem ale v šuplíku nenašel -- má to cenu zkoušet?

Děkuji za rady...

Uživatelský avatar
Jirka525
Příspěvky: 325
Registrován: 22 kvě 2013, 02:00
Bydliště: Psáry JN79GW

#2 Příspěvek od Jirka525 »

Co je čidlem, které vysílá pulsy? Jazýčkový kontakt nebo je to podpořené nějakou elektronikou?
Naposledy upravil(a) Jirka525 dne 16 srp 2017, 14:31, celkem upraveno 1 x.
Jirka

Uživatelský avatar
EKKAR
Příspěvky: 29689
Registrován: 16 bře 2005, 01:00
Bydliště: Česká Třebová, JN89FW21

#3 Příspěvek od EKKAR »

Ten krystal není u mikrořadiče jako čidlo, ten tam slouží jako zdroj taktovacího signálu pro interní bloky a řídí vlastně rychlost běhu vlastního programu. Krystal dej kam patří, případně na jeden z vývodů pro něj (kterej, to najdeš v datasheetu) připoj vnější přesnější oscilátor a jako čidlo použij třeba piezoelement z nějaký hračky, napojenej na jedno- až dvoutranzistorovej zesilovací a omezovací stupeň, kterej ti z pádu kapky učuní krásnej obdélníkovej impuls, normálně zpracovatelnej mikrořadičem.
Nasliněný prst na svorkovnici domovního rozvaděče: Jó, paninko, máte tam ty Voltíky všecky...

A kutilmile - nelituju tě :mrgreen: :mrgreen: !!!

Uživatelský avatar
Jirka525
Příspěvky: 325
Registrován: 22 kvě 2013, 02:00
Bydliště: Psáry JN79GW

#4 Příspěvek od Jirka525 »

Ekkare domnívám se že tazatel měl na mysli "event counter mode", při kterém se pulsy připojují na vstup OSCI. Podle mě by to mělo fungovat i bez krystalu jako prostý čítač. Pravdou je, že jsem to takhle nikdy nezkoušel.
Jirka

Uživatelský avatar
EKKAR
Příspěvky: 29689
Registrován: 16 bře 2005, 01:00
Bydliště: Česká Třebová, JN89FW21

#5 Příspěvek od EKKAR »

Jo, mohlo by to fungovat - ale musí to bejt čistej impuls ošetřenej proti zákmitům - což jak zjevně vidno, nemá.
Nasliněný prst na svorkovnici domovního rozvaděče: Jó, paninko, máte tam ty Voltíky všecky...

A kutilmile - nelituju tě :mrgreen: :mrgreen: !!!

Uživatelský avatar
Milan
Příspěvky: 1283
Registrován: 02 dub 2012, 02:00
Bydliště: Vysočina

#6 Příspěvek od Milan »

Mezi jazýček a čítač zapoj RC integrační člen s časovou konstantou cca 20- 30 ms a Schmittův klopný obvod ,buď jedno hradlo SKO nebo ze dvou tranzistorů a pár odporů. Neuškodí přívod k jazýčku stínit , vstup čítače je jistě na dost vysoké impedanci.

Uživatelský avatar
mhepp
Příspěvky: 30
Registrován: 16 srp 2017, 02:00

#7 Příspěvek od mhepp »

Děkuji, že jste si to srovnali a teď bych poprosil... ;)

Je to tak, jak jste postupně pochopili... Zákmity na spínači jsou problém. Pokud jsem přidal RC obvod proti zákmitům (http://www.eng.utah.edu/~cs5780/debouncing.pdf, strana 13 a 16), tak znikly oscilace na vstupu (jinak si množství pulsů nedovedu vysvětlit).

Máte nějakou radu jak vyčistit ty zákmity? Rád bych nějaké jednoduché řešení... Ještě mne napadlo dát tam 555, ale ta pracuje podle katalogu od 4.5V, což já jsem limitován 3.3V (potřebuji na stejnou I2C připojit i zařízení, které 5V nedá, vést dvě napájení by opět byl problém).

Děkuji za rady...

Edit:

Milan: SKO jsem nedával -- doporučíš nějaký na 3.3V, jazýček je připojen přes krátké vodiče (cca 5cm) z kroucené dvojlinky, tam by se toho nemuselo moc nachytat.
EKKAR píše:Jo, mohlo by to fungovat - ale musí to bejt čistej impuls ošetřenej proti zákmitům - což jak zjevně vidno, nemá.
Naposledy upravil(a) mhepp dne 16 srp 2017, 14:52, celkem upraveno 1 x.

Uživatelský avatar
Jirka525
Příspěvky: 325
Registrován: 22 kvě 2013, 02:00
Bydliště: Psáry JN79GW

#8 Příspěvek od Jirka525 »

Jestli je tam skutečně pouze kmitající kontakt, tak by mohlo pomoci následující zapojení.
Přílohy
impuls.jpg
(39 KiB) Staženo 180 x
Jirka

Uživatelský avatar
ZdenekHQ
Administrátor
Administrátor
Příspěvky: 25593
Registrován: 21 črc 2006, 02:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#9 Příspěvek od ZdenekHQ »

Šlo by použít přepínací jazýčkové relé a dva NANDy viz levá část obrázku.


Obrázek
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]

Uživatelský avatar
Milan
Příspěvky: 1283
Registrován: 02 dub 2012, 02:00
Bydliště: Vysočina

#10 Příspěvek od Milan »

Oscilace při připojení rc členu ti vznikají zřejmě proto, protože ten vstup není "logický", ale v určité části lineární a zesilující ,jak jinak také u oscilátoru. SKO tam vnutí jen úrovně 0 a 1 a tudíž tu lineární oblast při změně stavu "přeskočí ". Můžeš použít třeba hradlo z 4093 , raději nic rychlého jako HC, HCT ap . - ty ne. Prostě tento vstup procesoru není sám o sobě vhodný ke zpracování analogového signálu a musíš mu jej proto tím SKO "předžvýkat" . Řada procesorů má na regulerních vstupech ten SKO již uvnitř a pak to funguje bez problémů .

Uživatelský avatar
mhepp
Příspěvky: 30
Registrován: 16 srp 2017, 02:00

#11 Příspěvek od mhepp »

Milan píše:Oscilace při připojení rc členu ti vznikají zřejmě proto, protože ten vstup není "logický", ale v určité části lineární a zesilující ,jak jinak také u oscilátoru. SKO tam vnutí jen úrovně 0 a 1 a tudíž tu lineární oblast při změně stavu "přeskočí ". Můžeš použít třeba hradlo z 4093 , raději nic rychlého jako HC, HCT ap . - ty ne. Prostě tento vstup procesoru není sám o sobě vhodný ke zpracování analogového signálu a musíš mu jej proto tím SKO "předžvýkat" . Řada procesorů má na regulerních vstupech ten SKO již uvnitř a pak to funguje bez problémů .
K podobnému závěru jsem došel také, ale mé znalosti jsou v tomto směru velice povrchní, už jsem z toho opravdu vypadl. Poznámka o rychlých hradlech je docela důležitá, práskl bych tam první, co by mi příšlo pod ruku a divil bych se i nadále...

Každopádně děkuji všem za zajímavé podněty a rychlé reakce, o výsledek se podělím, jen to nebude hned, mám toho teď docela dost...

Uživatelský avatar
mhepp
Příspěvky: 30
Registrován: 16 srp 2017, 02:00

#12 Příspěvek od mhepp »

Zdravím po čase,

řešení jsem nalezl, tak se chci podělit.

Jako omezení zákmitů na spínači jsem použil 2 odpory 10k a kondenzátor 1uF, připojil na SKO 74hc14, výstup z SKO na PCF a hle, ono to funguje. Hodnoty jsem nastřelil by voko, co šuplík ve vhodném rozměru dal (kanibalizuji staré DPS s SMD součástkami ;) )

Takže děkuji za rady, vyřešeno.

Odpovědět

Zpět na „Řešení problémů s různými konstrukcemi“