Demeraj Akımı ve Demeraj Akımını Önleme Yolları

Demeraj Akımı Nedir?

Demeraj akımı, elektrikle çalışan bir cihaza enerji verildiğinde, cihazın stabil çalışana kadar çektiği akımdır. Örneğin bir elektrik motoru, tam devire ulaşana kadar normal devirde çektiği akımın 7 kat fazlasını çekebilir.

Özellikle anahtarlamalı güç devrelerine enerji verildiğinde anlık olarak (15-20 ms) çok yüksek akım çektikleri görülür. Bunun basit bir sebebi vardır: giriş doğrultma kondansatörleri. Kondansatörler, gerilim uygulandığında tam şarja ulaşana kadar çok yüksek akım çeken devre elemanlarıdır.

Sadece anahtarlamalı güç kaynakları değil, elektrikle çalışan pek çok cihaz enerji verildiğinde demeraj akımı çeker. Örneğin rezistif yükler. Mesela su ısıtıcısının direnci, ısıtıcı soğukken düşüktür. Fakat cihaz fişe takıldığı anda ısınma başlayacak ve direnç yükselecektir. Böylece çekilen akım düşecektir.

Elektrik motorları da kalkışta çok yüksek akım çekerler. Motor hızlandıkça çekilen akım da düşecektir. Endüstride bu durumdan etkilenmemek için çok yüksek güçlü motorlara “softstarter”, yani “yumuşak başlatıcı” cihazları takılır.

Demeraj akımını gösteren temsili akım-zaman grafiği
Grafik 1: Demeraj akımı (0-1 zaman aralığında) (NOT: Bu değerler hiçbir ölçüm sonucuna dayalı olmayıp tamamen örnektir.)

Güç kaynaklarında bu durumu önlemek için NTC kullanılır. NTC, sıcaklığa bağlı olarak iletkenliği (direnci) değişen bir değişken direnç türüdür. Devre enerji girişine seri bağlandığında üzerinden akım geçtikçe ısınarak daha çok akımın geçişine izin verecektir. Bu şekilde devre fişe takıldığında aşırı bir akım çekilmesi önlenmiş olacaktır. Buradaki tek sorun NTC’nin anında soğumamasıdır. Örneğin bir cihazı fişten çektikten sonra hemen geri taktığımızı, veya elektrik kesintisi durumlarını düşünelim. Eğer NTC soğumadan enerji tekrar verilirse devredeki kondansatör hızlıca şarj olacak ve şebekeden çok büyük demeraj akımı çekilecektir.

NTCnin demeraj akımı önlemek için devreye seri bağlanması.
Şema 1: Demeraj akımının NTC ile önlenmesi.
Azaltılmış demeraj akımını gösteren temsili akım-zaman grafiği
Grafik 2: Azaltılmış demeraj akımı (0-1,5 zaman aralığında) (NOT: Bu değerler hiçbir ölçüm sonucuna dayalı olmayıp, tamamen örnektir.)

İki temsili grafik de incelendiğinde demeraj akımına karşı bir çözüm devreye eklendiğinde sistemin stabil olarak çalışması için gereken süre artarken çekilen ani akım miktarının düştüğü görülür.

Bir invertörünüz olduğunu ve 192 watt olduğunu düşünelim (Tam yükte 12v tarafında yaklaşık 16 amper çekilecektir.). Bu cihazın bir “güneş elektrik santrali”nin parçası olduğunu düşünelim. Yani invertörden önce bir şarj denetleyicisi bulunduğunu varsayalım. Şarj denetleyicisi 20A’dan fazla akım çekildiğinde koruma durumuna geçiyorsa demeraj akımı bu noktada ciddi bir sorun oluşturabilir. Çünkü invertör kondansatörü rahatlıkla 25-30A kadar demeraj akımı çekebilir (boştayken bile). Bunun olmasını nasıl engelleyeceğinizi aşağıda paylaşacağım devre üzerinden anlatacağım. Basitçe bir NTC işinizi görecektir ancak yukarıda bahsettiğim soğumama probleminden dolayı farklı bir çözüm önereceğim.

Demeraj akımını azaltmada kullanılabilecek zamanlamalı devre örneği.
Şema 2: Zamanlayıcılı demeraj akımı azaltıcı (softstarter)

Aslında mantık bu devrede de aynı: demeraj akımına neden olan devreye enerji verirken, enerjiyi bir direnç üzerinden vermek. Burada farkı oluşturansa sıcaklığa bağlı bir devre oluşturmak yerine zamanlayıcılı bir devre kurmak. Ufak bir kondansatörü bir voltaj bölücüyle şarj edeceğiz. Şarj uygun miktara ulaştığında (bu süreçte yük kondansatörü de şarj olmuş olacak ve demeraj akımı ortadan kalkacak) bir MOSFET tetiklenecek ve röle kapanacak. Röle kapandığında yüke bağlı olan direnci by-pass edeceğiz. Böylece devre, filtreleme için gereken, aşırı akım çeken kondansatörü sorun yaratacak derecede büyük bir akım çekmeden şarj edebilecek.

Öneriler ve Dikkat Edilmesi Gerekenler

Bu devrede direnci olabildiğince düşük hesaplamalısınız. Çünkü eğer röle devrenizde bir hata oluşursa tüm akım bu direnç üzerinden geçecektir. Ayrıca unutulmamalıdır ki bu devredeki direnç değeri büyüdükçe demeraj akımına neden olan devrenin kondansatörü daha yavaş şarj olacaktır. Yani bu devrenin kullanılması durumunda demeraj akımı miktarını direnç değeri belirleyecektir.

Bu devrede en çok enerji röle tarafından harcanacaktır. Röleyi devre dışı bırakıp, yükünüzün özelliklerine uygun MOSFET seçerek röle yerine MOSFET’i kullanabilirsiniz. Böylece daha verimli bir sisteme sahip olabilirsiniz. MOSFET’lerin soğutulmaya ihtiyaç duyduklarını unutmayınız.

Eğer uygulamanızda herhangi bir sebepten dolayı kısa süreli enerji kesintileri yaşanmayacaksa devrenin enerji girişine bir NTC takmanız yeterli olacaktır. (Şema 1’deki gibi)

Sormak istediğiniz şeyler olursa benimle yorumlardan iletişime geçmekten çekinmeyin. Yazıyı beğendiyseniz paylaşırsanız sevinirim. Umarın faydalı bir içerik olmuştur 🙂

Elektronik Devreler Ters Voltajdan Nasıl Korunur?

Elektronik devreler tasarlarken ters voltaj koruması eklemek önemlidir. Bu koruma eklenmezse yanlış beslemeler sonucunda, tasarlanan devrenin bozulması çok olasıdır.

Bunu yapmanın en kolay yolu diyot kullanmaktır. Diyot; elektrik akımının sadece bir yönde akmasına izin veren, yarı iletken malzemelerden yapılmış iki bacaklı bir elemandır. Devrenin enerji girişine seri bağlandığında ters voltaj verilirse devreden neredeyse hiç akım geçmeyecektir. Bu da devrenin bozulmasını önleyecektir. Ancak diyot kullanmanın dezavantajları vardır. Diyotlar aşırı ısı üretirler (bir miktar enerji boşa harcanır). Farklı diyotlar (örneğin schottky diyotlar) daha az enerjiyi boşa harcayabilir. Ancak diyot kullanmak yerine daha verimli ve iyi yöntemlere başvurmak doğru olacaktır. Çünkü standart diyot yerine farklı bir tür diyot kullanıldığında ters bağlantıda akan akım miktarı yükselebilir.

1 amperlik bir yükü ters akımdan korumak için 6A10 diyotunu kullandığımızı varsayarsak 0.90*1 = 0.90W güç kaybı yaşarız. Bu kayıp ısıya dönüşecektir.

Bu iş için P-kanallı bir MOSFET kullanmak daha verimli olacaktır. Öncelikle kullanacağınız MOSFETi yükün ihtiyaçlarına göre belirlemelisiniz. MOSFET’lerle çalışırken bacaklara dikkat etmek oldukça önemlidir. Çünkü çok hassas elemanlardır ve yanlış bağlantı yapıldığında kolayca bozulabilirler. Ayrıca içlerindeki yarı iletken tabakalar çok incedir. Bu nedenle statik elektriğe maruz kalan bir MOSFET bozulabilir. MOSFET’leri kullanırken ve depolarken buna önem verilmeli, kullanılan havya mutlaka topraklı olmalı ve çok sıcak olmamalıdır.

P-kanallı MOSFET’ler gate uçlarına negatif voltaj uygulandığında çalışırlar.

Şema 1: P kanallı MOSFET ile yükü ters akımdan korumak

Şema 1’deki devreyi kullanarak yükleri ters akımdan koruyabilirsiniz. Amacınıza uygun bir transistör seçmeniz çok önemli. Örneğin yukarıdaki şema ile 20 volttan daha büyük voltajla çalışan devreleri doğrudan koruyamazsınız. Çünkü IRF9540 transistörünün “Gate-to-Source” voltajı datasheet’inde 20 volt olarak belirtilmiş. Ancak bir zener diyot ve direnç yardımıyla gate voltajını limitlemeniz mümkün. Gate voltajını 20 voltu geçmeyecek şekilde limitlerseniz örnekteki devreye 100 volt kadar voltaj verebilirsiniz. Bu voltaj değerleri her transistör için farklı olacağından MOSFET seçerken datasheet’ine bakmayı unutmayınız. Transistörden geçebilecek en yüksek sürekli akım da seçim yaparken önemlidir. Örneğin 20A çekecekseniz 20 amperlik bir MOSFET bir süre sonra bozulabilir çünkü bu değer ideal şartlar altında geçerlidir. (Çok iyi soğutma gibi) Bu nedenle seçim yaparken daha yüksek değerler seçmek daha faydalı olacaktır.

12 volt 1 amper ile çalışan bir yükü bu devreye taktığımızı düşünelim. Diyotlar ve normal transistörlerin aksine MOSFET’lerin sabit bir voltaj düşümü yoktur. Bu değer çekilen akıma bağlıdır. Bu sebeple ters voltaj koruması için çok verimlidirler. 12 voltu devreye verdiğimizde Gate-to-Source voltajı örnekteki transistörün iç voltaj düşümünden dolayı en az -10.4v olacaktır. Bu da negatif voltajlarla tetiklenen P kanallı MOSFET’leri iletken hale getirmek için yeterlidir. Veri sayfasına göre MOSFET iletken moddayken maksimum 0.117 ohm bir dirence sahip olabilir. Bu da 1 amperlik yük için 0.117*(1)^2=0.117W ısı enerjisi demek. Diyotla karşılaştırırsak 0.783W enerjiyi boş yere ısıya çevirmiyoruz demektir 🙂 Ancak MOSFET seçerken iç direncinin düşük olmasına önem verin. Enerji kaybını azaltmak için bu önemli.

Fakat voltajı ters bağlarsak Gate-to-Source voltajı +12 volt olarak ölçülür. Bu değer pozitif olduğu için MOSFET yalıtkandır. Yani yüke akım gitmez.

Bu devrenin verimi voltajla doğru orantılıdır. Voltaj arttıkça verim artar çünkü voltaj azaldıkça MOSFET’lerin iç direnci artar. Ayrıca soğutma da önemlidir çünkü MOSFET ısındıkça direnci artacaktır.

Bu devre normal voltajlarda (örn. 12v) verimlidir ancak çok küçük voltajlarda verimsiz çalışacaktır. Bunun sebebi ise MOSFET’lerden geçebilecek akım miktrarının gate voltajı ile orantılı olmasıdır. Bu durumu dikkate alarak diyot – MOSFET seçimi yapmalısınız. Fakat diyotların da yaklaşık 0.7v kadar voltaj düşümüne sebep olacağını unutmayınız.

Not: Bu devre sadece yükler için kullanılabilir. Voltaj kaynakları (batarya vb.) için kullanıldığında çalışmayacaktır. Voltaj kaynakları için kullanılabilecek koruma devresi için ayrı bir yazı yazmayı düşünüyorum. Umarım faydalı bir yazı olmuştur. Başka bir yazıda tekrar görüşmek üzere…

Multimetre Nedir Nasıl Kullanılır?

Merhabalar, ben Uygar. Bu yazımda bir elektronikçinin olmazsa olmaz aracı olan multimetreden bahsedeceğim.

[sam id=”1″ codes=”true”]

Multimetre Nedir?

Multimetre, üzerinde birkaç ölçü fonksiyonunu barındıran bir ölçüm aracıdır. Tipik bir multimetre voltajı, akımı ve direnci ölçebilir. Analog ve dijital multimetreler vardır. Analog olanlarda ibreli bir gösterge bulunurken dijitallerde sayısal bir ekran mevcuttur. Bazı modellerde grafik çubuklar da bulunabilir. Dijital multimetreler, maliyet ve hassasiyet açısından çok yaygın olarak kullanılır. Ancak bazı durumlarda (örneğin hızla değişen değerlerin takibi) analog multimetreler tercih edilmektedir.

Multimetrelerin temel arıza tespiti gibi işlemlerde bir el aracı olarak kullanılan modelleri olduğu gibi; çok yüksek doğruluk derecesine sahip ve tezgah aracı olarak kullanılan modelleri de vardır.

[sam id=”1″ codes=”true”]

Multimetreler; kablo sistemleri, güç kaynakları, ev aletleri, motor kontrol sistemleri, ses sistemleri, elektronik ekipmanlar gibi çok çeşitli endüstriyel ve ev cihazındaki sorunların çözülmesinde kullanılabilir.

Piyasada pek çok özellik ve fiyatta multimetreler vardır. Ucuz multimetreler 10$’dan daha ucuz olabilir. Ancak sertifikalı kalibrasyona sahip laboratuvar sınıfı modeller 5.000$’dan daha pahalı olabilir.

Multimetrelerin Tarihi

1920'lerin cep multimetresi. (kaynak: en.wikipedia.org)
1920’lerin cep multimetresi. (kaynak: en.wikipedia.org)

İlk ivmeli ölçüm cihazı 1820 yılında galvanometreydi. Bu cihazlar, voltajı ve direnci ölçmek için “Wheatstone köprüsü” yöntemi kullanılırdı ve bilinmeyen değer bilinen referans voltaj veya direnç miktarıyla karşılaştırılırdı. Laboratuvarlarda işe yarar olsalar da dışarıda kullanım için çok uygun değillerdi. Çünkü çok narin cihazlardı.

Dijital Multimetreler

Tipik bir multimetrenin ön yüzü şu bileşenleri içerir:

  •  Ekran: Ölçüm sonuçlarının gösterildiği kısım
  • Butonlar: Çok çeşitli fonksiyonları seçmede kullanılır; bunlar modelden modele farklılık gösterir
  • Döner anahtar: Birincil ölçüm değerlerini seçmek için (volt, amper, direnç vb)
  • Giriş jakları: Test uçlarının takıldığı kısım
Multimetrenin Bölümleri
Multimetrenin Bölümleri

Bu uçlar dijital ölçü aletine giren esnek, izoleli kablolardır (kırmızı pozitif, siyah negatif).

Bu cihazlar birkaç kategoriye ayrılır. Bunlar;

  • Genel amaçlı
  • Standart
  • Gelişmiş
  • Kompakt
  • Kablosuz

şeklindedir.

Güvenlik

aslında her cihazda yapmamız gerektiği gibi elektronik bir ölçü cihazını da ilk elimize aldığımızda kullanım kılavuzuna bakmamız gerekmektedir. Bu kılavuzda cihazın nasıl kullanılacağı dışında bazı güvenlik önlemlerine de yer verilmiştir.

Nasıl Kullanılır?

Bu modelden modele değişmektedir. Bu nedenle kullanım kılavuzunu okumak en iyi çözüm. Fakat ben yine de kısaca özetleyeyim. Bu yazıdaki fotoğraflarda gördüğünüz, benim kullandığım multimetre ile DC 12v ölçeceğimizi varsayalım. Siyah prob her zaman COM (common – ortak)  ucuna takılır ve negatifi temsil eder. Benim multimetremde ilk jak yalnızca büyük amper değerlerini ölçmek için kullanılmış*. Ortadaki jak ise voltaj,  direnç gibi değerlerin ölçümü için ayrılmış.** Dolayısıyla pozitif probumuz olan kırmızı kabloyu ortadaki jaka takıyoruz. Döner anahtarı DC bölümünden 12den daha büyük herhangi bir değere getiriyoruz. En küçük değere getirdiğinizde en ayrıntılı sonucu alırsınız. Örneğin DC 600v kademesinde 12v ölçerseniz ekranda sadece 12 yazar fakat 20v kademesinde ölçerseniz 12.26 yazar gibi. 12’den küçük bir değer seçtiğinizde ekranın en başında 1 yazar. (Dediğim gibi bunlar modellere özgü özelliklerdir.)

* 10ADC jakının altında yazanlara bakarsanız şunları görebilirsiniz:

  • En fazla 10 amper taşıyabilir (aksi taktirde yanar)
  • En fazla 10 saniye tutulmalıdır (yoksa devre yollarında yumurta pişirebilirsiniz diye tahmin ediyorum 😀 )
  • ve sigortasızdır. (yani daha çok dikkat etmelisiniz.)
  • Sadece DC ve A cinsinden akım ölçme amacıyla kullanılır.

** VΩmA jakında yazanlara göre ise şunları anlayabiliriz;

  • En fazla 600 volta dayanabilir. (Daha yüksek bir şeyler verdiğinizde büyük bir ihtimalle her şeyi hatalı ölçer)
  • En fazla 200mA kadar enerji geçebilir. (örneğin amper ölçerken daha yüksek akım çekerseniz içerisindeki sigortayı değiştirmek zorunda kalırsınız. Yoksa hiçbir şey ölçmez.)
  • Sigorta korumalıdır. (yani bir hata yaparsanız sigorta cihazı koruyacaktır.)
  • voltaj (600v), direnç ve mA cinsinden akım (200mA) ölçme amacıyla bu port kullanılır.

Burda belirttiğim her özellik cihazınıza bağlıdır. Bazı cihazlar çok daha farklı şeyler (frekans vb.) ölçebilmektedir ve sigorta korumaları daha gelişmiştir. Ayrıca cihaz modellerine göre maksimum ölçüm limitleri de değişecektir.

[sam id=”1″ codes=”true”]

Dijital Multimetre Nasıl Kullanılır?

Dijital Multimetreyle Dirençlerin Ölçülmesi

Dirençlerin değerleri ölçülürken ölçü aracınızın siyah probunu COM jakına, kırmızı probunu ise OHM ölçme jakına takmamız gerekiyor. Daha sonra dönebilen anahtarı kullanarak direnç ölçme kademesini seçmeliyiz. Daha sonra ölçüm kablolarını dirence deydirerek ölçüm yapabiliriz.

Dijital Multimetreyle Voltaj Ölçümü

Öncelikle siyah kabloyu COM jakına, kırmızı olanı da voltaj ölçme jakına takıyoruz. Dönebilen anahtarla ölçeceğimiz voltajın AC veya DC oluşuna bağlı olarak bir kademe seçiyoruz (tabiiki ölçeceğimiz voltaj aralığı da önemli)

Daha sonra ölçeceğimiz güç kaynağına kırmızı (+) siyah (-) olacak şekilde bağlıyoruz (AC ise fark etmez. DC ise sonuç eksi olarak çıkabilir.).

Voltmetrelerin iç direnci çok yüksektir. Bu yüzden devrelere parelel bağlanmaları gerekir.

Dijital Multimetreyle Akım Ölçümü

Amper ölçerken kırmızı probu amper portuna, siyah olanı da COM portuna bağlarız. Daha sonra ölçü aletini seri bağlama yoluyla devreye bağlayarak geçen akımı ölçebiliriz. Burada da kırmızı prop (+) siyah (-) dir.

[sam id=”1″ codes=”true”]

Sormak istediklerinizi yorumlar ile sormaktan çekinmeyin. Sonraki yazımda görüşmek üzere, iyi lehimlemeler 🙂

Kaynaklar:

https://en.wikipedia.org/wiki/Multimeter

http://en-us.fluke.com/training/training-library/measurements/electricity/what-is-a-digital-multimeter.html

Bilgisayarlar Nasıl Çalışır

