Stránka 1 z 12

Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: úte 22 kvě, 2018 6:03 pm
od hopeter
V tomto vlákně bych chtěl shromáždit jednoduché aplikace pro řízení kolejiště ovládané Arduinem.
Momentálně se jedná o řízení serv ( výhybky ) , krokového motoru ( přesuvna ) a možno rozvést i další možnosti. Prosím dávejte sem jen odkazy na kódy , mechanické provedení aplikací a užitečné poznatky a rady ohledně programování. Mělo by to posloužit zejména začátečníkům. Díky.

Pro začátek třeba tohle http://thenscaler.com/?page_id=174 Mám odzkoušeno pro řízení tří serv ( varianta č.2 s tlačítkem bez diod )

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: stř 23 kvě, 2018 6:35 am
od fulda
hopeter píše:No zatím se prokousávám s tímto https://laskarduino.cz/motory-radice/230031-krokovy-motor-28byj-48-radic-uln2003.html
Přestava je 3 tlačítka. První zajistí najetí do krajní polohy na mikrospínač což bude výchozí poloha. Další tlačítko bude posun o rozteč kolejí doprava a poslední tlačítko posun o rozteč kolejí doleva. Převod na posuv bude závitová tyč nebo ozubený řemen. Pokud se dílo podaří bude namontováno na Nudli TT společně s ovládáním tří serv. Zatím se pomalu prokousávám s programováním Arduina , studiem elektriky a potom přijde na řadu mechanika. Znalce v oboru prosím o slitování , jsem jen hračička samouk. :oops:

Jen pro tvojí informaci - ten motor je mimořádně nepřesný. Má dost vylký rozdíl v tom, kam dokrokuje při točení doprava a kam dokrokuje při točení doleva. Zejména pokud je alespoň v minimální zátěži.
Je to dáno tou převodovkou, která je uvnitř, je plechová a má obrovské vůle.
Jinak si prostuduj třeba TOHLE vlákno a koukni na TOHLE video

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: stř 23 kvě, 2018 7:12 am
od belgarat
Mimochodem - co ty krokove motorky, remenice atp., co se pouzivaji pro 3D tiskarny ? Presne by mohly byt dost, a dily na pohon se daji koupit i v Cechach

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: stř 23 kvě, 2018 7:54 am
od zdeno
belgarat píše:Mimochodem - co ty krokove motorky, remenice atp., co se pouzivaji pro 3D tiskarny ? Presne by mohly byt dost, a dily na pohon se daji koupit i v Cechach

to ale nejde ovladat +5V, jak to dela Fulda.
Proste vsechno chce svoje a vyssi presnost a rychlost je podminena dalsimi podminkami.
To se proste neda oklamat !!

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: stř 23 kvě, 2018 8:36 am
od fulda
belgarat píše:Mimochodem - co ty krokove motorky, remenice atp., co se pouzivaji pro 3D tiskarny ? Presne by mohly byt dost, a dily na pohon se daji koupit i v Cechach

Jo, ty jsou v pohodě, na můj vkus je to tedy dost mohudné, ale použitelné to je.
Celkem hodně si můžeš zjednodušit život použitím nějakého integrovaného řadiče, jako je třeba A4988, nebo jeho klony a následníci.
Tím ti odpadne hodně práce s tvarováním signálu, starost o napájecí křivky a tak.

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: stř 23 kvě, 2018 9:26 am
od amirinda
nezkoušel jsem teda, ale co motůrky z CD mechanik?

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: stř 23 kvě, 2018 5:36 pm
od hopeter
To Fulda: Motor 28BYJ-48 a driver ULN2003 jsem zvolil jako nejlevnější na pokusy jestli vůbec zvládnu programování. Na ostro uvažuju o tomto řešení https://www.postavrobota.cz/Krokovy-motor-NEMA-17-se-zavitovou-tyci-trapezovym-sroubem-300mm-d620.htm a k tomu tohle https://laskarduino.cz/motory-radice/143010-h-mustek-pro-krokovy-motor-l298n-dualni-motorovy-modul.html. Existuje i matice s vymezením vůle https://www.vsepro3dtisk.cz/p/predepnuta-trapezova-matice

To Belgarat: Odkaz na tvoje udělátko na řízení serv sem určitě patří https://github.com/svatoun/analog-servopoint/

To Amirinda: Z mechanik CD jsem někde viděl video stroje CNC na kreslení... Na přesuvnu to použil kolega Nynuma http://diskuze.modely.biz/viewtopic.php?f=1&t=10572

