English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية 
Computer-Audio-Interface auf Draht-basierte Telefonnetz
Colin Fahey
phone_speech_system_custom_circuit.jpg
Ein Computer kann Sprach-Telefonanrufe mit einem Modem und eine einfache Schaltung.

1. Einleitung

Dieses Dokument beschreibt, wie Sie mit jedem herkömmlichen Modem und eine einfache Schaltung zu geben keine persönlichen Computer (PC), mit jedem Betriebssystem, die Fähigkeit zu platzieren, dass Telefongespräche kann es sich um Sprach-Interaktion.
Ein gewöhnlicher Modem wird verwendet, um das Telefon aktivieren, indem Sie Draht „aus Haken,“ und später die Freigabe der Telefon-Draht, indem Sie „auf Hook (Auflegen).“
Eine einfache elektrische Schaltung wird verwendet, um jedes Audio-Gerät, wie zum Beispiel eine Soundkarte oder einen Sound-Schnittstelle eines PCs (PC), Zugriff auf das Audio-Signalen über eine Telefon-Draht.
So kann ein Personal Computer (PC) kann eine Verbindung zu einer Telefonnummer, und dann warten, bis ein Mensch oder ein automatisiertes System zu beantworten, und dann ein Gespräch auf der Grundlage von Sprach-oder anderen Geräuschen.
Dieses Dokument ist für den Hobbyisten interessieren sich für das Lernen ein paar Dinge über den elektrischen Anforderungen und ein Protokoll für die Interaktion mit der Central Office (CO) von einem Draht verbunden Telefonnetz in den Vereinigten Staaten (US).
Es gibt viele Technologien für die Menschen zu interagieren mit Voice-basierten Systemen durch Telefonen.
Es gibt zahlreiche kommerzielle Produkte und Dienstleistungen angeboten, um alles im Zusammenhang mit Telefon Interaktion mit einem Corporate-Datenbank.
Es ist ganz leicht zu finden Hardware zu handhaben viele Telefonate zu einer einzigen Nummer.
Telefonie hat sich mit dem Internet, mit Protokollen wie „Voice over Internet Protocol“ (VoIP).
Computer irgendwo im Internet kann so konfiguriert werden, interagieren mit VoIP durch Spracherkennung und Sprachsynthese.
Diese Computer können optional folgen Stimme Gespräch Flussdiagramme, ausgedrückt in XML Textdateien (Voice XML).
Dieses Dokument hat das nichts zu tun mit einer dieser praktischen Lösungen für das Problem der Automatisierung von Sprach-Interaktion mit einem Unternehmen oder einer Organisation.
Dieses Dokument ist für die Unterhaltung von Hobbyisten mit kleinen Budgets.

2. Lizenzbestimmungen

Aufbau eines elektronischen Schaltungen und zum Anschließen an ein Telefonnetz, beinhaltet viele Risiken in sich.
Sie sind verantwortlich für das Lernen über alle Gesetze, Gefahren und Risiken, können sich bewerben.
Im Folgenden finden Sie eine Liste mit einigen der Themen, das müssen Sie beachten, wenn Sie daran interessiert sind, Bau und Test einer Schaltung ähnlich dem in diesem Artikel:
1.  Alle Informationen über den elektrischen Spezifikationen der Telefon-Service ist nur gültig in den Vereinigten Staaten (US).
2.  Ringing Spannung auf Telefon-Drähte (90 Volt) können Menschen verletzen.
Blitz oder abgefallen Stromkabel kann dazu führen, dass Spannungen in Telefon-Drähte, dass Menschen verletzen können.
3.  Sie sind verantwortlich für jegliche Schäden an Telefongesellschaft Schaltungen, die durch Ihre Nutzung von nicht autorisierten Geräten in Ihrem Hause oder im Büro.
4.  Recording Telefongespräche, ohne die ausdrückliche Zustimmung aller Beteiligten gegen das Gesetz verstößt.
(...  Es sei denn, Sie sind die Regierung!  Ansonsten tun, was sie sagen, und nicht, wie sie tun!)
5.  Sie sind verantwortlich für jegliche Schäden an Ihrem Computer verursacht, indem Sie Ihre eigene Schaltung auf Ihren Computer.
6.  Sie können nicht verkaufen jedes Erzeugnis, für die Verwendung mit einem Telefonnetz ohne Zustimmung der FCC.
Dieses Dokument ist lediglich eine Beschreibung meiner persönlichen Erfahrungen.
Sie sind verantwortlich für das Lernen über Gesetze und Risiken aus maßgeblichen Quellen.

3. Telefon Audio-Interface Circuit

Der Zweck der Schaltung in diesem Abschnitt beschrieben ist es, herkömmliche Audio-Aufzeichnung und Wiedergabe-Geräte, wie zum Beispiel eine Soundkarte oder Audio-Anschluss an einen PC (PC), zum Senden und Empfangen von Audio über einen konventionellen Land Draht (wired) Telefonanschluss.
Die Telefon-Draht-und die Audio-Geräte sind nicht direkt verbunden, die Kupplung ist nur durch Transformatoren.
Beide Seiten der Schnittstelle sind vor übermäßiger Spannungen.
Die Signale sind auf eine Reihe von Frequenzen (Bandbreite) für die Telefon-Audio (300 Hz zu 3500 Hz).
Die Schaltung hat nur „passive“ Komponenten, alle treibende Spannungen sind extern.
Die Schaltung muss in Verbindung mit einem Modem, Telefon oder anderen Stromkreis der Lage, zu gehen „off Hook“ (womit der Widerstand des Drahtes niedrig genug, um anzuzeigen, dass bei der Zentralstelle (CO), dass das Kabel verwendet wird).
Es wäre trivial, um eine „Off Haken“ Aspekt an diesem Rennen, aber mit einer Schaltung auf allen ist bereits ein großes Hindernis für viele Hobbyisten.
phone_circuit_box01.jpg
Aussehen der montierten Circuit
phone_circuit_board02.jpg
Aussehen der Leiterplatte
phone_circuit_schematic.jpg
Schematische Darstellung der Telefon-Audio-Interface Circuit
Sie können das Gerät fast genau so, wie es den Anschein, wenn Sie über die folgenden Investitionen:
1.  Stellen Sie sicher, dass grundlegende Werkzeuge: Schrauber, Lötkolben, Messer;
2.  Besuchen Sie Radio Shack, Kauf unten aufgeführten Punkte, für $ 29 nach Steuern;
3.  Besuchen Sie alle Hardware-Shop, Kauf zwei Muttern, Schrauben, Unterlegscheiben, für $ 1.
4.  Verbringen Sie ungefähr vier Stunden Aufbau der Schaltung nach dem Schema;
Wenn Sie noch nicht über Erfahrung Gebäude elektronischer Schaltungen, Löten, Bohren von Löchern, und die elektrischen Messungen nicht machen dieses Ihre erste Projekt!
Die einzige Person, sollte versuchen, bauen diese Schaltung ist die Person, die bereits weiß sicher, dass er oder sie bauen können!

