Online seit Februar 2009
|
Hier findet man :
1. Einen einfachen NF-Rechteck-Generator
2. Einen einfachen NF-Sägezahn-, Dreieck- und Sinus-Generator 3.
Eine kurze Bastel-Probe-Testung von NF-Verstärkern mit einem Sägezahn-Generator
4. Einen
einfachen NF-Sägezahn-, Dreieck-, Rechteck- und Sinus-Generator
mit einem Digital-Analog-Schaltkreis
Ein gekaufter
NF-Generator mit
Rechteck- , Dreieck- und Sinus-NF-Spannungs-Signal ist
wahrscheinlich besser als diese Bastelei ! (KLICK
HIER) Auch von ELV gibt es solch einen NF-Generator (KLICK
HIER)
ABER:
Beim Basteln braucht man diesen NF-Generator nur sehr selten, um
zum Beispiel NF-Verstärker zu Testen.
Ein einmaliger Bastel-Steckbrett-Aufbau mit diesen NF-Generatoren
ist somit kosten-günstiger als ein gekauftes Gerät.
|
Bastelanleitung
1.
Einfacher NF-Rechteck-Generator von ca. 100Hz bis 10Khz
mit dem Controller
PIC12F675
|
|
Download der
Bastelanleitung hier als:
"Einfacher-NF-Rechteck-Generator.zip"
(ca.1,5Mbyte)
Kurzbeschreibung:
Hier wird ein einfacher NF-Rechteck-Tongenerator
mit und ohne Lautsprecher vorgestellt.
Dabei sind die beide RECHTECK-Halbwellen gleich
lang ! Es ist ein symmetrisches NF-Signal, welches rauskommt.
Es gibt 5 Software-Versionen :
1. Einstellbare
Frequenz "mit-Poti=20Hz-490Hz.HEX"
oder "mit-Poti=600Hz-6_200Hz.HEX"
Mit diesem File wird der PIC12F675 gebrannt.
Mit einem
Poti kann man die Frequenz einstellen. Das Poti und der 47n
Kondensator muss natürlich angeschlossen sein.
Es ist
kein linearer Frequenz-Einstellbereich. Immer bei den höheren
Frequenzen lässt es sich Systembedingt schwer einstellen.
Die Frequenz-Angaben im Datei-Namen sind nur so ungefähr. Ich
hatte zum Messen nur ein Universal-Vielfach-Volt/Ampere-Meter und
einen Oszi für die Frequenzmessung !!!!!!!!!! |
|
Siehe Genaueres in der Bastelanleitung
im Download !!! |
2. Als feste Frequenz
"ohne-Poti-10Khz.hex"
oder "ohne-Poti-2135Hz.hex"
oder "ohne-Poti-1750Hz.hex"
Mit
diesen Files wird jeweils der PIC12F675 gebrannt.
Hier kommt eine FESTE
Frequenz raus, wie oben im File-Titel beschrieben.
Man kann hier das Poti von
obigem Aufbau "angeschlossen lassen".
Es passiert kein Unsinn. Man
kann es auch weglassen.
Ca. 2135Hz und ca. 1750Hz waren
mir eingefallen, weil man dann mit einem Lautsprecher
und einem Mikrofon vom Funkgerät ein
Amateurfunk-Relais (Repeater) öffnen kann . Es geht
aber auch mit meinem DOS-Computer-Programm :
"WIN+DOS Tonausgabe.zip" auf der Seite "Selbst
gemachte Programme" (Klick links drauf)
Die
Fest-Frequenz kann man natürlich auch ändern. (von 1Hz bis
11Khz)
Dazu muss das ASM-File
geändert werden. Ist nicht leicht !
Dann muss es assembliert werden.
(Programm liegt im Download bei)
Es entsteht ein HEX-File.
Mit diesem wird der PIC12F675
neu gebrannt ... programmiert ...
|
|
|
|
|
Zur Erklärung der beiden Impulsdiagramme mittels Oszi.
1.
Man sieht hier das sehr schnelle "Schalten"
bei den Flanken der Rechteckimpulse.
Hier oben im
Foto wurde an Stelle des Lautsprechers
ein Widerstand
eingesetzt. (keine Induktions-Spitzen) |
Klick jeweils auf
das Foto und es wird größer.
2.
Bei einer
Induktiven Last, wie einem Lautsprecher (Spule...)
treten Induktions-Spitzen auf....
(siehe oben im Foto)
|
|
Klick auf den Stromlaufplan unterhalb und er erscheint
größer. |
|
|
Zweiter NEUERER veränderter Aufbau
Klick auf den Stromlaufplan und
er wird größer.
|
Diese Bastelanleitung
befindet sich auch im obigen
Bastel-Anleitungs-Download.
Die
Frequenz-Einstellung erfolgt mit einem
Taster und einem Schalter. Der Schalter lässt
entweder das Auf- oder das Abwärts stellen zu. Das
eigentliche Stellen erfolgt mit dem Taster.
Es ist Einzelklick oder Dauerdruck möglich.
255 unterschiedliche Frequenzen sind
einstellbar.
Es gibt 2 Software-Versionen : Mit diesen
Files wird der PIC12F629 gebrannt.
Variable Frequenz 3_25KHZ-bis-357KHZ.HEX
(also von 3,25Khz bis 357Khz)
Feste
Frequenz Festfrequenz=855KHZ.HEX
Auf
einem alten Mittelwellen-Radio kann man die
Oberwellen des
Rechteck-Signals als
"Brumm-Ton" bei hohen eingestellten Frequenzen
noch hören...
|
Bastelanleitung
2.
Einfacher NF-Sägezahn-, Dreieck- und Sinus-Generator
mit dem Controller
PIC16F88 und DA-Wandlung (Digital-Analog-Wandlung)
|
|
Download der
Bastelanleitung hier als:
"NF-Saegezahn+Dreieck+Sinus-Generator.zip"
(ca.1,5Mbyte)
Kurzbeschreibung:
Es ist ein und der selbe
Schaltungsaufbau (siehe am Schluss den Stromlaufplan) mit mehreren Software-Versionen :
Hiermit wird jeweils der PIC16F88 gebrannt /
programmiert : 1.: Dreieck
DREI=50HZ-1,05KHZ.HEX DREI=250HZ-4,10KHZ.HEX
DREI=400HZ-6,60KHZ.HEX
2.:
Sägezahn SAE=100HZ-1,60KHZ.HEX SAE=490HZ-6,40KHZ.HEX
SAE=790HZ-10,10KHZ.HEX
3.: Sinus SIN=45HZ-750HZ.HEX
SIN=90HZ-1,45KHZ.HEX SIN=140HZ-2,00KHZ.HEX
SIN=180HZ-2,70KHZ.HEX
4.:
Treppen-Stufen TREPPE=800HZ-11,80KHZ.HEX |
|
|
Man
braucht also einen Brenner / Programmierer um das
jeweilige Programm in den PIC16F88 zu bringen !
Höhere NF-Frequenzen waren
software-mäßig nicht machbar, trotz eingesetztem
Quarz mit
maximal
möglichen 20,0Mhz. Es würde zwar
gehen, aber unter Qualitäts-Verlusten !!!
Die
Frequenz-Angaben beim Datei-Namen sind nur so in etwa
!!!!!! Ich hatte zum Messen nur ein
Universal-Vielfach-Volt/Ampere-Meter und einen Oszi
für die Frequenzmessung !!!!!!!!!!
Die NF-Frequenz
bei Dreieck + Sägezahn lässt sich nur in 64 Stufen am 5Kohm-Frequenz-Poti
einstellen. Dies ist Software-mäßig bedingt. Das
Frequenz-Poti funktioniert hier wie ein 64
Stufen-Schalter. Bei Sinus ist die
Frequenz-Einstell-Stufung in 256 Stufen.
Zum
Digital-Analog-Wandel Prinzip :
An 8 Bits / 1 Byte (8
Ausgänge vom PIC16F88) kommt jeweils digital +5Volt
(High) oder Null
Volt (Low) raus.
Hier ist ein
Digital-Analog-[DA]-Widerstands-Netzwerk
angeschlossen mit R/2R. Es könnte sein 10K/20K oder
15K/30K oder 18K/36K usw...
Die Widerstände
"sollten" 0,1% Toleranz haben. Mit 1% Widerständen
habe ich es nicht ausprobiert ! (siehe Genaueres in der Stück-Liste im
Download)
Es
stellen sich dann analoge Spannungen von Null-Volt bis
+5V am Ausgang des DA-Netzwerk-Wandlers ein.
Dies erfolgt jeweils nach den
Kombinationen mit Low (Null-Volt) oder High (+5Volt)
an den 8 Eingängen vom DA-Wandler.
Bei
8 Bit / 1 Byte ergeben sich 255 mögliche Spannungen.
|
|
|
Bei
zum Beispiel Dreieck-Signal wird schnell hexadezimal
hoch gezählt von Null bis 255... (ein Byte) und auf die
Ausgänge Bit- / Byte-Weise ausgegeben.
Dies erfolgt mit gleich
bleibender Geschwindigkeit / "Pause".
Es kommt eine linear
ansteigende Spannung am DA-Netzwerk-Ausgang raus.
Diese ist
treppenstufenartig mit 256 Spannungs-Stufen oder
weniger... Immer einen Spannungswert
größer... niedriger...
Vielleicht erkennt man es im
Foto links. (sehr kleine Spannungs-Sprünge)
(Klick auf das Foto und es
erscheint größer !)
Bei
einem Sinus-Signal werden die Spannungswerte erst
aus einer sin-Tabelle heraus geholt und an die
Ausgänge Bit- / Byte-Weise ausgegeben.
|
|
|
Da aber die Geschwindigkeit /
Pause / also die Frequenz geändert werden soll, muss
ein Poti mittels Analog / Digital-[AD]-Wandlung abgefragt werden.
Je nach Spannungswert am Poti
wird schnell oder langsam hoch / runter gezählt und am
Port die Bit-Kombination ausgegeben.
Die AD-Messung am Poti beim
Anschluss AN1 vom PIC16F88 läuft zwar im Hintergrund
vom PIC-Hauptprogramm als Interrupt-Programmierung
... Aber für die Ergebnis-Übernahme
im / ins Hauptprogramm
wird Zeit benötigt. Es kommt zu einer
Verzögerung / Unterbrechung.
Oben links bei dem Treppenstufen-Foto erkennt man diese
zeitliche Verzögerung / Unterbrechung. Siehe über der
unteren Spitze rechts ... den längeren
Balken ...
Bei niedrigen
Frequenzen fällt die kurze Unterbrechung nicht ins
Gewicht. Sie ist fast nicht zu erkennen. (siehe Oszi-Signal-Fotos
links und unterhalb)
Bei kompakten / einzelnen
Industrie-Schaltkreisen mit gleichem Prinzip, welche
Sägezahn, Sinus ... ausgeben können, ist dies ebenso
mit der kurzen Unterbrechung.
|
|
Sägezahn-NF-Signal
|
|
|
|
|
|
Dreieck-NF-Signal
Klick oben auf den Stromlaufplan und er erscheint größer. |
|
Sinus-NF-Signal
|
|
Test-Versuche
3.
Von mehreren 1 Watt NF-Verstärker-ICs
mit dem Sägezahn-Generator-Aufbau
|
|
An die Verstärker-NF-Eingänge habe ich
ein 100mV-NF-Sägezahn-Signal angelegt. Am Lausprecher habe ich den
Oszillographen angeschlossen und gemessen.
Alles mit Steckbrett-Aufbau...
Es sollte nur ein
Verwendungs-Zweck Beispiel sein! Hier die Ergebnisse
: (Klick jeweils
auf das Foto...)
1. Mit dem IC "LM386" :
Fast lineare Kurven-Form nur die Spitze...
(wahrscheinlich Lautsprecher-Spulen-
Induktion durch schnelle Schaltflanke...)
|
2. Mit dem alten DDR IC "A211" : Fast
lineare Kurven-Form Keine Neben-Impulse
|
3. Mit
dem älteren IC "TDA7052A" : Total lineare
Kurven-Form Wenige Neben-Impulse
(vielleicht wegen 8-Bit Spannungs-Treppen)
|
Auswertung :
1: Den LM386 gibt es noch bei "Reichelt" für
ca. 0,30€ zu
kaufen. Nur wenige Bauelemente muss man anschließen.
Im Datenblatt sind weitere Schaltungsbeispiele
beschrieben. Nur bei der einfachsten Schaltung hatte
ich Erfolg... (Klick
hier und man sieht die Schaltung)
2: Den A211 aus
DDR-Zeiten gibt es nur noch als alte Einzelbestellung
bei "Amazon"... Hier sind sehr viele Bauelemente
anzuschließen. Aber er funktioniert.
3: Den
TDA7052A gibt es auch noch bei "Ebay" oder "Amazon" als
Einzelbauelement für ca. 6.-€ . (zu teuer) Ca. im
Jahr 2005 gab es diesen bei Reichelt für nur ca. 1.-€ .
Billiger gibt es den IC jetzt noch bei der Zeitschift
"Funkamateur" (Versandt "Box73") . (Klick
hier) ca. 2.-€
Man muss nur ein 100Kohm
Poti für die Lautstärke und den NF-Eingangs-Elko
anschließen.
Den
TDA7052A hatte ich 2004 in meinem Morse-Keyer als
Mithörton eingesetzt. (Klick
hier) und man sieht die Beschaltung im
Gesamt-Stromlaufplan des "Komfortablen Keyers" am
Schluss dieser Seite.
Hier ein Übersteuerungs-Foto
vom LM386
|
Hier hat der LM386 geschwungen
|
|
Bastelanleitung
4. Einfacher NF-Sägezahn-, Dreieck-, Rechteck- und Sinus-Generator
mit dem Controller
"PIC12F1840" und Digital-Analog-IC "MCP4811"
[10Bit / 1Kanal]
|
Steckbrett-Aufbau Hier mit
Sägezahn-Signal Klick auf
die Fotos und diese erscheinen größer.
|
Download der
Bastelanleitung hier als:
"NF-Generator-mit-DA-Wandler-Schaltkreis+PIC12F1840.zip"
(ca.9Mbyte)
Entwicklungs-Gedanken:
Für den NF-Generator wird ein
Schaltkreis "Digital-Analog-WANDLER
MCP4811--10Bit-1-Kanal" benutzt. Es gibt auch 8Bit
und 12Bit Digital-Analog-Wandler. Dieser
10Bit-Wandler hier wird von dem Controller PIC12F1840
angesteuert.
Von den 2 Byte (16Bits) die vom
PIC12F1840 seriell (der Reihe nach) an den DA-Wandler ausgesendet werden,
werden 10Bits für die Spannungs-Einstellung genutzt.
Die restlichen 6 Bits sind Steuer-Befehle, ob zum
Beispiel 2,048Volt oder 4,096Volt als maximale
Spannung heraus kommen soll.
Man kann also
Gleichspannungswerte am Ausgang vom DA-Wandler mit dem
Controller einstellen. Sendet man sehr schnell
unterschiedliche 10Bit-Daten-Spannungswerte an den
Wandler kommt eine Wechselspannung am Ausgang heraus.
Die SPI-Schnittstelle des DA-Wandlers wird dabei als
Eingang genutzt. Beim Controller PIC12F1840 wird das
Ausgangs-Signal des SPI-Schnittstellen-Moduls genutzt.
Der PIC12F1840 hat also ein eigenes SPI-Modul
integriert.
Bei einer 10Bit-Auflösung sind dies
1024 Spannungsschritte, welche man einstellen kann.
Bei einer max. Ausgangs-Spannung von 2,048Volt ergibt
sich eine Spannungsschritt-Weite von ca. 2mV . Man
kann also auf 2mV genau einstellen. |
Hier mit Sägezahn-Signal anders herum
|
Um von NULL Volt
nach 2,048Volt (Maxima) in 2mVolt Schritten hoch zu
"zählen" werden sehr viele Daten übertragen.
1024Schritte * 16Bit(also 16Einzel-Impulse)= 16.384
Impulse 16384 Impulse sind notwendig um zum Beispiel
beim Sägezahn-Signal von Null zur Maximalen Spannung
zu kommen.
Der interne Taktgenerator vom
PIC12F1840 ist hier mit 32MHz software-mäßig
eingestellt. Dies hilft eine schnelle Datenübertagung
zu realisieren !
Bei einem Rechtecksignal werden
nur die max. Spannung (2.048V) und min. Spannung (0Volt)
vom Controller an den DA-Wandel-Schaltkreis ausgegeben.
Also nur 2 Spannungswerte mit 2*16Bit=32Impulse Es
geht dabei schneller. Die Frequenz ist höher.
Bei
einem Sinus-Signal sind die Spannungs-Schritte nicht
linear wie beim Sägezahn. Hier werden die
Spannungswerte aus 4 Sinus-Tabellen entnommen und vom
Controller ausgegeben.
Eine Sinus-Einzel-Berechnung
mittels Taschenrechner ist bei ca. 1000 Werten nicht zu
realisieren. Ich habe ein DOS-Programm geschrieben,
welches alle Sinus-Spannungswerte mit einem mal
berechnet. Das dabei entstandene TXT-File beinhaltet
diese Werte und kann durch Kopieren in das ASM-File
des Controller-Programms übernommen werden. Die EXE'n
und Quell-Files des DOS-Programms liegen dem Download
bei.
|
Hier mit Dreieck-Signal
|
Um
unterschiedliche Frequenzen des NF-Generators zu
erzeugen habe ich 2 Prinzipien genutzt: 1.
Zwischen den einzelnen Spannungs-Schritte wird eine
einstellbare Pause (Zeitschleife) genommen.
2.
Es wird nicht jeder kleinste Spannungs-Sprung von
2mV genutzt. Man überspringt eine gewisse Anzahl von
eigentlich möglichen Spannungen. Es wird zum Beispiel
nur jeder zweite / dritte ... Spannungswert genommen.
Man springt mittels Schrittweiten aller 2 oder 3 oder 4
oder 5... Spannungs-Schritten. Natürlich leidet
darunter die Linearität. Es sieht auf dem Oszi FAST
Treppenstufig aus bei max. Schrittweite.
Bedienung: Die Bedienung ist
eigentlich ganz einfach. Mit einem Taster kann man
die Frequenz einstellen. Dies geht aber nur mit
Einzel-Klick. Dauerdrücken und dann fortlaufend
stellen geht nicht. Bei jedem Klick erfolgt ein
20msec Piepton vom Summer. Hat man die obere oder
untere Frequenz erreicht piepst es 2sec lang.
Mit
einem Schalter kann man festlegen, ob man die Frequenz
aufwärts oder abwärts mit dem Taster stellt.
DIE
FREQUENZ-EINSTELLUNG IST NICHT LINEAR ! |
Hier mit Rechteck-Signal
|
Aufbau: Der Aufbau ist
problemlos. Es geht mittels Steckbrett
PIC12F1840 Software: Durch
Austauschen oder neu brennen des PICs erhält man
unterschiedliche NF-Generatoren. Die Frequenz-Angaben
im Programm-Namen sind nur so in etwa.
Hiermit
wird jeweils der PIC12F1840 gebrannt :
Sägezahn: SAEG=135HZ-7,1KHZ=SPI-MODUL.HEX
Sägezahn / anders herum: A_SAEG=135HZ-7,1KHZ=SPI-MODUL.HEX
|
Hier mit Sinus-Signal
|
Dreieck:
DREI=70HZ-3,50KHZ=SPI-MODUL.HEX
Rechteck
(symmetrisch): RECHTECK=130HZ-6,50KHZ=SPI-MODUL.HEX
oder RECHTECK=3,60KHZ-51,90KHZ=SPI-MODUL.HEX
Sinus: SIN=FEST-FREQU-50HZ=SPI-MODUL.HEX
oder SIN=20HZ-73HZ=SPI-MODUL.HEX oder
SIN=74HZ-1,7KHZ=SPI-MODUL.HEX
Klick auf den Stromlaufplan
und er erscheint größer. |
|
|
|