Stránka 3 z 7

Napsal: 19 dub 2019, 23:37
od jova1
Na to nulování můžu v nejhorším posílat o jedno číslo větší nebo menší hodnotu. Sice píšu BCD palcová předvolba, ale ve skutečnosti to předvoluji výstupy z procesoru. Udělat tam další BCD výstup na jednotky by nebyl problém. +-1 krok mě netrápí. Enkoder má 25 000 pulzů na otáčku, tam se to ztratí :D

Napsal: 20 dub 2019, 08:17
od lesana87
Zanedbávat off-by-one chybu je nesystémové a jednou se to vymstí.
Jestli na to dobře koukám, tak pokud se čítače přednastavují na náběžnou hranu signálu Borrow, tak je součástí cyklu i stav 0 a pak bude při resetování signálem "větší než" v obou směrech cyklus stejně dlouhý. Jen navolená hodnota 14 znamená cyklus dlouhý 15 taktů, 99 znamená 100.

Napsal: 20 dub 2019, 08:37
od danhard
jova1 píše:Enkoder má 25 000 pulzů na otáčku, tam se to ztratí :D

Naopak, potřebuješ, aby se neztratil jediný pulz a poloha byla v absolutním poměru celých čísel :)
Jedna otáčka kolečka musí být přesně počet zubů x otáčky frézy.

Napsal: 20 dub 2019, 22:08
od jova1
Ta ztráta pulzu byla myšlena při tom zastavení a náhodném couvnutí zpět. Při chodu vpřed samozřejmě žádní impulzy vypadnout nesmí a ani nevypadávají. :D

Napsal: 21 dub 2019, 17:50
od danhard
Jestli není zaručen jen pohyb jedním směrem, tak to musí být udělané jako obousměrný čítač.
Kolik pulzů na otáčku má to kolečko ?
Kolik je přesně pulzů na otáčku frézy ?
Jaké jsou max. otáčky frézy ?
V jakém rozsahu jsou počty zubů ?

Napsal: 21 dub 2019, 18:27
od jova1
To že to musí být oboustranný čítač je mi jasné, proto to řeším.

Kolik je přesně pulzů na otáčku frézy?
Enkoder má 25 000 pulzů na otáčku, elektronika mi bere obě náběžné hrany, takže do děličky jde 50 000pulzů na jednu otáčku frézy.

Kolik pulzů na otáčku má to kolečko ?
To se nedá jednoznačně říct, záleží kolik chci vyfrézovat zubů. Mám to udělané tak, že když těch 50 000 pulzů jde na servo které mám nastavené na 1 otáčka na 1 000 pulzů. Pak je tam šneková převodovka 1:50 takže jsem při elektronické děličce 1:1 na jedné otáčce frézy a jedné otáčce výstupu z převodovky. Když chci vyfrézovat 10 zubů nastavím elektronickou děličku na 1:10.

Jaké jsou max. otáčky frézy ?
Opět se to nedá přesně říct. Jde o to, že servo má určitý maximální počet pulzů které stíhá. Pokud budu frézovat kolo se 100 zuby, tak můžu mít otáčky frézy v řádu tisíců za minutu, pokud 4 zuby tak tuším 250, nebo tak nějak.

Napsal: 21 dub 2019, 18:57
od danhard
Takže už to máš sesouhlasený, modul děličky je přímo počet zubů.

Napsal: 21 dub 2019, 20:33
od jova1
Ano, připadalo mi to tak stavebně nejjednodušší. Jen jsem se zaseknul na té číslicové děličce.

Napsal: 21 dub 2019, 21:30
od danhard
Budeš tam potřebovat ještě 74HC688 a asi 74HC74.
Nech to vymyslet lesanu, ta je šikovná :)

Napsal: 21 dub 2019, 21:36
od lesana87
Se 74HC688 to budeš muset vymyslet ty, lesana radila 74HC682.
Kdyby do serva nemuselo lítat tolik pulsů na otáčku, tak by šlo použít dvě/tři 192ky jako stupidní obousměrnou předděličku 100/1000 a zbytek si dořešit v tom picaxe.

Napsal: 21 dub 2019, 21:48
od danhard
To by nešlo, protože potřebuješ generovat ty výstupní pulzy okamžitě, ne s četností obsluhy picaxe.
Není to odměřování, kde tě zpoždění zpracování netrápí.

Napsal: 21 dub 2019, 21:57
od lesana87
To je ten picaxe takovej sráč, že nestíhá řídit v reálným čase jednu osu?

Napsal: 21 dub 2019, 22:35
od danhard
Je tam ještě další problém, když je dělička obousměrná, tak by i to servo mělo fungovat oběma směry :)

Napsal: 21 dub 2019, 23:14
od jova1
Picaxe je na to strašně pomalé, stíhá pár kHz. :(
Já tam mám v současnosti cca něco takového. Z toho enkoderu vytáhne ty pulzy (signál SPEED) a zároveň 7474 posílá signál DIRECTION, což je vlastně logické vyjádření směru. To mi ovládá servo jakým směrem se má točit. Předpokládám, že by to mohlo řídit i směr té děličky.

Napsal: 22 dub 2019, 17:16
od danhard
Potřebuješ vygenerovat Up a Down hodiny a stejně to bude generovat dělička při přetečení, nebo podtečení.