Stránka 4 z 5
Re: Malý CNC sústruh/brúska
Napsal: 3. 4. 2016, 6:34
od WatchManiac
Tak už sa hýbe:
tu je
VIDEO
Vydáva to nejaké čudné zvuky, potrebuje to namazať
Ešte zistiť načo je Decay a Stop Current a ako nastaviť, možnože to trochu pomôže aspoň tomu zvukovému prejavu.
Re: Malý CNC sústruh/brúska
Napsal: 3. 4. 2016, 11:11
od Thomeeque
Nó, to je fakt divnej zvuk. Máš tam teď nějakej mikrokrok? A Decay byl jak, na 100%? A napájecí napětí? Čim generuješ pulzy?
Re: Malý CNC sústruh/brúska
Napsal: 5. 4. 2016, 1:46
od WatchManiac
Thomeeque píše:Nó, to je fakt divnej zvuk. Máš tam teď nějakej mikrokrok? A Decay byl jak, na 100%? A napájecí napětí? Čim generuješ pulzy?
Decay bol 100%, ale ak som to zmenil, tak tam nebola nejaká "počuteľná" zmena.
Jediná zmena bola, ak som zmenil Stop current z 50% na 20%, tak motory pri zastavení (niekedy) pištia.
Bez záťaže tie motory idú perfektne, a už som si myslel, že jednoducho nestíhajú... Ale po bádaní som zistil, že to
pravdepodobne pištia tie hliníkové spojky.
A ešte skúsim 24V, či sa to nejako nezlepší.
Ináč, ten zvuk mi nevadí, robí to len pri vyšších rýchlostiach a tie sa moc používať nebudú. A ani to nestráca kroky.
A skúsim zmeniť ten program na riadenie, tak idem ešte laborovať

Re: Malý CNC sústruh/brúska
Napsal: 9. 4. 2016, 12:33
od WatchManiac
Takže tie čudné zvuky som odhalil - z nejakého dôvodu som si myslel, že driver má max. vstupné frekvencie rádovo MHz, ale je to max 20 (resp. 15) kHz. Púšťal som tam pulzy rádovo jednotky mikrosekúnd...
Otázka je ten Decay a Stop current, ako to nastaviť. Nejako sa mi nezdá, že by sa pri rôznom nastavení niečo viditeľne zmenilo. Nechám 100% a 50%?
Re: Malý CNC sústruh/brúska
Napsal: 9. 4. 2016, 1:12
od Mex
To jako že jsi změnil zvuk motoru jen tím, že jsi natáhl délky pulzů (bez změny frekvence pulzů)?
To teda musím schválně vyzkoušet, byla by to pořádná školácká chyba návrhářů toho chipu.
Jinak TB6560 zvládne rozhodně víc než těch 15 kHz. V tom datasheetu je to trochu nešikovně napsané, spousta parametrů se tam vztahuje na kapacitu časovacího kondezátoru 330pF, ale v praxi se většinou používá výrazně rychlejší časování s kondezátorem 100pF. I ty levné moduly z eBay/Ali tam mají osazený 100pF.
Decay by ti zvuk motoru měl změnit, většinou se to sluchem dost liší.
Proud při zastavení motoru bys při jízdě pro změnu sluchem neměl poznat, resp. poznáš jen případné větší nebo menší pískání při stojící ose.
Ten chip TB6560 je takový mix digitálního a analogového návrhu, takže není tak citlivý na přesné hranice časování, jako jsou přísně synchronní kompletně digitální některé novější chipy.
Re: Malý CNC sústruh/brúska
Napsal: 9. 4. 2016, 1:28
od WatchManiac
Mex píše:To jako že jsi změnil zvuk motoru jen tím, že jsi natáhl délky pulzů (bez změny frekvence pulzů)?
No asi je to tak
https://youtu.be/FeXnkXi9eow Ale možno mám nejaké "čudné" drivre...
Re: Malý CNC sústruh/brúska
Napsal: 9. 4. 2016, 3:56
od Thomeeque
WatchManiac píše:Takže tie čudné zvuky som odhalil - z nejakého dôvodu som si myslel, že driver má max. vstupné frekvencie rádovo MHz, ale je to max 20 (resp. 15) kHz. Púšťal som tam pulzy rádovo jednotky mikrosekúnd...
Ještě jednou se zkusím zeptat, čím že to generuješ pulzy? Má to nějaký rampy?
Re: Malý CNC sústruh/brúska
Napsal: 9. 4. 2016, 4:01
od WatchManiac
Thomeeque píše:
Ještě jednou se zkusím zeptat, čím že to generuješ pulzy? Má to nějaký rampy?
Týmto
http://www.c-n-c.cz/viewtopic.php?f=113&t=20220 ale asi už v 10. verzii... Rampy tam nie sú.
Prvýkrát som otázku prehliadol

Re: Malý CNC sústruh/brúska
Napsal: 13. 4. 2016, 3:17
od WatchManiac
Tak konečne dokončené a hlavne funkčné DRO (*), a to je vlastne hlavný dôvod, prečo vlastné riadenie cez MCU.
Na spodok appky ešte pojdu údaje o otáčkach hlavného/supportového vretena, teplota...
Vo finále to bude na win tablete, nie na PC.
Dal som spraviť už aj krycie mechy, snáď cez víkend nahodím. Teraz už len dorobiť supportovú dosku + držiak na nôž a bude prvá špona...
----------------------
(*)
no k tej funkčnosti - je to napísané vo VB.net a je tam ešte jeden problém, s ktorým si neviem rady. Je tu niekto, kto sa vyzná v VB? Že by mi poradil ako vymazať serial buffer?
Re: Malý CNC sústruh/brúska
Napsal: 13. 4. 2016, 5:58
od HonzaCh
Podle
MSDN by na to IMHO měly sloužit metody
DiscardInBuffer() pro přijatá data a
DiscardOutBuffer() pro odesílaná (obojí myšleno jako metoda instance třídy
System.IO.Ports.SerialPort), ale nejsem příslušník VB, tak mi nevěř 100%.
HTH,
H.
Re: Malý CNC sústruh/brúska
Napsal: 13. 4. 2016, 8:53
od Thomeeque
WatchManiac píše:Dal som spraviť už aj krycie mechy, snáď cez víkend nahodím. Teraz už len dorobiť supportovú dosku + držiak na nôž a bude prvá špona...
Fakt? Ty jsi meanwhile tajně vyřešil to vřeteno?

Re: Malý CNC sústruh/brúska
Napsal: 13. 4. 2016, 9:05
od WatchManiac
Thomeeque píše:Fakt? Ty jsi meanwhile tajně vyřešil to vřeteno?

Ale kdeže, ani zďaleka...

Dám tam zatiaľ to moje na proxxonovú hriadeľku, niekde som to tu aj odfotil, alebo mám jedného nepoužívaneho kressa, tak možno to. Len chcem skúsiť, ako to funguje (a či vôbec)
Ináč,
veľmi sa mi pozdával ten nápad s trubkou z tlmiča, možno to skúsim tak. Mám v honde servise odložené nejaké vymlátené tlmiče, tak to pôjdem čeknúť.
A ak bude vnútorný priemer tlmičovej trubky vyhovovať na nejaké ložisko s vnútorným otvorom 8mm, tak skúsim niečo zosmoliť. Chcel by som tam dať tiež proxxon hriadeľku, tá má 8...
Ale ako hovorím, najprv musím overiť či pozdĺžny/priečny posuv vôbec funguje, a ako je to presné...
Re: Malý CNC sústruh/brúska
Napsal: 13. 4. 2016, 9:15
od WatchManiac
HonzaCh píše:Podle
MSDN by na to IMHO měly sloužit metody
DiscardInBuffer() pro přijatá data a
DiscardOutBuffer() pro odesílaná (obojí myšleno jako metoda instance třídy
System.IO.Ports.SerialPort), ale nejsem příslušník VB, tak mi nevěř 100%.
HTH,
H.
Jo, dík moc... Toto mám zmáknuté, akurát implementácia do kódu tak trochu zaostáva

