Medición de temperatura con RASPBERRY PI
Una de las principales características del entorno en el que vivimos es la temperatura y por ello su medición es bastante importante.
La forma más sencilla de medirlo es utilizando los sensores de 1 cable integrados de Maxim.
De esta manera, puede conectar hasta 10 sensores a un convertidor DS2482 de 1 cable a I2C.
Puede hacerlo funcionar de esta manera:
De esta manera, puede conectar hasta 10 sensores a un convertidor DS2482 de 1 cable a I2C.
Puede hacerlo funcionar de esta manera:
1. Cambie el archivo "arch / arm / mach-bcm2708 / bcm2708.c" de las fuentes del kernel para contener lo siguiente:
static struct platform_device bcm2708_bsc1_device ={
.name ="bcm2708_i2c", .id =1, .num_resources =ARRAY_SIZE (bcm2708_bsc1_resources), .resource =bcm2708_bsc1_resources,};
static struct i2c_board_info __initdata pi_i2c_devs [] ={{I2C_BOARD_INFO ("ds1307", 0x68), I2C_BOARD_INFO ("ds2482", 0x18), },}; ...... bcm_register_device (&bcm2835_thermal_device);
i2c_register_board_info (1, pi_i2c_devs, ARRAY_SIZE (pi_i2c_devs));
3. Cambie la función static void w1_post_write (struct w1_master * dev) del archivo drivers / w1 / w1_io.c por lo que contiene:
static void w1_post_write (struct w1_master * dev) {
if (dev-> pullup_duration) {if (dev-> enable_pullup &&dev-> bus_master-> set_pullup) {
dev-> bus_master-> set_pullup (dev-> bus_master-> data, 0); msleep (dev-> pullup_duration); else {msleep (dev-> pullup_duration); } Dev-> pullup_duration =0; }}
4. Agregue la función static u8 ds2482_w1_set_pullup (void * data, int delay) en el archivo drivers / w1 / masters / ds2842.c
static u8 ds2482_w1_set_pullup (void * data, int delay) {
struct ds2482_w1_chan * pchan =data; struct ds2482_data * pdev =pchan-> pdev; u8 retval =1; u8 cfg; / * si el retraso es distinto de cero, activa el pullup, * el pullup fuerte será desactivado automáticamente * por el maestro, así que no lo desactives explícitamente * / if (delay) {/ * ambas esperas son cruciales, de lo contrario, los dispositivos podrían no ser * alimentado el tiempo suficiente, causando, por ejemplo, un sensor w1_therm para
* proporcionar resultados de conversión incorrectos * / ds2482_wait_1wire_idle (pdev); / * nota:¡parece que tanto SPU como APU deben configurarse! * / Retval =ds2482_send_cmd_data (pdev, DS2482_CMD_WRITE_CONFIG,
ds2482_calculate_config (DS2482_REG_CFG_SPU | DS2482_REG_CFG_APU)); ds2482_wait_1wire_idle (pdev); } return retval;}
Para más detalles:Medición de temperatura con RASPBERRY PI El proyecto / publicación actual también se puede encontrar usando:
- Подключение датчиков через микросхему DS2482
Proceso de manufactura
- Control de acceso con QR, RFID y verificación de temperatura
- Registrador de temperatura Raspberry Pi
- Perfil de temperatura de Raspberry Pi usando LabVIEW
- Mide temperaturas con un sensor DS18B20 de 1 cable y Raspberry Pi
- Monitor de red de temperatura y humedad Raspberry Pi
- Leer temperatura con DS18B20 | Raspberry Pi 2
- Monitoreo de temperatura en Raspberry Pi
- Sensor de temperatura Python y Raspberry Pi
- Temperatura y humedad sencillas en Raspberry Pi
- Supervisión de la temperatura con Raspberry Pi
- Lectura de Raspberry Pi BMP085 Temperatura y presión