Escolar Documentos
Profissional Documentos
Cultura Documentos
por
Valter Roesler
e-mail: roesler@exatas.unisinos.br
5 BIBLIOGRAFIA ........................................................................................................................ 26
3
RESUMO
O presente artigo visa explicar um pouco do funcionamento de um PABX digital,
enfocando principalmente o Digitop 192, que foi o PABX desenvolvido através de um
convênio entre a Unisinos e a Meta Telecomunicações.
Serão analisadas os principais componentes de um PABX, como a placa base, as
placas ramal, placas tronco e o firmware. Também serão abordados os detalhes de
funcionamento de um sistema digital em comparação com um sistema analógico, as
vantagens e desvantagens da transmissão digital e o funcionamento da modulação
PCM, que é a base para a transmissão digital de voz.
No desenvolvimento do produto, foram enfrentados diversos problemas que
tiveram que ser solucionados, como testes para detectar erros, ferramentas de
depuração e log do sistema. Esses assuntos também serão analisados no decorrer do
artigo.
Um PABX de médio porte precisa ser fácil de usar, portanto, será visto a
interface com o PC, feita exclusivamente para facilitar o uso pelo operador.
Um ponto que será abordado é a configuração do sistema, mostrando as diversas
possibilidades que o usuário tem para utilização do PABX. Além disso, será visto que o
Digitop 192 pode ser configurado remotamente, através de modem, podendo inclusive
enviar bilhetagem a locais remotos, a fim de terceirizar a administração do sistema.
1 INTRODUÇÃO
Este trabalho tem como objetivo explicar o desenvolvimento de um PABX digital,
mais especificamente o Digitop 192, feito através de um convênio entre a Unisinos e a
Meta Telecomunicações.
O projeto foi desenvolvido por uma equipe de Engenheiros e Programadores das
seguintes empresas:
• Meta Telecomunicações: responsável pelo desenvolvimento do
projeto de hardware, produção e venda dos equipamentos;
• UNISINOS: responsável pelo desenvolvimento do firmware para o
processador 80186 e testes de produção;
• DataVision: responsável pelo desenvolvimento do software para o
PC, utilizado principalmente pelos ramais atendedores do PABX.
1.1 O Convênio
Para o desenvolvimento do firmware, foi estabelecido um convênio de pesquisa
entre a Meta Telecomunicações e o Centro de Ciências Exatas da UNISINOS em
dezembro de 1995, sendo que dois programadores com dedicação integral foram
designados para fazer o projeto.
Para maiores detalhes sobre as cláusulas do convênio, pode-se entrar em contato
com a coordenação do curso de Informática (fone 590-3333 ramal 1603).
4
1.2 A Equipe
A seguir será vista a equipe responsável pelo projeto nas respectivas empresas.
1.2.2 UNISINOS
Nome Função
Aretê Porciúncula de Ávila Coordenadora do Projeto na Unisinos
César Augusto Missio Marcon Programador - Pesquisador
Valter Roesler Programador - Pesquisador
1.2.3 DataVision
Nome Função
Ricardo Moraes Giffoni Programador
Placa Ramal
Placa Tronco
PABX
Troncos
Atendedor
Ramais
1
Um tronco é uma linha externa para a central pública de telefonia
6
PABX através de um PC, onde as operações são bastante facilitadas. Esta interface será
descrita no item 2.5.
Existem inúmeras configurações que podem ser efetuadas no Digitop 192, que
estão detalhadas no item 2.4.
A seguir serão analisados com maiores detalhes o funcionamento das placas
internas ao PABX, ou seja, as placas base, ramal e tronco. Em seguida, será dada uma
introdução à tecnologia digital. Finalmente, as configurações do PABX Digitop 192
serão vistas com detalhes.
Cada placa ramal tem capacidade para 8 ramais analógicos, sejam do tipo
multifreqüencial (MF) ou decádicos. Já as placas tronco tem capacidade para 8 troncos
ou 4 troncos, dependendo da necessidade do usuário.
Outra função desempenhada pela placa ramal é a geração de ring para os
telefones, sob controle do processador 80186. Além disso, é na placa ramal que estão os
sensores de gancho dos ramais, que ficam monitorando se o ramal está com o fone no
gancho ou fora do gancho.
Outra função desempenhada pela placa tronco é a detecção de ring externo, ou
seja, quando chega uma ligação ao PABX e esta deve ser avisada para o ramal
atendedor. Portanto, os sensores de chegada de ligação externa encontram-se na placa
tronco.
2.5 O Software no PC
Existem até 11 atendedores que podem possuir um PC para agilizar o processo de
discagem e gerência do PABX. A comunicação entre PC e PABX é feita via serial, a
19200 bps, como mostra a figura 4.
10
PC1 (executivo)
19200 bps
PC10 (telefonista 1)
PC11 (telefonista 2)
Como existe apenas uma serial para os 11 atendedores, visto claramente na figura
acima, é necessário um protocolo para evitar conflitos na linha, ou seja, vários
atendedores conversando ao mesmo tempo. O protocolo escolhido para evitar esse tipo
de conflito é o “Poll-Select”, onde o PABX controla qual atendedor vai falar naquele
instante.
Assim, quando o PABX envia POLL a um determinado PC (por exemplo, o
número 7), está na verdade dizendo que todos os outros devem permanecer quietos
enquanto o PC número 7 envia seus comandos. Quando o número 7 enviou o comando
ou disse que não tinha nada a transmitir, o PABX passa a perguntar (fazer POLL) a
outro atendedor PC, como por exemplo o número 8.
Supondo que o atendedor número 7 tinha solicitação de comando (por exemplo,
pedido de data e hora). Quando o PABX tem a resposta do número 7, ele envia
SELECT ao atendedor número 7, juntamente com os dados (no caso data e hora do
PABX).
Esse processo de POLL e SELECT se repete indefinidamente para os atendedores
ativos, e os conflitos são evitados. Os principais comandos (mais usados) entre PC e
PABX estão listados na tabela a seguir.
Comando Descrição
RxPedDumpEEPROM Pedido de dump de EEPROM (PC vai ler EEPROM)
TxDumpEEPROM Dump da programação da EEPROM do PABX
RxProgEEPROM PABX lê programações da EEPROM
A janela de troncos mostra todos ou uma parte dos troncos ativos do PABX.
Quando o ícone está amarelo, indica que está chegando uma ligação. Quando o ícone
está vermelho, indica que o tronco está ocupado, conversando com alguém. Para saber
quem, basta ir com o mouse e dar um click com o botão da direita no ícone.
A janela de ramais mostra o estado dos ramais. Da mesma forma que os troncos, o
amarelo indica que o ramal está sendo chamado por alguém. O vermelho indica que o
ramal está conversando com alguém. Da mesma forma que os troncos, para saber quem
está chamando o ramal ou com quem ele está conversando, basta dar um click com o
botão da direita no ícone.
12
A janela Fila indica os ramais que estão na espera do atendedor cuja tela
corresponde à figura 5. A janela Grupo facilita na hora do atendedor chamar ou
transferir a ligação para determinado grupo do PABX. Vale lembrar que na fila de cada
atendedor pode ter tanto ramais como troncos, e no Digitop 192 podem ser configurados
até 15 grupos de ramais, conforme visto no item 2.4.
Caso o atendedor queira transferir uma ligação, basta clicar no ícone
correspondente e arrastar até o destino. Caso queira pegar um tronco ou ligar para um
ramal, basta clicar no tronco ou no ramal desejado.
Em termos de programação via PC, é possível configurar o PABX de diversas
formas. Algumas configurações podem ser vistas na figura 6.
Na figura pode-se ver a quantidade de testes que são efetuados. Eles podem ser
feitos tanto de forma manual, ou seja, escolhendo o teste que se quer efetuar, ou de
forma automática, onde o PABX vai fazendo os testes até encontrar algum problema,
quando então reporta ao usuário.
Os testes significam o seguinte:
• Eprom: executa o checksum na Eprom para ver se ela está sem erros.
O checksum é um byte especial colocado no final da Eprom, fazendo
com que a soma de todos os bytes da Eprom dê zero. Caso tenha algum
15
erro, tem uma grande probabilidade do resultado não ser zero, fazendo
com que o erro seja detectado e avisado para o usuário;
• RAM: Escreve e lê diversos padrões em RAM a fim de garantir sua
integridade. Dados que não poderiam ser apagados são salvos e
copiados novamente após o teste;
• E2prom: Confirma se a EEPROM do PABX está correta, lendo e
escrevendo um padrão em determinado byte;
• Compara as Matrizes: Verifica se o PABX está reconhecendo
adequadamente as matrizes que estão presentes no hardware.
• Matriz: Verifica as memórias das matrizes. O teste verifica as
memórias alta e baixa de cada um dos trinta e dois slots de todas as
streams das três matrizes.
• DSP - Funcional: Verifica se o DSP está se comunicando
adequadamente com o 80186, além de testar os algoritmos de geração
e detecção de MF, que serão utilizados nos demais testes. O teste
consiste em pedir ao DSP para gerar um dígito MF, conectando esse
slot novamente ao DSP a fim de que o dígito seja detectado.
• DSP - Memórias: Faz teste para garantir que a memória
compartilhada entre o PABX e o DSP esteja correta. Para isso, solicita
que o DSP faça esse teste, e espera uma resposta dele dizendo se as
memórias estão boas ou não;
• Compara as placas: Compara as placas detectadas através de
hardware com a configuração feita por software, procurando identificar
discordâncias que podem ser devido a um mal funcionamento de
alguma placa;
• CODEC - Digital: Verifica a parte digital do circuito dos codecs,
colocando em loop digital o CI de CODEC, escrevendo um valor na
matriz e lendo da matriz, conferindo se está OK;
• CODEC - Analógico: Verifica a parte analógica do circuito dos
codecs, colocando-os em loop analógico, gerando um padrão e
reconhecendo esse padrão novamente, para ver se está OK;
• Sensores de placas: Verifica os sensores de gancho das placas ramais
e os opto-acopladores das placas tronco;
• Ring: Envia ring a determinado ramal previamente definido. O
operador do teste deve avisar se tocou ou não o ring. O objetivo desse
teste é garantir que o ring esteja funcionando;
• Serial Opcional: Executa comunicação via serial, testando se o CI de
serial está presente. Para executar esse teste, é necessário colocar um
loop na serial;
• Relógio de tempo real: Verifica se o relógio de tempo real está
funcionando corretamente, ou seja, vê se ele não está parado e se
devolve uma data correta;
16
telefonia, que é o que utilizamos atualmente em nossas ligações. Isso foi feito para
conseguir mais ligações entre centrais públicas utilizando o mesmo meio físico, que é o
princípio da multiplexação2, visto através da figura 9.
Limita em 4KHz
CENTRAL CENTRAL
PÚBLICA PÚBLICA
Vários canais de 4KHz
multiplexados na mesma linha
2
Multiplexar é utilizar a mesma linha física para transmitir vários canais
18
Amostragem Filtragem
Quantização Decodificação
Codificação
3.1.1 Amostragem
A amostragem tem por objetivo obter parcelas do sinal de informação, pois
através dessas parcelas é que o sinal será digitalizado e, posteriormente, recuperado.
Para fazer a amostragem, utiliza-se um circuito de amostragem, mostrado
esquematicamente na figura 11.
Sinal de Informação
Sinal Amostrado
Sinal de Amostragem
do sistema telefônico é pouco maior de 3000 Hz, o resto é banda de guarda. Maiores
detalhes podem ser conseguidos em /MOE 95/, e uma descrição da análise de Fourier
em sistemas de comunicação, provando o teorema de Nyquist sobre amostragem, pode
ser conseguida em /LAT 79/.
3.1.2 Quantização
A amostragem está relacionada ao eixo X do sinal de informação, enquanto que a
quantização está relacionada ao eixo Y. A idéia da quantização é aproximar uma
amostra a um nível de referência, a fim de que seja codificado.
A grosso modo, poderia se dizer que a quantização iria dividir a faixa de sinal
(eixo Y) em níveis. A cada nível corresponderia uma seqüência de bits, que se
transformariam no sinal digital de saída, como mostra a figura 12.
111
110
101
100
011
010
001
000
Sinal Amostrado
Assim, como sugere a figura, cada amostra corresponde a um nível de tensão, que
pode ser traduzido em bits de informação, gerando um sinal digital. Na figura, existem 8
níveis, ou seja, cada amostra gera 3 bits na saída. Nos CODECS comerciais, são 13 bits,
ou 8.192 níveis, entretanto, é feita uma compressão do sinal, fazendo com que a saída
seja em 8 bits.
Esses 256 níveis, ou 8 bits, seriam sempre suficientes caso o ser humano utilizasse
sempre a mesma intensidade de voz. Entretanto, o ser humano fala baixinho em alguns
momentos e muito alto em outros, provocando uma variação de intensidade de voz de
até 100 vezes. E seu interlocutor tem que escutá-lo em todas as circunstâncias. Assim,
ficaria difícil utilizar uma amostragem linear, como mostra a figura 12. Observe que a
figura 8 é derivada da figura 11.
Existem algumas soluções para o problema. Todas elas se baseiam em fazer uma
alteração do sinal original do usuário seguindo uma determinada lei, a fim de que possa
ser recuperado na decodificação. Quando a intensidade de sinal é baixa (a pessoa fala
baixinho), é feita uma amplificação nesse sinal, segundo uma lei de formação
logarítmica. Conforme a intensidade do sinal aumenta (a pessoa fala mais alto), a
amplificação diminui, provocando uma equalização no nível de sinal. Isso permite que,
20
de 13 bits de quantificação inicial, utilize-se 8 bits para gerar a palavra digital, conforme
mostra a figura 13.
Vs (Sinal de Saída)
Conversor
Sinal de Saída Palavra Digital
Sinal de Entrada Analógico /
comprimido de 8 bits
Digital
Ve (Sinal de Entrada)
A lei de formação utilizada nos Estados Unidos e Japão é a lei µ . Já a maioria dos
países da Europa e Brasil utilizam a lei A, que foi definida pelo ITU-T (International
Telecommunications Union) e é utilizada nos enlaces internacionais.
Resumindo, o objetivo principal das leis A e µ é transformar o código linear de 13
bits obtido pela codificação PCM em 8 bits e vice-versa.
3.1.3 Codificação
Após a etapa de quantização, o sinal está pronto para ser codificado em 256 níveis
(8 bits), pois já foi feita a equalização do sinal através da lei de formação adequada.
Ao código binário de 8 bits gerado, denomina-se palavra PCM ou código PCM.
Esse código é simétrico, possuindo uma parte positiva e uma negativa, dado pelo bit
mais significativo. Os outros bits são utilizados para mostrar a magnitude do sinal a
partir do nível zero.
Não serão analisados aqui neste documento os detalhes das leis A e µ para
obtenção do sinal codificado. Detalhes podem ser obtidos em /MOE 95/.
• Multinível.
Internamente a um PABX, a principal etapa é a comutação digital, conseguida
através da matriz digital.
Figura 15. Matriz digital, com suas Linhas de Multiplexação Temporal (LMT)
Assim, pode-se perceber o motivo pelo qual o CODEC é colocado na placa ramal
e tronco: para enviar e receber o sinal de forma digital para a matriz. No exemplo de
conexão à matriz, visto no item 3.2.2, a conexão aos diversos elementos do PABX é
feito da seguinte forma:
• TOM: gerado pelo DSP de forma digital. Assim, quando o PABX
quer conectar o ramal 207 com tom interno, conecta ele ao slot de tom
gerado pelo DSP por 950ms (ramal ouve tom); aí desconecta do slot de
tom por 50ms, e assim sucessivamente. A placa ramal recebe uma
seqüência de bits (que significam tom de 425Hz) e passa para
25
4 AGRADECIMENTOS
Gostaria de agradecer principalmente às pessoas que trabalharam mais
diretamente comigo durante o desenvolvimento do produto, ou seja, o Paulo Sá e o
Odone, da Meta, e o César Marcon, parceiro no desenvolvimento do firmware desse
produto.
5 BIBLIOGRAFIA
/LAT 79/ Lathi, B. P.. Sistemas de Comunicação. Ed. Guanabara Dois. 1979.401p.
/MOE 95/ Moecke, Marcos. Curso de Telefonia Digital - Modulação por Código
de Pulso. Escola Técnica Federal de Santa Catarina São José. 1995. 23p.
/MOE 95a/ Moecke, Marcos. Curso de Telefonia Digital - Multiplexação por
Divisão de Tempo e Transmissão Digital. Escola Técnica Federal de
Santa Catarina São José. 1995. 25p.
/ODO 97/ Odone, Morais Junior. Manual Técnico do Digitop 192. Meta
Telecomunicações. 1997. 17p.