Modemy

Modulátor-demodulátor pro přenos digitálního signálu telefonní sítí (nemožnost přenosu digitálního signálu v základním pásmu: široké spektrum, stejnosměrná složka)

Omezení přenosového pásma na telefonních linkách: 300-3000 Hz => nutnost modulace

Poznámka: echo suppressors (linky nad 2000 km, otáčí směr, vypnou se signálem 2,1kHz; echo cancellers)

Rozhraní

RS232, (Centronics), příp. synchronní rozhraní, RJ-11

Parametry modemů

Podporované standardy. Z nich plyne:

Flow control

Hardware (RTS/CTS), XON/XOFF

Pronajatá linka (leased line) / komutovaná linka (PSTN)

Pronajatá linka nevyžaduje vytáčení čísla (dialing), modemy zpravidla udržují spojení neustále

4- nebo 2-drátový okruh

Zpravidla synchronní přenos

Zkušenosti ukazují, že na pronajaté lince často špatně spolupracují modemy různých výrobců

Nákladné, lepší a pružnější řešení je ISDN (je-li k dispozici)

Režimy spojení

Microcom Network Protocol (MNP)

Na 2. vrstvě OSI, určuje formát dat (asynchronní data shlukuje do paketů podobných HDLC), způsob korekce chyb, komprese

Rozdělení do očíslovaných tříd (1-10), každá třída umí komunikovat s protokolem tříd nižších; při navazování spojení se partneři dohadují na nejvyšší třídě MNP, kterou oba podporují

AT Commands

Průmyslový standard (pův. firma Hayes), základní sada podporována většinou výrobců, jednotlivé modely modemů mohou mít rozašířené sady příkazů.

Režimy modemu:

Modem po inicializaci v command mode, po navázání spojení (iniciováno příkazem) přechází do connect mode. Přechod zpět při detekci rychle následující trojice znaků +++. Spojení však zůstává navázáno, příkazem ATO možný přechod zpět do connect mode.

Obecný formát AT příkazu:

Příkazy začínají 'AT' => možnost autodetekce přenosové rychlosti na rozhraní DTE-DCE

ATxxx, povoleny mezery, končí CR (volitelně smí následovat LF)

Příkazy lze řetězit (např AT X3 &L0 namísto dvojice ATX3, AT&L0)

Příkaz A/ opakuje poslední příkaz (neukončuje se CR)

Odpovědi modemu (result codes)

Textový a číselný režim, lze přepínat
Na příkazy: OK,ERROR
Po pokusu o navázání spojení: CONNECT [xxxx [/REL]], BUSY, NO ANSWER, NO CARRIER, NO DIALTONE
Jindy: RING

Typické sekvence příkazů


	      |	  přijímač:			vysílač
--------------------------------------------------------------------------------------
 PSTN:	      |	ATS0=1			ATX3
	      |				ATDP číslo
	      |		přenos dat (obousměrný)
	      |		+++
	      |		další AT příkazy
	      |		ATO
	      |		+++
	      |		pokračování  v přenosu dat
	      |		ATH
	      |			
leased line   |	ATA			ATD
 	     	   další sled jako u PSTN linky


Příkazy ke zřizování (vytáčení čísla) a řízení spojení

ATD [modifier] číslo - vytočení čísla a pokus o navázání spojení. Jestliže je spojení navázáno, odpoví modem informací o přenosové rychlosti a režimu spojení a přejde do connect mode. Číslo smí obsahovat symboly 0-9, příp. pak #,*,A-D.
Významné modifikátory:
 P,T - explicitní určení pulsní, resp. tónové volby
 /n - vytočit jedno z dříve uschovaných čísel (z pozice n)
 S -  vytočit první z dříve uschovaných čísel (jako ATD/1)
 L - znovuvytočení posledně použitého čísla
 N<n> (za číslem) - pokud se spojení nezdaří, zavolá na předem uložené číslo na pozici n
 ; (za číslem) - po ustavení spojení přechod do command mode

Mezi číslice je možné vkládat tyto znaky:
 ,  - pauza při vytáčení. Počká po dobu stanovenou registrem S8
 W - před vytočením další číslice čeká na oznamovací tón (dialtone) - max. po dobu S7

ATH - zavěšení (hangup), ukončí spojení

ATP, ATT - nastaví pulsní/tónovou volbu (používá se, pokud příkaz ATD volbu explicitně nestanoví)

AT&P<n> - nastaví interval puls/mezera pro puslní volbu(make/break ratio): 0=USA, 1=Evropa

