En primer lugar, un regulador de tensión cuya tensión puede ser modificada por un microcontrolador se denomina más típicamente convertidor de digital a analógico o DAC. Puedes enviar la salida de un DAC a un búfer para aumentar la corriente, pero probablemente† necesitarás un DAC en algún lugar de tu sistema.
En segundo lugar, antes de intentar simular algo, hay que elaborar un modelo. El modelo más sencillo para una batería es una fuente de tensión. Has reconocido que una fuente de tensión perfectamente rígida es inadecuada, porque la salida de la batería cae con el aumento de la corriente. Un poco de investigación te indicará que la causa de esta caída con el aumento de la corriente es la resistencia interna en serie; pon una resistencia en tu modelo y ya está. Siempre se puede hacer algo más, por supuesto: echa un vistazo a este artículo para obtener modelos más detallados:
El modificador primario en este ejemplo es una resistencia en serie, por lo que, en lugar de detectar algorítmicamente la corriente y disminuir la tensión de salida, podría simplemente añadir una resistencia . Una resistencia responderá instantáneamente a los cambios de tensión y corriente, sin necesidad de un código complicado en un microcontrolador. Si necesitas modelar comportamientos transitorios, añade una resistencia y una capacitancia transitorias.
Si necesitas cambiar ocasionalmente la resistencia, utiliza un potenciómetro. Si necesitas hacerlo mientras el sistema está en marcha, utiliza un MOSFET en línea para construir una resistencia variable o compra un CI de potenciómetro digital.
Si todavía necesita medir la corriente, la forma habitual de hacerlo es añadir una pequeña resistencia en serie (insignificante) y amplificar la tensión a través de esta resistencia. Si sólo utilizas reguladores lineales con una corriente de reposo mínima, puedes poner esta resistencia sensora en la alimentación de tu regulador de tensión, aliviando los problemas que mencionas en tu pregunta. La tensión seguirá siendo pequeña, y no estará referenciada a 0V, por lo que tendrás que amplificarla y acondicionarla. La forma más fácil de hacerlo es con un CI de monitorización de corriente de lado alto.
† También puedes hacer esto con PWM filtrado o manejando directamente un regulador de conmutación desde tu microcontrolador, pero ambos son más complicados que simplemente usar un DAC para dar salida a un voltaje.