Gömülü sistemleri ve bilgisayarları hayatımızın her alanında kullanıyoruz. Evlerimizde kullandığımız tablet, telefon, televizyon, bilgisayar vb. dışında sunucuları veya endüstriyel bilgisayarları da düşünürsek (ki sadece bunlarla sınırlı değil) gerçekten bilgisayarlar hayatımıza “kök salmış” durumda.

Dev IBM Şirketi’nin yöneticisi Thomas Watson, 1940’lı yılların başında, dünyanın “beş kadar bilgisayardan” fazlasına ihtiyaç duymayacağını öne sürdü. Altı yıl sonra bilgisayarın küresel nüfusu bir milyara kadar ulaştı!

Bilgisayar Nedir?

Bilgisayar, bilgiyi işleyen elektronik bir makinedir. Ham bilgiyi (veya veriyi) alır, onu işleyene kadar depolar ve sonra çıkışa verir. Bu işlemlerin her birinin bir adı vardır. Bilginin alınması giriş, bilgileri saklama bellek (veya depolama), bilginin işlenmesi işleme ve sonucu döndürme de çıktı olarak adlandırılır.

Bilgisayarın bir insan olduğunu düşünün. Matematikte gerçekten başarılı bir arkadaşınızın olduğunu varsayın. Arkadaşınız o kadar başarılı ki herkes ona matematik problemlerini gönderiyor. Her sabah, posta kutusunda çözülmeyi bekleyen bir yığın matematik problemi buluyor. Problemlere bakmak için onları masasına yığıyor. Her öğleden sonra yığının üstünden bir mektup alıyor, sorunu inceliyor, çözüm üretiyor ve mektubun arkasına cevabı yazıyor. Onu bir zarfa koyuyor ve göndermeye hazırlıyor. Sonra yığındaki diğer mektup için aynı işlemleri yapıyor.

Arkadaşınızın sanki bir bilgisayar gibi çalıştığını görebilirsiniz. Posta kutusu onun girişi; masadaki yığın hafıza; onun beyni sorunları çözen bir işlemci; göndermeye hazırladığı mektuplar da  çıkış olur.

  • Giriş: Klavye ve fareniz giriş birimlerine örnektir. Bunlar, bilgisayarınıza onun işleyebileceği türden bilgileri girmenizin yollarıdır.
  • Depolama (hafıza): Muhtemelen bilgisayarınız, tüm doküman ve belgelerinizi bir sabit disk üzerinde barındırıyor. Sabit disk, devasa büyüklükte manyetik bellektir. Fakat küçük, bilgisayar temelli sistemler (telefon, kamera vb.) farklı depolama birimleri kullanırlar. (Örn: flash hafıza kartları)
  • İşleme: Bilgisayarınızın işlemcisi [Bazen CPU (Central Processing Unit) Tr: MİB (Merkezi İşlem Birimi) olarak da bilinir.] derinlerde gömülmüş bir mikroçiptir. Çok ilginç bir biçimde çalışır ve çalışırken gerçekten çok ısınır. Bilgisayarınızın aşırı ısınmasını önlemek için üfleyen bir fanı vardır.
  • Çıktı: Bilgisayarınız bir monitöre, belki hoparlör ve yazıcıya sahip olabilir. Bunlar bilgisayarınızın çıktı birimlerini oluşturur.

Bilgisayar donanımı nedir?

Bilgisayar donanımı, bir bilgisayarın fiziksel parçalarıdır. (Örn: Monitör, klavye, bellek, grafik kartı, ses kartı, anakart, işlemci, RAM, vb.)

Donanım, yazılım tarafından herhangi bir komutu çalıştırmak için yönetilir. Donanım ve yazılımın bir birleşimi, kullanılabilir bir bilgi işlem sistemini oluşturur.

Bilgisayar yazılımı nedir?

Bilgisayarınızı bir hesap makinesinden farklı yapan şey, onun işlemleri otomatik olarak yapabilmesidir. Siz sadece komutlar verirsiniz (Bu komutlar, program olarak adlandırılır.), o tek başına uzun ve karmaşık bir operasyon gerçekleştirir. 1970 – 1980 yılları arasında bir ev bilgisayarı kullanmak istediğinizde, öncelikle yapacağınız işe uygun küçük bir program yazmanız gerekiyordu. Günümüzde çoğu program önceden yazılmış olarak geliyor. (Örn: Google Chrome)

Bilgisayar programı, bir bilgisayar tarafından yürütülen belirli bir görevi yerine getiren komutlar yığınıdır.

İşletim sistemi nedir?

Bir bilgisayarın temel yazılımıdır. Giriş/çıkış, depolama ve işleme gibi temel işlemleri yönetir. Kullandığımız yazılımlar, işletim sistemi üzerinde çalışır.

Bir işletim sistemi, [OS (Operating System)] bilgisayar donanım ve yazılım kaynaklarını yöneten ve bilgisayar programlarına ortak servisler sunan bir yazılımdır. İşlemci yazılımı hariç tüm bilgisayar programları, çalışabilmek için bir işletim sistemi gerektirirler.

İşletim sistemi, giriş/çıkış ve bellek ayırma gibi temel donanım fonksiyonları için donanım ve yazılım arasında aracı görevi görür.

Biraz daha teknik detaylarıyla anlatmamız gerekirse, bilgisayarınızı çalıştırdığınızda “BIOS” bir test gerçekleştirir. Bu teste “POST” testi yani Power On Self Test (Açılışta kendini sınama testi) denir. Böylece işlemci, ram bellek ve diğer temel donanımlar taranır ve sağlıklı çalışıp çalışmadıkları kontrol edilir. Eğer bir sorun bulunursa bilgisayarınız çalışmaz.

BIOS bilgisayarınızın anakartında bulunan ufak bir hafıza entegresindeki yazılımdır. Bu yazılım bilgisayarınızın parçaları arasındaki temel iletişim gibi şeyleri denetler. İşletim sisteminin hangi diskten başlatılması gerektiği gibi temel ayarları da BIOS menüsü üzerinden yaparız.

POST işlemi başarıyla tamamlanırsa BIOS, seçtiğiniz (veya varsayılan olarak seçili) diski kullanarak bir işletim sistemini yüklemeyi dener. Seçili diskte bir işletim sistemi yüklüyse bu diskin ilk sektöründe “bootloader” denen bir yazılım bulunur. Bu yazılımın görevi işletim sistemini yüklemektir. Bios bu yazılımı çalıştırır ve bu yazılım da işletim sisteminin yüklenmesini sağlar.

