Open Duck Mini v2: das peças ao primeiro passo

Três verificações antes do primeiro teste de montagem motorizada

Para Open Duck Mini v2 padrão em b23317a. Use esses cartões junto com o manual original. As fotos e CAD abaixo são referências do autor original; este site não montou o robô.

1. Servo IDs e alinhamento da buzina

Prepare: Um servo desmontado, seu adaptador de alimentação e barramento e as instruções configure_motors correspondentes. A configuração escreve um ID e move o servo para zero.

Fotografia de alinhamento da buzina servo · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · referência original
Fotografia de alinhamento da buzina servo · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · referência original ↗

Verifique em ordem

  1. Configure um servo por vez, mantendo as peças móveis desobstruídas; encaixe a buzina após o movimento da posição zero.
  2. Identifique a perna esquerda 20–24, a perna direita 10–14, o pescoço 30 e a cabeça 31–33. Mantenha o mapeamento original do nome da junta.
  3. Registre o ID, o alinhamento da buzina e qualquer desvio de calibração posterior antes de fechar o conjunto.

Pronto para continuar quando: Cada uma das 14 juntas possui um ID registrado e a buzina corresponde à referência do autor.

Se a verificação falhar: Não copie os comandos zero/limite do HD1910. Verifique novamente o servo selecionado e o procedimento de configuração original.

Copiar lista de verificação
1. IDs dos servos e alinhamento da buzina
1. Servo IDs and horn alignment
Prepare: One unassembled servo, its power and bus adapter, and the matching configure_motors instructions. Configuration writes an ID and moves the servo to zero.
□ Configure one servo at a time, keeping moving parts clear; fit the horn after the zero-position move.
□ Label left leg 20–24, right leg 10–14, neck 30 and head 31–33. Keep the original joint-name mapping.
□ Record the ID, horn alignment and any later calibration offset before closing the assembly.
Ready to continue when: Each of the 14 joints has one recorded ID and the horn matches the author’s reference.
If the check fails: Do not copy HD1910 zero/limit commands. Recheck the selected servo and original configuration procedure.

2. Montagem das pernas esquerda e direita

Prepare: Peças de perna impressas, servos etiquetados e os desenhos originais de montagem dos pés aos quadris.

Referência CAD de montagem de pernas · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · referência original
Referência CAD de montagem de pernas · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · referência original ↗

Verifique em ordem

  1. Construa os dois pés da mesma maneira; coloque o lado do acionador do motor conforme mostrado ao lado do foot_top.
  2. Use o left_roll_to_pitch e o right_roll_to_pitch corretos nos quadris; mantenha os IDs dos servos esquerdo/direito anexados à perna correspondente.
  3. Verifique a orientação do quadril, o roteamento dos cabos e a folga antes de fixar as pernas ao tronco.

Pronto para continuar quando: As duas pernas correspondem ao CAD original, as etiquetas são legíveis e nenhum cabo está preso.

Se a verificação falhar: Retorne ao desenho de montagem relevante. Não use uma imagem espelhada como referência de identificação ou orientação.

Copiar lista de verificação
2. Montagem das pernas esquerda e direita
2. Left and right leg assembly
Prepare: Printed leg parts, labelled servos and the original feet-to-hips assembly drawings.
□ Build both feet the same way; place the motor driver side as shown beside foot_top.
□ Use the correct left_roll_to_pitch and right_roll_to_pitch at the hips; keep left/right servo IDs attached to the corresponding leg.
□ Check the hip-pitch orientation, cable routing and clearance before fastening the legs to the trunk.
Ready to continue when: The two legs match the original CAD, labels are readable and no cable is pinched.
If the check fails: Return to the relevant assembly drawing. Do not use a mirrored picture as an ID or orientation reference.

3. Fiação de energia, barramento e IMU

Prepare: Uma bateria desconectada, a visão geral/diagramas de fiação detalhados originais e a configuração do tempo de execução.

Diagrama de fiação de alimentação e módulo · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · referência original
Diagrama de fiação de alimentação e módulo · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · referência original ↗

Verifique em ordem

  1. Rastreie a bateria, o BMS e a alimentação do servo em relação ao diagrama, verificando a polaridade e os números dos pinos do conector.
  2. Forneça o Pi através do caminho regulado separado de 5 V. Nunca conecte a tensão da bateria diretamente ao pino Pi 5 V.
  3. Compare a montagem da IMU e a orientação do tempo de execução e confirme como a energia pode ser desconectada antes de iniciar a calibração.