+++ Po navázání spojení zajistí sekvence třech rychle následujících znak '+' přechod do command mode.

ATO - přechod z command mode do connect mode (bylo-li dříve navázáno spojení a proveden přechod do command mode)

Zobrazování informací na terminál (v command mode)

ATE<1|0> - zapne/vypne echo

ATI<n> - výpis identifikačních informací úrovně <n> o modemu (úrovně nestandardizovány)

AT\S - výpis okamžitého stavu modemu. Vypisuje různá nastavení, formát volný

ATQ<1|0>- zapne/vypne 'quiet mode', kdy modem neposílá odpovědi na příkazy (neumí-li je DTE interpretovat)

ATV<n>- výběr formy result kódů: slovní/číselné

AT%R - výpis hodnot S registrů

Příkazy pro uschovávání/obnovení parametrů modemu

ATZ - reset modemu. Zruší spojení, provede self-test, přečte nastavení DIP switch, přechod do command mode

AT&F - obnovení firemního předdefinovaného nastavení z EPROM (restore factory defaults)

AT&W - uloží nastavení (S-registry) do EEPROM

Příkazy pro práci se seznamem často používaných čísel

AT \P<n> <číslo> - uložení telefonního čísla <číslo> do seznamu na pozici n

AT \F - výpis seznamu uložených čísel

AT&Z <číslo> - uloží číslo na první pozici seznamu čísel

Příkazy pro nastavení významných provozních parametrů

AT\G<n> - povolení (1)/zákaz(0) XON/XOFF flow control na lince modem-modem

AT\J - povolení přizpůsobování rychlosti DTE rychlosti linky

AT\Q<n> - stanovení typu flow control pro rozhraní DTE-DCE (0=žádné, 1=XON/XOFF, 2=hardwarové jednosměrné, 3=hardwarové obousměrné)

ATX<n> - určuje, jak se má modem chovat při detekci různých signálů generovaných ústřednou (oznamovací, obsazovací tón). Důležité v připadě provozu na síti, která generuje jiné tóny, než modem předpokládá (např. JTS ČR)

 0 - ignoruje dialtone a busytone, při spojení vrací řetězec 'CONNECT'
 1 - ignoruje dialtone a busytone, při spojení vrací číselný kód
 2 - ignoruje busytone, pokud do 5s nedetekuje oznamovací tón, posílá řetězec 'NO DIALTONE'
 3 - ignoruje dialtone, posílá řetězec 'BUSY' při detekci obsazovacího tónu
 4 - pokud do 5s nedetekuje oznamovací tón, posílá řetězec 'NO DIALTONE', 
       posílá řetězec 'BUSY' při detekci obsazovacího tónu

ATM<n> - řízení chování vestavěného reproduktoru: 0-off, 1-on until carrier, 2-on, 3-on while dialing and until carrier. Zapnutí reproduktoru umožňuje akusticky sledovat průběh navazování spojení.

AT\T<n> - nastaví inactivity timer, tj. časovač, který po zadané době neaktivity (v minutách, od přenosu posledního znaku) automaticky zruší spojení

Příkazy pro řízení chování a nastavení stavu modemových signálů

AT\D - řízení stavu DSR,CTS

AT&D - zacházení s DTR: (0=Zapnuto, 1= při detekci sestupné hrany přechod do command mode, 2=při detekci sestupné hrany rozpojí obvod (off hook), 3=při detekci sestupné hrany resetuje modem)

Dále příkazy pro řízení chování signálů RI, CD, atd.

Příkazy pro komunikaci na pronajaté lince (leased line)

AT&L<n> - nastaví režim pronajaté(n=1)nebo komutované (n=0) linky

ATA - nastaví modem do režimu očekávání spojení. Na spojení čeká po dobu S7.

ATD - naváže spojení s modemem ma druhém konci pronajaté linky (tomu byl předtím zadán příkaz ATA). Všimněme si, že se zde neuvádí telefonní číslo.

Příkazy MNP

AT\N<n> - nastavení režimu modemu: 0=normal, 1=direct, 2=reliable, 3=auto reliable

AT\A<n> - nastavení max. délky bloku dat (0-3: 64,128,192,256 B)

AT\L<n> - MNP mode: 0=stream (interaktivní terminálové aplikace), 1=block (přenos souborů)

Příkazy pro zřízení/přijetí reliable link spojení, pokus o dohodu reliable link během normal/direct spojení, zrušení reliable link a přepnutí do normal mode.