İşletim sistemi de tamamen yüklendiğinde artık bilgisayarı kullanmaya hazırsınız: çalıştırdığınız program işletim sistemine, işletim sistemi de donanımlara gerekli komutları gönderir. Böylece örneğin müzik dinliyorsanız müziğin bir kısmı sabit diskten okunur ve ram belleğe yazılır. Daha sonra işlemci sıkıştırılmış olan müzik dosyasını çözer ve oluşan veriyi ses kartına gönderir. Ses kartı da gelen dijital veriyi işleyerek analog sinyallere dönüştürür ve ses yükseltecine gönderir. Ses yükseltecine bağlı hoparlör veya kulaklık bu sinyali ses olarak yayar. Ve böylece bir müzik dosyasını çalmış olursunuz.

Benzer şekilde bu web sayfasını görüntülemek için tarayıcı programınızı açtığınızda tarayıcı programınız ağ kartınızla iletişim kurarak bu sayfanın verilerini TurkiyeElektronik.com’dan çeker. (Aslında turkiyeelektronik.com da bir bilgisayarın adresidir ve bu sitenin çalıştığı bilgisayar da size bu sayfayı hazırlarken birtakım işlemler yaparak oluşturduğu sonucu ağ kartı aracılığıyla sizin bilgisayarınıza yollar.)  Ağ kartından çekilen veriler RAM belleğe kaydedilir. Bunların bir kısmı daha sonra kullanılması gerekliyse kalıcı belleğe de kaydedilir. Daha sonra tarayıcı yazılımınız bu verileri işler; verilerin bir kısmı ekran kartınıza, bir kısmı ağ kartınıza, bir kısmı ses kartınıza gider ve siteyi görüntülemiş olursunuz.

Bunun gibi sayısız örnek verilebilir. Ancak ben iki konuda daha bilgi vermek istiyorum. Bilgisayarınızda temel olarak iki tür bellek bulunur. Bunlara geçici ve kalıcı hafıza diyebiliriz.

RAM Bellek

Ram bellek “geçici” hafızadır. Yani elektrik giderse, veya bilgisayarınızı kapatırsanız içindeki tüm bilgi kaybolur. Yazdığınız bir yazıyı kaydedemeden elektrik kesildiğinde yazınızı kaybetmenizin sebebi budur. Peki neden verileri kalıcı bir belleğe kaydederek böyle bir sorunu önleyemiyoruz?

RAM bellekler işlemcinin ve işletim sisteminin veriyi geçici olarak saklamak için kullandığı bir alandır. Burada kullanılan veriler genellikle hesaplama gibi işlemler için tutulur ve olabildiğince hızlı okuma / yazma işlemi yapılması gerekmektedir. RAM belleklerin hızını kalıcı belleklerle kıyaslarsak gerçekten RAM belleklerin çok hızlı olduklarını görürüz. Bir bilgisayarın saniyede milyonlarca işlem yapabilmesini sağlayan en önemli parçalardan biri de RAM belleklerdir. Dolyısıyla RAM bellekler yerine kalıcı bellekler kullanılamaz. Ancak şayet kullanılabilseydi, elektrik kesildiğinde bilgisayarınızı hiçbir çalışmanızı kaybetmeden kullanmaya devam edebilirdiniz.

Kalıcı Bellekler

Enerji kesildiğinde içeriği kaybolmayan bellek türlerine kalıcı bellek denir. CD, DVD,  HDD, SSD kalıcı bellek türlerine örnek verilebilir. Kullanıcı verileri, (fotoğraf, müzik vb.) programlar ve işletim sistemi kalıcı belleklerde saklanır. Kalıcı belleklerin hızı da bilgi işlem sisteminizin hızını doğrudan etkileyecektir. SSD diskler HDD disklere göre daha hızlıdır çünkü hareketli parçalar bulundurmazlar.

Umarım faydalı bir yazı olur, yorumlarınızı bekliyorum 🙂

KAYNAKÇA:

http://www.explainthatstuff.com/howcomputerswork.html

https://www.wikizero.com/en/Computer_hardware

https://www.wikizero.com/en/Computer_program

https://www.wikizero.com/en/Operating_system

Açık Kaynak Assembly İşletim Sistemi

Merhabalar… Ben Uygar. Bir önceki yazımda (https://blog.turkiyeelektronik.com/2017/06/22/kendi-isletim-sisteminizi-yazin/) sizlere assembly ile basit bir bootloaderın nasıl yazılacağından, bilgisayarların nasıl önyükleme yaptığından, BIOS’dan, POST işleminden ve önyüklemenin ne olduğundan bahsetmiştim. Şimdi ise varolan bir açık kaynak işletim sisteminin kodlarını değiştirerek kendi basit işletim sisteminizi nasıl yapabileceğinizi göstereceğim 🙂

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Başlamadan önce önceki yazımda belirtmediğim ancak bir işletim sisteminin olmazsa olmaz bazı bölümlerini açıklayayim. İşletim sistemleri, donanım ile iletişim kurarken kernel (Çekirdek) adlı bir yazılım kullanır. Kullanıcının gördüğü kısım User Interface – UI (Kullanıcı Arayüzü) olarak adlandırılır. Kullanıcı arayüzü üzerinde çalışan programlar, hiçbir işletim sisteminde doğrudan donanım ile haberleşemez. Programlar kernel’a istekte bulunur. Kernel bu isteği donanıma iletir ve gelen cevap yine doğrudan uygulamalara gidemez.

Kernel Nedir?

Kernel; işletim sisteminin çekirdeğini oluşturan ve sistemdeki her şeyi kontrol eden bir bilgisayar yazılımıdır. Önceki yazımda ikinci önyükleyici işletim sistemini yükler demiştim. Burada işletim sistemi olarak bahsettiğim yazılım aslında kernel’dı. Yani kernel, bootloader’dan sonra yüklenen ilk yazılımdır. Şimdilik bu kadar bilgi yeterli 🙂 Daha sonra sadece kernel’ı anlatan ayrı bir yazı yazacağım.

Çizim kaynağı: Wikipedia

Yukarıda işletim sistemlerinin genel yapısını görmektesiniz. Şimdi sizlere bu yazıda anlatacağım açık kaynak kodlu basit işletim sistemine gelelim. Kullanacağımız sistemin adı MikeOS.

MikeOS Nedir?

MikeOS, assembly dili ile yazılmış, x86 bilgisayarlar için bir işletim sistemidir. Ancak bu işletim sistemi bir bilgisayarı kullanmak için değil; basit 16-bit, gerçek mod işletim sistemlerinin nasıl çalıştığını öğretmek amacıyla, bir eğitim aracı olarak tasarlanmış.

Artık başlayabiliriz. http://mikeos.sourceforge.net/  adresindeki Downloads bölümünden onu indirelim. İndirdiğimiz arşivi herhangi bir yere çıkaralım. Ben 4.5 sürümünü indirdim. Çıkardığım arşivin klasör yapısı aşağıdaki gibi:

mikeos-4.5/
├── source/
│   ├── features/
│   │   └── *.asm
│   ├── bootload/
│   │   ├── bootload.bin
│   │   └── bootload.asm
│   ├── kernel.bin
│   └── kernel.asm
├── programs/
│   └── *.*
├── doc/
│   └── (Çeşitli dökümanlar)
├── disk_images/
│   ├── README.TXT
│   ├── mikeos.iso 
│   ├── mikeos.flp 
│   └── mikeos.dmg
├── test-linux.sh
├── README.TXT
├── buildwin.bat
└── build-*.sh

Bu dosyalardan source klasörü, işletim sistemimizin dosyalarının bulunduğu klasör. programs ise işletim sistemimizde çalışan programların klasörü. doc, bizler için hazırlanmış İngilizce belgelerin bulunduğu klasör.  disk_images ise işletim sistemimizi derledikten sonra oluşan önyüklenebilir disk kalıpları ve binary dosyaları.

source, yani kaynak klasörünü inceleyelim. İçinde features yani özellikler adında bir klasör var. Bu klasörün içerisinde ise çeşitli assembly dosyaları (.asm) var. Bu dosyalar, kernel tarafından yüklenen ve sistemin temel fonksiyonlarını oluşturan dosyalar. bootload klasöründe ise önyükleyicimiz bulunuyor. Bir önceki yazımda anlattığım önyükleyicinin çok daha karışık hali 🙂 *.asm dosyaları; derlenmemiş, insanlar tarafından direk olarak okunabilir dosyalardır. *.bin gibi dosyalar ise derlenmiş ve yanlızca makineler tarafından okunabilir dosyalardır. kernel.asm ise yazının başında belirttiğim sistem çekirdeği.

Şimdi bu işletim sistemini nasıl çalıştıracağımızı anlatacağım. Bu aşamada build dosyalarınan faydalanacağız. Build dosyaları, kullandığımız işletim sisteminin adına göre isimlendirilmiş. Kendimize uygun olan build dosyasını açıyoruz. Örneğin ben Linux kullandığım için build-linux.sh’ı açacağım.

Ancak açtığımda “You must be logged in as root to build (for loopback mounting)
Enter ‘su’ or ‘sudo bash’ to switch to root” şeklinde bir hata aldım. Dolayısıyla Linux kullanıcıları, sudo sh ./build-linux.sh komutunu kullanmalılar.

Yukarıdaki mesajları aldığımızda disk_images klasöründeki dosyalar güncellenmiş oluyor. Bunları Linux üzerinde test-linux.sh dosyasını kullanarak kolayca qemu üzerinden çalıştırabiliyoruz. Windows için ise mikeos.iso  dosyası virtual machine (sanal makine) üzerinden çalıştırılabilir.

Sistemi çalıştırdığımızda karşımıza çıkan ekran. Ok tuşları ve enter yardımıyla OK’a basarsak grafiksel kullanıcı arayüzü (GUI) açılır. Cancel’e basarsak, komut satırı şeklinde olan kullanıcı arayüzü açılır.

OK’a bastığımızda çıkan arayüz. Burda gördükleriniz, programs klasöründeki dosyalar. KERNEL.BIN hariç her şeyi çalıştırabilirsiniz.

Bu da sistemin konsol arayüzü.

Bu yazımın da sonuna geldim. Bulduğunuz her türlü dosyayı inceleyerek kendinizi geliştirebilir, değerleri değiştrerek eğlenebilirsiniz 🙂 Bir sonraki yazımda görüşmek üzere…

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Kendi İşletim Sisteminizi Yazın!

Mehabalar… Bu yazımda sizlere assembly dili ile nasıl basit bir bootloader yazabileceğinizi anlatacağım.

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Ancak bunlardan önce işletim sistemleri hakkında genel bilgiler vermekte fayda var.

BIOS Nedir?

BIOS, (Basic input-output System) (Türkçesi: Temel Giriş-Çıkış Sistemi) bilgisayarınızı satın aldığınızda onunla beraber gelen bir EPROM (Erasable Programmable Read-Only Memory) (Türkçesi: Silinebilir Programlanabilir Salt Okunur Hafıza) hafıza üzerinde bulunan bir yazılımdır. Bilgisayar açıldığı anda işlemciye tüm diğer donanımları tanıtır. Bu donanımların temel iletişimprotokollerini belirler. Ve işletim sisteminin herhangi bir sürücüden (örn: HDD/USB bellek vb.)  başlatılmasını sağlar ve işletim sistemi çalışırken donanım/yazılım arasındaki ilişkileri düzenler. Aşağıda anakart üzerinde bulunan BIOS EPROM yongasını görmektesiniz:

BIOS EPROM
Fotoğraf Kaynağı: Wikipedia

Önyükleme (Boot) Nedir?

Bilgisayarlarda önyükleme, bilgisayarın başlatma tuşuna basıldıktan sonra bir işletim sistemini başlatması için gereken komut veya komut dizesidir.

Bilgisayar Nasıl Önyükleme Yapar?

Bir bilgisayar kasasının başlatma tuşuna bastığınızda bilgisayarınız öncelikle işlemci pinlerini sıfırlar ve register’ları belirli bir değere ayarlar. CPU, BIOS ardesine atlar (0xFFFF0). BIOS, bir POST kontrolü (Power-on Self-Test) (Türkçe: Açılışta otomatik sınama) ve diğer gerekli kontrolleri yapar. Bu kontroller, tüm donanımı (RAM, CPU vb.) sağlıklı çalışıp çalışmadığını denetlemek için anakartı tarar. Bazen bilgisayarımızı açtığımızda gelen “Beep” sesleri, bu kontrolün olumsuz sonuçlanmasından kaynaklanır. Aşağıda bilgisayarımız POST işlemini gerçekleştirirken karşımıza çıkan bir ekranın ekran alıntısı bulunmakta.

Fotoğraf Kaynağı: Wikipedia

Bu işlemden sonra BIOS, MBR’ye (Master Boot Record) (Tr: Ana Önyükleme Kaydı) atlar. MBR, disklerin ilk 512 baytlık bölümüdür. Bu bölüm, diskinilk sektörüdür. BIOS, MBR üzerie geldiğinde buradan birinci bootloader yüklenir. Bu 512baytlık yazılım, ikinci bootloader’ı çalıştırır. İkinci bootloader ise işletim sistemini yükler. Aşağıda birinci bootloader’in yapısını görmektesiniz:

MBR
Çizim Kaynakçası: www.engineersgarage.com

Örnek Bir Bootloader

[BITS 16]       ;Derleyiciye kodun 16 bit olduğunu söyledik.
[ORG 0x7C00]    ;Derleyiciye kodun yüklendikten sonra hafızadaki
                ;yerini belirttik.
MOV SI, String  ;Dize işaretçisini SI'ya kaydet.
CALL PrintString;Dize basma fonksiyonunu çağır.
JMP $           ;Sonsuz döngüyü başlatıyoruz.
PrintCharacter: ;Ekrana karakter basarken kullanacağımız işlem.
                ;ASCII değerinin AL içerisinde olduğunu varsayınız.
MOV AH, 0x0E    ;BIOS'a ekrana bir karakter basmamız gerektiğini
                ; söyle.
MOV BH, 0x00    ;Sayfa numarası. 
MOV BL, 0x07    ;Yazı özniteliği 0x07, siyah arkaplan üzerinde 
                ; açık yazı tipi.
INT 0x10        ;Video kesmesini çağır.
RET             ;Çağrı işlemine geri dön.
PrintString:    ;Ekrana dize basarken kullanacağımız işlem.
                ;Dize başlama işaretçisi SI kaydında.

next_character: ;Dizeden bir sonraki karakteri almak için etiket.
MOV AL, [SI]    ;Dizeden bir bayt al ve AL içerisine kaydet.
INC SI          ;SI'yi artır.
OR AL, AL       ;AL daki değerin 0 olup olmadığını kontrol et. 
                ;(0 => dize sonu)
JZ exit_function;Dize bittiyse dön
CALL PrintCharacter ;Bitmediyse AL'daki karakteri bas.
JMP next_character  ;Dizeden sonraki karakteri getir.
exit_function:      ;Etiketi bitir
RET                 ;İşleme dön
PrintString:        ;Ekrana dize basarken kullanacağımız işlem.
                    ;Dize başlama işaretçisi SI kaydında.
next_character:     ;Dizeden bir sonraki karakteri almak için etiket.
MOV AL, [SI]        ;Dizeden bir bayt al ve AL içerisine kaydet.
INC SI              ;SI'yi artır.
OR AL, AL           ;AL daki değerin 0 olup olmadığını kontrol et.
                    ;(0 => dize sonu)
JZ exit_function    ;Dize bittiyse dön
CALL PrintCharacter ;Bitmediyse AL'daki karakteri bas.
JMP next_character  ;Dizeden sonraki karakteri getir.
exit_function:      ;Etiketi bitir
RET                 ;İşleme dön
;Veri
String db 'Www.TurkiyeElektronik.Com', 0 ;0 ile biten String dizesi.

TIMES 510 - ($ - $$) db 0 ;Sektörün geri kalanını 0 ile doldur.
DW 0xAA55                 ;Önyükleyici imzası.

Evet kodların yanındaki ; işaretlerinden sonraki açıklamalar yardımıyla kodu anlayabilirsiniz 🙂 Komutları tek tek açıklamak için assembly ile ilgili başka bir yazı yazmayı düşünüyorum. Kısa bir bilgi vermek gerekirse assembly, çok düşük seviyeli (makine diline yakın) ve karmaşık bir dildir 😀 Şimdi bu kodu yazdıktan sonra nasıl derleyeceğinizi göstereceğim.  Ben Linux işletim sistemini kullanıyorum. Ancak bildiğim kadarıyla kullandığım programların [nasm (assembly derleyicisi), qemu (emülatör)] Windows için olanları da var 🙂 Öncelikle üsetteki assembly kodunu derlememiz, yani makine diline çevirmemiz gerekir. Bunun için Windows komut isteminden veya Linux uçbiriminden cd komutu ile yukarıdaki assembly kodunu kaydettiğimiz boot.asm dosyasının bulunduğu klasöre gelelim. Daha sonra nasm boot.asm -f bin -o boot.bin komutu ile makine dilinde bir boot.bin dosyası oluşturalım.

Geldik en güzel aşamaya: denemek 🙂 Denemek için ise qemu-system-i386 ./boot.binkomutunu kullanalım.

Ve sonuç:

OS Test

Ancak belirtmekte fayda var ki buşekilde sıfırdan bir işletim sistemi yazmamız neredeyse olanaksız. Bu nedenle Linux Kernel‘i ve GRUB Bootloader‘ını kullanmamızda fayda var. Kerneli Linux ve GRUB terimlerini daha sonra tek tek açıklayacağım. Umarım faydalı bir yazı olmuştur. Yorumlarınızı bekliyorm 🙂 Sorularınızı yorumlar aracılığı ile her zaman sorabilirsiniz. Sonraki yazılarımda görüşmek üzere, hoşça kalın…

Kaynakça:

http://whatis.techtarget.com/definition/BIOS-basic-input-output-system

https://www.engineersgarage.com/tutorials/how-computer-pc-boots-up

http://viralpatel.net/taj/tutorial/hello_world_bootloader.php

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

TDA2822M İle Basit Bir Anfi

Merhabalar… Bu yazımda sizlere basit bir anfi entegresi olan TDA2822M‘i nasıl kullanabileceğinizi anlatacağım.

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Bildiğimiz gibi anfiler, sesi duyulabilecek seviyelere yükseltmeye yarar. Ses özelliğine sahip her cihazda anfi bulunur. Araba radyoları, bilgisayarlar, televizyonlar, radyolar… yani günlük hayatımızda kullandığımızın cihazların çoğunda anfi vardır.

TDA2822M Entegresi Nerelerde kullanılır?

Bu kulaklık anfisi, daha çok ucuz radyo ve bilgisayar hoparlörleri vb. yerlerde sıklıkla karşımıza çıkar. Yapacağımız anfi, 15 liradan daha pahalı olmayacak 🙂

Teknik Bilgi

Boyutları ile verdiği güç oranı gayet güzel ve ucuz olduğu için çok popüler bir entegre olan TDA2822M entegresi, köprü veya stereo olarak çıkış verebiliyor. Tek kanal (köprü) çıkışı daha yüksek ses almamıza olanak sağlıyor. Bu entegrenin çalışma voltajı aralığı 1.8v ile 15v arasında değişebiliyor. Datasheet’i açmak için buraya tıklayınız.

Ben aşağıdaki videoda datasheet üzerindeki test devrelerinden köprü olanı kullandım. Şimdi onun şemasını sizlerle paylaşacağım. Bu şemayı kullanarak kendi TDA2822M anfinizi oluşturabilirsiniz. Diğer örnekler için yukarıda linkini paylaştığım datasheet’i inceleyebilirsiniz. 🙂

TDA2822M Köprü Örnek Şema
TDA2822M Köprü Örnek Şema

Örnek çalışma videosu:

Bootstrap Nedir

Merhaba arkadaşlar. Ben Uygar. Bu yazımda Bootstrap’dan bahsedeceğim.

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Bootstrap Nedir

Eğer web geliştirme ile biraz ilgilendiyseniz Bootstrap terimini duymuşsunuzdur. Bootstrap’ın resmi sitesinde yazanlara göre Bootstrap, mobil öncelikli, duyarlı (ekran boyutu olarak),  en popüler HTML, CSS ve JS iskeletidir (framework). Harika geliyor! Şimdi onu nasıl kullanacağız?

Bootstrap’ın “Getting Started” sayfası, size onu nasıl kullanabileceğiniz hakkında detaylı açıklamayı yapıyor. Öncelikle Bootstrap’ın Getting Started sayfasına buradan bakalım.

Öncelikle Bootstrap’ı indirmeliyiz. Bir web sitesi tasarlarken kullanabileceğimiz iki yöntem var. Bootstrap dosyalarını kendi sunucumuzda barındırmak veya Bootstrap CDN’ini kullanmak. Ben dosyaları indirmenizi tavsiye ederim. Çünkü basit bir örnek vermem gerekirse siteyi çevrimdışı olarak test etmek istediğinizde dosyaları yerel bilgisayarınızdan okuyabilirsiniz. Ancak çevrimdışı bir ortamda CDN yöntemi çalışmayacaktır.

Son sürüm Bootstrap’ı indirdikten sonra onu bir klasöre (örn: Masaüstüne bir klasör açın ve oraya çıkarın) çıkarın. Şimdi çıkardığınız dosyaların görevlerini anlatacağım.

bootstrap/
├── css/
│   ├── bootstrap.css
│   ├── bootstrap.css.map
│   ├── bootstrap.min.css
│   ├── bootstrap.min.css.map
│   ├── bootstrap-theme.css
│   ├── bootstrap-theme.css.map
│   ├── bootstrap-theme.min.css
│   └── bootstrap-theme.min.css.map
├── js/
│   ├── bootstrap.js
│   └── bootstrap.min.js
└── fonts/
    ├── glyphicons-halflings-regular.eot
    ├── glyphicons-halflings-regular.svg
    ├── glyphicons-halflings-regular.ttf
    ├── glyphicons-halflings-regular.woff
    └── glyphicons-halflings-regular.woff2

Klasörlerimiz bu şekilde. Bunlardan js ve css klasörlerini kullanacağız. css klasörünün içerisinde ise bootstrap.css ve bootstrap.min.css gibi dosyalar var. Bu dosyaların hepsini zamanla açıklayacağım ancak şimdilik bu ikisi yeterli olacaktır 🙂

bootstrap.css, Bootstrap’ın ana CSS frameworküdür. bootstrap.min.css ise onun  en minimum halidir diyebiliriz. Minimum halini kullanmamız sayfamızın yüklenme hızı açısından avantajlı olacaktır.

Şimdi ilk örneğimize geçelim. Bu örnekte html belgemize Bootstrap’ı dahil edip geleneğe uyarak ekrana “Hello, world!” yazacağız 🙂

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <title>Bootstrap Hello World!</title>

    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <h1>Hello, world!</h1>

    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="js/bootstrap.min.js"></script>
  </body>
</html>

Bu örneği çalıştırdığımızda aşağıdaki gibi bir sayfa bizi bekliyor olacak:

Bootstrap Örneği.
Bootstrap Örneği.

Şimdi üstteki kodu açıklayalım. Bu yazıda sadece Bootstrap ile alakalı olan satırları açıklayacağım. HTML ile olan yazılarımızı okuyabilirsiniz 🙂

<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

Bu satır, sayfanın ekran boyutlarına göre otomatik olarak değişmesini sağlıyor.

<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet">

Bu satır ise Bootstrap’ı indirdiğimiz dosyalardan dahil ediyor.

<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->

Bu satırlar, tarayıcı uyumluluğu için var.

<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

Jquery’yi yüklüyor. Jquery, Bootstrap’ın JS frameworkü için gereklidir.

<script src="js/bootstrap.min.js"></script>

Bu satırda ise Bootstrap JS frameworkünü yükledik.

Bu yazımız da buraya kadar arkadaşlar. Sorularınızı yorum aracılığı ile sormaktan lütfen çekinmeyin 🙂 Bir sonraki yazımda görüşmek üzere, hoşça kalın…

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

 

9 Volt DC Regüle Edilmiş Güç Kaynağı

Merhabalar…

Bu yazımda sizlere küçük projeleriniz için 9 Volt DC bir güç kaynağının nasıl yapılacağını anlatacağım.

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Küçük düşük akım 9VDC regüle edilmiş güç kaynağı, bipolar transistör ve zener diyot ile oluşturulmuştur. Bu devre, seri voltaj regülatörü olarak da bilinir. Giriş voltajının regüle edilmesine gerek yoktur. Bu devre çıkış voltajını regüle eder ve sabit 9V DC, 250mA sağlar. Zener diyot, transistörün base ucuna referans voltajı sağlar. Küçük projeleriniz için çok uygun bir güç kaynağıdır. Güç çıkışını zener diyodu değiştirerek değiştirebilirsiniz. Çıkış akımınız yüksekse transistöre bir ısı emici (heat sink) gerekebilir.

Çıkış Voltajı Formülü Vout=Vz-VBe

Vz=Zener diyot Voltajı, VBe=0.7V

Özellikler

  • Giriş: 12V AC veya DC, 500mA
  • Çıkış: 9.3V DC, 250mA, Regüle edilmiş çıkış
  • Girişte doğrultucu bulunur.
  • Çıkış için LED göstergesi

Şema

9vDC regüle edilmiş güç kaynağı şema
Kaynak: www.electronics-lab.com

Malzeme Listesi

9v DC güç kaynağı malzeme listesi
Kaynak: www.electronics-lab.com

Yazı Kaynağı: www.electronics-lab.com

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Raspberry Pi Masaüstü Kasası – Tüm Çevre Birimleri Dahil

Raspberry Pi; iyi tasarlanmış, güçlü ve ucuz bir karttır. Ancak eksiksiz bir bilgisayar değildir. Bazı dağıtıcı firmalar sadece bir plastik kutu ve güç kaynağından daha fazlasına ihtiyacınız olduğunu biliyorlar.  Element14’teki ‘Pi Masaüstü’ kiti, ihtiyacınız olan her şeyi ve daha fazlasını içerir; RPi’nizi tam teşekküllü bir bilgisayara dönüştürür.

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

Halihazırda bir Raspberry Pi kartınız varsa, Pi Masaüstü Seti onu gerçek bir bilgisayara dönüştürmek için ihtiyacınız olan her şeyi sağlar. Wi-Fi, Bluetooth, gerçek zamanlı bir saat (real-time clock), mSATA-SSD sabit sürücü için bir arayüz, ısı emici (heat sink), isteğe bağlı bir kamera, düzgün bir güç anahtarı ve şık siyah kutu. Eğer SSD ile bir Pi kurarsanız; zarif, hızlı, sessiz ve ucuz bir bilgisayarınız olur. Montajı sadece birkaç dakika sürer.

Gerekli tüm parçaları kablolar ile birbirine bağladıktan sonra tek eksiğiniz HDMI bir monitör, klavye ve fare. Bu kitin fiyatı: €46.71

Kaynakça: https://www.elektormagazine.com/news/pi-desktop-includes-peripherals-and-a-neat-case

[sam id=”1″ codes=”true”]

[sam id=”1″ codes=”true”]

 

 

 

%d blogcu bunu beğendi: