Artykuły / Articles

Wtorek, Czerwiec 30, 2020, 12:23

Minimalne wymagania sprzętowe

LinuxCNC powienien dobrze działać na komputerze który posiada:
-procesor o taktowaniu conajmniej 700 MHz x86 (zalecany procesor 1,2 GHz x86)
-conajmniej 384 MB pamięci RAM (zalecane 512 MB - 1 GB)
-dysk twardy conajmniej 8 GB
-karta graficzna o rozdzielczości co najmniej 1024 x 768, która nie korzysta z zastrzeżonych sterowników NVidia lub ATI fglrx i która nie jest wbudowanym mikroukładem wideo, który dzieli pamięć główną z procesorem
-połączenie internetowe (nie jest ściśle potrzebne, ale bardzo przydatne)

Od czego zależy poprawna praca LinuxCNC

Należy pamiętać, że to nie szybkość taktowania procesora ani ilosc pamięci RAM warunkuje to czy komputer nadaje się do pracy w czasie rzeczywistym. Najważniejszym parametrem jest czas, w jakim procesor przystąpi do wykonania zadania od momentu w którym nastąpi rządanie wykonania zadania. Idealna wartośćią byłoby 0, czyli procesor wykonywałby zadanie natychmiast, jednak czas ten jest różny i zmienny, inny dla różnego rodzaju komputerów. Odchyłka od czasu podstawowego nazywana jest jitterem. Jeśli wartość jittera wynosi poniżej 20us, to komputer bardzo dobrze nadaje się do pracy z LinuxCNC. Jeśli wartość wynosi do 50us to nadal można komputera używać do sterowania za pomocą LinuxCNC jednak trzeba liczyć się z tym, że częstotliwość sterowania krokiem będzie niższa. Jeśli wartości jittera przekraczają 50us to raczej trzeba się liczyć z tym, że komputer nie nadaje się do tego zadania.

Test komputera przed instalacją LinuxCNC

Na stronie http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Latency-Test
znajduje się lista przetestowanych konfiguracji sprzętowych wraz z wynikami. Jeśli natomiast chcemy przetestować naszą konfigurację, wystarczy wykonać Latency-Test jeszcze przed instalowaniem czegokolwiek. Aby to zrobić, należy pobrać ze strony LinuxCNC gotowy obraz .iso systemu debian z LinuxCNC, zapisać go na bootowalnym nośniku (płyta CD, pendrige) i uruchomić na komputerze wersję tzw. live czyli ładowaną do pamieci bezpośrednio z nośnika bootowalnego.

Krok 1:
Pobrać obraz systemu klikając w poniższy link:

http://www.linuxcnc.org/iso/linuxcnc-2.7.14-wheezy.iso
Krok 2:
Utworzyć bootowalny nośnik z pobranym obrazem

Krok 3:
Uruchamić komputer który będzie testowany z opcją bootowania z USB lub CD (zależy jaki mamy nośnik)

Krok 4:
Po pojawieniu się menu bootowania, wybieramy opcję Live

Krok 5
Po uruchomieniu systemu Klikamu w menu -> CNC->Latency Test

Jak wykonać Latency-Test

Latency-test to narzędzie dostarczone wraz z Linux-CNC służące do testowania komputera pod względem pracy w czasie rzeczywistym. Latency test konfiguruje i uruchamia jeden lub dwa wątki w czasie rzeczywistym:
-Podtsawowy - szybki z okresem 25us
-Serwo - wolny z okresem 1,0ms.
Ta domyślna konfiguracja odwzorowuje wzorzec konfiguracji dla LinuxCNC.

Za każdym razem gdy wątek jest uruchamiany przez program planujący, mierzony jest czas jaki upłynął od poprzedniego uruchomienia wątku do aktualnego uruchomienia wątku. W systemie idealnym czas ten wynosiłby zawsze tyle, ile wynosi okres pracy danego wątku. W rzeczywistości wartość mierzona różni się od okresu pracy wątku i właśnie wartość tej różnicy (zarówno na plus jak i na minus) określana jest jako Jitter.

Aby uruchomić Latency-test należy uruchomić komputer z LinuxCNC i uruchomić terminal. W terminalu należy wpisać:
latency-test
i nacisnąć Enter.

