Professional Documents
Culture Documents
2015 - Mustafa Köstek - Araç Şanzıman Modellemesi
2015 - Mustafa Köstek - Araç Şanzıman Modellemesi
2015 - Mustafa Köstek - Araç Şanzıman Modellemesi
SEYH
BILEC
IK
EDEBALI NIVERS
ITES
I
IK
FAKLTESI
MHENDISL
I
ISAYAR
IG
BILG
MHENDISL
ARA SANZIMAN
MODELLEMESI
Mustafa Kstek
IRME
BIT
ALISMASI
gr.Gr.Murat ZALP
HAZIRAN-2015
BILEC
IK
T.C.
SEYH
BILEC
IK
EDEBALI NIVERS
ITES
I
IK
FAKLTESI
MHENDISL
I
ISAYAR
IG
BILG
MHENDISL
ARA SANZIMAN
MODELLEMESI
Mustafa Kstek
IRME
BIT
ALISMASI
gr.Gr.Murat ZALP
HAZIRAN-2015
BILEC
IK
IR
IM
BILD
Bu kitaptaki btn bilgilerin etik davrans ve akademik kurallar erevesinde elde edildig inive yazm kurallarna uygun olarak hazrlanan bu alsmada bana ait olmayan her trl
ifade ve bilginin kaynagna eksiksiz atf yapldgn bildiririm.
DECLARATION
I hereby declare that all information in this document has been obtained and presented
in accordance with academic rules and ethical conduct. I also declare that, as required by
these rules and conduct, I have fully cited and referenced all materials and results that are
not original to this work.
Imza
Mustafa KSTEK
5.6.2015
ii
ZET
IRME
BIT
ALISMASI
ARA SANZIMAN
MODELLEMESI
grencinin Ad SOYADI
SEYH
BILEC
IK
EDEBALI NIVERS
ITES
I
MHENDISLIK FAKLTESI
I BLM
ISAYAR
IG
BILG
MHENDISL
Dansman:gr.Gr Murat ZALP
2015, 46 Sayfa
Jri yeleri
Imza
.....................
.....................
.....................
.....................
.....................
.....................
ncelikle bir aracn nasl yrdg fiziksel olarak aklanacak,daha sonra ise masast
uygulama ortamnda teorik bilgiler uygulamaya dklerek uygulamada kullanlan C#
programlama dilinde kulanlan ara kutular anlatlp algoritma gereklenerek bir masast uygulamas olusturulmus,bunun yannda kullanc tarafndan vites degistirme verilerini bir verikmesi olarak kaydetip bir tus vastasyla egitilerek kullancnn egittigi
verilere gre vites degistirme islemlerini otomatik gereklestiren i-tronic vites tasarlanmstr.Yan sra yakt tketimi,ara performanslar,tork kavramna ciddi sekilde deginilecektir.
Anahtar Kelimeler: fizik motoru,makine grenmesi,yakt tketimi,dndrme kuvveti,performans
iii
ABSTRACT
THESIS
VEHICLE GEARBOX MODELLING
Mustaf Kstek
BILECIK SEYH
EDEBALI UNIVERSITY
ENGINEERING FACULTY
DEPARTMENT OF COMPUTER ENGINEERING
Advisor:Lect. Murat ZALP
2015, 46 Pages
Jury
Sign
.....................
.....................
.....................
.....................
.....................
.....................
First, a car physics engine based on the physics knowledge will be carried out. In addition to
project into a vehicle shift of pre-gearbox data are recorded in a data set according to the users
data set via a button educating a prototype that performs the gear changes according to the limits
determined by the users interaction was conducted.
Keywords:the physics engine, machine learning, fuel consumption, torque, performance
iv
NSZ
Bu projenin yazmnn basndan sonuna kadar emegi geen ve beni bu konuya ynlendiren sayg deger hocam ve dansmanm Sayn Murat ZALPa tm katklarndan ve
hi eksiltmedigi desteginden dolay tesekkr ederim.
Mustafa Kstek
Iindekiler
*
SEK
ILLER
TABLOSU
viii
IS
1 GIR
2.1
Tork nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2
Dinamik kuvvetleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3
Srtnme kuvvetleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1
2.3.2
Aerodinamik . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4
Sanzman
Ve Disli Oranlar . . . . . . . . . . . . . . . . . . . . . . . . .
2.5
Tketim verileri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6
I-tronic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
3.1
Snflandrma Problemi . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
3.2
Nicelik Kmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
3.3
12
3.4
12
4 C# nedir?
14
4.1
Tasarm hedefleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
4.2
Elestiri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
4.3
Performans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
4.4
Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
4.5
15
4.6
Gsterge Ve zelikleri . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
4.7
20
4.8
OleDbConnection Snf . . . . . . . . . . . . . . . . . . . . . . . . . .
21
vi
5 Programlama
5.1
5.2
5.3
26
Algoritmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
5.1.1
Gaza basma . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
5.1.2
Tekerler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
5.1.3
Ara kuvveti . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
5.1.4
Ds kuvvetler . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
5.1.5
Form yklenirken . . . . . . . . . . . . . . . . . . . . . . . . . .
29
5.1.6
29
5.1.7
Hz sabitleyici tusu . . . . . . . . . . . . . . . . . . . . . . . . .
29
5.1.8
i-tronic tusu . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
5.1.9
30
31
UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
5.2.1
31
5.2.2
31
33
6 SONULAR VE NERILER
35
SONULAR VE NERILER
35
KAYNAKLAR
36
ZGEMIS
37
vii
SEK
ILLER
TABLOSU
1
16
17
18
19
20
22
10
24
11
25
12
32
13
32
14
34
viii
IS
GIR
Bir arac nasl hzlanr hz nasl limit hz olur bu sorularn cevab aslnda iki bilinme-
yenli bir optimizasyon problemi olarak gze arpar birinci parametre gaza baslma oran
ikincisi vitesin pozisyonudur.Ds etkenler olarak ise rzgar ve yol srtnmesi yan sra
aran bulundugu yolun egimide bu optimizastonu etkileyen nemli unsurlardandr. Gnmzde gzde konulardan olan vites tipleri nemli hususlardandr.Genel olarak iki adet
mod bulunmaktadr;eco ve spor modu gibi.Bu teknolojiye yeniliki bir teknoloji ile farkl
bir slup getirmeyi amalamaktadr.
2.1
Tork nedir?
Her aracn motor karakteristigine gre belirli devir bandlarnda belli tork degerleri retir.Bu tork dndrme kuvveti olarak tanmlanr.Sekil
Sekil
Sekil
2.2
Dinamik kuvvetleri
2de
buna rnekler nitelikte zmlenmistir.[2] Grldg gibi yolun egimine gre ara inis
ve kslarnda araa etki eden kuvvetler .
k srtnme katsays,F aracn motor kuvveti,g yerekimi ivmesi,m ise arabann ktlesi
olarak nitelendirilmistir.
2.3
Srtnme kuvvetleri
Temel olarak araa etki eden srtnme kuvveti lastikler ile yol arasndaki kuvvettir.Diger bir kuvvet ise hava srtnme kuvveti olarak nitelendirilmistir.Bu iki kuvvet araca
negatif olarak etki eden kuvvetler olarak adlandrlabilir.
3
2.3.1
Yzyllar nce bulunan tekerlek icat edilerek hem srtnmeden dogan negatif kuvvet
minimize edilmistir.Yuvarlanma srtnmesi normal olarak srklenme kuvvetinin yaklask olarak ellide biri kadardr.Bylelikle ara kuvvetinden daha byk oranlarda istifade
edilmistir. Baslca yzeylerin yuvarlanma srtnme kuvvetleri asagdaki gibidir:[3]
elik ray stnde elik tekerlek 0.001-0.002
Sambrelsiz
teker 0.002-0.005
Kamyon lastigi(asfalt) 0.006-0.01
Beton-otomobil lastigi 0.01-0.015
Asfalt-otomobil lastigi 0.03
Kat kum otomobil lastigi 0.04-0.08
Gevsek kum-otomobil lastigi 0.2-0.4
Mesela,beton zerinde hareket eden 2 ton agrlgndaki bir otomobile etki eden srtnme kuvvetini hesaplayalm... G=2000 * 9,81 =19.620 Newton c=0.015 alalm (yukardaki tablodan) Bu durumda yuvarlanma srtnme kuvvetimiz Fy=19.620 * 0,015 = 294,3
N olarak hesaplanr. Yukarda da bahsettigim gibi yuvarlanmadan dolay olan srtnme
kayb ok kk. Sonucumuz 294 N oda yaklask 30 kg civarnda bir kuvvete denktir.
Sayet
lastik ile beton arasndaki kaymadan mtevellit srtnme sorulmus olsayd bu durumda srtnme katsaymz f=0,7 olacakt ve sonucumuz 0,7*19620 =13734 N olacakt ,
buda digerinin yaklask 47 kat byklkte bir srtnme kuvveti olurdu.
4
2.3.2
Aerodinamik
Dsk hzlarda hava direnci diger kayplar yannda olduka dsk mertebelerdedir.
Ancak hz 30-40 km/h degerine ulasnca hava direnci nem kazanr. Bunun sebebi hava
direncinin hzn karesiyle dogru orantl olarak artmasdr. Geometrik boyutlar ara ds
formuna bagl diren katsays (cw) belli olan bir araca herhangi bir hzda etkiyen diren
kuvveti hesaplanabilir. rnek olarak; hz 30 m/sn (108 km/h) olan bir aracn rzgara dik
kesit yzeyi 3m2 kare olsun. Aracn diren katsays Cw =0,45 ise bu araca etkiyen diren
(1)nolu ifade ile bulunur.[4]
D = 0, 5 d cw A V 2
(1)
Bura da ;
d: Havann yogunlugu ( 1.255kg/m2 )
A: Aracn dik kesit alan (m2 )
V: aracn hz ( m/sn ) dir.
D = 0, 5x1, 255x0, 45x3x(30)2
D= 762,4 Newton
Bu kuvvet 80 kg agrlgnda bir ktleyi havaya kaldrmak iin gerekli olan kuvvete
esittir. Cw degeri bir cismin ds formu sebebiyle dzgn dogrusal akm iinde olusturdugu
sreksizlik ve girdaplar gibi akm bozuntularnn sonucu ortaya kar. Ds form itibariyle
cisim ne derece az bozuntuya sebep olursa diren katsays ve buna bagl olarak diren
kuvvetide o derece kk olur. Grldg gibi hz ve geometrik boyutlar belli olan
bir aracn hava diren kaybn azaltmann tek yolu aracn ds formuna bagl olan diren
katsays Cwyi azaltmaktr. Cw degerinin azaltlmas:
Motor gc sabit bir aracn daha yksek hza erisebilmesi
5
2.4 Sanzman
Ve Disli Oranlar
Motordaki yksek torklu kuvvetten optimum derecede verim elde etmek iin disli ve
aktarma organlar kullanlr.Bylelikle hem yakttan hemde hzlanma ve performans en
yksek derecede verim elde edilir. Basit bir disli modeli ile anlataym;Motordan sanzmana gc aktaran asagdaki en soldaki kk disli olsun. (ortadaki 2 kat, sagdaki 4
kat byklgnde yani 1:1, 2:1 ve 4:1) Bizim motorumuzun rettigi 1000 devirde tork
degeri 100 Nm olsun. (yani kk dislideki gcmz) simdi ortadaki disli ile kk disliyi birlestirelim. Ortadaki, kgn 2 kat olduguna gre 1000 devir dnen kk disli
2 kat byklgndeki disliyi 1000/2=500 kez dndrecektir. 1 dakikadaki tur (devir) says azald ancak bu durum ihtiyacmz olan torku arttracak. is = kuvvet mesa f e (mesafe
burada dislimizin oran oluyor yani 2yi kullanacagz) formlnde bizim iin is elde edecegimiz torku ifade ediyor, kuvvet ise motordan ilk kan g yani 100 Nm. Hesabmz
100 2 = 200Nm.Hzlca en byk disliyi de hesaplayacak olursak 100 4 = 400Nm
oluyor. Ama tur says (1000/4) 250 oluyor bu sefer.Birinci vitesde duran aracmz kalks
yapacak ve en yksek gce ihtiyacmz var, bu yzden 400Nm reten disli birinci vites
digeri de 2. vites olacaktr. Birinci viteste tur says az oldugu iin de aracmz hz kazandka son devire ulaslacak ve 2. vitese atldgnda tur says da artms olacak ve aracmz
hz kazanmaya devam edecek, bu arada ara ilk hareketini artk kazand belirli bir hza
ulastg iin ilk bastaki kadar yksek gce ihtiyac kalmad bu yzden 200Nm gayet yeterli.Iste sanzmann en basit tanm budur. Sanzman
Sekil
Sanzman
disli oranlar otomobilde aracn 0-100 oranndan son hzna gibi performans
degerlerine etki eder, peki bizim ne isimize yarar? Sanzman
2.5
Tketim verileri
ii tketim verileri 50 km/saat ve ortalama hz 20 km/saat olacak sekilde dur kalklar ile mesafeye gre
ortalama alnarak 100 kmdeki tketim degeri ngrlr.Sehir
(2)
(3)
thr degeri ve dev degeri programda kosturulacak olan katsaylardr.Bu katsaylar yukardaki denklemde grldg gibi iki adet denklemden elde edilir.Mantksal olarak yakt
tketimi gaza ne kadar basldg,motor devir byklg ile dogru orantldr.Yukardaki
denklemde grlen degerler srasyla 20 ve 90 km/saat hzlarnda giden ayn araca ait
olan tketim deger esitsizligi (4) nolu denklem ile temsil edilir.
x, y =
32 2.4
17 55 6.1
(4)
Buradan thr ve dev degerleri elde edilir.Sonra ise bunlar formlde yerine konarak 100 km
de ve saatteki yakt tketimi bulunur.
8
2.6
33
15
45
37
38
42
18
29
16
16
13
I-tronic
Bu vites tipinde kullancnn kendi optimizasyonuna gre vites attrp azaltma bilgilerini ait belirli parametreleri bir kaytta tutarak bir tus vastasyla i-tronic moduna geilir.Bu
modda nceden kayt edilmis verilere isleyip vites degistirmeye ait snrlarn belirleyerek bu parametreler dahilinde ilgili vitesi her bir zaman tikinde sorgular.Eger bu modda
iken vites islemi kullanc tarafndan yaplrsa moddan klr ve yeniden vites degisimlerinde parametreler sfrlanan veritabanna kayt edilir(sfrlanr). Tablo 1de bir egitim
verisi gsterilmistir.
- 7 Nisan 1761) alr. Nave Bayes Snflandrc rnt tanma problemine ilk baksta
oldukca kstlayc grlen bir nerme ile kullanlabilen olaslkc bir yaklasmdr. Bu
nerme rnt tanma da kullanlacak her bir tanmlayc nitelik ya da parametrenin istatistik adan bagmsz olmas gerekliligidir. Her ne kadar bu nerme Naive Bayes Snflandrcsnn kullanm alann kstlandrsa da, genelde istatistik bagmszlk kosulu
esnetilerek kullanldgnda da daha karmask Yapay sinir aglar gibi metotlarla karslastrabilir sonular vermektedir. Bayes Teoremi Naive Bayes snflandrcs Bayes teoreminin bagmszlk nermesiyle basitlestirilmis halidir. Bayes teoremi (5) nolu denklemle
ifade edilir.
P(A|B) =
P(B|A)P(A)
P(B)
(5)
3.1
Snflandrma Problemi
3.2
Nicelik Kmesi
Yine yukarda bahsedilen spam e-posta rneginden devam edilecek olunursa; Posta
kutumuzda bulunan spam e-postalar spam olmayan e-postalardan ayran parametrelerden olusan bir kme, meselaikramiye,dl gibi szcklerden olusan, nicelik kmesine
rnektir. Matematiksel bir ifadeyle nicelik kmesi (6) nolu ifade ile temsil edilir.
x(i), i = 1, 2, . . . , L
(6)
(7)
(8)
(9)
3.3
Elimizde snf belli olmayan bir rnt olsun. Bu durumda (10) nolu ifade sz konusudur.
x = [x(1), x(2), . . . , x(L)]T RL
(10)
snf belli olmayan rntnn L-boyutlu nicelik vektrdr. Spam e-posta rneginden
gidecek olursak spam olup olmadgn bilmedigimiz yeni bir e-posta snf belli olmayan
rntdr. Yine Si |xin atanacag snf ise; Bayes karar teorisine gre x snf Si ya aittir
eger
P(Si |x) > P(S j |x), j 6=, i
(11)
(12)
3.4
Verilen bir xin (x = [x(1), x(2), ..., x(L)]T RL) snf Si ye ait olup olmadgna karar
vermek iin kullanlan yukarda formle edilen Bayes karar teoreminde istatistik olarak
bagmszlk nermesinden yararlanlrsa bu tip snflandrmaya Naive bayes snflandrlmas denir. Matematiksel bir ifadeyle (13) numaral
P(x|Si )P(Si ) > P(x|S j )P(S j ), j 6=, i
(13)
ifadedeki P(x|Si ) terimi yeniden yazlrsa (14) nolu ifade gibi olacaktr.
L
12
(14)
bylece Bayes karar teoremi asagdaki sekli alr.Bayes karar teorisine gre x snf Si ya
aittir eger (15)u saglyorsa
L
(15)
k=1
13
C# nedir?
C# Programlama Dili,Microsoftun gelistirmis oldugu yeni nesil programlama dilidir.[10]
C#, .NET orta seviyeli programlama dillerindendir. Yani hem makine diline hem de insan
algsna esit seviyededir. Buradaki orta ifadesi dilin gcn degil makine dili ile gnlk
konusma diline olan mesafesini gstermektedir. rnegin; Visual Basic .NET (VB.NET)
yksek seviyeli bir dildir dersek bu, dilin insanlarn gnlk yasantlarnda konusma biimine yakn sekilde yazldgn ifade etmektedir. Dolaysyla VB.NET, C#.NETten daha
gl bir dildir diyemeyiz. Programn alsmas istenen bilgisayarlarda framework kurulu
olmas gerekmektedir. (Windows 7 ve Windows Vistada .NET Framework kuruludur)
4.1
Tasarm hedefleri
C# uygulamalar hafza ve islemci gereksinimleri ile tutumlu olmak uzere tasarlanmstr. Buna ragmen C# programlama dili performans asndan C veya assembly
dili ile rekabet etmek iin tasarlanmamstr
4.2
Elestiri
C# konusunda elestiriler tabii ki var. En nemlisi using ile hangi referanslar kullanacagmz ok iyi bilmeliyiz. Ayrca ssl parantez "" ve noktal virgl ";" karakterlerini
ok sevmemiz ve asla unutmamamz gerekmektedir.
4.3
Performans
Digerleri gibiSanal Makineye dayal dillerden biridir, C# programlama dili direkt yerlesik koda derleyen dillerden daha yavastr.
4.4
Platform
.NET Microsoft uygulama bonservisi Windows zerinde geerlidir. Fakat C# programlarn Windows, Linux veya MacOs zerinde yrten baska uygulamalar da yer almaktadr. Mono(software)ve DotGnu
4.5
Birok progamda grmszdr bu dosyay.Ya da isletim sistemi dosyalarnn bulundugu yerde mutlaka karsmza kmstr.[7]Dll dosyalar iinde alsabilir kod bulunduran kendi basna alsamayan,executable dosyalar tarafndan dinamik ya da static olarak
agrlp kullanlabilen,iinde prosedur veya fonksiyon bulundurabilen dosyalardr. Niin
kullanmalyz?
15
Sekil
Yaptgnz uygulama byk bir program olabilir. Programnzn bellekte tuttugu alan
azaltmak iin baz fonksiyonlar dinamik olarak agrp kullanmak gerekebilir.Iste tam
burada DLL kullanmak olduka mantkl ve gereksinim duyulan bir istir. Bundan farkl
olarak Dll dosyas kullanarak Exe dosyalarnzn sismesini engelleyebilirsiniz. Si
sersene
olur?
Ilk olarak exe dosyasnda olabilecek bir hata tum program etkiler.Bundan saknmak iin
dll dosyalarn kullanmak gerekir. Belki en nemli gerekliliklerden biri de tasnabilirlik.Bir islem birden ok exe dosyasnda gerekebilir.rn;bir dizi elemanlarnn toplamn
birden ok program da kullanmak gerekebilir.Bunun iin yazlan bir dll dosyasn diger
projelere import ederek ok rahat bir sekilde kullanabilirsiniz.DLL kullanmann avantajnn yannda mutlaka dezavantajlar da vardr...Mesela projeye gereken bir dll dosyas
mevcut degilse proje eksik alsabilir ya da hi alsmayabilir.
rn;statik olarak agrlan bir dll belirtilen klasorde mevcut degilse dosya alsmaz.Bellege
ilk olarak dll dosyalar yuklendiginden program almadan kapanr. Simdi
Sekil
17
Sekil
{
return a + b;
}
public double bol(Double a, Double b)
{
return a / b;
}
Daha Sonra Sadece Build edip islemi tamamlyoruz.Dll hazrdr.Simdi
en kolay yoldan
bir dll nasl kullanlr onu gsterelim. Simdi
Sekil
Convert.ToInt32(textBox2.Text)).ToString();
//Classmzdaki topla fonksiyonunu ardk.
}
private void button2_Click(object sender, EventArgs e)
{
label4.Text = mydll.bol(Convert.ToDouble(textBox1.Text),
Convert.ToDouble(textBox2.Text)).ToString();
//Bol fonksiyonunu ardk
}
4.6
Gsterge Ve zelikleri
C#ta bir nceki baslkta anlatldg gibi alsma annda .dll uzantl olarak projeye import edilebildiginden bahsettik Sekil
19
4.7
Chart bildigin grafik( ubuk,pasta,izgiler,egilim izgileri vs) hazrlamak iin kullanlan bir tr Microsoft tarafndan gelistirilen Componentdir.[7] Bir ok projede is grr niteliktedir ve tasarmn renklendirerek iyilestirebiliyorsunuz. Microsoftun sitesinde
yazdg gibiMicrosoft Chart for .NET Framework 3.5 SP1 den itibaren bulunur ve .net
framework 2.0 de yoktur.(Sahsen
aradm). Chart Componentinden ufak bir ekran grnts. rneklerle anlatmaya geeyim hemen.Chart componenti toolbox da data sekmesinin
altnda mevcuttur. Oradan srkleyerek formumuza ekleyelim.Boyutlarn ve kisisel ayarlarnz yapn
Sekil
kadar dosya indirmis kim ne kadar dosya yklemis onlarn takibini yaptgm iin grafigi
de ona gre hazrlayacagm.
this.chart1.Titles.Clear();
this.chart1.Series.Clear();
this.chart1.Series.Add("Download");.
this.chart1.Series.Add("Upload");//Upload ekledik
this.chart1.Series[0].Color = Color.Red;//Downloadn rengini
//belirledik.(Grafiksel iyiletirmek iin)
this.chart1.Series[1].Color = Color.Orange;//Uploadn rengini belirledik.
for (int i = 0; i < 7; i++)//Ben 7 adet kayt gsteriyorum nk bu
{
this.chart1.Series[0].Points.AddXY(kisi[i].ToString(),
double.Parse(down[i].ToString())/1024.0/1024.0);//x parametresi altta
this.chart1.Series[1].Points.AddXY(kisi[i].ToString(),
double.Parse(up[i].ToString()) 1024.0 / 1024.0);
//Burda o kiiye birde upload deeri
}
Bu arada kisi, up, down degiskenleri bende arraylist isterseniz siz string, int ve double
dizi olarakta tanmlanabilir.
4.8
OleDbConnection Snf
9 figre bakalm.
21
Sekil
Grldg gibi bir OleDbConnection nesnesi ncelikle bir Ole Db Data Provider (
Ole Db Veri Saglaycs) ile iletisim kurar. Ardndan bu veri saglayc istenen veri kaynagna eriserek, gerekli hatt tesis etmis olur. Peki bu islemi nasl gereklestirecegiz. Iste
tm Connection nesnelerinin en nemli zelligi olan ConnectionString zelligi bu noktada devreye girmektedir. Ksaca ConnectionString zelligi ile, veri kaynag ile saglanacak olan iletisim hattnn kurulum bilgileri belirlenir. OleDbConnection snf iin ConnectionString zelligi asagdaki prototipe sahiptir. public virtual string ConnectionString
get; set; ConnectionString zelligi belirlenmis bir OleDbConnection snf nesne rnegini
atgmzda, yani veri kaynagna olan hatt kullanlabilir hale getirdigimizde, bu zellik yanlz-okunabilir (read-only) hale gelir. Dolaysyla ak bir OleDbConnection nesnesinin ConnectionString zelligini degistiremezsiniz. Bunun iin bu baglanty tekrardan
kapatmanz gerekecektir. ConnectionString zelligi, bir takm anahtar-deger iftlerinin
noktal virgl ile ayrlmasndan olusturulan string bir bilgi toplulugudur. ConnectionString zelligi iinde kullanabilecegimiz bu anahtar-deger iftlerinin en nemlisi Provider
anahtardr. Bu anahtara verecegimiz deger, hangi tip ole db veri saglaycsn kullanmak
istedigimizi belirtmektedir. rnegin Sql sunucusuna, Sql Ole Db Provider ile baglanmak
istersek, Provider anahtarna, SQLOLEDB degerini atarz. Provider anahtar mutlaka belirtilir. Daha sonraki anahtar-deger iftleri ise bu Provider seimine bagl olarak degisiklik
gsterecektir. Veri kaynagna hangi tip Ole Db Veri Saglaycsndan baglandgmz setikten sonra, baglanmak istedigimiz veri kaynagda belli olmus olucaktr. Srada bu veri
22
kaynagnn adn veya adresine belirtecegimiz anahtar-deger iftlerinin belirlenmesi vardr. rnegin bir Sql Sunucusuna baglanyorsak, sunucu adnda Ole Db Data Provider(
Veri Saglaycs) na bildirmemiz gerekir. Bunun iin Data Source anahtarn kullanrz.
Bununla birlikte baglandgmz veri kaynag, sql yada oracle gibi bir veritaban ynetim
sistemi degilde, Access gibi bir tablolama sistemi ise, Data Source anahtar, tablonun fiziki adresini alr. Sql ve Oracle gibi sunuculara yaplacak baglantlarda Provider ve Data
Source seiminin yannda hangi veritabanna baglanlacagnda Initial Catalog anahtar
yada Database anahtar ile belirleriz. Bunlarn dsnda veri kaynagna yaplacak olan baglantnn gvenlik ayarlarnda belirtiriz. ogunlukla Integrated Security gibi bir anahtara
True degerinin atandgn grrz. Bu anahtar, veri kaynagna baglanmak istenen uygulama iin, makinenin windows authentication ayarlarna bakldgn belirtir. Dolaysyla
sql sunucusuna baglanma yetkisi olan her windows kullancs bu baglanty saglayabilir.
Ancak istersek belli bir kullanc ad veya sifresi ilede bir veritabanna baglant almasn
saglayabiliriz. Bunun iin ise, User ID ve Password anahtarlarn kullanrz. Buraya kadar
bahsettiklerimiz kavramsal aklamalardr. Dilerseniz basit rnekler ile konuyu daha iyi
aklamaya alsalm. rneklerimizi Console uygulamalar seklinde gereklestirecegiz.
Ilk rnegimizde, Sql Sunucusundaki veritaban iin, bir baglant hatt olusturup aacagz.
using System;
23
Sekil
{
conFriends.Open(); /* Open metodu ile oluturduumuz iletiim hattn
kullanma ayoruz. */
Console.WriteLine("Balant ald...");
conFriends.Close(); /* Close metodu ilede oluturulan iletiim hattn
kapatyoruz. */
Console.WriteLine("Balant kapatld...");
}
catch(Exception hata)
{
Console.WriteLine(hata.Message.ToString());
}
}
}
Ayn rnekte bu kez belli bir kullanc ile baglanmak istedigimizi dsnelim. Bu durumda ConnectionStringimizi asagdaki sekilde degistirmemiz gerekir. Bu durumda User
ID ve Password anahtarlarna gerekli kullanc degerlerini atarz.Sekil
bir Access tablosuna nasl baglanabilecegimizi grelim. Bunun iin ConnectionString zelligimizi asagdaki gibi yazarz.
OleDbConnection conYazarlar=new
OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=c:\\Authors.mdb")
24
Sekil
try
{
conYazarlar.Open();
Console.WriteLine("Yazarlar Access veritabanna balant ald...");
conYazarlar.Close();
Console.WriteLine("Yazarlar Access veritabanna olan balant kapatld...");
}
catch(Exception hata)
{
Console.WriteLine(hata.Message.ToString());
}
Bu rnekte dikkat ederseniz ConnectionString zelligini, OleDbConnection nesnemizin
diger yapc metodu ierisinde parametre olarak belirledik. Ayraca, Provider olarak bu
kez Microsoft.Jet.OLEDB.4.0 seerek, bir Access veritabanna baglanmak istedigimizi
bu Ole Db Providera bildirmis olduk.Daha sonra bu veri saglayc componenti, Data
Source anahtarndaki degere bakarak, ilgili adresteki veritabanna bir hat ekti.
Sekil
25
Programlama
Ara simulasyon ortamna ait kullanlan eventler ve zelikler.
5.1
5.1.1
Algoritmalar
Gaza basma
Bu fonksiyon temel olarak asagdaki kaba kodu gerekler.timer belirlenen hassas periyotlarda asagdaki eventi denleyecektir ve program bu kosullara gre kosacaktr.
eger gaza baslrsa
hz sabitleyicide degilse
gaz oku
eger sabitleyicide ise
eger sabitlenme hz anlk hzdan kkse ise
gaz ver
degilse
gaz sfrla
5.1.2
Tekerler
5.1.3
Ara kuvveti
Bu fonksiyon ise vites konumu ve gaz kelebeginden okudugu degerlere gre aracn
motor devrinin seyrettigi devir degerine gre motor torkuna gre yola aktarlan kuvveti
hesaplayan islevdir.
eger itronic mod aktifse
bagl parametrelere gre vites arttr
eger vites 1 de ise
birinci vitesin orann al
degilse eger vites 2 de ise
birinci vitesin orann al
degilse eger vites 3 de ise
birinci vitesin orann al
degilse eger vites 4 de ve sanzmandan kk ise
birinci vitesin orann al
degilse eger vites 5 de ve sanzmandan kk ise
birinci vitesin orann al
degilse eger vites 6 de ve sanzmandan kk ise
birinci vitesin orann al
27
5.1.4
Ds kuvvetler
Bu metotta eger menzil olarak atanms alnacak yol tkenmis ise yeni yol baslg
olusturur harita seimi yaplmamssa,yapldysa yukarda aklanms olan durum geerlidir.Yolun parametrelerine gre araca etkiyen ivme hesaplanr.Srtnme hesaplar ve fren
kontrolde yapldktan sonra gncel anlk hz hesaplanr.Menzilden kartlarak alnan yol
gncellenir.
eger menzil sfrdan kkse
eger harita seimi yaplmamssa
rastgele inis yada kstan olusan rastgele egimli belirli bir menzilden olusan harita
olustur
28
5.1.5
Form yklenirken
5.1.6
Gaz basma,ara kuvveti,ds kuvvetleri her timer periyotta hesaplanarak bilgiler forma
gncerilir.
5.1.7
Hz sabitleyici tusu
5.1.8
i-tronic tusu
butonu disable et
snflandrcy aktif et
5.1.9
5.1.10
Vites arttrp azaltma artrma islemi mouseun butonlarnn eventlarna ait zelikler
atanmstr.
Datatable temizle
listbox- temizle
mouseun sol klik edildi ise
vites artr
datatable a ilgili parametreleri kaydet
mouseun sag klik edildi ise
vitesi azalt
datatable a ilgili parametreleri kaydet
i-tronic modu aktif edilebilir
5.2
5.2.1
UML
Naif bayes algoritmas
Naive bayes algoritmas hazr kod olarak alnarak projeye eklendi.Bu snfa ait zelik,islev ve alanlar Sekil
5.2.2
13deki gibidir.
31
Sekil
Sekil
32
5.3
33
Sekil
34
SONULAR VE NERILER
Sonu olarak c# ortamnda bir aran dinamik olarak hesaplar,yakt tketimleri,
performanslar ve bunlara ek olarak i-tronic adnda bir kullanc davranslarn modellenerek simulasyonda kendi kendine vites atlmas sagland,ancak vites oranlarnn biribirine
ok yakn oldugu ve veri kmesinin kararsz,bulank oldugu durumlarda basarsz netice
vermesi olaslg yksek oldugu gzlenmistir.
35
Kaynaklar
[1] http://forum.donanimhaber.com
[2] http://yegitek.meb.gov.tr,
[3] http://www.muhendese.com/yuvarlanma-surtunmesi/
[4] htt p : //tr.wikipedia.org/wiki/Aerodinamik( otomobil)
[5] htt p : //www.tnoz.com/sanziman nedir disli oranlari ne ise yarar
2526/
[6] htt p : //www.codepro ject.com/Articles/318126/Naive Bayes Classi f ier
[7] htt p : //www.abdullahaltintas.com/index.php/dll olusturulmasi ve
dllkullanimi/
[8] AmbalavanarT hirugnanam, htt p : //www.codepro ject.com/Articles/20341/Aqua
Gauge
[9] htt p : //www.csharpuygulamalar.com/20130 41 4a rchive.html
[10] htt p : //tr.wikipedia.org/wiki/CS harp
36
ZGEMIS
KIS ISEL BILGILER
Ad Soyad
:Mustafa KSTEK
Uyrugu
: T.C
: ayralan
Telefon
: +905549935366
: mustafakostek@gmail.com
ITIM DURUMU
EG
Lisans grenimi
: Bilecik Seyh
Bitirme Yl
: 2015
Lise
IS DENEYIMLERI
Yl
: 2013
Kurum
: IZSU
Stajlar
: IZSU
ILGI ALANLARI
Eskrim
YABANCI DILLER
: Almanca,Ingilizce
37