Forum: Mikrocontroller und Digitale Elektronik Atmega entstören


von Burns B. (fox1707)


Lesenswert?

Habe vor, eine Fernsteuerung in meinen Atmega8 einzubinden.
Darum habe ich mein altes ferngesteuertes Auto geopfert.
Die Platine wird mit 12V und 5V versorgt und funktioniert einwandfrei, 
ausgenommen der Atmega wird von der gleichen Spannungsversorgung 
versorgt.
Dann sinkt die Reichweite auf 1m ab.

Was kann ich da noch machen.

Der AVR hat an der Versorgung einen 100nF Kerko.
Der 7805er am Eingang 0.22uF und am Ausgang 0,1uF!
AVR taktet mit internen Quarz (4Mhz).

Hat jemand irgendeine Ahnung was man da machen kann, wäre sehr dankbar!!

von anderer Gast (Gast)


Lesenswert?

Hallo, handelt es sich um eine 28 MHz Fernsteuerung??
wenn ja könnten die Oberwellen des Atmegas der grund sein. Ist der auf 
der gleichen Platine?

von Burns B. (fox1707)


Lesenswert?

Nein es ist nicht die selbe Platine.
Eine mit dem Atmega und die andere vom Auto.
Es handlt sich um ein TAIYO 27Mhz System!

Aber wie bekomme ich die Oberwellen weg??

von Ulrich P. (uprinz)


Lesenswert?

Hi!

1)
22R Seriell in jede I/O Leitung, die vom / zum AVR führt.
Neben 100nF noch 10nF parallel an VCC.
Cs und Rs so dicht an den ATmega wie möglich, kein PDIP verwenden, 
sonder PLCC/TQFP Gehäuse.

2)
Die Vcc vom AVR und die 5V für den analogen / RF Teil aus jeweils einem 
separaten 7805 aus den 12V erzeugen.

3)
Die 7805 mit weiteren 1µF am Eingang ausstatten und die 0.22µF und 0.1µ 
so dicht am 7805 plazieren, wie möglich.

4)
Bei freifliegendem Aufbau die CPU nicht über / unter der RF plazieren. 
Längere Verbindungen von Logik mit der RF außen herum führen, nicht über 
/ durch die RF.

Gruß, Ulrich

von oszi40 (Gast)


Lesenswert?

Wenn es wirklich von der Spannung kommen sollte und schon ausreichend 
Kerkos verbaut sind, wäre noch zu testen ob ein paar kleine Ferrite in 
der Zuleitung helfen oder mehr schaden.

von Burns B. (fox1707)


Lesenswert?

Danke erstmal.

Es ist schon mal besser geworden, aber das gelbe von Ei noch nicht.

Die Antenne ist ca 50cm vom Mikrocontroller entfernt.
Da ich nicht weiß, ob die Störung durch die Luft zur Antenne kommt oder 
durch die Versorgung kommt, habe ich den Atmega in ein Alugehäuse 
(Massepotenzial) gesteckt.
Doch es ergab keine weitere Besserung.

Werde die Autoplatine mit einem 7805er erweitern, dann fällt schon mal 
dei 5V Leitung zwischen den Platinen weg.

Ferite in die Zuleitung zur Autoplatine oder zum Atmega???

Manchmal funktioniert es schon sehr gut, doch kurze Zeit später wieder 
sehr schlecht.

Vielleicht könnte man mit einem LC oder RC Glied was erreichten.
Könnte man da Werte errechnen oder nur wie die Hunde --> PROBIEREN???

von Ulrich P. (uprinz)


Lesenswert?

Also die 22R bilden zusammen mit der Port-Kapatzität an den beteiligten 
Pinnen schon ein R-C Glied also einen Filter. Man könnte neben den 22R 
noch einmal ein paar pF gegen Masse löten. Das bedämpft das ganze 
zusätzlich. Wenn man mit den langsamen Flanken leben kann, sind da auch 
1..10nF möglich. Ich habe schon einen 30kHz I2C Bus mit 1µF gesehen... 
Aber nachahmen würde ich dieses Extrem nicht.

Ich rate mal, dass das ganze auf Lochraster gelötet ist. Verpflanzt man 
das ganze auf eine Platine mit einem richtigen Layout, so wird das 
schlagartig besser.

Ich würde aber noch einen anderen Weg probieren. Wenn Du befürchtest, 
dass irgendwelche Oberwellen oder andere Mischprodukte der CPU-Frequenz 
deine Funkstrecke stören, dann wäre der erste versuch, die CPU-Frequenz 
zu ändern. Du kannst den internen Oszillator kalibrieren über das 
Calibration Byte. Dieses läßt eine deutliche Änderung über etliche kHz 
zu und das könnte ausreichen, um die störenden Aussendungen ein paar 
Herz neben das Empfänger-Spektrum zu verlegen.

Ohne eine entsprechende Hardware ist es leider schwer heraus zu finden, 
wer nun exakt an der Störung schuld ist. Ich habe nicht gesehen, dass Du 
einen Schaltplan veröffentlicht hast, oder detailliert beschreibst, 
welche Timer und GPIOS Du verwendest. Vielleicht helfen da ein paar 
Details weiter...

Gruß, Ulrich

von Burns B. (fox1707)


Lesenswert?

Ulrich erstmal besten Dank!

Die Schaltung ist auf einem Steckbrett gesteckt.

Das mit dem Calibration Byte ist eine gute Idee doch ich hab das noch 
nie gemacht und muss mich erst schlau lesen.


Bei den ersten Versuchen hatte ich die Fernbedienung nur in ein anderes 
Eck in mein Zimmer gestellt.
Habe rausgefunden, wenn jemand (eine Person) die Fernbedienung in der 
Hand hällt, steigt die Reichweite auch noch um ein paar Meter.

Mit einem Multimeter habe ich zusätzlich kontrolliert, ob der Empfänger 
auch ganz durchschaltet.
Nach zahlreichen Versuchen mit 22R Widerständen und einigen Kerkos hatte 
ich ein passables Ergebnis.
Mikrocontroller so programmiert, damit er bei einem LOW-Signal am 
Porteingang einen Ausgang setzt.
Das hat auch funktioniert. Ich kann jetzt mit der Fernbedienung 4 Leds 
steuern.
Hatte geglaubt es funktioniert.

Multimeter weg --> Leds an den Ausgängen blinken nur noch anstatt zu 
leuchten.

Mein Bruder hat auch ein ähnliches ferngesteuertes Auto (auch 27Mhz).
Und jedesmal wenn er seine Fernbedienung einschaltete, war meine 
Funkverbindung weg.
Kann das sein, dass mein Auto generell anfällig gegen Störungen ist, 
oder ist das normal das sie sich stören.



Ka

von Michael L. (Gast)


Lesenswert?

Bernhard Burns wrote:
> Habe vor, eine Fernsteuerung in meinen Atmega8 einzubinden.
> Darum habe ich mein altes ferngesteuertes Auto geopfert.
> Die Platine wird mit 12V und 5V versorgt und funktioniert einwandfrei,
> ausgenommen der Atmega wird von der gleichen Spannungsversorgung
> versorgt.
> Dann sinkt die Reichweite auf 1m ab.
>
> Was kann ich da noch machen.
>
> Der AVR hat an der Versorgung einen 100nF Kerko.
> Der 7805er am Eingang 0.22uF und am Ausgang 0,1uF!
> AVR taktet mit internen Quarz (4Mhz).
>
> Hat jemand irgendeine Ahnung was man da machen kann, wäre sehr dankbar!!

Aus eigenen Messungen weiß ich, daß der AVR bei jeder Taktflanke 2-3 
Schwingungen mit einer Schwingfrequenz von 32 MHz erzeugt. Der 
Analogteil war ein Ultraschallverstärker mit einem Verstärkungsfaktor 
von ungefähr v=500.

Die 32 MHz-Schwingungen ließen sich sich bei mir um etwa 30 dB dämpfen, 
als ich in die Versorgungsleitung eine 1000 Ohm Ferritperle (sie haben 
1000 Ohm bei 100 MHz, bei niedrigeren Frequenzen weniger mit steigendem 
induktivem Anteil) eingefügt habe.
Beachte, daß die 50 Ohm Ferritperlen eher nicht so gut helfen. Sie haben 
bei 30 MHz nur einen sehr kleinen ohmschen Widerstand.

Statt der Ferritperlen hilft sicher auch ein kleiner Widerstand oder 
eine entsprechend auf die Kapazitäten angepaßte Spule (nur die 
Keramikkondensatoren zählen).

Wenn sich das Problem nicht gibt, mußt Du evtl. auch die AVR-Masse 
abtrennen und an genau einer Stelle mit der analogen Masse verbinden. 
Die Verbindung kannst Du ebenfalls mit einer Ferritperle vornehmen.


Achso: Versuch auch mal, die Taktung des AVR runterzunehmen (falls 
möglich). Dann kommen die zwei bis drei 32 MHz-Störungen seltener. Du 
kannst ja auf den internen Takt umsteigen und mit einem Taktteiler auf 1 
MHz runtergehen.


Gruß,
  Michael

von Burns B. (fox1707)


Lesenswert?

Da kommen immmer mehr Ideen!

Aber da ich jetzt eine Woche nicht zu Hause bin, kann ich erst wieder 
nächste Woche weitermachen.
Dann werde ich das alles probieren.

Falls ich noch mal so einen Funkempfänger an einen Atmega einbinde, 
welche Funkfrequenz würdet ihr nehmen? 27, 35, 40 Mhz

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
Noch kein Account? Hier anmelden.