Vous êtes sur la page 1sur 4

MINIPROJEKTY

Termometr zhigrometrem USB


Przez tysiclecia ludzie starali
si przewidywa pogod oraz
mierzy warunki atmosferyczne.
Obecnie coraz popularniejsze
s stacje pogody, przewidujce
pogod na najbliszy dzie.
Nieodzownym elementem nawet
najprostszej stacji pogody
jest pomiar temperatury
oraz wilgotnoci. Parametry
te s rwnie bardzo istotne
w innych sytuacjach, np. przy
przechowywaniu ywnoci.

Prezentowany ukad jest przystawk dokomputera suc dopomiaru temperatury oraz


wilgotnoci powietrza. Mierzy temperatur od -40 do 80C z rozdzielczoci 0,1C
i dokadnoci 0,2C oraz wilgotno od 0
do100% zrozdzielczoci 0,1% idokadnoci 2%. Urzdzenie zostao zaprojektowanie
na malutkiej pytce o wymiarach z przewag elementw do montau powierzchniowego, dziki czemu moe by stosowane
jako przystawka do laptopa lub komputera
stacjonarnego.
Schemat ideowy termometru pokazano
na rysunku 1. Jego sercem jest mikrokontroler ATmega8 pracujcy z zewntrznym

rezonatorem kwarcowym 7,3728 MHz.


Czstotliwo taktowania tak dobrano, aby
bd transmisji ukadu UART wynosi 0%.
Do pomiaru temperatury i wilgotnoci
zastosowano cyfrowy czujnik DHT22 zapewniajcy pomiar temperatury wzakresie -40
+80C zrozdzielczoci 0,1C iniepewnoci 0,2 oraz wilgotnoci wzakresie 0100%
z rozdzielczoci 0,1% i niepewnoci 2%.
Zmierzone dane prezentowane swprogramie komputerowym. Dokomunikacji zkomputerem wykorzystano interfejs USB. Wcelu
uproszczenia komunikacji wykorzystywano
wirtualny port RS232.

AVT
1868

Zasilanie termometru jest czerpane


ze zcza USB, dlatego konieczne byo wykonanie filtru zkoralika ferrytowego K1 oraz
kondensatora C5. Na rysunku 2 pokazano
przebieg transmisji. Komunikacja z czujnikiem rozpoczyna si od wysania sygnau
startowego skadajcego si z poziomu niskiego trwajcego co najmniej 18 ms oraz
wysokiego przez 2040 ms. Nastpnie
ELEKTRONIKA PRAKTYCZNA 8/2015

55

MINIPROJEKTY
W ofercie AVT*
AVT-1868 A, B, C
Wykaz elementw:

U1

10 kV (SMD 1206)
4,7 kV (SMD 1206)
150 V (SMD 1206)
120 kV (SMD 1206)
10 mF/16 V (SMD A)
C7, C8: 100 nF (SMD 1206)
C4: 22 pF (SMD 1206)
10 nF (SMD 1206)
4,7 mF/16 V (SMD A)
dioda LED 3 mm
DHT22
ATmega8A (TQFP32)
FT232RL (SSOP28)
dawik MI0805K400R-10
kwarc 7,3728MHz
wtyk USB typ A do druku
listwa goldpinw 5pin

VCC

* Uwaga:
Zestawy AVT mog wystpowa w nastpujcych wersjach:
AVT xxxx UK to zaprogramowany ukad. Tylko i wycznie. Bez elementw
dodatkowych.
AVT xxxx A pytka drukowana PCB (lub pytki drukowane, jeli w opisie
wyranie zaznaczono), bez elementw dodatkowych.
AVT xxxx A+ pytka drukowana i zaprogramowany ukad (czyli poczenie
wersji A i wersji UK) bez elementw dodatkowych.
AVT xxxx B pytka drukowana (lub pytki) oraz komplet elementw wymieniony w zaczniku pdf
AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Naley mie na uwadze, e o ile nie zaznaczono
wyranie w opisie, zestaw ten nie ma obudowy ani elementw
dodatkowych, ktre nie zostay wymienione w zaczniku pdf
AVT xxxx CD oprogramowanie (nieczsto spotykana wersja, lecz jeli wystpuje,
to niezbdne oprogramowanie mona cign, klikajc w link
umieszczony w opisie kitu)
Nie kady zestaw AVT wystpuje we wszystkich wersjach! Kada wersja ma
zaczony ten sam plik pdf! Podczas skadania zamwienia upewnij si, ktr
wersj zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl

DHT22
GND
U2

VCC

29

PC6(/RESET)

6
4
20
18
X1
7,3728MHz
C1
10u

PB6(XTAL1/TOSC1)

100n

C3

C4

22p

22p
5
3
21

56

ELEKTRONIKA PRAKTYCZNA 8/2015

PD0(RXD)
PD1(TXD)
PD2(INT0)
PD3(INT1)
PD4(XCK/T0)
PD5(T1)
PD6(AIN0)
PD7(AIN1)

PB7(XTAL2/TOSC2)

GND
GND
GND

PB0(ICP)
PB1(OC1A)
PB2(SS/OC1B)
PB3(MOSI/OC2)
PB4(MISO)
PB5(SCK)

GND

USB

C5

C6
4u7

10n
GND

GND

GND

R3
150

C7
100n

D1

GND

30
31
32
1
2
9
10
11
12
13
14
15
16
17

1
2
3
4
5

U3

K1

VBUS
D+
DGND

23
24
25
26
27
28
19
22

ATmega8

VCC

20
VCC
4
VCCIO
19

RESET

27
OSCI
28
OSCO

GND
17

3V3OUT

15
USBDP
16
USBDM
C8

25

100n

GND

TXD
RXD
RTS
CTS
DTR
DSR
DCD
RI
CBUS0
CBUS1
CBUS2
CBUS3
CBUS4
TEST
GND
GND
GND

1
5
3
11
2
9
10
6

GND

23
22
13
14
12
26
7
18
21

FT232RL
GND

GND

Rysunek 1. Schemat ideowy termometru

Rysunek 2. Przebieg transmisji danych

Rysunek 3. Okno gwne programu


obsugi

PC0(ADC0)
PC1(ADC1)
PC2(ADC2)
PC3(ADC3)
PC4(ADC4/SDA)
PC5(ADC5/SCL)
ADC6
ADC7

VCC
VCC
AREF
AVCC

C2

(wymienione artykuy s w caoci dostpne na FTP)

Sterownik wentylatora
z czujnikiem wilgotnoci
powietrza (EP 5/2015)
Termometr bezprzewodowy
z interfejsem USB (EP 4/2015)
Higrostat elektroniczny
(EdW 3/2012)
Wilgotnociomierz cyfrowy
(EP 3/2011)
Rejestrator temperatury
z interfejsem USB (EP 4/2010)
Termohigrostat
(EdW 8/2009)
Termometr USB
(EP 11/2007)
Domowa stacja pogodowa
(EP 12/2006 1/2007)
Czujnik roszenia (EP 10/2006)
Wilgotnociomierz cyfrowy
(EP 1/2006)
Domowa stacja meteo
ze zdalnym pomiarem
temperatury (EP 4-5/2002)
Higrometr elektroniczny
(EdW 11/2001)

DQ
GND

R1
10K

Dodatkowe materiay na FTP:


ftp://ep.com.pl, user: 66465, pass: td79fgh6
wzory pytek PCB
Projekty pokrewne na FTP:
AVT-1855


AVT-5494

AVT-3026

AVT-5282

AVT-5230

AVT-2908
AVT-5117
AVT-961

AVT-951
AVT-914

AVT-5060


AVT-2607

R2
4K7

VCC

R1:
R2:
R3:
R4:
C1:
C2,
C3,
C5:
C6:
D1:
U1:
U2:
U3:
K1:
X1:
Z1:
Z2:

VCC VCC

Rysunek 4. Schemat montaowy termometru

GND

Z2

MINIPROJEKTY
czujnik wysya odpowied wpostaci poziomu niskiego ikolejno wysokiego przez 80ms,
po czym jest wysyana ramka bit po bicie.
Logicznemu zeru odpowiada poziom niski
przez 50 ms oraz wysoki przez 2628 ms,
alogicznej jedynce poziom niski przez 50ms
oraz wysoki przez 70 ms. Po zakoczeniu
ramki czujnik wymusza poziom niski przez
okoo 54ms inastpnie wchodzi wstan czuwania oczekujc na kolejne rozkaz odczytu
danych. Pena ramka skada si z 40 bitw,
czyli 5 bajtw. Bajt piaty zawiera sum kontroln w postaci arytmetycznej sumy temperatury i wilgotnoci (ramek od pierwszej
doczwartej). Bajty 1 i3 zawieraj cz cakowit kolejno wilgotnoci i temperatury,
abajty 2 i4 cz uamkow kolejno wilgotnoci itemperatury.
Program sterujcy mikrokontrolerem zosta napisany w rodowisku Bascom AVR.
Podprogram odczytu temperatury i wilgotnoci z czujnika DHT11 jest w materiaach
dodatkowych na serwerze FTP. Po odczytaniu wszystkich bitw jest sprawdzana
suma kontrolna. Dane z czujnika wysyane
swdwch bajtach: pierwszy zawiera cz
cakowit a drugi uamkow, aby uzyska
temperatur lub wilgotno z jednym miejscem poprzecinku naley warto cakowit

Rysunek 5. Okno zmiany nazwy termometru

przesun o osiem miejsc w lewo i doda


do niej cz uamkow. Po takiej czynnoci uzyskuje si liczb 16-bitow reprezentujc temperatur wymnoon 10 razy.
Dlatego, aby uzyska miejsce po przecinku,
naley wynik podzieli przez 10.Aby nie
obcia mikrokontrolera, dane wysyane s do komputera w postaci 16-bitowej
a dzielenia jest wykonywane w programie

obsugi termometru. Wcelu uniknicia bdw transmisji pomidzy mikrokontrolerem


a programem komputerowym jest przesyane dodatkowe sowo suma kontrolna wyliczana jako suma arytmetyczna wilgotnoci
itemperatury.
Wysyane dane s oddzielone znakiem
dwukropka. Na przykad, ramka wysyana
dokomputera 227:457:684 oznacza temperatur 22,7C oraz wilgotno 45,7%.
Okno gwne programu obsugi pokazano na rysunku 3. Aplikacj wykonano za
pomoc C# .NET Framework, dlatego dojej
uruchomienia jest wymagane zainstalowanie rodowiska Microsoft .NET Framework
w wersji 4.0 lub nowszej. Fragment programu reprezentujcy obsugujcy zdarzenia
odebrania znakw przez port szeregowy zamieszczono naserwerze FTP. Poodczytaniu
caej linii (doznaku przejcia donowej linii)
program rozdziela zmienne na trzy osobne acuchy znakowe i dokonuje konwersji
natyp liczbowy. Wkolejnym kroku jest obliczana suma kontrolna oraz porwnywana
z odebran sum kontroln. Przy zgodnoci program dokonuje dzielenia zmiennych
przez dziesi w celu odzyskania jednego
miejsca po przecinku. Dodatkowo, oprogramowanie pozwala na zminimalizowanie
okna i przeniesienia do zasobnika systemowego, z ktrego moe wywietla komunikaty o aktualnej temperaturze i wilgotnoci
copewien czas.
Na rysunku 4 pokazano schemat montaowy termometru. W projekcie wykorzystano mikrokontroler ATmega8 wobudowie
smd TQFP32 oraz ukad FT232 wobudowie
SSOP28, ktrych zamontowanie zewzgldu
nadrobnsy raster wymaga wprawy. Powlutowaniu mikrokontrolera iukadu FT232 naley wlutowa wszystkie zworki oraz kolejne elementy wkolejnoci odnajmniejszych
ponajwiksze.
Wszystkie potrzebne sygnay do programowania
mikrokontrolera
zostay
ELEKTRONIKA PRAKTYCZNA 8/2015