4. Radio Shack: die allgegenwärtige Elektronik Shop

Radio Shack ist ein Consumer Electronics Unternehmen mit Filialen in der ganzen Welt. Im Folgenden finden Sie einen Link auf ihrer Internet-Site:
http://www.radioshack.com
Auf ihrer Internet-Site einer Person finden einen Link namens „Electronic Components“, die dazu führen, dass ihre Katalog von elektronischen Bauelementen und entsprechende Dokumentation.
Eine Person, finden die Preise für Teile.
Eine Person kann eine Liste der nächstgelegenen Orte und Karten.
Teile können online bestellt werden.
Ich habe beschlossen, meine einfache Schaltung mit Radio Shack Teile, weil dies bedeutet, dass irgendjemand sonst auf der Welt kann leicht reproduzieren meiner Arbeit.
Auch bei jedem Teil von Radio Shack ist praktisch garantiert zur Verfügung steht seit vielen Jahren auf einem niedrigen Preis.
Hier ist eine Liste der Teile I Radio Shack genutzt, um die Schaltung, mit der Katalog-Nummern:
QtyDescriptionSerial #PriceTotal
1Project Enclosure (6"x3"x2") #270-1805$ 3.79$ 3.79
1Surface Mount Modular Jack (RJ11/RJ14) #279-0202$ 4.99$ 4.99
13-Conductor Stereo 1/8th" Phone Jack (Pkg.2) #274-0249$ 2.99$ 2.99
1Component PC Board (71x94mm), 750 holes #276-0158$ 2.99$ 2.99
2Audio Isolation Transformer (1:1) #273-1374$ 3.99$ 5.98
2Metalized-Film Capacitor 1.0uF, 250WVDC #272-1055$ 1.49$ 2.98
12.2K ohm 1/2W 5% Carbon Film Resistor (Pkg.5)#271-1121$ 0.99$ 0.99
21N4733A, 5.1V, 1.0W Zener Diode (Pkg.2) #276-0565$ 0.99$ 1.98
SUBTOTAL: $26.69
TAX:      $ 2.07 (California 7.75% sales tax)
TOTAL:    $28.76

5. Ace Hardware: Die nicht-so allgegenwärtig Hardware Store

Ich brauchte Schrauben, Unterlegscheiben und Muttern zu befestigen ein Telefonanschluss auf der Kunststoff-Fall meiner Schaltung.
Ich ging zu Ace Hardware, aber ich konnte gegangen zu Home Depot, oder vielleicht sogar einen Supermarkt, um ähnliche Teile.
QtyDescriptionPriceTotal
2Bolt No.8-32 4.2mm-32$ 0.17$ 0.34
2Washer No.8 $ 0.10$ 0.20
2Nuts No.8-32 2" $ 0.10$ 0.20
SUBTOTAL: $0.74
TAX:      $0.06 (California 7.75% sales tax)
TOTAL:    $0.80

6. Werkzeuge und Zubehör

Die folgende Tabelle listet einige der Gegenstände, die ich brauchte für den Bau und die Nutzung der Schaltung:
Soldering iron $ 5.00 (approx)
Solder $ 3.00 (approx)
Precision knife $ 3.99
Wires $ 1.00 (approx)
Telephone extension cord #279-0374 $ 5.79
Male-Male mini-phono 6' extension cord (qty.2)$ 3.00 (approx)
Four-wire 3-way coupler (RJ11/RJ14) #279-0447 $ 4.99

7. Kommentare auf der Rennstrecke

Ich bin nicht ein Elektroingenieur.
Ich studierte verschiedenen Telefon-Schaltungen (siehe Referenzen aufgelistet am Ende dieses Artikels), extrahiert und verschiedenen Elementen, die Unterstützung meiner eigenen Design-Ziele.
Wenn du wirklich verzweifelt, und das Risiko zu Ihren PC war kein Faktor, können Sie eine telefonische Verbindung Draht zu Ihrem Sound-Port mit nur einem Paar von Kondensatoren!
Das ist eine sehr schlechte Idee, denn das Klingeln Spannung, und die mögliche zufällige Spannungsspitzen am Telefon Draht, können Schäden ungeschützten Geräten.
Die Zener-Dioden in meiner Schaltung Kurzschluss übermäßigen Spannungen.
Beachten Sie, dass sie konfrontiert sind entgegengesetzte Richtungen, so dass für einen bestimmten angelegten Spannung mit einer bestimmten Polarität, ein Zener-Diode ist Zeichen zu aktuellen Regel, und der andere ist Zeichen für Reverse-Aufteilung sollte die Spannung über seine Bewertung (zB 5.1 V) .
Erst wenn eine Spannung von mehr als der Reverse-Durchschlagsspannung einer der Zener-Dioden werden die beiden letztendlich ermöglichen aktuellen zu lassen, so Kurzschluss die Drähte zu der das Paar von Dioden angeschlossen ist.
Beachten Sie, dass dies funktioniert unabhängig davon, wo die Signale stammen.
Wechselstrom (AC) Signale aus dem Telefon-Draht, dass die größer sind dann 5,8 Volt ( 5.1 V + 0.7 V ) nach Verabschiedung durch den Transformator wird gekappt.
(DC) Gleichstrom oder Wechselstrom (AC) Audio-Signale von einer Audio-Quelle, nicht das Telefon-Kabel, wird auch in 5.8 Volts abgeschnitten.
Also, jeder Partei, Telefon und Audio-Geräte, ist vor übermäßiger Spannungen kommen von der anderen Partei.
Das Gerät ist wirklich ein Paar identische Schaltungen.  Entweder Audio-Stecker kann für Ein-oder Ausgang.
Im Grunde, die beide Audio-Signale werden in Verbindung, um die einheitliche Telefon-Signal.

8. Über ein Modem zu gehen „off hook“

8.1 Der Zweck des Modems

Der Zweck des Modems in diesem System ist die Schaffung eines elektrischen Bedingung, dass die Telefon-Service-Provider werden erkennen, wie eine Anfrage zu einem aktiven Teilnehmer an das Telefonnetz.
Dieser Antrag wird als „laufende off Haken,“ einen Verweis auf die ursprünglichen Designs, Telefon benötigt ein Benutzer zum Anheben einen Lautsprecher oder Telefon ausgeschaltet eines Hakens.
Die Aktivierung Anfrage ist fast sofort erteilt, innerhalb eines Bruchteils einer Sekunde.
Sobald die Leitung wieder aktiv, alle anderen Aspekte der Telefonie kann im Rahmen Audio-Signale.
Obwohl die Übertragung von Telefonnummern „(Dialing)“ kann durch Abspielen von Audio-Dateien ( *.WAV, *.MP3 ), aufgezeichnete Audio (DAT, Audio CD, Tape), Audio-oder Software-Synthese (sin() Funktionen), das Modem hat die immanente Fähigkeit zur Wahrnehmung dieser Funktion.
Es sollte jedoch verstanden, dass der einzige Zweck des Modems ist ersuchenden Aktivierung des Telefon-Draht.
Wenn eine Person hat eine alternative Methode zur Simulation des off hook Zustand (dh, nur eine Senkung der Widerstand in der gesamten Telefon-Draht), das Modem ist nicht erforderlich.
Allerdings, ein Modem ist eine sehr kostengünstige, Gemeinplatz, bequemer und Gerät für die Durchführung dieser Funktion.
Das System in diesem Artikel beschrieben ist es nicht erforderlich, ein Modem mit Audio-Aufnahme oder Wiedergabe Fähigkeit, manchmal auch eine „Stimme-Modem.“
Allerdings, in einem anderen Abschnitt in diesem Artikel werde ich über die Möglichkeit des Einsatzes einer Stimme-Modem als Alternative zur Verwendung einer benutzerdefinierten elektrischen Stromkreis.

8.2 Typische Modem

Ich habe mich für die Verwendung eines externen Modems, hergestellt von der Hayes genannt „Accura“, V.92 ein Fax-Modem mit Voicemail-Funktion.
Alle Modem verwendet werden kann für das System in diesem Artikel beschrieben.
Ich wollte ein externes Modem einfach, weil es einfach zu befestigen auf jedem Computer, und ich kann es einem Freund das Haus auf den Einsatz mit ihrem Laptop oder Desktop-Computer.
Obwohl es kaum wichtig, auch ich die Möglichkeit, dass vielleicht ein Basic Stamp 2 Computer nutzen könnten die RS-232 Modem.
Achtung: Serielle Schnittstellen (RS-232) Häfen, wie PS/2 Häfen, werden auslaufen, und USB ist der neue Standard.
Ein externes Modem kann USB oft zugegriffen werden durch Software so, als ob es sich um ein Vermächtnis „COM“ Port-Gerät von Gerätetreibern, die mit dem Modem.
Es ist ein kleines USB/RS-232 Adapter (~$30) verwendet werden können, um eine Verbindung zeitgenössischen Laptops und Desktop-Computern zu RS-232 Geräte.
Ein solcher Adapter verfügt über einen entsprechenden Gerätetreiber zu emulieren, ein Vermächtnis seriellen Port-Schnittstelle (zB „COM“ Gerät).
hayes_modem_box001.jpg
Hayes externes Modem: Box
hayes_external_modem002.jpg
Hayes externes Modem

8.3 Modem-Befehle

Wenn ein Modem zum ersten Mal eingeschaltet wird, wird er in einen Zustand namens „Kommando-Modus.“
Wenn das Modem erfolgreich eine Verbindung zu einem Remote-Modem oder Remote-Fax-Gerät über die Telefonleitung Draht, es tritt ein Staat namens „Daten-Modus.“
Allerdings ist das System in diesem Dokument beschriebenen wird nicht das Modem verwenden, um eine „Daten-Modus“ Verbindung mit einem Remote-Gerät, so dass das Modem wird immer im „Kommando-Modus.“
Wenn im Kommando-Modus, das Modem nimmt Befehle in Form von plain ASCII Zeichen.
Charaktere werden zwischen dem Modem und dem Computer über ein serielles Kabel, oder über einen Gerätetreiber, macht eine interne Karte (zB PCI Karte) zugänglich wie ein serielles Gerät.
In jedem Fall, Programme verwenden API fordert den Zugriff auf serielle Geräte (zB „COM1“ oder „/dev/modem“).
Ein wichtiger Teil der Modem-Befehle nennt „AT“ (ay-tee) Befehle ein, und alle diese Befehle beginnen mit dem Zeichen „at“ (oder „AT“).
Da sich Modems, die Liste der Befehle erweitert und bietet zunehmend esoterische Features.  Das System in diesem Artikel beschriebenen nur erfordert die Fähigkeit, das Modem „aus Haken“ und später zurückkehren, um das Modem „auf“ die „Haken.“  Die Fähigkeit zur Einwahl Ziffern und optional wiederum auf einen Redner für die Überwachung des Anrufs sind nützliche Features, sind aber nicht unbedingt erforderlich.  Die folgende Tabelle listet die Modem-Befehle wahrscheinlich verwendet werden, mit dem System in diesem Artikel beschrieben:
ActionCommand
On-Hook ("Hang Up")ATH [zero] [return]
Off-Hook ("Pick Up")ATH [one] [return]
"Dial" Digits ATDT [digits,#,*] ; [return]
"Dial" Digit ATDT [digit,#,*] ; [return]
Speaker Off ATM [zero] [return]
Speaker On ATM [two] [return]
Die folgende Tabelle zeigt eine hypothetische Folge von Befehlen verwendet, um ein Telefongespräch, interagieren mit ein automatisiertes System, das mit „Touch-Töne“ (DTMF), und dann den Anruf zu beenden „(auflegen):“
CommandAction
ATM 2 [return]Speaker On
ATH 1 [return]Off-Hook ("Pick Up")
ATDT 5551212 ; [return]"Dial" 5551212
ATDT 3 ; [return]"Press" 3
ATDT # ; [return]"Press" Pound (#)
ATDT * ; [return]"Press" Star (*)
ATH 0 [return]On-Hook ("Hang Up")
ATM 0 [return]Speaker Off

8.4 AT Befehlssatz

Die „AT Befehlssatz wird von fast allen Modems auf Existenz.
Diese Reihe von Befehlen wurde ursprünglich durch Hayes Modems.
Die meisten Modems sind als „Hayes-kompatibel, da sie die Anwendung der AT Reihe von Befehlen.
Alle AT Befehle müssen beginnen mit dem Präfix AT, gefolgt von einem Kommando Schreiben, und endete mit der ENTER(*)-Taste.
(*...ENTER, CARRIAGE RETURN, CR, RETURN, '\r', 13, 0xd, Control-M, ^M)
Leerzeichen sind erlaubt im Kommando-String zu erhöhen Befehlszeile Lesbarkeit, sind aber ignoriert das Modem während der Ausführung von Befehlen.
Alle Befehle können in beiden Groß-oder Kleinschreibung, aber nie gemischt.
Ein Befehl ausgegeben, ohne irgendwelche Parameter ist als die Angabe der gleichen Befehl mit einem Parameter der 0 (Null).
Im Folgenden finden Sie eine verkürzte Liste der AT Befehle.
Eine vollständige und detaillierte Liste kann leicht gefunden werden im Internet über eine Suche mit Hilfe der Schlüsselwörter „at Modem-Befehle.
CmdAction
A Answer incoming call
D 0-9, A-D, # and * (e.g., AT T D 5551212*#)
P Pulse dial
T Tone dial
W Wait for second dial tone
, Pause
@ Wait for 5 secs of silence
! Flash (very brief on-hook)
; Return to command mode after dialing
E0 Command echo disabled
E1 Command echo enabled
F0 Autoscan mode
F1 300 bps connection only
F3 V.23 connection only
F4 1200 bps connection only
F5 2400 bps connection only
F6 4800 bps connection only
F7 7200 bps connection only
F8 9600 bps connection only
F9 12000 bps connection only
F1014400 bps connection only
H0 Modem on-hook (hang up)
H1 Modem off-hook (pick up)
I0 Product code
I1 Checksum code
I2 ROM test
I3 Firmware and device ID
L0 Low speaker volume
L1 Low speaker volume
L2 Medium speaker volume
L3 High speaker volume
M0 Speaker off
M1 Speaker on until carrier detect
M2 Speaker on
M3 Speaker off during dialing, on until carrier detected
N0 Connect only at DTE rate
N1 Auto rate negotiation
O0 Return to data mode
O1 Initiate an equalizer retrain and return to data mode
P Pulse dial
Q0 Result codes enabled
Q1 Result codes disabled
T Tone dial
V0 Numeric responses
V1 Text responses
W0 Report DTE speed only
W1 Report wire speed, error correction protocol, and DTE speed
W2 Report DCE speed only
X0 Hayes Smartmodem 300 compatible responses/blind dialing
X1 Same as X0 plus all CONNECT responses/blind dialing
X2 Same as X1 plus dial tone detection
X3 Same as X1 plus busy signal detection/blind dialing
X4 All responses and dial tone and busy signal detection
Y0 Long space disconnect disabled
Y1 Long space disconnect enabled
Z0 Reset and recall user profile 0

8.5 Testen Sie das Modem

Dieser Abschnitt beschreibt Methoden zur schnellen Überprüfung der Fähigkeit zur Kontrolle ein Modem mit dem Computer verbunden.
Die erste Methode ist geeignet für Windows 98/NT/Me/2K/XP.
Die Grundidee besteht darin, „serielle Kommunikation“ Software, finden Sie in fast jeder typischen Installation des Windows Betriebssystem: „HyperTerminal“.
Windows 98     : "C:\Program Files\Accessories\HyperTerminal\Hypertrm.exe"
Windows 2000\XP: "C:\Program Files\Windows NT\hypertrm.exe"
(Die doppelten Anführungszeichen oben abgebildet sind notwendig, wenn die Verknüpfungen oder bei der Ausführung von der Eingabeaufforderung ein, da die Datei-Pfade Leerzeichen enthalten.)
HyperTerminal eingeleitet werden können, aus der Eingabeaufforderung oder durch Menüs navigieren.
Unter Windows 2000\XP, zum Beispiel die Software-Link finden Sie am Ende der folgenden Pfad der Menüs:
Start -> Programs -> Accessories -> Communications -> HyperTerminal -> HyperTerminal
windows_menu_hyperterminal.jpg
Menühierarchie führenden Start aus dem Menü auf HyperTerminal
Beim Starten HyperTerminal, mehrere Dialogfelder angezeigt:
hyperterminal_dialog_set.jpg
HyperTerminal Dialoge:
1.  Connection Description: Geben Sie beliebige Namen;
2.  Connect To: Wählen Sie mit Modem-Anschluss (zB COM1);
3.  COM1 Properties: Bitrate für die Kommunikation zwischen den PC und das Modem, usw.
Ich spezifiziert eine niedrige Bitrate (2400 Bits pro Sekunde) zwischen dem PC und das Modem einfach deshalb, weil dies wahrscheinlich auf Arbeit für alle Modem, das ist nicht offiziell eine antike.
Es ist für moderne Modems für die Kommunikation mit dem PC in Raten 115200 Bits pro Sekunde, auch wenn die Datenrate auf der Telefon-Draht ist so niedrig wie 9600 Bits pro Sekunde.
Das folgende Bild zeigt ein einfaches Modem-Session mit HyperTerminal:
hyperterminal_session01.jpg
Verwenden HyperTerminal zu versuchen, mit verschiedenen Modem-Befehle
Dieser stellt fest, zeigen eine einfache Möglichkeit zum Testen ein Modem mit dem Windows Betriebssystem.
Es gibt zahlreiche andere „serielle Kommunikations-Software-Programme“ für Windows und Linux.
Für Linux (oder UNIX Varianten) können Sie tun können, etwas Ähnliches zu „echo atm2 > /dev/modem“ über eine Befehlszeile oder fp = fopen( "/dev/modem", "w" ); gefolgt von Anweisungen wie fprintf( fp, "atm2" ); in einer einfachen C Programm.

8.6 Source-Code zur Kontrolle ein Modem

Die C/C++ Computer-Code unten zeigt die Übermittlung Text-Befehle an ein Modem.
Obwohl die Computer-Code dargestellt ist für die Windows Betriebssystem, die Ideen sind leicht generalisiert für andere Betriebssysteme.
#include < windows.h >

HANDLE  hCom = ((HANDLE)(0));

int  main()
{
DCB                dcb;
unsigned long int  n = 0;
char *             str = "COM1";

hCom = CreateFile( str, (GENERIC_READ | GENERIC_WRITE),
                   0, NULL, OPEN_EXISTING, 0, NULL );

GetCommState ( hCom, (&(dcb)) );

dcb.BaudRate = CBR_9600;
dcb.ByteSize = 8;
dcb.Parity   = NOPARITY;
dcb.StopBits = ONESTOPBIT;

SetCommState ( hCom, (&(dcb)) );

WriteFile( hCom, "ATM2\r", strlen("ATM2\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);

WriteFile( hCom, "ATH1\r", strlen("ATH1\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);

WriteFile( hCom, "ATDT5551212;\r", strlen("ATDT5551212;\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(3000);

WriteFile( hCom, "ATH0\r", strlen("ATH0\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);

WriteFile( hCom, "ATM0\r", strlen("ATM0\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);

CloseHandle( hCom );

return(0);
}
Kopieren der Demonstration oben angezeigten Code: modem_test.cpp
Die oben genannte Software erhalten Sie Zugriff auf eine serielle Schnittstelle (dh, „COM1“), und wir davon ausgehen, ein Modem wird an diesem Port.
Die Software sendet Text Befehle an das Modem zu tun, folgende Dinge:
1.  Schalten Sie den internen Lautsprecher („ATM2\r“);
2.  Nehmen Sie die „Telefon-Draht-off Hook“ („ATH1\r“);
3.  Wählen einer Telefonnummer („ATDT5551212;\r“);
4.  Setzen Sie das Telefon zurück „auf“ Draht „Hook“ („ATH0\r“);
5.  Schalten Sie den internen Lautsprecher („ATM0\r“).
Das Beispiel Computer-Code oben zeigt einige der relevanten Windows API Funktionen.
Aber das Beispiel Computer-Code ist sehr unflexibel und prüft nicht für irgendwelche Fehler.
Die Funktion Sleep() Aufrufe sicherzustellen, dass das Modem hat Zeit, um Befehle, bevor zum nächsten Befehl.
Im Idealfall würden wir prüfen, ob Text Antworten aus dem Modem (zB „OK“ oder „ERROR“).

8.7 Modem Kontrolle C++ class (Windows Betriebssystem)

Die folgenden ZIP Archiv-Datei enthält eine C++ class geeignet für die Steuerung über ein Modem die Windows Betriebssystem.
Es ist im wesentlichen eine elaboriertere Version der Demonstration Code oben.
Auch die C++ class Wraps das Modem-Funktionalität in einer solchen Art und Weise, wie die Portierung auf andere Plattformen (zB Linux) ist erleichtert.
modem_control_v10.zip

4863 bytes
MD5: 47fe45adb6813f741243f861add7be29
Ein Microsoft Visual C++ 6.0 Projekt-Datei ist mit dem Quellcode, so kann man aufbauen und führen Sie den Code sofort als Test.
Aber alles, was Sie brauchen, sind die beiden relevanten Quelldateien ( modem_control.cpp, modem_control.h ) zu benutzen den Code in Ihre eigene Software.

9. Mit Hilfe der Schnittstelle

9.1 Mit Hilfe der Schnittstelle mit einem Computer

phone_speech_system_custom_circuit.jpg
Konfiguration verwendet in meiner Experimente
Fügen Sie ein Splitter zum Telefon Draht, mit einer Filiale werde ein Modem, und die anderen Zweig auf der Telefon-Schnittstelle Stromkreis.
Verbinden Sie die beiden Audio-Kabel von der Rennstrecke auf den „Mikrofon-Eingangs-und Lautsprecher-Ausgang“ der Soundkarte oder Audio-Buchsen auf der persönlichen Computer oder andere Audio-Gerät.
Mit dem Modem-Code beschrieben, an anderer Stelle in diesem Artikel können Sie das Modem, „um“ über „den Telefon-und Telefon-Nummern.“
Dann kann der Computer aufnehmen und Audio-Wiedergabe in jeder gewünschten Art und Weise.
Das Modem Code kann dann verwendet werden, „um“ aufzulegen „das Telefon“ um das Gespräch zu beenden.
Sie sind verantwortlich für die Mitteilung von Anrufern, wenn Sie beabsichtigen, um einen Teil des Gesprächs.
(...  Es sei denn, Sie sind die Regierung!  Ansonsten tun, was sie sagen, und nicht, wie sie tun!)

9.2 Mit Hilfe der Schnittstelle mit Audio-Equipment

Fügen Sie ein Splitter zum Telefon Draht, mit einem Zweig zu einem gewöhnlichen Telefon, und die anderen Zweig auf der Telefon-Schnittstelle Stromkreis.
Verbinden Sie entweder Audio-Signal von der Schaltung auf ein Mikrofon-Eingang an einen Verstärker oder ein Aufnahmegerät.
Verbinden Sie den Ausgang von jedem Gerät, das produziert Low-Amplitude Audio (zB +/-1.0 Volt) entweder auf Audio-Buchse auf der Rennstrecke.
Schließen Sie keine der Audio-Ausgang über einen Stereo-Verstärker auf der Strecke, weil die Spannungen sind sehr wahrscheinlich zu sehr übermäßigen für Telefon-Audio.
Stereo-Verstärker haben in der Regel spezielle Ausgänge (zB RCA Stecker) für das Senden von Audio-Ausgang auf andere Arten von Audio-Geräten, die akzeptieren, Audio-Eingang (zB VCR, Kassettenrecorder, Fernsehen, etc.); diese Niederspannungs-Ausgänge sind geeignet für den Einsatz mit der Schaltung in diesem Artikel beschrieben.
Daher kann man annehmen oder Ort Anrufe über das Telefon, und die Aufnahme und Wiedergabe Audio-während der Benutzung des Telefons.
Sie sind verantwortlich für die Mitteilung von Anrufern, wenn Sie beabsichtigen, um einen Teil des Gesprächs.
(...  Es sei denn, Sie sind die Regierung!  Ansonsten tun, was sie sagen, und nicht, wie sie tun!)

10. Telefonnetz Konzepte

10.1 Projekte Referenzen

Die Bedienung der TK-Anlage würde den Rahmen dieses Artikels sprengen.
Konsultieren Sie die Hinweise am Ende dieses Artikels für einige Informationen zum Thema.
Aber ich diskutieren interessante Höhepunkte in diesem Abschnitt.

10.2 Grundlegende Aspekte Elektro -

10.2.1 Telefon oder Modem an die „Haken in“ Staat

Es gibt zwei Ziele, die dazu geführt, dass Telefon-Design:
(1) Ein Telefon sollte elektrisch "unsichtbar" zu Direct Current (DC), genauso wie ein offener Stromkreis oder eine Trennung, wenn es in der am Haken-Staat;
(2) Die Wechselstrom (AC) Spikes verwendet werden, um Telefone Ring sollte akzeptiert werden, von Telefonen in der on-hook Zustand, so dass sie klingelt.
Beide Ziele sind erreicht, indem das Telefon so konstruiert, dass eine nicht-polarisierten Kondensator (oder zwei) ist das Telefon die einzige Verbindung zum Telefon, wenn Draht in den Hörer auf.
So, Direct Current (DC) kann nicht durchdringen, und der Wechselstrom (AC) Klingeln passieren kann, um die Glocken läuten oder Stromkreis.
Wenn ich gemessen DC der Widerstand eines Telefons in die On-hook Zustand, es 40 Megaohms überschritten.
Wenn ich gemessen DC die Resistenz von einem Modem in der on-hook Zustand, sondern auch überschritten 40 Megaohms.
Die DC Spannung, die von der Telefongesellschaft zu erkennen, jeden Widerstand aufgrund Telefone werden off-hook wird manchmal als 48 Volts.
Ich +23.02 Volts (DC) gemessen, wo ich rief den „roten Draht“ positiv, und die „grüne Draht“ Boden.
Beachten Sie, dass diese DC Spannungsabfälle dramatisch, wenn das Telefon ausgeschaltet wird genommen-Haken, ich +7.17 Volts (DC) gemessen, wenn das Telefon war in der Off-hook-Status.
Ringing Spannung wird berichtet, dass 90 Volts (16-60 Hz Wechselstrom), die sich erschrecken oder verletzen Menschen unter bestimmten Umständen.

10.2.2 Telefon oder Modem im „Off Haken“ Zustand

Telefone und Modems Anfrage Verwendung eines Telefon-Draht durch die Reduzierung ihrer eigenen DC elektrischen Widerstand.
Diese Bedingung wird vom Telefon-Anbieter und der Draht wird aktiv.
Wenn ich gemessen DC der Widerstand eines Telefongesprächs im Off-Zustand Haken, es war ungefähr 6.83 Megaohms.
Wenn ich gemessen DC der Widerstand der ein Modem im Off-Zustand Haken, es war fast genau 1.500 Megaohms.
Daran erinnern, dass diese beiden Geräte Widerstände hatte das 40 Megaohms überschritten, wenn in den Hörer auf.
Interessant ist, dass dieser Widerstand ist recht hoch, in der Nähe eines menschlichen's elektrischen Widerstand, wenn Sie Drähte mit einem trockenen Händen.
Zum Beispiel, wenn ich über einen Draht in meiner linken Hand und einem Draht in meiner rechten Hand, mit relativ trockene Hände, ich kann einen Widerstand so gering wie 0.5 Megaohms durch Ausdrücken eng an den Kabeln.
Drücken sehr leicht ist mir eine höhere DC Widerstand, etwa 1.5 Megaohms, das ist anscheinend immer noch niedrig genug zu sagen, die Telefon-Firma, ich bin ein Telefon.
(Never Touch Telefon-Drähte!)
So kann man simulieren, die eine Telefon-oder Modem-off-hook nur durch die Einführung eines 1 Megaohm Widerstand in der gesamten Telefon-Draht.
Man kann dies tun durch eine Schaltung mit einem Relais gesteuert von einem Hafen in einem Computer (RS-232, parallel port, USB, etc), aber ein Modem ist eine bequeme, kostengünstige und flexible Alternative zu einer benutzerdefinierten Relay-Schaltkreis.
Wie bereits erwähnt, die Telefongesellschaft hält ein Direct Current (DC) potentielle Differenz (Spannung) über das Telefon Draht zur Erkennung von Telefonen geht off-Haken und Rückkehr in den Hörer auf.
Ich diese Spannung gemessen als +23.02 Volts (DC) für den Haken, und +7.17 Volts (DC) für Off-Haken.

10.3 Audio-Signale

Mit dem Telefon in der Off-Haken Staat, der „Wählton“ zu haben scheint einem Wechselstrom (AC) Root-Mean-Square (RMS) Spannung von 0.139 Volts AC.
Das gesamte Signal ist voreingenommen durch eine erhebliche DC Spannung von etwa +5 Volts DC, ich gemessen +7.17 Volts DC während ein Experiment.
Die Audio-Signale sind sehr kleinen Abweichungen (wenige Prozent) um die DC Spannung.
Dies bedeutet beispielsweise, dass die Audio-Signale nicht schwanken um eine Null Spannung, die Audio-Signale niemals machen, der Stromfluss in die entgegengesetzte Richtung auf die Telefon-Draht.
Es stellt sich heraus, dass mein Telefon-Interface-Schaltung wandelt das Signal 0.139 VAC auf rund 0.030 VAC (dh 30 mV AC) für den Einsatz von Audio-Equipment (zB Mikrofon-Eingang über eine Soundkarte).

10.4 Audio-Bandbreite

Die primäre Funktion einer Telefonanlage ist es, Sprach-Kommunikation zwischen Menschen.
Die folgende Abbildung zeigt die durchschnittliche spektrale Energie für ein paar Sekunden von Audio-Rede.
basic_words_average_spectral_energy06.jpg
Durchschnittliche spektrale Energie (Dezibel-Skala) von mehreren Sekunden der Rede über den gesamten hörbaren Bereich (20 Hz zu 20 kHz).  Die vertikale Skala wird in Dezibel, so dass auch ein bescheidener Rückgang in diesem Schaubild zeigt einen dramatischen Rückgang der Schallenergie.
Die Dezibel-Skala des Diagramms oben bedeutet, dass niedrigere Werte im Diagramm sind tatsächlich um Größenordnungen weniger, dass die höheren Werte in der Tabelle.
Es ist offensichtlich, dass ein erheblicher Teil der gesamten Energie der Rede Ton ist im Intervall von 0 Hz zu 4000 Hz.
Der Mensch kann verstehen zuverlässig Redebeiträgen folgen, auch wenn alle Audio-Energie außerhalb des Intervalls 300 Hz zu 3000 Hz ist eliminiert.
Allerdings ist die subjektive Wirkung der Begrenzung Audio-Energie an dieses Bereichs besteht darin, dass Stimmen Ton gedämpft und die mangelnde Artikulation.
Der feine Unterschied zwischen 'F' und 'S' ist leicht verloren mehr als ein Telefon.
Die TK-Anlage in den Vereinigten Staaten hat eine Stimme Kanal führt, dass nur Frequenzen zwischen 0 Hz zu 4000 Hz.
Allerdings ist die Stimme passband beschränkt sich auf die Reichweite 300 Hz zu 3000 Hz, und es ist rasch zunehmende Dämpfung der Stimme Energie außerhalb dieser Band.
phone_bandwidth_diagram002.jpg
Voice Bandbreite ( 300 Hz - 3000 Hz ) innerhalb der Voice Channel ( 0 Hz - 4000 Hz ) der TK-Anlage in den Vereinigten Staaten
Das folgende Bild ist eine spektrale Grundstück von mehreren Sekunden ein typisches aufgezeichneten Telefongespräch.
cell_phone_audio_spectral_view.jpg
Spectral Grundstück von mehreren Sekunden ein typisches aufgezeichneten Telefongespräch (männliche Stimme)
Obwohl die Frequenz Auflösung ist relativ gering, die Wirkung der begrenzten Bandbreite der TK-Anlage ergibt.
Zu Versuchszwecken, die Audio-Eigenschaften eine Telefonanlage können simuliert werden mit einem grafischen Equalizer oder ein Bandpass-Filter in einer soliden Bearbeitungs-Software-Paket, einfach durch Filtern Sie alles unter 350 Hz und alles, was oben 3500 Hz.

10.5 Wichtiger Audio-Frequenzen

Der „Touch-Töne“ zur „Einwahl-Nummern“ und interagieren mit automatisierten Systeme sind bekannt als Mehrfrequenzwahlverfahren (DTMF) Signale.
Diese Töne können einfach durch Hinzufügen von zwei Sinuswellen zusammen mit dem guten Frequenzen, wie in der folgenden Matrix von Frequenzen.
Beachten Sie, dass die minimale Zeit halten, wenn das Senden einer DTMF Sound ist 50 milliseconds, und die Mindest-Release-Zeit (stille Kluft zwischen DTMF klingt) ist 50 milliseconds.
Die Verwendung von Verzögerungen 200 milliseconds wäre wahrscheinlich zuverlässig.
dtmf_frequency_table.jpg
Der „Wählton, Besetztzeichen,“ und „Ring-Back-Töne“ auch definiert haben, Frequenz-Kombinationen in den Vereinigten Staaten:
phone_state_frequencies.jpg

11. Alternative Methoden Telefon-Schnittstelle

Ich investierte $30 und vier Stunden, um die Schaltung zu ermöglichen eine persönliche Computer zum Senden und Empfangen von Audio-Signalen über eine Telefon-Draht.
Dies erfordert eine cetain Art von Know-how und Ausrüstung.
Auch, es sei denn, Sie sind bereit zu gehen, dass die Tätigkeit der Herstellung dieser Schaltung ist es nicht möglich, erstellen Sie ein Produkt (billige Voice-Mail oder Anrufbeantworter), die diese Schnittstelle.
Die einfachste, kostengünstige Alternative zu den Hardware-Methode, die ich in diesem Artikel beschrieben, ist die Verwendung einer Software-Methode für den Zugriff auf die Fähigkeiten der Stimme eine „Stimme-Modem.“
Allerdings muss ich sagen, dass im Vergleich zur Verwendung einer benutzerdefinierten Schaltung, mit einer Stimme-Modem in Verbindung mit spezieller Software ist wahrscheinlich zu sehr Plattform-spezifisch und allgemein sehr schmerzhaft zu programmieren, konfigurieren und zu verwenden.
Der Vorteil (vorausgesetzt, Sie haben eine Stimme-Modem) ist, dass dies wäre eine reine Software-Lösung.
Wenn Sie eine Stimme-Modem und spezieller Software, Ihr System könnte so einfach wie die folgende Abbildung.
phone_speech_system_voice_modem.jpg
System über ein internes „Modem“ und „Sprach-Software“
Abhängig von Ihren Bedürfnissen, die Sprach-Daten Aspekt der Stimme-Modem kann half-duplex (dh Software kann „sprechen“ oder „hören,“ aber nicht beides gleichzeitig), oder Voll-Duplex.
Half-Duplex kann einige Komplexität der Controlling-Software, da müssen Sie entscheiden, wann die Übermittlung und den Empfang Audio.
Die Stimme digitalisiert Telefon-Modem-Kabel Audio-und überträgt die Daten über einen USB oder RS-232 wenn extern, oder über das PCI Bus, wenn interne.

12. Microsoft Telephony API (TAPI)

Microsoft Betriebssysteme haben TAPI 2.0 und TAPI 3.0 DLLs.
TAPI 3.0 haben könnten zahlreiche Software-Probleme, und die meisten Menschen verwendet haben, haben Microsoft TAPI einfach TAPI 2.0 (der hat fast alle gewünschten Funktionalität) anstelle von TAPI 3.0.
Verwenden Sie die „wave/in“ und „wave/out“ Geräte, um Zugang zu einem Stimme-Modem-Audio-Streams.
Siehe die TAPI Buch in die Verweise in diesem Artikel.  Das Buch ist alt, aber es beschreibt TAPI 2.0 im Detail.

13. Java Telephony API

Ich weiß nicht, etwas über das Java Telephony API.
Aber ich vermute, es hat den Vorteil, unabhängig von den Betriebssystemen, und wahrscheinlich ist viel einfacher als die Abstraktionen Microsoft TAPI!

14. Verschiedene kommerzielle Produkte

Handels-, Rack-mounted Hardware-Schnittstellen zu externen mehrere Telefon-Leitungen sind in der Lage, den Austausch von Sprach-Daten mit dem Computer.
„Voice Over IP“ (VoIP) Produkte, wie zum Beispiel „Internet-Telefone,“ sind nun überall (zB „Skype).“
Natürlich Computer-Software kann leicht Zugang zu den für solche Audio-Telefonanschlüsse.

15. Referenzen

Beste, verständliche Anleitung zur Telefon-Schaltungen Ich habe die auf dem Internet:
http://www.hut.fi/Misc/Electronics/circuits/teleinterface.html
Ein weiterer interessanter Hinweis:
http://www.repairfaq.org/ELE/F_ASCII_Schem_Tel.html
Hilarious (und verrückt) Leitfaden für Pay-Telefone rund um die USA und Kanada:
http://www.payphone-directory.org
(Sehen Sie sich die „Mitwirkenden“ von „Anfang“ Pay-Telefonnummern, die Telefon-Audio-Samples, und das Telefon Bilder.)

16. Bücher

16.1 Understanding Telephone Electronics (4th ed)

book_cover_telephone_electronics02.jpg
Understanding Telephone Electronics (4th ed);
Newnes; 2001;
Stephen J.  Bigelow, Joseph J.  Carr, Steve Winder;
$25.45 US (2001)
Dieses Buch beschreibt viele Aspekte von Telefon-Schaltungen und den Betrieb des Telefonnetzes in den USA.
Es gibt viele Details über Schaltkreise und Protokolle, alles aus einem Telefon an das Telefonnetz.
Zweifellos ist die Technik sehr unterschiedlich, aber dieses Buch ist wahrscheinlich etwas mehr praktische als ein Geschichtsbuch.

16.2 Windows Telephony Programming: A Developer's Guide to TAPI

book_cover_windows_tapi02.jpg
Windows Telephony Programming: A Developer's Guide to TAPI;
Addison-Wesley; 1998;
Chris Sells;
$33.95 US (1998)
Die Microsoft Telephony API (TAPI) ist unnötig chaotisch und unübersichtlich, und ist jetzt extrem veraltet.  Das Buch erwähnt könnte die einzige jemals erschienenen Buch über die Microsoft Telephony API (TAPI).
colinfahey.com
Kontaktinformationen
English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية