Katedra Konstrukcji i Eksploatacji
Katedra Konstrukcji i Eksploatacji
Maszyn
Maszyn
Rysunek Parametryczny
Rysunek Parametryczny
Komputerowe Wspomaganie
Komputerowe Wspomaganie
Projektowania
Projektowania
SYSTEMY CAD
SYSTEMY CAD
„Efektywne zastosowanie programu komputerowego do analizy
praktycznych sytuacji angażuje pokaźny zasób doświadczeń.
Najtrudniejszą fazą analizy jest stworzenie odpowiedniego modelu
zawierającego w sobie główne charakterystyki zachowania się
konstrukcji.”
* Panowie Wilson i Habibullah twórcy systemu SAP
Cytat:*
„
Żaden program komputerowy nie zastąpi inżynierskiej
Żaden program komputerowy nie zastąpi inżynierskiej
wiedzy i wyczucia.
wiedzy i wyczucia.
Jest prawdą, że słaby inżynier nie zrobi za pomocą najpotężniejszego
systemu tego co może dobry inżynier policzyć na odwrocie koperty...
...Obowiązkiem inżyniera jest właściwa idealizacja konstrukcji
i przyjęcie odpowiedzialności za wynik obliczeń.”
Preprocesor
Preprocesor
PROCESOR
PROCESOR
PROCESOR
PROCESOR
Postprocesor
Postprocesor
System
Ekspercki
Baza
Danych
Sieć
Neuronowa
Biblioteka
Procedur
Globalnych
Główny
Program
Zarządzający
SYSTEMY CAD
SYSTEMY CAD
Ś
ro
d
o
w
is
k
o
Ś
ro
d
o
w
is
k
o
G
ra
f
c
zn
e
G
ra
f
c
zn
e
A
u
to
C
A
D
A
u
to
C
A
D
Ś
ro
d
o
w
is
k
o
Ś
ro
d
o
w
is
k
o
P
ro
g
ra
m
is
ty
c
z
n
e
P
ro
g
ra
m
is
ty
c
z
n
e
A
u
to
L
IS
P
A
u
to
L
IS
P
Preprocesor
PROCESOR
PROCESOR
PROCESOR
PROCESOR
Postproceso
r
Baza
Baza
Danych
Danych
Plik
Plik
Dyskowy
Dyskowy
System CAD
System CAD
Rysunek Parametryczny
Rysunek Parametryczny
n
n
otworów
otworów
d
d
2
2
– f x 45
– f x 45
º
º
D
D
D
D
1
1
W
W
D
D
D
D
1
1
W
W
n
n
f
f
d
d
2
2
3
0
2
0
24
2
1.
5
5
5
0
3
0
42
3
2.
5
8
8
0
...
...
4
...
...
Komputerowe Wspomaganie
Komputerowe Wspomaganie
Projektowania
Projektowania
f
f
Komputerowe Wspomaganie
Komputerowe Wspomaganie
Projektowania
Projektowania
PwPc
P1
P2
P3
P4
X
Y
Obiekty:
1 Łuk
1 Odcinek
n x 2 Okręgów
Punkty:
Pw – punkt wstawiania,
lokalny układ współrzędnych
Pc – środek łuku,
P1, P2 – początek i koniec
odcinka, początek i koniec
łuku,
P3..P6 – środki okręgów
P6
P5
Komputerowe Wspomaganie
Komputerowe Wspomaganie
Projektowania
Projektowania
Pw (xw yw)
PwPc
P1
P2
P3
P4
y1
D/2
x1
P6
P5
d
2
2
1
5
.
0
1
y
D
x
D
W
y
5
.
0
1
P1 (xw+x1 yw-y1)
P2 (xw-x1 yw-y1)
1
n
d
0
1
)
sin(
5
.
0
0
1
)
cos(
5
.
0
i
n
d
i
D
yi
i
n
d
i
D
xi
X
Y
Komputerowe Wspomaganie
Komputerowe Wspomaganie
Projektowania
Projektowania
(defun OtwList (p0 n d / dg ii odp p x y x0 y0)
(setq dg (/ PI (- n 1)) ii 0)
(setq x0 (car p0) y0 (cadr p0))
(repeat n
(setq x (+ x0 (* 0.5 d (cos (* ii dg)))))
(setq y (+ y0 (* 0.5 d (sin (* ii dg)))))
(setq p (list x y 0))
(setq odp (append odp (list p)))
(setq ii (+ ii 1)
)
(eval ‘odp)
)
(defun OtwList (p0 n d / dg ii odp p x y x0 y0)
(setq dg (/ PI (- n 1)) ii 0)
(setq x0 (car p0) y0 (cadr p0))
(repeat n
(setq x (+ x0 (* 0.5 d (cos (* ii dg)))))
(setq y (+ y0 (* 0.5 d (sin (* ii dg)))))
(setq p (list x y 0))
(setq odp (append odp (list p)))
(setq ii (+ ii 1)
)
(eval ‘odp)
)
(defun RysujOtw (p0 n d1 d2 d3 / lista
p)
(setq lista (OtwList p0 n d1))
(foreach p lista
(command „_CIRCLE” p (* 0.5 d2))
(command „_CIRCLE” p (* 0.5 d3))
)
)
(defun RysujOtw (p0 n d1 d2 d3 / lista
p)
(setq lista (OtwList p0 n d1))
(foreach p lista
(command „_CIRCLE” p (* 0.5 d2))
(command „_CIRCLE” p (* 0.5 d3))
)
)
p0
d
Komputerowe Wspomaganie
Komputerowe Wspomaganie
Projektowania
Projektowania
; dta = (D D1
; dta = (D D1
W n f d2)
W n f d2)
(defun Rysuj (p0 dta / D D1 d2 f d3 n p1 p2 x0 y0 x y)
(setq D (nth 0 dta) D1 (nth 1 dta) W (nth 2 dta)
n (nth 3 dta) f (nth 4 dta) d2 (nth 5 dta))
(setq d3 (+ d2 (* 2 f)))
(setq x0 (car p0) y0 (cadr p0))
(setq y (- W (* 0.5 D)))
(setq x (sqrt (- (* 0.25 D D) (* y y))))
(setq p1 (list (+ x0 x)(-y0 y) 0))
(setq p2 (list (- x0 x)(-y0 y) 0))
(command „_LINE” p1 p2 ””)
(command „_ARC” „_C” p0 p1 p2)
(RysujOtw (p0 n D1 d2 d3)
)
; dta = (D D1
; dta = (D D1
W n f d2)
W n f d2)
(defun Rysuj (p0 dta / D D1 d2 f d3 n p1 p2 x0 y0 x y)
(setq D (nth 0 dta) D1 (nth 1 dta) W (nth 2 dta)
n (nth 3 dta) f (nth 4 dta) d2 (nth 5 dta))
(setq d3 (+ d2 (* 2 f)))
(setq x0 (car p0) y0 (cadr p0))
(setq y (- W (* 0.5 D)))
(setq x (sqrt (- (* 0.25 D D) (* y y))))
(setq p1 (list (+ x0 x)(-y0 y) 0))
(setq p2 (list (- x0 x)(-y0 y) 0))
(command „_LINE” p1 p2 ””)
(command „_ARC” „_C” p0 p1 p2)
(RysujOtw (p0 n D1 d2 d3)
)
(defun Test (/ p0 dta)
(setq dta ‘(30 20 24 2 1.5 5))
(setq p0 (getpoint ”Pkt.
Wstawiania:”)
(Rysuj p0 dta)
)
(defun Test (/ p0 dta)
(setq dta ‘(30 20 24 2 1.5 5))
(setq p0 (getpoint ”Pkt.
Wstawiania:”)
(Rysuj p0 dta)
)
PwPc
P1
P2
P3
P4
y1
D/2
x1
P6
P5
d
Komputerowe Wspomaganie
Komputerowe Wspomaganie
Projektowania
Projektowania
(defun Aplikacja (/ dta prm p0)
(setq prm (getreal ”Parametr:”))
(setq dta (CzytajDta ”c:/dane.dta” prm))
(if dta
(progn
(setq p0 (getpoint ”Punkt:”))
(Rysuj p0 dta)
)
)
)
(defun Aplikacja (/ dta prm p0)
(setq prm (getreal ”Parametr:”))
(setq dta (CzytajDta ”c:/dane.dta” prm))
(if dta
(progn
(setq p0 (getpoint ”Punkt:”))
(Rysuj p0 dta)
)
)
)
Funkcja czytania
listy danych z
pliku
Funkcja czytania
listy danych z
pliku
(defun CzytajDta (plik prm / zb
dta)
(setq zb (open plik ”r”))
(if (null zb)
(alert ”Brak pliku”)
(progn
....
)
)
(eval ‘dta)
)
(defun CzytajDta (plik prm / zb
dta)
(setq zb (open plik ”r”))
(if (null zb)
(alert ”Brak pliku”)
(progn
....
)
)
(eval ‘dta)
)
(
30 20 24
2 1.5 5
)
(
50 30 42
3 2.5 8
)
(itd...)
(
30
20 24
2 1.5 5
)
(
50
30 42
3 2.5 8
)
(itd...)