mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Impulsunterdrückung Simulation ok, Testaufbau geht nicht


Autor: Jan (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Impulsunterdrückung

Hallo

Ich möchte eine Impulsunterdrückung für eine Standheizung programmieren, 
bei der jeder n-te Impuls unterdrückt wird.
Wobei n=1..9 ist.

MEIN PROBLEM: Die Simulation im AVR-Studio funktioniert, der Testaufbau 
in ECHT aber nicht.

Ich habe mir das so gedacht:

Am Anfang die Jumperstellung(PB0..PB2) in ein Register(JAM) laden.
Dann bei Impulseingang(PB4) (Negative Flanke) Ausgang(PB3) Hexfet 
schalten um Impuls an Mikrodosierpumpe durchzulassen.
Impulsbegrenzung Pumpe Ein auf 3x100ms.
Positive Flanke Pumpe Ausschalten obwohl schon aus, sicher ist sicher.
Impulse kommen regelmässig.
Zählregister (JAM) um 1 vermindern und bei Null, Impuls unterdrücken 
(nicht durchlassen).

Ich habe das Ganze schon nach bestem Wissen und Gewissen programmiert 
und in Hardware aufgebaut.
Als Impulseingang (Masseschalter) habe ich vorrübergehend einen Taster 
genommen.

MEIN PROBLEM: Die Simulation im AVR-Studio funktioniert, aber in ECHT 
nicht.

Ich komm nicht weiter vielleicht kann mir jemand einen Tip geben.
Sleepmodus ist nicht unbedingt nötig, auch die Programmierung 
perInterrupt nicht (habe es ohne interrupts und sleepmodus probiert und 
ging auch nicht.

Danke
Jan

; Schaltbild:
;                   ATMEL ATtiny13
;                     __   ___
;                   1/   |_|    |8
;+5 Volt O--|___|----|Res    Vcc|----O + 5 Volt
;                    |          |7   Jumper
;          hexfet  --|PB3    PB2|----| |--O   0 Volt
;                /   |          |6   Jumper
;     0 Volt O--O O--|PB4    PB1|----| |--O   0 Volt
;                   4|          |5   Jumper
;        0 Volt O----|Gnd    PB0|----| |--O   0 Volt
;                    |__________|
;PB4 schaltkontakt extern
;PB0-2 Eingang Jumper zur Impulszählung
;
;PB3 Ausgang Hexfet um Mikrodosierpumpe anzusteuern
;

Autor: Arno H. (arno_h)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist der Taster entprellt?

Arno

Autor: Jan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Taster sollte eigentlich durch die Zeitschleifen in den 
Flankenabhängigen Interruptroutinen entprellt sein. Original sitz ein 
Federzungenkontakt auf einer "unrunden" Welle.

Zur Erklärung:
Mir der Schaltung und dem Programm möchte ich eine (impulsgesteuerte und 
zuviel fördernde) Mikrodosierpumpe einer Standheizung (die sich nicht im 
offentlichen Strasssenverkehr / KFZ  befindet) drosseln indem ich 
(einstellbar) Impulse unterdrücke und so die Fördermenge reduzieren 
kann.

Jan

Autor: Jan Martin (jam2001)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

hat nicht einer von Euch Profis Lust sich das mal anzuschauen, und mir 
seine Meinung zu sagen? Vielleicht ist es nur eine Kleinigkeit, bzw 
dummer Fehler.

Jan

Autor: Spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

PullUps an den Eingängen?

MfG Spess

Autor: Jan Martin (jam2001)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eigentlich sollten die Internen Pullups aktiviert sein, bzw lässt sich 
auch extern die 5V messen, an den jeweiligen Inputpins.

Der Taster löst auch die Interrups aus, er lässt aber jeden Puls durch, 
auch habe ich den Eindruck das die Zeitschleifen zur Entprellung bzw 
Pumpenansteuerung nicht richtig aufgerufen werden.
Während eines Interruptes sind doch weitere Interrups gesperrt?
In "Hardware" "fühlt" es sich so an, als ob zb Schalterprellen sofort 
wieder einen Interrupt auslösen, obwohl schon ein Interrupt noch aktiv 
ist.

Jan

Autor: Gast2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also erstmal ordentlich entprellen und dann weitersehen.

Gast2

http://www.mikrocontroller.net/articles/Entprellung

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.