Tienes la idea básica correcta, pero cambiaría algunas cosas. Sí, desea filtrar en paso alto la señal recibida, pero no me gusta acoplar capacitivamente el detector directamente.
La primera etapa debe ser tratar el detector sin procesar de manera óptima y proporcionar una señal de voltaje de baja impedancia. Una pequeña ganancia será útil aquí, pero ese no es el punto principal de la primera etapa.
Hay básicamente dos formas de ejecutar un fotodiodo, en modo de fuga y en modo de célula solar.
En el modo de fuga, el diodo tiene polarización inversa y la corriente de fuga es proporcional a la luz. Esta corriente de fuga es bastante pequeña, por lo general solo unos pocos µA. La corriente será en gran medida independiente de la tensión inversa, por lo que cualquier desviación inversa conveniente de "unos pocos voltios" será suficiente. En el modo de fotocélula, mantienes el diodo en corto y mides la corriente que produce. De cualquier manera, la primera etapa termina siendo un amplificador de transimpedancia (entrada de corriente, salida de voltaje).
Después de eso, desea acoplar AC (filtro de paso alto) y obtener la señal en probablemente dos etapas. El filtrado de paso alto entre etapas perderá el ruido de 50 Hz e impedirá que se aumente el voltaje de compensación de entrada junto con la señal deseada.
Desea 20 kbits / s, por lo que el contenido de frecuencia es de alrededor de 100 kHz. Tenga en cuenta el ancho de banda de ganancia de los opamps y no intente obtener demasiada ganancia en ninguna etapa. Por ejemplo, con un ancho de banda de ganancia de 10 MHz (fácil de encontrar), dejando que digamos 5 veces para que el feedback funcione correctamente, eso significa un máximo de 20x si considera que la frecuencia de interés más alta es de 100 kHz. Dos etapas de ganancia de 20x le dan 400x en general, lo que probablemente sea suficiente después de una ganancia en la primera etapa también.
Tu esquema de codificación también será fundamental para que esto funcione bien. Desea utilizar una codificación que garantice que todo el contenido está por encima de una frecuencia mínima. Esto le permite un filtro de paso alto agresivo para eliminar las frecuencias más bajas, especialmente el parpadeo de luz de 50 Hz y al menos sus primeros armónicos. Se podría usar algo como el código de Manchester, o un ciclo de trabajo de 1/3 2/3, etc. Con tres polos de filtrado de paso alto configurados para una reducción de 5 kHz, 500 Hz (hasta el décimo armónico de parpadeo de luz) se atenuará en 1000 . Eso todavía pasará muy bien unos pulsos de 20-40 kHz.
Después de eso, aplicas las técnicas normales de corte de datos para convertir la señal de pulsos analógicos en un tren de pulsos digital, y luego decodificar digitalmente desde allí.