def get(self):
        
        stations = {'A080Z02TEMPE', 'P016Y01TEMPE', 'P015Y01TEMPE', 'P076Z02TEMPE', 'A271Y01TEMPE', 'N001Z03TEMPE', 'N002Z03TEMPE', 'N003Z03TEMPE', 'N004Z03TEMPE', 'N005Z03TEMPE', 'N006Z03TEMPE', 'N007Z03TEMPE', 'N009Z03TEMPE'}
        '''
        A080Z02TEMPE: Zuriza
        P016Y01TEMPE: Anso
        P015Y01TEMPE: Hecho
        P076Z02TEMPE: Candanchu
        A271Y01TEMPE: Canfranc
        N001Z03TEMPE: Quimboa
        N002Z03TEMPE: Izas
        N003Z03TEMPE: Canal Roya
        N004Z03TEMPE: Bachimana
        N005Z03TEMPE: Lapazosa
        N006Z03TEMPE: Ordiceto
        N007Z03TEMPE: Renclusa
        N009Z03TEMPE: Eriste
        '''
        for station in stations:
            url = "http://www.saihebro.com/saihebro/index.php?url=/datos/excel/tag:" + station
            result = urlfetch.fetch(url)
            if result.status_code == 200:
                soup = BeautifulSoup(result.content)
                filas = soup.find_all("tr")
                
                last_temperatura_row = Temperatura.all().filter('station_id = ', station).order('-date').get()
                if last_temperatura_row is None:
                    last_temperatura_row_date = datetime(2000, 1, 1, 0, 0)
                else:
                    last_temperatura_row_date = last_temperatura_row.date
                    
                for fila in filas[5:15]:
                    new_datetime = datetime.strptime(fila.contents[1].string.strip(), '%d/%m/%Y %H:%M')
                    if (new_datetime > last_temperatura_row_date):
                        new_valley_id = "1"
                        new_station_id = station
                        new_value = fila.contents[3].string.strip()
                        if new_value == '':
                            new_value = '-273'

                        temperatura = Temperatura(valley_id=new_valley_id, station_id=new_station_id, date=new_datetime, value=new_value)
                        temperatura.put()
Exemple #2
0
def main():
    #variables
    sound = Sonido()
    temp = Temperatura()
    matriz_led = Led()

    while True:
        if (sound.evento_detectado()):
            datos = temp.datos_sensor()  #Me cargo los datos procesados
            mensaje = 'Temperatura' + str(
                datos['temperatura']
            ) + 'Humedad ' + str(
                datos['humedad']
            )  #Me quedo con el último registro ambiental del archivo de la oficina en la que estoy
            matriz_led.mostrar_mensaje(
                msg=mensaje)  #Mando el mensaje a mostrar
            event = sg.PopupYesNo('Terminar',
                                  auto_close=True,
                                  auto_close_duration=2)
            if (event == 'Yes'):
                break
Exemple #3
0
#!/usr/bin/python
# -*- coding: utf-8 -*-
import time
from matriz import Matriz
from sonido import Sonido
from temperatura import Temperatura

# Conexión de los sensores en sus respectivos pines
# Matriz --> vcc: 2, gnd: 6, din: 19, cs: 24, clk: 23
# Sonido --> a0: 7, gnd: 9, vc: 3, d0: 15
# Temperatura --> vcc: 1, sda: 11, clk: 14

# Activamos los sensores que vamos a usar
matriz = Matriz(numero_matrices=2, ancho=16)
sonido = Sonido()
temperatura = Temperatura()


def acciones():
    print("Sonido Detectado!")
    temp_data = temperatura.datos_sensor()
    temp_formateada = 'Temperatura = {0:0.1f}°C  Humedad = {1:0.1f}%'.format(
        temp_data['temperatura'], temp_data['humedad'])

    matriz.mostrar_mensaje(temp_formateada, delay=0.08, font=2)


def periodica():
    fileOfTemp = open('ultimo_log_temperatura.json', 'r+')

    while True:
Exemple #4
0
# Conecta ao Broker
conexao = ConexaoMQTT()

if (not conexao.iniciar()):
    print("Erro de Conexão")
    conexao.parar()
    exit()

# Inscreve-se nos topicos de atuação/conexão
conexao.sub(conexao.client_id + "/atuadores/bomba")
conexao.sub(conexao.client_id + "/atuadores/iluminacao")
conexao.sub(conexao.client_id + "/atuadores/alimentacao")
conexao.sub(conexao.client_id + "/conectar")

# Inicia Threads dos sensores
thrTemp = Temperatura(conexao)
thrTemp.start()
thrNivel = Nivel(conexao)
thrNivel.start()

# Monitora se as threads de envio estão rodando
while True:
    print("Monitorando...")
    if not thrTemp.is_alive():
        thrTemp = Temperatura(conexao)
        thrTemp.start()

    if not thrNivel.is_alive():
        thrNivel = Nivel(conexao)
        thrNivel.start()
    # Define o intervalo de 10s
Exemple #5
0
# coding=utf-8
'''
  Este material foi criado com fins de estudos e aprendizagem,
 com o objetivo de divulgar e demonstrar os meus códigos e a
 minha evolução na área.
 
 Autor: Josue Lopes

 main.py
'''

from temperatura import Temperatura

continua = True
while (continua):
    classe = Temperatura()
    escala = str(
        input(
            "Digite qual escala deseja utilizar?\n1-Celsius\n2-Fahrenheit\n3-Kelvin\n0-Sair\n"
        ))
    if (classe.checaEscala(escala)):
        classe.converteTemperatura(escala, input("Digite a temperatura: "))
    elif (escala == "0" or escala.lower() == "sair"
          or escala.lower() == "0-sair"):
        print("Saindo...")
        continua = False
    else:
        print("Escala inválida, digite novamente...")