基于TTGO T顯示和DS18B20 V2 設(shè)計溫度計
大家好,歡迎回來。
這里有一些有用的東西:一個完全從頭開始使用定制PCB和幾個3D打印部件的DIY溫度計。
DS18B20溫度傳感器探頭和TTGO t -顯示板構(gòu)成了該項目的核心,我們在板載上集成了鋰電池電路來為電路供電。DS18B20溫度傳感器測量溫度,隨后顯示在TTGO板的顯示器上。
本文涵蓋了這個項目的整個構(gòu)建過程,所以讓我們開始吧。
材料要求
這些就是建造所需的材料
?顯示開發(fā)板
?定制的多氯聯(lián)苯
?3D打印的部分
?DS18B20
?IP5306集成電路
?10 uf電容器
?3.7V 100mAh LiPo電池
?5.6呃電感器
?水平按鈕
?USB微接口
?M2螺絲
以前的項目
這個項目實際上是之前制作的一個類似項目的版本2。它有相同的配置,但它是用3D打印的車身組裝的,電池直接連接到TTGO的電池連接。
你可以在這里閱讀之前的項目。
做出這樣的安排很困難;因此,是時候通過在PCB上安裝每個組件來簡化模型了。
新設(shè)計
首先,我們使用Fusion360對TTGO板、DS18B20傳感器和電池進(jìn)行建模。接下來,我們將溫度傳感器放置在前端,TTGO板稍微遠(yuǎn)離它。為了連接兩者,我們對PCB進(jìn)行建模。
一個支架部分與兩個螺絲安裝,適合進(jìn)入PCB持有溫度傳感器到位。一個PCB將放置在頂部,包含所有組件,第二個PCB將放置在其位置,空的。
為了準(zhǔn)備以下設(shè)置的PCB設(shè)計,我們使用PCB的Cad設(shè)計中的測量值。
PCB設(shè)計
PCB設(shè)計過程的第一步是創(chuàng)建原理圖,該原理圖顯示TTGO T-Display板通過CON3頭引腳連接到DS18B20溫度傳感器。我們在傳感器引腳和溫度傳感器VCC的CON3頭引腳之間附加一個電阻。
DS18B20數(shù)字溫度計提供9位至12位的攝氏溫度測量,并具有非易失性,用戶可編程的上下觸發(fā)點報警功能。
DS18B20通過1線總線進(jìn)行通信,根據(jù)定義,只需要一條數(shù)據(jù)線(和地線)進(jìn)行通信。該傳感器引腳連接到TTGO T-Display Board的GPIO2。
這種傳感器有兩種形式:一種看起來像晶體管,另一種是我們在這個項目中使用的探針狀設(shè)備。
查看其數(shù)據(jù)表,了解有關(guān)傳感器本身的更多信息。
我們選擇的電源是IP5306 IC,這是一種著名的鋰離子電源管理IC,從3.7伏的鋰離子電池輸出穩(wěn)定的5伏電壓,并提供充電切斷和電池燃料水平指示等功能。
我們使用Cad設(shè)計的PCB設(shè)計布局,創(chuàng)建PCB輪廓,并按照布局安排所有內(nèi)容。
PCB服務(wù)
PCB設(shè)計完成后,我們將數(shù)據(jù)導(dǎo)出并發(fā)送給PCBWAY取樣。
一份訂單是黃色的焊罩和白色的絲印。
下訂單后,我在一周內(nèi)收到了PCB, PCB的質(zhì)量非常好。我使用的絲印是完全隨機(jī)和不對稱的,所以很難制作,但他們做了一個令人敬畏的工作,使這個PCB沒有任何錯誤。
如果你想以合理的價格獲得優(yōu)質(zhì)的PCB服務(wù),你可以看看PCBWAY。
PCB組裝工藝
?使用錫膏點膠針,我們首先將錫膏單獨添加到每個組件墊上,開始PCB組裝過程。在這種情況下,我們使用標(biāo)準(zhǔn)的37/63錫膏。
?接下來,我們使用ESD鑷子挑選并放置所有SMD組件在PCB上的位置。
?非常小心地,我們抬起整個電路板并將其放在SMT熱板上,這將PCB的溫度提高到焊膏融化的點,并且所有組件都連接到它們的焊盤上。
?接下來,我們將所有THT組件(包括引腳,水平開關(guān)和USB微端口)添加到它們的位置,然后使用烙鐵焊接它們的焊盤。
?最后,我們通過引腳將TTGO T-Display板添加到其位置,現(xiàn)在PCB組裝完成。
主要的組裝
?主要的組裝過程是從將正負(fù)極LiPo電池焊接到電路的電池端子開始的。
?接下來,我們將溫度傳感器的導(dǎo)線連接到傳感器電路上提供的襯墊上。
?然后用M2螺釘固定溫度傳感器支架和帶有TOP PCB的后支架。
?為了保持LiPo電池在其位置,我們使用卡普頓膠帶將其與TOP PCB的背面固定。
?接下來,我們使用一個空的PCB,將其放在模型的底部,并使用四個M2螺釘將其固定在適當(dāng)?shù)奈恢谩?
?溫度計現(xiàn)在完成了;讓我們在下一步中看看它的代碼。
代碼
讓我們分解一下代碼:
這里包含了所需的庫,并定義了OneWire、dallasttemperature和TFT_eSPI的一些常量和實例。
在設(shè)置功能中,初始化TFT屏幕,設(shè)置其旋轉(zhuǎn),啟動串行通信,初始化DS18B20傳感器。
在loop功能中,從DS18B20傳感器請求溫度讀數(shù),清除TFT屏幕,并在屏幕上顯示溫度信息。溫度通過傳感器獲取。getTempCByIndex(0)并打印到屏幕上。然后,它在下一次迭代之前等待2秒。
總之,這段代碼從DS18B20傳感器讀取溫度,并將其顯示在spi連接的TFT LCD屏幕上。
測試
我們首先用熱介質(zhì)——一杯茶——來測試溫度計。將DS18B20傳感器探頭浸入茶杯中,等待一分鐘讀數(shù)后,溫度達(dá)到64°C。
接下來,我們將DS18B20傳感器探頭插入一杯冰和水,一種冷介質(zhì),并允許它讀取一分鐘的讀數(shù)。這產(chǎn)生0.56°C的溫度讀數(shù)。
結(jié)論
這是這個簡單構(gòu)建的最終結(jié)果:一個在所有溫度下都能完美工作的DIY溫度計,熱或冷。
我們通過使用像t型顯示板這樣的開發(fā)板節(jié)省了很多空間,它有一個內(nèi)置的顯示,使設(shè)備更緊湊。
DIY溫度計項目已經(jīng)完成了它的最終版本,沒有什么需要改變的,因為一切都完美無缺。
我已經(jīng)包括了所有的文件,所以你可以嘗試自己做一個。
本文編譯自hackster.io





