Średnica

Jaka jest średnica okręgu, w który wpisano wielokąt nieforemny składający się z 6 boków o długości 113 i jednego 440?

Ja się poddałem. Nie potrafię tego w CAD narysować. AI też nie potrafi, uparcie liczy z sumy boków a po dyskusji stwierdza, że za mało danych.

No narysowałem, ale zgadując jak to kiedyś projektant rysował. A problem był z tym mocowaniem obudowy koła zamachowego.

formatting link
Nie byłem pewien czy 440 to średnica rozstawu otworów, bo nie było o co zahaczyć suwmiarki. Wyszło na to, że 12 otworów z czego 10 co 30°, a dwa górne co 40°.

Ale męczy mnie pytanie jak to zrobić w CAD z tylko tych danych z pierwszego zdania.

Robert

Reply to
Robert Wańkowski
Loading thread data ...

No i słusznie - za mało.

Sie nie da, bo za mało danych. Patrze na te fotke ... chodzi ci o wielokąt na zewnętrzych otworach, czy tych w środku? Gdzie tam jest 6-kąt? I gdzie te 400mm?

J.

Reply to
J.F

W dniu 02.08.2023 o 10:59, J.F pisze:

ierwszego zdania.

Czerwony wielokąt. Podczas pomiarów nie było możliwości stwierdzić, że

440 jest średnicą. Odległości między środkami kolejnych otworów zmierzyłem jako 113. Miałem tylko te dane, a potrzebowałem obliczyć średnicę okręgu na jakim znajdowały się te otwory (wierzchołki wielokąta).

formatting link
No dobra... wystarczy mi zbudować taki wielokąt trochę foremny. A na wierzchołkach już bez problemy opiszę okrąg.

Jak do tego podejść? Wiadomo, że kąty pomiędzy krótkimi odcinakami są równe.

Robert

Reply to
Robert Wańkowski

Co to za CAD? Nie ma tam jakiegoś języka programowania? Opisanie tego było by chyba łatwiejsze z poziomu algorytmiki.

Reply to
heby

I to obejmuje 180 stopni, czy nie wiadomo?

na boku na kalkulatorze:

220*2*sin(15) = 113.88

A skoro to srednica ... no to srednica=440 :-)

Gorzej jakby to nie obejmowało 180 stopni, i srodek tego okręgu nie leżał na długim odcinku.

J.

Reply to
J.F

To się powinno dać cyrklem i linijką wyrysować. A CAD owe zastępuje.

Robert

Reply to
Robert Wańkowski

Tak jak pisałem wyżej. Nie było możliwości stwierdzenia czy to jest średnica a co za tym idzie nie było wiadomo, że tam jest 180°.

A tu dla przykładu cięciwa nie jest średnicą. Jak obliczyć średnicę tylko z tych danych? Kąty równe pomiędzy krótkimi odcinkami.

formatting link
Robert

Reply to
Robert Wańkowski

Ale to pytasz jako to łatwo rozwiązać, czy to zagadnienie z geometrii wykreślnej wymagające rapidografu i żyletki do kalki?

Ja mam nieco skrzywienie, bo na codzień używam OpenSCADa wspomaganego Pythonem, ale jakoś wydaje mi się, że wygenerowanie współrzędnych tych punktów matematycznie i algorytmicznie jest jedną z bardziej naturalnych dróg.

Reply to
heby

Tak, jak to łatwo rozwiązać/narysować np. CAD-zie.

Dla mnie, to na ten moment niewykonalne, tak samo jak nie mam pojęcia jak to graficznie (co wydaje mi się prostsze i naturalne podejście) rozwiązać.

Robert

Reply to
Robert Wańkowski

Rozruszasz moje szare komórki :-) bok B, cieciwa C

zakładam układ wspołrzednych wzdluz pierwszego boku. kolejne boki traktuję jak wektory, i są one obrócone o pewien kąt f. pierwszy wektor to [B, 0], drugi [B*cosf, B*sinf], az do [B*cos(5f), B*sin(5f)]