Uruchomi się okno testu wyglądające tak:

UWAGA! W czasie Latency-test nie należy uruchamiać LinuxCNC.

Pozostawić uruchomiony Latency-test na minimum 15 minut. W tym czasie należy obciążyć komputer:
-kopiowć duże pliki
-przeglądać internet
-przesówać okna po ekranie

Wartość pomiaru to maksymalna wartość z kolumny Max Jitter czyli na przykładu ze screena powyżej wynosi 9.075us.

Więcej informacji:
http://linuxcnc.org/docs/html/install/latency-test.html

Jak przygotować komputer do LinuxCNC

Jeśli komputer nie daje satysfakcjonujących wyników podczas Latency-Test to nie jest jeszcze powód aby go skreślać. Należy się przyjżeć, czy nie posiada właczonej jakiejść opcji (np jakiś mechanizm zarządzania energią) która to własnie powoduje powstawanie dużych opóźnień.

Garta graficzna
Wiele wbudowanych układów wideo powoduje słabą wydajność w czasie rzeczywistym. Najgorsze są te, które wykorzystują część systemowej pamięci RAM dla wideo („pamięć współdzielona”). Jeśli masz problemy w czasie rzeczywistym z systemem wykorzystującym zintegrowaną kartę graficzną, pierwszą rzeczą do zrobienia jest wyłączenie jej i podłączenie innej karty graficznej. Dodatkowo sterownik NVidia o zamkniętym źródle nie działa w czasie rzeczywistym, więc jeśli masz kartę NVidia, powinieneś wypróbować sterowniki „nv” lub „vesa”. Generalnie należy unikać NVIDIA.

Karta dźwiękowa
Wyłącz kartę dźwiękową w bios jeśli jest taka możliwość. Sterownik maszyny to nie komputer do gier i zabaw, podczas pracy maszyny nie ma potrzeby pracy karty dźwiękowej.

Pozostałe ustawienia
Generalnie należy wyłączyć w bios wszystko co się da i co nie jest niezbędne do pracy. Wszystkie tryby oszczędzania energii, skalowania częstotliwości procesora itd.

Źródło:
http://wiki.linuxcnc.org/cgi-bin/wiki.pl?TroubleShooting

Interfejs sterowania

Najbardziej popularny i najprostszym sposobem sterowania jest sterowanie z programowym generowaniem sygnałów/impulsów na port równoległy (tzw. LPT). Powoduje to pewne ograniczenia w częstotrliwości sterowania oraz generuje obciążenie procesora jednak dla większości zastosowań jest wystarczające. Użycie takiego sposobu sterowania jest łatwo dostępne i tanie lub nawet darmowe. Wystarczy komputer wyposażony w port LPT lub przejściówkę USB-LPT o nazwie Linumeric-LPT.

Uwaga!
Standardowe przejściówki USB-LPT nie będą działać z LinuxCNC! Sterownik portu równoległego w LinuxCNC wpisuje dane bezpośrednio do fizycznej pamięci komputera, dlatego żadne emulowane porty nie będą działać. Dodatkowo emulowany port nie posiada gwarancji poprawnego działania z zadaną częstotliwością. System operacyjny wyśle dane do przejściówki wtedy gdy otrzyma czas procesora. Każde opóźnienie lub wysłanie dwóch "paczek" jedna za drugą spowodować może zgubienie kroku przez silnik krokowy. Linumeric-LPT został zaprojektowany specjalnie do LinuxCNC i zapewnia mechanizmy synchronizacji zapobiegające tego typu zdarzeniom.


Brak komentarzy.
(*) Pola obowiązkowe
Ta strona może korzystać z Cookies.
Ta strona może wykorzystywać pliki Cookies, dzięki którym może działać lepiej. W każdej chwili możesz wyłączyć ten mechanizm w ustawieniach swojej przeglądarki. Korzystając z naszego serwisu, zgadzasz się na użycie plików Cookies.

OK, rozumiem lub Więcej Informacji
Informacja o Cookies
Ta strona może wykorzystywać pliki Cookies, dzięki którym może działać lepiej. W każdej chwili możesz wyłączyć ten mechanizm w ustawieniach swojej przeglądarki. Korzystając z naszego serwisu, zgadzasz się na użycie plików Cookies.
OK, rozumiem