Hallo liebe Community! Ich arbeite derzeit an meiner Diplomarbeit und hätte hierfür eine Matrix aus Hallsensoren 41F benötigt. Ich habe bereits alles fertiggelötet und mit LEDs getestet. Allerdings funktioniert es mit dem µC nicht. Teilweise schalten die Sensoren obwohl kein Magnet oben ist. Ich habe den Schaltplan und eine Ausgabe des µCs angehängt. In dem Testprogramm frage ich im Sekundentakt ab und habe keinerlei Magneten oben. Allerdings habe ich ein falsches Ergebnis. Würde mich freuen, wenn jemand eine Lösung hat, bin schon am Verzweifeln. Gruß, Sebastian
Sebastian schrieb: > Teilweise schalten die Sensoren obwohl kein Magnet oben ist. Der SS41F ist ein 'latched' Sensor und wird bei einer Polarität des Magnetfeldes aktiviert (bei typisch 40 Gauss) und bei der anderen Polarität gelöscht(bei typ. -40 Gauss). Es kann also sein, das nach einem Powerdown das Latch auf der falschen Seite hängt. http://sensing.honeywell.com/index.cfm?ci_id=140301&la_id=1&pr_id=149900 Ungelatchte Sensoren wären hier besser. Das Filmchen hier demonstriert es: https://www.youtube.com/watch?v=v3HEZAoU60k
:
Bearbeitet durch User
Danke für die Antwort. Ungelatcht wäre sicher besse, das Komische ist, dass uns unser Lehrer die 41F empfohlen hat. Wäre ein ungelatchter so einer hier?: https://www.conrad.at/de/hallsensor-ah3144eua-45-vdc-bis-24-vdc-messbereich-0005-0022-t-to-92-loeten-1424999.html
Ein Sensor, der keine Versorgung hat, wird mit seinen Bodydioden am Ausgang die Signalleitung mehr oder weniger kontrolliert auf GND ziehen. Ich würd einen echten Multiplexer für die Signale bauen und die Sensoren ständig an der Versorgung lassen. MfG Klaus
Klaus schrieb: > wird mit seinen Bodydioden am > Ausgang die Signalleitung mehr oder weniger kontrolliert auf GND ziehen. Der hat aber keine Bodydioden, sonden OpenCollector Ausgang. Damit sollte es klappen, das Ergebnis des TE spricht ja auch dafür, das nicht alle Sensoren auf Masse ziehen, sondern nur ein paar. Logischerweise kann man die Sensoren nicht mit hoher Geschwindigkeit abfragen, denn die brauchen ein wenig Zeit nach dem Powerup. Ich stimme aber mit dir überein, das es sinnvoller wäre, nur die Ausgänge zu muxen, ist auf jeden Fall schneller. Wäre mit einem 4067 und einem 4051 auch schnell erledigt. Sebastian schrieb: > Wäre ein ungelatchter so einer hier?: > https://www.conrad.at/de/hallsensor-ah3144eua-45-vdc-bis-24-vdc-messbereich-0005-0022-t-to-92-loeten-1424999.html Scheint so. Der spricht auf ein vorhandenes Magnetfeld an und wird inaktiv, wenn keines da ist, bzw. unter Brp fällt. Wenn du reichlich Magnete hast(1), könntest du deinen vorhandenen Aufbau retten, indem du unter die Sensoren ein leicht in Abschaltpolarität vorgespanntes Magnetfeld legst, das die Sensoren im Ruhezustand zurückkippen lässt. Wenn du dann einen Magneten auflegst, sollte der Sensor auf 'aktiv' kippen. (1): Such dir einen Raucher, der mit Gizeh Papers dreht. An jeder Packung ist ein kleiner kräftiger Magnet.
:
Bearbeitet durch User
Matthias S. schrieb: > Such dir einen Raucher, der mit Gizeh Papers dreht. An jeder > Packung ist ein kleiner kräftiger Magnet. Ich hatte in meinem Umfeld auch mal angesagt, dass ich diese Magneten gerne hätte. Der Haupteffekt war, dass alle ganz erschrocken waren, wie viele Magete so schnell zusammenkommen, dass ich nach kürzester Zeit einen "halben Meter Magneter" zusammen hatte :) Das hat sicherlich den ein oder anderen zum Aufhören bewegt.
Danke für eure Ratschläge. Ich habe mir nochmal mein Konstrukt angesehen und bemerkt, dass die hinteren Spalten (5-12) einwandfrei funktionieren, aber die vorderen eben nur teilweise. Kann es sei sein, dass irgemdwo in einer Leituung die Magnetfelder den Sensor beeinflussen?
Sebastian schrieb: > Kann es sei sein, dass irgemdwo in > einer Leituung die Magnetfelder den Sensor beeinflussen? Du müsstest ja etwa 40 Gauss erzeugen - das ist eher unwahrscheinlich. Vllt. überprüfst du nochmal deine Abfrage Routine (kannst du ja mal posten) und machst den Test mit dem umgepolten Magneten unter einem fehlerhaften Sensor.
So hier ein Bild vom Aufbau. Die eingezeichnete Linie kennzeichnet die Grenze von geht/geht nicht. Die Abfrage habe ich zurzeit mit der Arduino IDE geschrieben, wird später mit AtmelStudio gemacht, aber zum Testen geht es schneller. Ich habe auch mit dem Multimeter nachgemessen und es ist ident mit den ermittelten Werten im Programm. Ich habe auch bereits versucht einige Sensoren durch neue zu ersetzen, hat leider nicht sehr viel gebracht.
Die unteren kriegen nicht genung Saft, sag ich mal aus dem Bauch heraus... StromTuner
Die Unteren, sind in diesem Fall 5-12 und die funktionieren aber. Die darüber hingegen nicht, obwohl sie viel kürzere Leitungen haben.
Sebastian schrieb: > Die Unteren, sind in diesem Fall 5-12 und die funktionieren aber. Die > darüber hingegen nicht, obwohl sie viel kürzere Leitungen haben. Anstatt zu Raten messe doch einfach mal die Signale in Deiner Schaltung mit einem Oszilloskop.
Hmm, wenn deine Pullups wirklich bei 10k sind, könnte das schon zu viel sein. Teste mal mit 4,7k oder 3,3k, zumindest an den betroffenen Zeilen. In dem Kabelverhau will ich ein Übersprechen zwischen den Leitungen nicht ausschliessen, so wenig wie einen Logikfehler. Poste doch mal den Sketch. Ausserdem ist es sinnvoll, die VCC für die MOSFet gut abzublocken (z.B. mit 100µF) und an die VCC der Sensoren nochmal 0,1µF pro Zeile. Das bedeutet zwar, das zum Aufladen des 0,1µF ein wenig umgeladen wird, aber der 100µF wäre da ein ausreichendes Reservoir.
:
Bearbeitet durch User
.. höhere Bildauflösung einer Hall-S Zelle und der Schaltung wäre noch interessant :-)
Der HC164 latch nicht, beim Umschalten erscheinen alle bit sofort so am Ausgang, wie sie hineingeschoben werden. Könnte hier ein Fehler zu finden sein? Abblock-Cs sind natürlich immer hilfreich. StromTuner PS: sonst, also was am Foto erkennen kann, sauber aufgebaut. Sieht gut aus.
Hoffe die Größe passt jetzt. Ich werde mal andere Widerstände und das mit den Kondensatoren testen. Sketch lade ich nacher mit dem PC hoch. Danke mal an alle die hier so hilfsbereit sind ??.
So an den Pullups liegt es nicht, habe gerade 4,7k und 3,3k getestet. Einen 0,1µF Elko habe ich nicht, jedoch einen Folienkondensator mit 0,1µF. Ich habe den mal probiert, einen Hallsensor hat er sogar beeinflusst. Das ganze habe ich dann auch mit einem 1µF Elko getestet, aber mit genau demselben Ergebnis. Zwei Hallsensoren waren immer noch unschlüssig. Soll ich mir 0.1µF Elkos kaufen? Oder wird es wahrscheinlich nicht viel bringen? Die Mosfets sind auch mit 100µF gekoppelt. PS: der Sketch ist jetzt angehängt, ist nicht gerade professionell geschrieben, ist ja nur zum Testen.
Sebastian schrieb: > Ich arbeite derzeit an meiner Diplomarbeit In welchem Fachbereich machst Du denn Deine Diplomarbeit?
Für die HTL, Mechatronik. Würde es schon gerne fertigbekommen, auch wenn es sehr aufwendig ist.
> for(int i = 0; i < 8; i++){ >if(digitalRead(A0+i) == LOW)... A0 ist als konstante definiert? darf man da int i einfach so dazu addieren oder muss das erst in eine Hilfsvariable umkopiert werden? Ich frag libbers vorher. Nicht das ich wieder blamiere... Der Funktion DigitalWrite(*HIGH*|*LOW*) kann ja auch ein boolscher Ausdruck direkt als Parameter übergeben werden. (Das war peinlich) :| StromTuner
Da es bei den anderen Spalten funktioniert, wird man es wohl so machen können.
Sebastian schrieb: > Da es bei den anderen Spalten funktioniert, wird man es wohl so machen > können. Gut, meinereiner würde einfach in einem Schwupps den Port einlesen, anstelle durch die acht Inputs zu zählen. Wenn die Kondensatoren Einfluss haben, deutet das aber schon auf die Hardware hin. Was passiert denn nun, wenn du die entsprechenden Hallsensoren mit Magneten auf inaktiv kippen lässt? Sebastian schrieb: > Einen 0,1µF Elko habe ich nicht, Das muss auf keinen Fall ein Elko sein, Folko oder Kerko ist schon richtig.
:
Bearbeitet durch User
Dann wird beim Hallo_test.ino jetzt nur eine Zeile zum test angefahren und nur eine Spalte ausgelesen. Wenn die geht, kompilierst Du neu und nimmst Dir die nächste Zeile vor. aha. StromTuner
Ich glaube ich habe den Fehler. Habe jetzt den Multiplexer rausgenommen und an den MOSFETs abwechselnd Masse angehängt. Bei allen bis auf ein paar hatte ich alles 1en. Dann habe ich direkt an der Schaltung 5V angelegt, und alle funktionieren. Kann es sein, dass die Mosfets "defekt" sind und nicht mehr genug Strom liefern können?
Sebastian schrieb: > Kann es sein, dass die Mosfets > "defekt" sind und nicht mehr genug Strom liefern können? MOSFets sind empfindlich gegen statische Entladung aufs Gate, aber das sollte doch einfach rauszufinden sein, indem du die Versorgungsspannung misst, die auf die Hallsensoren geschickt wird. Es sollte bei durchgeschaltetem MOSFet keine nennenswerte Spannung zwischen Drain und Source zu messen sein (MOSFet nahe null Ohm).
Hallo. Habe jetzt neue MOSFETs bestellt. Melde mich ob es das war. Danke nochmal!
Hallo. Mosfets sind zwar gewechselt, allerdings ohne Änderung:/
Sebastian schrieb: > Hallo. Mosfets sind zwar gewechselt, allerdings ohne Änderung:/ Wenn du dir die Kommentare von Honeywell nochmal durchliest, steht da explizit das da oben drin. (Leider nur als Scan bei http://www.datasheetarchive.com/hall%20sensor%2041F-datasheet.html ) Das ist nun mal bei gelatchen Sensoren so, das sie, solange das Magnetfeld zwischen den Schwellen liegt, einen beliebigen Zustand annehmen können. Du musst also, wenn du von den Dingern nicht abrücken willst, ein Magnetfeld anlegen, was sie in den gewünschten Zustand kippt.
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.