¿Es posible la transferencia de datos AM de base alta sin módem?

no soy un EE muy experimentado, pero estaba pensando en un sistema para transferencia de datos de alta velocidad, y es bastante simple conceptualmente, así que me imagino que debe haber fallas serias con el método, porque que yo sepa no está implementado, o al menos menos no generalizada. Pido disculpas de antemano por mi ignorancia del tema (recién estoy comenzando mi aprendizaje).

Según tengo entendido, las señales binarias encerradas en una onda portadora se modulan/desmodulan a través de un módem. Entiendo por qué se hizo esto en el pasado: los procesadores no eran tan duros y el hardware solo puede entender binario. Supongo que no entiendo por qué todavía se hace de esta manera.

Si modulamos la amplitud de una onda (creo que proporcionando al oscilador diferentes niveles de corriente), ¿no podemos muestrear esta onda con algún tipo de convertidor analógico a digital y procesarla en la CPU?

Si esto es posible, ¿por qué apegarse a la base 2? Si podemos tener un valor único para cada amplitud medible, las tasas de transferencia de datos se dispararían. Imagine transferir datos con base 1024, o incluso superior. Si pudiéramos muestrear con precisión la onda (cada oscilación), no veo por qué la tasa de transferencia podría ser igual a la frecuencia de la onda multiplicada por la base dividida por 2 bits por segundo (esto probablemente no sea un cálculo correcto).

Si tenemos un procesador funcionando en gigahercios y una señal en megahercios bajos, parece factible que el procesador pueda muestrear y traducir los datos a la base 2 (posiblemente enviándolos a otro núcleo para su traducción). De esta forma, la tasa de datos estaría limitada por el procesador (procesadores más rápidos conducirían a la utilización de frecuencias más altas para la transferencia).

Los factores limitantes en los que puedo pensar son qué tan rápido se puede cambiar la corriente al oscilador (para TX), qué tan rápido se puede hacer la conversión de analógico a digital (lea que es posible un muestreo preciso en cientos de megahercios) y el rango de amplitudes medibles.

Soy consciente de que esta pregunta probablemente contiene una cantidad inusual de estupidez, pero quiero construir este sistema y me pregunto por qué no debería hacerlo. Tiene que haber algo importante que me estoy perdiendo aquí. ¿Qué podría ser? Gracias.

@orbit, espero tener tiempo para hablar de esto más tarde, pero cualquier dato que un procesador esté interpretando es de forma binaria. un ADC convierte un punto analógico nuevamente en un valor digital (que es una cadena de 1 y 0). Hay formas más complejas de hacer esto que una magnitud.
@Kortuk - gracias por la respuesta aquí. Mi idea es usar el procesador para esto en lugar de enviar el binario por cable, de modo que se puedan transmitir más datos en un solo 'bit'. Veo que en algún momento, esto tiene que suceder, pero no estoy seguro de por qué necesitamos modular con binario.
@orbit, solo quiero señalar que si está modulando a 256 niveles diferentes, todavía está modulando con binario. Se trata de la tasa de error de bits para la misma potencia de salida cuando se habla de qué esquema de comunicación funcionará mejor.
@Orbit, hay un paso importante. Me alegro de que te estés conectando. Estás pensando en por qué hacemos algo más allá de que nos digan cómo se hace. Es importante pensar por qué se elige un determinado método para entender cómo funcionan las cosas.
@Kortuk 256 niveles no es una modulación binaria. No confunda la naturaleza de los datos que alimentan al modulador con la modulación.
@Chris, no lo soy, estoy tratando de dejar claro que todavía es solo un método para enviar 1 y 0.
@Kortuk: solo si elige limitarse a eso. Podría ser fácilmente un método para enviar 0, 1 y 2, o {1-10} o lo que sea. Somos mejores en la construcción de computadoras binarias, por lo que habitualmente traducimos a eso, pero no existe tal preferencia en las matemáticas de modulación.
@ChrisStratton, lo entiendo. Estoy diciendo que cualquier valor que envíe y luego decodifique será binario, esa es la naturaleza de los procesadores actuales. No se trata de cuál es la señalización en la línea, se trata de cuál es la velocidad de datos para una SNR específica. Creo que me estás tomando demasiado literalmente. También podría representarlo en hexadecimal, eso no afecta los límites del mismo. Usamos codificación de fase debido al BER muy bajo para la misma potencia.

Respuestas (5)

Acaba de describir dos tecnologías separadas y completamente válidas que se utilizan en la teoría de la comunicación hoy en día: la radio definida por software y (a falta de un buen término general que pueda recordar) la comunicación multisímbolo/nivel.

Si modulamos la amplitud de una onda (creo que proporcionando al oscilador diferentes niveles de corriente), ¿no podemos muestrear esta onda con algún tipo de convertidor analógico a digital y procesarla en la CPU?

Sí, hasta cierto punto. Acaba de describir la radio definida por software. La idea básica es lo que dijiste: prescinde de la mayoría de los equipos de radiofrecuencia y crea la onda sinusoidal modulada directamente desde la salida de un convertidor D/A y para la ruta de retorno usa un A/D igualmente rápido y mucho procesamiento DSP para ambos lados. El problema actual es que aunque hoy en día las velocidades de los procesadores se miden en gigahercios, la interfaz con el mundo analógico aún no ha alcanzado esas velocidades. Esto significa que la creación directa de formas de onda se limita a frecuencias bajas (que, para las comunicaciones, sigue siendo terriblemente alta en comparación con las frecuencias que preocupan a los diseñadores analógicos "normales"). Sin embargo, si leo mis artículos correctamente, esto aún permite la eliminación de parte del hardware de frecuencia intermedia presente en la mayoría de las radios.

Si esto es posible, ¿por qué apegarse a la base 2? Si podemos tener un valor único para cada amplitud medible, las tasas de transferencia de datos se dispararían. Imagine transferir datos con base 1024, o incluso superior. Si pudiéramos muestrear con precisión la onda (cada oscilación), no veo por qué la tasa de transferencia podría ser igual a la frecuencia de la onda multiplicada por la base dividida por 2 bits por segundo (esto probablemente no sea un cálculo correcto).

Tienes razón en que no es perfecto, pero definitivamente tienes la idea básica. Para dar un ejemplo, nos quedaremos con la modulación de amplitud. Cuando intenta transmitir 0 o 1 usando AM, se llama On-Off-Keying (el enlace lo lleva a un sitio con bonitas imágenes y una descripción). Esto funciona modulando una señal digital pura: 5v es '1', 0v es '0'. Tiene razón en que si tiene varios niveles de voltaje, puede enviar más datos a la vez; esto se llama Amplitude Shift Keying (otra buena descripción con imagen). Como puede ver, hay múltiples niveles de voltaje para varias combinaciones de bits: 2 bits dan cuatro niveles de voltaje diferentes, 3 dan 8, etc.

El problema con este y otros esquemas similares no es teórico sino práctico: en un canal de comunicación con ruido, es muy probable que tenga problemas para averiguar qué se envió exactamente. Es como con las señales analógicas: si mis únicos niveles de voltaje válidos son 0 y 5V, entonces si obtengo 4.3V, puedo estar razonablemente seguro de que debería ser 5V. Si tengo 1024 niveles de voltaje válidos, se vuelve mucho más difícil de determinar.

También tenga en cuenta que no está limitado a la modulación de amplitud: las mismas técnicas se pueden aplicar a las señales moduladas en fase (similares a FM) o puede ingresar al ámbito de la modulación por desplazamiento de frecuencia donde distintas frecuencias representan bits (es decir, si desea transmitir '3' en binario, lo que podría significar enviar una onda sinusoidal de 3 KHz y una onda sinusoidal de 6 KHz, luego separarlos en el extremo receptor donde enviar '1' podría ser simplemente la onda sinusoidal de 3 KHz).

Y estas técnicas ya se utilizan ampliamente: los teléfonos móviles GSM utilizan una forma de modulación por desplazamiento de frecuencia denominada modulación por desplazamiento mínimo gaussiano. Aunque quiero corregir una idea incorrecta que pueda tener: la modulación todavía se usa en todos estos esquemas. Lo contrario de una señal modulada es una señal de banda base (como un flujo de bits de un puerto serie). Para comunicarse a cualquier distancia por aire se necesita modulación, punto. No va a desaparecer, pero cambiará la forma en que generamos la forma de onda modulada.

Le sugiero que tome una clase de teoría de la comunicación si puede, parece que tiene la habilidad para eso.

Gracias por la completa respuesta. La parte sobre la limitación práctica (la dificultad para poder distinguir la señal precisa, considerar errores, etc.) fue particularmente útil. Sin embargo, no me disuade por completo, solo tengo que determinar un nivel en el que la tasa de error sea baja pero la base sea alta (en cualquier nivel factible). Gracias de nuevo por la respuesta.
Tenga en cuenta que hay muchas cosas que ni siquiera ha tocado: técnicas de codificación, por ejemplo. Los códigos Reed-Solomon son un ejemplo: se usan en CD. La idea básica es que un grupo de n bits se codifica en n+m bits. Los códigos se utilizan principalmente para la corrección de errores, pero pueden tener otras propiedades beneficiosas. Son una especie de la otra mitad de la teoría de la comunicación, por lo que ambas mitades serían formas de onda y códigos.

Si envía 1 bit simultáneamente, necesita dos niveles diferentes (para la modulación de amplitud). Si desea enviar 8 bits simultáneamente, necesita 256 niveles, lo que generará muchos errores de lectura; un nivel puede cambiar debido al ruido.
Sin embargo, hay formas de enviar más de un bit simultáneamente, como QAM (Modulación de amplitud en cuadratura). Parte de la información está en la amplitud de la señal, como en ASK (Amplitude Shift Keying), y parte está en la fase de la señal, como en PSK (Phase Shift Keying).

gracias por la respuesta. Creo que lo que dices sobre los niveles es como lo que dice AngryEE sobre la cantidad de niveles de voltaje válidos. Tengo curiosidad acerca de las diferentes formas de ayudar a mantener la integridad del sistema: ¿alguna forma razonable de ayudar a filtrar el ruido y garantizar que la corriente del transmisor sea precisa y sin fluctuaciones indebidas?

Lo que pides se ha hecho, en una u otra medida, y por distintos medios de transmisión. Empecé a escribir algo breve sobre diferentes esquemas de modulación, pero luego encontré una página de Wikipedia que los cubre bastante bien. Simplemente desplácese hacia abajo hasta la sección marcada como "Lista de técnicas comunes de modulación digital".

Muchos sistemas modernos funcionan con modulación de amplitud en cuadratura (QAM). Ethernet utiliza modulación de amplitud de pulso (PAM), que no se encuentra en esa página. Y muchas transmisiones basadas en radio utilizan alguna forma de codificación Trellis. Entonces, mirarlos le dará una buena idea de cuáles son las cosas comunes. Mirar a los antiguos AM, PSK, etc. te dará una idea de dónde venimos.

La conclusión es esta... Casi todas las formas de comunicación informática que se extienden más de 10 pies implican algún nivel de codificación y modulación. Es básicamente de lo que estabas hablando en tu pregunta, pero llevado al extremo. Mucho de esto es muy teórico y matemático. La gente usa este tipo de material para su doctorado. tesis.

David - No hay necesidad de descartar el tema a pesar de que es muy teórico y matemático. "La gente usa este tipo de cosas para su tesis doctoral" se lee como "Es difícil, no deberías intentarlo", lo cual es inmerecido.
@reemrevnivek No lo estaba descartando, simplemente lo interpretó mal. Si pensara que alguien ni siquiera debería intentarlo, lo habría dicho desde el principio y no me habría molestado en enlazar a Wikipedia o donde sea. Por el contrario, creo que es bueno al menos familiarizarse con temas como este, incluso si nunca implementamos uno de estos esquemas de modulación. Pero vale la pena saber que hay pocos temas eléctricos con una curva de aprendizaje tan empinada. No es algo que puedas dominar después de leer un libro o un par de páginas web.
Gracias por los enlaces a la lectura. Tendré que revisar estos diferentes métodos para poder compararlos y contrastarlos de manera más inteligente con el esquema en el que estoy pensando.

¿Probablemente te refieres a esto ?

Tener más de 2 niveles de señal es una técnica muy conocida, el inconveniente es la menor relación señal/ruido. Pero un buen esquema de corrección de errores puede usar los bits adicionales para eliminar más errores de los que se agregaron por la disminución de la relación señal-ruido, por lo que esto definitivamente puede aumentar el rendimiento.

No tengo idea de por qué dice que los módems no hacen esto, ciertamente lo hacen. V.90 tiene una ENORME constelación.

El muestreo de tiempo discreto y el procesamiento de señales digitales como el que usted describe se utilizan en módems de línea telefónica, pero en una línea telefónica se permite generar formas de onda casi arbitrarias en un ancho de banda que es bastante amplio en relación con la frecuencia central (rango típico de aproximadamente 300- 3.300 Hz). Por el contrario, las transmisiones de radio deben encajar dentro de una envolvente bastante pequeña alrededor de una frecuencia central. Si tuviera el único dispositivo de transmisión de radio en el mundo, de hecho podría generar una gran cantidad de datos en una portadora de 1 MHz al modular cada onda, pero su transmisión distorsionaría cualquier transmisión que alguien más pudiera estar intentando en muchas otras frecuencias. Si el transmisor está limitado a emitir energía en el rango de 995 000 a 1 005 000 Hz,

Apéndice La modulación de amplitud de una portadora de onda sinusoidal con otra señal de onda sinusoidal generará señales con una frecuencia igual a la suma y la diferencia de la portadora y las señales de modulación. Modular en amplitud una portadora de onda sinusoidal con una señal que es la suma de dos ondas sinusoidales es equivalente a modular en amplitud las dos ondas sinusoidales por separado en la misma portadora y combinar el resultado. El resultado de modular en amplitud una portadora de onda sinusoidal con una forma de onda compleja puede determinarse separando todos los diferentes componentes de frecuencia de esa forma de onda y calculando el efecto de modular en amplitud cada uno.

Si se modula en amplitud una variedad de frecuencias de voz en el rango de 0 a 5 KHz en una portadora de 1 MHz, el resultado será una mezcla de frecuencias en el rango de 995 000 a 1 005 000 Hz. Para sintonizar una transmisión de radio AM en el canal 1000 (es decir, 1000 kHz o 1,00 MHz), se debe intentar que el sintonizador acepte todas las frecuencias en el rango anterior y rechace las que estén fuera de él. Si uno quisiera sintonizar el canal 990, debería capturar las frecuencias 985,000-995,000. Tenga en cuenta que si la emisora ​​en el canal 1000 no filtra todas las frecuencias de audio por encima de 5 KHz antes de la transmisión, se extenderán al canal de abajo (así como al canal de arriba).

@supercat - Gracias por la útil respuesta. Tengo curiosidad acerca de la interferencia de la que habla: ¿la modulación de amplitud afectará más que la frecuencia en la que estoy transmitiendo?
@Orbit Cualquier modulación extenderá su señal. Solo una onda sinusoidal pura no modulada es una frecuencia única (y buena suerte construyendo un oscilador sin ningún ruido de fase). Incluso simplemente tecleando el código morse propaga la portadora, especialmente si desea que los inicios y finales de los puntos sean claros; en realidad, es un arte lograr que la envolvente de encendido/apagado de un transmisor con clave sea correcta, de modo que los símbolos sean distintos. pero no tan impactantes como para interferir con otras comunicaciones a solo unos cientos de hercios de distancia
@Chris Stratton: Efectivamente. Mi punto era que modular una señal en cada onda, incluso si uno tuviera los medios técnicos para hacerlo, generaría una señal que salpicaría una gran cantidad del ancho de banda circundante. Tiene razón en que la codificación de encendido y apagado puede ser desagradable si las transiciones de encendido/apagado son demasiado bruscas; en los primeros días de la radiotelegrafía, no creo que la gente se preocupara por el derrame de manipulación en canales adyacentes, ya que las ráfagas de ruido resultantes serían lo suficientemente pequeñas e infrecuentes como para no impedir escuchar la señal principal de interés.
@Chris Stratton: Por supuesto, uno intenta que la radio pase de ser algo que uno puede escuchar y decodificar a algo agradable de escuchar, todas las pequeñas ráfagas de ruido causadas por los canales adyacentes se volverían inaceptables, especialmente porque el número de operadores de radiotelegrafía aumentó. Por cierto, me pregunto si hay algún receptor de datos de RF que esté diseñado para usarse con transmisores OOK, pero que proporcione salidas analógicas. Parecería que capturar una señal analógica permitiría a un procesador mejorar la recepción mediante el ajuste de umbral retroactivo.
Si desea realizar un procesamiento adicional en una señal OOK, puede mezclarla para que la frecuencia central sea un tono de audio (cómo se demodulaba tradicionalmente el código) y luego hacer DSP en las frecuencias de audio. En realidad, esto le brinda tanto la señal deseada como su imagen, lo que puede ser molesto, por lo que una técnica común hoy en día es mezclar con dos fases de oscilador locales, produciendo señales de frecuencia de audio I y Q; al examinar la fase allí, puede decir lo positivo. y frecuencias negativas aparte. Por una afortunada coincidencia, muchos ADC baratos y ampliamente instalados ya tienen dos canales...
@Chris Stratton: Estaba pensando en algo que simplemente diera un nivel de CC en relación con la intensidad de la señal en una frecuencia dada, con la intención de que el nivel se usara de manera similar a la salida de encendido/apagado de un receptor OOK típico, pero con mejor control sobre los umbrales de detección. Entre otras cosas, si estuviera tratando de recibir datos codificados utilizando un método 3 de 13 (tres pulsos cada trece intervalos de tiempo para codificar 8 bits de datos), uno podría examinar los niveles de señal en trece intervalos de tiempo y seleccionar los tres primeros. Esto mejoraría el rechazo de algunos tipos de ruido.
@supercat Un demodulador AM normal le dará un nivel analógico que puede digitalizar, pero necesita un filtro para limitar el ancho de banda. La estrechez de su filtro restringe la rapidez con la que puede hacer que la señal parezca encenderse y apagarse. En frecuencias intermedias adecuadas para velocidades de datos de banda estrecha, es mucho, mucho más barato hacer un filtro estrecho preciso (para obtener el punto en esta compensación que desea) computacionalmente que con cristales o resonadores mecánicos. Además, si es demasiado estrecho, tendrá problemas si la frecuencia del transmisor está ligeramente fuera del receptor.
@Chris Stratton: Creo que entiendo a lo que te refieres. La mayoría de los receptores son heterodinos en lugar de homodinos, por lo que después de que el receptor haya realizado su primer procesamiento, la señal tendrá la forma de una onda de FI modulada. Recuerdo haber leído hace algunos años sobre algunas compañías que usaban un diseño de receptor homodino, pero no sé qué pasó con eso. En cuanto a la eficiencia del filtrado computacional de la IF, ciertamente podría hacerse, pero no sé qué tan eficiente sería en términos de energía. Uno de mis posibles proyectos futuros...
@Chris Stratton: ...puede ser una red de almacenamiento y envío de unidades de adquisición de datos alimentadas por batería. Sería posible demodular una onda IF de 100 KHz usando un ARM, pero esperaría que la corriente requerida para ejecutar un procesador que pudiera hacer eso exceda la corriente requerida para un receptor analógico decente.
@supercat Creo que encontrará que la mayoría de los receptores de bajo consumo de energía en la actualidad son DSP en lugar de analógicos, aunque probablemente DSP dedicado con cable en lugar de un procesador de propósito general. Una de las razones es que puede jugar juegos como solo despertar el receptor de forma intermitente si está dispuesto a poner un preámbulo en el mensaje inicial. Es probable que un receptor analógico tenga corriente de polarización fluyendo todo el tiempo. Las cosas analógicas de precisión también son mucho más caras de fabricar.
@Chris Stratton: Hubiera esperado que hubiera varios juegos con cosas como circuitos de capacitores conmutados. Por ejemplo, si uno ha filtrado una entrada para cuidar todo por encima de 1.5x la frecuencia objetivo, esperaría que uno pudiera usar cuatro integradores de puerta de paso (a, b, c, d), cada uno impulsado en la frecuencia objetivo, pero 90 grados desfasados, para alimentar cuatro filtros. La fuerza de la señal detectada, al cuadrado, sería (ac)^2+(bd)^2. Creo que ejecutar un integrador de puerta de paso a alta frecuencia sería más económico que ejecutar un ADC a esa velocidad.
@supercat: acaba de reinventar el mezclador de conmutación, a menudo implementado con interruptores de bus en lugar de partes "rf". Es una técnica bien conocida: un oscilador limpio, un divisor digital para obtener fases, un interruptor de bus, filtros de paso bajo de amplificador operacional I y Q, cada uno de los cuales toma entrada diferencial de integradores opuestos, y luego en un ADC de velocidad de audio de doble canal, posiblemente una tarjeta de sonido .
@Chris Stratton: Mi punto era que pensaría que el enfoque semianalógico sería más eficiente que tratar de procesar señales numéricamente a una frecuencia sustancialmente superior a la frecuencia de interés demodulada más alta. En realidad, tengo curiosidad por saber qué desventajas existen en ese enfoque general en comparación con un superheterodino. Tenga en cuenta que si las referencias de frecuencia son estables, probablemente se podría generar una puerta de cuadratura lo suficientemente precisa sin necesidad de una frecuencia más alta para derivarla.