Forum: Mikrocontroller und Digitale Elektronik Atmega8 als kompass


von Anfänger (Gast)


Lesenswert?

Ich möchte mir einen etwas anderen Kompass bauen dazu habe ich auf einen
Negativfilm eine Scheibe mit 720 teilungen fotografiert die ich nun mit
einer Gabellichtschranke auswerten möchte.(Kompasssonde)
Meine Frage ist der Atmega8 geeignet oder geht es noch kleiner(von der
Bauform (ausser SMD,das trau ich mich noch nicht).
Achso augegeben wird auf eine gemultiplexte 3stellige 7Seg.anzeige also
11 Leitungen (leuchtet der letzte Punkt ist es ,5 ansonsten ,0)und 2
Taster zum "eichen".

Vielen Dank für eure Mühe Uwe

von Stefan (Gast)


Lesenswert?

Ich schätze der Atmega8 reicht von der Zahl der I/O Leitungen und der
Speichergrösse und der Rechengeschwindigkeit her aus.

Es gelten jedoch max. Grenzen für die Stromentnahme aus den einzelnen
I/O Ports und aus allen I/O Ports. Diese Grenzen musst du mit der
Lichtschranke und den 7 Segment-Anzeigen beachten. Genaueres im
Datenblatt.

Aber wie du die Kompassstellung allein aus einer 720er Teilung und
einer Gabellichtschranke ermitteln willst, ist mir nicht klar. Wenn es
in Richtung Gray-Code geht, brauchst du mehr Lichtschranken und eine
kompliziertere Teilung.

http://mezdata.de/projekte/04-03-13_graycode/index.php
http://de.wikipedia.org/wiki/Gray-Code

von Anfäger (Gast)


Lesenswert?

Der Kompass funktioniert folgendermassen, auf die Scheibe mit den
Teilungen wird eine Kompassnadel geklebt und in die Lichtschranke
gesteckt(drehender Weise) die ja eigentlich 2 sind um die Drehrichtung
zu erkennen(dachte ich hier im Forum was gelessen zu haben, warum
brauch ich mehrere Scheiben??) und wenn die Kompassnadel sich dann
dreht soll ein Zähler im Atmega zählen. Lieg ich so verkehrt?

Mfg Uwe

von Christian Rötzer (Gast)


Lesenswert?

Im Prinzip nicht schlecht. Mit zwei Gabellichtschranken kannst Du dann
immerhin schon die Drehrrichtung feststellen. Was fehlt ist ein
Referenzpunkt, bzw. da die Scheibe ja nur von der Magnetnadel
angetrieben wird, die Absolutposition. Damit kommt wieder der Graycode
ins Spiel...

von Hans Dieter (Gast)


Lesenswert?

Das geht schon, ABER:
du brauchst noch eine Art Index-Loch (wie bei Disketten etc.) mit dem
du eine genau definierte Himmelsrichtung erkennen kannst.
Ohne das erkennst du nur die Drehung, aber nicht die Richtung selbst.
Damit das ganze dann noch automatisch geht brauchst du noch eine kleine
spule neben dem kompass. Auf die gibst du dann einen kurzen Impuls.
Dadurch beginnt sich der Kompass zu drehen, dann wartest du auf das
Index-Loch und zählst die impulse bis zum Stop. Dann kannst du die
richtung ausrechnen (einfach die impulse mod 360).
(Der Impuls muss nicht sehr stark sein.)

von Hans Dieter (Gast)


Lesenswert?

Was machen die alle hier???
Unbedingt Manchester für Übertragungen und Grey-Code bei solchen
sachen. Jungs das braucht ihr nicht bzw. die Welt hat sich seit der
Entwicklung dieser Verfahren weiterentwickelt.
Was evtl. auch geht:
Bei der Drehzahl-messung in Motoren wird ein ähnliches Verfahren
angewendet. Dabei sind auf der Nockenwelle Zähne angebracht. Um die
Null-Stellung zu erkennen sind ein oder zwei Zähne versetzt. Dadurch
fehlt ein Impuls, und das kann man nutzen. Bei dir wäre das dann
einfach ein Radial, dass du mit einem Stift schwarz malst.

von Montero (Gast)


Lesenswert?

Eine Alternative zu deiner Lösung ist der einsatz des HM55B Compass
Modul von Parallax. Damit erreicht man etwa eine Genauigkeit von 1.5
Grad. Hab auf der Page von Elektor gerade von einem neuen Kompass mit 3
Teslasensoren gelesen, genauigkeit 0.1Grad.

von Stefan (Gast)


Lesenswert?

Bei der Methode mit dem Loch oder dem schwarzen Zahn muss aber im
Notfall einer daneben stehen, der die Kompassnadel mal anschubst oder
einmal im Kreis rumträgt ;-)

von Rahul (Gast)


Lesenswert?

>Bei der Methode mit dem Loch oder dem schwarzen Zahn muss aber im
>Notfall einer daneben stehen, der die Kompassnadel mal anschubst oder
>einmal im Kreis rumträgt ;-)

Das könnte ein Motor machen...
Den Graycode realisiert man doch dadurch, dass man zwei Lichtschranken
hat, die so zueinander versetzt sind, dass die eine auf einem Segment
(oder zwischen zweien) ist und die andere am Übergang zwischen Segment
und Zwischenraum.... (kann ich jetzt nicht wirklich gut erklären).

Ein anderer Ansatz wäre es, zwei Fototransistoren oder dergl.
nebeneinander unter der Kompassnadel zu positionieren. Über der
Kompassnadel befindet sich eine LED. Sobald der Schattenwurf auf den
Fotoelementen unterschiedlich ist, muß nachgeregelt werden. Das wird
dann als Abweichung vom Nord-Pol angezeigt.
Das Nachregeln wird mit einem Motor realisiert, der natürlich die
Magnetnadel nicht beeinflussen sollte...

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

Für eine Absolutmessung mit 720 Stufen reichen zwei Lichtschranken
nicht, das braucht 10 Bit im Graycode. also 10 Lichtschranken mit
mikrofeiner Auflösung. Die 1024 möglichen Positionen sind ja auf dem
Umfang der Scheibe verteilt. Bei etwa 3 cm Durchmesser hätten wir außen
( innen wirds noch feiner) 10cm Umfang also 10um pro Stufe. Auf diesen
Durchmesser müssen die 10 Lichtstrahlen gebündelt sein.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Die Rechnung stimmt nicht ganz, es sind 100 µm.

(10 cm/1000 = 100 mm/1000 = 1 mm/10)

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

ja stimmt, hab cm und mm durcheinandergebracht, ist trotzdem
Feinmechanik. Man kann auch mit 3 Lichtschranken arbeiten, muß aber
dafür sorgen, daß der Nullimpuls gelegentlich wieder durchlaufen wird,
also den Kompaß im Erdmagnetfeld drehen, sonst summieren sich die
Fehler

von Hagen (Gast)


Lesenswert?

Das mit der Spule finde ich noch am besten. Die muß wahrscheinlich nicht
mal sehr groß sein und lange eingeschaltet muß sie auch nicht werden.
Man hat also seine 2 normalen Lichtschranken, und noch eine dritte mit
einem Nullloch exakt im Norden. Da liegt auch die Spule. Wenn man die
Spule einschaltet wartet man so lange bis die Lichtschranbke am
Nullloch Signal gibt. Danach schaltet man die Spule ab und kann nun
eine "Differenzmessung" mit den anderen beiden Lichtschranbken
durchführen.

Gruß Hagen

von Marc M. (bytewood) Benutzerseite


Lesenswert?

Wie wäre es mit einem Magnetfeldsensor (KMZ-Serie):
Magnetfeldsensor -> OP -> uC ->irgend ne Anzeige.
Je nach ausrichtung verändert sich der Offset, was eine
Himmelsrichtungsbestimmung möglich macht.
Gruß

von Rahul (Gast)


Lesenswert?

@Bytewood: Und wenn dann ein Auto mit Anhänger vorbeifährt?
Dann hast du ein wagnersches Problem...

Die Spule muß nur 20-30µT erzeugen, um das Erdmagnetfeld zu überwinden.
Sollte also nicht viel Material und Energie brauchen.

von Markus_8051 (Gast)


Lesenswert?

Wozu denn Spule UND Indexloch. Wenn Du die Spule einschaltest, hast Du
eine definierte Lage !!!

Achte bei dem Kompassbau bitte genau auf die Leiterbahnführung. Allein
der Strom, den die LED der Gabellichtschranke benötigt, reicht aus, um
um die Leiterbahn durch die er fließt ein Magnetfeld zu erzeuigen, das
deine Kompassnadel merklich ablenken kann.

Also: unbedingt verdrillte Leitungen verwenden!!!

Markus_8051

von Anfänger (Gast)


Lesenswert?

Hab versucht mal die Filmscheibe D=60mm  zu fotografieren ist nicht
gelungen. Also die durchlässigen Fenster auf dem Film sind ca so gross
wie bei einer Maus. Der KMZ52 oä ist mir zu Kippempfindlich die
Eigenbauscheibe kann man ca.5° kippen. Anderseits noch der Preis meine
Variante kostet ca. 25€ auf Lochraster. Und das Gerät wird einmal nach
N gedreht genullt und dann sollte er es machen bis zum Ausschalten, es
sei der atmega vergisst manchmal zu zählen?

von Profi (Gast)


Lesenswert?

>KMZ52 oä ist mir zu Kippempfindlich
dann musst Du mit einem Tilt-Sensor (z.B. ADXL202) kompensieren.

Wenn Du es unbedingt optisch machen willst, mache mit einem
Zeichenprogramm (oder Postscript) ein PDF und gehe damit zu einer
Druckerei, um einen laserbelichteten Planfilm (je nach Typ ca. 2400+
echte dpi)zu bekommen. Kostet je nach Verhandeln 4-20 Euro pro DIN-A4,
wenn Du ihnen Zeit läßt und sie es zwischen 2 Belichtungs-Jobs schieben
können vielleicht noch weniger.

Es gibt auch mehrere Anbieter für Kompass-Module, bekannteste sind
http://www.ssec.honeywell.com/magnetic und das cmps03.

Hier im Forum gibt es bestimmt Dutzende Threads über Kompass, Fluglage,
Kreisel etc.
Wenn Du Dich im Forum anmeldest, wird die komfortable Suchfunktion
freigeschaltet.

von Anfänger (Gast)


Lesenswert?

Der Film ist schon belichtet und sieht auch gut aus(logisch, kommt ja
von der Auflösung kein Druck mit). Mit den Magnetfeldsensoren ist mir
zu aufwändig und zu teuer. Die Maus ist auch schon geschlachtet und
liegt auf Lochraster gebacken vor mir. Es stellte sich mir nur die
Frage ob der Atmega8 vieleicht schon zu "dick" ist oder ob es noch
einfacher geht, kenn mich mit die Tiny´s etc nicht aus und wollte PDF
lesen vermeiden in Ermangelung der englischen Sprache:-)
Vielen Dank trotzdem für die Mühe.

MFG

von Drei N. (3_newton)


Lesenswert?

Probiers mit dem Mega, wenn Du so ein schräges System verwendest wirds
am Controller sicher nicht scheitern. Mannomann, was bastelt ihr denn
für Sachen hier???? Die Nullreferenz kann übrigens auch per Knopfdruck
gespeichert werden nachdem das Ding in N-S Richtung gebracht wurde.
Gibt es hier irgendeinen Grund keinen käuflichen Kompasssensor zu
verwenden? Wenn der nicht triftig ist, solltest Du das doch noch mal
überdenken, Du holst da einen Haufen unnötiger Probleme ins Haus.

3N

von Hagen (Gast)


Lesenswert?

Er wills selber basteln und muß seine Erfahrungen damit sammeln ;)

Gruß Hagen

von Läubi (Gast)


Lesenswert?

Mal so interessehalber: Welcher Kompassensor wäre den dafür geeigent?
Wo kann man die kaufen udn wieviel kostest sowas?
Hab schonmal die Elektronische Kompass mal bei einer bekannten
Supermarktkette gesehen und mich gefragt wie sowas wohl funktioniert.

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

hier gibts verschiedene Kompass-Sensoren:
http://www.sander-electronic.de/be00012.html

von Anfänger (Gast)


Lesenswert?

Der Grund warum ich keinen gekauften möchte ist zum einen der Preis zum
anderen ein gutes Projekt mal ein bischen was über AVR´s zu lernen(ist
ja sehr interessant)und drittens der Kompass muss abgesetzt
sein(kompasssonde) und die Anzeige innen(ist ein kleines Metalluboot)da
möcht ich keinen Handelsüblichen auseinander reissen. Die Module sind
hochinteressant aber im Verhältnis teuer.

MFG

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Ich habe schon mal eine Schaltung mit dem KMZ51 aufgebaut, nach
Philips-Unterlagen, schau mal hier im Wiki unter Sensoren -
Magnetsensor, es gab auch schon einen Thread zum Thema. Ein Sensor
reicht aber nicht für drei Raumrichtungen, die Kompass-Sensoren werden
ja schon auf zwei Ebenen beschränkt, obwohl das Erdmagnetfeld hier
schräg verläuft. Das Erdmagnetfeld ist relativ schwach für einfache
Magnetsensoren, die sind eher als Annäherungsschalter in ähnlichen
Anwendungen wie Lichtschranken gedacht. Einen empfindlichen Hall-Sensor
von Honeywell SS94... hatte ich auch schon ,der ist noch als Kompass
empfindlich genug. Einen GMR Widerstand hatte ich auch schon versucht,
der ist auch empfindlich genug, um eine Drehung im Erdmagnetfeld
nachzuweisen.
Das empfindlichste ist aber, außer sehr exotischen Effekten wie Squid
und Protonenpräzession, der Fluxgate-Sensor , auch Förster-Sonde
genannt. Er wird aus einem Ferrit-Ringkern mit drei Wicklungen
hergestellt.

