CNC 3D minimum

Proste programy do obsługi maszyn CNC, vivery, itp. Programy darmowe, napisane przez użytkowników forum
Awatar użytkownika

Autor tematu
Inf-el
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 573
Rejestracja: 22 cze 2004, 18:41
Lokalizacja: Szczecin
Kontakt:

CNC 3D minimum

#1

Post napisał: Inf-el » 25 mar 2007, 22:46

Doznałem chęci i potrzeby stworzenia prostego programu do projektowania 3D dla mojej
maszynki. Jeszcze nie wiem jaki będzie interfejs użytkownika.
Chcę aby program miał następujące możliwości:
- używanie do rysowania myszki, klawiatury, manipulatorka SpaceTravel lub podobnego.
- zastosowanie prowadnic liniowych i płaszczyznowych, przyklejania obiektów do nich i do siebie na wzajem.
- import dxf, stl, cnc, bmp, plt
- export dxf, stl, cnc, bmp, plt
- tworzenie bibliotek gotowych elementów
- używanie skryptów tekstowych

Chciałbym dać użytkownikowi duże możliwości rozbudowy i dostosowania programu do swoich potrzeb i możliwości.

Dołączam aktualny stan prac.
Program przy wyświetlaniu bazuje na OpenGL.
Proszę rozpakować i uruchomić.
Testowałem na Win98, NT4.0, Win2000, XP Pro, Server 2003 , Vista Home Basic

Jeśli program Wam zadziała bez problemów (zawieszanie itp) to proszę o wypowiedzi
o sensowności tego kierunku jazdy.

2007.04.24 - postępy:
- możliwość wczytania chmury punktów
- możliwość wczytania plików binarnych STL
- możliwość wczytania plików g-code (na razie interpretuje tylko G0 i G1)
- poruszanie się klawiszami zbliżanie i oddalanie=(a,z) inne=(x,c,w,s), obroty wokół osi (e,d,v,b)
- skalowanie = < >
- poruszanie sie = myszką z prawym klawiszem
- obracanie widoku = myszka ze środkowym klawiszem
- poruszanie kursora 3D = myszka z lewym klawiszem
- możliwość ustawienia widoku z 3 miejsc xv,xz,yz
- pokazał się kursor 3D (jeszcze surowy)
- więcej przykładów (chmury, stl, g-kody)
- dodałem światło przed kursorem 3D (można je wyłączać klawiszem l)
--------------
- i wreszcie można rysować (jeszcze topornie ale pracuję nad tym)
przesuwamy kursor 3D myszką lub wpisujemy jego współrzędne i zatwierdzamy
klawiszem ` lub przyciskiem V (obraz będzie widoczny od 2 punktu)
Tak wygenerowaną ścieżkę można zapisać do g-code (na razie bez optymalizacji)

Jest jeden błąd: przy ponownym wczytywaniu pliku trzeba pamiętać o zmianie katalogu (stl,cnc,xyz,plt). Nie wiem dlaczego ale nie działa polecenie ustawiające katalog.

Jeśli program się nie uruchamia a inne wykorzystujące opengl tak to proszę
skasować z katalogu cnc3d bibliotekę opengl32.dll.
Załączniki
tlo.jpg
Ekran programu
tlo.jpg (57.19 KiB) Przejrzano 2479 razy
cnc3d.zip
1 rozpakować
2 z katalogu cnc3d uruchomić edcnc3d.exe
(2.31 MiB) Pobrany 1435 razy
Ostatnio zmieniony 24 kwie 2007, 22:27 przez Inf-el, łącznie zmieniany 31 razy.



Tagi:


roman_ows
Stały bywalec (min. 70)
Stały bywalec (min. 70)
Posty w temacie: 1
Posty: 72
Rejestracja: 20 sie 2005, 23:21
Lokalizacja: Poznań

#2

Post napisał: roman_ows » 26 mar 2007, 01:34

Działa-orzełek fruwa i nic nie zakłócało jego lotu.

Pozdrawiam

Awatar użytkownika

x
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 243
Rejestracja: 29 mar 2006, 23:24
Lokalizacja: Laski, gm. Izabelin

Re: CNC 3D minimum

#3

Post napisał: x » 26 mar 2007, 10:46

Inf-el pisze:- w tekstowej części interfejsu chciałbym umożliwić pisanie skryptów
teoretyczny przykład polecenia skryptowego:
narysuj(domek(sredniej_wielkosci,wysokosc=20mm))
Chcę aby skrypty mogły wywoływać inne skrypty.
Program pilnowałby aby nie można było wpisać błędnie lub sprzecznie.
To polecenie skryptowe wydaje się mało konkretne ale: program już wie co to znaczy domek i sredniej_wielkosci z poprzednich skryptów.
Coś mi się kojarzy, że piszesz w Delphi. Jeśli jednak w C/C++, to możesz sobie ułatwić pracę, i wbudować do programu gotowy interpreter języka Lua. To mały, ale sprytny język z prostym interfejsem C/C++.

Tutaj ktoś połączył język lua z toolkitem FLTK - i powstaje przenośne środowisko skryptowe z interfejsem graficznym: MurgaLua

Ja się zainspirowałem Twoim poprzednim programem, i robię sobie coś takiego pod Linuksa (pod Win może też będzie działać, o ile w ogóle będzie działać). Ale podstawowy warunek: uwzględnianie kształtu narzędzia, 16-bitowa skala szarości, i możliwość "nakładania" bitmap na conajmniej dwa sposoby. Na razie mam programik testowy, w fazie "U mnie działa!", który przetwarza jpg->stl i stl->jpg - chciałem go wrzucić do działu "OpenSource" ale nie wiem, czy jest sens.

Jak będę pod Windowsem (mam Me) to popatrzę jak to działa. Albo poczekam na v. 0.0.2.

Awatar użytkownika

Autor tematu
Inf-el
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 573
Rejestracja: 22 cze 2004, 18:41
Lokalizacja: Szczecin
Kontakt:

Re: CNC 3D minimum

#4

Post napisał: Inf-el » 26 mar 2007, 11:02

do roman_ows : pod jakim systemem testowałeś ?
x pisze:Coś mi się kojarzy, że piszesz w Delphi.
Tak, niestety piszę w Delphi. Popatrzę sobie na lule może wykorzystam jakieś pomysły
x pisze:Na razie mam programik testowy, w fazie "U mnie działa!", który przetwarza jpg->stl i stl->jpg
Koniecznie się nim podziel.
Może i u mnie zadziała pod SUSE.

Nie wiem czy nasi wybitni zespołowi generatorzy algorytmów zastosują swoją wiedzę w praktyce mimo zdobytych medali.
Może jeszcze kogoś zmotywujemy do pisania programów do konkretnego wykorzystania.
Program to w dzisiejszej dobie tak samo ważne narzędzie jak wiertarka a czasami ważniejsze.

Awatar użytkownika

x
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 243
Rejestracja: 29 mar 2006, 23:24
Lokalizacja: Laski, gm. Izabelin

#5

Post napisał: x » 26 mar 2007, 12:40

O.K. Wieczorem go wypuszczę, moze jeszcze ktoś będzie się chciał pobawić.

Fajnie, że użyłeś OpenGL. Też się tym ostatnio trochę bawiłem, i nie jest to takie straszne jak wieszczą różni "wtajemniczeni". Z "glutem" zrobienie interaktywnego podglądu jest całkiem łatwe. Trudniej, jeśli chcesz robić edycję, np. "zaznaczyć" jakąś linie, płaszczyznę, czy obiekt - to już trzeba całkowicie zaimplementować w swojej strukturze danych.

Z projektami eee... społecznymi, jest ogólnie słabo. Jeśli chcesz poprowadzić coś takiego, to musisz się przygotować, że wykonasz te 50% podstawowej roboty, i jeśli program będzie dobry i przydatny, to z czasem ktoś się przyłączy. Np. Stallman zabierając się do stworzenia systemu GNU sam napisał gcc, gdb, sporą część Emacs-a i emacs-lisp, oraz bodajże gawk, zanim zaczęli się do niego przyłączać inni. Teraz deweloperów jest wielu, a programów i bibliotek tyle: All GNU Packages. Podobnie było z Linux-em, GTK+, itd.


lisow1
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 1
Posty: 295
Rejestracja: 02 gru 2004, 23:51
Lokalizacja: polska

#6

Post napisał: lisow1 » 26 mar 2007, 13:16

u mnie dziaŁa bez problemów na win XP.
Bardzo fajnie to się obraca. Samo kóŁko chyba też się powinno obracać względem pŁaszczyzn.
Bardzo fajny projekt. Moge wesprzeć w testowaniu.
Pozdrawiam.

Awatar użytkownika

x
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 243
Rejestracja: 29 mar 2006, 23:24
Lokalizacja: Laski, gm. Izabelin

#7

Post napisał: x » 26 mar 2007, 18:30

No niestety, pod Win Me nie działa. Pojawia się okno, ale się nie wypełnia (widać tylko suwaki). Przy uruchomieniu pliku, i przy próbie zrobienia czegokolwiek pojawia się komunikat (w oknie o tytule "Cnc3d") "External exception 80000003". Może dlatego, że mam już nieźle "przechodzonego" tego Me.

Próbowałem pod wine, i jest podobnie. Ale pojawia się komunikat o błędach wine, który może coś wyjaśni.
err:opengl:wgl_initialize_glx glx_version as 1.2 and GLX_SGIX_fbconfig extension is unsupported. Expect problems.
err:opengl:X11DRV_ChoosePixelFormat glXChooseFBConfig returns NULL (glError: 0)
err:opengl:X11DRV_DescribePixelFormat unexpected iPixelFormat(0), returns NULL
A po lekkim "doprofilowaniu":
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel (0x40381ff0)->((nil),00000008)
fixme:dc:GdiIsMetaPrintDC 0x1d8
wine: Call from 0x6941a051 to unimplemented function GDI32.dll.GdiDescribePixelFormat, aborting

Awatar użytkownika

Autor tematu
Inf-el
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 573
Rejestracja: 22 cze 2004, 18:41
Lokalizacja: Szczecin
Kontakt:

#8

Post napisał: Inf-el » 26 mar 2007, 19:05

Takie efekty miałem pod kilkoma XP dzisiaj.
Niestety komunikaty nie wiele mi mówią.

A inne programy wykorzystujące opengl pod ME ci działają ?
np vega http://www.vegacnc.com/html/dataview.htm
używa opengl32.dll, glu32.dll, glut32.dll

Czy karta graficzna obsługuje opengl ?

Mogę jeszcze pobawić się w directx (delphix) - byłby wybór, ale jeszcze tego do końca nie rozgryzłem.

Bardzo bym się zdziwił (pozytywnie) gdyby zadziałała emulacja opengl pod linuxem w wine.
Ostatnio zmieniony 27 mar 2007, 10:58 przez Inf-el, łącznie zmieniany 1 raz.

Awatar użytkownika

gaspar
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 1
Posty: 1714
Rejestracja: 13 sty 2006, 16:41
Lokalizacja: Stargard
Kontakt:

#9

Post napisał: gaspar » 26 mar 2007, 21:15

U mnie chodzi bardzo płynnie.
Laptop, WinXP, PENTIUM III 850Mhz, 376Mb RAM.
Trzymam kciuki za rozwój programu.
https://www.instagram.com/cncworkshop.pl/
Obróbka CNC - frezowanie & toczenie

Awatar użytkownika

Autor tematu
Inf-el
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 7
Posty: 573
Rejestracja: 22 cze 2004, 18:41
Lokalizacja: Szczecin
Kontakt:

#10

Post napisał: Inf-el » 27 mar 2007, 11:21

x pisze:Trudniej, jeśli chcesz robić edycję, np. "zaznaczyć" jakąś linie...
Dorobiłem wczoraj kursor 3D, którym można by zaznaczać obiekty. W osi x i y pobiera pozycję z myszki a oś Z zmieniam pokrętłem. Niestety spowalnia to wyświetlanie grafiki.
Mam zamiar zamówić manipulator 3D, SpaceNavigator za około 59$ do użytku domowego (bez faktury na firmę) i go podpiąć do programu.
http://www.3dconnexion.com/products/3a1d.php
Widziałem go w akcji na seminarium w Poznaniu.
Bardzo ładnie się sprawował w programie Google Earth.
Czułem pewien niedosyt spowodowany chyba brakiem dynamiki ale cena jest zachęcająca.
Cieszę się, że program u innych raczej działa. Jeszcze nie wiadomo jak zadziała w Viście.
Załączniki
space.jpg
Nawigator 3D
space.jpg (4 KiB) Przejrzano 11090 razy
Ostatnio zmieniony 28 mar 2007, 11:36 przez Inf-el, łącznie zmieniany 3 razy.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Software”