Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Doja një termometër zyre. Në vend që të blija një, unë përdor një Adafruit Circuit Playground Express për ta bërë një të tillë. Digitalshtë dixhitale/pothuajse analoge. Ngjyra tregon gamën e temperaturës (jeshile këtu - për vitet 70), me numrin e NeoPixels që tregon shifrat (kështu që temperatura e zyrës e treguar këtu është 75). Kur është errësirë ekrani fiket.
Furnizimet
Adafruit Circuit Playground Express
Printer 3D (kam përdorur PLA)
M3 x 8 vida (x4) dhe arra M3 (x4)
Shirit magnetik (https://www.amazon.com/gp/product/B073519752)
Hapi 1: Montoni
Doja një rrjedhje ajri mbrapa pasi nuk isha i sigurt nëse ngrohja e tabelës do të ndikonte në leximet. Montimi është projektuar në Fusion 360. Modeli i disponueshëm në Thingiverse (https://www.thingiverse.com/thing:3659694). Në vend që të përpiqem t'i mbaj vidhat e ndërprera në PLA, unë sigurova një hapësirë për të vendosur arra M3 për vidhat M3.
Hapi 2: Programi
Kodi është Circuit Python, duke përdorur bibliotekat Adafruit për CPE. Kodi më i fundit i disponueshëm në GitHub (https://github.com/KFW/CPE_thermometer) por është mjaft themelor.
# Termometri i Zyrës # për Adafruit Circuit Python Express # Përdor ngjyrën për të treguar diapazonin e temperaturës, dhe më pas neopixelët për temperaturën e saktë # sensori i dritës fik NeoPixels nëse është errësirë nga adafruit_circuitplayground.express import cpx koha e importimit BLANK = (0, 0, 0) BLUE = (0, 0, 24) # 50's BG = (0, 12, 12) # 60's Green 0) # 90 TEMP_COLOR = {5: BLUE, 6: BG, 7: GREEN, 8: ORANGE, 9: KUQ} ndërsa True: cpx.pixels.fill (BLANK) # sigurohuni që pikselët të rifreskohen nëse cpx.light> 10: # mos shfaq temp nëse dhoma është temp e errët = int (cpx.temperatura * 1.8 + 32.5) # 0.5 shtesë për të siguruar që temperatura # rrumbullakos saktë nëse temp 99: temp = 99 # në temp ngjarje të pamundura në dhjetëshet 100 = temp // 10 shifra = temp%10 # për temp që përfundon në '0' ndriçoni vetëm pixel 0 (pixel e dhjetë e montuar) nëse shifra == 0: cpx.pixels [0] = TEMP_COLOR [dhjetra] # përndryshe plotësoni shifrat në drejtim të akrepave të orës nga pozicioni i orës 7 tjetër: për i në rang (shifër): cpx.pixels [9 - i] = TEMP_COLOR [dhjetra] # përdor 'mëkatin' 9 - ' piksele ce # në renditje të kundërt. gjumi (60) # cikël çdo 60 sekonda
Hapi 3: Montoni
Kam përdorur një shirit magnetik në anën e pasme për ta montuar atë.