Hola,
podrías utilizar un termopar "Tipo K", que sirve desde -200ºC hasta +1200ºC. Si preguntas en ebay thermocouple K Type los tienes a partir de 2€. Se trata de dos hilos metálicos (cromel-alumel) soldados por una de las puntas, que al calentar el punto de soldadura produce una pequeña tensión en las otras puntas. Las tensiones son negativas para temperaturas bajo cero, y positivas en caso contrario.
Pero la utilización es un poco más complicada que en un DS18B20:
-
este termopar produce unos 41 microvoltios/grado, a -80ºC son -2,920 mV, por lo que tendrías que amplificar la señal casi unas 1700 veces para que sean -5V a fondo de escala, y usar el ADC de Arduino. Hay también chips específicos acondicionadores de señal para estos sensores, como el que aparece en el tutorial de adafruit
Arduino Code | MAX31855 Thermocouple | Adafruit Learning System.
Todo depende del uso que le quieras dar, la precisión que necesites, etc. -
la respuesta no es totalmente lineal por lo que tendrías que usar una tabla de valores para saber los grados a partir de los milivoltios leídos, si no metes un acondicionador de específico.
En Internet tienes esas tablas en muchos sitios, por ejemplo en
http://www.pyromation.com/downloads/data/emfk_c.pdf