Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import time
- import daqflex
- import sys
- import csv
- import os.path
- d = daqflex.USB_2001_TC()
- def get_temperature(): # from thermocouple reader USB-2001-TC
- return float(d.send_message("?AI{0}:CJC/DEGC").encode("utf-8").split("=")[1])
- def create_file_name(param):
- number = 0
- file_name = "%s-%s-%s-%s-%d.csv" % (param, time.strftime("%m"), time.strftime("%d"), time.strftime("%y"), number)
- while True:
- if os.path.isfile(file_name):
- number += 1
- file_name = "%s-%s-%s-%s-%d.csv" % (param, time.strftime("%m"), time.strftime("%d"), time.strftime("%y"),
- number)
- else:
- break
- with open(file_name, 'w') as f:
- writer = csv.writer(f)
- writer.writerow(('Time', 'Temperature (Celsius)', 'Temperature (Kelvin)'))
- return file_name
- def temperature_kelvin():
- kelvin = get_temperature() + 273.15
- return kelvin
- def log_temperature(start, log_name):
- with open(log_name, 'w+') as f:
- writer = csv.writer(f)
- writer.writerow((time.time() - start, get_temperature(), temperature_kelvin()))
- def cleanup(state, start):
- if state:
- print "Time elapsed: %d" % (time.time() - start)
- print "Shutdown successful"
- def main():
- start_time = time.time()
- log_name = create_file_name("log")
- try:
- while True:
- log_temperature(start_time, log_name)
- time.sleep(.25)
- except KeyboardInterrupt:
- cleanup(True, start_time)
- def begin():
- response = ""
- while True:
- print "Begin?"
- response = raw_input("(y/n): ")
- if response.lower() in ("y", "n"):
- break
- else:
- print "Invalid response."
- if response == "y":
- print "Standby, process will begin in 5 seconds. Type Control+C at any time to end."
- time.sleep(5.0)
- main()
- else:
- sys.exit()
- if __name__ == "__main__":
- begin()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement