
yaqwsx píše:..... LPT V ECP módu má propustnost 2,5 MByte/s, což by na přenos hodnot stepgenů, enkodérů a případných dat pro expanzní IO mohlo stačit.
PiDiCNC 15MBit/s = 1.875MByte/s což je méně než LPT 2.5MByte -> z čehož by se dalo usuzovat že i to LPT je při správném použití dostatečnéMatko píše:Po SPI komunikujeme rýchlosťou 15MBit, môže však byť aj menšia,

Nevím jak kdo doposud nahlížel na latenci, ale technicky vzdělaném člověku tvrzení že "Nepravideľnosť prístupu programu z PC, alebo z Raspberry Pi 2 na PiDiCNC nehrá žiadnu úlohu" nestačí pokud to nepodložíte nějakými fakty (výpočty).Matko píše:Okamih prevzatia rýchlosti a odpamätanie pozície sa určuje v FPGA a tu je latencia na úrovni nanosekúnd.
Pre nás je dôležité iba to, aby sme nestratili cyklus, čiže aby latencia programu neprekročila cca. 0.9 ms.
Vo videu sme chceli iba ukázať, že latencia programu na Raspberry Pi2 je vyhovujúca.
Je potrebné asi zabudnúť na nazeranie na latenciu ako doposial.
Nepravideľnosť prístupu programu z PC, alebo z Raspberry Pi 2 na PiDiCNC nehrá žiadnu úlohu, pokiaľ samozrejme neprekročí vyššie uvedených cca. 0,9ms.
Hardware si sám zabezpečí latenciu na úrovni cca. 50ns.
Vzhledem ke způsobu jakým LinuxCNC (a tedy i PiDiCNC) řídí polohu motorů (ať už jde o Krokové motory nebo Serva) je teoretická možná chyba od požadované daná především maximálním nastaveným zrychlením řídícího systému.
Při akceleraci 1000[mm/sec^2] a latenci 0,9[ms] dojde (může dojít) k odchylce od požadované polohy o 0,405[um]
Při akceleraci 0,5g (4900[mm/sec^2]) a latenci 0,9[ms] dojde (může dojít) k odchylce od požadované polohy o 1,98[um]
Při akceleraci 1000[mm/sec^2] a latenci 0,195[ms] dojde (může dojít) k odchylce od požadované polohy o 0,019[um]
Při akceleraci 0,5g (4900[mm/sec^2]) a latenci 0,195[ms] dojde (může dojít) k odchylce od požadované polohy o 0,093[um]
Nakolik je chyba pro dané použití (které se u hobíka liší od profíka) závažná si už každý přebere nejspíše sám
