Advertisement
Guest User

Untitled

a guest
Jan 19th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.01 KB | None | 0 0
  1. from sense_hat import SenseHat
  2. from time import sleep
  3. import time
  4. sense = SenseHat()
  5.  
  6. def temp_h():
  7. th = sense.get_temperature_from_humidity()
  8. th = round(th, 1)
  9. th = str(th)
  10. return th
  11.  
  12. def temp_p():
  13. tp = sense.get_temperature_from_pressure()
  14. tp = round(tp, 1)
  15. tp = str(tp)
  16. return tp
  17.  
  18. def humidity():
  19. h = int(sense.get_humidity())
  20. h = str(h)
  21.  
  22. return h
  23.  
  24. def date():
  25. d = time.strftime("%Y-%m-%d; %H:%M:%S")
  26.  
  27. return d
  28.  
  29. def pressure():
  30.  
  31. p = int(sense.get_pressure())
  32. p = str(p)
  33.  
  34. return p
  35.  
  36. def compass():
  37. M = sense.get_compass_raw()
  38. X = M['x']
  39. Y = M['y']
  40. Z = M['z']
  41.  
  42. X = round(X, 0)
  43. Y = round(Y, 0)
  44. Z = round(Z, 0)
  45.  
  46. return "{}; {}; {}".format(X, Y, Z)
  47. def acceleration():
  48. acc = sense.get_accelerometer_raw()
  49. x = round(int(acc['x']), 8)
  50. y = round(int(acc['y']), 8)
  51. z = round(int(acc['z']), 8)
  52.  
  53. return "{}; {}; {}".format(x, y, z)
  54.  
  55. def gyroscope():
  56. gyro_only = sense.get_gyroscope()
  57. p = round(gyro_only['pitch'], 8)
  58. r = round(gyro_only['roll'], 8)
  59. y = round(gyro_only['yaw'], 8)
  60.  
  61. return "{}; {}; {}".format(p,r,y)
  62.  
  63.  
  64.  
  65. _ = (0, 0 ,0)
  66. g = (0, 50, 0)
  67. r = (50, 0, 0)
  68. w = (50, 50, 50)
  69. def good_pixel():
  70. sense.set_pixel(0, 0, w)
  71. sense.set_pixel(7, 0, w)
  72. sense.set_pixel(0, 7, w)
  73. sense.set_pixel(7, 7, w)
  74. def bad_pixel():
  75. sense.set_pixel(0, 0, r)
  76. sense.set_pixel(7, 0, r)
  77. sense.set_pixel(0, 7, r)
  78. sense.set_pixel(7, 7, r)
  79. def stop_pixel():
  80. sense.set_pixel(0, 0, _)
  81. sense.set_pixel(7, 0, _)
  82. sense.set_pixel(0, 7, _)
  83. sense.set_pixel(7, 7, _)
  84. def Temp_good():
  85. sense.set_pixel(0, 1, g)
  86. sense.set_pixel(1, 1, g)
  87. sense.set_pixel(2, 1, g)
  88. sense.set_pixel(1, 2, g)
  89. sense.set_pixel(1, 3, g)
  90. sense.set_pixel(1, 4, g)
  91. def Temp_bad():
  92. sense.set_pixel(0, 1, r)
  93. sense.set_pixel(1, 1, r)
  94. sense.set_pixel(2, 1, r)
  95. sense.set_pixel(1, 2, r)
  96. sense.set_pixel(1, 3, r)
  97. sense.set_pixel(1, 4, r)
  98. def Hum_good():
  99. sense.set_pixel(5, 1, g)
  100. sense.set_pixel(5, 2, g)
  101. sense.set_pixel(5, 3, g)
  102. sense.set_pixel(5, 4, g)
  103. sense.set_pixel(6, 2, g)
  104. sense.set_pixel(6, 3, g)
  105. sense.set_pixel(7, 1, g)
  106. sense.set_pixel(7, 2, g)
  107. sense.set_pixel(7, 3, g)
  108. sense.set_pixel(7, 4, g)
  109. def Hum_bad():
  110. sense.set_pixel(5, 1, r)
  111. sense.set_pixel(5, 2, r)
  112. sense.set_pixel(5, 3, r)
  113. sense.set_pixel(5, 4, r)
  114. sense.set_pixel(6, 2, r)
  115. sense.set_pixel(6, 3, r)
  116. sense.set_pixel(7, 1, r)
  117. sense.set_pixel(7, 2, r)
  118. sense.set_pixel(7, 3, r)
  119. sense.set_pixel(7, 4, r)
  120. def Press_good():
  121. sense.set_pixel(2, 5, g)
  122. sense.set_pixel(2, 6, g)
  123. sense.set_pixel(2, 7, g)
  124. sense.set_pixel(3, 4, g)
  125. sense.set_pixel(4, 5, g)
  126. sense.set_pixel(3, 6, g)
  127. def Press_bad():
  128. sense.set_pixel(2, 5, r)
  129. sense.set_pixel(2, 6, r)
  130. sense.set_pixel(2, 7, r)
  131. sense.set_pixel(3, 4, r)
  132. sense.set_pixel(4, 5, r)
  133. sense.set_pixel(3, 6, r)
  134.  
  135. def flash_bad():
  136. bad_pixel()
  137. sleep(1)
  138. stop_pixel()
  139. sleep(1)
  140.  
  141. def flash_good():
  142. good_pixel()
  143. sleep(1)
  144. stop_pixel()
  145. sleep(1)
  146.  
  147. with open( "team_data.csv" , "w" ) as f:
  148. row = "Date; Time; Temperature_hum; Temperature_pres; Humidity; Pressure; Acceleration X; Acceleration Y; Acceleration Z; Gyroscope P; Gyroscope R; Gyroscope Y; Magnetometer X; Magnetometer Y; Magnetometer Z\r\n"
  149. f.write(row)
  150.  
  151. while True:
  152. h = sense.get_humidity()
  153. t = sense.get_temperature_from_humidity()
  154. p = sense.get_pressure()
  155. if t <= 25 and h <=65 and p <=1050:
  156. flash_good()
  157. Temp_good()
  158. Press_good()
  159. Hum_good()
  160. else:
  161. flash_bad()
  162. if h > 65:
  163. Hum_bad()
  164. if t > 25:
  165. Temp_bad()
  166. if p > 1050:
  167. Press_bad()
  168.  
  169. else:
  170. flash_bad()
  171. if h < 55:
  172. Hum_bad()
  173. if t < 15:
  174. Temp_bad()
  175. if p < 990:
  176. Press_bad()
  177.  
  178.  
  179.  
  180. row = "{}; {}; {}; {}; {}; {}; {}; {}\r\n".format(date(), temp_h(), temp_p(), humidity(), pressure(), acceleration(), gyroscope(), compass())
  181. with open( "team_data.csv" , "a" ) as f:
  182. f.write(row)
  183. sleep(5)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement