Bardzo fajny program, jakiś czas temu dodałem sobie wskaźniki których mi w nim brakowało:
Poprawiałeś kod źródłowy axis czy jakieś componenty typu hal dodawałeś do tego interface żeby mieć te bajery ze wskaźnikami?
Właśnie w LinuxCNC 2.5.4 dopisałem i zainstalowałem nietypową kinematykę do mojej maszynki CNC i chciałbym sobie ją wizualizować podczas testów w trybie manualnym MDI sterując ręcznie tą maszyną kodami G0/G1/G2/G3 g-code.
Podobno vismach do tego się też nadaje, ale w sumie jakby dało radę do axis to dołożyc jak tutaj to by było fajnie widzieć jak powinna zareagować maszyna na to co jest wysyłane do niej z g-code
Nie, napisałem plik xml z parametrami wskaźników i odpowiednio zmieniłem HAL żeby je obsługiwał - wszystko bez grzebania w kodzie źródłowym. Możliwości takiego dokładania funkcji jest mnóstwo więc może i wizualizację uda się dorobić (pola graficzne są, nie wiem jak z danymi wprowadzonym przez MDI).
Przy ewolwentach frezarka znacznie zwalniała z powodu ogromnej ilości linii programu opisujących te krzywe.
Wrzuć dla ciekawości plik z kodem tej zębatki. Puszczę maszynę swoją z frezem w powietrzu i zobaczymy ile u mnie to zajmie, bo na filmiku rzeczywiście mocno zwalnia. Wydaje mi się, że tak nie powinno, nawet pomimo tak wielu linii.
Gizmoń wrote:
jakiś czas temu dodałem sobie wskaźniki których mi w nim brakowało:
Fajne i ciekawe.
Ja chce dodać sobie taki prosty zegarek cyfrowy, który obliczałby na bieżąco ile czasu pozostało do zakończenia programu. Czasami jak się puszcza robotę na kilka godzin, to rachubę łatwo stracić kiedy koniec.
Może jesteś w stanie mnie naprowadzić jak coś takiego zrobić?
Dzięki
Plik z programem w załączniku. Teraz już wiem czemu to szło tak wolno, powodem było użycie komendy G64 bez parametru (choć według instrukcji jest to wtedy "best possible speed"). Wystarczy podać jakąś tolerancję, na przykład G64 P0.05, i jedzie szybko a różnicy w kształcie nie widać.
Taki zegarek to fajny pomysł ale sprawdziłem w instrukcji do HAL dostępne sygnały i nie zauważyłem tam żadnego związanego z czasem. Może coś przeoczyłem a może tego akurat zrobić się nie da bez ingerencji w kod źródłowy.
pola graficzne są, nie wiem jak z danymi wprowadzonym przez MDI
Przez MDI w axis LinuxCNC mam na myśli nie tyle samo wprowadzanie tam tych kodów G-code i M-code, tylko po prostu ręczne sterowanie taką maszynką bez programu fajnie opisane tutaj MDI: CNC For Manual Machinists -coś podobnego robiłem ostatnio w axis w linuxcnc podczas ćwiczenia g-code, bo będę generował z mojego CAE bez CAMów żadnych Chodzi mi obecnie póki co o możliwość przechwycenia tego co wysyła LinuxCNC do maszyny i w tym celu napisałem tzw. kins czyli komponent hal, który ma pozwolić obsłużyć moją nietypową maszynkę CNC z nietrywialną kinematyką
Jak mi się to uda skonfigurować to może nawet pod te współrzędne (aktualizowane podobnie jak w kinematyce tego robota 6dof PUMA linuxcnc-dev/src/emc/kinematics/pumakins.c ) da się podpiąć podczas pracy linuxcnc z axis na początek podczas testów halscope , a docelowo właśnie własną apliakcję do wizualizacji pracy swojej maszyny i jej parametrów.
Ta fotka co wrzuciłem to halmeter pokazujący załadowany hal, bo pozala mi podglądać ten mój komponent eneurokins i jego piny w trakcie projektowania tego.
Całkiem fajne narzędzia a sam hal to wiadomo kobyła
noel200 wrote:
Czasami jak się puszcza robotę na kilka godzin, to rachubę łatwo stracić kiedy koniec.
Apropos tego zegarka-to chyba trzebaby skąś wziąć informację może z CAM jak jest długość wszystkich ścieżek i później w LinuxCNC wyciągać informację na bieżąco ile zostało przejechane, w jakim czasie i na podstawie tego robić estymację całkowitego czasu zakładając że podobne średnie prędkości będą?
Udało mi się skonfigurować LinuxCNC z axis i zamienić domyślną kinematykę na swoją i uruchomiłem dodatkowo zwykły halmeter do podglądania pinów moich kins :
Gdyby te funkcje kins były wołane jakoś po kolei dla kolejnych współrzędnych G-code narzędzia (u mnie [eneurokins.cxeneurokins.cyeneurokins.cz] to mając tą pozycję w przestrzeni i poźniej kolejne, można by policzyć długość przebytej drogi i aktualizować na bieżąco w swoim kins Taki licznik wtedy byłby prosty do zrobienia bo dzielę drogę przebytą przez narzędzie przez całkowitą i mam ile procent już zostało zrobione, czy dodatkowo estymacja czasu pozostałego do zakończenia.
W przyszłym tygodniu będę pisał aplikację do wizualizacji mojej maszyny CNC w trakcie pracy, więc zobaczę czy taka koncepcja się sprawdzi, bo własna kinematykę eneurokins mam już zrobioną i to kilka linijek kodu w C żeby tą przebytą drogę sumować i udostępnić z tych kins .
Przepiękna frezarka jak wiele innych, ale mam takie spostrzeżenie, że każde spawanie powoduje naprężenie. Autor modelu pisze, że spawał z wolnej ręki.
Jak się udało zachować liniowość i kąty proste.
Wydaje się mi, że opis jest bardzo pobieżny. Pokazywanie wszystkiego w tak kolorowych barwach, skusi wielu amatorów. Tymczasem, bez pomocy ślusarza czy mechanika z doświadczeniem, wykonanie takiego urządzenia - prawidłowo działającego jest prawie niemożliwe. Proszę Państwa, krzywo wlutowany opornik niema znaczenia ale nierównoległe osie to koszmar w takiej zabawce.
Pozdrawiam Andrzej
Jakim programem konstruowałeś płytkę serwa? Możesz mi dodać plik serwa do tego programu? Zależy mi by go tak przerobić abym wszystkie tranzystory miał w z dłuż dłuższego wymiaru płytki tak bym go mógł je wszystkie przykręcić do jednego radiatora, oraz złącza zasilające po drugiej stronie. Bardzo proszę o pomoc.
Możesz kupić u niego gotowe płytki, zaprogramowane układy i dostać porady.
Pozdrawiam Andrzej
Dzięki za sugestie. Mam wykonane SSK-b02 ale to jest badziewie w porównaniu do tego. Przy wyższych prędkościach gubi krok. Mam wykonaną już ten cały sterownik tylko BUZ11 mam przykręcone na dużym radiatorze z wentylatorem. Jednak każdy z nich musiałem poprowadzić przewodem, a chciałbym na płytce w jednej lini. Po trzecie mnie cieszy jak coś sam zbuduję a nie kupię, Za dwukrotną cenę. Dzieciom możesz taki kit wciskać.
"Dzięki za sugestie. Mam wykonane SSK-b02 ale to jest badziewie w porównaniu do tego. Przy wyższych prędkościach gubi krok. Mam wykonaną już ten cały sterownik tylko BUZ11 mam przykręcone na dużym radiatorze z wentylatorem. Jednak każdy z nich musiałem poprowadzić przewodem, a chciałbym na płytce w jednej lini. Po trzecie mnie cieszy jak coś sam zbuduję a nie kupię, Za dwukrotną cenę. Dzieciom możesz taki kit wciskać. Bardzo Cię Przepraszam".
Z Twojej wypowiedzi, zapytania nie wynikało jak bardzo jesteś zaangażowany w tym temacie. Wypada mi tylko pogratulować zapału.
Jak ja kończyłem Polibudę, był jeden falownik na uczelni. Studenci mogli go tylko oglądać. W tym czasie w przemyśle falowniki, sterowniki itd były już w maszynach. Cieszy mnie istnienie ELEKTRODY, ta wzajemna pomoc jest cenniejsza niż wykłady w szkołach.
Pozdrawiam Andrzej
Przepiękna frezarka jak wiele innych [...] Jak się udało zachować liniowość i kąty proste? Wydaje się mi, że opis jest bardzo pobieżny. Pokazywanie wszystkiego w tak kolorowych barwach, skusi wielu amatorów. Tymczasem, bez pomocy ślusarza czy mechanika z doświadczeniem, wykonanie takiego urządzenia - prawidłowo działającego jest prawie niemożliwe.
O zachowaniu kątów i innych pisałem już wcześniej, najważniejsze jest idealne dopasowanie łączonych elementów i porządne mocowanie podczas spawania. Robiąc to pierwszy raz dobrze jest najpierw spróbować na jakichś ścinkach profili, mi wystarczyła jedna taka próba.
Opis bardzo pobieżny? No... Chyba jest bardziej szczegółowy niż wiele innych
Quote:
Jakim programem konstruowałeś płytkę serwa?
Wszystkie płytki zaprojektowałem w darmowym ExpressPCB.
Ostatnio pobawiłem się w dalsze udoskonalanie interfejsu LinuxCNC. Oto efekt:
Co prawda nie udało mi się zrobić zegara odliczającego czas do końca programu ale za to jest bardzo fajny nastawnik pozycji (jog wheel) wykorzystujący kółko w myszce. Jest znacznie wygodniejszy niż strzałki na klawiaturze lub ekranie podczas ustawiania offsetów "na papierek" czy materiału do obróbki z różnych stron. Dla wszystkich chętnych zamieszczam kod do wklejenia w postgui.hal:
Code: bash
Log in, to see the code
oraz do zapisania jako plik xml:
Code: xml
Log in, to see the code
Oprócz tego trzeba w *.ini dopisać pod etykietką DISPLAY: PYVCP i nazwę pliku XML (na przykład PYVCP = panel.xml).
Witam.
Zaczynam budować frezarkę z ruchomą bramką. Bramka napędzana jest dwoma śrubami i tu mam pytanie: czy ktoś z kolegów próbował napędzać każdą śrubę osobnym serwomotorem? Dwa silniki jeden enkoder.
Jeśli już to dwa silniki, dwa enkodery i dwa sterowniki. Taki z resztą był mój pierwszy pomysł na napęd bramy. Zrezygnowałem z niego na rzecz połączenia mechanicznego ponieważ ma sporo wad:
- wyłączony serwomotor, w przeciwieństwie do silnika krokowego, stawia bardzo mały opór. Łatwo więc o "rozjechanie się" napędu lewej i prawej strony co może doprowadzić do tego, że wycięty przez maszynę kąt prosty będzie miał tyle samo stopni co wrząca woda - w razie awarii jednego z napędów (np. zacięcie skutkujące wyłączeniem) znowu rozjedzie się geometria maszyny.
- zaobserwowałem, że przy włączaniu zasilania serwo czasem lubi drgnąć o kilka stopni. Bardzo rzadko ale i tak znowu geometrię szlag trafi.
Najłatwiej chyba kupić gdzieś kilka pasków zębatych albo nawet jeden dość długi, "spiąć" nim obydwie śruby i mieć spokój.
Witam
jak mam tak rozwiązaną bramę na serwach (dwa silniki z enkoderami i 2 sterowniki), pomimo tego że mam sygnał error z nich spięty i jak jeden się wysypie drugi też stanie to dla pewności przed rozpoczęciem pracy lub po błędzie któregoś serwa zawsze zjeżdżam na krańcówkę bramą i mam wtedy pewność że kąt prosty ma 90 stopni Pozdrawiam
Dziękuję za odpowiedzi.
zastosuje jeden serwomotor i napęd na drugą śrubę przeniosę paskiem.
Mam jeszcze pytanie. Czy w Twoim układzie można zastosować tranzystory IGBT?
(...)
- zaobserwowałem, że przy włączaniu zasilania serwo czasem lubi drgnąć o kilka stopni. Bardzo rzadko ale i tak znowu geometrię szlag trafi.
(...)
Czy udało się w jakiś sposób wyeliminować to zjawisko? Zrobiłem frezarkę z sterownikami w Twojej wersji i dosyć często przy włączaniu pojawia się to zjawisko. Tylko u mnie osi potrafią się o kilkanaście cm przesunąć. Dla bezpieczeństwa silniki do sterowników połączane są poprzez przekaźniki. Przekaźniki sterują krańcówki, także oś mi szkody nie narobi, ale zawsze jak włączam maszynę to mam stresa
Na razie zapobiegawczo planuje silniki do sterowników podłączyć po kilku sekundach od uruchomienia całości.
Jeszcze chciałem podziękować kol. Gizmoń, bo opublikowany kompaktowy projekt skłonił mnie do wykonania własnej maszyny na serwach DC .
Bardzo dobrze, że kolega o to zapytał! Inaczej nie zwróciłbym uwagi, że nie widziałem takich przeskoków w mojej maszynie od czasu gdy wymieniłem interfejs pomiędzy nią a komputerem na udoskonalony, z filtrami RC i przerzutnikami Schmitta (wersja IMM 11/5/s). Czyli tak, udało się je wyeliminować a przyczyną musiały być zakłócenia indukowane w przewodzie LPT.
Kiedyś spróbuję zmodyfikować program sterowników żeby zaczynały pracę z niewielkim opóźnieniem, gdy już wszystkie napięcia w układach się ustabilizują. Autor użył jakiejś dziwnej wersji asemblera ale może dam radę
Dzięki za odpowiedz!
Faktycznie wygląda to na zakłócenia od przewodu lpt/komputera. Twoje sterowniki używam też w dwóch innych maszynkach, nie podłączonych do PC i tam żadnych niekontrolowanych ruchów przy włączaniu nie ma.
Do podłączenia z LPT mam taką płytkę:
Pierwszy lepszy szajs z Chin . Jaki byłby najprostszy sposób rozwiązanie problemu? Bo podejrzewam że masz ciekawsze rzeczy do zrobienia niż kompilowanie smc .
Dodanie tego opóźnienia to pestka, wszystko rozbija się właśnie o kompilację. Używam AVR Studio i niby nie ma błędów, niby jest plik .hex ale po wgraniu działa tylko zielona dioda (nawet po skompilowaniu oryginalnego programu bez wprowadzonych zmian). Szkoda, bo mam kilka pomysłów na drobne udoskonalenia i bajery Wracając do przeskoków, oczywiście najlepiej usunąć przyczynę a nie skutek. Proponuję na początek przylutować do nóżek złącza DB25 po kondensatorku 1...10nF między każdą linię STEP a masę. Powinna nastąpić zauważalna poprawa. Co to za układy scalone, te z 20 nóżkami blisko gniazda?
Hmm, a na cnczone szukałeś? Tam udziela się pewien potomek Rusa, który zrobił swoją wersję elm'a. Może tam się znajdzie jakaś wskazówka odnośnie kompilacji.
Te układy to 74HC245D. Ok to dołożę po ceramicznym. Dzięki!
... i całe pudło różnych porządnych i bardzo mocnych silników prądu stałego wymontowanych z drukarek atramentowych.
Jakiej mocy mogą być te silniki ?
Wyjąłem z kilku drukarek silniki podobne do Twoich, ale przy 24V pobierają tylko około 100mA bez obciążenia. Można je przytrzymać palcami (choć z trudem).
@Gizmoń mam też C6419-60058 i nie znalazłem zbyt dużo danych o nim Ten który podałeś w ostatnim poście ma sprawność tylko 23% ?
Czy można w Twoim sterowniku, zastosować mostek L298 ?
PS
Ten powyższy zatrzymałem kombinerkami, bo chciałem sprawdzić max prąd. Zobaczyłem 2,8A/24V Niestety mimo zdobycia kilku drukarek jest to mój jedyny silny DC Ale się nie poddaje
Pierwsze testy robiłem własnie z l298. Działał ładnie, ale bardzo szybko poszedł z niego dym. Bawiłem się małym silnikiem z drukarki. Także polecam od razu zainteresować się mosfetami.
Połączyłeś w L298 równolegle 2 kanały, czy spaliłeś na jednym ? Jakie zastosowałeś diody ?
Dla silników "drukarkowych" przy prądzie 3A/24V powinien spokojnie wytrzymać (przy odpowiednim radiatorze).
Pytam, ponieważ cenowo L298=11zł, układ driver+BUZ11=28zł.
Raczej nie ma to znaczenia , ale wydaje mi się że miałem podłączone równolegle. Zadymił przy nagłym hamowaniu z dużej prędkości. Na niewielkich prędkościach pracował dobrze. Ale na prawdę szkoda zachodu z l298, skoro 50amperowe mosfety są za 1PLN.