Hallo! Im Rahmen meiner Facharbeit habe ich eine Zeitmessung für Sprintläufer entwickelt. Funktioniert super außer das folgende Detail: Ab und zu löst die Startpistole willkürlich von selbst aus. Siehe Schaltung im Anhang.Der Ne556 Ausgang ist mit dem Interrupt des Atmegas verbunden. Bei der 2 VERSION der Schranke soll das verbessert werden. Der NE556 mit der Monostabilen Schaltung FÄLLT GANZ WEG! Es ist nur noch ein Atmega 8 vorhanden. Meine Frage: Vorraussetzung: 1) Sher langes Kabel, 200-300m! 2) Jedes Kabel soll verwendet werden können ( also keine Schirmung oder so..) 3) Kabel ist eventuell aufgewickelt ( also wirkt zum teil wie eine Spule..Induktion... im Schaltplan auch so angedeutet.) 4) Schaltung sollte mit wenigen standart Bauteilen aufzubauen sein ( Transistor, Dioden, Widerstände) Ziel: SICHERES Auslösen der Zeitmessung durch Interrupt am Atmel nur wenn auch wircklich der Taster gedrückt wurde. Ich hab irgendwann mal was von einem Klingelschalter gelesen gehabt... ---"Schulter zucken" Ich hoffe es kann mir wer helfen! Schönen Abend noch! Gegoogelt und gesucht hab ich natürlich schon , eventuell kennt jemand auch vielleicht ein Stichwort! PS: Bitte kein Rätseln warum die Schaltung mit dem NE556 nicht funktioniert hat... wollte das nur als kleine Einleitung zum besseren Verständniss des Problems und der Sache dazu schreiben.
pack einen optokoppler dazwischen, sonst hast du immer fehlauslösungen. Mit Optokoppler ist dann alles OK. Olli
200-300 meter Kabel - nee nee: erstmal galvanisch entkoppeln - eine kleine Entprell Routine zusätzlich kann auch nie schaden aber 300 Meter Kabel würde ich nicht an einen AVR ohne galvanische Trennung anschließen. Olli
Wenn du direkt auf einen Eingang gehst, würde ich auf jeden Fall ein Tiefpass einbauen, z.B. 100nF Kondensator und 100 Ohm Widerstand. Der filtert dir irgendwelche Spikes auf der Leitung weg. Und dann noch 2 Schutzdioden nach + und Masse, falls mal energiereichere Spikes.
verringere mal die 10k auf 1k und setzt sicherheitshalber noch ne 5,1V Z-Diode von der Masse zum Eingangspin, dann kann der Eingang nicht so leicht runtergezogen werden, da das Kabel ja ne riesen Antenne darstellt. Wieso wird so ein langes Kabel benötigt, kann man nicht die Startpistole und den AVR am Ziel belassen. Pistole zum starten und IR-Lichtschranke zum stoppen nehmen? Wozu hast du nen NE555 in der Schaltung soll der was verzögern oder zu kurze Impulse filtern? Also ich würde nur nen AVR nehmen und das dann per Software machen. Ist schon ein ziemlich einfaches Projekt für ne Facharbeit.
Was ist an Olli's Vorschlag so schlecht ? Mit Optokoppler schaltest du Stromgesteuert und das ist weniger störanfällig als Spannungsgesteuert wenn du den Schalter direkt am Pin hängen hast. Davonj abgesehen gibt Koppler mit Schmitt Trigger und TTL Ausgang, das dürte nochmals helfen. In Software dann noch eine Entprellroutine wie es Peter vorschlägt, falls der Taster prellen sollte. Gruß Hagen
@ Sebastian Kreuzer (bastik) >Dateianhang: Taster-Problem.JPG (39,6 KB, 110 Downloads) Bildformate >Ziel: SICHERES Auslösen der Zeitmessung durch Interrupt am Atmel nur >wenn auch wircklich der Taster gedrückt wurde. Wie sämtliche Vorposter schon geschrieben haben. Entprellen bzw. mit Optokoppler. Entprellen kann man recht einfach so, und da du einen Interrupt auslösen willst MUSST du mit Hardware entprellen, in Software geht das nicht! Schmitt-trigger Der AVR hat schon Schmitt-Trigger Eingänge, brauchst du also nur noch 2 Widerstände und einen Kondensator. MFG Falk
Falk Brunner wrote: > Entprellen kann man recht einfach so, und da du einen Interrupt auslösen > willst MUSST du mit Hardware entprellen, in Software geht das nicht! Son Quatsch. Du kannst natürlich auch in dem Timerinterrupt für die Entprellung gleich die Taste auswerten. Niemand sagt, daß Du das erst im Main darfst. Und wenn Du den Timerinterrupt gleich der gewünschten Zeitauflösung wählst (z.B. 10ms) kannst Du darin auch einfach die Zeiten hochzählen. Peter
@ Peter Dannegger (peda) >> Entprellen kann man recht einfach so, und da du einen Interrupt auslösen >> willst MUSST du mit Hardware entprellen, in Software geht das nicht! >Son Quatsch. Es war EXPLIZIT gesagt, dass er einen Interrupt über den Taster auslösen will. Klar, man kann sicherlich auch einen 10ms Timer laufen lassen und pollen, das sollte für die Zeitmessung allemal reichen. Das ist aber schon wieder ne andere Geschichte! Und niemand hat das dem OP gesagt! MfG Falk
Und abgesehen davon muss man bei 300m Kabel ein KLEIN wenig Hardware investieren, um Fehlimpulse zu unterdrücken bzw. noch viel wichtiger, um ESD/EMV zu blocken. MFG Falk
Falk Brunner wrote: > Es war EXPLIZIT gesagt, dass er einen Interrupt über den Taster auslösen > will. Ist ein Timerinterrupt etwa kein Interrupt ? Was ist er dann ? Peter
@ Peter Dannegger (peda) >> Es war EXPLIZIT gesagt, dass er einen Interrupt über den Taster auslösen >> will. >Ist ein Timerinterrupt etwa kein Interrupt ? Der wird wohl kaum vom Taster ausgelöst. Mensch Peter, du bist mal wieder bockig! Es ist FREITAG! MFG Falk
Kannst die Zeitnahme auch mit dem Analog-Komparator-INT starten, mit oben erwähnter Entkopplung über Optokoppler, Tiefpass, Entprellung mit einem Timer (wie peda geschrieben hat) und die Zeitmessung per 1ms-Polling realisieren.
Falk Brunner wrote: >>Ist ein Timerinterrupt etwa kein Interrupt ? > > Der wird wohl kaum vom Taster ausgelöst. Das war auch nicht die Frage. Er unterbricht das Main und kann die Taste nach Entprellung auswerten. D.h. er kann sehr wohl eine Behandlung auf Tastendruck auslösen. Peter
Also ich möchte nicht 300 Meter Kabel auslegen müssen. Vom zusammenpacken und in die Kabine schleppen, red ich dabei noch gar nicht.
@ Karl heinz: Das ist kein Problem. Dafür gibt's große Kabeltrommeln mit Rollen untendran, ist kaum Aufwand. Ich mach' das auf Messen mit DMX-Kabel so. ;)
@ Karl heinz Buchegger (kbuchegg) >Also ich möchte nicht 300 Meter Kabel auslegen müssen. >Vom zusammenpacken und in die Kabine schleppen, red >ich dabei noch gar nicht. Du warst wohl nicht beim Bund? Dort heisst es "Lauf Kabelbongo, dann wirds leichter!" ;-) Naja, minimaler Schaltungsaufwand wird mit geringem praktischem Komfort bezahlt. Man könnte hier sichrlich eines dieser kleinen RS232 Funkmodule im ISM Band nehmen. MFG Falk @ Peter Dannegger (peda) http://de.wikipedia.org/wiki/Pedanterie
So gehts problemlos: Störungssicher und entprellt, inklusive Schutzschaltung!(Einen Optokoppler braucht's nun wirklich nicht)
@ Peter S. (psavr)
>So gehts problemlos: Störungssicher und entprellt, inklusive
Wirklich?
Dein Schalter wird es dir nicht danken, wenn er dauern 100nF blitzartig
entladen darf. Da fehlt definitiv ein Vorwiderstand!
MFG
Falk
@Falk Brunner >Dein Schalter wird es dir nicht danken, wenn er dauern 100nF blitzartig >entladen darf. Q = 100nF * 5V = 0.0000005 As (bzw. 0.5 uAs) Du glaubst hoffentlich nicht ernsthaft daran, dass diese Ladung für irgend einen mechanischen Schalter ein Problem sein könnte? Diese Ladung traue ich selbst noch den kleinsten Mikroschaltern zu! Aber damit auch Du ruhig schlafen kannst: Man könnte natürlich auch noch einen 10..50 Ohm Widerstand in Serie zum Schalter einbauen...
@ Peter S. (psavr) >>Dein Schalter wird es dir nicht danken, wenn er dauern 100nF blitzartig >>entladen darf. >Q = 100nF * 5V = 0.0000005 As (bzw. 0.5 uAs) >Du glaubst hoffentlich nicht ernsthaft daran, dass diese Ladung für >irgend einen mechanischen Schalter ein Prblem sein könnte? Diese Ladung Schon mal den Strom ausgerechnet? Ein Blitz hat auch relativ wenig Energie. Aber ORDENTLICH Leistung! Ausserem ist der 100nF direkt am Schalter relativ nutzlos. die 100nF am uC reichen locker. Und wenn man die Schaltung aus dem Wiki nehmen würde, könnte man sich die exteren Dioden sparen. Aber warum einfach, wenns auch unständlich geht. MfG Falk
Naja, auch die Energie im Kondensator haut mich auch nicht um: W = 0.5*C*U^2 = 0.00000125 J Die Energie im Blitz hingegen schon, die ist um ein zig-faches höher! >Schon mal den Strom ausgerechnet? Der "rechnerische" Peakstrom erscheint einem sicherlich hoch, er ist aber auch ebenso kurz, so dass nix passieren kann! >Ausserem ist der 100nF direkt am Schalter relativ nutzlos. Bau es mal auf (mit 1 km Kabel, abgewickelt), gucke Dir die Signale mit einem Oszilloskop an und staune.... >Aber warum einfach, wenns auch unständlich geht. Sagt einer, der was von Optokoppler schwaffelt...
@ Peter S. (psavr) >Der "rechnerische" Peakstrom erscheint einem sicherlich hoch, er ist >aber auch ebenso kurz, so dass nix passieren kann! Du redest wie du es verstehst . . . >>Ausserem ist der 100nF direkt am Schalter relativ nutzlos. >Bau es mal auf (mit 1 km Kabel, abgewickelt), gucke Dir die Signale mit >einem Oszilloskop an und staune.... Welche Signale? Wo? Das einzige was zählt ist das Signal am uC. welche wilden Störungen am Schalter anliegen ist praktisch egal. >>Aber warum einfach, wenns auch unständlich geht. >Sagt einer, der was von Optokoppler schwaffelt... Du bist der Chef! MFG Falk
Falk Brunner wrote: > @ Peter Dannegger (peda) > > http://de.wikipedia.org/wiki/Pedanterie Daran ist nichts pedantisch, wenn man Anfängern erklärt, daß nicht nur externe Interrupts auf externe Ereignisse reagieren können und das sie im Gegenteil, sogar ungünstiger (störempfindlich) sein können. Pedantisch ist dagegen, auf externen Interrupts zu beharren, nur weil sie so heißen, statt seinen Horizont auch auf andere besser funktionierende Lösungen zu erweitern. Peter
Hi Ich würde den Widerstand nicht vor den Schalter, sondern, eng am µC nach Masse legen. Der kann dann relativ niederohmig sein und unterdrückt bei offenen Schalter Störungen recht wirksam. Kondensatoren natürlich nicht vergessen. MfG Spess
Feine Goldkontaktschalter mögen das wirklich nicht sonderlich, wenn Sie direkt 100nF kurzschließen. Wir hatten damit schon Probleme, weshalb ich so ein Design vermeide.
Hallo! Ich habe ein ähnliches Problem, bin aber noch beim Planen. Ich möchte Impulse über ein langes Kabel (fertige Ethernetkabel) an einen Mikrocontroller senden und diese dort vermesen - d.h. Länge und Zeit zwischen 2 Pulsen. zZ hab ich einfach Schutzdioden nach + und Masse vorgesehen und greife das Signal über eine Widerstand ab. Da mein PIC eine Capture&Compare-Einheit hat, hätte ich diese für die Messerei verwendet. Denkt ihr, wird das reichen oder sollte ich lieber einen Optokoppler dazwischenschalten? An Sachen wie Entprellen muß ich nicht denken, das ist Sache des anderen Kabelendes :-). Mich interessieren nur Impulslänge und Zeit zwischen 2 Impulsen. Das alles bei einer Genauigkeit von <10 ms - also optimaler Weise 1-5ms. Vielen Dank für die Hilfe!
Kommt noch drauf an, ob deine Controllerschaltung irgendwo galvanisch mit Erde gekoppelt ist. Wenn du ein Steckernetzteil nutzt und die Controllerschaltung autonom ist, also keine Signale irgendwohin weiter transportiert werden, ist es völlig unproblematisch. Jede Form galvanischer Kopplung verändert die Situation wieder.
hmmm.... das Ganze geht via USB (bus-powered) an einen Laptop. Also über das Netzteil des Laptops könnte eine galv. Verbinung mit Masse vorhanden sein. Solange der nicht auf Akku-betrieb ist. Aber darauf sollte man sich nicht verlassen. Ich vermute, d.h Optokoppler... oder?
@ Christian Dann muss ich mich mal aus dem Urlaub melden... Erst mal danke fuer die vielen Beitraege, hatte leider in letzter Zeit keine Zeit alles praktisch umzusetezen... aber im Kopf gruebelts weiter... MAX485 also RS485 waere glaub ich auch ne Loesung, etwas teurer halt. vielleicht konnt ich Dir weiterhelfen
ach ja... was mir noch eingefallen ist und ev. nicht unwichtig ist: die Elektronik am anderen Kabelende wird spannungstechnisch von mir versorgt. d.h. über mein Kabel geht Vcc,Vss,Rx,Tx und mittlerweile kenn ich mich einfach nimma aus :-( Danke!
In diesem Fall würde ich auf jeden Fall die lange Leitung über Optokoppler galvanisch abkoppeln. Sonst kann dir der Müll auf der Leitung irgendwo ins Notebook einschlagen und mehr, als nur deine IO-Schaltung zerstören.
stimmt, Laptop abschießen wäre ziemlich doof! Danke! und die Störungen, die sich Vcc und Vss enfangen, sind egal? nur kann man die durch nix ersetzen ...
Speißt du denn ein Fremdgerät über das lange Kabel mit VCC? Das wäre nicht so gut. Ich würde keinem Notebook zumuten, über z.B. 100Meter Kabel irgendwo ein anderes Gerät mit Notebook-5 Volt zu versorgen.
genau. zumindest ist das der gegenwärtige plan. ziel ist es, die sache möglichst einfach zu halten, d.h. nach möglichkeit keine externe spannungsversorgung (wenns sein muß dann halt ein steckernetzteil). aber wenn eben auch nur eine und keine batterien - das macht das Warten mühsam. Sogesehen wird die spannungsversorgung immer über das Kabel mitkommen müssen. aber - und das ist das gute daran, das andere endgerät braucht nicht viel saft, also sollte es eigentlich klappen. denk ich mal...
Wenn du auch VCC galvanisch entkoppeln willst, wäre ein DC/DC-Wandler eine Möglichkeit. Wenn du VCC nicht entkoppelst, kannst du dir wohl auch die Optokoppler sparen, das macht dann nämlich wenig Sinn. Dann reichen wohl die Standard-Eingangs-Schutzbeschaltungen (Tiefpass und Schutzdioden).
ah... klar! warum bin ich nicht von selber drauf gekommen! an die DC/DC wandler hab ich gar nicht gedacht! nocheinmal vielen dank Winfried!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.