Flujo de trabajo de diagramas de cableado de hardware
Trata las hojas de datos y los dibujos de conectores como la fuente de verdad eléctrica. Trata las fotografías de componentes como evidencia de colocación solo si las etiquetas de sus pads son legibles y su orientación no es ambigua.
1. Establecer el contrato de conexión
- Inventariar cada componente, conector, pin, señal, dominio de voltaje, orientación y formato de salida solicitado.
- Registrar la fuente autorizada y la revisión para cada asignación de pines. No inferir una asignación de pines a partir de una foto del producto cuando exista una hoja de datos o un esquema.
- Normalizar cada conexión en una lista de conexiones legible por máquina antes de dibujar. Usar números de pines físicos y nombres de señal juntos.
- Marcar explícitamente los pines desconocidos, opcionales, reservados, sin conectar y de fuente de alimentación. Detenerse antes de enrutar si una asignación de pines o voltaje crítico para la seguridad no está resuelto.
- Distinguir un diagrama de montaje/cableado de un esquema de principio. Mantenerlos sincronizados a través de la misma lista de conexiones incluso cuando solo se muestre uno al usuario.
Leer source-truth-and-orientation.md antes de interpretar placas rotadas, vistas reflejadas, fotografías inferiores o caras de acoplamiento de conectores. Leer electrical-rules.md para comprobaciones de señales y alimentación.
2. Planificar la hoja antes de enrutar
- Seleccionar A4 o A3 y reservar zonas para título, componentes, anotaciones de pines, notas y leyenda.
- Colocar el controlador principal cerca del centro visual. Poner los periféricos cerca del lado del controlador al que se conectan.
- Rotar la imagen del componente y su anotación juntos. Mantener cada anotación cerca del conector físico correspondiente.
- Usar una anotación de pines compacta cuando un cabezal de placa sea demasiado denso. Preservar el orden físico exacto después de la rotación o el reflejo.
- Mover las etiquetas a un lado libre antes de enrutar. Nunca enrutar a través de fotografías, etiquetas, números de pines o símbolos de contacto adyacentes.
Leer layout-and-callouts.md para la composición A3, la anotación de GPIO y los patrones de tarjetas de componentes.
3. Enrutar conexiones de forma determinista
- Enrutar ortogonalmente a menos que el proyecto requiera explícitamente otro estilo.
- Conectar desde el límite de un terminal etiquetado o pad hasta el límite de su destino. No detenerse antes, desaparecer debajo de una tarjeta ni cruzar por el centro del contacto.
- Reservar un canal por cable. Nunca colocar dos segmentos de conexión en el mismo segmento geométrico.
- Evitar cruces. Si un cruce es inevitable, mantenerlo a 90 grados, usar una convención de separación visible y nunca implicar una unión.
- Dibujar rutas debajo de los símbolos de terminal, luego redibujar los rellenos, números y etiquetas del terminal encima de las rutas. Preservar un punto final visible en el borde del contacto.
- Mantener las rutas paralelas separadas por al menos el espacio de canal configurado, incluyendo sus halos.
- Aplicar el mapeo de colores estable en visual-language.md; emparejar siempre el color con una etiqueta de señal.
Usar scripts/validate_wiring.py después de cada cambio de enrutamiento material. Tratar cualquier superposición, intersección no deseada, punto final colgante, etiqueta oscurecida o conexión eléctrica no válida como un candidato fallido.
4. Construir a partir de primitivas SVG reutilizables
- Comenzar desde wiring-a3-template.svg cuando no exista una plantilla nativa del proyecto.
- Mantener las fotos de componentes en
assets/o en el directorio de activos del proyecto y referenciarlas mediante una ruta relativa. - Asignar a rutas, terminales, etiquetas, componentes y regiones de exclusión identificadores estables y atributos semánticos
data-*. Seguir svg-annotation-contract.md. - Colocar las rutas en una capa dedicada debajo de los terminales y el texto. Usar un halo solo para separar las rutas del fondo; no usarlo para ocultar otra ruta.
- Preservar el SVG editable como fuente. Renderizar PNG/PDF solo como artefactos de revisión derivados.
5. Validar en capas
- Ejecutar el análisis estructural SVG y el validador de cableado.
- Verificar que cada punto final de la lista de conexiones exista exactamente una vez y que cada ruta termine en ambos puntos finales declarados.
- Verificar la dirección de la alimentación, la compatibilidad de voltaje, tierra común, cruce de UART y requisitos específicos del bus.
- Verificar la numeración física contra la orientación real mostrada, incluyendo los indicadores de pin 1 y las filas pares/impares.
- Renderizar la hoja completa y recortes de primer plano de cada conector modificado.
- Inspeccionar al tamaño de impresión previsto. Los números de pin, nombres de señal, identidad del cable, contacto del punto final y advertencias deben permanecer legibles.
- Volver a renderizar después de cada edición SVG; nunca informar éxito solo a partir de la inspección del código fuente.
Usar scripts/render_svg.py. En Codex Desktop, cargar dependencias del espacio de trabajo cuando estén disponibles; el renderizador también detecta automáticamente el Node.js y Sharp empaquetados para la salida PNG.
Leer validation-gates.md antes de declarar finalización. Leer failure-patterns.md al reparar un diagrama existente.
6. Entregar con veracidad
- Entregar el SVG editable, un PNG renderizado y PDF cuando se solicite.
- Indicar la asignación exacta de pin a pin para las conexiones recién agregadas o modificadas.
- Indicar qué asignaciones de pines fueron verificadas de la fuente y qué suposiciones permanecen.
- Informar
completedsolo cuando las puertas estructural, eléctrica, de enrutamiento y visual estén superadas. - Informar
blockedcuando no se pueda establecer una asignación de pines autorizada, clasificación de voltaje, orientación del conector o interpretación de la cara de acoplamiento. - Nunca afirmar que una ruta visualmente plausible prueba la corrección eléctrica.