57

MINIPROJEKTY

Rysunek 6. Okno programatora

Rysunek 7. Rozpoznanie nazwy przez


komputer PC

Rysunek 8. Ustawienie numeru portu,


doktrego jest doczony termometr
wyprowadzone na zczu szpilkowym Z1,
dziki czemu nie trzeba programowa mikrokontrolera przed wlutowaniem. Bity konfiguracyjne mikrokontrolera naley ustawi
zgodnie ztabel 1 (fuse high byte: 0xD9, fuse
low byte: 0xFD).
Po woeniu przystawki do komputera
urzdzenie bdzie si przedstawiao jako
przejciwka USB/RS232. Aby zmieni domyln nazw urzdzenia naley zapisa j
w pamici EEPROM ukadu FT232. W tym
celu naley pobra, zainstalowa i uruchomi program FT prog. Po woeniu przystawki do komputera naley zainstalowa
sterowniki. Pouruchomieniu programu FT
prog naley wybra Devices Scan and
Parse. Zostanie przedstawiona zawarto
pamici, model wykorzystanego ukadu
i par innych detali. W Device Tree naley
rozwin zakadk USB String Descriptors

Tabela 1. Ustawienie fusebitw


Fusebit
BODLEVEL
BODEN
SUT1
SUT0
CKSEL3
CKSEL2
CKSEL1
CKSEL0
RSTDISBL
WTDON
SPIEN
CKOPT
EESAVE
BOOTSZ1
BOOTSZ0
BOOTRST

Stan
Niezaprogramowany
Niezaprogramowany
Niezaprogramowany
Niezaprogramowany
Niezaprogramowany
Niezaprogramowany
Zaprogramowany
Niezaprogramowany
Niezaprogramowany
Niezaprogramowany
Zaprogramowany
Niezaprogramowany
Niezaprogramowany
Zaprogramowany
Zaprogramowany
Niezaprogramowany

i w polu Product Description wpisa nazw


urzdzenia np. Termometr z higrometrem
USB (rysunek 5). Po ustawieniu odpowiedniej nazwy naley zaprogramowa pami
EEPROM. W tym celu naley w programie
wybra Devices Program, co spowoduje
wywietlenie okna, jak narysunku 6. Wcelu
zapisania danych do ukadu naley klikn
przycisk Program. Po woenia przystawki
do komputera zostanie rozpoznana jako nasze urzdzenie (rysunek 7). Po pierwszym
wczeniu programu naley wej do ustawie klikajc prawym klawiszem myszy
na okno programu (rysunek 8) i ustawi

Rysunek 9. Ustawienie preferencji


port, do ktrego jest doczona przystawka
oraz preferencje dotyczce wywietlanych
komunikatw w postaci chmurek systemowych (rysunek 9). Istnieje moliwo wyczenia komunikatw lub ustawienia czasu,
cojaki maj by wywietlane. Poustawienia
danych naley klikn przycisk Zapisz ustawienia i nastpnie klikn na symbol portu
USB, aby otworzy port. Podczas kolejnych
uruchomie program sam otworzy domylny port oraz bdzie pracowa na wczeniejszych ustawieniach dotyczcych wywietlanych komunikatw. Wkadym momencie
pracy programu istnieje moliwo wejcia
do ustawie i zmiany parametrw klikajc prawym przyciskiem myszy w okno
ustawie.

Krzysztof Goka
krzysztof.gonka@interia.pl

http://sklep.avt.pl
58

ELEKTRONIKA PRAKTYCZNA 8/2015