Comando BSW IoT
Sistema de auto-detecção Bluetooth Smart Wildcard para detecção automática de dispositivos iBeacon.
Para que serve?
| Caso de uso | Descrição |
|---|---|
| 👤 Identificação de motoristas | Detecta automaticamente o beacon do condutor sem configurar MAC específica |
| 🔧 Controle de ferramentas | Monitora ferramentas com beacons sem pré-configuração |
| 🚛 Detecção de reboques | Identifica reboques automaticamente ao acoplar |
| 🏢 Filtragem por frota | Usa UUID/Major para segmentar por empresa ou departamento |
| ⚡ Injeção automática | Configura sensores BS dinamicamente ao detectar dispositivos |
Descrição
O sistema BSW (Bluetooth Smart Wildcard) detecta automaticamente dispositivos Bluetooth iBeacon e pode injetar suas MACs em sensores BS ou trabalhar de forma independente. Suporta 4 capturadores simultâneos (BSW00-BSW03) com filtragem por UUID, Major, Minor e distância.
O sistema BSW é ideal para identificação de motoristas, controle de ferramentas e detecção de reboques sem necessidade de configurar MACs específicas.
Características
- 4 módulos independentes com eventos próprios (BSW/BSWN)
- Filtragem avançada por UUID/Major/Minor/Distância com histerese (20%)
- Injeção automática em sensores BS ou modo independente (FF)
- Timeout por perda real de sinal (não timer forçado)
- Compatível com iBeacon PDU variável
Sinais Associados
| Sinal | Descrição | Tipo |
|---|---|---|
BSWxx | Estado de conexão (1=conectado, 0=desconectado) | Persistente |
BSWNxx | Nova MAC detectada (trigger temporal) | Não persistente |
Onde xx: 00 .. 03
Comando SBSW (Configurar BSW)
Sintaxe
SBSWiiE,targets[,UUID[,major[,minor[,timeout[,distance]]]]]Parâmetros
| Parâmetro | Descrição |
|---|---|
ii | Índice BSW (00-03) |
targets | FF (independente) | 00 | 00:01 | ALL |
UUID | 32 caracteres hex (opcional) |
major/minor | Filtros iBeacon, 0=qualquer (opcional) |
timeout | Segundos sem sinal para desconectar (padrão: 30) |
distance | Metros máximos (0=sem filtro) |
Comandos Rápidos
| Comando | Ação |
|---|---|
>SBSW00E< | Habilitar com configuração existente |
>SBSW00D< | Desabilitar (mantém config) |
>SBSW00X< | Desconectar dispositivo atual |
>SBSW00*< | Limpar completamente |
Exemplos
Modo independente com UUID, 5s timeout, 2m distância:
>SBSW00E,FF,2F234454CF6D4A0FADF2F4911BA9FFA6,,,5,2<Injetar em BS00 e BS01:
>SBSW02E,00:01,11223344556677889900AABBCCDDEEFF,,,15,3<Com filtros major=1000, minor=2000:
>SBSW03E,00,FEDCBA9876543210FEDCBA9876543210,1000,2000,5,2<Injetar em todos os BS:
>SBSW00E,ALL,2F234454CF6D4A0FADF2F4911BA9FFA6,,,30,5<Comando QBSW (Consulta BSW)
Sintaxe
QBSWiiResposta
RBSWiiE,targets,UUID,major,minor,timeout,distance;detects:N,active:1/0,mac:XX,rssi:XX,distance:X.XX,age:XXCampos
| Tipo | Campos |
|---|---|
| Estáticos | ii, E/D, targets, UUID, major, minor, timeout, distance |
| Dinâmicos | detects, active, mac, rssi, distance, age |
Tokens Individuais
Sintaxe
>QBSWii.campo<Tokens Disponíveis
| Categoria | Tokens |
|---|---|
| Configuração | enabled, targets, uuid, major, minor, timeout, distance |
| Estado | detects, active, mac, rssi, age |
Targets de BS
| Valor | Descrição |
|---|---|
FF | Modo independente (não injeta em BS, apenas gera eventos) |
00, 01, 02, 03 | Injeta em BS específico |
00:01, 00:01:02:03 | Injeta em múltiplos BS |
ALL | Injeta em todos os BS disponíveis |
Eventos e Disparadores
Eventos Gerados
| Evento | Descrição | Tipo |
|---|---|---|
BSWxx | Estado de conexão (1=conectado, 0=desconectado) | Persistente |
BSWNxx | Nova MAC detectada (trigger temporal) | Não persistente |
Disparadores disponíveis: BSW00, BSW01, BSW02, BSW03, BSWN00, BSWN01, BSWN02, BSWN03
Exemplos com Motor de Eventos
Sistema identificação de motorista:
>SUC00 $CAMBIO_CHOFER - | QBSW00,\3B1,0,100<
>SRL93E;TRG=BSWN00+;ACC={GU000H;@TRM}< # Mudança de motorista
>SRL91E;TRG=BSW00+;ACC={GU100H;@TRM}< # Motorista presente
>SRL90E;TRG=BSW00-;ACC={GU200H;@TRM}< # Motorista ausenteAlertas por perda:
>SRL80E;TRG=BSW01-;ACC={SMSALERT:HERRAMIENTA_FUERA;@TRM}<
>SRL81E;TRG=BSW02-;ACC={SMSALERT:REMOLQUE_DESCONECTADO;@TRM}<Casos de Uso
1. Controle de 4 motoristas (modo independente)
>SBSW00E,FF,2F234454CF6D4A0FADF2F4911BA9FFA6,,,5,2< # Motorista A
>SBSW01E,FF,A1B2C3D4E5F6708192A3B4C5D6E7F8A9,,,5,2< # Motorista B
>SBSW02E,FF,11223344556677889900AABBCCDDEEFF,,,5,2< # Motorista C
>SBSW03E,FF,FEDCBA9876543210FEDCBA9876543210,,,5,2< # Motorista D2. Filtros por major (frota empresarial)
>SBSW00E,FF,UUID_EMPRESA,1000,,10,3< # Major 1000 = Motoristas
>SBSW01E,FF,UUID_EMPRESA,2000,,10,3< # Major 2000 = Ferramentas
>SBSW02E,FF,UUID_EMPRESA,3000,,10,3< # Major 3000 = Veículos
>SBSW03E,FF,UUID_EMPRESA,4000,,10,3< # Major 4000 = PessoalComportamento do Sistema
Ordem de Filtros
- iBeacon válido
- UUID (se configurado)
- Major (se >0)
- Minor (se >0)
- Distância (se >0)
Desconexão Automática
- Ocorre por perda real de sinal (não é timer forçado)
- Se não detecta dispositivo durante timeout configurado → desconecta
- Timeout=0 → mantém conexão indefinida até comando manual
Histerese de distância (20%): Evita oscilações no limite de alcance. Exemplo: Limite 5m → desconecta a 6m (5m + 20%)
Cálculo de Distância
- Usa TX Power do iBeacon + RSSI + fórmula padrão Bluetooth
- Resultado em metros com 2 decimais
Zero IoT suporta WiFi e BLE simultaneamente. Spider/Smart IoT devem escolher entre WiFi ou BLE (NimBLE).
Compatibilidade
Ver Também
- Comando BE IoT - Disparadores iBeacon
- Comando BS IoT - Sensores BLE
- Motor de Eventos - Configuração de regras