Keď buffer nechám, tak za cca 10 sekúnd to zmrzne (je tam 250000 baud), a keď ho vyprázdnim cez DiscardInBuffer, tak sa to zase seká, korektne fungje len prvá časť splitnutého reťazca...
Potreboval by som to na nejakú podmienku, že cca každých 5sek sa vyprázdni. A to neviem jak... Idem študovať

Re: Malý CNC sústruh/brúska
Napsal: 13. 4. 2016, 11:29
od HonzaCh
WatchManiac píše:Jo, dík moc... Toto mám zmáknuté, akurát implementácia do kódu tak trochu zaostáva

Keď buffer nechám, tak za cca 10 sekúnd to zmrzne (je tam 250000 baud), a keď ho vyprázdnim cez DiscardInBuffer, tak sa to zase seká, korektne fungje len prvá časť splitnutého reťazca...
Potreboval by som to na nejakú podmienku, že cca každých 5sek sa vyprázdni. A to neviem jak... Idem študovať

Tak to nějak nechápu. Asi budeš muset pustit víc info.
Když bych ta data nechtěl, tak bych je tam ani nehrnul, natožpak rychlostí 250k. Jestli jo (chtěl), no tak je holt musím taky dostatečně rychle číst a zpracovat.
Možná Ti napoví
příklad přímo ve VB, který si otevře port, založí samostatné vlákno ("proces") pro čtení z portu, který běží "souběžně" s "hlavním" (co čte řádky z klávesnice) a co přijde z portu, to vypíše na konzolu... Klidně můžeš udělat čtení, které s přijatými daty nebude dělat nic, jen je zapomene.
Discard to smázne víceméně náhodně; co je zrovna v bufferu, to zahodí, uprostřed "řádku" (sériový port nic takového nezná, to až...řekněme pro jednoduchost až ten softwarový objekt [třída SerialPort]). Pokud těch dat máš moc a chceš něco zahazovat tím Discard-em, musíš proto nějak implementovat resynchronizaci...třeba zahodit i první následující řádek, protože pravděpodobně bude neúplný.
Jinak 5s × 250kbps je už docela hromada dat, nedivím se, že se to po 10s "ucpe"…
Sice můžeš vzít třeba timer, nastavit ho na 5000ms a při jeho tiku provést DIscard, ale jak píšu, nevím, k čemu by to bylo dobré, asi nepotřebuješ jen vyprazdňovat z Rx buffer (jinak bys nenapsal to o sekání a splitnutém řetězci).
H.
Re: Malý CNC sústruh/brúska
Napsal: 14. 4. 2016, 7:10
od WatchManiac
Pustím víc info
najprv som to mal takto (dva záznamy len):
Kód: Vybrat vše
Dim str As String = sp.ReadLine()
If str.Contains("A") Then
strPolohaX = str.Replace("A", "")
polohaX = (strPolohaX)
polohaXtb.Invoke(New UpdatePolohaXDelegate(AddressOf UpdatePolohaX), PolohaX)
Invoke(myDelegatePolohaX, polohaX) 'zobrazí hodnotu v textboxe1
End If
If str.Contains("B") Then
strPosuvX = str.Replace("B", "")
posuvX = (strPosuvX)
posuvXtb.Invoke(New UpdatePosuvXDelegate(AddressOf UpdatePosuvX), posuvX)
Invoke(myDelegatePosuvX, posuvX) 'zobrazí hodnotu v textboxe2
End If
to funguje, ale zachvíľu sa zahltí buffer/spomalí sa zobrazovanie na displeji
Keď skúsim toto:
Kód: Vybrat vše
Dim str As String = sp.ReadLine()
Dim polohaX As String = str.Substring(0, 6)
polohaXtb.Invoke(New UpdatePolohaXDelegate(AddressOf UpdatePolohaX), polohaX)
Invoke(myDelegatePolohaX, polohaX)
Dim posuvX As String = str.Substring(6, 6)
posuvXtb.Invoke(New UpdatePosuvXDelegate(AddressOf UpdatePosuvX), posuvX)
Invoke(myDelegatePosuvX, posuvX)
tak to zahlási chybu, nemá (správne???) dáta pri ďalšom loope
Takisto keď tam dám ten DiscardInBuffer()
Z arduina ide: A00.00B00.00\n
Za každú radu budem vďačný.