Příkazy pro nastavení způsobu řízení toku dat

AT\Q - stanovení typu flow control pro sériový port (XON/XOFF, hardwarově jednosměrně a obousměrně, žádný )

AT\G - povolení/zákaz XON-XOFF na lince modem-modem

Příkazy pro ovládání synchronního módu

Diagnostické příkazy

- self test, lokální analogová/digitálná smyčka (loopback), vzdálená analogová smyčka

S registry

Obsahují hodnoty systémových nastavení. Jsou očíslovány, počínaje nulou, jejich množství závislé na modelu modemu, zde uvedeno jen několik nejvýznamnějších - standardně implementovaná sada. Registry obsahují buď číselné hodnoty, nebo bitově orientované množiny příznaků. Modem modifikuje obsahy registrů jako reakci na různé příkazy nebo lze hodnoty nastavovat (a číst) přímo pomocí zvláštních příkazů. Jestliže existuje příkaz, jehož provedením se modifikuje hodnota některého S registru, není rozdílu mezi tím, zda byl proveden tento příkaz, nebo byl příslušný S registr modifikován přímo zápisem odpovídající hodnoty.

Nastavení hodnoty S registru: ATS<n>=&lhodnota>

Přečtení hodnoty S registru: ATS<n>?
(modem hodnotu vrátí jako dekadické číslo vyjádřené v textové podobě, tedy složené z ASCII číslic)

Významné S-registry

Řada registrů dále obsahuje bitové masky rozličných příznaků, zpravidla nastavitelných odpovídajícími příkazy. Jsou zde rovněž časové parametry chování modemových signálů.

Poznámky pro použití na JTS ČR

Jelikož některé tóny generované ústřednami v ČR se liší od amerických standardů, které zpravidla modemy očekávají, je nezbytné sledování některých z nich vypnout. Zejména se používá příkaz ATX3, který stanoví, že modem nemá před vytáčením čísla čekat na oznamovací tón (nedočkal by se jej, je odlišný).

Užitečný může být rovněž příkaz ATP, který stanoví default volbu jako pulsní.

Synchronní vs. asynchronní režim modemů

Vnitřní protokol modem-modem může být (a zpravidla je) synchronní, navenek však modem běžně komunikuje asynchronním sériovým rozhraním. Pokud má být celý okruh synchronní (zpravidla na pevných linkách), musí být DTE vybaveno zvláštním synchronním sériovým rozhraním (použití spíše pro propojení směrovačů pevným okruhem).

V synchronním módu se neuplatňují žádné AT příkazy (stále connect mode). Přepnutí do synchronního režimu buď AT příkazem nebo při nakonfigurování automaticky po zapnutí. Modem může být nakonfigurován, aby po zapnutí vytočil předdefinované číslo a poté přešel do synchronního režimu, nebo číslo vytáčí operátor.

Manuální obvládání modemů

Režimy voice/data, originate/answer

Indikátory: DR-Data Receive, DT-Data Transmit, Off hook, Auto Answer, High Speed, Synchronní režim, DTR,CTS,RTS, CD

Modem Racks

Standardy CCITT série V pro modemy


Legenda:  FDX=Full duplex, HDX=Half duplex

V.21: 300bps, FDX, sync/async,  FSK
V.22: 600,1200 bps, FDX, sync/async,  PSK
V.22bis: 1200,2400 bps, FDX, sync/async,  QAM
V.23: 600,1200 bps, HDX, sync/async,  FSK
V.26: 2400 bps, FDX, sync,  PSK
V.26bis: 1200,2400 bps, HDX, sync,  PSK
V.26ter: 1200,2400 bps, FDX, sync/async,  PSK
V.27: 4800 bps, FDX,HDX, sync,  PSK
V.27bis: 2400,4800 bps, FDX,HDX, sync,  PSK
V.27ter: 2400,4800 bps, HDX, sync,  PSK
V.29: 4800 (PSK),7200(PSK),9600(QAM) bps, FDX,HDX, sync
V.32: 9600(QAM,TCM), 4800(QAM) bps, FDX, sync
V.32bis: 7200,9600,12000,14400(TCM) bps
V.32ter: 19200 bps
V.33: 14400,12000  bps
V.34 (V.fast): 2400,4800,7200,9600,12000,14400,16800,19200,21600,24000,26400,28800 bps
V.34bis: 33600,31200 bps
V.35: 48000, FDX, sync. AM-FSK