Ich suche für die Ansteuerung eines Kreuzdrehspulinstruments einen Ersatztyp für die oben genannten ICs. Sowohl reichelt, digikey als auch distrelec führen die nicht mehr auf.
Anja schrieb: > echt? Ja, den habe ich mittlerweile bestellt. Dennoch, muss meine Frage präzisieren. Kennt jemand einen Ersatztyp für LM1819 oder CS8190 mit DIL Gehäuse?
Deine Idee, einen Mikrocontroller zu benutzen war doch nicht schlecht Beitrag "IC für Drehspulinstrument" der Vorschlag von Matthias den Sinus und Cosinus per PWM auszugeben, ich vermute den Kreuzdrehspulen ist die Kurvenform ziemlich egal. Zwei Dreieckschwigungen könnten ausreichen, die kann man als Treppenspannungen erzeugen. Der Kreis, den ein Oszilloskop mit den beiden Spannungen auf X- und Y anzeigen würde wird vermutlich so zum Vieleck (mit Ausbeulungen in vier Ecken durch die Spitzen der Dreiecke?).
Selbst eine Gleitkommaoperation für Sinus und Cosinus ist bei der Trägheit des Instrumentes an sich ein Klacks. Als Ausgabe eignet sich z.B. der 16-Bit Timer 1 mit seinen beiden PWM Ausgängen. Ins OCA Register der Sinuswert und ins OCB Register der Cosinus, gekappt auf 16-Bit und fertig ist die Laube. Ich muss das selber mal ausprobieren, hier liegt noch ein Windrichtungsanzeiger für Segelboote als Kreuzspulinstrument.
Christoph db1uq K. schrieb: > Deine Idee, einen Mikrocontroller zu benutzen war doch nicht schlecht > Beitrag "IC für Drehspulinstrument" Das mache ich nach wie vor noch so. Mit dem Unterschied, dass der Ausgang vom uC in Freq(in) vom CS8190 geht. Christoph db1uq K. schrieb: > der Vorschlag von Matthias den Sinus und Cosinus per PWM auszugeben, ich > vermute den Kreuzdrehspulen ist die Kurvenform ziemlich egal. Zwei > Dreieckschwigungen könnten ausreichen, die kann man als > Treppenspannungen erzeugen. Stimmt. Aber ich wüsste jetzt grad nicht wie ich per uC Sin und Cos ausgeben kann. Ausserdem hat CS8190 einen Vorteil bei Unterspannung geht es automatisch in return to zero zurück.
Philipp G. schrieb: > Das mache ich nach wie vor noch so. Mit dem Unterschied, dass der > Ausgang vom uC in Freq(in) vom CS8190 geht. Das ist aber von hinten durch die Brust ins Auge. Den ganzen Job des CS8190 kann heute der MC so nebenbei. Philipp G. schrieb: > Aber ich wüsste jetzt grad nicht wie ich per uC Sin und Cos > ausgeben kann. Hatte ich im letzten Beitrag schon mal grob beschrieben. Christoph db1uq K. schrieb: > ich > vermute den Kreuzdrehspulen ist die Kurvenform ziemlich egal. Dem ist so, einem z.B. Drehspulinstrument ist der Rechteck völlig egal, es mittelt ihn aus. Nur der von dir erwähnte Vorwiderstand ist nötig, damit 100% PWM genau Vollausschlag des Instrumentes geben.
Matthias S. schrieb: > Ich muss das selber mal ausprobieren, hier liegt noch ein > Windrichtungsanzeiger für Segelboote als Kreuzspulinstrument. Angeregt durch die Frage habe ich das Dings heute mal in Betrieb genommen, ein Navico WD200 von 1988. Und siehe da, es ist bereits ein LM1819 verbaut :-P Hier als Voltmeter geschaltet - in der Windfahne, die ich nicht habe, war offensichtlich ein Endlospoti.
Den CS8190 gibt es als SMD Version noch bei digikey. https://www.digikey.de/product-detail/de/on-semiconductor/CS8190EDWFR20G/CS8190EDWFR20GOSCT-ND/2120588 Warum also ein Ersatztyp?
Philipp G. schrieb: > Ich suche für die Ansteuerung eines Kreuzdrehspulinstruments einen > Ersatztyp für die oben genannten ICs. Verstehe ich nicht Erst möchtest du ein Drehspulinstrument, welches eine Platine besitzt, nach Abmontieren der Platine direkt ansteuern Beitrag "IC für Drehspulinstrument" Und nun suchst du einen IC um es eben nicht mehr direkt anzusteuern, sondern per spezialisierten IC. Warum lässt du nicht einfach die Platine dran auf der der passende IC schon drauf war ? Dabei wäre es so einfach, wie schon beschrieben wurde, ein Kreuzspulinstrument direkt von einem uC aus anzusteuern, ein LM1819 kann auch nur 20mA:
1 | ------+ |
2 | PB0|---+ |
3 | | | |
4 | PB1|-- | |
5 | | \| |
6 | | (X) |
7 | | |\ |
8 | PB2|---+ | |
9 | | | |
10 | PB3|-----+ |
11 | ------+ |
1 | unsigned char sin256(unsigned char angle) { return 255*fabs(sin(angle*2*3.1415/256)); } |
2 | static unsigned char count; |
3 | volatile unsigned char position; // 0..255 = 0..359 Grad |
4 | void every100us(void) // in timer tick oder main loop with 100us delay |
5 | {
|
6 | unsigned char flipsin,flipcos; |
7 | count++; |
8 | digitalWrite(PB0,flipsin=posision<128); |
9 | digitalWrite(PB1,flipcos=position+64<128); |
10 | digitalWrite(PB2,flipsin?count<sin256(position):!(count<sin256(position))); |
11 | digitalWrite(PB3,flipcos?!(cound<sin256(position+64)):(count<sin256(position+64))); |
12 | }
|
oder zumindest ähnlich (never tested).
Hans schrieb: > Den CS8190 gibt es als SMD Version noch bei digikey. > > https://www.digikey.de/product-detail/de/on-semiconductor/CS8190EDWFR20G/CS8190EDWFR20GOSCT-ND/2120588 > > Warum also ein Ersatztyp? Den hab ich bestellt. Warum Ersatztyp? Weil ich mir zwecks Verdrahtung ein DIL Gehäuse wünsche. MaWin schrieb: > oder zumindest ähnlich (never tested). Danke Dir mawin das probiere ich gleich abends aus. PB0, PB2 = Spule1 PB1, PB3 = Spule2 Ist das so richtig?
:
Bearbeitet durch User
Philipp G. schrieb: > Weil ich mir zwecks Verdrahtung ein DIL Gehäuse wünsche. Dann kauf dir halt einen SO->DIL Adapter-PCB Philipp G. schrieb: > das probiere ich gleich abends aus. Schön, aber warum nun den Spezial-IC kaufen und trotzdem programmieren ? Warum dieses Hin und Hergeeiere ?
MaWin schrieb: > Schön, aber warum nun den Spezial-IC kaufen und trotzdem programmieren ? > > Warum dieses Hin und Hergeeiere ? Ich will auf dem Labortisch einfach beides probieren. Vielleicht fiebt es ja ohne das Spezial IC. Und dann möchte ich noch return to zero bei Unterspannung auch ohne das IC lösen (Das Ic macht das über eine Diode beim Eingang und einem grossen C).
:
Bearbeitet durch User
Ok, das geht, ist aber dermaßen träge dass ich das so nicht gebrauchen kann, zudem geht nichts mehr als 10Uhr Position. https://youtu.be/8J8F5ApXQdE L1: 90Ohm L2: 75Ohm Vorwiderstände: 150Ohm Code: siehe mawin Jemand eine Idee? Ausgänge über bc337?
:
Bearbeitet durch User
Philipp G. schrieb: > zudem geht nichts mehr als 10Uhr Position. > Code: siehe mawin Ja gut, da passt ein Phasenübergang halt nicht. Man müsste halt die Wdrte über die Position mal ausgeben um es gdradeziehen zu können. Vielleicht trifft der code besser:
1 | void every100us(void) |
2 | {
|
3 | int flipsin=255*sin(position*3.14/128); |
4 | int flipcos=255*sin((position+64)*3.14/128); |
5 | count++; |
6 | digitalWrite(PB0,flipsin<0); |
7 | digitalWrite(PB1,flipcos<0); |
8 | digitalWrite(PB2,flipsin<0?-flipsin<count:count<flipsin); |
9 | digitalWrite(PB3,flipcos<0?-flipcos<count:count<flipcos); |
10 | }
|
Die originale Platine sollte dir auch Hinweise über die Spannung für die Ansteuerung und etwa nötige Vorwiderstände geben.
:
Bearbeitet durch User
Matthias S. schrieb: > Die originale Platine sollte dir auch Hinweise über die Spannung > für die Ansteuerung und etwa nötige Vorwiderstände geben. Jein, die Idee war ja die ganze Zeit den so direkt wie möglich am Uc betreiben zu können. Die Vorwiderstände habe ich so dimensioniert dass 20mA nicht überschritten werden. Vielleicht ist die blöde Mechanik dahinter einfach zu träge. Ich mach die mal weg. OEM läuft das Ding mit 12V, aus dem Treiber raus.
:
Bearbeitet durch User
Philipp G. schrieb: > Jein, die Idee war ja die ganze Zeit den so direkt wie möglich am Uc > betreiben zu können. Jaja, das habe ich schon verstanden (wenn du mit 'Uc' den µC meinst). Aber die originale Schaltung kannst du doch mal anschauen und sehen, was für Vorwiderstände benutzt werden, und was für Treiber verwendet wurden.
:
Bearbeitet durch User
Da bin ich mitten am Schaltungsaufbau und dann das :) Das Uni-T ist voller Überraschungen. -> Beim Durchmessen zwischen Sin+ und Sin- https://www.youtube.com/watch?v=61lxgbTt-_M
:
Bearbeitet durch User
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.