Modem RTTY Arduino TinyFSK - Instruções PT-BR

2

Click here to load reader

Transcript of Modem RTTY Arduino TinyFSK - Instruções PT-BR

Page 1: Modem RTTY Arduino TinyFSK - Instruções PT-BR

Plataforma TinyFSK KeyerModem RTTY po Andy Flowers – Tradução PU5SSR (www.cralon.qsl.br/pu5ssr)

TinyFSK é um programa (sketch) para a plataforma Arduino para manipulação RTTY logicamente, através das entradas de PPF e FSK de um transceptor. É um modem somente de transmissão projetado para integrar softwares de LOGs de uso, concurso e Dxpedition [além da possibilidade de novos desenvolvimentos sobre estaplataforma]. Ele também pode ser usado para fazer transmissão a partir de um teclado usando qualquer softwaredo terminal que faça comunicação serial direta (por exemplo, Hiperterminal).

Minha motivação principal era construir uma interface de digitação FSK lógica simples e reprodutível para Contests RTTY. Eu estava infeliz em usar o "bit banged" 45 baud FSK disponível com o plugin EXTFSK. Para um UART "real", capaz de 45 de transmissão ainda obrigava-me a passar pelo [software] MMTTY para manipular o PTT e gestão do buffer por que o [software] N1MM não faz por si só essas coisas. Então, eu fui "de volta para o futuro" para criar um modem muito simples só de TX que é uma reminiscência do multimodo TNC do da década de 1990. Isso coloca toda a funcionalidade necessária em um microprocessador dedicado.

As principais características são:

Diminuir a carga de processamento do computador, transferindo tal tarefa para um processador dedicado independente (no caso do Arduino, também de baixo custo).

Proporcionar 45, 50 e 75 de transmissão RTTY sobre hardware barato (1,5 bits de paragem).

Eliminar a necessidade de mais um software intermediário (como EXTFSK) para a transmissão.

Tornar o RX completamente independente do TX.

Método KISS de configuração: fornecer uma interface simples, com o mínimo necessário de configuração.

Fornecer um projeto microprocessado simples que pode ser estendido e usado como parte de um projeto de aprendizagem ou etc, também podendo receber ideias e melhoradas ... tudo no espírito de radioamador. No seu Arduino deste projeto, ainda sobrará muitas portas (analógicas e digitais) para expansão da idéia!

Hardware:

O software deve ser executado em qualquer placa Arduino. O código fonte compilado é um pouco mais 6 KB. Tenho usado a placa Arduino Nano, uma vez que tem um conector USB que é universalmente aceito na maioriados sistemas operacionais e não terá trabalho em procurar drivers e instalá-los. O esquema mínimo abaixo mostra suas conexões em uma placa Arduino Nano com os pinos utilizados no código-fonte, mas é claro que você pode modificá-los e recompilar como quiser. (O pino D13 no Nano tem um LED para fornecer algum sinal visual durante a transmissão).

Page 2: Modem RTTY Arduino TinyFSK - Instruções PT-BR

Esta implementação usa apenas dois transistores para comutação na configuração de coletor aberto. Assim, um sinal lógico alto (5V na maioria das placas Arduino) em D11 irá efetivamente aterrar a linha de PTT, e um baixológico irá desconectá-lo. A saída FSK funciona da mesma maneira, porém você tem a opção de inverter esta configuração de polaridade desse pino dependendo dos requisitos do seu tranceptor. A alimentação é fornecida pelo USB. Isso realmente é tudo que existe para a interface: uma placa Arduino (ou compatível), dois transistores, e dois resistores.

Configuração

A interface serial está definido para 9600-8-N-1, portanto, qualquer software terminal deve usar essas configurações. Uma vez conectado à porta, você pode entrar no modo de configuração enviando o caracter (~) "Tilda". Isto fará pedir-lhe retorno para opções de configuração. Os comandos válidos são:

0 – Define a polaridade FSK como ALTA

1 – Define a polaridade FSK como BAIXA

4 – Define 45 baud de transmissão

5 – Define 50 baud de transmissão

7 – Define 75 baud de transmissão

? - Mostra a configuração atual

Ao informar qualquer uma dessas opções, irá exibir as novas configurações de polaridade e velocidade no console e, em seguida, voltar ao modo "normal". Portanto, para definir o dispositivo para 75 Bauds de transmissão, tudo que você deve fazer é digitar "~ 7". Para configurá-lo de volta para 45 Bauds de transmissão: "~ 4". As configurações são imediatamente escritas no EEPROM de modo que elas vão continuar quando o Arduino for desligado e religado. Você só terá que configurar o dispositivo uma vez para o rádio, (ao menos quevocê está alternando entre 45 e 75 de transmissão). O padrão é de 45 Bauds de transmissão (“4”) e polaridade BAIXA (“1”).

Operação

Qualquer texto ASCII enviado através da porta serial é convertido para Baudot e enviados para o rádio. Os caracteres minúsculos são convertidos em maiúsculos, e qualquer caracter que não tem um substituto razoável para os conjuntos de caracteres ITA2/norte-americanos será convertido em um "?". Qualquer texto que chegue antes que o TX seja acionado (através do código específico abaixo) serão armazenados na memória intermediaria para serem enviados quando o comando de transmissão é recebido. Isto dá um buffer de digitaçãoantecipada. Quando os caracteres são enviados, eles retornam de volta para o terminal para que você possa monitorar o progresso da transmissão.

Há três comandos que podem ser enviados através da interface serial para induzir o transmissor. O comando TX_ON ou “[“, é usado para ligar o TX e então qualquer texto que está no buffer será enviado. O comando TX_END ou “]” desativa o TX do rádio. Sendo assim dá pra enviar RTTY com um "terminal simples" “monolinha” com as configurações em 9600-8-N-1 (exemplo: [mensagem para enviar]). Por fim há o comando TX_ABORT ou '\' (barra invertida) que vai parar imediatamente a transmissão (se estiver ligada) e apagar o texto restante na memória intermédia

Após o PTT ser solto o "cmd:" é retornado para o terminal em uma nova linha. Isto é necessário para que o sinal N1MM "CNC" dê continuidade, mas de outro modo pode ser ignorada. Os únicos comandos que podem ser emitidos envolvem as opções de configuração acima.