Documentação

Fundamentos, Arquitetura e Especificações

Visão geral, requisitos, arquitetura e especificações técnicas do Kill Switch

Kill Switch - Fundamentos, Arquitetura e Especificações

AVISO: O acionamento deste botão de emergência resulta em uma parada brusca (Dump Mode) que pode causar danos mecânicos ao robô. Esta é uma medida de último recurso, mas obrigatória para garantir a segurança física dos humanos presentes durante o tour. A segurança humana tem prioridade absoluta sobre a preservação do equipamento.

1. Fundamentos e Requisitos

Objetivo do Sistema

O Kill Switch é um mecanismo essencial de segurança projetado para interromper imediatamente as operações do robô Unitree em situações de risco iminente. O sistema utiliza comunicação serial via USB-C para garantir comunicação rápida.

Requisitos Funcionais (RF)

IDDescriçãoPrioridade
RF-KS-001Sistema deve detectar pressão do botão em ≤ 50msGRAVE
RF-KS-002Sistema deve enviar sinal via serial em ≤ 100msGRAVE
RF-KS-003Serviço Rust deve processar sinal em ≤ 150msGRAVE
RF-KS-004ROS 2 deve publicar comando em ≤ 200msGRAVE
RF-KS-005Robô deve ativar Dump Mode em ≤ 500msGRAVE
RF-KS-006ACK total deve ser recebido em ≤ 1 segundoGRAVE

Requisitos Não-Funcionais (RNF)

IDDescriçãoValor
RNF-KS-001Disponibilidade≥ 99%
RNF-KS-002Latência p95≤ 500ms
RNF-KS-003Taxa de falsos positivos< 1/hora
RNF-KS-004MTTR≤ 5 minutos
RNF-KS-005Retenção de logs90 dias

2. Arquitetura do Sistema

Visão Geral

O sistema é composto por três camadas: Sensor (botão + microcontrolador), Transmissão (Serial), e Atuação (Rust + ROS 2).

Componentes de Hardware

ComponenteModeloFunçãoEspecificação
BotãoMetaltex CP1-ESensor físicoCogumelo amarelo, IP65
MicrocontroladorESP32C3 Super MiniProcessamentoRISC-V 32-bit, 160 MHz
Conexão SerialUSB-C (tty AM0)Comunicação115200 baud, CDC

Componentes de Software

ComponenteTecnologiaResponsabilidade
Firmware SerialC++ (Arduino)Leitura de GPIO e envio serial
Serviço RustRustMonitoramento serial e publicação ROS
ROS 2 NodeROS 2 (C++)Comando de dump e state machine

3. Especificações Técnicas

Microcontrolador ESP32C3

ParâmetroValor
ProcessadorRISC-V 32-bit single-core
Frequência de Clock160 MHz
Memória RAM400 KB
Flash4 MB
Tensão de Operação3.3V
Corrente Típica80 mA

Configuração de Pinagem

PinoFunçãoConfiguraçãoNotas
GPIO 0Entrada do BotãoINPUT_PULLUP (ativo em LOW)Resistor interno 10kΩ
USB D+/D-Comunicação SerialCDC @ 115200 baudPorta virtual tty AM0
3V3Alimentação Positiva3.3VMáximo 500mA
GNDReferência de Terra0VComum a todos

Botão Metaltex CP1-E

AspectoEspecificação
TipoCogumelo com trava
AcionamentoPush-lock (pressionar para ativar)
LiberaçãoTurn-reset (girar para desativar)
CorAmarelo (segurança industrial)
Grau de ProteçãoIP65
Diâmetro~60mm

Mapeamento de Conexões

┌─────────────────────────────────────────────────────────┐
│                    BOTÃO METALTEX                       │
│  Terminal 1 ────────────────┐                          │
│  (Entrada)                  │                          │
│                        ┌────▼────┐                     │
│                        │ Contato │                     │
│                        │  (NC)   │                     │
│                        └────┬────┘                     │
│  Terminal 2 ────────────────┘                          │
│  (Saída)                                               │
└─────────────────────────────────────────────────────────┘

        ┌───────────────┴───────────────┐
        │                               │
   ┌────▼────┐                   ┌──────▼─────┐
   │ GPIO 0  │                   │    GND     │
   │ (3.3V)  │                   │   (0V)     │
   │ Pull-up │                   │ Referência │
   └─────────┘                   └────────────┘
        │                               │
        └───────────────┬───────────────┘

                   ┌────▼────────┐
                   │  ESP32C3    │
                   │  INPUT_     │
                   │  PULLUP     │
                   └─────────────┘
ComponentePinoConexãoTipo
Botão Terminal 1GPIO 0ESP32C3 GPIO 0Sinal
Botão Terminal 2GNDESP32C3 GNDTerra
USB-CD+/D-Computador/RobôSerial
Alimentação3V3/GNDFonte 3.3VPower

Nunca conecte tensões superiores a 3.3V aos pinos do ESP32C3. Isso pode danificar o microcontrolador permanentemente.

Resumo

O Kill Switch é um sistema simples mas robusto que combina hardware confiável (botão industrial + microcontrolador) com software bem estruturado (Rust + ROS 2) para garantir parada de emergência segura e rápida do robô Unitree.