Friday, 30 August 2013

actual script


import httplib #do not edit please
import json as simplejson #do not edit please
from random import randint #do not edit please
import time #do not edit please
import os #do not edit please
import glob #do not edit please
import wiringpi2 as wiringpi #do not edit please

wiringpi.wiringPiSetupGpio() #do not edit please
wiringpi.pinMode(23, 1) #red
wiringpi.pinMode(24, 1) #yellow
wiringpi.pinMode(25, 1) #green
wiringpi.digitalWrite(23, 0)
wiringpi.digitalWrite(24, 0)
wiringpi.digitalWrite(25, 0)

os.system('modprobe w1-gpio') #do not edit please
os.system('modprobe w1-therm') #do not edit please

base_dir = '/sys/bus/w1/devices/' #do not edit please
device_folder = glob.glob(base_dir + '28*')[0] #do not edit please
device_file = device_folder + '/w1_slave' #do not edit please

run_number = 0

SENSE_API_KEY =  #do not edit please
FEED_ID1 =  #actual graph
FEED_ID2 =  #min
FEED_ID3 =  #max

def read_temp_raw(): #do not edit please
    f = open(device_file, 'r') #do not edit please
    lines = f.readlines() #do not edit please
    f.close() #do not edit please
    return lines #do not edit please

def read_temp():  #do not edit please
    lines = read_temp_raw() #do not edit please
    while lines[0].strip()[-3:]!= 'YES': #do not edit please
        time.sleep(1) #do not edit please
        lines = read_temp_raw() #do not edit please
    equals_pos = lines[1].find('t=') #do not edit please
    if equals_pos != -1: #do not edit please
        temp_string = lines[1][equals_pos+2:] #do not edit please
        tempC = float(temp_string)/1000.0 #do not edit please
        return tempC #do not edit please

def send_to_opensense(data): #do not edit please
    try:
        datalist = [{"feed_id" :FEED_ID1, "value" :data['C']},]
        headers = {"sense_key": SENSE_API_KEY,"content-type":"appliaction/json"}
        conn = httplib.HTTPConnection("api.sen.se")
        conn.request("POST", "/events/", simplejson.dumps(datalist),headers)
        response = conn.getresponse()
        conn.close()
    except:
        pass

def send_to_opensense2(data): #do not edit please
    try:
        datalist = [{"feed_id" :FEED_ID2, "value" :data['C']},]
        headers = {"sense_key": SENSE_API_KEY,"content-type":"appliaction/json"}
        conn = httplib.HTTPConnection("api.sen.se")
        conn.request("POST", "/events/", simplejson.dumps(datalist),headers)
        response = conn.getresponse()
        conn.close()
    except:
        pass

def send_to_opensense3(data): #do not edit please
     try:
        datalist = [{"feed_id" :FEED_ID3, "value" :data['C']},]
        headers = {"sense_key": SENSE_API_KEY,"content-type":"appliaction/json"}
        conn = httplib.HTTPConnection("api.sen.se")
        conn.request("POST", "/events/", simplejson.dumps(datalist),headers)
        response = conn.getresponse()
        conn.close()
     except:
        pass
 
while(True):
    try:
        run_number = run_number + 1
        tempC = read_temp()
        print "RasPI(2) Ambient Run:",run_number," tempC:",tempC
        data = {'C' : tempC}
        send_to_opensense(data)
        if 26.5 <= tempC and 29.5 >= tempC: # good range of 26.5-29.5 change for if range wants to change
            wiringpi.digitalWrite(25, 1) #do not edit please
            wiringpi.digitalWrite(24, 0) #do not edit please
            wiringpi.digitalWrite(23, 0) #do not edit please
        if 26 <= tempC and 26.5 > tempC: # okay range of 26 - 26.5 change if range wants to change
            wiringpi.digitalWrite(25, 0) #do not edit please
            wiringpi.digitalWrite(24, 1) #do not edit please
            wiringpi.digitalWrite(23, 0) #do not edit please
        if 26 > tempC: # bad range less than 26 change if range needs to change
            wiringpi.digitalWrite(25, 0) #do not edit please
            wiringpi.digitalWrite(24, 0) #do not edit please
            wiringpi.digitalWrite(23, 1) #do not edit please
            send_to_opensense2(data) #do not edit please
        if 29.5 < tempC and 30 >= tempC: # okay range of 29.5 - 30 change if range wants to change
            wiringpi.digitalWrite(25, 0) #do not edit please
            wiringpi.digitalWrite(24, 1) #do not edit please
            wiringpi.digitalWrite(23, 0) #do not edit please
        if 30 < tempC: # bad range more than 30 change if range needs to change
            wiringpi.digitalWrite(25, 0) #do not edit please
            wiringpi.digitalWrite(24, 0) #do not edit please
            wiringpi.digitalWrite(23, 1) #do not edit please
            send_to_opensense3(data) #do not edit please
        time.sleep(10) #frequency of reading in seconds, change if required
        # if ranges are changed, please make sure that ranges are continuous and do not edit the inequality signs
    except:
        pass

No comments:

Post a Comment