Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Jajo - drukarka (drukarka do pisanek)

.:KoSik:. 04 Apr 2019 19:20 9282 45
  • #31
    .:KoSik:.
    Level 18  
    Gizmoń wrote:
    bo to są o-ringi, prawda?

    Tak, to oringi. Miałem pod ręką parę od klimatyzacji samochodowych więc się przydały ;D

    Gizmoń wrote:
    Jestem też pod wrażeniem wydrukowania funkcjonalnej sprężyny. Mocno chropowata, ale działa i nie pęka - nie ukrywam, że dla mnie jest to zaskoczenie

    Sam nie wierzyłem, że będzie działać ;) ale udało się i byłem zaskoczony jej sprężystością. Jest chropowata, bo drukowałem z supportem i nie chciało mi się jej oczyszczać.

    tplewa wrote:
    Ja bardziej piszę o sytuacji aby rysunek wyszedł ładny bez zniekształceń itp. - tak jak by rozwinąć jajko na powierzchnię płaską... W innych przypadkach jak wspomniałem nawet wymiar nam jest niepotrzebny tylko liczba kroków silnika na jeden obrót

    Tu się zgadza. Żeby zachować wymiary trzeba by skalować rysunek do wielkości jajka. Jednak różnice w wielkości jajek nie są wielkie i przy rysowaniu prostych szlaczków nie potrzeba nic więcej poza ilością kroków na obrót.

    tplewa wrote:
    Natomiast co do programu to owszem można użyć czego się chce, ale w matlabie po prostu szybciej (a mam w firmie licencjonowaną wersję więc nie mam problemu) i nie potrzeba bawić się w pośredni G-Kod który IMHO po pierwsze jest przerostem formy nad treścią w takim urządzeniu, a po drugie firmware które chce użyć nawet go nie obsługuje...

    Coś mi tu nie gra. Każda maszyna CNC używa g-kodu, a to że go nie widzisz, nie oznacza, że go nie ma. Przecież jakikolwiek program musi wysłać komendy do plotera (maszyny CNC). Co do matlaba - fajnie, że możesz korzystać ale ja osobiście do prostych rozwiązań preferuję proste narzędzia.

    Gizmoń wrote:
    Całe to urządzenie to jeden wielki przerost formy nad treścią A, o takie transformacje chodzi. To nie tyle średnica by była potrzebna, co cały profil przekroju wzdłużnego. Zawracanie głowy moim zdaniem, rzeczywiście trudne do realizacji, a bez tego rysunki przecież wcale nie wychodzą takie złe. No i najważniejsze: po korekcie może i wyglądałyby idealnie, ale tylko przy patrzeniu na wprost. Pod innym kątem rozjeżdżałyby się już kompletnie.

    W wersji "dla upartych" można by pokusić się o skan laserowy przeliczenie go na aktywny obszar roboczy. Czemu by nie :lol:
  • Computer ControlsComputer Controls
  • #32
    tplewa
    Level 38  
    @KoSik

    Ale to nie jest typowa maszyna CNC ;) i wystarczy zerknąć w banalnie prosty kod programu aby stwierdzić że nie używa G-Kodu ;) bo jak stwierdziłem był by to lekki przerost formy nad treścią, ot ktoś kto to tworzył nie marnował czasu na pisanie czegoś co nie będzie i tak wykorzystane nawet w małym procencie... mógł użyć jak to bywa w Arduino jakąś bibliotekę - tylko po co jak można prościej ;) Zobacz że oryginalny eggbot nawet nie ma krańcówki ;)

    Miało by to np. sens dodając kartę SD i wtedy faktycznie można by używać sprzętu bez komputera :) Oczywiście jak ktoś chce może użyć dowolnego firmware - co wiać w tym wątku... ja wybieram to co zastosowali w eggbocie bo jak wspomniałem jak przyjdą mi PCB będę miał niewiele czasu na polutowanie i uruchomienie całości. Tak zapewne by elektronika inaczej wyglądała (może nawet właśnie z USB pod pendrive lub kartą SD). Inna sprawa to dla mnie to ma być proste bo to ma obsłużyć córka, więc tłumaczenie jej co to jest G-Kod itd. mija się z celem bo to ma być dla niej coś co da trochę radości i zabawy bez wnikania w niuanse techniczne...

    Może kiedyś jak mnie najdzie i będę miał więcej wolnego czasu to zrobię coś bardziej rozbudowanego z zmianą pisaków itp. i wtedy bardzo prawdopodobne że użyję G-Kodu... no ale czas pokaże :)


    Natomiast Matlab jest jak najbardziej bardzo prostym narzędziem - umożliwiającym testowanie różnych rozwiązań od prostych do bardzo skomplikowanych w krótkim czasie - właściwie zajmujemy się sednem problemu, a nie cała otoczką jaką czasem trzeba stworzyć w innych językach programowania - inna sprawa zawsze można użyć darmowego Octave :) Ale to jak mówię jak kto woli :)

    .:KoSik:. wrote:

    Gizmoń wrote:
    Jestem też pod wrażeniem wydrukowania funkcjonalnej sprężyny. Mocno chropowata, ale działa i nie pęka - nie ukrywam, że dla mnie jest to zaskoczenie



    Działają jednak jest wada szybko się degradują... z moich doświadczeń najlepiej wychodziły mi z ABS-u :) W sumie jest sporo projektów gdzie sprężyna jest drukowana czy to zegarki czy to inne cuda...
  • #33
    Erbit
    Level 39  
    Gizmoń wrote:
    Ale po co komu obwód? Napiszę jeszcze raz: wystarczy wiedzieć jak długi rysunek odpowiada 1 obrotowi jajka, i do tego właśnie wymiaru skalować graficzki. Nieważne czy jajo jest duże czy małe, każde wykona 1 obrót, a więc na każdym rysunek pokryje całą powierzchnię i ładnie zejdzie się na końcach. Niczego nie trzeba mierzyć ;)
    ...


    Kolega ma rację. Co najwyżej na większym jajku wzory będą większe a na mniejszym, mniejsze. Skalowanie wielkości wzoru odbywa się "samodzielnie" poprzez średnicę jajka.

    Narysujcie sobie dwa koła (większe i mniejsze) o wspólnym środku to zrozumiecie o czym napisał kolega Gizmoń.

    Skalowanie do średnicy spowodowałoby, że wzorki na jajku byłyby takiej samej wielkości niezależnie od średnicy jajka.
  • #34
    tplewa
    Level 38  
    Erbit wrote:
    Gizmoń wrote:
    Ale po co komu obwód? Napiszę jeszcze raz: wystarczy wiedzieć jak długi rysunek odpowiada 1 obrotowi jajka, i do tego właśnie wymiaru skalować graficzki. Nieważne czy jajo jest duże czy małe, każde wykona 1 obrót, a więc na każdym rysunek pokryje całą powierzchnię i ładnie zejdzie się na końcach. Niczego nie trzeba mierzyć ;)
    ...


    Kolega ma rację. Co najwyżej na większym jajku wzory będą większe a na mniejszym, mniejsze. Skalowanie wielkości wzoru odbywa się "samodzielnie" poprzez średnicę jajka.

    Narysujcie sobie dwa koła (większe i mniejsze) o wspólnym środku to zrozumiecie o czym napisał kolega Gizmoń.

    Skalowanie do średnicy spowodowałoby, że wzorki na jajku byłyby takiej samej wielkości niezależnie od średnicy jajka.


    Kolego to wiemy ;) Chodziło o trochę inny temat, a raczej takie moje przemyślenia ;)

    Tutaj w zasadzie znając ilość kroków warto jedynie dobrać długość rysunku by nie przedobrzyć w jedną lub w drugą stronę oraz zachować przy skalowaniu proporcje wydruku tzn. długość/szerokość ;) W sumie nie sprawdzałem jeszcze ale jest template do Inscape przygotowany przez twórców EggBot-a który zapewne jakoś optymalnie zrobili...

    W sumie może w weekend poszukam bo gdzieś miałem Mega32U4 na płytce prototypowej to może uda mi się to na pająka jakoś wstępnie odpalić zanim przyjdą mi z produkcji PCB...

    No i przy ręcznym rysowaniu zadbać o to by się wzorki zeszły, czyli początek i koniec był na tej samej wysokości...

    No ale jak mówię to wszystko to bardziej takie kombinowanie z ciekawości - bo w praktyce malowania jaj raczej nie będzie to miało jakiegoś większego znaczenia...
  • #35
    .:KoSik:.
    Level 18  
    Gizmoń wrote:
    Ale po co komu obwód? Napiszę jeszcze raz: wystarczy wiedzieć jak długi rysunek odpowiada 1 obrotowi jajka, i do tego właśnie wymiaru skalować graficzki. Nieważne czy jajo jest duże czy małe, każde wykona 1 obrót, a więc na każdym rysunek pokryje całą powierzchnię i ładnie zejdzie się na końcach. Niczego nie trzeba mierzyć


    Może grafika pomoże w tej dyskusji:
    Jajo - drukarka (drukarka do pisanek)

    Jeszcze raz napiszę, że oczywiście przy jajkach to nie ma większego znaczenia, bo średnice nie różnią się zbytnio i tych zniekształceń nie będzie widać ale co jeśli będziemy chcieli ozdobić bombkę choinkową? Wtedy to skalowanie może mieć już większe znaczenie.

    tplewa wrote:
    Ale to nie jest typowa maszyna CNC i wystarczy zerknąć w banalnie prosty kod programu aby stwierdzić że nie używa G-Kodu bo jak stwierdziłem był by to lekki przerost formy nad treścią, ot ktoś kto to tworzył nie marnował czasu na pisanie czegoś co nie będzie i tak wykorzystane nawet w małym procencie... mógł użyć jak to bywa w Arduino jakąś bibliotekę - tylko po co jak można prościej Zobacz że oryginalny eggbot nawet nie ma krańcówki

    Faktycznie ktoś użył swoich rozkazów. Najprawdopodobniej po to aby stosować wyłącznie oryginalne oprogramowanie. Dla mnie kompletny bezsens. Obsługa g-kodu jest tak samo skomplikowana jak to, a daje dużo większe możliwości, jak chociażby...

    tplewa wrote:
    W sumie nie sprawdzałem jeszcze ale jest template do Inscape przygotowany przez twórców EggBot-a który zapewne jakoś optymalnie zrobili...

    Nie znam tego oprogramowania. To tylko przypuszczenia ale właśnie gdy chciałbyś na tym urządzeniu zrobić cokolwiek innego musisz zmieniać sterownik lub oprogramowanie. Ja odpalam inny program czy g-kod pobrany z internetu i voilà!
    To oczywiście tylko teoretyczne rozważania i rozumiem, że możesz wcale nie chcieć używać jej do czegoś innego :wink:
  • Computer ControlsComputer Controls
  • #36
    Erbit
    Level 39  
    .:KoSik:. wrote:
    ... oczywiście przy jajkach to nie ma większego znaczenia, bo średnice nie różnią się zbytnio i tych zniekształceń nie będzie widać ale co jeśli będziemy chcieli ozdobić bombkę choinkową? Wtedy to skalowanie może mieć już większe znaczenie.
    ...


    Oczywiście ale czemu to przeszkadza?

    Dochodzimy do momentu, w którym dla jednego szklanka jest w połowie pełna a dla drugiego w połowie pusta. Dalsze dyskusja o tej części algorytmu jest bezsensowna.
  • #37
    tplewa
    Level 38  
    .:KoSik:. wrote:

    Faktycznie ktoś użył swoich rozkazów. Najprawdopodobniej po to aby stosować wyłącznie oryginalne oprogramowanie. Dla mnie kompletny bezsens. Obsługa g-kodu jest tak samo skomplikowana jak to, a daje dużo większe możliwości, jak chociażby...


    Raczej to co mówię ktoś poszedł na uproszczenie i zrobił własną prostą komunikację co przy urządzeniu wymagającym ciągłego podłączenia do PC ma sens. Jak wspomniałem G Kod ma ogromne możliwości i był by to lekki przerost formy nad treścią i niepotrzebne rozbudowanie kodu. Choć może by dodać jakieś G76 itp. ;) to by można było ;) Tutaj koś miał prostą koncepcję plugin do programu graficznego + proste urządzenie. Jak wspomniałem G Kod praktycznie jest znany ludziom zajmującym się CNC i w pewnej ograniczonej ilości komend drukarkami 3D. Jak wspomniałem gdyby to było autonomiczne rozwiązanie z kartą czy USB to ok :) To można przyrównać bardziej do plotera gdzie tylko niektóre obsługują (obsługiwały) G Kod...

    Zresztą jak mówię nic nie stoi na przeszkodzie by odpalić firmware podobne do kolegi, tylko ja od strony praktycznej nie widzę większej różnicy (tworzenie projektu malowania jajka w jakimś CAD czy ręcznie klepiąc G Kod średnio widzę. Prawdę mówiąc nie mam najmniejszego pojęcia co nie mogę w tej chwili zrobić tą maszynką, a mógł bym zrobić jak by był - poza jakąś fanaberią że mogę wygenerować go z innego programu... tutaj też jak się uprę i napiszę soft to to zrobię ;) )... a jak bym chciał córkę pomęczyć to bym zabrał do garażu i dał się pobawić frezarką z Mach3 (ale ją to akurat średnio interesuje ;) )

    Bardziej bym się cieszył właśnie z jakiegoś jeszcze prostszego oprogramowania bo niestety Inscape do najprostszych też nie należy, właśnie dlatego aby było łatwiej młodszym ;)


    Natomiast co do mojej maszynki to powoli się składa :)

    Jajo - drukarka (drukarka do pisanek)
  • #38
    .:KoSik:.
    Level 18  
    tplewa wrote:
    Raczej to co mówię ktoś poszedł na uproszczenie i zrobił własną prostą komunikację co przy urządzeniu wymagającym ciągłego podłączenia do PC ma sens.


    Jako, że rozmowa staje się trochę bez sensu przejdźmy do konkretów.
    Uważasz, że g-kod jest czymś strasznym i skomplikowanym - nadal nie rozumiem czemu. Dodatkowo jako argument podajesz, że Twoja córka nie zna się na g-kodach, a przecież wcale nie musi. Uważasz również, że skrypt do programu graficznego nie mógłby wysyłać komend jako g-kod chodź mnóstwo maszyn cnc jest tak sterowana - nie koniecznie z karty pamięci; a drukarka do jajek jest również maszyną cnc i to właściwie 3-osiową.
    Twoje myślenie jest całkowicie błędne, bo oto Twój prosty kod sterujący to np:
    - ruch głowicy - "SM,<move_duration>,<axis1>,<axis2><CR>"
    - ustawienie statusu pióra - "SM,<move_duration>,<axis1>,<axis2><CR>"

    Dla porównania g-code:
    - ruch głowicy - G01 X13.146553 Y2.807370 Z-1.000000
    - opuszczenie pióra - M5 S90

    Z której strony kod zwany "EBB Commands" jest prostszy od g-code?
  • #39
    tplewa
    Level 38  
    .:KoSik:.

    Nigdzie nie napisałem że G Kod jest trudny, napisałem że jest to przerost formy nad treścią bo nie użyje się możliwości jakie on daje nawet w minimalnym stopniu. Przy sterowaniu czegoś z komputera za zwyczaj stosuje się proste protokoły komunikacji (a przynajmniej warto to upraszczać). To leci sobie po kabelku i nie widzimy tego - więc najmniej jest istotne czy to będzie binarnie czy ładnie w postaci w miarę prostego do zrozumienia. Po prostu nie widzę przewagi G-Kodu w tego typu zbawce nad dowolnym protokołem, owszem można udowadniać na siłę jak to robi kolega. Tylko niech kolega da konkretny przykład czego nie narysuję na jajku nie mając tego G-Kodu ? W takim wypadku można by do HP wysłać pismo dlaczego nie ma go w drukarkach bo to wszak też urządzenie które można porównać do CNC ;)

    Natomiast kolega na prawdę nie musisz mi pisać o G Kode bo prawdę mówiąc mam trochę do czynienia i z CNC i trochę pojęcia o tym mam (może nawet używam komend z którymi kolega nie miał do czynienia np. wspomniana G76 ) ;)

    Natomiast co jest prostsze... budowa parsera... Po co mi pisać rozbudowany parser który ma obsłużyć parę komend na krzyż :) A jak kolega nie wierzy to niech napisze ten kod od zera (a nie używa gotowej biblioteki) to zrozumie o czym piszę...

    Przykładowo to co napisał kolega:
    .:KoSik:. wrote:
    Po drugie, po każdym wygenerowaniu pliku z Gcode trzeba plik ponownie poddać obróbce. Postprocesor zamienia rozkazy podniesienia i opuszczenia pióra.


    Po co mi to ? Jakie ułatwienie/zaletę ma coś takiego od rysowania po naciśnięciu przycisku ? Jaką przewagę daje użycie tego postprocesora ?

    Tylko realny przykład, a nie że coś sobie wymyślę bo na takiej zasadzie to można wszystko udowodnić, nawet że ziemia jest płaska ;)
  • #40
    .:KoSik:.
    Level 18  
    tplewa wrote:
    W takim wypadku można by do HP wysłać pismo dlaczego nie ma go w drukarkach bo to wszak też urządzenie które można porównać do CNC

    Drukarka atramentowa czy laserowa to nie CNC.

    tplewa wrote:
    Natomiast kolega na prawdę nie musisz mi pisać o G Kode bo prawdę mówiąc mam trochę do czynienia i z CNC i trochę pojęcia o tym mam (może nawet używam komend z którymi kolega nie miał do czynienia np. wspomniana G76 )

    Widać nie za dużo, bo kolega nie ogarnia nawet co to CNC - https://pl.wikipedia.org/wiki/Computerized_Numerical_Control

    tplewa wrote:
    Natomiast co jest prostsze... budowa parsera... Po co mi pisać rozbudowany parser który ma obsłużyć parę komend na krzyż A jak kolega nie wierzy to niech napisze ten kod od zera (a nie używa gotowej biblioteki) to zrozumie o czym piszę...

    Niech kolega nie pisze tu o parserach, bo to zupełnie inny temat tylko napisze w którym miejscu g-kod, który wkleiłem jest bardziej skomplikowany od tego "prostszego".

    tplewa wrote:
    Po prostu nie widzę przewagi G-Kodu w tego typu zbawce nad dowolnym protokołem, owszem można udowadniać na siłę jak to robi kolega.

    Kolega pewnie również nie widzi przewagi microUSB nad Lightning, ale to już kolegi sprawa. Ja nawet nikomu nie chcę nic udowadniać. Nie lubię po prostu jak ktoś pisze takie głupoty i podaje się za znawcę, bo ma np. frezarkę w garażu. Ja nie jestem specjalistą i być może moja teoria nie jest słuszna i jeśli tak proszę podać konkrety, a nie opowiadać bajki. To forum techniczne.

    Jeśli chodzi o moje zdanie to uważam, że g-code ma przewagę nad innymi rozwiązaniami, bo jest uniwersalny i mogę sobie uruchomić dowolny program i obsłużyć dane urządzenie. Rozwiązanie z eggbota blokuje dostęp do wolnego oprogramowania, dając ograniczoną funkcjonalność.

    tplewa wrote:
    Po co mi to ? Jakie ułatwienie/zaletę ma coś takiego od rysowania po naciśnięciu przycisku ? Jaką przewagę daje użycie tego postprocesora ?

    To moje rozwiązanie i może się oczywiście nie podobać ale to nie rozwiązanie wymagane do obsługi g-kodów.

    tplewa wrote:
    Tylko realny przykład, a nie że coś sobie wymyślę bo na takiej zasadzie to można wszystko udowodnić, nawet że ziemia jest płaska

    Co jest tym przykładem? Nie widzę konkretów.

    Podsumowując, jeśli kolega ma zamiar znów pisać ogólnikami, proszę by kolega założył odrębny wątek. Tutaj utrzymamy poziom techniczny.
  • #41
    tplewa
    Level 38  
    .:KoSik:.

    Kolego wybacz, napisałeś ciąg bzdur z których nic nie wynika. To kolega określił to urządzenie jako CNC:

    .:KoSik:. wrote:

    Coś mi tu nie gra. Każda maszyna CNC używa g-kodu, a to że go nie widzisz, nie oznacza, że go nie ma. Przecież jakikolwiek program musi wysłać komendy do plotera (maszyny CNC).


    A dla mnie to jest bardziej ploter (dodam że takie urządzenia kiedyś nie posiadały obsługi G Kodu, a obecnie poza tnącymi który jest rozwinięciem pomysłu praktycznie nie są używane), drukarka do nadruku na jajkach, tak jak są dedykowane drukarki do nadruku na płytach CD/DVD itd. czy kartach z tworzywa. Tak samo drukarki wielkoformatowe obecnie zastępujące dawne plotery rysujące nie posiadają obsługi G Kodu...

    Nie wiem dlaczego akurat coś co maluje na jajkach właśnie kolega określił maszyną CNC która musi mieć G Kod (zwłaszcza że osoby które to wymyśliły czyli twórcy eggbota stwierdzili że G Kod nie jest potrzebny), a zarówno kolegi rozwiązanie jak i moje to są w zasadzie klony tego pomysłu w różnym wykonaniu...

    .:KoSik:. wrote:

    tplewa wrote:
    Natomiast co jest prostsze... budowa parsera... Po co mi pisać rozbudowany parser który ma obsłużyć parę komend na krzyż A jak kolega nie wierzy to niech napisze ten kod od zera (a nie używa gotowej biblioteki) to zrozumie o czym piszę...

    Niech kolega nie pisze tu o parserach, bo to zupełnie inny temat tylko napisze w którym miejscu g-kod, który wkleiłem jest bardziej skomplikowany od tego "prostszego".


    Niby dlaczego mam nie dotyczyć jak to dotyczy sedna czyli firmware w tym urządzeniu ? Czy konstruowania takiego urządzenia... Po prostu projektując urządzenie w takiej postaci nie widzę najmniejszego sensu używania G Kodu ani zalety. Nie zależnie czy zapis dla człowieka jest prosty czy nie... Jak komuś się nudzi owszem może to zrobić, ale nie widzę jakiejkolwiek przewagi praktycznej.

    Do teo co ma tutaj USB i Lightning ? Czy ja o czymś takim wspominałem ? Jedyne o tym że przy urządzeniu sterowanym bezpośrednio z komputera, praktycznie protokolik komunikacji w jego najwyższej warstwie może być dowolny i nie ma to większego znaczenia dla użytkownika urządzenia. Bo czy kolega się zastanawia nad tym co się dzieje i co leci po WiFi/USB itp. jak naciska print w edytorze tekstu ? Czy istnieje taka potrzeba aby się nad tym zastanawiać ?

    W jednym kolega ma rację G Kod jest uniwersalny i powstał niejako standard aby było łatwiej, aby każdy producent maszyny nie musiał wymyślać koła na nowo. Tylko akurat to jest zabawka która w zasadzie nie musi być z niczym kompatybilna, grunt by miała oprogramowanie z którego można coś wydrukować...

    Nigdzie nie napisałem też że jestem specjalistą - kolega robi jakieś niepotrzebne docinki. Tak samo nie napisałem nigdzie (to kolegi urojenia) że kolegi projekt jest zły.

    Poprostu nie widzę nigdzie przewagi jednego rozwiązania nad drugim, widzę większy nakład pracy który w dodatku nie ułatwia bo potrzeba używać dodatkowego postprocesor. Dlaczego tak a nie inaczej - nie wiem. Zapewne może autor tego rozwiązania by coś więcej napisał dlaczego takie rozwiązanie, a nie inne. Dlaczego użył GRBL itd.

    Więc ciągle zadaję proste pytanie czego nie namaluję na jajku (bo to ma robić to urządzenie) gdy nie zaimplementuje w nim obsługi G Kodu ? Bo ja czegoś takiego nie widzę... Można ale nie daje to jakiejś przewagi poza zwiększeniem nakładu pracy jak najdzie mnie na napisanie sobie firmware od zera na inny procesor niż atmega czy nawet rezygnacji z Arduino którego po prostu nie lubię co też będzie wymagało jego przepisania...

    No i pytanie czy kolega używając G Kode np. komend do gwintu narysuje gwint na jajku ? Czy takie komendy ma kolega zaimplementowane ? Jeśli nie to dlaczego ?
  • #42
    .:KoSik:.
    Level 18  
    tplewa wrote:
    Kolego wybacz, napisałeś ciąg bzdur z których nic nie wynika. To kolega określił to urządzenie jako CNC:

    Tak. Określiłem i dlatego uważam zastosowanie g-kodu za oczywiste. Gdzie ten ciąg bzdur. Znów kolega zapomniał konkretów.

    tplewa wrote:
    zwłaszcza że osoby które to wymyśliły czyli twórcy eggbota stwierdzili że G Kod nie jest potrzebny

    Znów użyję tego porównania, którego kolega nie zrozumiał. To, że ktoś tak wymyślił nie oznacza, że to jest dobre, tak jak użycie wtyku Lighting zamisat microUSB w iPhone. Zrobiono to po to aby przywiązać klienta do marki. Nie wiem po co to zrobiono w eggbicie ale głupotą jest wymyślanie koła na nowo (chyba, że dla kasy).

    tplewa wrote:
    Niby dlaczego mam nie dotyczyć jak to dotyczy sedna czyli firmware w tym urządzeniu ? Czy konstruowania takiego urządzenia...

    Używana komenda nijak się ma do parsowania danych. Można stosować dowolne. Śmiało można w tym oprogramowaniu zmienić te komendy na g-code.

    tplewa wrote:
    Nigdzie nie napisałem też że jestem specjalistą - kolega robi jakieś niepotrzebne docinki. Tak samo nie napisałem nigdzie (to kolegi urojenia) że kolegi projekt jest zły.

    Mam wrażenie, że kolega forsuje swoje przekonania olewając rzeczowe argumenty. Nasza dyskusja jest oczywiście czysto teoretyczna, bo obydwa rozwiązania są w tym wypadku wystarczające . Nie mam urojeń i nie twierdzę, że kolega tak napisał.

    tplewa wrote:
    Poprostu nie widzę nigdzie przewagi jednego rozwiązania nad drugim, widzę większy nakład pracy który w dodatku nie ułatwia bo potrzeba używać dodatkowego postprocesor. Dlaczego tak a nie inaczej - nie wiem. Zapewne może autor tego rozwiązania by coś więcej napisał dlaczego takie rozwiązanie, a nie inne. Dlaczego użył GRBL itd.

    Napisałem już jaka jest przewaga w poście wcześniej. Nie ma większego nakładu. Software jest porównywalny. W moim rozwiązaniu trzeba używać postprocesora ale to nie ma nic wspólnego z g-code.

    Użyłem biblioteki GRBL bo jest darmowa i uniwersalna. Daje duże możliwości konfiguracyjne i możliwość użycia dowolnego software'u obsługującego g-code.

    tplewa wrote:
    Więc ciągle zadaję proste pytanie czego nie namaluję na jajku (bo to ma robić to urządzenie) gdy nie zaimplementuje w nim obsługi G Kodu ? Bo ja czegoś takiego nie widzę...

    Nie wiem. Nie używałem eggbota. Podejrzewam, że możliwości obydwu urządzeń są podobne.

    tplewa wrote:
    Można ale nie daje to jakiejś przewagi poza zwiększeniem nakładu pracy jak najdzie mnie na napisanie sobie firmware od zera na inny procesor niż atmega czy nawet rezygnacji z Arduino którego po prostu nie lubię co też będzie wymagało jego przepisania...

    Nie bardzo rozumiem... Eggbot jest na Arduino i biblioteka GRBL też. O jaki nakład pracy koledze chodzi?

    ...ale dość już tych kłótni. My tu gadu gadu, a czy kolega już odpalił swój sprzęt? Czekam na efekty :D
  • #43
    tplewa
    Level 38  
    Kolego po pierwsze trochę jakiegoś nerwosolu ;) To jest dyskusja i ja ciebie nie atakuję, ale w dyskusji czasami tak bywa że się wymienia argumenty. Zwłaszcza jak mówimy o konstrukcji urządzeń to argumentujemy często dlaczego tak, a nie inaczej to zostało rozwiązane.

    Kolejna sprawa drugi już raz nie zapoznałeś się z faktami.

    Eggbot nie zrobił tego by kogokolwiek do czegokolwiek przywiązywać. Oryginalny jest wykonany na mikrokontrolerze PIC i wszystkie kody źródłowe są dostępne (dałem zresztą do nich link).

    Moim zdaniem jest to co napisałem zrobili tak aby pisząc kod nie komplikować tego niepotrzebnie.

    Więc nie jest również prawdą że eggbot jest na Arduino. Klony eggbota natomiast jak najbardziej oparte są na Arduino i jak widzisz tutaj mamy różne podejścia, ktoś użył ogromnej biblioteki z dużymi możliwościami (jak rozwiązanie które wykonałeś), a ktoś inny np. chłopaki z jjrobots tworząc klona Sphere-O-Bot skorzystali z oryginalnego protokołu i napisali prosty kod który jak widać spełnia swoje zadanie.

    Prawdę mówiąc mówienie kogoś o przywiązaniu to można mówić o firmach Apple, ale nie o takich konstrukcjach gdzie wszystko masz udostępnione i możesz wykonać jak widzisz na milion sposobów. Zresztą zostawmy to Apple bo to są odmienne stany świadomości i to co robi ta firma to trudno czasem w jakikolwiek rozsądny sposób komentować ;)

    Kolejna sprawa CNC... Nazwałeś to CNC i ok ;) Ja nazwałem to drukarką bo jest to urządzenie IMHO bardziej podobne do tego co robi drukarka wielkoformatowa czy ploter niż do tego co robi np. tokarka CNC :) Natomiast gdy piszę o CNC dajesz mi link do wikipedii i powiedz że w ten opis na Wiki łapie się zabawka do malowania po jajkach, bo ja mam spore opory by ją tak zaklasyfikować. Konstrukcyjnie w zasadzie jest podobna i do drukarki wielkoformatowej i do tokarki :)

    Kolejna sprawa jak mówiłem ciebie nie atakuję - ale chętnie usłyszał bym dlaczego np. projektując takie urządzenie od zera czyli tworząc elektronikę, firmware itd. zastosował być G Kod, jakie by to dało przewagę - i przewagą nie jest sdandard bo jak wspomniałem podciąganie zabawki pod maszynę CNC jest mocno wątpliwe :)

    Można znaleźć wiele zabawek gdzie są jakieś rozwiązania mechaniczne, czasem bardzo podobne do stosowanych w maszynach CNC, ale to nie czyni z nich maszyn CNC.

    Ja mam podejście proste, projektując jakiekolwiek urządzenie ma spełniać ono pewne założenia. W tym ma być to rozwiązanie rysowania po jajkach i innych tego typu np. bombki itp. Założenia projektowe zostały spełnione bo nie zaprzeczysz w obu przypadkach mamy ten sam efekt. Jednak sugerujesz że to rozwiązanie jest nie najlepsze i twierdzisz że przewagę ma wersja wspierająca G Kod.

    Jeśli tak jest to w prosty sposób możesz mi odpowiedzieć na proste pytanie, czego ja nie narysuję na jajku jeśli nie mam obsługi G Kod-u... I proszę bez ekstremy bo zaraz dojdziemy że aby malować jajka to musimy kupić sobie jeszcze Autocada czy Solidworks-a ;)

    Natomiast jak chcesz moją opinię o to dlaczego ktoś użył GRBL, bo niestety świat arduino to klocki. Mało kto wysila się by coś zrobić optymalnie (bo mało kto używający Arduino potrafi dobrze programować, co widać po kiepskiej jakości wielu bibliotek), a ta biblioteka akurat się sprawdziła i nie trzeba było wiele myśleć - to jest jedyne sensowne dla mnie użycie tej biblioteki w takim projekcie.

    Jak masz inne zdanie to uzasadnij to merytorycznie, a nie atakiem czy przykładami że Apple coś tam zrobiło... bo to delikatnie mówiąc jest z pupy argumentacja...

    Ja przykładowo dałem ci przykład kiedy by było sensowne użycie G Kodu... ty jak na razie piszesz o maśle maślanym i zero konkretów... dlaczego tak zrobić, a nie inaczej.

    Choć nie przepraszam... za pewien argument można uznać to że zabawka jest kompatybilna z maszynami CNC... Tylko ja poddaje wątpliwość czy ta zgodność jest do czegokolwiek potrzebna i jakie można mieć z niej korzyści.


    Albo powiedzmy inaczej. Robisz projekt w firmie, jak byś argumentował szefowi tworząc taką zabawkę (nie możesz użyć gotowej biblioteki z jakiś względów np. prawnych) że musisz w niej zaimplementować obsługę G Kodu co wpłynie na większą ilość pracy, a co za tym idzie koszt powstania projektu...
  • #44
    .:KoSik:.
    Level 18  
    tplewa wrote:
    Kolego po pierwsze trochę jakiegoś nerwosolu To jest dyskusja i ja ciebie nie atakuję, ale w dyskusji czasami tak bywa że się wymienia argumenty.

    Nerwosolu raczej nie potrzebuję. Co do dyskusji - dyskusja to wymiana zdań, poglądów. Kolega ze mną nie rozmawia, a wciska mi swoją prawdę. Zaraz pewnie zarzuci mi urojenia ale ja mam na to dowód :cunning:
    Kolejny raz pojawiają się pytania:
    tplewa wrote:
    Jeśli tak jest to w prosty sposób możesz mi odpowiedzieć na proste pytanie, czego ja nie narysuję na jajku jeśli nie mam obsługi G Kod-u...

    i
    tplewa wrote:
    ale chętnie usłyszał bym dlaczego np. projektując takie urządzenie od zera czyli tworząc elektronikę, firmware itd. zastosował być G Kod, jakie by to dało przewagę

    i jeszcze
    tplewa wrote:
    Jak masz inne zdanie to uzasadnij to merytorycznie, a nie atakiem czy przykładami że Apple coś tam zrobiło... bo to delikatnie mówiąc jest z pupy argumentacja...

    a na te pytania już odpowiedziałem. Wystarczyło przeczytać.


    tplewa wrote:
    Więc nie jest również prawdą że eggbot jest na Arduino.

    nijak się ma do:
    tplewa wrote:
    Oryginał używa jako elektroniki Arduino Leonardo + JJrobots´s Brain SHIELD ( https://www.jjrobots.com/product/b-robot-electronic-brain-shield/ )
    Niestety nie posiadam na stanie żadnej płytki arduino, a zakup + wykonanie płytki shield-a mijał się trochę z celem to stwierdziłem że upcham to na jednym PCB.

    Toż to kolegi słowa.


    tplewa wrote:
    Natomiast jak chcesz moją opinię o to dlaczego ktoś użył GRBL, bo niestety świat arduino to klocki.

    Arduino to klocki, a w tym wypadku ktoś użył GRBL bo działa, jest dobra i uniwersalna. W tym wypadku GRBL użyłem ja, bo mój projekt to nie kopia urządzenia z internetu i jak już wcześniej napisałem, podałem powód wykorzystania tej biblioteki.

    tplewa wrote:
    Jednak sugerujesz że to rozwiązanie jest nie najlepsze i twierdzisz że przewagę ma wersja wspierająca G Kod.

    Wcale tak nie twierdzę.

    tplewa wrote:
    Albo powiedzmy inaczej. Robisz projekt w firmie, jak byś argumentował szefowi tworząc taką zabawkę (nie możesz użyć gotowej biblioteki z jakiś względów np. prawnych) że musisz w niej zaimplementować obsługę G Kodu co wpłynie na większą ilość pracy, a co za tym idzie koszt powstania projektu...

    Po pierwsze nie wpłynie na większą ilość pracy, bo obsługa g-code jest dość prosta i jak również już napisałem porównywalna z obsługą kodu eggbota. Po drugie, wymyślenie swojego kodu to dużo większy nakład pracy. Po trzecie, to naturalne, że używamy standardów jeśli spełniają one oczekiwania.

    tplewa wrote:
    Kolejna sprawa jak mówiłem ciebie nie atakuję

    Jako, że mam odmienne zdanie, bo kolega nie raczył odpowiedzieć na moje wcześniej zadane pytanie, nie będę już kontynuował tej przepychanki słownej. Pozdrawiam kolegę i czekam na fotki z postępów prac
  • #45
    tplewa
    Level 38  
    No to po kolei.

    Co do arduino i słowa oryginał - pisząc to jako oryginał miałem rozwiązanie nie eggbot-a, a jego klona pod nazwą sphere-o-bot który faktycznie używa Arduino.

    Dlaczego wybrałem zrobienie elektroniki na ATMega - zgodną z Arduino ? Z prostego powodu... miałem zamiar udostępnić projekt PCB i schemat (po części poza ceną też nie dawałem z tego powodu układów a4988 na PCB tak jak w oryginalnym eggbocie bo mogą one być dla wielu trudne w przylutowaniu) , a mikrokontrolery PIC są u nas mniej popularnie i wiele osób nie ma do nich programatora.

    Kolejna sprawa to pewne rozróżnienie. Mianowicie czegoś takiego co to jest protokół komunikacji, a co to jest format danych. Przy komunikacji za pomocą dowolnie czego czy to ethernet/USB/RS232 mamy do czynienia z protokołem komunikacji, a G Kod to właściwie format danych (plików) - który generowany jest przez różne oprogramowanie czy to będzie slicer w druku 3d, czy w przypadku obrabiarek moduł CAM do oprogramowania w którym tworzymy projekt.

    Nawet w maszynach CNC często bywa tak że "interpretacją" danych G Kodu zajmuje się np. wbudowany PC, a sama komunikacja z częścią wykonawczą (czyli sterującą śilnikami/falownikami itd.) jest realizowana już za pomocą specyficznego protokołu dla producenta danej maszyny.

    Tutaj w tym wypadku (eggbota) mamy właśnie do czynienia z sterowaniem części wykonawczej która nie musi zajmować się interpretacją G Kodu gdyż zrealizowano sterowanie bezpośrednio w programie do rysowania.

    W przypadku maszyn CNC jest to nierealne bo każdy program CAD musiał by posiadać umiejętność obsługi każdej maszyny CNC (coś jak sterowniki w systemie operacyjnym do drukarek itp.) dlatego powstał uniwersalny format czyli G Kod..

    Ten protokolik z eggbot-a dla zaoszczędzenia przepustowości połączenia PC/ATMega można by zrobić całkowicie binarnie i nie było by najmniejszego problemu. Zapewne zrobiono to tekstowo z tego powodu by w łatwy sposób osoby mniej zorientowane mogły sobie napisać program/plugin do sterowania z innego programu, a barak dużej bibioteki znacznie upraszcza sam firmware.

    Teraz dlaczego ja zrezygnowałem z rozwiązania z G Kod. Po pierwsze na to nie wpadłem - ot nie znalazłem takiego rozwiązania w internecie. Większość jakie znalazłem bazowały albo na PIC-u czyli kompletna kopia eggbot-a, albo na rozwiązaniu sphere-o-bot.

    Kolejna sprawa jak wspomniałem projekt miał w początkowej fazie być zrealizowany na innym procesorze, konkretnie na STM32 które są tańsze od ATMega32U4 i mam ich sporo na stanie. Jednak wiązało by się to z napisaniem kodu i mimo jego prostoty trzeba by na to poświęcić chwilę czasu, nie wspominając o użyciu G Kodu gdzie zajmowało by to jeszcze więcej czasu... Niestety z powodu że zabrałem się za to trochę później niż zakładałem (inne projekty komercyjne) oraz czasu na wykonanie PCB w ostatniej chwili zdecydowałem się jednak na użycie ATMega przez co udało mi się to zrobić w kilka godzin jakie mogłem wygospodarować na "zabawę".

    Sam problem G Kod-u wynikł bardziej z tego że wzorowaliśmy się na całkiem innych projektach, a kolega nie spojrzał w kod mojego i stwierdził że musi być G Kod ;)

    Co zresztą ma nawet pewien plus, bo spowodowało że zaczynam się zastanawiać trochę nad elektroniką całkowicie niezależną. Z pendrive/kartą SD i małym LCD jak to w drukarkach 3D aby urządzenie nie wymagało stałego podpięcia do PC, może nawet WiFi (wtedy całością można by sterować za pomocą np. ESP32) i właśnie przesyłanie plików gcode na kartę w taki sposób.
  • #46
    tplewa
    Level 38  
    Dobra był weekend więc chwile czasu miałem na pogrzebanie przy maszynce...

    Elektronika polutowana, na chwile obecną dwie sztuki kompletne (do dwóch brakło mi procków na stanie - heh myślałem że mam więcej w domu)... Zapewne jak się trochę wyluzuje to dokupię i polutuję do końca (może do innego sprzętu się przyda - lub jak by ktoś chciał mogę odsprzedać po kosztach).

    Jajo - drukarka (drukarka do pisanek)

    heh dopiero zobaczyłem teraz opis na PCB REV V1.0 ;) a powinno być REV 1.0, no ale tak to jest jak się PCB robi po nocach ;) Trochę śmieszne...

    Całość na chwile obecną poskładana, wymienne uchwyty na magnesach do markerów itd. Do tego wstępne sprawdzenie tzn. czy się kręcą silniki oraz czy działa serwo. Niestety na pomalowanie jakiegoś jajka brakło czasu, może dzisiaj uda się to przećwiczyć ;)

    Jajo - drukarka (drukarka do pisanek)

    Jajo - drukarka (drukarka do pisanek)

    Jajo - drukarka (drukarka do pisanek)

    Jajo - drukarka (drukarka do pisanek)

    Jajo - drukarka (drukarka do pisanek)