Florist automata

UNO florist automata - Zavlažovač květin (skleníku) je založený na platformě Arduino a desce Arduino UNO (procesor ATMEGA328 a vlastní deska spojů). Konstrukce vychází ze zapojení zalévače pro vertikální stěnu

GitHub Logo

Volný nekomerční projekt :-)

Celý projekt je založen jako volný zdroj (lze použít pro nekomerční použití a přizpůsobit si k obrazu svému). K řídící desce je připojeno teplotní čidlo DS18B20, které měří teplotu půdy (pro možnost regulace zavlažování dle teploty). K řídící desce je také připojeno čidlo vlhkosti s frekvenčním výstupem 50Hz-5kHz (pro možnost regulace zavlažování dle vlhkosti) https://pihrt.com/elektronika/272-snimac-vlhkosti-pro-zalevaci-automat
Veškeré nastavení automatu se provádí pomocí tlačítek a zobrazení údajů na 16x2 LCD displeji. Do půdy "zasuneme" čidlo teploty spolu s čidlem vlhkosti.

Zařízení lze použít například jako zavlažování květin v domácnosti, skleníků a jednodušších systémů. Automat byl vyvinutý pro vertikální zavlažování rostlin, které má svá specifika zavlažování.

Aktuální verze FW a HW:

  • 1.00 19. 10. 2018 (RC1)
  • 1.10 22. 02. 2019 (možnost volby sondy - napětí/ frekvence)

 

foto 25

foto 29

foto 27

Nastavení zavlažování dle dnů od pondělí do neděle

foto 6

Nastavení 3 nezávislých časů pro zavlažování s různou dobou provozu čerpadla

foto 7

foto 8

foto 9

foto 10

foto 11

foto 12

Cyklování výstupu

V menu lze nastavit po jaké době běhu programu (1, 2, 3) se má výstup čerpadla vypnout a jako dobu má čekat vypnutý. Tato funkce umožňuje cyklování výstupu pro lepší vsakování vody do půdy (nedojde k přetékání květináče, ale k postupnému vsaku vody). Pokud nepožadujeme funkci cyklování nastavíme v menu "vypnout na dobu" na hodnotu 0s" a "vypnout čerpadlo po" na maximální hodnotu 250s.
foto 13

foto 14

V grafu je vidět spínání výstupu (zap/vyp cyklování) s ohledem na vlhkost.

Regulace dle vlhkosti

a) pokud je daný den a je čas programu 1 nebo je čas programu 2 nebo je čas programu 3 a vlhkost < 40% bude výsledná doba trvání závlahy + 1/2 trvání závlahy nastavené doby v menu. Tj. 150% času.
b) pokud je daný den a je čas programu 1 nebo je čas programu 2 nebo je čas programu 3 a vlhkost >= 40% a < 60% bude výsledná doba trvání závlahy stejná jako nastavená doba v menu.
c) pokud je daný den a je čas programu 1 nebo je čas programu 2 a vlhkost >= 60% a < 80% bude výsledná doba trvání závlahy stejná jako nastavená doba v menu.
d) pokud je daný den a je čas programu 1 a vlhkost >= 60% bude výsledná doba trvání závlahy stejná jako nastavená doba v menu.

foto 17

V žádném případě nepoužívejte obě regulace současně!

Regulace dle teploty

a) pokud je daný den a je čas programu 1 nebo je čas programu 2 nebo je čas programu 3 a teplota > 40°C bude výsledná doba trvání závlahy + 1/2 trvání závlahy nastavené doby v menu. Tj. 150% času.
b) pokud je daný den a je čas programu 1 nebo je čas programu 2 nebo je čas programu 3 a teplota >= 30°C a < 40°C bude výsledná doba trvání závlahy stejná jako nastavená doba v menu.
c) pokud je daný den a je čas programu 1 nebo je čas programu 2 a teplota >= 20°C a < 30°C bude výsledná doba trvání závlahy stejná jako nastavená doba v menu.
d) pokud je daný den a je čas programu 1 a teplota >= 5°C a < 20°C bude výsledná doba trvání závlahy stejná jako nastavená doba v menu.

foto 16

V žádném případě nepoužívejte obě regulace současně!

Z výše uvedeného vyplývá, že některé programy se s ohledem na vlhkost (teplotu) v určitém rozsahu vůbec nespustí, nebo bude výsledný čas upraven.

Nastavení datumu a času

Zleva nastavujeme den, měsíc, rok, hodina a minuta. Vteřina se při uložení nastaví na "0". Čas je ukládán do obvodu RTC DS1307.

foto 18

Smazání do továrního nastavení

Pokud chceme zařízení vymazat do továrního nastavení stiskneme v menu jako níže na obrázku "ANO".

Výchozí údaje po resetu:

  • program 1 čas pro zavlažování 6:00
  • doba 30s
  • program 2 čas pro zavlažování 18:00
  • doba 30s
  • program 3 čas pro zavlažování 9:00
  • doba 30s
  • vypnout čerpadlo po 5s provozu
  • vypnout čerpadlo na dobu 20s
  • nepoužívat regulaci teplotou
  • nepoužívat regulaci vhlkostí
  • zavlažovat ve dnech po-ne vypnuto

foto 19

Uložit nastavení

Všechny parametry se ukládají do trvalé paměti EEPROM.

foto 20

foto 21

foto 22

Provozní údaje na obrazovce

Při normálním provozu se po 3 vteřinách přepínají tyto údaje:

a) pokud neběží program (1, 2, 3)

Video

b) pokud právě běží zavlažování, tak se odpočítává čas jak dlouho bude čerpadlo ještě zapnuté a jak dlouho bude vypnuté.

foto 23

foto 24

Připojení vstupů a výstupů

LCD: pin 8, 9, 2, 3, 6, 7 (Rs, E,DB4,DB5,DB6,DB7)

LCD podsvícení: pin 10

Tlačítka IN: pin 14 (A0 dělič 5 tlačítek)

Čidlo vlhka IN: pin 5 (měří se frekvence ze snímače vlhkosti)

Serial: pin 0, 1

I2C: pin 18 (A4 SDA), 19 (A5 SCL) používá DS1307 adr. 0x68 

Teplota: pin 16 DS18B20 rudá +5V, černá GND, modrá (bílá) Data

Čerpadlo: pin 17 (pro výstup - čerpadlo)

Schéma zapojení

schematic

 

Deska spojů

board top

board bot

board bot top

Seznam součástek

Označení Hodnota Device Pouzdro
BAT1 CR2032 BATTERY20PTH BATTCOM_20MM_PTH
C1 27p C-EUC1206 C1206
C2 27p C-EUC1206 C1206
C3 0.1u C-EUC1206 C1206
C4 0.1u C-EUC1206 C1206
C5 0.1u C-EUC1206 C1206
C6 0.1u C-EUC1206 C1206
C7 0.1u C-EUC1206 C1206
C8 100u (107C) CPOL-EUC/6032-28W C/6032-28W
C9 100u (107C) CPOL-EUC/6032-28W C/6032-28W
CERPADLO PSH02-02P PSH02-02P
D1 RX LED_1206 P1206
D2 TX LED_1206 P1206
D3 1N4007. 1N4007. SM-1
D4 1N4007. 1N4007. SM-1
DOWN   10-XX B3F-10XX
F1 3,15A FUSE2P FUSE1
FID1 FIDUCIAL1.5X3 FIDUCIAL1.5X3 FIDUCIAL-1.5X3
FID2 FIDUCIAL1.5X3 FIDUCIAL1.5X3 FIDUCIAL-1.5X3
FID3 FIDUCIAL1.5X3 FIDUCIAL1.5X3 FIDUCIAL-1.5X3
FID4 FIDUCIAL1.5X3 FIDUCIAL1.5X3 FIDUCIAL-1.5X3
IC1 ATMEGA MEGA8-P DIL28-3
IC2 FT232RL FT232RL SSOP28
IC3 DS1307+ DS1337S+ SO08
IC4 7805 78XXL 78XXL
J1 RTCBAT S1G2_JUMP S1G2_JUM
J2 POWER_JACKPTH POWER_JACKPTH POWER_JACK_PTH
KK1 D0A-L D0A-L D02A-L
LEFT   10-XX B3F-10XX
P1 10k TRIMRPT10V PT10V
PROG AVRSPI AVR_SPI_PROG2LOCK 2X5-SHROUDED_LOCK
Q1 16MHz Q_HC-49U HC-49U
Q2 32.768KHz CRYSTALTC38H TC38H
Q3 IRF9530 IRF9530 TO220
R1 10k R-EU_M1206 M1206
R2 1k R-EU_M1206 M1206
R3 1k R-EU_M1206 M1206
R4 1k R-EU_M1206 M1206
R5 1k R-EU_M1206 M1206
R6 10k R-EU_M1206 M1206
R7 10k R-EU_M1206 M1206
R8 10k R-EU_M1206 M1206
R9 2k R-EU_M1206 M1206
R10 330 R-EU_M1206 M1206
R11 680 R-EU_M1206 M1206
R12 1k R-EU_M1206 M1206
R13 3k3 R-EU_M1206 M1206
R15 3k3 R-EU_M1206 M1206
R17 1k R-EU_M1206 M1206
R18 100 R-EU_M1206 M1206
R19 4k7 R-EU_M1206 M1206
RIGHT   10-XX B3F-10XX
RST   10-XX B3F-10XX
SEL   10-XX B3F-10XX
T1 BC846 BC846 SOT-23
T2 BC846 BC846 SOT-23
TEPLOTA   PSH02-03P PSH02-03P
U1 LCD-16X2 LCD-16X2NOSILK LCD-16X2_NOSILK
UP   10-XX B3F-10XX
VLHKOST   PSH02-03P PSH02-03P
X1 PN61729-S PN61729-S PN61729-S
Attachments:
Download this file (eagle.zip)Eagle[ ]1832 kB0 Downloads2018-10-17 18:55
Download this file (library.zip)Arduino library[nejsou nutné jsou již součástí main]91 kB220 Downloads2018-10-19 09:52
Download this file (main_1.00.zip)Zdrojový kód + hex[RC1 main 1.00 19.10.2018]93 kB226 Downloads2018-10-19 09:53
Download this file (testing_LCD_buttons.zip)Ukázkový kód pro Arduino[Test tlačítek na desce]0.7 kB205 Downloads2018-10-19 09:52