posjirka
Vytvořené odpovědi
-
AutorPříspěvky
-
posjirkaÚčastník
záleží na tom, pro co to chceš použít. pokud to je připojené na nějákou logiku 24V (log1) vs 0V (log0) tak by stačilo použít diodové hradlo:
http://www.tonko.eu/ele/content/kapitola-6posjirkaÚčastníkmísto řeší použití arduina mega … kdo zaplní 256kb paměti je bud šílenec nebo provokater 🙂
těch 30% je tam proto, že se používají ve velkém knihovny. v asssembleru by ti stačilo 32 kb na cokoliv… v arduinu je to základ. zajímalo by mě použití čistého C-čka vu arduino ide. c-čko nemá v základu ani hodiny strojový čas. pokud to někdo nepotřebuje tak zbytečně nezabírají prostor.
torchu jsem odbočil. použij arduino megaposjirkaÚčastníkmě napadlo něco podobného ve spojení s LM317, ale ten má min. 1,27v a kompenzovat to diodou by bylo hovadský. Pak mě napadl nějáký zpetnovazební regulátor s OZ ale asi by to bylo zbytečně složité. No a tak mě napadlo toto (viz obrázek v příloze). 4 zenerovy diody 5x tranzistory a 4 stupně regulace.
šlo by to udělat i pomocí optočlenů a kombinovat různé zenerky, ale toto mi přišlo jednodušší. Je to návrh a chtělo by to pořádně vyzkoušet 🙂Attachments:
posjirkaÚčastníkAleš se ptá správně. Ono totiž víc vzduchu neznamená automaticky větší oheň.
Většinou mají tyto řešení svoje limity, nad které nejdou. Když to totiž přeženeš, tak budeš mít jen hodně kouře. Já když nemám zahřátý komín a dám vzduchovou klapnu na plno tak mám za 5 minut kotelnu plnou kouře. Je třeba vychytat jak moc se má otevírat a při jakých situacích. Když to pak zjednodušíš, zjistíš, že tě zajímají 2 polohy:
– udržovací režim aktuální teploty
– zvýšení teploty.zpět k tvé otázce:
ano pustíš do serva 5V ono se otevře na 50%
Zpětné čtení je získání hodnoty z potenciometru na servu. Ve výsledku při analogovém řešení defakto zbytečné.posjirkaÚčastníknavíc jestli máš čip wiznet w5100 tak ten má sám o sobě téměř 200mA …
posjirkaÚčastníkpitvat ten kod teď vážně nestíhám a bez simulace zapojení celého zařízení i zbytečné.
Napadlo mě něco uplně jiného. jak celé zařízení napájíš?
On ethernet shield nemá zrovna zanedbatelný odběr i když se 150mA může zdát jako prd.
Většinou je Arduino stavěné na 500mA. Do to ho si dej LCD s podsvícením, ethernet sheild, čidla, případně relé, alarm … . Navíc by to odpovídalo té nahodilé konstelaci.posjirkaÚčastníkpcf8574 má opravdu rozsah napajeni jak pises, je ty LCD nemusi byt spolehlive.
třeba winstary maji rozsah napajeni 4,7-5,3V, LED podsvícení 4,2V:
https://www.gme.cz/data/attachments/dsh.513-215.1.pdf
Je mi jasné že to může fungovat jen nevěřím spolehlivé funkci…posjirkaÚčastníkto luke_CZ:
to máš i napájení LCD na 3,3V ? to mi přijde strašně málo. Mám právě strach, že nebude LCD na 3,3V stabilní. Když dá napájení na 5V, data na 3,3V tak je to akorát na odpálení arduina.posjirkaÚčastníkkoukám, že dám příspěvek a mezi tím se vloží jiný dotaz/odpově´d.
Už vím jak se cítí schizofrenik 🙂posjirkaÚčastníkpotřebuješ oboje napájení pro převodník a pak použiješ 5V pro napájení jak DS3231, tak LCD s převodníkem I2C/LCD většinou je to nějáký PCF85xx.
Attachments:
posjirkaÚčastníkto vojtech: tak jsem chvilku musel hledat na interetu. Vím že některé Arduina mají 3,3V napětovou hladinu. Já je nemám moc rád, protože většina věcí je na 5V a nemusím pak nic řešit.
to strojek: jestli to není kritické doporučuju použít spíš klasicé Arduino UNO nebo MEGA. Nevidím u DUE žádnou extra výhodu. 2 USB porty jsou sice zajímave, 2x DAC přvodík taky, ale zatím jsem se nestakla s aplikací, kterou by s přehledem nezvládla klasika. Doma nemám ani MEGU i když si jí už dost dlouho plánuju.
posjirkaÚčastníkano právě že Arduino DUE je na 3,3V.
DS3231 má rozsah napájení 2,3-5,5V, takže to máš v pořádku:https://cdn-learn.adafruit.com/downloads/pdf/adafruit-ds3231-precision-rtc-breakout.pdfVidím 3 varianty řešení:
1. použiješ Arduino UNO a nemusíš nic dalšího řešit
2.a. použiješ převodník na LCD pro I2C komunikaci:
http://arduino-shop.cz/arduino/1071-lcd-seriove-rozhrani-iic-i2c-twi-sp-1602-1438010911.html?gclid=Cj0KEQiAwMLDBRDCh_r9sMvQ_88BEiQA6zuAQ5BXnPnLW76aC-ORGEKrhSnDJ2fn18jnDABqQNA-EDEaAhNj8P8HAQ
tím pádem jí dáš stejnou sběrnici I2c jako pro RTC a přes převodník úrovní srovnáš 3,3 vs. 5V:arduino I2C na 3,3V
|
konvertor úrovni 3,3V/5V –
|
LCD převodník I2C/LCD + DS3231
|
LCD2.b. použiješ na LCD převodníky urovní 3,3v-5v pro 6 pinu, které LCD potřebuje, takže třeba 2x tento:
Arduino – I2C – DS3231
|
2x převodník urovní 3,3v/5v
|
LCDposjirkaÚčastníkv kazdem pripade pouzij prevodnik jinak si odpalis arduino.
posjirkaÚčastníkz dálky se tžko radí. nevím kde jsi přerušil D10. V aruinui nebo na LCd shieldu?
Teď je třeba to odladit. Mě většinou pomůže zapojit na volný pin LED diodu (spíš používá D13 s LEDkou na desce), úplně na začátku jí dám na LOW a v dalším kroku dám HIGH. Když se LED rozsvítí a přesto se program kousne posunu příkay HIGH o pár řádků dolu. No a když se program kousne a LED nesvítí tak víš co ti to blokuje a můžeš pátrat.posjirkaÚčastníkale šlo by to řešit, jen bys musel použít totálně jiné piny. Nikoliv sdílené.
Sdílené piny jsuo pro ISP komunikaci, LCD shield tuto funkci nemá, takže jí nemůže používat. musel bys s MEGA použít třeba piny úplně od jinud (D30 a víc)posjirkaÚčastník??? co tam chceš připojit na d2/3 ??
posjirkaÚčastníknepujde. LCD nemá komunikaci přes ISP a tak bude dělat nesymsly.
posjirkaÚčastníkrozhodně to jde. Ale né tak jak si představuješ. nevím o knihovně, která by dokázalo překecat LCD shield pro fungování přes pár pinů. To co čteš ( podle všeho používat pouze analogový piny) ukazuje spíš najiný přístup k LCD. využívá se tzv I2C/TWI sběrnice, která přes převodník komunikuje s LCD. použítá to na UNU piny A4/A5. Každopádně to nejde na tvém shieldu. musel bys udělat jiný shield. Koupit to jako shiel tuším nejde. jde koupit pouze moduly :
http://www.santy.cz/moduly-c22/arduino-lcd-1602-16×2-modul-shield-mega-nano-i2c-redukce-seriovy-serial-2560-i52/použití pinu 11/12/13 je pro isp komunikaci , která umožnujě až 3 zařízení na stejných pinech. fígl je v tom, že tyto piny jsou komunkační a zavolání, které zařízení se má používat se děje tak, že tyto zařízení mají vstupy CE na nějákém dalším pinu (každé zařízení jiný pin) a sepnutím toho pinu aktivuješ dané zařízení. To je ten pin 10 na ethernet shield. Tak fungují zařízení ISP, LCD display toto rozhraní nepoužívá a blokuje piny.
resumé:
1. budˇdáš LCD na jiné piny,nevím kolik jich máš ještě volných
2. dáš LCD na I2C sběrnici + A0 pro talčítka
3. použiješ jnou sběrnici než ethernet (RS485, Bluetooth, 1-wire – prostě něco co používá UART piny 0/1)v každém případě je na čase podívat se na Arduino MEGA, už jen pro volné piny.
posjirkaÚčastníka nepřemýšlel si o WIFI řešení.
posjirkaÚčastníka napadlo tě třeba udělat si programovací shield?
Já jsem jeden navrhoval pro děti do kroužku elektro. Programoval
ATTINY rady 85
Atmega 328P
měl slave ISP port pro přímé programování jiných desek
signalizaci TEST, HEART, PROG. ERROR.
Bohužel ho mám v PCB EXPRESS.posjirkaÚčastníkarduino může ungovat jako programator, ale ne tak, že vyhodiš původní procesor a dáš tam prázdný. Tak to opravdu nefunguje. Procesor má v e funkci arduina nahraný bootloader, který jej částečně řídí včetně progromování přes UART.
Stnadardně se totiž programuje přes ISP port a to ej to co ti dal BlindP.
To že originální čip dáš jinam bez oscilátou ti samozřejmě způsobí, že nebude fungovat. Každý procesor má tzv. fuse, které nastavují spoustu parametrů a jeden z nich je i jaký oscilátor se má použít a na jaké frekvenci. Ty „bez krystalu“ používají interní oscilátor , ael nejde odpojit krystal a čekat, že to bdeu fungovat. Bez přenastavení fuse to opravdu nejde.
Pořádně prostuduj ten první odkaz od BlindP a vyzkoušej … na tohle téma najdeš i pár vláken co se ptali jiní před tebou . hledat, hledat, zkoušet a hledat 🙂posjirkaÚčastníkvidím, že sis poradil sám, tak jen pro klid mojí duše:
zkus toto zapojení:
http://www.instructables.com/id/ARDUINO-SOLAR-CHARGE-CONTROLLER-Version-20/29.12.2016 v 23:16 odpověď na: Násypkometr – ukazatel množství uhlí v násypce u automatického kotle #9807posjirkaÚčastníkjen pro inspiraci:
http://www.hwkitchen.com/products/load-sensor-50kg/29.12.2016 v 23:09 odpověď na: Násypkometr – ukazatel množství uhlí v násypce u automatického kotle #9806posjirkaÚčastníkmyslím si, že to je možné ze 2 příčin:
1. snímá to uhelný prach
2. snímá ti odrazy od stěn násypky.
moc mě nenapdá jak to vyřešit. nejraději bych navrh řešní buˇb pomocí optických čidel ale ty se za chvilku zanesou). Druhá možnost mě napadá tlakové čidlo, ale to by moc spolehlivé nebylo. Možná použit něco jako váhu. čidl ase dají koupit zvláš´t a můžeš je použít jako podložky pod nožičky držáku:
https://create.arduino.cc/projecthub/team-arduinotronics/arduino-scale-b821aeposjirkaÚčastníkpro autonomní blikání )oscilátor) bych použil časovat timer1.
tady je tutorial použití včetně knihovny:
https://playground.arduino.cc/Code/Timer1hestli chceš jen nastavovat rychlost blikání tak bych použil místo otočného přepínače raděčji potenciometr. připojený na analogový vystup (v unu jich máš 6). Do pomocné proměnné třeba „oldPot“ by sis zavedl předchozí hodnotu potenciometru.
V každé smyčce loop() bys zkonstroloval jestli nové nastavení se liší od starého (analogRead(A0) != oldPot) a pokud ano tak si přenastav časovat Timer1.
Takže ve výsledku bys použil přepínač na volbu funkce (zvuk/automat) a potenciometr na nastavení rychlosti. U toho potenciometru jen pozor musíš to uědlat trochu hrubší krok, protože půspbí hodně prvků, které nastavení potenciometru ovlivňují (teplota okolí, stabilita referenčího napětí, odchylka LBA kroku, …).posjirkaÚčastníkten dotaz toho moc neřekne. Jaké používáš moduly pro komunikaci? Na jakou vzdálenost? kod programu by taky nebyl k zahození 🙂
Proč používáš Rs485? potřebuješ tahat kvanta dat nebo komunikuješ s jiným zařázením?
I2c je Arduinu blíž, i když má krátky dosah. Už před pár lety jsem měl myšlenku komunikovat pře one-Wire sběrnici. Jednoduchá, s dlouhým dosahem (i když né 1,2Km jak Rs485) a pro základní komunikaci je to bez problémů. Kolega řešil doma síť proopjení asi 3 arduin a nakonec to vyřešil pomocí SW seriových portů na 1 arduinu, které řídilo zbytek. Tochu těžkopádné, ale účelové.posjirkaÚčastníkna tlačítka se vykašli. použij přepínač (on/off) pro přepínání zváslosti na hudbě/oscilátor a pak otočný přepínač (ideálně BCD) pro přepínání předvoleb. BCD znamená, že jednotlivé polohy jsou řešeny binárně takže má třeba 16 poloh ,ale jen 4 kontakty. Třeba teto:
https://www.gme.cz/p-kdr10proč to udělat takto? ve smyčce loop() si nejdřív zjistíš, v jakém stavu je přepínač ovládání (hudba/oscilátor) a případně v jaké stavuje přepínač voleb (otočný) a podle toho dál pokračuješ ve smyčce.
Tím máš zajištěno, že to tak bude i po vypnutí napájení, navíc nemusíš obsluhovat přerušení tlačítkem. Vše ostatní už je stejně shodne.posjirkaÚčastníku 3d tiskárny bych se nebál napájení arduina, ale spíš ostatních komponekt (tisková hlava, motory,..) protože ty pojedou nejspíš přes limit svých možností (12V napájení). Arduino mby to mělo zvládnout, i když nevim jak máš napájené drivery motoru. Ve zkratce když tam bylo 12v/5A použij opět 12V a min. 5A. Tohle laborování kde ušetřit pár korun ta může stát celou tiskárnu.
posjirkaÚčastníkSoubor – Vlastnosti – Velikost fontu editoru
DEfaultně je tam nastaveno 12.posjirkaÚčastníkrozhodně se jedná o chybu bu´d v:
– nastavení rychlosti seriove linky
– nastavení serial monitoru (ukončovací znaky … NewLine, CR, …)
– knihovny SW seriové linky.Nejspáíš to bude to varinata 1 nebo 3. Dělá mi to taky u komunikace s GSM modulem a te´d jsem to na nějákou dobu odložil. mezitím jsem se dozvěděl, že SoftwareSerial není úplně ideální a je lepší použít její novější verzi/odnož.:
https://github.com/sirleech/NewSoftSerialzkus tuto knihovnu, nebo si sniž rychlost komunikaci na 9600 Bd (hlavně si to nastav na to LCD jinak je ti to prd platné. Otázka zní jestli to jde)
Jinak bys musel použít jinou desku (MEGA), která má 2 seriové linky (UART) přímo HW integrované v desce, takže nemuíš nic simulovat. Už hodně dlouho přemýšlím nad deskou METABOARD, která by měla být Arduino kmpatibilní (né 100%, protože má jiné zapojení ) a využívá V-USB pro programování a komunikaci, zatím co HW UART má volný pro jiné aplikace. Pro tebe by o bylo ideální řešení. Bohužel nemám vyzkoušeno 🙁
-
AutorPříspěvky