www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Wechselspannung für Ultraschallsender schalten


Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich möchte einen Ultraschallsender bauen (Empfänger hab ich schon)
mein erster Versuch ist mit einem controller das 40khz signal zu 
erzeugen (portpin0 -> L portpin1 ->H) oder (portpin0 -> H portpin1 ->L) 
das hab ich dann an rx und tx von nem max232 gehängt der mir dann 
entsprechend die + und - ca. 10V an die Sendekapsel gegeben hat.
Funktioniert auch soweit, nur die Reichweite ist nicht so toll ca. 1,5m 
und der LM7805C 1A der die Versorgungsspannung  für den controller und 
den max232 macht wird sehr warm was für mich schonmal n Zeichen dafür 
ist das irgendwas nicht so ganz stimmt! Es gehen 9V von nem 
Steckernetzteil rein.
Vielleicht ist der max232 nicht so gut für diese Aufgabe geeignet.

Jetzt habe ich hier noch einen DCDC Wandler (Traco TEL 3-1222) der macht 
+ und - 12V bei 125mA (ist glaub ich schonmal mehr strom als der max232 
liefern kann).
Die Frage ist, wie schaff ich es das durch das wechselnde L oder H an 
den PortPins dementsprechend die + oder - 12 Volt des DCDC Wandlers auf 
die Sendekapsel gehen. Irgendwie müsste das doch mit Transistoren 
funktionieren (npn der beim H und pnp der beim L schaltet schätzich 
mal),nur wie würde man das bewerkstelligen??? Es muss ja an EINEM Pin 
jeweils + ODER - 12V anliegen.

: Verschoben durch Admin
Autor: Paul (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Könnte man das über ne H Brückenschaltung mit Transistoren anstellen von 
Mosfets realisieren?

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch wenn's an deiner Frage vorbei ist - warum kaufst du nicht für ein 
paar Euro einfach einen Ultraschallsender ?
In jedem Robotershop im www gibt's das für <<10€

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lehrmann Michael schrieb:
> Auch wenn's an deiner Frage vorbei ist - warum kaufst du nicht für ein
> paar Euro einfach einen Ultraschallsender ?
> In jedem Robotershop im www gibt's das für <<10€

habe die Komponenten, Sende und Empfangskapsel sowie controller schon 
länger rumfliegen, wollte sie jetzt mal benutzen und beim gekauften 
fehlt irgendwie der Bastelspaß sowie Lerneffekt. Mit jeder Bastelei 
kommt auch etwas nützliches Wissen hinzu.

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Äh...

Ich habe gerade das gleiche fertig.

Ich habe eine 9V-Blockbatterie als Energiequelle.
Ein Stabi macht mir die Spannung für den uC, der einen PWM-Pin als 
Ausgang hat. Mit einem BC547 und einem Pull-Up-R von 9V an den Collektor 
ergibt sich ein Eingangssignal für einen CD4011 (oder ähnlich). Jeweils 
2 Gatter sind parallel geschaltet und die Ausgänge von Gatterpaar 1 sind 
das Eingangssignal von Gatterpaar 2. Die Ausgänge gehen auch an den 
US-Sender.

So habe ich eine Gegentakt-Ausgangsstufe, die mir genügend Feuer an den 
US-Sender gibt und die bei Nichtbenutzung nix frißt.

Noch höhere Spannung am US-Sender kann man mit einer Spule 
(Spannungsüberhöhung im Schwingkreis) erzeugen.

Ach ja, warm wird nichts (er sendet auch nur 3ms).

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Bernd
hört sich auch nicht schlecht an, dachte nur da ich schonmal einzeln + 
und - 12V habe nutze ich das auch irgendwie. Bei deiner Lösung hast du 
doch einen Pin auf GND und der andere Pin 9V und das wechselt dann oder?

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
noch vergessen, ich sende erstmal dauerhaft, aber nur deßhalb sollte 
doch der 7805 nicht sooo warm werden.

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erstmal:
Gucken was der Sender so aushält, z.B. 30Vpp.
Brückenschaltung ist möglich, aber dann brauchst du 15V.
Daher baut men eher Class-E Verstärker, da muss der uC nur einen MOSFET 
steuern, und die Spannung am US-Sender ergibt sich durch 
Spannungsüberhöhung am Schwingkreis.

Also nachschlagen was Class-E heisst und wie man die auf deine 
Ultraschallfrequenz hin dimensioniert, die Güte des Schwingkreises von 3 
reicht um aus 5V die 30V zu machen.

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im db stand etwas von 20Vrms aber hab schon öfters gelesen das die 
dinger auch 30V und mehr aushalten können.

Klasse E Verstärker... ok habs gegoogled aber noch nich so ganz 
verstanden... aber denke mal das kann ich mir auch sparen wenn ich die h 
brückenschaltung in kombination mit dem DCDC Wandler benutze. Dazu noch 
ne Frage, bei der h bücken sache kann ich ja eigentlich immer die basen 
der diagonal liegenden Transistoren mit einander verbinden da sie ja 
sowieso gemeinsam geschaltet werden sollen, wenn ich die vom controller 
aus schalte, reicht da EIN vorwiderstand (4,7k) oder lieber an jede der 
jeweils 2 basen einen?

Autor: Ingo W. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen!
Um mal auf die ursprüngliche Fragestellung zurückzukommen, eine H-Brücke 
mit dem µC anzusteuern, habe ich mal eine Schaltung angehängt, die oft 
und gern zur Ansteuerung von kleinen Gleichstrommotoren genutzt wird. 
Für den Ultraschallsender (ich gehe mal von 5V Betriebsspannung für den 
µC und 9..12V für den Treiber aus) hab ich schon mal Vorschläge 
reingeschrieben.
VT1,2 BC558 o.ä VT3,4 BC548 o.Ä D1,2 1N4148 R1,2 1k R3,4 470 Ohm R5,6 
470 Ohm
mfG Ingo

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich gehe mal davon aus, dass es sich beim US-Sender um eine 
Piezo-Keramik handelt.
Denen ist die gelieferte Stromstärke relativ egal, da sie sehr hochohmig 
sind.
Ein Übertrager (Trafo) oder ein "Hochspannungsnetzteil" wäre da die 
bessere Wahl.

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul schrieb:
> @Bernd
> hört sich auch nicht schlecht an, dachte nur da ich schonmal einzeln +
> und - 12V habe nutze ich das auch irgendwie. Bei deiner Lösung hast du
> doch einen Pin auf GND und der andere Pin 9V und das wechselt dann oder?

Ja,
das hast Du schon richtig verstanden.
Wenn es jetzt die +/-12V sein sollen, warum nicht einen LM358 nehmen und 
als Komperator laufen lassen ?
Den einen Opamp den +-Eingang mit Widerständen auf ca. 1V legen und beim 
anderen den --Eingang. An die jeweils anderen Eingänge dann das 
PWM-Signal vom uC. Zwischen beide Ausgänge den US-Sender.

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd das is ne super idee, weil noch einfacher zu realisieren!
Hab nen LM324 hier liegen, der ist dem LM358 ja sehr ähnlich und da die 
Stromstärke ja egal zu sein scheint reichen die max 40mA output vom 
opamp ja aus.
Das werd ich wohl als erstes probieren.

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

Bewertung
0 lesenswert
nicht lesenswert
...also im Prinzip sowas.
IN -> L opOut = + ~11V
IN -> H opOut = - ~11V

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul schrieb:
> ...also im Prinzip sowas.
> IN -> L opOut = + ~11V
> IN -> H opOut = - ~11V

Ne,
genau andersherum und ich hatte vorgeschlagen EINEN uC-Pin zu nehmen und 
dafür an einem OP die Eingänge zu tauschen...

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd Rüter schrieb:

> Ne,
> genau andersherum und ich hatte vorgeschlagen EINEN uC-Pin zu nehmen und
> dafür an einem OP die Eingänge zu tauschen...

Blödsinn - zu heiß heute - hatte die Wirkung von + und - unterschätzt 
;-)

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also so weit so gut, jetzt noch ein paar kleine Fragen... die 1V für die 
opamp eingänge wollte ich mit nem spannungsteiler (12k / 1.2k) zwischen 
dem+12V ausgang vom dcdc wandler und dem GND eingang es wandlers machen 
aber der wandler scheint das irgendwie zu trennen, wenn ich jetzt den 
Spannunsgteiler zwischen den +12V und -12V ausgang des dcdc wandler 
machen will müsste doch der obere Widerstand(der an +12V) kleiner als de 
untere(der -12V) sein z.B.(4.7k/12k) oder sehe ich das falsch? Das 
andere problem, klappt überhapt die verbindung zwischen controler pin 
und dem opamp wenn die Versorgungsspannung des opamps(vom dcdc wandler) 
ja getrennt von der des controllers ist (der kriegt seine 
versorgungsspannung von nem 7805, also kommen überhaupt die +5V bzw 0V 
vom controller am opampeingang an?

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oje...

Du mußt schon die Masse vor dem DCDC-Wandler mit der dahinter verbinden.

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd Rüter schrieb:
> Du mußt schon die Masse vor dem DCDC-Wandler mit der dahinter verbinden.
Bist du dir sicher das ich einfach so die Masse vorm Wandler also 
GND(0V) mit den -12V hinterm Wandler verbinden soll? denke eher nicht, 
höchstens auch wieder übern spannungsteiler(1/1) dann hab ich 
mittelabgriff doch 0V also GND level, aber kann man das wirklich einfach 
so machen?

Autor: Bernd Rüter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ne,

der Anschluß ist nicht -12V, sondern COMMON !

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke @Bernd, hatte mich schon gefragt wofür die common pins gut sein 
sollen.

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, das mit dem common hat funktioniert, wenn ich von Hand das 
eingangssignal auf gnd oder 5V lege hab ich dementsprechend +12V US -12V 
oder -12V US +12V.
Das kann ich auch soweit messen.
Wenn ichs per controller mache, messe ich aber nur +US- von ungefähr 
20V, gut dacht ich liegt am messgerät und schalte auf wechselspannug um 
aber da gibts nur 0V und mein Empfänger reagiert sogut wie garnicht 
mehr, im abstand von 10cm vielleicht noch aber kaum mehr messbar. Kanns 
also nich nur am Messgerät liegen.
Und bin mir soweit sicher das es auch nicht am Programm liegt.
(AT Tiny2313 @ 20MHz)
#include <avr/io.h>
#include <avr/interrupt.h>
#include <inttypes.h>
#define US_freq 40000 * 2
#define TIMER_preload 256-(F_CPU / US_freq)
static volatile uint8_t US_mode = 0;

ISR(TIMER0_OVF_vect) // timer_overflow
{
  TCNT0 = (uint8_t)TIMER_preload;
  if (US_mode==0)
  {
    PORTD |= (1<<PD0);
    US_mode = 1;
  }
  else
  {
    PORTD &= ~(1<<PD0);
    US_mode = 0;
  }
}

void start(void)
{
  TCCR0A = 0;
  TCNT0 = (uint8_t)TIMER_preload;
  TIMSK |= (1<<TOIE0);
  TCCR0B |= (1<<CS00);
}

int main(void)
{
  US_mode = 0;
  // int output port
  DDRD = 0xFF;
  PORTD &= ~(1<<PD0);
  // activate global interrupts
  sei();
  // activate output
  start();
  for(;;)
  {
  }
  return 0;
}

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich befürchte, der OpAmp ist zu lahm/schwach für diese Anwendung. Du 
kannst ja auch mal alle 4 OpAmps parallel schalten, aber ob das hilft...

Ich denke, Du verrennst Dich da wirklich in etwas.

Ich habe mich hier gewundert, daß man trotz doppelter Spannung keinen 
besseren Empfang bekommt...
Wie weit mußt Du denn senden ?

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Senden soll das ding ca. 2 - max. 5 meter.
Ich denke auch das der max232 und der opamp hab übrigens noch nen LM358 
gehabt einfach für das schnelle umschalten der spannung, 80KHz da ja 
alle 12.5µs die polarität vertauscht wird, nicht geeignet sind, obwohl 
ich die version mit dem max232 auch schon in ner kommerziellen variante 
gesehen hab, die hatten allerdings die kondensatoren am max durch 100nf 
ersetzt, vielleicht spielt das auch ne Rolle dabei, denke mal ich werde 
entweder den dcdcwandler nutzen um ein +24V rechtecksignal signal zu 
erzeugen und das über transistoren schalten (habe hier noch ein paar 
2n2222 der sollte für sowas doch schnell genug sein und von der spannung 
her gehts auch) oder eine Variante hab ich noch entdeckt mit nem mos4096 
inverter der aber so an die 15V versorgungsspannung braucht und durch 
die inverter stufen ca. 30V erzeugen kann. Oder um noch einen 
draufzusetzen versuch ich die h-brücken sache am besten auch noch. Bei 
den 3 Varianten muss doch eine vernünftig funktionieren.

Autor: Bernd Rüter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul schrieb:
> oder eine Variante hab ich noch entdeckt mit nem mos4096
> inverter der aber so an die 15V versorgungsspannung braucht und durch
> die inverter stufen ca. 30V erzeugen kann.

siehe (meinen) 5. Beitrag in diesem Thread...

Meinen US-Sender mit der 9V-Blockbatterie kann ich in 6 Metern 
Entfernung noch orten...

Autor: Bernd Rüter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul schrieb:
> die version mit dem max232 auch schon in ner kommerziellen variante
> gesehen hab, die hatten allerdings die kondensatoren am max durch 100nf
> ersetzt

Ja, die haben nicht den Ur-Monster-MAX232 genommen, sondern eine moderne 
Variante (MAX232A), die mit 100nF-Kondensatoren auskommt.

Autor: Reiner S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Grund dafür, dass aus deinem OPV hinten nichts mehr rauskommt, 
könnte auch sein, dass du den Verstärker mit jedem Umschalten am Eingang 
am Ausgang voll in die jeweilige Aussteuergrenze fährt. Die meisten OPVs 
mögen das nicht und brauchen eine Weile um dann wieder in den gewohnten 
Betrieb zurückzukommen. Evtl kommen also deine 40kHz gar nicht bis zum 
Ausgang durch...

Gruß, der Icke

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

Bewertung
0 lesenswert
nicht lesenswert
@Reiner S. Das könnte gut sein, die Ausgänge sind ja sehr nah an der 
Betriebspannung, irgendwo hab ich was von ~5ms (nagelt mich bitte nicht 
auf diesen Wert fest) gelesen die der opamp wohl braucht um umzuschalten 
wenn die Ausgänge voll ausgesteuert werden, wäre ja viel zu lang für die 
Frequenz.

@Bernd, die Schaltung im Anhang, kommt die dem nahe was du benutzt?
Wenn ja, wofür ist dann bei dir der Pullup und der transistor gut? Zum 
ein bzw. auschalten der Versorgungsspannung für den cd4011 (den ich 
glücklicher weise auch noch im Keller gefunden hab), oder schaltest du 
damit das Eingangssignal für den cd4011 so das er am Eingang 9V bekommt?

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, ich betreibe den 4011 mit 9V und den uC mit 5V, da nehme ich den 
Transistor und einen Pullup auf 9V als Pegelkonverter.

Autor: Paul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin begeistert! Es funktioniert, hab Bernds lösung mit dem 4011 und 
transistor genommen und nu mess ich bei 9V versorgung ein 
wechselspannungssignal von ~24V an der sendekapsel, so sollte es doch 
sein.
Tausend Dank an alle für die ideen und hilfen!!!

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.