posjirka
Vytvořené odpovědi
-
AutorPříspěvky
-
posjirkaÚčastník
Na odpaleni arduina super. .. Musíš ten pásek spínat přes tranzistory. Takhle to vážně odpálíš při větším počtu LED….
tady máš inspiraci:
https://cdn-learn.adafruit.com/assets/assets/000/002/692/medium800/led_strips_ledstripfet.gif?1448059609posjirkaÚčastníka zkoušel jsi strýčka googla?
posjirkaÚčastníka jak jsi to vyřešil? možná by tvé řešení pomohlo dalším začátečníkům …
posjirkaÚčastníka to je klon nějákého projektu, nebo to vymýšlíš od nuly?
Viděl bych tu prostor k optimalizaci. Nemyslím si, že potřebuješ mít opakovací frekvenci 50 hz. To že jí budeš snímat na vstupu a chceš jí na výstupu neznamená, že musíš přenášet každý bit. Prostě ji na vstupu nasnímej co chceš a až to zpracuješ tak to pošli dál.
Přijímač bude fungovat v režimu, že údaje jaké zná bude posílat na výstup, dokud nedostane jiné nastavení. přitom výstupy budou mít opakovací frekvenci 50hz.
je to takový asynchronní režim přenosu.
Chápeš mě? Je to to co potřebuješ?posjirkaÚčastníkprogram dáš jednoduše:
jak píšeš odpově´d tak 10-té tlačítko na oknem je CODE.
Klikneš na ně, do textu se vloží apostrof a ty CTRL+C, CTRL+V vložíš text kodu a klikneš znovu na CODE.
Tím se ti sem vloží kod a bude správně formátovaný. Když to tlačítko CODE vynecháš, tak se některé znaky ztratí, zruší se odsazení ….
jinak jde vložit soubor,a le občas to stávkuje.co se týká PID regulace odkážu tě asi sem:
http://blog.waldi.cz/2015/01/pid-regulator.html
http://duinozone.cz/index.php?topic=542.0ještě jsem jí nepoužíval, ale myslím, že nastavení 3 hodnot není teorie strun 🙂
v duinozone byli i nějáké návrhy základního nastavení… zkus a kdyžtak napiš jak si dopadl.jen pro upřesnění, tu PID regulaci dáš místo přičítání/odečítání hodnot od uhlů. Vlastně necháš PID regulaci a´t ti řekně výsledný uhel.
posjirkaÚčastníkto by neměl být problém. ve smyčce loop() je proměnná „rpm_to_disp“
to je vlastně aktální stav otáček. Na začátek programu si dej “ int nastav = 5000; “ čímž si definova promněnnou nastav s hodnotou 5000 co je mnou vymyšlená hodnota otáček, kterou chceš udržet. Dál si dej na začátek proměnnou “ int uhel = 0; “ tahle proměnná bude udržovat aktuální stav uhlu natočení serva. No zpět k loop() dej tam, že když budou otáčky nižší než nastavené tak zvední úhel serva a když budou větší, tak sniž úhel serva. potom omez hodnoty na rozsah 0 až 90 a´t nepřetočíš servo no a nakonec zapiš hodnotu na servo.jak na servo se dočteš třeba tady:
http://www.pistek.eu/blog/2013/08/15/arduino-6-modelarska-serva/
tu pauzu delay() můžeš teoreticky vynechat….ten muj postup je pomalý a slouží spíš pro seznámení s problematikou. Lepší by bylo použít PID regulaci, ale pojdmě na to postupně …
posjirkaÚčastníkjak psal ales :Napište, co to zařízení má vůbec dělat.
jinak se asi nikdo nebude ani pokoušet poradit…. nema v čemposjirkaÚčastníktak sem dej program co mas a muzeme se na to podivat, od nuly ti to asi nikdo delat nebude … pomoct umime
posjirkaÚčastníkjá bych se nebál ani tohoto řešení:
posjirkaÚčastníkjá odpovím otázkou. a jak bys spínal třeba ventilátor na 230V u tohoto termostatu?
Připojil bys napájení na 230V? to by okamžitě vyhořel. Ne musíš připojit napájení 12V a pak vedle vytáhnout 230V a ventilátor. Když spojíš třeba zem a -12V tak se tina čidlo dostane 230V a někoho to může zabít. Prostě musíš oddělit regulaci a spínaní spotřebič tzv. galvanicky = nesmí se tyto 2 napětí nikdy potkat ani v případě poruchy. Takže opravdu mezi K0 a K1 je jen spínací kontakt relé …posjirkaÚčastníkno něják si nejsem jistý tímto řešením. ano millis funguje souhlas, ale pokud tam budeš chtít použít nějáký další algoritmisu/logiku případně nějáké měření, nemusí se ti to úplně chovat tak jak potřebuješ. Použij již funkční řešení a nevymýšlej kolo.
Použij knihovnu : http://playground.arduino.cc/Code/timejasně pro seznámení se s arduinem souhlasím a plně podporuju tvoji aktivitu. pro „reálnou“ práci použij výše zmíněnou knihovnu.
posjirkaÚčastníksprávně sis odpověděl že v tobě 🙂
To rele je jen spínač, nespíná nějáké napětí z desky. Prostě jen sepne kontakt.
Ty mu musíš na 1 pin kontaktu přivést napětí ze zdroje a na druhém pinu kontaktu ho očekávat při sepnutí rele.
To je standardní funkce termnostatu.
Je mu jedno jaké napětí spíná (v mezích nominálních hodnot relé) a co spíná čí v jaké proudové zátěži. prostě ti dá kontakt a dělej si s ním co chceš …takže tak
posjirkaÚčastníkna desce by mělo být od každého pinu místo pro proškrábnutí, abys přerušil přizemění.
Většinou jdou tedy spíš cestou „SMD pozice“ pro spojení adesního pinu se zemí kapkou cínu.posjirkaÚčastníkv examplech Arduino IDE je ke knihovně WIRE příklad I2C Scanner. ten vyhledá včechny zařízení připojené přes I2C a vypíše jejich adresy. Právě pro nastavení adresy zařízení je to super pomůcka.
Jinak na tom PCF8591 se nastavuje adresa spojením pinu A0, A1, A2 resp. piny 6,7,8 se zemíposjirkaÚčastníka co třeba analogWrite()
https://www.arduino.cc/en/Tutorial/DueSimpleWaveformGenerator -
AutorPříspěvky