Ejemplo n.º 1
0
			last_send = float(conf.get('TWITTER', 'last_send')) 
			periodicity = float(conf.get('TWITTER', 'periodicity'))*60
			if (now-last_send) > periodicity:
				conf.set('TWITTER', 'last_send', str(now))
				send_twitter(error)
	#end send mail and twitter

	#calculations
	if  conf.get('STARTUP', 'nmea_mag_var')=='1' or conf.get('STARTUP', 'nmea_hdt')=='1' or conf.get('STARTUP', 'nmea_rot')=='1' or conf.get('STARTUP', 'tw_stw')=='1'  or conf.get('STARTUP', 'tw_sog')=='1':
			
		time.sleep(float(conf.get('STARTUP', 'nmea_rate_cal')))

		accuracy=float(conf.get('STARTUP', 'cal_accuracy'))
		now=time.time()
		# refresh values
		position =[a.validate('Lat',now,accuracy), a.Lat[3], a.validate('Lon',now,accuracy), a.Lon[3]]
		date = a.validate('Date',now,accuracy)
		if not date: date = datetime.date.today()
		heading_m = a.validate('HDM',now,accuracy)
		mag_var = [a.validate('Var',now,accuracy), a.Var[3]]
		if not mag_var[0]: mag_var = calculate_mag_var(position,date)
		heading_t = a.validate('HDT',now,accuracy)
		if not heading_t:
			if heading_m and mag_var[0]:
				var=mag_var[0]
				if mag_var[1]=='W':var=var*-1
				heading_t=heading_m+var
				if heading_t>360: heading_t=heading_t-360
				if heading_t<0: heading_t=360+heading_t
		STW = a.validate('STW',now,accuracy)
		AWS = a.validate('AWS',now,accuracy) 
Ejemplo n.º 2
0
				mag_var=[var*-1,'W']
		except: mag_var=['','']
	else: mag_var=['','']
	return mag_var

thread1=threading.Thread(target=parse_nmea)	
thread1.start()

sent=time.time()
# loop
while True:
	#calculations			
	time.sleep(0.01)
	now=time.time()
	# refresh values
	position =[a.validate('Lat',now,accuracy), a.DataList[a.getDataListIndex('Lat')][3], a.validate('Lon',now,accuracy), a.DataList[a.getDataListIndex('Lon')][3]]
	date = a.validate('Date',now,accuracy)
	if not date: date = datetime.date.today()
	heading_m = a.validate('HDM',now,accuracy)
	if a.DataList[a.getDataListIndex('Var')][5] == 'OC': mag_var=['','']
	else: mag_var = [a.validate('Var',now,accuracy), a.DataList[a.getDataListIndex('Var')][3]]
	if not mag_var[0]: mag_var = calculate_mag_var(position,date)
	if a.DataList[a.getDataListIndex('HDT')][5] == 'OC': heading_t=''
	else: heading_t = a.validate('HDT',now,accuracy)
	if not heading_t:
		if heading_m and mag_var[0]:
			var=mag_var[0]
			if mag_var[1]=='W':var=var*-1
			heading_t=heading_m+var
			if heading_t>360: heading_t=heading_t-360
			if heading_t<0: heading_t=360+heading_t