Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import serial
- from websocket import create_connection
- import time
- import sys
- def split(lst,size):
- return [lst[i:i+size] for i in range(0, len(lst), size)]
- def calibrate():
- filter_N = 5
- frequency = 600 * filter_N
- period = 1.0/frequency
- total = 0
- fail = 0
- rate = 0
- comp_port = "COM"+sys.argv[1]
- # Init
- try:
- ser = serial.Serial(comp_port,19200,timeout=0.1)
- except:
- print "Cannot open COM Port"
- sys.exit(1)
- ser.write("C")
- data = ser.readline().replace("\n","").replace("\r","")
- # print data,data[0],data[len(data)-1]
- if not data or data[0] != 's' or data[len(data)-1] != 'f':
- fail+=1
- curr_fails += 1
- print "Check sensors or just late data"
- continue
- data = data[1:-1]
- def getdata():
- ser.write("G")
- def senddata():
- filter_N = 5
- frequency = 600 * filter_N
- period = 1.0/frequency
- total = 0
- fail = 0
- rate = 0
- comp_port = "COM"+sys.argv[1]
- # Init
- try:
- ser = serial.Serial(comp_port,19200,timeout=0.1)
- except:
- print "Cannot open COM Port"
- sys.exit(1)
- try:
- ws = create_connection("ws://188.166.48.28:9090/ws")
- except:
- print "Cannot connect to WebSocket Server"
- sys.exit(2)
- #ws.send("Hello from Win7 !")
- while(1):
- tick = time.time()
- sums = [0.0] * 18
- curr_fails = 0
- ser.write("S")
- data = ser.readline().replace("\n","").replace("\r","")
- # print data,data[0],data[len(data)-1]
- if not data or data[0] != 's' or data[len(data)-1] != 'f':
- fail+=1
- curr_fails += 1
- print "Check sensors or just late data"
- continue
- data = data[1:-1]
- print data
- print "Fail rate: %s\n" % rate
- # print fail,total,rate
- ws.send(data)
- print "Frequ: %s" % (1.0/ (time.time()-tick+0.0000001))
- tick = time.time()
- ws.close()
- ser.close()
- if __name__ == "__main__":
- argument = sys.argv[2]
- if argument == "S":
- senddata()
- elif argument == "C":
- calibrate()
- else:
- print "Please specify argument"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement