posjirka
Vytvořené odpovědi
-
AutorPříspěvky
-
posjirkaÚčastník
Tak jsem to hodil „na papír“ a je tam pár nejasností:
Kdy sepne ventilátor?
kdy sepne/vypne hořák? Nemáš jej na relé….
hlídání plamene má digitální nebo analogový výstup?
V popisu je … zapne kotlový termostat … a dál je řešeno hlídání teploty.
Jak je hlídaná/měřená teplota?Budeš tam mít LCD display? Pak by to chtělo nějáký rozvrh obrazovky ….
Jak budeš signalizovat poruchu, jak jí budeš kvitovat a co má dělat při poruše?určitě to bude chtít na začátku, při úplném zapnutí regulace, pauzu tak 10 minut ať má vše čas vychladnout. Resp. nevíš kdy ti vypnou elektriku, nebo se resetuje čip (přetížení, zasmyčkování ,…) tak ať neudělá nehodu.
Attachments:
posjirkaÚčastníkgratuluju a myslím to vážně. našel jsi chybu a chceš jí řešit, resp. zjistil jsi že ti to nefunguje jak chceš. Teˇ%d přichází ta nudnější část, která je ovšem nejpodstatnější.
Doporučuju si stáhnout toto:
http://www.stahuj.centrum.cz/podnikani_a_domacnost/ostatni/diagram-designer/
Je to program pro tvorbu diagramů. Já zkusím do toho předělat to co máš namyšlené a musíme to odladit.
Pak jen uděláme progrma podle toho diagramu.
Je to nutné pro odchytání funcke programu a jeho případných chyb. Dej mi chvliku času …posjirkaÚčastníkco ty na to?
// regulace automaticky kotel // v01 // autor Johnyhol // uprava by JP 2016 // konstanty - pri kompilaci se nahradi v prikazech a nezabiraji misto v pameti #define zapalovaciDavka 6 //zapalovací dávka pelet #define spirala 5 //spirála #define ventilator 3 //ventilátor #define prostorovyTermostat 12 //prostorový termostat #define kotlovyTermostat 2 //kotlový termostat void setup() { // nastaveni vstupu/vystupu pinMode(zapalovaciDavka, OUTPUT); pinMode(spirala, OUTPUT); pinMode(ventilator, OUTPUT); pinMode(prostorovyTermostat, INPUT); pinMode(kotlovyTermostat, INPUT); } void loop() { // kdyz budou oba termostaty sepnute sepni zapalovaci davku if (digitalRead(prostorovyTermostat) == HIGH && digitalRead(kotlovyTermostat) == HIGH){ digitalWrite(zapalovaciDavka, HIGH); } }
posjirkaÚčastníknapadlo mě udělat to pomocí funkce map().
Mám na mysli:
aktuální uhel je 10st. chci 30st.
rozdělíš si to na lineární stupnici o 10 hodnotách a pak z ní uděláš logaritmickou.ideově asi takto:
val = map(value, 10, 30, 1, 10); // (vstupni hodnota, před, po, min.krok, max, krok)
servo1 = 7*val; // nastav na 70%
delay(500); // pauza 0.5s
servo1 = 9*val; // nastav na 90%
delay(500); // pauza 0.5s
servo1 = 10*val; // nastav na 100%
delay(500); // pauza 0.5sšlo by to ?
posjirkaÚčastníktohle jsou krásné projekty. Taky chceme s hasičama postavit malou meteostanici. Tento tvůj projekt je velmi dobrou inspirací. Máš někde na WEBu vizualizaci? Nenašel jsem jí tam, pouze měsíční statistiky. S Exosite jsem ještě nepracoval a nejdřív zvažují co všechno měřit. Neměl jsi tam i měřič srážek ?
posjirkaÚčastníkporadím ti jedinou věc. Kašli na ATTiny.
Neušetříš nic, budeš se trápit s knihovnami a vymýšlet vymyšlené.
Taky jsem touto cestou chtěl párkrát jít a vždy jsem se vrátil k ATMEGA328.
Dost místa na cokoliv, neřešíš složitá připojení, dostatek pinů téměř na cokoliv a dostupné, hromadně používané odzkoušené knihovny.
Nemluvím ještě o paměti typu RAM, která u ATTINY není nekonečná a rychle se zaplní.posjirkaÚčastníkasi bych šel cestou mít 4 drátové připojení přímo v měřícím přístroji + 1 kanál si vyčlenit na bezdrátové čidlo s možností jej přiřadit ke kanálu č.1 (např.).
Když máš LCD 2×16 zn tak by to mohlo mít přibližně tyto stavy:0123456789012345
1:1000C 2:1000C
3:1000C 4:1000CV:1000C 2:1000C
3:1000C 4:1000CV:ERROR 2:ERROR
3:ERROR 4:ERRORObávám se, že při použití 4 bezdrátových čidel budeš mít rozdílené výsledky (napětí baterie) nebo vůbec žádné (jedno čidlo zaruší druhé).
Máš na výber bud bluetooth (seriová linka), NRF24l01 (SPI na 2,4Ghz), 433MHz (pouze vysílač/přijímač seriové linky)- WIFI ti nabízet nebudu, protože předpokládám, že né vždy budeš mít k dispozici WIFI sí´t, a k ní hesla.
433MHz není na přesné logované měření, občas se ti zaruší a tím paralela více čidel není ideální. Na meteostanici nevadí, když minutu nedostane správnou teplotu, tady by ti to asi vadilo.
Bluetooth je super, seriová linka jen ten dosah dost hapruje. 1 zařízení není problém, ale víc jsem nikdy nezkoušel.
nrF24L01 je bluetooth v jiném kabáťě s vlastní modulací.Asi bych ti doporučil 433MHz. To není tak složité, dá se ověřit správnost dat a vše je levné a dostupné. Dosah je závislý na napájení vysílače.
posjirkaÚčastníkv podstatě ne, protože neovládáš servo. Přesněji říkáš mu na jaký uhel má přejít, nikoliv jak rychle. To si řídí servo samo. Má vlastně na rotoru potenciometr, který udává aktuální uhel , ty pošleš požadovaný uhel a jeho vlastní elektronika si tyto srovnává svuj uhel s nastaveným….
Takže ne neovlivníš, leda bys mi postupně měnil uhel. Tedy né dát mu chci 90st. ale chci 85, 88, 89, 90, …s nějákým intervalem třeba 500ms aby měl téměř stopku. Opakovací frekvence signálu je 50 Hz. Doba přejetí serva je závisla na použitém modelu. U profi regulačních servech třeba na aramtury se udává doba přejetí 0-180st. třeba 240s. U tebou použitého serva bys to musel změřit a myslím, že bude závislá na zátěži. Asi ti nezbude nic jiného než experiment ….
posjirkaÚčastníkkoukám, že hexfety výrazně zlevnili. Pamatuju, že stáli přes 200 kč /ks.
Proto jsem se jim vyhýbal. Za tu cenu je to super a plný souhlas, včetně zapojení.posjirkaÚčastníka po jake době zežloutne/zčerná?n Můžeš sem dát schéma a popis funkcí.
Možná by to pomohlo v začátcích …posjirkaÚčastníkSouhlas, nicméně 60W na 12V = 5A.
Při rozdělení na 2 sekce po 2,5A bude např.IRF530 využita na 15%.
Jeho Ugs je 20V i přes to při napětí 5V má max. proud 20A.
Jeho vnitřní odpor rozhodně nebude 1 Ohm ale i kdyby byly aby to výkonová ztráta 2,5W, na což stačí malý chladič ve tvaru U. Při chladiči 20K/W a okolí teplotě 30 st.C by mělo mít pouzdro teplotu max. 80 st C. To je k jeho max. 150 st.C hodně vzdálené :).
Stačí při návrhu PCB počítat s malým chladičem, rozdělit to na 2-3 sekce v tu chvíli jde o minimální proud a tudíž i výkonovou ztrátu.Tahle potvůrka malá má 13,5K/W
http://www.gme.cz/v4330n-p620-008max. teplota pouzdra při použití 2 sekcí (2 chladiče, 2 tranzistory) bude max. teplota pouzdra cca 63 st.C.
A to je to drobek 3x2x1 cm …posjirkaÚčastníkjak říká kolega, MaR jsou nedostudovaní elektrikáři. Nezvládli víc než 24V 🙂
měl jsem na mysli toto např.:
http://2.bp.blogspot.com/-6SwMWGU5bNg/T1KLpEr6d_I/AAAAAAAAAUE/Jq26WyCZavw/s1600/pwm-mosfet.pngProstě výkonový tranzistor spíná LED pásek a pomocí PWM (pulzně šířková modulace) ti může regulovat výkon od 0 do 100% po 255 krocích. Linearita není ideální ale mnohem lepší než podobné řízení LED žárovek na 230V.
Není to složité.
Tady je základní tutorial jak to funguje:
https://www.arduino.cc/en/Tutorial/FadeVlastně ti periodicky bude pomalu rozsvěcet a zase zhasínat LED diodu.
Když dáš delay na třeba 100 ms bude to od 0-100% trvat 25500ms = 25s.
Tam už uvidíš jak to vypadý v jednotlivých krocích.MOSFET nebo obecně FET tranzistor se používá protože má nízký odpor v sepnutém stavu a tak nepotřebuje složité chlazení a nedochází ke zbytečným ztrátám.
Jen pozor na statickou elektřinu. Ta jej může zničit. Takže nepájet trafopájkou ale mikropájkou, nebo dát do tišťáku patici/svorkovnici a do ní dát nožičky tranzistoru.posjirkaÚčastníkz mého pohledu je mnohem efektivnější a hlavně BEZPEČNĚJŠÍ použít zdroj 12V, čímž oddělíme tu nebezpečnou část pro lajka od té bezpežné (stačí zdroj pro LED pásky), ten by napájel jak arduino tak LED. LED pásky bych spínal přes MOSFET tranzistor a máte 255 stupňové spínán, bez nebezpečí dotyku s 230V. Uvědomte si, že jste blízsko akvária a tam není prostor na hrdinství. Radši ať shoří zdroj, než aby to někoho zabilo.
Není to finančně náročné a přitom relativně BEZPEČNÉ řešení.
Když to shrnu finančně.
zdroj 50VA cca 400kč, arduino 250Kč, univers.deska + mosfet cca 100 Kč, Ledpásek 200 Kč (dá se koupit i 5m za 150 Kč ale je to o štěstí). K tomu pár drátků, odpor, … celkem cca 950 kč.Pokud nejste elektrikář s pár lety praxe, NEPOUŠTĚJTE SE DO PRÁCE S NEBEZPEČNÝM ELEKTRICKÝM PROUDEM.
posjirkaÚčastník4 ten driver pro termočlánky využívá SPI rozhraní.
Otázka zní jak přpeínat termočlánky.
Kdyby s epoužilo 4x tento driver, tak je to vcelku finanční zátěž ale elekgantní přepínání měření.
Při přepínání pomocí relé, nebo cmos obvodů je to finanční méně náročné ale rozhodně to bude přesnější. Doba na zotavení po přepnutí, atd…
Na tom samé SPI portu bude i čteška SD karet.
Nevím ale tuší, že na spi rozhraní je možno navěsit max. 4 zařízení. Je třeba se podívat na možnosti zda exituje „virtuální SPI“.
Lepší by bylo I2C rozhraní pro termočlánky.
LCD 2×16 je v pohodě.
počty pinů:
LCD 6 pinů
SD 4 piny
termočlánky 4 piny (přepínání)
tlačítka 2 piny
LED diody 2 piny (šlo by součit s tlačítky).
RTC modul (I2c) 2 piny – neví jestli bude potřeba
Celkem mi to vychází na 18-20 pinů.Pamě´t na tento program by mohla stačit 23kb.
Takže podle I/O a paměti by ti mohlo stačit Arduino UNO.
Když si nejsi jistý kup Arduino MEGA, tam je všeho dost.
Na Ebay stojí cca 350 kč, u nás 500-1000 kč,
http://aukro.cz/funduino-mega-2560-r3-kabel-avr-arduino-i6015916346.html
k tomu rovnou koupit universální PCB:
http://aukro.cz/prototyp-shield-dps-arduino-mega2560-plosny-spoj-i6020062810.html
Na něj dáš jak LCD tak tlačítka, led a nejspíš i Drivery.
256kb paměti bude aboslutně dostačující a nelimitující.
Kompatk ti už předurčuje i mechanické řešneí , můžeš to napájet čím chceš 7-12V (7-9V doporučeno) nebo přes USB. Přes něj to inaprogrmauješ amůžeš postupně oživovat.Jinak termočlánek typu „k“ je vlastně označení charakteristiky anemyslím si, že by se měnil podle výrobců.
posjirkaÚčastníknení zač …
-
AutorPříspěvky