Apague un circuito USB de la manera correcta

Me gustaría encender correctamente un dispositivo USB (banco de alimentación USB de 2,4 A https://www.amazon.com/Anker-20100mAh-Portable-Charger-PowerCore/dp/B00X5RV14Y/ref=sr_1_3?ie=UTF8&qid=1512261941&sr= 8-3 ) que consta de:

  • Un divisor en Y USB de solo alimentación económico
  • Frambuesa pi cero
  • Un convertidor boost de 5V USB a 12V
  • 4 LED en serie
  • Un ULN2003A utilizado para controlar un motor paso a paso unipolar
  • Algún tipo de salida gráfica (OLED/LCD de caracteres)

Sumando todos los valores actuales respectivos juntos, el máx. El consumo de corriente de mi dispositivo debe ser:
180mA RPi Zero + 500mA LED (384mA para una transformación perfecta, asumí 75% de eficiencia) + 165mA Stepper Motor + 165mA Character LCD = 1010mA consumo de energía total.

Lo que sé hasta ahora:

Habiendo profundizado (y abrumado por) la especificación USB, descubrí que USB puede, en algunas circunstancias, suministrar 5V @ 1.5A (o incluso más).

En el pasado, aparentemente solía haber una especie de proceso de apretón de manos (enumeración/negociación/...) que era necesario para permitir >100 mA. Encontré un artículo que explica algunos aspectos de la carga USB: http://www.electronicdesign.com/interconnects/introduction-usb-power-delivery

Es importante tener en cuenta que BC-1.1 se lanzó como un Aviso de cambio de ingeniería (ECN) a USB 2.0 y se desvió significativamente de las sanciones de USB 2.0. Según USB 2.0, cualquier dispositivo USB puede clasificarse como de baja potencia (5 V a 100 mA) o de alta potencia (5 V a 500 mA). En la conexión, se permitió que un dispositivo USB consumiera una corriente de 100 mA inicialmente mientras enumeraba y negociaba su presupuesto de energía con el host. Según la enumeración, el host aumentaría la entrega de energía a 2,5 W o continuaría a 0,5 W.

La especificación de carga de la batería pasó a definir más fuentes de energía de las recomendadas anteriormente:

  1. Puerto de bajada estándar (SDP): fuente de alimentación compatible con USB 2.0 Spec.

  2. Puerto de carga descendente (CDP): fuente de alimentación no compatible con USB 2.0. CDP puede suministrar hasta 7,5 W (5 V, 1,5 A) y la corriente de 1,5 A se puede suministrar antes de la enumeración.
    ...

  3. Puerto de carga dedicado (DCP): no hay enumeración aquí y la carga se produce sin ninguna conexión digital. DCP suministra hasta 1,5 A y 5 V.

Ha habido una pregunta similar antes ( alimentación "tonta" de USB ), pero no menciona SDP y CDP. Aparentemente, puede lograr el modo CDP cuando corta las líneas de datos juntas.

Mi pregunta:

  1. ¿Puedo obtener la potencia completa de 5 V 1,5 A (o incluso 1,8 A) de un puerto ideal (100 % compatible con el estándar USB, siguiendo el protocolo) sin ninguna enumeración/registro/...
  2. ¿Puedo obtener la potencia completa de 5V 1.5A (o incluso 1.8A) de un puerto del mundo real (un banco de energía decentemente robusto como el Anker en el enlace de Amazon) sin ninguna enumeración/registro/...
  3. En caso de que necesite una negociación, ¿no podría el Pi simplemente manejarlo en nombre de ambos lados del divisor en Y (terminan en un puerto Micro-USB, por lo que el banco de energía ni siquiera debería saber que el cable se divide en algún lugar aguas abajo? ...

Así es como tengo la intención de conectarlo:Mi cableado previsto

En realidad, para las cosas de Anker, probablemente deba consultar la especificación de carga rápida. Sé que algunos de sus dispositivos lo usan. qualcomm.com/products/features/quick-charge Me sorprendería si los cargadores tuvieran un controlador de host USB que requiriera un apretón de manos.
Los bancos de energía USB no implementan ninguna señalización USB en absoluto, pero impulsar la conversión aquí es probablemente un error. Busque un paquete de ~12v bien diseñado y use un regulador de conmutación para alimentar las cargas de 5v desde él.
Desde un banco de energía realista, puede obtener la corriente completa sin hacer ninguna negociación. Además, si tiene varios puertos, cada uno con un límite actual en la etiqueta, todos los que probé solo tenían los puertos conectados en paralelo, por lo que probablemente pueda obtener el límite completo de un puerto.
@ChrisStratton Ojalá pudiera hacerlo, pero realmente necesito la abundancia de USB. Mi dispositivo se usará sobre la marcha, por lo que llevar mi banco de energía normal Y un banco de energía de 12 V dedicado sería una gran molestia. ¿Es el convertidor elevador de 5V -> 12V en su mente solo una solución no óptima o completamente incorrecta?

Respuestas (2)

Estás abordando el problema al revés.

En primer lugar, todos los protocolos de carga BC/QC, etc. se utilizan principalmente para DISPOSITIVOS, por lo que los dispositivos pueden comprender la capacidad de la fuente y luego configurarse internamente para alinear su consumo con la fuente. Podría haber otra etapa para negociar el nivel de voltaje, pero en este caso tanto el proveedor como el consumidor deben usar el mismo protocolo/estándar.

El powerbank ANKER es solo una fuente de 5 V 2,4 A. Ni siquiera sigue ningún estándar anunciado. Su "PowerIQ" es pura tontería .

( Descargo de responsabilidad: solía haber ideas de cargadores inteligentes que se suponía que cambiaban el estándar anunciado y seleccionaban el "mejor" según el consumo máximo de corriente. El problema es que los teléfonos también usan algo de inteligencia y toman diferentes cargas según el estado de la batería. carga, por lo que el algoritmo no converge. Estos "cargadores" pueden funcionar un poco mejor que los tontos, pero no hay garantía).

Por lo tanto, si tiene el banco de energía Anker, no necesita hacer nada, solo divida el poder como usted mismo sugirió.

Con respecto a sus preguntas específicas,

(1) No, no puede estar seguro de que cualquier puerto USB (Tipo A heredado) le permita consumir 1,5 A. Si bien, por lo general, puede hacer mucho más que eso, algunos puertos pueden tener límites actuales establecidos para 500-600- 900 mA, por lo que el puerto detectará sobrecorriente y se cerrará; [Un puerto 100 % compatible con el estándar USB y que sigue el protocolo con capacidad de 1,5 A debe diseñarse específicamente como "puerto de carga" y debe etiquetarse explícitamente como tal.]

(2) Sí, si un banco tiene una capacidad nominal superior a 1,8 A (por ejemplo, 2100 mA), puede extraer 1,8 A de él sin preocupaciones;

(3) Dado que este es un caso en el que no necesita hacer nada, la pregunta es discutible. Pero no, Pi-3 o lo que sea no puede manejar ninguna de las "negociaciones", incluso si el banco sigue uno de los estándares de carga inteligente. Primero, el puerto de la fuente de alimentación en Pi no tiene ninguna conexión a los pines D+/D-. En segundo lugar, para iniciar negociaciones, necesitaría un IC especial diseñado para esto.

De hecho, muchos Android basados ​​en Quallcom aplican uno de varios protocolos de control de calidad y mi teléfono se carga usando 12 V (¿o tal vez incluso un voltaje más alto?) en 1 hora del 5 % al 85 % con un cargador QC2.0 y/o el compatible. power-bank, pero toma más de 3 horas para lo mismo en un power bank barato y llorón de 2.4A. Sin embargo, eso es solo un aparte de su pensamiento tangencial y no pretende restar valor a otros elementos.
@Asmyldof, sí, si un dispositivo y un cargador tienen un protocolo de control de calidad integrado, "negociarán" un voltaje más alto y, por lo tanto, cargarán su dispositivo con control de calidad bastante más rápido. Entonces, ¿cómo es una sorpresa y cómo contradice mi respuesta? Además, no aplican "varios protocolos de control de calidad", el protocolo es solo uno, QC, actualmente en la versión 4+, que es compatible con versiones anteriores de control de calidad 3.0, 2.0 y 1.0.
@AliChen ¡Muchas gracias por su respuesta, realmente aclaró las cosas! Digamos que enchufo mi artilugio en un puerto USB no compatible (por ejemplo, un banco de energía <1A o un puerto USB de una computadora portátil), ¿me arriesgaría a dañar el banco/la computadora portátil debido a una sobrecorriente (supongo que depende de si tiene algún tipo de detección de sobrecorriente incorporado) o mi artilugio simplemente tendría poca potencia?
@iMrFelix, si intenta obtener más de 500-900 mA de corriente de un puerto USB normal (sin carga) con el cambio de alimentación implementado, el puerto simplemente se apagará y el sistema operativo mostrará un mensaje emergente "sobrecorriente del puerto ". Podría estar protegido electrónicamente, de un "polyfuse" reiniciable puede dispararse y recuperarse más tarde. Podría ser un caso en el que el voltaje simplemente caiga, entonces es probable que su Pi Zero no funcione correctamente. No espero ningún daño a nada que se adquiera a través de la industria minorista.
@AliChen Cool, una pregunta más y creo que voy a estar listo después de eso (es más una pregunta subjetiva): si tuviera que comercializar mi dispositivo, ¿estaría bien alimentarlo como lo he hecho ahora (desde un seguridad/regulatorio/mejor práctica/no puede ser demandado por prender fuego a su casa - punto de vista)? Me gustaría mantener el puerto USB debido a su abundancia, pero el divisor en Y interno sería reemplazado por una solución más rígida. También vendría con un descargo de responsabilidad de que solo debe ser alimentado por bancos de energía> 1.8A de salida. ¡Muchas gracias por su apoyo!

A pesar de que estoy demasiado cansada y soñolienta y todo eso para abrir las especificaciones y buscar algunos detalles para consultar, este comentario se convirtió en una respuesta demasiado larga, así que aunque comenzó sintiéndose más como un comentario, lo publico. como respuesta ahora. Haz con él lo que quieras;

Básicamente, su pregunta se reduce a, creo:

"¿Necesito negociación para un conjunto muy específico de situaciones?" (como saber que definitivamente siempre estará conectado a un DCP)

Lo cual creo que es un "no", sin abrir los documentos estándar y las pautas que tengo por ahí.

Seguido por:

"Para poder enchufarlo en cualquier lugar sin dañarlo, ¿necesito negociar?"

Lo cual ciertamente es sí, aunque con el hardware moderno es poco probable que se produzcan daños duraderos.

Por último:

Su Pi Zero puede hacer la negociación, si cuenta con un Atmel (o cualquier otro chip en cualquier otra placa) con USB incorporado, para el cual se pueden escribir los controladores correctos. Puede ser una tarea molesta averiguar si las pilas integradas se pueden usar para la administración avanzada de energía y cómo, y estoy seguro de que en algún lugar hay un chip medio decente por no demasiado dinero para hacerlo. Probablemente con bus SPI o I2C para la configuración. Seguramente alguien debe haber hecho un tablero con uno, pero posiblemente sea más difícil de encontrar.

¡Gracias por el aporte! Solo para que te haya entendido correctamente: aunque no necesito ninguna negociación para mi caso específico, si tuviera que conectarlo a otra fuente (por ejemplo, un puerto USB normal de una PC en lugar de un banco de energía> 2A), podría riesgo de daño?