Ejemplo n.º 1
0
def main():
    mcp3008 = MCP3008(SCLK, MOSI, MISO, CS)
    onewire = OneWire()
    dht = DHT(22)
    while True:
        tmp36_temp = mcp3008.read_tmp36(0)
        try:
            ds18b20_temp = onewire.get_ds18b20_temp(OW_SENSOR)
        except StandardError:
            ds18b20_temp = None
        dht11 = dht.read_dht11()
        cpu_temp = float(int(open("/sys/class/thermal/thermal_zone0/temp", "r").read())/1000)
        pac = eeml.datastream.Cosm(API_URL, API_KEY)
        pac.update([
            eeml.Data(0, tmp36_temp, unit=eeml.unit.Celsius()), 
            eeml.Data(1, ds18b20_temp, unit=eeml.unit.Celsius()),
            eeml.Data(2, dht11["temp"], unit=eeml.unit.Celsius()),
            eeml.Data(3, dht11["humidity"]),
            eeml.Data(4, cpu_temp, unit=eeml.unit.Celsius()),
        ])
        try:
            pac.put()
        except StandardError:
            print "Exception on pac.put()"
        time.sleep(60)
Ejemplo n.º 2
0
def main():
    mcp3008 = MCP3008(SCLK, MOSI, MISO, CS)
    onewire = OneWire()
    dht = DHT(22)
    while True:
        print "-" * 80
        print "TMP36-1   : %f C" % mcp3008.read_tmp36(0)
        print "Photocell : %f" % mcp3008.read_photocell(1)
        print "TMP36-2   : %f C" % mcp3008.read_photocell(2)
        print "IR-SENSOR : %f" % mcp3008.read_ir_sensor(3)
        print "DS18B20   : %f C" % onewire.get_ds18b20_temp("28-000004474ba7")
        dht11 = dht.read_dht11()
        print "DHT11 Temp: %(temp)s C" % dht11
        print "DHT11 Hum : %(humidity)s %%" % dht11
        time.sleep(5)
Ejemplo n.º 3
0
def main():
    mcp3008 = MCP3008(SCLK, MOSI, MISO, CS)
    onewire = OneWire()
    dht = DHT(22)
    while True:
        print "-" * 80
        print "TMP36-1   : %f C" % mcp3008.read_tmp36(0)
        print "Photocell : %f" % mcp3008.read_photocell(1)
        print "TMP36-2   : %f C" % mcp3008.read_photocell(2)
        print "IR-SENSOR : %f" % mcp3008.read_ir_sensor(3)
        print "DS18B20   : %f C" % onewire.get_ds18b20_temp("28-000004474ba7")
        dht11 = dht.read_dht11()
        print "DHT11 Temp: %(temp)s C" % dht11
        print "DHT11 Hum : %(humidity)s %%" % dht11
        time.sleep(5)
Ejemplo n.º 4
0
        print(cmd.command)


if __name__ == '__main__':
    print "MS HAL start"

    #Connectors
    iotfClient = IBMConnector(commandCallback)
    time.sleep(2)
    csvPersistor = CSVPersistor("Plant1")
    time.sleep(1)

    #Sensors
    waterTemperature = Dallas()
    time.sleep(1)
    airInside = DHT(23)
    time.sleep(1)
    airOutside = DHT(24)
    time.sleep(1)
    systemData = SystemData()
    time.sleep(1)
    weather = Weather()
    time.sleep(1)

    #Actuators
    outsideFan = TimedDigitalActuator(20)
    time.sleep(1)
    insideFan = TimedDigitalActuator(21)
    time.sleep(1)
    humidifier = TimedDigitalActuator(16)
    time.sleep(1)
Ejemplo n.º 5
0
grovepi.pinMode(button,"INPUT")
grovepi.pinMode(buzzer,"OUTPUT")
ser = serial.Serial('/dev/ttyACM0',9600)

#variable globale
appuie = 0
y = 0
temps = 0
seconde = 0
dust = 0
buzer_on = False
long_press = 0

if __name__ == '__main__':

    dht_thread = DHT()
    envoi_thread = DweetPost()
    dht_thread.start()
    envoi_thread.start()

    while True:
        y=time.time()-temps
        seconde = time.localtime(y)[5]
        print time.strftime(str(seconde))
        try:

            # recuperation donne des capteurs
            [temp,humidite] = dht_thread.getValueDHT()
            # donnees du capteur de poussiere sur le port serie
            print("Densite air:\n" + str(dust) + " pcs\\0.01cf")
            dust = ser.readline()
Ejemplo n.º 6
0
                f = initFile(starttime.strftime('%Y%m%d-%H%M%S'), RPI, FOLDER,
                             LOCATION, R)
            else:  #file name just with date
                f = initFile(datestart, RPI, FOLDER, LOCATION, R)
            ts = time.time()
            tnow = datetime.datetime.fromtimestamp(ts).strftime(
                '%Y-%m-%d %H:%M:%S')
            data = tnow

            if MODE == "GPS":  #IF GPS is attahced and turned on, get GPS data
                lat, lon, alt = Work()
                print("Lat:", lat, "Lon", lon)
                data = data + "," + str(lat) + "," + str(lon) + "," + str(alt)
            if V.DHTON == "ON":  #Get DHT data, for all DHT attached
                for DH, PIN in zip(V.DHTNAMES, V.DHTPINS):
                    HT = DHT()
                    RH, T = HT.getData(DH, PIN)
                    data = data + "," + str(RH) + "," + str(T)
            #run through each sensors reading there data
            if V.OPCON == "ON":
                for pro, r, p in zip(Sen, R, P):  #loop through OPC
                    newdata = pro.getData(p, r)
                    data = data + "," + newdata
                    if "spi error" in newdata.lower():
                        pro = sen(p, r)  #initiate the sensors
