Spørgsmål:
Hvordan kan jeg konvertere output fra en øjeblikkelig switch til en puls ved tryk og en puls ved frigivelse?
noise
2009-11-17 04:07:26 UTC
view on stackexchange narkive permalink

Titlen siger stort set alt.

Jeg har en idé om at prøve at involvere et op-amp-differentieringskredsløb og en diodebro, men jeg flyver blind.

Jeg prøver også at opnå dette uden en mikrocontroller.

Mellem chiphacker og mine @tcmaker-knopper har jeg en masse potentielle løsninger. Jeg har simmet et par i SPICE, og der er helt sikkert noget potentiale, jeg skal bare se, om de vil gå ind i min bøjning. Tak for svarene alle sammen! Jeg prøver at sende opdateringer om mine fremskridt.
Her er en løsning skrevet af en af ​​mine venner, meget detaljeret forklaring og inkluderer en LTSpice-skematisk. http://uptownmaker.blogspot.com/2009/11/pulses-on-pushbutton.html
Seks svar:
#1
+8
English Dave
2009-11-18 02:43:23 UTC
view on stackexchange narkive permalink

Hvis du gerne vil have en god analog løsning, er der dette kredsløb, der bruges af flyvninger:

"Sorry, new users aren't allowed to use image tags"
(kilde: simprojects.nl)

Skematisk viser arrangementet for en vippekontakt, men det kunne let erstattes af et øjeblik.

Hver gang switch skifter position, skal kondensatoren oplades og aflades. I løbet af denne tid udvikles en spænding på tværs af relækontakterne, hvor kontakten lukkes. Når kondensatoren er opladet, slukkes relæet igen.

Mere info her: http://www.simprojects.nl/toggle_to_momentary.htm

Denne er smart til at bruge det mindste antal komponenter, kun en enkelt kondensator og et relæ. Ulempen er, at relæet er ret stort, men den oprindelige spørger kan muligvis finde mindre eller solid state, der fungerer på samme måde (kan kræve tilføjelse af en ekstra modstand for at bremse kondensatorens opladning / afladningstid)
#2
+8
endolith
2009-11-18 11:25:59 UTC
view on stackexchange narkive permalink

XOR gate:

alt text

Jeg har brugt NC7SZ58 til dette, hvilket er billigt ($ 0,04) og lille og har Schmitt triggerindgange, så impulserne er omtrent den samme længde (som kan indstilles af RC-værdierne).

Måske et RC-lavpas på begge indgange, men forskellige tidskonstanter, til afvisning?
#3
+6
jkopel
2009-11-17 11:14:28 UTC
view on stackexchange narkive permalink

Afhængigt af hvor meget du vil investere i læring, ville den afvisende, xor, flip-flop-løsning være den mest "grundlæggende". 555 er dog et fantastisk kredsløb at lære om. Her er en side, der går igennem om et stort antal applikationer til den: http://www.kpsec.freeuk.com/555timer.htm

Hvis du leder efter "Edge-triggering" under det monostabile afsnit, finder du, hvad der synes at være den løsning, du leder efter.

Fortæl ikke "alt skal gøres på en UC" -mængde, men jeg elsker 555, og jeg har bare en bunke af dem, tak!
#4
+6
icabrindus
2009-11-18 05:05:50 UTC
view on stackexchange narkive permalink

Du kan bruge en simpel xor gate og en af ​​indgangene tilsluttet switche direkte, mens den anden input via et R-C kredsløb, der giver forsinkelsen. Dette fungerer OK som en "kantdetektor", men det gør ikke nogen afvisning - du bad ikke om dette :-). Det er sandsynligvis den billigste måde, hvis du allerede har en ubrugt xor-port i dit design.

#5
+5
davr
2009-11-17 06:31:08 UTC
view on stackexchange narkive permalink

At tillade en 555, men at afvise en mikrokontroller, er fjollet, du kan få en mikrokontrol i den samme eller mindre pakke end en 555, og som en bonus kan du afvise i software og gemme nogle ekstra komponenter, der kræves for at afvise signal til 555. Den samme ting gælder D-flip-flop og XOR-gate ... det er 2 IC'er, du har brug for, ud over de afvisende komponenter.

Hvad er din grund til at du vil undgå en mikrokontroller? De enkleste er $ 1, sandsynligvis meget mindre i store mængder. Hvis der er plads, er der en 8-polet TSSOP AVR, der er som 3x5 mm, temmelig lille.

Jeg antager, at Mr. Noise beder os om at hjælpe med hans hjemmearbejde, og han har ikke lov til at bruge den åbenlyse løsning.
Den største årsag er, at jeg prøver at lære noget om elektronik. Jeg har allerede gjort det i kode, som jeg kan falde tilbage på, hvis det er nødvendigt ... og nej, det er ikke en lektieopgave, bare en beskeden kredsløbsbøjning til min egen underholdning og opbygning. Tak for svaret, det giver mig en retning at arbejde hen imod.
Det er rimeligt, hvis du angiver, at der i dine spørgsmål i fremtiden vil folk forstå det bedre.
Det er heller ikke urimeligt at undgå en mikrokontroller på grund af omkostningerne til oprettelse / vedligeholdelse / test af kode. Det er noget, der gik over mit hoved som junioringeniør, men som jeg er kommet til at forstå meget godt, da jeg har fået erfaring. "Åh, vi kan bare gøre det i software" -mentaliteten kan få dig i problemer undertiden, når du skal bevise, at noget skal fungere.
Jeg er lidt forvirret over, hvordan brugen af ​​en miniaturecomputer og software til at implementere en simpel logikfunktion er "den oplagte løsning".
#6
+3
SiliconFarmer
2009-11-17 04:49:06 UTC
view on stackexchange narkive permalink

Der kan være en måde at gøre det på med en 555-timer, der er konfigureret som et one-shot.

En D-flip-flop og en XOR-gate gør det også. Præcis logik tilbage som en øvelse for læseren.



Denne spørgsmål og svar blev automatisk oversat fra det engelske sprog.Det originale indhold er tilgængeligt på stackexchange, som vi takker for den cc by-sa 2.0-licens, den distribueres under.
Loading...