Módulo RF U-BEE

Propaganda
____________________________________________________________________________
Módulo RF U-BEE
Protocolo IEEE 802.15.4
REV 02
Fractum Indústria e Comércio de Equipamentos Eletrônicos LTDA - Av. Antônio Américo Junqueira 335 Pôr
do Sol - Santa Rita do Sapucaí-MG - CEP 37540-000 - TEL: 55 35 3471 0019
Site: www.fractumrf.com - Email: [email protected]
____________________________________________________________________________________________________________________
- 1 - Rev01
____________________________________________________________________________
1-MÓDULO U-BEE
O modulo de RF U-Bee foi desenvolvido para trabalhar sob a especificação IEE 802.15.4
atendendo às necessidades de baixo custo, baixo consumo de energia, e monitoramento de sensores
em redes sem fio. O módulo requer mínimo consumo para operação e oferece comunicação e troca
de dados entre dispositivos de forma segura. O U-Bee trabalha na banda de freqüência ISM 2,4GHz.
1.1-CARACTERÍSTICAS ESPECIAIS
Módulo RF
Alcance Indoor/Centros urbanos: até 70m (Antena Wipe)
Alcance Outdoor Visada Direta: até 150m (Antena Wipe)
Potência de Transmissão: 1mW (0 dBm)
Sensibilidade de Recepção: -95 dBm
Taxa de Dados: 250 Kbps
Rede e Segurança
Suporta reenvio de mensagens e recebimento de ACKs (Acknowledgements)
DSSS (Direct Sequence Spread Spectrum)
Endereçamento de Fonte/Destino
Comunicações Broadcast e Unicast
Suporta topologias Ponto-a-Ponto, Ponto-a-Multiponto, Peer-to-Peer
Baixo Consumo
Corrente de Transmissão: 33mA
Corrente de Recepção:
28mA
Corrente de Power-Down: < 50 μA
Conversor Analógico-Digital e linhas de I/O
Conversão Analógica para Digital
Pinos de Entradas e Saída Digitais
Transferência de linhas Entrada para Saída (I/O Line Passing)
Facilidade de uso
Simplicidade de montagem
Pequeno formato do módulo
Modo de comandos AT para configuração dos parâmetros do módulo
____________________________________________________________________________________________________________________
- 2 - Rev01
____________________________________________________________________________
Variedade de Comandos
1.2-ESPECIFICAÇÕES
A tabela abaixo mostra as especificações técnicas para o módulo U-Bee:
Desempenho
Indoor/Centros Urbanos - 70m (antena Wipe)
Visada Direta - 150m (antena Wipe)
Potencia máxima de saída de transmissão (Configurável por Software) - 1mW (0 dBm)
Taxa de Dados RF – 250 Kbps
Taxa de Dados Serial (Configurável por Software) - 1200-115200 bps
Sensibilidade Receptor - -95 dBm
Especificações Técnicas
Tensão de Operação – 2.4-3.6V (3.3V típico)
Consumo de corrente (típico):
Modo Sleep – <50 A
Modo TX – 33mA
Modo RX – 28mA
Especificações Gerais
Freqüência de Operação – ISM 2.4GHz
Dimensões – 36.06mm x 24,38mm
0
0
Faixa de temperatura: -40 C a +85 C (Industrial)
Opções de Antena: Monopolo (Wipe), Planar (Mini), SMA Reverso (PRO)
Especificações de Rede (Networking)
____________________________________________________________________________________________________________________
- 3 - Rev01
____________________________________________________________________________
Topologias de Rede – Ponto a ponto, Ponto - multiponto, Peer-to-peer
Canal de Operação Configurável por Software – 16 Canais seqüenciais
Opções de endereçamento – PAN ID, Canal e Endereços
1.3-DESENHO MECÂNICO
A figura abaixo mostra o desenho mecânico para o módulo de RF U-Bee.
Figura 1.01 – Desenho Mecânico U-Bee
____________________________________________________________________________________________________________________
- 4 - Rev01
____________________________________________________________________________
1.4-PINAGEM
A tabela abaixo mostra a pinagem para o módulo U-Bee:
Pino
Nome
Direção
Descrição
1
VCC
-
Alimentação 3,3V
2
DOUT
Saída
Saída de dados da UART
3
DIN
Entrada
Entrada de dados da UART
4
RESET
Entrada
Inicializa módulo (um pulso nível 0 de pelo menos
200ms)
5
DIO9
Entrada/Saída
Entrada/Saída Digital 9
Saída
Saída do PWM 0 / Indicador de Nível RSSI
Saída
Saída do PWM 1 / Indicador de Nível RSSI
6
7
PWM0 /
RSSI
PWM1 /
RSSI
8
CLOCKOUT
Saída
Saída de Clock de 4MHz
9
DIO8
Entrada/Saída
Entrada/Saída Digital 8
10
GND
-
Terra
11
AD3 / DIO3
Entrada/Saída
Entrada Analógica 3 ou Entrada/Saída Digital 3
12
DIO7
Entrada/Saída
Entrada/Saída Digital 7
13
ON / SLEEP
Saída
Indicador de Estado do Módulo
14
VREF
Entrada
Voltagem de Referência para as Entradas A/D
15
AD4 / DIO4
Entrada/Saída
Entrada Analógica 4 ou Entrada/Saída Digital 4
16
AD5 / DIO5
Entrada/Saída
Entrada Analógica 5 ou Entrada/Saída Digital 5
17
DIO6
Entrada/Saída
Entrada Analógica 6 ou Entrada/Saída Digital 6
18
AD2 / DIO2
Entrada/Saída
Entrada Analógica 2 ou Entrada/Saída Digital 2
19
AD1 / DIO1
Entrada/Saída
20
AD0 /DIO0
Entrada/Saída
Indicador de Associação, Entrada Analógica 1 ou
Entrada/Saída Digital 1
Indicador de Associação, Entrada Analógica 0 ou
Entrada/Saída Digital 0
____________________________________________________________________________________________________________________
- 5 - Rev01
____________________________________________________________________________
Montagem:
Conexão mínima: VCC, GND, DIN
O resistor R1 apenas garante que na ausência de conexões seriais o dispositivo tenha
um valor fixo em sua entrada de dados serial. Para configurar o dispositivo não é necessário
retirar o resistor de pull-up (R1). Caso já possua um circuito de comunicação serial conectado
permanentemente ao modulo U-Bee este resistor poderá ser dispensado.
Conexão para atualização de firmware: VCC, GND, DOUT, DIN
Alguns pinos digitais (DIOx) podem ter resistores internos de Pull-up, estes podem ser
habilitados por comando AT (ver comando PR) .
O módulo inclui um resistor de Pull-up de 150K no pino de RESET.
1.5-CARACTERÍSTICAS ELÉTRICAS
Características DC (2.4-3.6Vdc):
Símbolo
VIL
VIH
VOL
VOH
Característica
Condição
Mínimo
Típico
Máximo
Unidade
Tensão de entrada para nível
lógico baixo
Tensão de entrada para nível
lógico alto
Tensão de saída para nível
lógico baixo
Tensão de saída para nível
lógico alto
Todas as entradas
digitais
Todas as entradas
digitais
VSS
-
0.3 *
VDD
V
0.25*VDD +
0.8V
-
VDD
V
IOL=8.5mA VDD=3V
-
-
0.6
V
IOH=-3mA VDD=3V
VDD - 0.7
-
-
V
TX
Corrente Transmissão
VCC=3.3V
-
33
-
mA
RX
Corrente Recepção
VCC=3.3V
-
28
-
mA
PWRDWN
Corrente Power-Down
Parâmetro SM=1
-
< 50
-
A
____________________________________________________________________________________________________________________
- 6 - Rev01
____________________________________________________________________________
Características Conversor Analógico-Digital (2.4-3.6Vdc):
Símbolo
Característica
Condição
Mínimo
Típico
Máximo
Unidade
NR
Resolução
Vref
2V
-
-
10
bits
ET
Erro total
Vref
2V
-
1
±3
LSb
VREFH
Faixa de Tensão de Referência
-
VDD/2
-
VDD + 0.3
V
VAIN
Tensão Analógica de entrada
-
VSS-0.3
-
VDD + 0.3
V
TX
Impedância da fonte de tensão analógica
-
-
-
10
k
2-FUNCIONAMENTO MÓDULO DE RF U-BEE
2.1-COMUNICAÇÃO SERIAL
O módulo U-Bee faz a interface com o dispositivo host através de uma porta serial
assíncrona. Através dela, o módulo pode se comunicar com qualquer dispositivo que seja
compatível com os níveis lógicos e de tensão da UART; ou através de um conversor de
nível para qualquer dispositivo (Exemplo: RS-232 ou interface USB).
2.1.1-FLUXO DE DADOS UART
Dispositivos que possuem interface UART podem se conectar diretamente com os
pinos do módulo RF assim como mostra a figura abaixo:
Figura 2.01 – Diagrama do fluxo de dados da interface UART
Os dados entram na UART através do pino DI (pino 03) como um sinal serial
assíncrono. Quando não houver dado sendo transmitido (idle), o pino deve permanecer
em nível lógico alto. Cada byte de dados consiste em um start bit (baixo), 8 bits de dados
(bit menos significativo primeiro) e um stop bit (alto). A figura a seguir ilustra a
transmissão do caractere “A”:
____________________________________________________________________________________________________________________
- 7 - Rev01
____________________________________________________________________________
Figura 2.02 – Transmissão da letra A (0x41 hex)
A UART executa algumas tarefas necessárias para a comunicação, como
cronometragem e verificação de paridade. Por isso, a comunicação serial exige que as duas
UARTs estejam configuradas igualmente (baud rate, paridade, número de start e stop bits,
e o tamanho da palavra).
2.1.2-MODO TRANSPARENTE
Por padrão, o módulo U-Bee trabalha no Modo Transparente. Quando operando neste
modo, o módulo atua como uma substituição à linha serial, ou seja, todos os dados recebidos
na UART através do pino DI são enfileirados para a transmissão em RF. Quando os a
informação é recebida por RF, o dado é enviado para o pino DO.
Empacotamento de dados seriais
Os dados vindos do pino DI são armazenados no buffer DI até que uma das seguintes
possibilidades cause a transmissão dos dados via RF:
1. Nenhum caractere recebido durante um tempo determinado pelo parâmetro RO*10ms
(Timeout para empacotamento dos dados). Se RO=0, a transmissão ocorre assim que um
caractere é recebido.
2. Se receber o número máximo de caracteres que cabem no buffer DI. (50 caracteres).
3. Se receber o comando CC, com um tempo de guarda definido pelo parâmetro GT, antes e
depois da seqüência de comando (GT + CC + GT). Todos os caracteres armazenados antes
desta seqüência são transmitidos.
Se o módulo não puder transmitir os dados imediatamente (por exemplo, se estiver
recebendo dados via RF) os dados seriais são armazenados no buffer DI. Quando estiver em
condição de transmitir, os dados são empacotados e enviados assim que ocorra um estouro de
tempo pelo parâmetro RO, ou assim que o buffer DI atinja seu limite.
Se o buffer DI completar seu limite, o controle de fluxo por hardware ou software deve
ser feito para que não haja overflow. A versão de Hardware 1.0 do módulo U-Bee não suporta
controle de fluxo.
____________________________________________________________________________________________________________________
- 8 - Rev01
____________________________________________________________________________
2.1.3 - DIAGRAMA INTERNO DO FLUXO DE DADOS
Figura 2.03 – Diagrama interno do fluxo de dados
Data In Buffer (DI Buffer) – Os dados que chegam ao módulo RF através do pino DI
(pino 03) são armazenados no DI Buffer até que possam ser processados.
Para que não haja problemas de Overflow, procure enviar mensagens que tenham
tamanho menor que o do DI Buffer (50 caracteres). Também, faça a interface com uma taxa de
comunicação menor (parâmetro BD, Taxa de Dados da Interface) que a taxa de dados de
saída.
Um fator que pode causar Overflow é o recebimento de dados via RF continuamente.
Os dados seriais vindos do pino DI são armazenados no Buffer DI, porém só poderão ser
processados e transmitidos pelo ar quando o módulo não estiver mais recebendo dados da
rede.
Data Out Buffer (DO Buffer) – Quando os dados são recebidos via RF, os dados são
enviados ao DO Buffer e são enviados ao dispositivo host através do pino de saída DO da
porta serial. Uma vez que o DO Buffer atinge sua capacidade máxima, qualquer outro dado
recebido via RF é perdido.
O que pode causar Overflow no DO Buffer é quando a taxa de dados via RF é maior
que a taxa de dados da interface de saída do módulo, ou seja, o módulo receberá dados vindos
do módulo transmissor mais rápido do que ele pode enviar ao dispositivo host.
____________________________________________________________________________________________________________________
- 9 - Rev01
____________________________________________________________________________
2.2-CONFIGURAÇÃO ADC E DIGITAL I/O
O módulo U-Bee suporta conversão de sinais analógicos para digitais (Módulo ADC) e
Digital I/O Line Passing, que é quando um dispositivo na rede envia informações
correspondentes aos seus pinos de entrada e saída, e o dispositivo receptor interpreta estes
dados ativando os seus pinos de saída de acordo com a informação recebida (ver 2.2.5-I/O
Line Passing). A tabela abaixo mostra cada uma das funcionalidades aplicadas aos pinos do
U-Bee.
Funcionalidade do Pino
AD0 / DIO0 / Indicação
AD1 / DIO1 / Indicação
AD2 / DIO2
AD3 / DIO3 / VREF
AD4 / DIO4
AD5 / DIO5
DIO6
Pino#
20
19
18
11
15
16
17
Comando AT
D0
D1
D2
D3
D4
D5
D6
DIO7
12
D7
DIO8
09
D8
DIO9
05
D9
Para habilitar as funções de DIO e ADC para os pinos:
Pino Desabilitado – Opção número 0
Entrada Analógica – Opção número 2
Entrada Digital – Opção número 3
Saída Digital em Nível Baixo – Opção número 3
Saída Digital em Nível Alto – Opção número 4
(Ex: ATD0 0)
(Ex: ATD0 2)
(Ex: ATD0 3).
(Ex: ATD0 4).
(Ex: ATD0 5).
Os pinos DIO0 e DIO1 podem também ser configurados como indicadores, opção
número 1 (Ex: ATD0 1). O pino DIO0, quando habilitado para indicação, pisca a cada 500ms
indicando conexão estabilizada. O pino DIO1, quando habilitado para indicação, inverte seu
estado a cada mensagem recebida.
2.2.1-FORMATO DO PACOTE DE DADOS I/O
O pacote de dados IO começa com um cabeçalho. Ele possui 2 bytes que indicam o
bitmask das entradas, saídas ou canais analógicos. Para cada pino ativo, o bit correspondente
a ele equivale a 1.
____________________________________________________________________________________________________________________
- 10 Rev01
____________________________________________________________________________
As informações das amostras das entradas vêm em seqüência ao cabeçalho e o
bitmask das entradas é utilizado para determinar como ler os dados de amostras. Os primeiros
2 bytes em seqüência correspondem às amostras das Entradas e Saídas Digitais. Os bytes em
seqüência correspondem às informações dos canais ADC. Para cada canal analógico
habilitado, são enviados dois bytes contendo os 10 bits de informação para o canal.
Exemplo prático: caso esteja habilitado 1 canal analógico (AD0) e duas entradas
digitais (DIO 2, e DIO 5). A entrada DIO2=‟1‟, a entrada DIO5=‟0‟, a entrada analógica
AD0=725(d). A seguinte informação será enviada:
(MSB) 0.0.0.0.0.1.0.0
0.0.1.0.0.1.0.0 (LSB)
Cabeçalho(Bitmask)
1º Byte
Cabeçalho(Bitmask)
2º Byte
(MSB) 0.0.0.0.0.0.1.0
Leitura do Canal AD0
5º Byte
(MSB)
0.0.0.0.0.0.0.0
Linha de dados
DIO 3º Byte
0.0.0.0.0.1.0.0 (LSB)
Linha de dados
DIO 4º Byte
1.1.0.1.0.1.0.1 (LSB)
Leitura do Canal AD0
6º Byte
2.2.2-MODO SLEEP
Quando o módulo de RF sai do modo sleep, é feito uma amostra das entradas e saídas
habilitadas, tanto para as linhas digitais quanto para os canais analógicos. Isto permite que
amostras sejam feitas de acordo com o período cíclico de sleep, sendo ele através do Sleep
Periódico (Parâmetro SM = 2 - 3) ou Pino de Sleep (SM = 1). Para executar mais amostras
quando acordado, configure o parâmetro IR.
____________________________________________________________________________________________________________________
- 11 Rev01
____________________________________________________________________________
Para o modo Sleep Periódico: O módulo ficará acordado por tempo definido pelo
parâmetro ST (Tempo antes de Dormir).
Comandos Utilizados: IR (Taxa de Amostragem), SM (Modo Sleep), IC (Detector de
Mudança de Pino).
2.2.3-DETECTOR DE MUDANÇA DE PINO
Quando o Detector de Mudança de Pino é habilitado, utilizando o comando IC, as
linhas digitais DIO 0-9 são monitoradas. Quando uma mudança é detectada em qualquer um
dos pinos, um pacote de RF é enviado com o estado dos pinos digitais atualizados. Qualquer
amostra anterior à detecção é enviada antes da amostra atualizada.
Nota: A detecção de mudança não afeta o pino de sleep wake-up. O pino ON/SLEEP é
o único que acorda o módulo do Pino de Sleep.
Comandos Utilizados: IC (Detector de Mudança de Pino).
O Detector de Mudança de pino é utilizado apenas para os pinos digitais configurados
como entradas ou saídas.
2.2.4-INTERVALO DE TAXA DE AMOSTRAGEM
O Intervalo de Taxa de Amostragem permite que os pinos de ADC e DIO sejam lidos
periodicamente nos módulos que não estiverem configurados para operar no Modo Sleep.
Quando um dos modos de Sleep estiver habilitado e o parâmetro IR for configurado, o módulo
ficará acordado até que o tempo definido pelo par. Quando um pino particular estiver habilitado,
a apropriada taxa de amostragem deve ser escolhida. A maior taxa de amostragem que pode
ser configurada quando usando os canais analógicos é de 1 amostra/ms ou 1KHz. Perceba
que não é possível continuar transmitindo dados quando os parâmetros IR e IT são iguais a
“1”).
Comandos Utilizados: IR (Taxa de Amostragem), SM (Modo Sleep).
2.2.5-I/O LINE PASSING
Linhas virtuais podem ser configuradas entre os módulos U-Bee. Quando um pacote de
RF contendo informações de I/O é recebido, o módulo receptor pode ser configurado para
atualizar as suas saídas habilitadas (PWM e DIO) baseada no dado recebido. Perceba que as
linhas de I/O são mapeadas em pares. Por exemplo: AD0 pode somente atualizar o PWM0 e
DI5 pode atualizar somente o DO5. A configuração padrão é de não ter as saídas atualizadas,
o que resulta no dado de I/O ser enviado através da UART, ver o comando IU (habilitar as
saídas de I/O). Para habilitar a atualização das saídas, o parâmetro IA (Endereço de Entrada
de I/O) deve ser configurado com o endereço do módulo que contém as entradas
correspondentes habilitadas. Isso efetivamente liga as saídas para a entrada de um módulo em
particular. Isso não afeta a capacidade do módulo para receber dados de I/O da linha de outros
módulos - só a sua capacidade de atualização de saídas habilitadas. O parâmetro IA também
pode ser configurado para aceitar dados de I/O para mudanças na saída a partir das
informações de qualquer módulo, definindo o parâmetro IA como 0xFFFF. As saídas dos
módulos podem voltar ao seu estado original através de um TimeOut. Os timers são
configurados usando os comando Tn (Timer de Saída Dn) e PT (Timer de Saída PWM). Os
timers são reiniciados todas as vezes que um pacote válido de I/O (endereço compatível com
IA) é recebido. Os parâmetros IC (Detecção de mudança) e IR (Taxa de Amostragem) podem
ser configurados para manter sua saída no estado ativo se o sistema precisar de mais tempo
do que os timers podem agüentar.
____________________________________________________________________________________________________________________
- 12 Rev01
____________________________________________________________________________
Comandos Utilizados: IA (Endereço de Entrada de I/O), Tn (Timer de Saída Dn), PT
(Timer de Saída PWM), P0 (Configuração do PWM0), P1 (Configuração do PWM1), M0 (Nível
de saída do PWM0), M1 (Nível de saída do PWM1), RP (Timer de RSSI PWM).
2.2.6-EXEMPLO DE CONFIGURAÇÃO
Como exemplo de um simples link A/D, um par de módulos de RF pode ser definido da
seguinte forma:
Módulo de Controle
DL = 0x1234
MY = 0x5678
D0 = 2
D1 = 2
IR = 0x14
Módulo Base
DL = 0x5678
MY = 0x1234
P0 = 2
P1 = 2
IU = 1
IA = 0x5678 (ou 0xFFFF)
Essas configurações definem o módulo de controle para amostrar os canais AD0 e AD1
uma vez a cada a cada 20ms e envia os dados para o módulo base. A base deverá então
receber a transmissão e atualizar as saídas de acordo com as informações que chegaram.
2.4-ENDEREÇAMENTO U-BEE
Cada pacote de dados RF enviado contém um campo de Endereço de Origem e
Endereço de Destino em seu cabeçalho. O módulo de RF em conformidade com a
especificação 802.15.4, suporta tanto endereço de 16 bits (Short 16-bit Address) quanto
endereço de 64 bits (Long 64-bit Address). Um endereço único de fonte de 64 bits é
configurado de fábrica e pode ser lido através dos comandos SL (Número Serial – Parte menos
significativa) e SH (Número Serial – Parte mais significativa). Os Short Addresses, endereços
de 16 bits devem ser configurados manualmente. O módulo irá utilizar seu endereço único de
64 bits como seu endereço de fonte se o valor de seu endereço MY (endereço de 16 bits) for
igual a “0xFFFF” ou “0xFFFE”.
Para enviar pacotes de dados para um módulo utilizando o endereço de 64 bits, devese configurar o Endereço de Destino (DL + DH) compatível com o Endereço de Fonte (SL +
SH) do módulo ao qual se quer enviar a mensagem.
Para enviar pacotes de dados para um módulo utilizando o endereço de 16 bits, devese configurar a parte menos significativa do Endereço de Destino (DL) compatível ao endereço
MY do dispositivo ao qual se quer enviar a mensagem e também configurar a parte mais
significativa do Endereço de Destino (DH) como “0”.
2.4.1-MODO UNICAST
Por definição, o módulo RF opera no modo Unicast. Este modo é o único capaz de
reenviar uma mensagem. Enquanto estiver operando neste modo, os módulos receptores
enviam um ACK (reconhecimento) da recepção do pacote de RF ao transmissor. Se o módulo
____________________________________________________________________________________________________________________
- 13 Rev01
____________________________________________________________________________
transmissor não receber o ACK, ele reenviará o pacote de dados até 3 vezes ou até que
receba o ACK.
Endereços de 16 bits (Short Address): O módulo pode ser configurado para usar o
endereço Short Address (16 bits) como sendo sua fonte de endereço definindo o MY <
0xFFFE. Configurando o parâmetro DH igual a 0, será definido o Endereço de Destino como
sendo um endereço de 16 bits se o parâmetro DL<0xFFFE. Para dois módulos se
comunicarem usando o Short Address, o endereço de destino do módulo transmissor deve ser
igual ao parâmetro MY do módulo receptor. O exemplo a seguir ilustra um simples exemplo de
configuração rede que habilitará a comunicação Unicast utilizando endereços de 16 bits:
Parâmetro
MY (Endereço de Fonte)
DH (Endereço Destino – Mais
Significativa)
DL (Endereço Destino –
Menos Significativa)
Módulo 1
0x01
Módulo 2
0x02
0
0
0x02
0x01
Endereços de 64 bits (Long Address): O número serial do módulo (parâmetro SL
concatenado com o parâmetro SH) pode ser usado como endereço de fonte de 64 bits quando
o parâmetro MY (Endereço de origem de 16 bits) está desabilitado. Quando MY for configurado
como 0xFFFF ou 0xFFFE, o endereço de origem é definido como sendo o endereço de 64 bits
(SH e SL).
Para enviar um pacote de dados para um módulo, o endereço de destino (DL + DH)
deve bater com o endereço de origem (endereço de fonte SL + SH).
2.4.2-MODO BROADCAST
Qualquer módulo de RF dentro do alcance da rede irá aceitar um pacote contendo um
endereço Broadcast. Quando configurado para operar neste modo, os módulos receptores não
enviam o reconhecimento de mensagem recebida (ACK) e os módulos transmissores não
reenviam pacotes de dados como no modo Unicast. Para enviar um pacote Broadcast para
todos os módulos independentemente do endereço de 16 bits ou 64 bits, configure o endereço
de destino de todos os módulos como é mostrado abaixo.
Exemplo de configuração de rede (todos os módulos na rede):
DL (Endereço de Destino – Menos Significativa) = 0x0000FFFF
DH (Endereço de Destino – Mais Significativa) = 0x00000000 (valor padrão)
____________________________________________________________________________________________________________________
- 14 Rev01
____________________________________________________________________________
2.5-MODOS DE OPERAÇÃO
O módulo U-Bee opera em cinco modos.
Figura 2.04 – Modos de Operação U-Bee
2.5.1-MODO IDLE
Quando o módulo U-Bee não estiver recebendo ou transmitindo dados, ele está
operando no modo Idle. O módulo muda para outro modo de operação, sob as seguintes
condições:
Modo de Transmissão (Dado serial recebido no Buffer DI)
Modo de Recepção (Dado de RF válido recebido através da antena)
Modo Sleep (a condição para o modo Sleep é satisfeita)
Modo Comando (a seqüência de Modo de Comando é emitida)
2.5.2-MODO DE TRANSMISSÃO/RECEPÇÃO
Pacotes de dados RF
Cada pacote de dados transmitido contém um campo para endereço de destino e um
endereço de fonte. O endereço de fonte é igual aos endereços especificados pelo parâmetro
MY (se MY>=0xFFFE), ou pelos parâmetros SH (Número Serial – Parte mais significativa) e SL
(Número Serial – Parte menos significativa). O endereço de destino é formado pelos valores
dos parâmetros DH (Endereço de Destino – Parte mais significativa) e DL (Endereço de
Destino – Parte menos significativa). Os campos de endereço de destino ou de fonte vão
____________________________________________________________________________________________________________________
- 15 Rev01
____________________________________________________________________________
conter um endereço de 16 bits ou 64 bits. A estrutura dos pacotes segue a norma 802.15.4 (ver
a seção Endereçamento U-Bee).
Transmissão Direta e Indireta
Existem duas formas de transmitir os dados:
Transmissão Direta – as informações são enviadas imediatamente para o Dispositivo
de Destino;
Transmissão Indireta – o pacote é armazenado por um período de tempo e é
transmitido após a requisição dos dados feito pelo Dispositivo de Destino.
A Transmissão Indireta pode acontecer somente em um Coordenador. A funcionalidade de
Coordenador é habilitada pelo através do parâmetro CE = “1”. Porém, se todos os dispositivos
da rede forem End Devices, somente Transmissões Diretas acontecerão. Transmissões
Indiretas são utilizadas para ter certeza que o pacote de dados será enviado ao dispositivo que
esteja em modo Sleep. O Coordenador é capaz de armazenar até duas mensagens indiretas.
Transmissão Direta – A transmissão direta está sempre habilitada para os End Devices,
uma vez que a versão de firmware v1.0 trabalha para atender a topologia P2P. Sendo assim,
todos os módulos estão no alcance uns dos outros.
Um Coordenador pode ser ajustado para trabalhar somente com Transmissão Direta
configurando o parâmetro SP (Período de Sleep Cíclico) para “0”. Neste caso, o coordenador
funciona como um Roteador, podendo então aumentar o alcance da rede.
Também, o valor ST (Tempo antes de Dormir) do Coordenador deve ser igual ao valor ST
configurado para o End Device. Uma vez que o End Device transmite dados ao Coordenador
ou requisita dados a ele, o Coordenador irá usar transmissões diretas para todas as
mensagens subseqüentes a aquele endereço até que o tempo ST se esgote.
Transmissão Indireta – Para configurar a rede para trabalhar com mensagens Indiretas, o
valor do parâmetro SP (Período Cíclico de Sleep) para o Coordenador deve ser configurado
para bater com o maior valor de tempo de Sleep de qualquer End Device. O valor do período
de sleep no Coordenador determina por quanto tempo o Coordenador irá guardar a mensagem
____________________________________________________________________________________________________________________
- 16 Rev01
____________________________________________________________________________
indireta antes de descartá-la, caso o dispositivo em Sleep não requisite dados. O End Device
deve requisitar a mensagem ao Coordenador uma vez que acordar do Sleep para verificar se
há mensagem para ele.
Reconhecimento (ACK)
Se a transmissão não for uma mensagem Broadcast, o módulo aguarda a recepção do
reconhecimento (ACK) vindo do dispositivo de destino. Se o ACK não for reconhecido, o pacote
será reenviado até 3 vezes. Se o ACK não for recebido depois de todas as retransmissões,
uma falha de ACK é registrada.
2.5.3-MODO SLEEP
O modo Sleep permite que o módulo de RF opere com baixo consumo de energia quando não
estiver em uso (idle). Para entrar no Modo de Sleep, uma das seguintes condições deve ser
aceita (além do parâmetro SM ser diferente de zero):
Pino Sleep_RQ (pino 13) é ativado;
O módulo permanece no estado idle (nenhum dado de recepção ou transmissão) pelo
período de tempo determinado pelo parâmetro ST (Tempo antes de Sleep). Esta
condição é aceita somente quando SM=2 ou SM=3.
Configuração
Transição para
entrar em Sleep
Pino de Sleep
(SM=1, 3)
Ativar pino
Sleep_RQ = 1
Modo Sleep
Periódico
(SM=2, 3)
Transição
automática para
o Modo Sleep
assim como
configurados os
parâmetros SM e
ST.
Transição
para sair do
Sleep
Desativar
pino Sleep_RQ
=0
A transição
ocorre após o
término do
intervalo de
tempo de
sleep
periódico.
O intervalo de
tempo é
definido pelo
parâmetro SP.
Características
Comandos
Relacionados
Consumo
de
energia
Controlado por
pino/host
SM
<10uA
SM, ST, SP
< 50uA
O módulo U-Bee
acorda
periodicamente
para verificar se há
dados de RF para
ele
O parâmetro SM, por padrão, é configurado para ter o modo Sleep desabilitado
(SM=0). Operando neste modo, o módulo está constantemente preparado para responder a
qualquer atividade de RF e/ou serial.
Pino de Sleep (SM=1)
Este modo é ativado através do pino Sleep_RQ. Quando o pino é ativado (Sleep_RQ =
1), o módulo termina qualquer atividade que estiver realizando no momento, e então entra no
____________________________________________________________________________________________________________________
- 17 Rev01
____________________________________________________________________________
modo de Sleep. O módulo U-Bee não responderá a qualquer atividade serial ou de RF
enquanto este pino estiver ativado. Para acordar o módulo desta condição, desative o pino
Sleep_RQ (nível “0”).
Sleep Periódico (SM=2)
O modo de Sleep periódico permite que o módulo de U-Bee cheque por dados de RF
de tempos em tempos. Quando o parâmetro SM for configurado como “2”, o módulo entra em
modo sleep, e então acorda após um tempo pré-determinado pelo parâmetro SP. Quando sai
do modo sleep, ele requisita dados de qualquer dispositivo configurado como Coordenador
(CE=1, SM=0), e este por sua vez, irá transmitir qualquer informação endereçada para o
dispositivo que requisitou a informação. Se nenhum dado estiver na fila esperando para ser
transmitido, o coordenador não irá transmitir e o módulo remoto irá retornar para mais um ciclo
em Sleep. Se qualquer dado for transmitido para o módulo remoto, ele permanecerá acordado
permitindo comunicação serial e de RF até que o tempo ST (Tempo antes de Sleep) termine.
Sleep Periódico com Pino de Sleep (SM=3)
Este modo trabalha como sendo uma combinação entre o Modo de Sleep periódico e o
Modo de Sleep com pino, ambos descritos acima.
2.5.4-MODO COMANDO
Para ler ou modificar os parâmetros do módulo U-Bee, o módulo deve primeiro entrar
no Modo Comando. Assim, os dados que chegarem serão interpretados como comandos. O
único modo de comando que o U-Bee suporta é o Modo Comando AT.
Modo Comando AT
Para entrar no modo de comando AT, deve-se enviar 3 caracteres seqüenciais
definidos pelo parâmetro CC (“+” padrão), respeitando o tempo de guarda (parâmetro GT)
antes e depois dos caracteres.
Seqüência padrão para entrar no Modo Comando AT:
Nenhum caractere enviado por um segundo [Parâmetro GT(Tempo de Guarda)=0x3E8]
Entre com 3 caracteres „+‟ dentro do intervalo de um segundo. O caractere para a
seqüência é definido pelo parâmetro CC.
Nenhum caractere enviado por um segundo [Parâmetro GT(Tempo de Guarda)=0x3E8]
Todos os parâmetros utilizados da seqüência podem ser modificados de acordo
com as preferências do usuário.
Para enviar comandos AT, deve-se enviar a sintaxe como mostra a figura abaixo:
____________________________________________________________________________________________________________________
- 18 Rev01
____________________________________________________________________________
Figura 2.05 – Sintaxe para comandos
Para ler um valor do parâmetro armazenado no módulo de RF, deve-se omitir o campo
de parâmetro. O exemplo anterior mudaria o Endereço de Destino do módulo (parte menos
significativa) para “0x1F”.
Para salvar o novo valor em uma memória não volátil, envie o comando WR (Escrita)
em seqüência. Isso fará com que os valores dos parâmetros continuem sendo os parâmetros
de configuração do módulo mesmo após um reset. Caso contrário, os parâmetros serão
redefinidos para os valores salvos antes do reset.
Para sair do Modo de Comando AT, deve-se enviar o comando ATCN + Retorno de
carro, ou então, o módulo pode sair do modo de comando automaticamente se não receber
um comando válido dentro de um intervalo de tempo especificado pelo parâmetro CT (Timeout
para o Modo de Comando).
Resposta do Sistema
Quando um comando for enviado ao módulo, ele irá analisar e executar o comando.
Após executá-lo com sucesso, o módulo retorna uma mensagem “OK”. Se a execução do
comando resultar em um erro, o módulo irá retornar uma mensagem de “ERRO”.
3-CONFIGURAÇÃO DO MÓDULO U-BEE
3.1-PROGRAMANDO O MÓDULO DE RF
Para informações sobre como entrar no modo de comando, enviar comandos e sair do
modo de comando, ver a seção 2.5.4.
3.1.1-EXEMPLO DE PROGRAMAÇÃO
Para ler ou modificar os parâmetros do módulo U-Bee, o módulo deve primeiro entrar
no Modo Comando.
Setup
Os exemplos de programação desta seção exigem uma conexão serial com um PC e
um software aplicativo de acesso à serial (Ex: HyperTerminal). Conecte o módulo de RF a uma
placa de interface, então conecte o módulo montado a um PC.
____________________________________________________________________________________________________________________
- 19 Rev01
____________________________________________________________________________
As falhas mais comuns para entrar no Modo de Comando AT acontecem devido às
taxas de comunicação configuradas de forma errada. Tenha certeza que a taxa de
comunicação (Baud Rate) configurada no PC seja compatível com a taxa para o módulo. Por
padrão, o parâmetro BD = 4 (o que corresponde a 19200bps).
Configuração Exemplo: Modificando o Endereço de Destino do Módulo de RF
Conecte um cabo serial no PC, e na placa de interface. Utilize o programa
HyperTerminal
do
Windows
para
configurar
o
módulo
(Iniciar>Acessórios>Comunicação>HyperTerminal). Configure o programa para trabalhar na
porta COM1 e com as seguintes características:
Taxa de comunicação de 19200bps, 8bits de dados, sem paridade, 1 bit de parada e
sem controle de fluxo.
Figura 3.01 – Configuração do Porta Serial
Depois de estabelecida a conexão entre o módulo e o computador, a seguinte
configuração pode ser feita com exemplo. Primeiro, deve-se digitar os caracteres seqüenciais
para entrar no modo de comando. O U-Bee retorna uma resposta “OK” dizendo que entrou no
modo de comando. O comando “ATDL<Enter>” faz a leitura do valor atual para o parâmetro DL
(Endereço de Destino – menos Significativo). Em seguida, é configurado o novo valor para o
Endereço. O espaço entre “ATDL” e “1A0D” é opcional, ou seja, é possível enviar “ATDL1A0D
<Enter>” ou “ATDL 1A0D <Enter>”. Esse novo valor é gravado em seqüência na memória não
volátil com a execução do comando “ATWR <Enter>”. Por fim, o comando “ATCN<Enter>” sai
do modo comando.
____________________________________________________________________________________________________________________
- 20 Rev01
____________________________________________________________________________
Comando AT Enviado
+++ <Enter>
ATDL <Enter>
ATDL1A0D <Enter>
ATWR <Enter>
ATCN <Enter>
Resposta do U-Bee
OK <CR> (Entra no Modo Comando)
{valor atual} <CR> (Lê Endereço Destino – menos Sign.)
OK <CR> (Modifica Endereço Destino – menos Sign.)
OK <CR> (Escreve na memória não volátil)
OK <CR> (Sai do Modo de Comando)
3.2-TABELA DE COMANDOS
Os módulos U-Bee trabalham com valores numéricos em formato hexdecimal. Os
valores hexadecimais são designados por um prefixo “0x”. Valores decimais equivalentes são
designados com um sufixo “d”. Os comandos estão contidos dentro das seguintes categorias:
Especiais
Rede & Segurança
Interface RF
Modo Sleep (baixo consumo)
Interface Serial
Configurações de I/O
Diagnósticos de rede
Opções para Comando AT
É aconselhável utilizar a mesma versão de firmware para os módulos operando em
uma mesma rede.
Tabela 3.01. Comandos Especiais U-Bee
Comando
AT
Categoria
Comando
Nome e Descrição
Faixa de
Valores
Valor
Padrão
WR
Especiais
Write. Escreve o valor do parâmetro em uma memória não volátil fazendo com
que as modificações nos parâmetros continuem mesmo após um reset ou
Power-up.
-
-
RE
Especiais
Restore Default. Restaura os valores padrões dos parâmetros.
-
-
FR
Especiais
Software Reset. Responde imediatamente com um “OK” e então executa um
reset aproximadamente 100ms depois.
-
-
Tabela 3.02. Comandos Rede & Segurança
Comando
AT
Categoria
Comando
CH
Rede
(Endereçamento)
ID
Rede
(Endereçamento)
DH
Rede
(Endereçamento)
Nome e Descrição
Canal de Operação. Lê/Configura o número do canal de operação
utilizado para transmitir e receber mensagens entre os módulos de RF
(utiliza os números de canais do protocolo 802.15.4).
PAN ID. Lê/Configura o PAN ID da rede (Personal Area Network
Identification). Valor 0xFFFF comunica com todos os PANs.
Endereço de Destino (mais significativo). Lê/Configura os 32 bits
mais significativos do endereço de destino de 64 bits. Quando
combinado com DL, ele define o endereço de destino utilizado na
transmissão. Para transmitir utilizando 16 bits, configure DH=0 e
DL<0xFFFE. 0x000000000000FFFF é o endereço broadcast para o
PAN.
Faixa de
Valores
Valor
Padrão
0x0B – 0x1A
0x0F (15d)
0 – 0xFFFF
0x1234
(4660d)
00xFFFFFFFF
0
____________________________________________________________________________________________________________________
- 21 Rev01
____________________________________________________________________________
Endereço de Destino (menos significativo). Lê/Configura os 32 bits
menos significativos do endereço de destino de 64 bits. Quando
combinado com DH, ele define o endereço de destino utilizado na
transmissão. Para transmitir utilizando 16 bits, configure DH=0 e
DL<0xFFFE. 0x000000000000FFFF é o endereço broadcast para o
PAN.
Endereço de Fonte de 16 bits. Lê/Configura o endereço de fonte de
DL
Rede
(Endereçamento)
MY
Rede
(Endereçamento)
SH
Rede
(Endereçamento)
Número Serial (mais significativo). Lê os 32 bits mais significativos
do endereço único de 64 bits do módulo de RF. O endereço de fonte de
64 bits está sempre habilitado.
SL
Rede
(Endereçamento)
Número Serial (menos significativo). Lê os 32 bits menos
significativos do endereço único de 64 bits do módulo de RF. O
endereço de fonte de 64 bits está sempre habilitado.
NI
Rede
(Identificação)
ND
Rede
(Identificação)
NT
Rede
(Identificação)
DN
Rede
(Identificação)
CE
Rede
(Associação)
SC
Rede
(Associação)
SD
Rede
(Associação)
ED
Rede
(Associação)
16 bits do módulo de RF. Configure MY 0xFFFE para desabilitar a
recepção de pacotes com endereços de 16 bits. A recepção de pacotes
com endereços de 64 bits e endereço de broadcast
(0x000000000000FFFF) está sempre habilitada.
Identificador do Nó. Guarda uma string de caracteres. Este registro
aceita somente dados em ASCII. O comando encerra até que receba
<Enter>, ou até que receba o número máximo de bytes para a string.
Esta string é retornada como parte do comando ND (Descobridor de
Nós). A string também é utilizada juntamente com o comando DN (Nó
de Destino).
Descobridor de Nós. Descobre e lista todos os módulos de RF
encontrados. A seguinte informação é listada para cada nó descoberto.
MY <CR>
SH <CR>
SL <CR>
DB <CR>
NI <CR><CR>
O nó permitirá que outros nós respondam à requisição por um tempo
determinado pelo parâmetro NT. ND também aceita Identificador de Nó
como parâmetro. Neste caso, somente o nó com o identificador
fornecido irá responder.
Tempo do Descobridor de Nós. Lê/Configura o valor de tempo pelo
qual o nó irá esperar por respostas de outros dispositivos quando
ativado o comando ND (Descobridor de Nós).
Nó de Destino. Referencia uma string de NI (Identificador de Nó) para
um endereço físico. Os seguintes eventos acontecem após a execução
bem sucedida do comando:
1. DL e DH são configurados com o endereço do módulo com o
Identificador de Nó correspondente.
2. Resposta “OK” recebida.
Se não houver resposta de um módulo dentro de 200ms ou um
parâmetro não for especificado, o comando é encerrado e uma
mensagem de “ERRO” é apresentada.
Habilita Coordenador. Lê/Configura as configurações de coordenador
de rede.
Varredura de Canais (SCAN). Lê/Configura a lista de canais (como
bitfield) para executar a varredura na função Energy Scan.
bit 0 – 0x0B
bit 4 – 0x0F
bit 8 – 0x13
bit 12 – 0x17
bit 1 – 0x0C
bit 5 – 0x10
bit 9 – 0x14
bit 13 – 0x18
bit 2 – 0x0D
bit 6 – 0x11
bit 10 – 0x15
bit 14 – 0x19
bit 3 – 0x0E
bit 7 – 0x12
bit 11 – 0x16
bit 15 – 0x1A
Tempo de Varredura. Lê/Configura o expoente do tempo de varredura
(Scan Duration). O tempo de varredura é definido por:
[(# de canais)*(2^SD+1)*960us]
O número de canais a se fazer a varredura é definido pelo parâmetro
SC. O módulo U-Bee pode fazer varredura em até 16 canais
(SC=0xFFFF).
Energy Scan. Faz o processo de Energy Scan, que é a detecção de
nível de energia em cada canal. O nível máximo de energia em cada
00xFFFFFFFF
0
0 – 0xFFFF
0xFFFF
00xFFFFFFFF
(somente
leitura)
00xFFFFFFFF
(somente
leitura)
Valor de
Fábrica
Valor de
Fábrica
String de 20
caracteres
ASCII
FRACTUM
(ASCII)
NI de 20
caracteres em
ASCII
(opcional)
-
0x01 – 0xFC
[x100ms]
0x19
String de 20
caracteres
ASCII
-
0–1
0-End Device
1Coordenador
0
0-0xFFFF
(bitfield)
0xFFFF
0-0x0F
4
-
-
____________________________________________________________________________________________________________________
- 22 Rev01
____________________________________________________________________________
EE
Rede
(Segurança)
KY
Rede
(Segurança)
canal é retornado e cada valor é seguido por um retorno de carro. Um
retorno de carro adicional é enviado no fim do comando. O valor
retornado representa o nível de energia detectado em –dBm. O tempo
de varredura é definido por:
[(# de canais)*(2^SD+1)*960us]
O número de canais é definido pelo parâmetro SC, e o expoente do
tempo de varredura definido pelo parâmetro SD.
Criptografia AES. Habilita/Desabilita a chave de segurança AES de
128 bits, usada em conjunto com o comando KY.
Obs: As mensagens enviadas de um módulo com chave de segurança
habilitada só serão interpretadas por módulos com mesma chave de
segurança habilitada. Porém, o módulo com chave de segurança
habilitada pode receber mensagens de um módulo cuja chave de
segurança esteja desligada.
Chave de Segurança AES. Configura a chave de segurança AES de
128 bits para criptografar/decodificar. O registro KY não pode ser lido.
Obs: Para gerar os 128 bits da chave de segurança AES, os 8 bytes do
parâmetro KY são utilizados como parte mais significativa sendo um
byte da chave de segurança, e a parte menos significativa como sendo
outro byte.
Ex: KY = 0x1234567812345678
Chave AES = 0x01020304050607080102030405060708
0-1
0
(desabilitado)
0-(valor de 8
Bytes)
-
Tabela 3.03. Interface RF
Comando
AT
PL
Categoria
Comando
Interface RF
Nome e Descrição
Faixa de Valores
Valor
Padrão
Nível de Potência. Seleciona/Lê os níveis de potência de saída
do transmissor de RF.
0-0x1F
0= 0dBm
1= -0.5dBm
2= -1.25dBm
…
31= -38.75dBm
(step de -1.25dB)
0
Tabela 3.04. Modo Sleep (baixo consumo)
Comando
AT
SM
Categoria
Comando
Sleep (baixo
consumo)
ST
Sleep (baixo
consumo)
SP
Sleep (baixo
consumo)
Nome e Descrição
Faixa de Valores
Valor
Padrão
Modo Sleep. Configura/Lê as configurações do Modo Sleep.
0-3
0-Sleep Desabilitado
1-Sleep por pino
2-Sleep Periódico
3-Sleep Periódico
com pino de Wake-up
0
1-0xFFFF [x 1ms]
0x1388
(5000d)
0-0x68B0 [x 8,4ms]
0
Tempo antes de Sleep. Configura/Lê o período de inatividade
(nenhum dado serial ou de RF é enviado ou recebido) antes de
ativar o Modo Sleep. O parâmetro ST é válido somente com as
configurações de Sleep Periódico (SM = 2 - 3). Os valores ST para
os End Devices e para o Coordenador devem ser iguais. Note
também que o valor do parâmetro GT deve ser sempre menor que o
valor ST. (Se GT > ST, esta configuração não permitirá que o
módulo entre no modo de comando). Se o parâmetro SR for
modificado, mude também o parâmetro GT respeitando a condição
acima.
Tempo de Sleep. Configura/Lê o tempo que os dispositivos
remotos ficarão dormindo. Os valores de SP para o Coordenador e
o End Device devem ser sempre iguais. Para enviar Mensagens
Diretamente, configure SP = 0.
Nos End Devices, o parâmetro SP determina o tempo em que
ficarão dormindo. O maior período de sleep é de 225 segundos
____________________________________________________________________________________________________________________
- 23 Rev01
____________________________________________________________________________
(0x68B0).
No Coordenador, o parâmetro SP, se diferente de zero, determina o
tempo que ele armazena uma mensagem indireta antes de
descartá-la. Um Coordenador irá descartar uma mensagem indireta
após um período de (2,5 * SP).
Tabela 3.05. Interface Serial
Comando
AT
BD
Categoria
Comando
Interface Serial
RO
Interface Serial
PR
Interface Serial
Nome e Descrição
Faixa de Valores
Valor
Padrão
Taxa de Dados da Serial. Lê/Configura o valor da taxa de
comunicação entre a porta serial do modulo de RF e o Host.
0-7
0 = 1200 bps
1 = 2400 bps
2 = 4800 bps
3 = 9600 bps
4 = 19200 bps
5 = 38400 bps
6 = 57600 bps
7 = 115200 bps
4
0-0F [x10ms]
4
0-0xDC
0xDC
Timeout para empacotamento dos dados. Lê/Configura o tempo
de silêncio antes do envio dos dados armazenados no buffer de
entrada via RF. Configurando RO = 0 os dados que chegam pela
serial são enviados imediatamente.
Os dados que estiverem no buffer de entrada serial (para RO>0)
são enviados via RF após um time out de RO*10ms quando não
receber mais caracteres.
Resistores Internos de Pull-Up. Lê/Configura o campo de bit
para os resistores internos de Pull-Up dos pinos do módulo.
BitMap:
Bit 2 – AD4/DIO4
Bit 4 – AD6/DIO6
Bit 7 – AD9/DIO9
Bit 3 – AD5/DIO5
Bit 6 – AD8/DIO8
Configurando o bit como “1” habilita o resistor interno; “0”
desabilita. Os outros bits do bitmask são interpretados como „0‟ e
não podem ser alterados.
Tabela 3.06. Configurações de I/O
Comando
AT
Categoria
Comando
Nome e Descrição
D0-D9
Configurações
I/O
Configuração DIO0-DIO9. Lê/Configura as funções para os pinos
digitais de I/O de DIO0 ao DIO9. As opções incluem Entrada Digital,
Saída Digital e Conversor Analógico-Digital (somente leitura e para os
pinos D0-D5).
IU
Configurações
I/O
Habilita I/O Output. Habilita/Desabilita o envio dos dados recebidos
via RF, correspondente ao estado dos pinos de I/O, pela UART.
IS
Configurações
I/O
IO
Configurações
I/O
IC
Configurações
I/O
Amostra Entradas. Faz uma leitura de todas as entradas habilitadas
(Entradas digitais ou analógicas). Os dados são enviados através da
UART. Se nenhuma entrada estiver habilitada, este comando irá
retornar ERRO.
Nível das Saídas Digitais. Configura o nível digital das saídas digitais
através de um bitmap de 10 bits. Cada bit representa o nível de uma
linha de I/O configurada como Saída.
Ex: ATIO 1, aciona somente o DIO_0, se configurado como saída.
ATIO 3FF, aciona todas as saídas.
Monitoramento DIO. Habilita/Desabilita o monitoramento da alguma
mudança de estado nos pinos digitais de IO. Se alguma mudança for
detectada, os dados serão transmitidos com os dados dos pinos de IO
somente (sem valores de entradas analógicas). Qualquer dado
armazenado no buffer de transmissão será enviado antes.
Faixa de
Valores
0–5
0 = Desabilitado
1 = Indicador
(D0 e D1)
2 = ADC
3 = Entrada
4 = Saída em „0‟
5 = Saída em „1‟
0-1
0 – Desabilita
1 – Habilita
Valor Padrão
0
-
0-0x3FF
0-0x3FF
Bitmap de 10
bits (cada bit
representa se há
monitoramento
ou não de uma
linha de I/O)
0
____________________________________________________________________________________________________________________
- 24 Rev01
____________________________________________________________________________
0 – Desabilita
1 – Habilita
IR
Configurações
I/O
Taxa de amostragem. Lê/Configura a taxa de amostragem. Quando
configurado, este parâmetro faz com que o módulo execute uma
amostra de todas as entradas habilitadas em um determinado tempo.
0xFFFF [x 10ms]
1
AV
Configurações
I/O
Tensão de Referência ADC. Configura/Lê o valor da tensão de
referência para o conversor Analógico-Digital.
0-1
0 = pino VREF
1 = Referência
Interna
1
IA
Configurações
I/O {I/O Line
Passing}
00xFFFFFFFFFF
FFFFFF
0-0xFFFFFF
FFFFFFFFFF
T0-T9
Configurações
I/O {I/O Line
Passing}
0xFF [x 100ms]
0xFF
P0
Configurações
I/O {I/O Line
Passing}
Configuração PWM0. Seleciona/Lê a função do pino PWM0.
P1
Configurações
I/O {I/O Line
Passing}
Configuração PWM1. Seleciona/Lê a função do pino PWM1.
M0
Configurações
I/O {I/O Line
Passing}
M1
Configurações
I/O {I/O Line
Passing}
PT
Configurações
I/O {I/O Line
Passing}
RP
Configurações
I/O {I/O Line
Passing}
Endereço de I/O. Lê/Configura o endereço do módulo para o qual as
saídas são sujeitas. Configurando o endereço com todos os bytes
como 0xFF desabilita a mudança dos pinos de saída. Configurando o
endereço para 0xFFFF irá permitir que qualquer pacote com dados de
I/O mudem as saídas do módulo.
(D0-D9) TimeOut Saídas. Configura/Lê o valor de timeout para as
saídas das linhas correspondentes aos parâmetros D0-D9. Quando
uma saída for ativada (devido ao I/O Line Passing), um timer é ativado
e quando ocorrer o estouro de tempo, a saída volta ao seu estado
padrão. O timer é reiniciado quando um pacote de dados I/O válido for
recebido.
Duty-Cycle PWM0. Seleciona/Lê o valor do Duty Cycle para o canal
PWM0. O período de PWM é de 64us e existem 1023 (0x03FF) passos
com este período.Quando M0 = 0, o Duty-Cycle é de 0%. Para
M0=0x01FF, o Duty-Cycle é de 50%. Para M0=0x03FF, o Duty-Cycle é
de 100%, etc.
É importante ressaltar que o canal PWM0 está ligado ao canal ADC0
(I/O Line Passing). Assim, quando um pacote de dados válido for
recebido e conter informações do canal ADC0, o canal PWM0 será
ativado com Duty-Cycle correspondente.
Duty-Cycle PWM1. Seleciona/Lê o valor do Duty Cycle para o canal
PWM1. O período de PWM é de 64us e existem 1023 (0x03FF) passos
com este período.Quando M1 = 0, o Duty-Cycle é de 0%. Para
M1=0x01FF, o Duty-Cycle é de 50%. Para M1=0x03FF, o Duty-Cycle é
de 100%, etc.
É importante ressaltar que o canal PWM1 está ligado ao canal ADC1
(I/O Line Passing). Assim, quando um pacote de dados válido for
recebido e conter informações do canal ADC1, o canal PWM1 será
ativado com Duty-Cycle correspondente.
TimeOut do Canal PWM. Lê/Configura o valor de TimeOut para
ambas as saídas PWM. Quando uma saída PWM for ativada para um
valor não padrão (devido ao I/O Line Passing), um timer é ativado e
quando ocorrer o estouro de tempo, a saída volta ao seu estado
padrão. O timer é reiniciado quando um pacote de dados I/O válido for
recebido.
PWM com RSSI. Lê/Configura a duração do Time Out para o pino de
RSSI. O Duty-Cycle é atualizado a cada pacote de dados recebido e é
desativado quando o timer expira.
0-2
0 = Desabilitado
1 = RSSI
2= Saída PWM
0-2
0 = Desabilitado
1 = RSSI
2= Saída PWM
1
0
0-0x03FF
-
0-0x03FF
-
0xFF [x 100ms]
0xFF
0xFF [x 100ms]
0x28 (40d)
O timer é resetado a cada pacote recebido.
Tabela 3.07. Diagnósticos
Comando
AT
Categoria
Comando
Nome e Descrição
Faixa de
Valores
VR
Diagnósticos
Versão Firmware. Lê a versão do Firmware do módulo U-Bee.
Somente Leitura
HV
Diagnósticos
Versão Hardware. Lê a versão do Hardware do módulo U-Bee.
Somente Leitura
Valor
Padrão
Configurado
de Fábrica
Configurado
de Fábrica
____________________________________________________________________________________________________________________
- 25 Rev01
____________________________________________________________________________
DB
Diagnósticos
EA
Diagnósticos
ED
Diagnósticos
Nível do Sinal Recebido. Lê o nível de sinal (em dBm) do último pacote
recebido (RSSI).
Falhas ACK. Lê/Zera o contador de falhas de recebimento de ACK´s
(Acknowledgemet). O valor deste parâmetro é incrementado quando o
módulo finaliza suas tentativas de retransmissão para receber o ACK da
mensagem enviada. Este parâmetro deixa de ser incrementado quando
atingir o seu valor máximo, para reiniciá-lo, configure o parâmetro como
“0”.
Energy Scan. Faz o processo de Energy Scan, que é a detecção de
nível de energia em cada canal. O nível máximo de energia em cada
canal é retornado e cada valor é seguido por um retorno de carro. Um
retorno de carro adicional é enviado no fim do comando. O valor
retornado representa o nível de energia detectado em –dBm. O tempo
de varredura é definido por:
[(# de canais)*(2^SD+1)*960us]
O número de canais é definido pelo parâmetro SC, e o expoente do
tempo de varredura definido pelo parâmetro SD.
Somente Leitura
-
0-0xFFFF
-
-
Tabela 3.08. Opções de Comandos
Comando
AT
CT
CN
Categoria
Comando
Opções
Comandos
AT
Opções
Comandos
AT
GT
Opções
Comandos
AT
CC
Opções
Comandos
AT
Nome e Descrição
Faixa de
Valores
Valor
Padrão
TimeOut Modo de Comando. Configura/Lê o período de inatividade
(nenhum comando válido recebido) para que o módulo U-Bee
automaticamente saia do Modo de Comando e retorne para o estado Idle.
2-0xFFFF [x
100ms]
0x64
(100d)
Termina Modo de Comando. Sai do modo de Comando.
-
-
2-0x0CE4 [x
1ms]
0x3E8
(1000d)
0x0xFF
0x2B
(„+‟ ASCII)
Tempo de Guarda. Configura o tempo de silêncio necessário antes e
depois da Seqüência de Caracteres de Comando para entrar no modo de
Comando (GT+CC+GT). Este tempo é necessário para que o módulo não
entre no modo de comando erroneamente.
Seqüência de Caracteres de Comando. Configura/Lê o valor do
caractere (em ASCII) para ser utilizado entre o Tempo de Guarda da
Seqüencia de Modo de Comando AT (GT+CC+GT). Esta seqüência
coloca o módulo no Modo de Comando.
Fractum Indústria e Comércio de Equipamentos Eletrônicos LTDA - Av. Antônio Américo Junqueira 335 Pôr
do Sol - Santa Rita do Sapucaí-MG - CEP 37540-000 - TEL: 55 35 3471 0019
Site: www.fractumrf.com - Email: [email protected]
____________________________________________________________________________________________________________________
- 26 Rev01
Download