Estaba leyendo Sonda de alcance USB: solicitud de comentarios e ideas , y me hizo pensar. Lo que realmente me gustaría es un osciloscopio de muy alto rendimiento, uno que costaría $ 10000 más o menos. Seguro que a muchas otras personas también les gustaría uno. Y seguramente, con la experiencia disponible en este sitio, debería ser posible diseñar y abrir uno.
Aquí está mi idea:
¿Es esto una tontería? ¿Qué me estoy perdiendo?
Agregado, más detalles en respuesta a las respuestas:
Llévate puntos a casa:
Esto se reduce a una cuestión de ancho de banda y latencia. Para un sistema simple, supongamos una sonda con un ancho de banda de 100 MHz con una frecuencia de muestreo de 1GS/s y un convertidor A/D de 10 bits (he tenido malas experiencias con osciloscopios de 8 bits).
Quiero una pantalla en tiempo real en la PC con una ventana de muestreo mínima de digamos 10ns - 1 ciclo de una onda sinusoidal de 100MHz y una ventana máxima de (seré generoso con usted en esto) medio segundo. En otras palabras, la configuración de tiempo más baja será algo así como 1 ns/div y la más alta es 0,05 s/div. También quiero varios modos de voltaje: digamos, un rango de 100 mV hasta 20 V.
¿Qué tipo de tasas de datos implica esto?
1 Gs/s * 10 bits/muestra = 10 Gbits/s
Esas no son velocidades USB. Lejos de ahi. Y ni siquiera tomé en cuenta los gastos generales. En primer lugar, simplemente no tienes el ancho de banda. Y tampoco es solo el ancho de banda. Para su visualización en tiempo real, debe ser consistente. Debe transferir 100 bits a su capa de aplicación cada 10 nanosegundos. Ese tipo de consistencia no se puede tener desde USB. No está diseñado para atender a un dispositivo con demandas extravagantes: está diseñado como un autobús. Y no puede controlar cuándo es el propietario del bus: los dispositivos son solo esclavos. Si el host permite que otro dispositivo hable cuando necesita enviar datos, sus datos se pierden.
Es posible que se esté quejando: ¿por qué transferir datos en tiempo real a la computadora cuando el 'tiempo real' para una persona es de 60 Hz? Si todo lo que necesita hacer es actualizar la pantalla, ciertamente no necesita tantos datos. Excepto que usted lo hace: su pantalla es una combinación lineal de todas las muestras que ha recopilado. Interpolación spline cúbica promediada, aproximada por mínimos cuadrados medios, no importa. Para hacer una pantalla bonita y bonita que no sea solo un montón de puntos, necesita la mayoría de todos esos datos y necesita procesarlos posteriormente. ¿Algún desencadenante? Los cálculos deben realizarse en el host, en la capa de aplicación. No importa de qué manera lo divida, para visualizaciones en tiempo real a velocidades de 1 GS/s para cualquier precisión que valga la pena, tiene que transferir órdenes de magnitud más datos de los que puede manejar el USB y tiene que hacerlo de manera más confiable que usted.
¿Cuáles son las formas de evitar esto? No hagas una visualización en tiempo real. Algunos osciloscopios USB solo ofrecen modos activados. La activación se maneja en el dispositivo y cuando se encuentra un activador, los datos se recopilan en un búfer. Cuando el búfer se llena, el osciloscopio USB lo transfiere lentamente a la aplicación y luego la aplicación lo muestra. Eso es suficiente para una gran cantidad de uso del osciloscopio, pero no es en tiempo real. Y la transferencia, eso también lleva un tiempo. es inconveniente Y normalmente los conductores apestan. Se nota que he tenido malas experiencias.
Siempre me he preguntado por qué no se usó Firewire para los visores. Evita algunos de los dolores de cabeza del USB. Es peer-to-peer, ofrece modos isócronos (tiempo constante) y tiene un ancho de banda relativamente alto. Es posible que pueda hacer un osciloscopio en tiempo real de 10 MHz más o menos con eso.
Para abordar sus puntos después de la edición:
La facilidad de uso de un visor aumenta enormemente con el precio. Cuando das el salto de un osciloscopio USB de $200 a incluso uno independiente de $500, obtienes enormes mejoras en las características y la funcionalidad básica. ¿Por qué gastar solo $ 200 cuando por un poco más puede obtener un visor real? Ahora que China ha abierto las compuertas de alcances baratos y efectivos, hay pocas razones para querer ahorrar $ 300 que lo frustrarán más adelante. Los visores 'de lujo' que tienen estas características son baratos hoy en día.
Sí, limitar su transferencia de datos para proporcionar solo algo alrededor de 60 Hz de datos consistentes será más fácil con USB, pero eso todavía no es algo que desee hacer. No se olvide de sus clases de DSP: solo obtener ciertos datos de la transmisión equivale a la aniquilación. Cuando diezmas, tienes que añadir filtros antialiasing. Cuando haces eso, pierdes ancho de banda. Esto hace que su alcance sea menos útil: limitará su ancho de banda en la pantalla en tiempo real (y solo para tiempo real; los modos activados estarían bien) a mucho menos que el ancho de banda de su interfaz analógica. Administrar los aspectos de procesamiento de señales de un osciloscopio es un asunto complicado.
¿Pantalla sensible clara? ¿La computadora? No consistentemente. Independientemente de cómo haga esto, necesita almacenar los datos en el búfer. Como dije antes, el USB no garantiza cuándo se transferirán sus datos. Lo diré de otra manera: el USB no está diseñado para adaptarse a la transferencia de datos en tiempo real. Claro, para cantidades de datos suficientemente pequeñas a intervalos grandes, puede obtener un buen rendimiento, pero no un rendimiento constante. UTILIZARÁ el almacenamiento en búfer y, de vez en cuando, Echará de menos transferir su búfer de manera oportuna. Luego, su pantalla salta, los datos están obsoletos, etc., etc. Las pantallas claras y receptivas en tiempo real requieren enlaces de datos en tiempo real, punto.
Activación simple: nuevamente, volvemos al costo frente a la complejidad frente a la capacidad de respuesta. Para activar en el dispositivo para detectar transitorios, su dispositivo no puede ser simplemente un canal de datos tonto que transfiere muestras irresponsablemente a través de USB. Tienes que amortiguar, amortiguar, amortiguar muestras en el dispositivohasta que vea su condición de activación. Eso significa que necesita memoria e inteligencia en su dispositivo, ya sea un FPGA grande o un microcontrolador grande. Eso aumenta el tamaño y el espacio. Si usa un FPGA, debe equilibrar la cantidad de lógica de activación con su necesidad de mucha RAM para el espacio de búfer. Por lo tanto, su búfer es más pequeño de lo que le gustaría que fuera. Eso significa que obtiene una cantidad minúscula de datos alrededor de su punto de activación. A menos que agregue memoria externa, entonces puede hacer más. Sin embargo, eso aumenta el tamaño y el costo de su dispositivo; ciertamente, esto no será solo una sonda con un cable USB conectado.
Tendría suerte si obtiene un ancho de banda de 100 MHz; por lo general, 10 veces la frecuencia de muestreo se considera el límite mínimo para el ancho de banda. Entonces, si tiene una frecuencia de muestreo de 1GS / s, apenas obtiene un ancho de banda de 100MHz. No puede obtener más: una onda cuadrada de 200 MHz se verá como una onda sinusoidal de 200 MHz. Eso apesta. Eso es tonto, no está ni cerca del nivel profesional.
Su otro conjunto de puntos:
Vives y mueres por tu equipo de prueba como ingeniero. Si no está seguro de poder confiar en él, está perdiendo el tiempo. Dada la falta de experiencia que ha demostrado sobre la comunicación de alta velocidad, el procesamiento de señales y el poder del procesamiento integrado (en FPGA o microcontroladores), no apostaría a que está dispuesto a diseñarlo usted mismo y nadie más que haya respondido es nada. aparte de ambivalente.
Si hubiera un conjunto de requisitos mejor enfocados que respondieran a una necesidad real en la comunidad que no estaba siendo atendida, que pudiera ver como técnicamente factible, estaría a bordo. Pero sus vagos requisitos no parecen investigados. Debe hacer una encuesta de las opciones disponibles para los aficionados: qué alcances USB e independientes están usando las personas, cuáles son sus fortalezas y debilidades, y determinar si no se está llenando algún nicho. De lo contrario, esto es solo fantasear.
No querrá que tenga un formato de sonda portátil, ya que un osciloscopio de un solo canal no es muy útil. El costo adicional de 2 canales (incluso si muxea el ADC) es un pequeño porcentaje de costo adicional, pero un gran aumento en la utilidad.
A menos que desee extraer más de 500 mA, no hay razón para usar una batería, ya que podría tener un convertidor CC-CC aislado. Sin embargo, obtener un gran ancho de banda a través de una barrera de aislamiento no es trivial.
Bueno, hay un par de problemas aquí. Si tomamos como estándar de referencia un osciloscopio analógico de 1 GHz (como un buen Tektronix), este osciloscopio propuesto sufrirá de las siguientes maneras:
1) el ASD5010 es un convertidor de 8 bits. 8 bits no son suficientes para poder competir con un buen osciloscopio analógico.
2) No confunda la frecuencia de muestreo con el ancho de banda analógico. Para el chip que seleccionó, el ancho de banda analógico equivalente probablemente estaría mucho más cerca de 100 MHz que de 1 GHz.
Esto no quiere decir que no sea posible construir un alcance de este tipo, claramente se puede comprar uno que cumpla con estas especificaciones comercialmente. Simplemente no es trivial lograr un ancho de banda de 1 GHz, y se requeriría ingeniería especial y mejores partes.
Los ADC de 8 bits son bastante comunes en los osciloscopios, sin embargo, la técnica de uso de ADC es un poco diferente. Como he visto algunas partes internas de los osciloscopios, el caso común es usar 4 chips ADC, cada uno de ellos sincronizado con un incremento de fase de 90 grados, por lo que obtiene 4x muestras por ciclo de reloj y es por eso que la frecuencia clk es bastante baja, pero el ancho de banda de datos es alto. De todos modos, tal proyecto terminará en más dinero desperdiciado que comprando un visor nuevo :-) Sin embargo, podría ser una buena práctica para el autoaprendizaje. OTOH, piense en el lado analógico del osciloscopio. Esa parte es muy difícil y muy complicada de hacer.
Otros asuntos:
protección : seguro que no quieres que se rompa la primera vez que pones por error 20-30 V en la entrada;
calibración : incluso con una precisión de 8 bits, aún debe controlar el error dentro de 1/256 = 0,4% en general; no trivial con componentes estándar;
Filtrado de ruido : debe protegerse y filtrarse, y no es suficiente porque también es probable que el FPGA genere ruido, por lo que debe separar el dominio analógico del digital.
De todos modos, sobre la conexión USB, creo que es más funcional para procesar internamente los datos y conectarlos directamente a la pantalla.
el fotón
clabacchio
jsolarski
usuario17819
MDMoore313
MDMoore313