cieciwa C to suma tych 6 wektorów. Ale znamy tylko jej dlugosc

Byc moze Wolfram juz to rozwiąze, ale ja traktuje mój układ jako układ liczb zespolonych. niech z bedzie wersorem o kącie f. Wtedy kolejne wektory boków to B, B*z, B*z^2, .. B*z^5 Ciag geometryczny. Ktorego suma wynosi B*(1-z^6)/(1-z)

i mam równanie abs(B*(1-z^6)/(1-z)) = C czyli abs((1-z^6)/(1-z)) = C/B i drugie do kompletu abs(z) = 1

wrzucam to do Wolframa

formatting link
i wyskakuje rozwiązanie z ≈ 0.936897 + 0.349606 i

arc sin(0.349606) = 20,46321 stopnia = f

Taki jest też kąt wierzchołkowy trójkątów rownoramiennych opartych o szukane kolo.

w takim trojkącie R*sin(f/2)=B/2

R=170,8630

sprawdzenie: jak sobie zbudujemy trojkat na środku okregu, dolny/srodkowym wierzchołku z twojego rysunku, i skrajnym wierzchołku, to mamy tam zaleznosc trygonometryczną C/2=R*sin(3f)

podstawiamy R i f R*sin(3f)= 150.0000

Jak Wolfram wyliczyl z, to sie nie pytaj, nie wydaje mi sie to łatwe :-) Ale mozna numerycznie kolejne przyblizenia. Wtedy moze nawet łatwiej od razu f szukać

Jak to zrobić w jakims CAD ... to sie chyba nie da, bez jakiegos języka programowania.

J.

P.S. koncepcja 2: wprowadzic współrzedne x,y wszystkich otworow, a nawet tylko 3, i poszukac punktu, z którego odległosc do otworów jest taka sama. Znów chyba numerycznie będzie najprosciej.

Reply to
J.F

środa, 2 sierpnia 2023 o 13:32:35 UTC+2 Robert Wańkowski napisał(a):

Promień musi być większy od 220, by sinus miał sens. Reszta to obliczeniowa matematyka, która dzięki GeoGebrze jest do ogarnięcia. Równość kątów środkowych, szukanego okręgu, musi być zachowana. Można wygenerować taką funkcję dla x>0: y=6*2*arcsin(56.5/(220+x))-2*arcsin(220/(220+x)) Punkt jej przecięcia z osią x to: x=0.017; y=0 Ostatecznie promień szukany to: R=220+0.017=220.017

Reply to
WM

Wez tylko trzy sąsiednie otwory, narysujesz trójkąt, wysokości się przetną w srodku okręgu :-)

Tylko odległości trzeba bardzo precyzyjnie zmierzyć.

Musiałbyś kąty między bokami zmierzyc.

J.

Reply to
J.F

Tak, teraz bym tak próbował. Ale założyłem, że mając jeden duży wymiar i te mniejsze, to bez problemy to wyrysuję w CAD-zie z akceptowalnym błędem.

Przy małych wymiarach błąd się potęguje.

Tak, to wszystko wiem, ale miało być szybko i wygodnie.

W miarę dobrze sprawdza się zdjęcie z jakimś wymiarem odniesienia.

Robert

Reply to
Robert Wańkowski

Może i da sie jakos w CAD zadać powiązania (np z domniemanym srodkiem okregu), aby potem sobie sam cos wyliczyl przy uzupełnieniu wymiarów, ale patrząc na to, co wyliczylem analitycznie ... nie, to zbyt skomplikowane jest.

Patrze sie na Twoj rysunek,

formatting link
i mi przychodzi inne rozwiązanie. Weżmy tylko połowe, od srodka licząc nachylenie kolejnych boków do poziomu to bedzie kąt a, 3a i 5a.

