CNC-Harrastus

YLEINEN CNC-KESKUSTELU => Keskustelua eri aiheista => Aiheen aloitti: Pentu - 29.12.13 - klo:16:19

Otsikko: Toleranssien laskeminen.
Kirjoitti: Pentu - 29.12.13 - klo:16:19
Olen yrittänyt tutustua toleranssien (ISO 286) laskemiseen projektiani varten. Enkä oikein tahdo saada samoja lukemia kuin mitä toleraattorista saan. Pelkästään jo toleranssi alue tuottaa harmaita hiuksia. En ole vielä edes yrittänyt tutkia tuota, että miten laskettaisiin se, että mistä mikäkin toleranssi (A-zc) alkaa ja loppuu (siis rajamitat?).

Niin, kysytte nyt varmasti, että miksi haluan laskea nämä, jos minulla kerta on valmis taulukkokin. Noh... Koska yritän kirjoittaa ohjelmaa, joka laskisi Toleranssit. Siis jonkinlainen web -toleraattori, miksei homman selkeytyessä myös puhelimelle samanlaista sovellusta..  Kertokaahan olenko nyt täysin hakoteillä vaiko onko laskussani jotain pielessä. Miten nämä sitten pitäisi laskea.

Lasku kaava on ymmärtääkseni tämä:
(http://upload.wikimedia.org/math/c/0/5/c05070b02137a95b5cc9711eec50db07.png)
Lähde: Wikipedia (http://en.wikipedia.org/wiki/IT_Grade)

Tässä kohtaa jo tuo alku osa (" k = 10^0.2*(ITG-1) ") tuottaa pienoisen päänvaivan.  Kun vain muutama arvo osuu yhteen löytämäni taulukon (http://www.meadinfo.org/2009/05/international-tolerance-grades-itol-to.html) kanssa.

Seuraavassa taulukossa siis "valmis"-rivi vastaa linkkini takaa löytyvää valmista kaava taulukkoa. Ja "Omat"-rivi vastaa sitä, mitä itse saan laskemalla (edellämainittu laskukaava), "*" -merkki on lisätty eroaviin lukuihin.




-IT5IT6IT7IT8IT9IT10IT11IT12IT13IT14IT15IT16
Valmis 7i 10i 16i 25i 40i 64i 100i 160i 250i 400i 640i 1000i
Omat 6* 10 16 25 40 63* 100 158* 251* 398* 631* 1000

Tämän eroavaisuuden myötä myös loppu laskutoimitus on hieman epävarmalla pohjalla..
Eli jo edellä mainitun kaavan sulkeissa oleva loppuosa, siis:
(http://upload.wikimedia.org/math/c/0/5/c05070b02137a95b5cc9711eec50db07.png)

Jossa
(http://lh3.ggpht.com/_EhOQGW2GHBg/SgGESoWDrAI/AAAAAAAAHM4/bm76Ea0GKNY/Geometric_Mean_thumb.png?imgmax=800)

Esimerkkinä vaikka mitta 60H12 (tässä kohtaa kirjiamella ei ole väliä)

Mitta 60 sopii siis väliin 50-80, eli lasketaan neliöjuuri(50*80):
= 63.246 = D

Nyt kun "D" on tiedossa.. Lasken seuraavaksi loppu osan.
I = 0.45*D^(1/3)+0.001*D;

(D korotettuna potenssin (1/3) on sama kuin laskisi D:n kuutiojuuren)

Ja lopuksi lasken
T = k*I

Itselasketulla arvolla (k = 158) saan toleranssi alueeksi
T = 293um eli 0,293mm

Taulukosta napatulla arvolla (k = 160) saan toleranssi alueeksi
T = 296um eli 0.296mm

Kun toleraattori antaa luvuksi:
T = 300um eli 0.300mm

Eli varsin erilaisia vastauksia, toki tässä erot on pieniä, mutta mitä suuremmilla luvuilla lasken, sen suurempia on erot. Ja tavoittena olisi kuitenkin laskuri joka laskee nämä oikein. Laskenko jotenkin virheellisesti vai onko käyttämäni kaavan vain vääriä.. vai mikä tässä nyt mättää.






Otsikko: Vs: Toleranssien laskeminen.
Kirjoitti: viilari - 29.12.13 - klo:16:54
Kokeile tuolla:
http://www.mesys.ch/calc/tolerances.fcgi?lang=en
Otsikko: Vs: Toleranssien laskeminen.
Kirjoitti: Tapani Honkanen - 29.12.13 - klo:19:34
Entisessä elämässäni tietokoneohjelmien sisällä laskettiin juuri noiden kaavojen=yhtälöiden avulla nuo toleranssieromitat. Nuo taulukkojen mitat on pyöristetty yleisesti käytettyihin lukuihin. Laskennassa syntyneet luvut ovat kyllä aivan käyttökelpoisia esimerkiksi kutistusliitoksen laskemiseen. Syntyneet poikkeamat ovat suhteessa niin pieniä, että ei vaikuta mihinkään.
Jos haluaa noiden lukujen asettuvan noihin "normeerattuihin" arvoihin, pitää lisätä vähän koodia millä sovitetaan/lajitellaan yhtälöistä tulleet arvot noihin yleisesti käytettyihin lukuihin.
Otsikko: Vs: Toleranssien laskeminen.
Kirjoitti: Pentu - 02.01.14 - klo:09:57
Kiitos vastauksista. Tuo valaisee jo aika paljon ihmetystäni.  Nuita valmiita ratkaisujahan olenkin jo löytänyt parikin erilaista, mutta nyt ei ollutkaan kyse siitä. Vaan siitä, että haluan itse tehdä tällaisen..

Lainaus käyttäjältä: Tapani Honkanen - 29.12.13 - klo:19:34Jos haluaa noiden lukujen asettuvan noihin "normeerattuihin" arvoihin, pitää lisätä vähän koodia millä sovitetaan/lajitellaan yhtälöistä tulleet arvot noihin yleisesti käytettyihin lukuihin.

Tietysti se vissiin ois ihan hyvä, jotta saa tulokset nykyisten taulukoiden mukaiseksi. Toki ero ei ainakaan pienillä mitoilla ole kovin suuri. Suuria mittoja en ole vielä kauheemmin edes vertaillut.  Mites nämä "normiteeratut arvot" määritellään? Vaikuttaisi siltä, että ainakin yhtälön ensimmäisessä osassa (k) esiintyy luvut (7), 10, 16, 25, 40, 64 ja näistä tulot kerrottuna kymmenellä..

Entäs miten pitäisi menetellä tossa D:tä laskettaessa, 0-3 -mitta alueen kanssa.. 0*3 = 0 ja tämänmyötä koko laskun tulos on 0..Lasketaanko tuo vain:
neliöjuuri(1*3) ?
= 2

Nyt en ole oman koneen ääressä, jolta pääsisin tuota kokeilemaan ja ihmettelemään.

Edit
neliöjuuri(1*3)
= 1,732