Pronto para continuar quando: A fiação desconectada foi verificada em relação aos diagramas originais e à configuração correspondente.

Se a verificação falhar: Mantenha a alimentação desconectada até que a incompatibilidade seja compreendida. Não ignore a proteção da bateria para diagnosticar uma reinicialização.

Copiar lista de verificação
3. Fiação de alimentação, barramento e IMU
3. Power, bus and IMU wiring
Prepare: A disconnected battery, the original overview/detail wiring diagrams and the Runtime configuration.
□ Trace battery, BMS and servo power against the diagram, checking polarity and connector pin numbers.
□ Supply the Pi through the separate regulated 5 V path. Never connect battery voltage directly to the Pi 5 V pin.
□ Compare the IMU mounting and runtime orientation, and confirm how power can be disconnected before starting calibration.
Ready to continue when: The disconnected wiring has been checked against both original diagrams and the matching configuration.
If the check fails: Keep power disconnected until the mismatch is understood. Do not bypass battery protection to diagnose a restart.

Continue com as etapas originais de montagem e calibração ↗

Lista de impressão completa: 36 arquivos, 51 partes

O guia original especifica PLA com preenchimento de 15%; apenas foot_bottom_tpu.stl usa TPU a 40%. A altura da camada, contagem de paredes, suportes, orientação e temperaturas não são totalmente especificados. Faça um teste de ajuste de um pé e de uma junta estrutural antes de imprimir o lote. Os links de arquivos abaixo abrem os originais fixados.

Lista de impressão completa: 36 arquivos, 51 partes
Arquivo STL originalQuantidadeMaterial/preenchimento
foot_top.stl2PLA/15%
foot_side.stl2PLA/15%
foot_bottom_pla.stl2PLA/15%
foot_bottom_tpu.stl2TPU/40%
knee_to_ankle_left_sheet.stl4PLA/15%
knee_to_ankle_right_sheet.stl4PLA/15%
leg_spacer.stl4PLA/15%
left_roll_to_pitch.stl1PLA/15%
right_roll_to_pitch.stl1PLA/15%
roll_motor_bottom.stl2PLA/15%
roll_motor_top.stl2PLA/15%
trunk_bottom.stl1PLA/15%
trunk_top.stl1PLA/15%
neck_left_sheet.stl1PLA/15%
neck_right_sheet.stl1PLA/15%
head_pitch_to_yaw.stl1PLA/15%
head_yaw_to_roll.stl1PLA/15%
head_roll_mount.stl1PLA/15%
head.stl1PLA/15%
head_bot_sheet.stl1PLA/15%
left_antenna_holder.stl1PLA/15%
right_antenna_holder.stl1PLA/15%
left_cache.stl1PLA/15%
right_cache.stl1PLA/15%
body_front.stl1PLA/15%
body_middle_bottom.stl1PLA/15%
body_middle_top.stl1PLA/15%
body_back.stl1PLA/15%
battery_pack_lid.stl1PLA/15%
bulb.stl1PLA/15%
flash_light_module.stl1PLA/15%
flash_reflector_interface.stl1PLA/15%
left_eye.stl1PLA/15%
right_eye.stl1PLA/15%
speaker_interface.stl1PLA/15%
speaker_stand.stl1PLA/15%
Aplica-se ao Open Duck Mini v2. Este roteiro de leitura independente conecta os documentos originais do projeto. Ele não certifica uma construção concluída por este site. Use as fotografias e diagramas vinculados durante a montagem; eles carregam detalhes que uma visão geral do texto não pode substituir.

1. Fixe o projeto e prepare o orçamento.

Abra o hub do projeto original ↗ e a lista de materiais original ↗. Salve uma cópia datada antes de comprar. O guia Tnkr vinculado ao autor ↗ também apresenta componentes e quantidades: sua tabela revisada lista 14 servos Feetech 7,4 V STS3215, um Raspberry Pi Zero 2 W e um IMU BNO055. Este é um inventário inicial, não a lista de compras completa.

Defina o preço da variante exata, quantidade entregue, frete, peças impressas, ferramentas e peças de reposição em seu próprio local. A meta histórica de menos de US$ 400 do projeto não é uma cotação atual de checkout. Não trate duas listagens com nomes de servo semelhantes como equivalentes.

Ponto de verificação: cada peça possui origem, variante e quantidade; cada substituição tem uma nota de compatibilidade não resolvida até ser verificada.

2. Imprima e inspecione as peças.

O guia de impressão original ↗ especifica PLA com 15% de preenchimento, exceto foot_bottom_tpu.stl, que usa TPU com 40%. Ele lista as quantidades para cada arquivo. Siga essas contagens: várias peças de perna precisam de quatro cópias e as partes espelhadas esquerda/direita são distintas.

Registre as configurações da sua impressora, material e fatiador. Inspecione uma amostra de junta e insira o ajuste antes de repetir um lote inteiro. Arquive os resultados em seu log de construção para que uma reimpressão posterior use a mesma linha de base.

Ponto de verificação: a lista de impressão é contabilizada e você pode identificar cada par espelhado. Baixe arquivos de fabricação deste projeto, em vez de malhas de simulação MicroDuck.

3. Dê a cada servo sua identidade antes da montagem.

Instale o tempo de execução v2 em seu computador ou Raspberry Pi usando as instruções de configuração do tempo de execução ↗ antes desta etapa; a guia do motor permite qualquer uma das máquinas. O procedimento original configura um motor por vez e o move para uma posição de referência antes da instalação da buzina. Siga o guia de configuração do motor ↗ e inspecione o script de configuração real ↗. Ele grava configurações e comanda o movimento; este não é um comando de descoberta passivo.

Servo IDs de referência apenas para Open Duck Mini v2
ConjuntoEsquerdaCerto
Guinada de quadril2010
Rolo de quadril2111
Passo do quadril2212
Joelho2313
Tornozelo2414

A inclinação do pescoço é 30 ; inclinação da cabeça, guinada e rotação são 31, 32 e 33. Identifique os motores configurados antes de colocá-los na estrutura.

Inspecione as opções de configuração do repositório de tempo de execução instalado
python scripts/configure_motor.py --help

O script revisado reside em scripts/ e aceita --port e --id. Sua porta padrão é /dev/ttyACM0 ; use o dispositivo conectado real. Em uma ferramenta do fabricante, confirme as unidades de posição antes de inserir um valor: o ângulo zero de uma biblioteca não é necessariamente o zero bruto do codificador.

Por exemplo, com apenas o servo de guinada do quadril esquerdo desmontado conectado e livre para se mover, o seguinte atribui o ID 20. Substitua a porta pelo seu dispositivo; configure os motores restantes individualmente usando a tabela.

Configure um servo desmontado — comanda o movimento
python scripts/configure_motor.py --port /dev/ttyACM0 --id 20

Ponto de verificação: cada motor possui uma etiqueta exclusiva e a posição de referência pretendida. Conclua esta etapa antes de travar a orientação da buzina.

4. Monte a estrutura com o guia ilustrado.

Trabalhe nas fotografias originais da montagem ↗: tronco, pés, canelas, coxas, quadris, pescoço, cabeça e corpo. Siga as etapas de roteamento de cabos antes de fechar uma junta. O guia pede um pouco de trava-roscas em parafusos de motor de metal com metal, com instruções separadas para não usá-lo em parafusos de plástico.

O documento revisado ainda deixa o total exato do parafuso M3, uma foto da placa do servo e algumas instruções de recursos de expressão inacabadas. Verifique o guia de montagem interativo ↗ para visualizações adicionais; resolva qualquer questão de ajuste ou montagem restante antes de prosseguir.

Ponto de verificação : as peças ficam na orientação mostrada e as juntas móveis deixam espaço para cabos. Salve as fotos antes de fechar o shell.

5. Verifique a fiação e a orientação do sensor.

Use o diagrama eletrônico e as tabelas de pinos na mesma revisão de montagem ↗. Eles distinguem os números dos pinos físicos dos números BCM GPIO. Rastreie cada conexão em relação à coluna correta. A nota da IMU também explica que uma foto mais antiga mostra uma montagem invertida.

Antes de conectar a alimentação, confirme a polaridade, a alimentação especificada para cada placa e o isolamento dos condutores expostos. A montagem da bateria requer habilidades eletrônicas adequadas; use as instruções originais da bateria e as especificações dos componentes, não uma suposição genérica de cor de três fios.

Ponto de verificação: registre a revisão do diagrama, sua orientação IMU e quaisquer alterações na fiação. Uma fotografia da construção de outra pessoa não confirma suas conexões.

6. Prepare o Raspberry Pi usando uma rota de instalação.

Disponibilidade de imagem: as instruções da imagem ↗ descrevem uma configuração pré-construída para referência de hardware Raspberry Pi Zero 2 W. No entanto, nossa verificação de versões públicas ↗ encontrou uma versão fonte V2-Classic sem arquivos de imagem anexados. Não foi possível verificar o download da imagem anunciada, então use o caminho manual abaixo. Se uma imagem estiver disponível, verifique sua correspondência de hardware, configure suas próprias credenciais e conclua a calibração.