Licząc dlugosc składowej poziomej mamy

60.7*(cos(a)+cos(3a)+cos(5a)) = 150

Wolfram cos wysiada

formatting link
ale tu jest niezle
formatting link
a=2*(pi*n+0.0892877), dla n=0: a=2*0.0892877

W stopniach to 10,2316

W CAD tego jednak pewnie nie zrobisz :-)

J.

Reply to
J.F

W programie FreeCad robi się bez problemu. Trzeba narzucić więzy równości odcinków 60,7 i dalej już leci z górki.

formatting link
W Geogebrze też zrobiłem, ale nie tak wygodnie było jak w CAD.

WM

Reply to
WM

Mi też, takie barbarzyńskie. Skoro i tak pomiary są mało-dokładne, to weź ten ww. rysunek, a raczej obiekt, skopiuj ze 3-4 razy, i nałóż na siebie manipulując kątami i dopasowując sektory. Jak juz Ci się to złoży to zrób okrąg ze środkiem w środku takiego złożónego wielokata, a potem dopasuj srednicę żeby szła po wierzchołkach.

Nb. tam na tym zdjęciu co gdzieindziej wkleiłeś są MZ przynajmniej 3 różne odległości między sąsuadującymi śrubami. Te po lewej i prawej są sobie równe, ale nie tylko ta para u samej góry ma większą odległość. Równiez ta na samym dole wydaje się miec dla odmiany odrobię mniejszą.

Reply to
Marcin Debowski

Dnia Thu, 03 Aug 2023 00:28:43 GMT, Marcin Debowski napisał(a):

Gdyby zrobić fotkę z dużej odległości na długiej ogniskowej, to by była mniejsza paralaksa (lub bliska zeru) i mniejsze przekłamania.

Dodatkowo detal można by położyć np. na papierze milimetrowym, to by dało dobry wzorzec do zdejmowania wymiarów.

Reply to
Adam

W dniu 03.08.2023 o 11:52, Adam pisze:

Wcześniej napisałem, że nieraz tak robię. Problemem jest wybór - albo mała rozdzielczość i małe zniekształcenia lub na odwrót.

Kiedyś tu pytałem czy ktoś ma iPhona ze skanerem 3D, byłem ciekaw jak to w praktyce wygląda.

Robert

Reply to
Robert Wańkowski

Użyłem innej metody matematycznej i o dziwo otrzymałem inny wynik.

Kąt środkowy alfa, na którym oparty jest bok 300, musi być równy sześciu środkowym kątom, na których bok 60.7 jest oparty. Mamy zatem dwa równania na promień koła R: R=(300/2)/sin(alfa) R=(60.7/2)/sin(alfa/6) Po ich przyrównanu, otrzymujemy równanie (uwikłane) na kąt alfa. sin(alfa/6)=sin(alfa)*60.7/300 Można je rozwiązać iteracyjnie tym równaniem: alfa(i+1)=6*arcsin(sin(alfa(i))*60.7/300) Programy komputerowe typu Python nas rozpieszczają i 100 iteracji nie jest problemem. Zastartowałem od alfa(1)=0.01, bo dla zera mamy zapętlenie. Po wyliczeniu kąta alfa obliczamy promień R okręgu: R=(300/2)/sin(alfa)

Program w języku Python ======================================= import math

alfa1=0.01 for i in range(1,100) : alfa=6*math.asin(math.sin(alfa1)*60.7/300) alfa1=alfa

print('alfa=',alfa,'rad') print('alfa=',alfa*180/math.pi,'deg') print('R=',300/(2*math.sin(alfa)))

======================================== Wydruk: alfa= 1.0714523980563655 rad alfa= 61.389700357800834 deg R= 170.862886333473

WM

Reply to
WM

W dniu 02.08.2023 o 21:15, WM pisze:

Będę musiał go przeprosić i kolejny raz podejść do niego.

Robert

Reply to
Robert Wańkowski

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.