Lecturas multiples del sensor ds18b20 y dht11

buenas tardes ....
se me dificulta mucho la simulacion en proteus de 4 sensores ds18b20 al conectarse en un solo pin no se si es error de mi programacion en arduino solo me lee el sensor dht11 en la simulacion . y ,marca -127 en todo lo demas.

cual es mi error ?? disculpen

#include <OneWire.h>
#include <DallasTemperature.h>

#include <DHT.h>
#include <DHT_U.h>
#define DHTPIN 2 //Pin 2 del Arduino
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
float tem;
float hum;
OneWire ourWire(4); //Se establece el pin 2 como bus OneWire

DallasTemperature sensors(&ourWire); //Se declara una variable u objeto para nuestro sensor

void setup() {

Serial.begin(9600);
sensors.begin(); //Se inicia el sensor
dht.begin();
}

void loop() {
sensors.requestTemperatures(); //Se envía el comando para leer la temperatura
float temp= sensors.getTempCByIndex(0); //Se obtiene la temperatura en ºC
float temp2= sensors.getTempCByIndex(1); //Se obtiene la temperatura en ºC
float temp3= sensors.getTempCByIndex(2); //Se obtiene la temperatura en ºC
float temp4= sensors.getTempCByIndex(3); //Se obtiene la temperatura en ºC

tem = dht.readTemperature();
hum= dht.readHumidity();

Serial.print(temp);
Serial.print(";");
Serial.println(temp2);
Serial.print(temp3);
Serial.print(";");
Serial.print(temp4);

Serial.print(tem);
Serial.print(";");
Serial.print(hum);
delay(1000); //El DHT11 manda datos cada un segundo.

}

Moderador:
Por favor, lee las Normas del foro y edita tu código/error usando etiquetas de código.
Ve a edición, luego selecciona todo el código que has publicado, lo cortas y click en </>



Prueba con un solo DS18B20.
El DHT11 requiere 2 segundos entre lectura y lectura que no respetas, claramente no es tu problema pero hay que hacer bien las cosas.

Mira este ejemplo y ajústalo a tu pin ONE_WIRE

Te agrego otro link para ver el manejo de varios ds18b20
Medir Temperatura... con Arduino y DS18B20

Saludos