Rota manual: siga o README do tempo de execução ↗ para Raspberry Pi OS Lite de 64 bits, interfaces, emparelhamento de controlador e seu ambiente Python. Use uma verificação separada para a revisão de tempo de execução revisada:

Criar uma cópia local da revisão examinada do runtime Open Duck Mini
git clone https://github.com/apirrone/Open_Duck_Mini_Runtime Open_Duck_Mini_Runtime-reviewed
cd Open_Duck_Mini_Runtime-reviewed
git checkout --detach 376de65435c93486347cd601a31aa96951799896

Em seguida, conclua a instalação da dependência no ambiente descrito por esse README. Registre uma versão de imagem ou revisão de origem no log para que a depuração futura comece a partir da mesma configuração.

7. Calibre este robô e teste suas entradas.

Use as instruções de tempo de execução para criar ~/duck_config.json, verificar o IMU e medir os deslocamentos conjuntos. A configuração de exemplo ↗ separa orientação IMU, deslocamentos de juntas e recursos de expressão opcionais. Preencha-os a partir da sua construção; os valores de compensação de outro fabricante não são a sua calibração.

O script de verificação do motor ↗ permite torque e oferece testes de movimento. Apoie o robô com folga nas juntas antes de usá-lo e leia cada aviso. Pare em caso de falha na resposta motora, em vez de tratar o resto do teste como uma aprovação.

Use a lista de verificação pré-política original ↗ para verificar as posições e deslocamentos das juntas, orientação da IMU e interruptores de pedal. Mantenha separados os olhos opcionais, antenas, alto-falantes e verificações de câmera. Confirme se o gamepad responde antes de tentar caminhar.

Checkpoint: salve sua configuração e registre a resposta observada de cada entrada. Uma instalação bem-sucedida por si só não passa desta fase.

8. Experimente a política de primeira visita correspondente.

A seção de primeira caminhada do tempo de execução ↗ vincula BEST_WALK_ONNX_2.onnx para este robô. Mantenha sua fonte com sua versão de tempo de execução. Revise o script de caminhada e os controles ↗ antes de iniciá-lo em uma área de teste clara e com suporte.

Para este tempo de execução, o botão do gamepad alterna a pausa da política. Pausa não significa que a alimentação do motor está desconectada: o script liga o hardware antes de sua malha de controle. Mantenha o interruptor de alimentação físico acessível. A configuração de exemplo também padroniza start_paused para false ; escolha o estado de inicialização pretendido antes de executar.

Após as verificações acima, ative o ambiente de execução instalado, entre em seu diretório scripts/ e use o formulário de comando original abaixo. Substitua o caminho do modelo pelo arquivo que você baixou para este robô.

Inicialização somente após calibração e verificações de entrada
python v2_rl_walk_mujoco.py --onnx_model_path /absolute/path/BEST_WALK_ONNX_2.onnx

Comece com uma breve observação, pare, inspecione o robô e registre o que aconteceu. Use apenas o formato de política e a combinação de hardware documentados para este tempo de execução. Um arquivo MicroDuck ONNX não é uma política drop-in do Open Duck Mini.

Treinar uma nova marcha vem depois. As notas sim-to-real do projeto ↗ explicam o modelo do robô, identificação do atuador, Open Duck Playground e rota de movimento de referência; esse documento está marcado como inacabado.

Mantenha um registro que você possa retomar.

Diário de montagem do Open Duck Mini
Robô: Open Duck Mini v2
Revisão do repositório de hardware: b23317a485b3cec7d8417f352478778b3475173c
Revisão do runtime ou versão da imagem:
Data da lista de materiais / custo local com entrega:
Revisão das peças impressas / material / ajustes do fatiador:
Modelo de servo e etiquetas de ID:
Revisão do diagrama de fiação / alterações:
Orientação da IMU / resultado da calibração:
Cópia dos offsets das juntas em:
Verificações de sensores dos pés e controle:
Arquivo da política / fonte / hash:
Condições do primeiro teste e resultado observado:
Problema pendente / próxima verificação:

Diagramas de fiação originais

Diagrama original de alimentação e ligação dos módulos do Open Duck Mini v2
Diagramas originais do Open Duck Mini v2 · Repositório de Antoine Pirrone · Apache 2.0. O Pi usa um regulador separado de 5 V; não conecte o trilho da bateria diretamente ao pino Pi 5 V.

Abra o diagrama de fiação detalhado em resolução total ↗