Siedzę sobie i staram się poukładać w głowie co i jak z tym linuxem


Uploaded with ImageShack.us
Mamy dwie bramy, jedna z osią obrotową, obrotową oś z funkcją toczenia i kołyskę.
Oczywiście wszystko to nie będzie nigdy używane w jednym momencie. Bramy chciałbym napędzać obrotową nakrętką i najlepiej 2 x servo. Pierwsze pytanie czy da się to zrobić pod linuxem, mówię o dwóch serwach napędzających jedną oś. Widziałem takie rozwiązanie u użytkownika Gmaro ale tam sterowanie to był mach z CMISO IP chyba. Czy linux to ogarnie?
Kolejna sprawa czy linuxCNC poradzi sobie z bezpośrednim sterowaniem serwami w taki sposób że będzie generował PWM dla mostka H zasilającego silnik ? O bezszczotkowych serwach DC nie myślałem ale jak klikałem sobie w Linuxie w zakładce Pncconfig to natknąłem się na zakładki wspominające o tych serwach, czy linux da rade wygenerować przebiegi potrzebne do sterowania takimi serwami?
Teraz co do samego hardwaru, szukam szperam i bardzo ciekawą opcją wydają się karty MESA, zakładając to wszystko co wymieniłem potrzebował bym naprawdę wiele wejść i wyjść.
oś X na bramie niskiej - 2 x serwo do napędu bramy , dwa wrzeciona sterowane wspólnym falownikiem w zależności od potrzeb ale mimo to dwa oddzielne encodery. Razem 4 encodery, 2x pwm do serwa i 1 pwm do falownika
OŚ x na bramie wysokiej - 2 x serwo do napędu bramy, jedno wrzeciono, jedno serwo do nastawiania uchylnego wrzeciona.
Razem 4 enkodery, 3 x pwm do serw (drugie wrzeciono będzie korzystało z tego samego falownika co wrzeciona na drugiej bramie)
Kołyska 1 serwo - 1 encoder , 1 pwm
4 Oś z funkcją toczenia - 1 serwo , silnik do napędu przy toczeniu (przepinane ręcznie) - 2 encodery , 1 pwm , falownik ten sam co do pozostalych wrzcion.
Daje nam to razem zapotrzebowanie na: 11 encoderów i 8 wyjść PWM
Z tego co wywnioskowałem wertując strony internetowe i forum (powinno być to do zrobienia). Potrzebna by były 2 karty mesa z których do każdej można podpiąć kartę córkę czyli np 2x MESA 5i25 superport + 3 x MESA 7i85S Opis kart Mesa kolegi z forum
Czy to co piszę trzyma się kupy czy bujam w obłokach? Jak należy traktować sygnał index z Encodera? Chodzi mi o to czy przy bazowaniu danej osi serwo czeka na sygnał z krańcówki mechanicznej gdy krańcówka mechaniczna zadziała serwo dojeżdża do Indexu i od niego zaczyna odliczać poszczególne impulsy encodera?
Co do samej konfiguracji to mam pewne wyobrażenie, tzn miałbym przygotowany config pod każdy typ operacji (wszystko na jednym komputerze). Czyli np wykonuje jakiś króciec zaczynam od toczenia więc podjeżdżam bramą z nożem do osi z funkcją toczenia uruchamiam config jako tokarka i aktywna jest oś Y i oś Z falownik przekaźnikiem spięty jest z silnikiem napędzającym tą oś. Maszyna zaczyna robotę, obtoczy co trzeba (reszta wyjść/ wejść jest w tym momencie nieaktywna) po skończonej robocie odpinam pasek z silnika napędzającego wrzeciono i zakładam pasek do serwa napędzającego uchwyt jako 4 oś. Otwieram odpowiedni config, odpowiedni przekaźnik (sterowany wyjściem z mesy) spina falownik z wrzecionem np wolnoobrotowym, oś obrotowa bazuje sie na sygnale Index i powiedzmy frezuje powierzchnie pod klucz. Rozumiem że takie funkcje bazowania itp trzeba sobie samemu napisać (z tego co wiem robi się to w C) czy się mylę ?
Przepraszam że tyle tematów na raz ale jestem świeży w linuxie jako systemie operacyjnym i dosyć ciężko mi się połapać.
Pozdrawiam