Co se týká přesnosti tak si myslím , že bude více záležet na mechnickém provedení mostu přesuvny. Základem musí být přesné pojezdové lišty ( šuplíkové výsuvy ). Určitě bude hrát podstatnou roli umístění pohonu do těžiště ( nejlépe asi do středu mostu ).
Pokud udělám náběhy kolejnic ====> <==== tak považuju přesnost najetí +-0,5 mm za vyhovující ( pro TT ).
Otázkou je jak se všechno povede uvést do praxe... :wink:

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: stř 23 kvě, 2018 7:05 pm
od workous
Ahoj Honzo, tohle vypadá dost robusně a nemusel by jsi používat pojezdy píšou 300 mm délka to by mohlo stačit cena cca 600,- nemám představu kolik stojí pojezdy samo ty lepší, aby to mělo smysl.

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: čtv 24 kvě, 2018 6:20 am
od fulda
hopeter píše:To Fulda: Motor 28BYJ-48 a driver ULN2003 jsem zvolil jako nejlevnější na pokusy jestli vůbec zvládnu programování. Na ostro uvažuju o tomto řešení https://www.postavrobota.cz/Krokovy-motor-NEMA-17-se-zavitovou-tyci-trapezovym-sroubem-300mm-d620.htm a k tomu tohle https://laskarduino.cz/motory-radice/143010-h-mustek-pro-krokovy-motor-l298n-dualni-motorovy-modul.html.
Víš to, že každý ten motor pracuje na jiném principu? Ten 2BBYJ je pětidrát, zatímco NEMA-17 je čtyřdrát. A použití řadiče L298 tě právě bude nutit do toho vytváření přesného signálu, který jsi s A4988 nemusel řešit.
Ale jinak je to na tobě.

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: čtv 24 kvě, 2018 6:48 am
od hopeter
Díky , tak to mě opravdu uniklo. Kouknu tedy po jiném řadiči , případně o jiném motoru. Tyče a matice je možno nakoupit i samostatně.
Ono mě to ještě dá pořádně zabrat. Zatím se prokousávám programováním a moc mě to nejde... :oops: Ale baví mě to. :)

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: sob 02 čer, 2018 5:17 pm
od hopeter
Myslím,že už mám program pro přesuvnu... Ovládání je na tři tlačítka.
První tlačítko po stisku rozjede přesuvnu doleva. Jede dokud je tlačíko č.1 stisknuté nebo dokud nenajede přesuvna na koncový spínač vlevo. Tím je možnost kdykoliv najet s přesuvnou do výchozí polohy.
Druhé tlačítko rozjede přesuvnu o rozteč kolejí vpravo. Pokud by však byla přesuvna úplně vpravo tak ji sepnutý mikrospínač vpravo nepustí.
Třetí tlačítko rozjede přesuvnu o rozteč kolejí vlevo. Pokud bude ale úplně vlevo tak ji sepnutý mikrospínač vlevo (výchozí poloha) nepustí.
Počet přejezdů o rozteč kolejí je omezen pouze koncovými mikrospínači. Každý stisk tlačítka č.2 nebo č.3 provede přejezd o jednu polohu.
Tož uvidíme jak to bude fungovat až dodělám mechaniku... :wink:
EDIT: Kód je níže snad nezpůsobí újmu na duševním zdraví zkušených programátorů. :oops:

elektro_přesuvna.jpg

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: sob 02 čer, 2018 8:40 pm
od hopeter
Presuvna.zip
(1.29 KiB) 273 krát

Několik zájemců se ozvalo tak to dám sem... Snad to bude funkční. Základ programu je z ukázkového programu na Arduino schopu , zbytek moje snažení. :oops:

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: ned 03 čer, 2018 10:27 am
od Pater
Presuvna_opr.zip
(1.34 KiB) 262 krát
Máš tam nějaké chybičky. Není jasné k čemu jsou přiřazeny složené závorky, některé dokonce chybí. Trošku jsem poupravil názvy, přidal závorky, ale nevím, zda na správné místa. Zkoušet nebudu, nemám motorek.

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: ned 03 čer, 2018 12:42 pm
od belgarat
Pater: kazdy ma svuj styl. Nechtel jsem do toho vrtat, protoze funkcne to nevadi -- kdyz se v tom autor vyzna.

Male upozorneni - radky 62-70, Presuvna_opr.ino -- zmena semantiky oproti puvodnimu kodu. Puvodni kod UVNITR while provedl posunuti o urcity uhel (prevedeno ja kroky motorku), tzn. otocka * uhel. Zatimco novy kod ma cykly na stejne urovni, tedy se otoci o otocka kroku + uhel. Budto neni spravne tato uprava, nebo je treba rovnez opravit radky 48-55, kde jsou cykly vnorene.

Poznamka: to jsou ty {} a odsazeni prikazu, ktere je v Presuvna_opr.ino (panove prominou) stejne "blbe": vnorene prikazy na stejne urovni jako rizeni bloku (for, while). Je to hnidopiseni a nema smysl se tim zabyvat do doby nez na kodu zacne pracovat vice lidi (s jinyma ocima). Ale kdyz uz Pater zacal opravovat, tak aby to k necemu bylo.

Re: Arduino - jednoduché aplikace pro malá kolejiště.

PříspěvekNapsal: ned 03 čer, 2018 3:30 pm
od hopeter
Oprava programu přesuvna od kolegy Patera nefunguje jako původní. Motor provede pouze otočku o deklarovaný úhel a nikoliv požadovaný počet otoček. Cyklem While jsem řešil možnost otočení motoru o více než 360°. Bohužel jsem zatím nezjistil jak to udělat lépe. Proto je tam v programu více otoček o určený úhel a k tomu ten for cyklus...