#restate senors in SPI error occres
                    if V.BLINKT == "ON":

                        clear()
                        set_pixel(0, 10, 10, 10)
                        set_pixel(1, 10, 10, 10)
Ejemplo n.º 7
0
 def __init__(self, env, server_params, client_params, misc_params, clients,
              logpath):
     self.env = env
     self.__client_completed = 0
     self.__clients = clients
     self.__network_buffer_size = int(
         misc_params[Contract.M_NETWORK_BUFFER_SIZE_KB])
     self.__logpath = logpath
     self.server_logger = Logger(self.env, logpath)
     self.servers = []
     for i in range(server_params[Contract.S_SERVER_COUNT]):
         self.servers.append(
             Server(self.env, i, self.server_logger, server_params,
                    misc_params, self))
     # This will keep the queue for the client requests
     # self.__HUB = HUB(env, int(misc_params[Contract.M_HUB_BW_Gbps]) * 1e6 / 8)
     self.__HUB = simpy.Resource(env)
     self.__overhead = int(misc_params[Contract.M_NETWORK_LATENCY_nS])
     self.__max_bandwidth = int(
         misc_params[Contract.MAX_SWITCH_BANDWIDTH_Gbps]) * 1e6 / 8
     self.__max_same_time_transfers = int(
         int(misc_params[Contract.MAX_SWITCH_BANDWIDTH_Gbps]) /
         int(misc_params[Contract.MAX_SINGLE_LINK_BANDWIDTH]))
     self.__max_single_link_bw = int(
         misc_params[Contract.MAX_SINGLE_LINK_BANDWIDTH]) * 1e6 / 8
     self.__time_function = Function2D.get_bandwidth_model(
         self.__overhead,
         int(misc_params[Contract.MAX_SWITCH_BANDWIDTH_Gbps]) / 8)
     self.__dht = DHT(len(self.servers),
                      server_params[Contract.S_HDD_DATA_COUNT])
     self.__full_speed_packet_time = int(self.__network_buffer_size /
                                         self.__max_bandwidth * 1e9)
     self.__manager_logger = Logger(self.env, logpath)
     self.__start = None
     self.__server_restoring = 0
     self.__show_counters = bool(misc_params[Contract.M_SHOW_COUNTERS])
     self.__read_pattern = None
     self.__log_runtime_data = bool(
         int(misc_params[Contract.M_LOG_RUNTIME_DATA]))
     if misc_params[Contract.M_READ_PATTERN] == "linear":
         self.__read_pattern = ReadPattern.LINEAR
     elif misc_params[Contract.M_READ_PATTERN] == "random":
         self.__read_pattern = ReadPattern.RANDOM
     else:
         raise Exception("No valid read pattern specified")
     self.__read_block_size = int(misc_params[Contract.M_READ_BLOCK_SIZE])
     self.__schedule_queue = []
     for operation in misc_params[Contract.M_OPERATIONS]:
         if operation == 'r':
             self.__schedule_queue.append(self.__simulate_client_read)
         if operation == 'f':
             self.__schedule_queue.append(self.__simulate_disk_failure)
     # self.__schedule_queue = [self.__simulate_client_read, self.__simulate_disk_failure]
     self.__server_same_time_write = {}
     self.__server_same_time_write_completed = {}
     self.__geometry = (client_params[Contract.C_GEOMETRY_BASE],
                        client_params[Contract.C_GEOMETRY_PLUS])
     self.__sending_entities = set()
     self.__transfers = deque()
     self.__global_available_bandwidth = self.__max_single_link_bw
     self.__global_same_time_transfers = self.__max_same_time_transfers
     self.__global_previous_available_bw = self.__max_bandwidth
     self.__max_transfer_resource = simpy.Container(
         env,
         self.get_server_count() * 4,
         self.get_server_count() * 4)
Ejemplo n.º 8
0
            print "Unknown command, ignore"
            print(cmd.command)

if __name__ == '__main__':
    print "MS HAL start"

    #Connectors
    iotfClient       = IBMConnector(commandCallback)
    time.sleep(2)
    csvPersistor     = CSVPersistor("Plant1")
    time.sleep(1)

    #Sensors
    waterTemperature = Dallas()
    time.sleep(1)
    airInside        = DHT(23)
    time.sleep(1)
    airOutside       = DHT(24)
    time.sleep(1)
    systemData       = SystemData()
    time.sleep(1)
    weather          = Weather()
    time.sleep(1)

    #Actuators
    outsideFan = TimedDigitalActuator(20)
    time.sleep(1)
    insideFan  = TimedDigitalActuator(21)
    time.sleep(1)
    humidifier = TimedDigitalActuator(16)
    time.sleep(1)