von Läubi (Gast)


Lesenswert?

hui! Das sind ja horrende Preise! Das Ding was ich gesehen hatte lag bei
ich mein 17 Euro! Da lohnt sich das ja eher so ein teil auseinader
zubauen

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Es gibt anscheinend auch elektromechanische Sensoren, mit eingebautem
Motor. Vielleicht enthalten diese preiwerten Kompasse sowas. Auf dem
Flohmarkt wollte einer mal nur 8 Euro dafür, und selbst bei Conrad sind
die kompletten Kompasse billiger als so ein KMZ-Sensor

von Läubi (Gast)


Lesenswert?

Ja deswegen frag ich ja, wie funktionieren die? Klar in masse ist alles
billiger, aber so drastisch?

von Hans Dieter (Gast)


Lesenswert?

sacht mal es scheint hier keiner die beiträge ordentlich zu lesen:
1. Rahul ... lies bitte nochmal den ganzen Thread in aller Ruhe
>Bei der Methode mit dem Loch oder dem schwarzen Zahn muss aber im
>Notfall einer daneben stehen, der die Kompassnadel mal anschubst oder
>einmal im Kreis rumträgt ;-)
---> siehe meinen post mit der spule
Das könnte ein Motor machen...
---> einen Motor an einer Kompass-nadel? da reicht die reibung schon
aus, um das ding fest du halten
2. Markus_8051 ... erst genau lesen, dann denken, dann schreiben
Wozu denn Spule UND Indexloch. Wenn Du die Spule einschaltest, hast Du
eine definierte Lage !!!
---> Da steht weiter oben:
Damit das ganze dann noch automatisch geht brauchst du noch eine kleine
spule neben dem kompass. Auf die gibst du dann einen kurzen _Impuls_.
Wichtig ist hier der Impuls, da ist keine definierte Lage!!! selbst
wenn die spule parallel zur Kompass-Nadel steht dreht wird sich diese
drehen, wenn man die Spule nach dem Ausschalten der Spannung
kurzschließt (selbst-induktion) Oder man baut eine hart h-brücke zu
VCC/2. Dadurch ist eine umkehr der Polarität möglich.

von Hagen (Gast)


Lesenswert?

@hans, also bist du der gleichen Meinung wie ich: neben der Spule
benötigt man ein Index zur Verifizierung das die Nadel auch an der
Nullposition der Spule steht ? hzw. die Spule kann nicht als
"Nulllage" benutzt werden, es ist besser die Spule nur zur Auslenkung
des Kompas zu benutzen und die Nulllage ordenlich per Indexloch zu
messen.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Ich würde sogar noch weiter gehen und die Spule an 2 Pins des AVRs
anschließen. Somit kann man die Spule in ihrere Polarität des
Magnetfeldes beeinflussen. Die Position des Nullsensors ist dann
irrelvant, die Spule muß nur dafür sorgen das beim Nulling der Kompas
genügend ausgelenkt wird, also entweder nach Norden oder Süden je nach
Spulenpolarität.

Gruß Hagen

von Hans Dieter (Gast)


Lesenswert?

anders geht das nicht (unter beibehaltung des konzeptes)
die spule als referenz ist ungeeignet, da das feld (was so schwach wie
möglich gehalten werden sollte) nicht genau verläuft und jede menge
manuelle justierung bedeuten würde.
das mit dem direkt anschließen geht nicht da fließt (auch für eine
kurze zeit) ein relativ hoher strom (die spule wird so ca. 10 - 50 ohm
impadanz haben das gibt bei 5V einen strom von 100mA - 500mA das ist
definitiv zu viel (auch für nur einen takt). das muss ein traiber rein
(ein sot23 fet oder so)
was auch gehen könnte die spule "senkrecht" zum kompass. muss das mal
probieren.

von Hans Dieter (Gast)


Lesenswert?

also das mit dem senkrecht geht, es ist aber besser die spule etwas
schräg zu positionieren. bei entsprechender modulierung im khz bereich
kann der kompass sogar kontinuierlich gedreht werden. Das liegt daran,
dass die nadel und die spule eine gewisse tolleranz habe und die nadel
sehr wahrscheinlich nie genau auf der stelle steht, wo die felder genau
passen.
evtl sollten mehrere fotodioden verwendet werden

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.