Artık projeler elimizin altında. 

Evet arkadaşlar şantiyede hemen hemen her zaman projeye bakmaya ihtiyacımız olur. İşte bu zamanlarda karşınıza telefonlarda kullanabileceğiniz bir uygulama sunacağız.
Adı: DWG Fast View.

Bu uygulama ne işe yarar? Nedir? Nasıl Kullanılır?


Adım adım inceleyelim.

Önce uygulamayı indirin. Daha sonra projeleri yükleyeceğiz.



Google Play Store> DWG Fast View indirin.


İndirdikten sonra yükleyin. Yükleme bittiyse dosyaları atın.

Dwg uzantılı dosyaları telefona atmak için Bilgisayardan usb kablosuyla bağlanacağız. Ancak atmadan önce daha kolay açabilmek için Projelerin boyutunu küçültmeliyiz!

Projelerin boyutunu nasıl küçültebilir ve kolay açabilirim? 

Autocad'ten açtığımız projeleri sırasıyla overkill ve purge komutlarını uygulayacağız.

Overkill komutu nasıl kullanılır?

"Overkill" komutunu yazıp enter'a basıyoruz. Alanı seçmemizi ister. Seçiyoruz ve enter'a basıp bekliyoruz. Biraz sürebilir. Dosyanın büyüklüğüne göre değişir süre. Bittiğinde "purge"ye geçebiliriz.

Purge komutu nasıl kullanılır?


"Purge" yazıp enterla bekliyoruz. Bu işlem biraz sürecek. Tüm projeyi taradıktan sonra purge all yapıyoruz. Bittikten sonra işlem "zoom" ve "e" enter yapıyoruz. Ortalandı. Şimdi kaydedebiliriz. Tavsiyem 2004 formatında kaydetmeniz. Çünkü her bilgisayarda -yani alt versiyonu yüklü- açabilirsiniz. Sol üst köşeden file>save as> yapmanız yeterlidir. Kaydettiyseniz şimdi sıra projeleri telefona atmakta.

Projeleri telefona nasıl atacağım?

Usb kablosuyla bağladınız telefonu. Tuş kilidini açtınız. Bilgisayarda göründü. Dosyaları içine "dwg" formatlı olmasına dikkat ediniz. Bir yere kopyalıyoruz. Örneğin Documents'e atabilirsiniz.

Peki dwg dosyasını telefondan nasıl açacağım?

Bunun için alternatif programlar da olmasına rağmen denediğim ve hızından memnun kaldığım "DWG Fast View" uygulamasını önereceğim. Diğer alternatifler ise şimdilik DWGSee, ve Autocad360 uygulamaları mevcut. İsterseniz onları da kullanabilirsiniz.

Programı yükledim. Şimdi ne yapacağım?

Local disk'e giriyorsunuz ve "View mode" seçeneği ile açıyorsunuz.


Alternatif Programlar: DWGSee, Autocad360.

                           

Temel Topraklama Planı

1)Bina çevresinde 120mm2 CU iletken kullanılır. (Mavi renkli gösterilmiştir)[Resim-1]
2)Binayı içten içe döşeyen  30x3.5mm Galvaniz Topraklama şeridi kullanılır.(Kırmızı renkli gösterilmiştir)[Resim-1]. 
3)O20mm 2x1,75m Toprak elektrodu bakır çubuğunun bağlantısı menholde yapılır.[Resim-3]


Resim-1(Binayı dıştan ve içten çevreleyen bakır iletken ve galvaniz çelik lama görülür.)


DETAYLAR

1)Binayı Dıştan Çevreleyen 120mm Bakır

1) Bakırın ve bakır çubuğun bağlantısına ve yerine bakacağız.(Şekil-3)
2) Termokaynak eklerinin nasıl kullanılacağı görülür. (Şekil-4)

Resim-2 (120mm Bakır iletken)

Resim-3(Çubuğun ve 120 Cu iletkenin menholde bağlanması)

Resim-4(Termokaynak eki)

2) 30x3.5mm Galvaniz Şerit  Detayları: Galvaniz şeritinde detaylarına bakacağız. 

1)Hasırda bağlandığı görülür.
2)Projeye uygulanacağı yer görülür.
3)Bağlantı klemensi görülür.

Resim-5 (30x3.5mm Galvaniz şerit Binayı İçten içe hasırın içinden çevreler)

Resim-6 (Galvaniz şeritin uygulanacağı yer. (Kırmızı renkliler))

Resim-7 (Galvaniz şeritin bağlantı klemensi)

3) Potansiyel Dengeleme Barası ve Topraklama Direncinin Ölçülmesi

Resim-8 (Eş Potansiyel Dengeleme Barası)

Resim-9 (Dilatasyon Bağlantısı) 
Not: Dilatasyon depremde binaya esneme payı verir.

Topraklama Direncinin Ölçülmesi

1)Rç: Topraklama Çubuk Direnci [Şekil-1'de görülür.]
2)Ri: Çevre Topraklaması Direnci [Şekil-1]
3)Rt: Temel Topraklama İletken Direnci [Şekil-2]
4)Re:Eşdeğer Topraklama Direnci [Şekil-2]

Şekil-1 (Rç, Ri)

Şekil-2 (Rt, Re)

Bir binanın temel topraklamasını yaparak topraklama direncini ölçmüş olduk. Proje Notlarından önemli olanların altını çiziyorum.
NOT:
· Temel topraklama tesisatı imalatı yapıldıktan sonra topraklama direnci ölçümü yapılacaktır. Eğer ölçümde topraklama direnci istenilen değerin üzerinde çıkarsa; topraklama direncini istenilen değere düşürmek için topraklama tesisatına uygun olan yere ilave topraklamalar (bakır çubuk elektrot) yapılması gerekir.
· İmalatta bakır çubuk elektrotların etrafına, bakır çubuk çubuk elektrotları birbirine bağlayan iletkenin etrafına yeterli miktarda bitkisel toprak konulması toprak direncini düşürmek için uygun olacaktır.
· Bakır çubuk elektrotlar arası mesafe bakır çubuk elektrot boyunun iki katından (h = 3,5x2 = 7m)(7m' den) az olmayacaktır.
· Temel topraklayıcı kısımlarının bağlantısı: temel topraklayıcının kısımlarının birbirleriyle bağlamak için (DIN 48845' e uygun) çapraz bağlayıcılar ve uygun kamalı (DIN 48834' e göre) bağlantılar kullanılmalıdır veya bağlantılar DIN 1910 serisi standartlara uygun şekilde kaynakla yapulmalıdır.
· Toprak altında yapılan tüm iletken-çubuk bağlantı ve ekleri termo kaynakla (Cdweld kaynak - Exotermik kaynak) yapılacaktır.
· Temel topraklayıcı her tarafı betonla kaplanacak şekilde düzenlenmelidir. Galvanizli çelik lama topraklayıcı dik olarak en alt sıradaki çelik hasır üzerine yerleştirilmeli ve çelik hasıra bağlanmalıdır. Bağlantı klemensleri arası mesafe 2.00m' yi geçmemelidir.
· 21 Ağustos 2001 tarih ve 24500 sayılı resmi gazetede yayınlanan Enerji ve Tabii Kaynaklar Bakanlığının Elektrik Tesislerinde Topraklamalar Yönetmeliği uygulamada esas alınacaktır.

Eşpotansiyel toprak barasına:

 · Ana pano topraklama iletkeni
 · Ana su borusu topraklama iletkeni (Bina içerisinde borunun binaya girdiği noktaya yakın yerde topraklama iletkeni 
 irtibatlandırılacaktır.)
 · Kalorifer tesisatI topraklama iletkeni
 · TV anteni topraklama iletkeni
 · Kompanzasyon panosu topraklama iletkeni
 · Yangın hidroforu ve tablosu topraklama iletkeni
 · İçme suyu hidroforu ve tablosu topraklama iletkeni
 · Aşırı gerilim koruyucu topraklama iletkeni
 · UPS cihazları topraklama iletkeni (Cihazlar ayrı ayrı topraklanacaktır.)
 · Asansör tabloları topraklama iletkeni (Tablolar ayrı ayrı topraklanacaktır.)
 · Asma tavanlardaki kablo kanalları ile elektrik şaftındaki kablo merdivenleri topraklama iletkeni
 · Telefon santralleri topraklama iletkeni
 · Demir kapıların topraklama iletkeni
 · Ana doğalgaz borusu topraklama iletkeni (Bina içerisinde borunun binaya girdiği noktaya yakın yerde topraklama iletkeni irtibatlandırılacaktır.)

topraklama iletkenleri bağlanacaktır.

  Ana panolar, kompanzasyon panosu topraklama iletkenleri 50mm², aşırı gerilim koruyucu ve UPS cihazları topraklama iletkenleri 50mm², diğer elemanların topraklama iletkenleri en az 16mm² izoleli iletkenlerle eşpotansiyel toprak barasına bağlanacaktır.

Teşekkürler.
Fatih Leventoğlu.






SİLİKON VADİSİ

10 Nisan 2017 Pazartesi
Posted by Unknown
Merhaba,

Selçuk Üniversitesi Elektrik  Elektronik  Mühendisliği’ nden mezun olmadan altı ay

öncesinde girişim fikrim ile Selçuk Üniversitesi Teknoloji Transfer Ofisi (SelçukTTO) tarafından eğitim almaya başladım. Bu eğitimleri alabilmek için son 30’ a kalarak, beş ay boyunca girişimcilik üzerine eğitim programına dahil olmaya hak kazandım. Bu eğitimler neticesinde, iş fikrimi, pazar analizi, müşteri analizi, kişisel gelişim, şirket içi yönetim, iş bölümü, satış planlamaları gibi bir çok konuda geliştirdim. Eğitimlerin sonucunda son beş Lets Up projesi seçildik ve bu projelerden sadece ikisi Silikon Vadisi’ ne gönderilecekti. Son bir performans ile birinci seçilerek Silikon Vadisine gitmeye hak kazandım. Silikon Vadisi’ nde yaşadıklarımı, gözlemlerimi ve düşüncelerimi paylaştığım bu yazıyı sizler için hazırladım.

Gitme günü geldiğinde yurtdışına çıkış için tüm belgelerim hazırdı. Silikon Vadisi, San
Francisco’ da geçireceğimiz bir haftalık süreçte, otel, şehir içi ulaşım, gidiş dönüş uçak biletlerimiz ile birlikte üç öğün yemek ve genel ihtiyaçlarımızı karşılayabileceğimiz bir haftalık harçlık, sponsorlar tarafından karşılandı. Önceden planlama belli olduğu için her firmaya ve San Francisco’ ya hazırlıklı gittim. Uçaktan indiğimizde bizi karşıladılar ve otelimize yerleştik. Bu kısımda kısaca gözüme çarpan, beklediğimden daha fazla asya kökenli insan ile karşılaşmak oldu. Aksanlarını anlamakta bir müddet gecikmeler olsa da 1-2 gün içerisinde alıştım. 
Konakladığımız otele Twitter’ ın uzaklığı yüz metre kadardı. Her gün yemek yemeye giderken veya markete giderken Twitter’ ın önünden geçiyorduk. Silikon Vadisinin en önemli ve güzel özelliklerinden biriside bu networking olayı. Yaşadığınız teknik problemleri mail atmak yerine direk ofislerine giderek sorabiliyorsunuz. Veya ortak bir çalışma kurmak isteyen bir firmanız varsa, yetkililerle kısa sürede ağ oluşturabiliyorsunuz. Yeni geliştirilen frameworkleri çok yakından takip edebilip, bir Twitter t-shirt’ ünü nereden alabilirim diye sorduğunuz kişi Twitter’ da çalışan bir yazılım geliştirici olabiliyor.

Otele çantalarımızı yerleştirdikten sonra şehir turuna çıktık. San Francisco yapı olarak dik bir şehir diyebilirim. Eğik bayırlardan uzun bir iniş ve çıkış yapabiliyorsunuz. Birçok ırk ve milletten insanı bulunduruyor. San Francisco’da kapitalizm çok keskin diyebilirim. Bu da dayanamayan insanların ekonomik çöküş yaşamasına sebep oluyor. Yollarda çok sayıda evsiz görmek mümkün. Siyahi çeteler de çok rahat bir şekilde gözünüze çarpıyor. Yüksek egzoz sesi çıkararak araba süren çete üyeleri de görmek mümkün. Bu arabaların arkasında sirenleri yakıp giden 2-3 polis arabası da…


10 saatlik saat farkının benim için ilk birkaç günlüğüne sorun olabileceğini düşünüyordum. Fakat, 12 saatlik uçak yolculuğunun vermiş olduğu yorgunlukla, otele yerleştikten sonra istirahat için geçen ilk gece deliksiz bir uyku ile fazla zaman geçmeden alıştım. Ancak döndüğümde gerçekten çok sert bir şekilde etkilendim. 3 gün olmasına rağmen hala kendime gelemedim.

Bölgede böyle bir ekosistemin oluşmasında en büyük etki tartışmasız bir şekilde üniversiteler… Girişimcilik doğrudan üniversitelerde aşılanıyor ve ekosisteme hazır şekilde mezun oluyorlar. Türkiye’de eksik olan belki de bu olabilir. İş fikri ve teknik ekip iyi olabilir ancak doğru iş yönetimi, yeni pazarlama stratejileri konusunda eksikler olduğundan dolayı milyar dolarlık seviyeye henüz gelememiş olabiliriz. 

Türkiye’den farklı olarak, Türkiye’de bizler ürün hazır olduktan sonra nerdeyse piyasaya sürülecek halde iken kullanıcılardan geri dönüş almaya çalışıyoruz. Silikon Vadisi’nde ise basit bir Landing Page website ile örnek olarak kullanıcılardan feedback alınıp ona göre ürün geliştiriliyor. Ek olarak bu websiteden mail adresleri gibi iletişim adresleri toplanarak ürün yayınlandıktan sonra da kullanıcıya ulaşım sağlanıyor. 

Başka bir problem ise ürün ile alakalı feedbackleri yanlış kişilerden alıyoruz. Bunu Silicon Valley dizisindeki bir olaydan hafif spoiler vererek açıklayabilirim. Sıkıştırma hizmeti sunan genel kullanıcı kitlesi için bir platform geliştiriliyor. MVP halinde yakın çevrelerinden (mühendis) feedback alıyorlar. Herkes mükemmel, kusursuz şeklinde geri dönüş yapıyor. Bunun üzerine genel kullanıma sunuyorlar. Yüksek kullanıcı geliyor, her şey dışardan mükemmel görünüyor ancak şöyle bir problem var. Kullanıcı bağlılığı yok. Çünkü kullanıcılar sistemi fazla karmaşık buluyor ve ne yapacaklarını anlamıyorlar. Kısaca soruları doğru kişilere sorma konusunda eksiğimiz olduğunu söyleyebilirim. 

İşbirliği olarak, aralarında çok iyi bir koordinasyon var. Pazardan yani müşteri edinme tarafından rekabet ediyorlar. Start-up’ lar birbirlerinin teknolojilerini kullanmaya çok açıklar. Her şeyi kendileri geliştirmek yerine yaptıkları işin core kısmını kendileri uğraşıp orada mükemmelleşme yakalamaya çalışırken kalan kısmında kullanabilecekleri altyapılarla işbirliği yapıyorlar.

Müşteri odaklılık konusunda en başından bütün süreçleri müşteriye göre tasarlıyorlar. Özellikle müşteriye temas eden operasyonları çok titiz yürütüp aynı zamanda hiç ama hiç bırakmadan sürekli her fırsatta feedback alıyorlar. Yaptıkları işin ne olduğuna değil müşterinin neye ihtiyacı olduğuna dikkat ediyorlar. Bu temel bir felsefe haline gelmiş . Farklı bir teknoloji bile geliştirmiş olsalar ürünleştirme sürecinde bunu kullanıcıların hayatlarının içinde yer bulacak şekilde ürünleştiriyorlar. Gerekirse farklı alanlarda hizmet sunup ürünün kullanım ömrü boyunca bir yandan para kazanırken diğer yandan da asıl ana teknolojilerini kullanabilecekleri ve yüksek kar edebilecekleri sürece müşteriyi hazırlıyorlar. Müşteri alışkanlıklarını, beklentilerini yönlendirerek ve eğiterek keşfetme temelli yol haritaları kullanıyorlar.
  
İletişimde ise çok açık ve netler. Herkes sonuç odaklı ve kimse kelimelerin söyleniş şekli, formatı ile uğraşmıyor. Yani cümlelerin altında anlam aramak yerine direk aksiyon alıyorlar ya da düşüncelerini net bir şekilde ifade ediyorlar. Network konusunda çok iyiler, her fırsatta ilişki kurup devam ettiriyorlar. Örnek : Uber de taksi paylaştığım adam hala havadan sudan konularda benimle mailleşiyor, İstanbul hakkında sorular sorup oradaki gelişmelerden bahsediyor. Ve ben artık ne iş yaptığını ve benim ne yaptığımı biliyor. Geçen gün iş pasladım.
  
Kültür olarak orada birikmiş bir kritik kütle var. Belki bunun etkisi olabilir ama kendi katıldığım meet-up’ lar da gözlemlediğim kadarıyla yaptıkları şeyi özümseyerek yapıyorlar. Herkes bizim gibi sunum yapıyor ve kabiliyet olarak bizim başladığımız yerden başlıyorlar. Yüksek adaptasyon ile başarılı oluyorlar. Para kazanma odağı var. Bu bilinen bir şey ama oradaki Türk homeless bile sorduğumuz soruya cevap vermek için 20$ istedi. Sürekli yaptıkları işin çıktısını paraya dönüştürme farkındalığı en başından itibaren pazarda yer edinmenin, pazara adapte olmanın farkındalığıyla iş yaptırıyor.
  
No Drama! Bu benim için en önemli gözlem. Türkiye’ de hikayeleştirme gibi metaforlara inananlardan daha fazla odaklanılıyor. Burada sosyal bir problemi de çözseniz, başka bir iş de yapsanız drama yapmanız gerekiyor çoğu zaman. Müşterinizin ya da dinleyici kitlenizin duygusal taraflarına vurmaya çalışılıyor. Orada herkes başarı/sonuç odaklı. Performans kriterlerinin başarı oranına göre değerlendiriliyorsunuz neden bu işi yaptığınızla değil. Mesela evsiz çocuklarla ilgili bir iş yapıyorsanız onların hangi problemlerinin olduğuyla değil o problemlerin ne kadarını çözdüğünüzle değerlendiriliyorsunuz. Ya da ben evsizdim, ya da onlara çok üzülüyorum o yüzden bu işi yapıyorum değil olay, bununla ilgilenmiyorlar.

Kim olduğunuz değil işte ne kadar iyi olduğunuz önemli.
  
Zaman yönetimi en önemlisiydi. Zamanın ne olduğunu çok iyi biliyorlar. Bir şeye vakit ayırdıklarında onu yapıyorlar. Hafta içi diğer Amerika şehirlerine göre ve ya Türkiye de ki bazı şehirlere göre gece hayatı San Francisco da yok denecek kadar az. Sadece hafta sonları var. Bizim gibi sokakta hayat var kültürü yok. Bunu cidden vakit kaybı bilinçsizlik olarak görüyorlar. Birçok şeyin saati belli. Kahvesi, yemeği… Bundan taviz vermiyorlar, çok iş yapmıyorlar, yaptıkları işi verimli yapıyorlar. Bir şey için ayırdıkları zaman dolduğunda gerekirse konuşmanızın bitmesini beklemeden ayrılıyorlar. 

Programın ilk günü, diğer girişimcilere projelerimizi tanıtabilmek ve hedef müşteri kitlelerimizi netleştirmemize yardımcı olabilmek için Lean Startup Uzmanı Tristan Kromer tarafından Business Model Design eğitimi alındı. Bu eğitim ile müşteri, değer önerisi, altyapı ve finansal değerlerin arasındaki ilişkileri girişimciler olarak kendi fikirlerimize uygulayarak,

öğleden sonra T-Jump yöneticisi Barkan Uluışık tarafından Silikon Vadisi ekosistemi ve kültürü üzerine bilgilendirildik. Özellikle A.B.D. ve Türkiye arasındaki sistemsel girişimcilik fırsatları farklarına odaklanan bu toplantı, benim ve diğer girişimci arkadaşların sorularının cevaplanması ile sona ermiştir. 

Programın ikinci gününde girişimci ekibi olarak, inovasyon koçu Nick Noreno eşliğinde uygulamalı müşteri geliştirme ve mülakat teknikleri eğitimi aldık. Müşterilerimizin sahip olduğu ihtiyaçları, onların motivasyon ve değerlerine yönelik iç görüler oluşturmamıza yarayacak sorular listesi çıkarmışlar ve bu soruları diğer katılımcılar üzerinde deneme şansı yakaladık. Öğleden sonraki oturum Udemy ve Carbon Health firmalarının kurucu CEO’su Eren Bali’nin paneliyle devam etmiştir. İş modelinde müşterilerin ihtiyaçları doğrultusunda pivot etmenin, Silikon Vadisine geldikten sonra Udemy’nin tekrar doğmasını sağladığını belirten Bali, ürünün çalıştığını ve piyasa tarafından tutulduğunu hisseden her girişimcinin vadiye gelerek buradaki ‘early adopter’ (erken benimseyici) müşteri marketinden yararlanması gerektiğini dile getirdi.

Programın üçüncü günü Palo Alto bölgesinde yer alan girişim ve başarılı şirketler ziyaret edildi. Sundukları sağlıklı ve diyet yemek seçenekleriyle, öğle yemeğinizi kapınıza kadar getiren ve Stanford mezunları tarafından kurulan Farm Hill’in mutfak olarak da adlandırılan ana ofisi ziyaret edildi. Günde 2500’e yakın öğün öğle yemeği servis eden Farm Hill’in operasyonunu gözlemleyerek, yazılım ile desteklenen e-ticaret ve lojistik altyapılarıyla bu girişimin yemek yeme kültürünü nasıl değiştirdiklerini öğrendik. Bir sonraki durak eski Apple çalışanı olan Tony Fadell tarafından kurulan ve daha sonra Google tarafından satın alınan Nest Labs’di. Geçtiğimiz iki yıl içerisinde çalışan sayısını ikiye katlayarak, termostattan akıllı kamera sistemlerine kadar birçok ürün sunan Nest, çok gündelik cihazların bile iyi bir müşteri deneyimi oluşturmak üzerine kurgulanarak markette heyecan oluşturabileceğinin en iyi örneği idi. İş geliştirme departmanın başında bulunan Scott McGaraghan, Google tarafından satın alındıktan sonra Google kültürünün şirkete işlediğini, ancak bunun girişimcilik kültürünü beslediğini belirtti. Bir sonraki durak Google’ın biyoteknoloji ve biyomühendislik üzerine çalışmalarının yürütüldüğü Google X Verily kampüsüydü. Platform yöneticisi Collin Walter, girişimciliğini Google’a taşıyarak gerek insan kaynağıyla gerekse finansal desteğiyle fikirlerini pratikte uygulanabilir hale getirmek için çalıştığını belirtti. Üniversite hayatından beri çok farklı girişimlerde bulunmuş Collin, fikirlerin gerekli kaynaklarla doğru yönetilirse tüm dünya üzerinde etki bırakabileceğini ve Verily’nin şu an kanser, diyabetik gibi çeşitli hastalıkların erken tanılarını gerçekleştirebilecek bir test prosedürü&cihazı üzerinde çalıştığını belirtti. Günün son durağı, Artificial Intelligence (Yapay Zeka) uygulamaları ve yeni kurulan donanım laboratuvarıyla farklı alanlara genişleyen Facebook şirketiydi. Bu şirkette ‘Marketplace’ (Pazaryeri) uygulamalarında çalışan Bowen Pan, K12 uygulamalarında ürün mühendisliği yapan Gülin Yılmaz ve IT uzmanı Kaan Baloğlu ile görüşüldü. 6 haftada bir yapılan hackathonları ve ufak çalışma gruplarıyla şirket içi girişimciliği cesaretlendirilen bu şirkette, her geliştirmenin önce binlerce kullanıcı tarafından test edilip, ürün-pazar yeri uyumu yakalandıktan sonra geliştirmelerin tüm sisteme uygulanarak her adımda müşteri validasyonu yapılmasının önemine değinildi. 

Programının dördüncü günü, geleneksel araba satış endüstrisini alt üst eden Y Combinator girişimi Carlypso ile başladı. Carlypso, ikinci el araba alım satımında tüm müzayedeleri ve web sitesi içeriğini irdeleyerek, kullanıcı adına gerekli tüm teknik ve ekonomik kararları almak ve arabayı yeni sahibine en iyi şekilde bırakmak üzerine kurulmuş bir yazılım ve servis girişimidir. Yapılan panelde Carlypso kurucu CEO’su Nicky Hinrichsen, biz genç girişimcilere öncelikle olarak çözdükleri sorundan en mustarip olanlardan başlayarak, müşterilerin beklentilerini aşan servis ile müşteri memnuniyetini arttırmamızı öğütledi. Daha sonra, firmadan müşteriye ulaşacak tüm mal ve hizmetlerin sevkiyatının rotasından takibine kadar tüm aşamaları yazılım ile çözen sevkiyat yönetimi uygulaması Onfleet ziyaret edildi. Onfleet kurucu CEO’su Khaled Naim, bizlere müşterinin problemini çözmek için en temel sorundan yola çıkmalarını, eğer bu noktayı bulabilirsek ek özelliklerle müşteri deneyimini arttırmamızı önerdi. Öğleden sonra ziyaret edilen Samsung Accelerator(Hızlandırıcı), girişimci ekibimiz ile Samsung firması arasındaki iletişimi ve kurum içi girişimciliği arttırmak için kurulmuş bir merkezdir. Merkezdeki süreçler hakkında bilgi aldık, daha sonra merkezde çalışan girişimcilerle sohbet ederek, kendilerine sunulan farklı bir girişimcilik deneyimi yolunu gözlemleme şansı bulduk. Günün son durağı Rhumbix, geleneksel inşaat sanayisini takip ve data görselleştirme araçlarıyla alt üst eden yeni bir girişimdi. Araçların ve kişilerin üzerine yerleştirilen sensörlerle yer, sağlık ve performans gibi birçok kriteri izleyebilen bu start-up, kullanıcılarına zaman kaybına neden olan noktaları grafik ve hızlı raporlamalarla sunarak inşaatın zamanında tamamlanması için danışmanlık hizmetleri sunmaktadır. Başlangıçta sadece işçilerin konumlarını gözlemleyerek inşaat sektörüne uygun raporlar çıkaran Rhumbix kurucu CEO’su Zach Scheel, daha sonra müşterilerinin ihtiyaçlarını daha iyi dinledikçe farklı özellikler eklediklerini ve hedeflerinin inşaat sektöründe büyük data işleyerek firmalara inşaatın yönetimi konusunda temel atımından anahtar teslimine verimli danışmanlık hizmetleri sunmak olduğunu belirtti.


Programın beşinci gününe Stanford kampüs ve laboratuvarlarını gezerek başladık, daha sonra Stanford Graduate School of Business’i ziyaret ederek girişimcilere sunulan yüksek lisans programları ve uygulamalı uzmanlaşma olanakları konusunda bilgilendirildik. Stanford Girişimcilik Merkezi ziyaretinin ardından Tasarım Odaklı Düşünme metodolojisinin en köklü temsilcilerinden olan d.school ve Venture Studio ziyaret edildi. Embrace gibi yer koşullarının zorlu ve soğuk ortamlarda bebeklerin vücut sıcaklığını korumak amacıyla kurulan sosyal girişimlerden, Nike’ın yeni ayakkabı tasarımlarının yapıldığı inovatif teknik çalışmalara kadar geniş bir yelpazede çalışan d.school’da, biz girişimcilere tasarım odaklı düşünme metodolojisine giriş dersi Kerem Alper tarafından verildi. Programa, San Francisco’da bulunan ve dünyanın en ünlü uygulamalı bilim, sanat ve insan algısı müzelerinden biri olan Exploratorium’da gerçekleştirilen gezi ile son verildi. 

Umarım tecrübelerimi paylaştığım bu yazı faydalı olmuştur. Silikon Vadisinde gördüğüm, yaşadığım tecrübelerden doğru olduğuna inandığım noktaları paylaşmak ve Türkiye de uygulamak bu gezinin bende ki temel amacı oldu. Sorularınız ve feedbackleriniz için ‘ ;) ‘ benimle irtibata geçmenizi isterim.

Teşekkürler.

DHT11 VE NOKIA 5110 EKRAN UYGULAMASI 


Merhaba arkadaşlar.Bugün elimden geldigince arduıno ile DHT11 sıcaklık ve nem sensörünü tanıtıp bunu 5110 ekranı ile kullanarak basit bir uygulama yapacagız.Öncelikle DHT11 ve 5110 ekranı biraz tanıyalım.


DHT11:Nem degerini ±%5  hassasiyetle ve sıcaklık degerini ±2°C  ölçen bir devre elemanıdır.Bu sensörü kullanmak için sadece 1 adet 10k dirence ihtiyaç duyarız.

1.bacagı :+5V
2.bacagı: arduıno da herhangi bir pine ve 10k lık direnç ile +5v baglıyoruz
3.bacagı: boş bırakıyoruz
4.bacagı:GND yanı topraga baglıyoruz.








NOKIA 5110 EKRANI:


1.RST:pin 11
2.CE: pin 12
3.DC: pin 10
4.Din: pin 9
5.Clc: pin 8
6.Vcc: 3.3 V
7.BL: pin 7
8.Gnd: Toprak

Not:Yazılım kısmında bu pinler degiştirilebilir.






5110 ekranı 16*2 lcd den daha kullanışlıdır.Şöyle açıklayayım 5110 ekranı ile resim çizimi yaparken lcd ile bunu yapmak zordur.Lcd ile yapmak istenirse bunun için graphics lcd ye ihtiyaç vardır.

Pinler arasında bilmemiz gereken tek yer bence BL pinidir.5110 ekranında yan tarafta 4 adet mavi ışık var.Bunlar sayesınde ekranı aydınlatmaya yarar.



Gelelim Kod Kısmına :


#include <dht11.h>  //Dht11 kutuphanesı
#include <LCD5110_Basic.h> //5110 kutuphanesı
LCD5110 lcd(8,9,10,11,12);   //5110 baglantı kısımları
extern uint8_t SmallFont[];  //Küçük boy yazı için
extern uint8_t MediumNumbers[]; //Orta boy rakam için
extern uint8_t BigNumbers[];  // Büyük boy rakam için
dht11 DHT11; //DHT11 adı altında degişken tanımladık
#define DHT11PIN 2 //2 nolu pin DHT11PIN ismini verdik
void setup() {

lcd.InitLCD();  //5110 ekranını hazırladık.Bu kod olmazsa olmaz kodlarımızdan bir tanesıdır.
//Ve her 5110 ekranı ugularken yazılmak zorundadır
lcd.setContrast(60); //5110 ekranı kontrastını ayarladık
digitalWrite(7,HIGH); //7 nolu pini +5 v ver
}

void loop() {

int veri=DHT11.read(DHT11PIN); //DHT11PIN deki veri degerinin oku
float x=DHT11.humidity; // Sensorden nem degerını oku ve x degişkenıne ata
float y=DHT11.temperature;//Sensorden sıcaklık degerını oku ve y degişkenıne at
lcd.setFont(SmallFont);//5110 ekranına küçük harf yazılacagını belirten kod
lcd.print("NEM",60,0);//Yatay 60,dikey 0 yerine NEM yaz
lcd.setFont(MediumNumbers);//Orta boy rakam yazılacagını belirten kod
lcd.printNumI(x,RIGHT,10);//x degişkenını dikey 10 ve saga dayalı olarak yaz
lcd.setFont(SmallFont);//5110 ekranına küçük harf yazılacagını belirten kod
lcd.print("SICAKLIK",0,0);//Yatay 0,dikey 0 yerine SICAKLIK yaz
lcd.setFont(MediumNumbers);//Orta boy rakam yazılacagını belirten kod
lcd.printNumI(y,LEFT,10);//x degişkenını dikey 10 ve sola dayalı olarak yaz


delay(3000);
}

Merhabalar,
Bu yazımızda sıcaklık sensörleri ve tiplerinden ve onların nasıl kullanıldığından bahsetmeye çalışacağız.

Endüstride en sık kullanılan sensörler sıcaklık sensörleridir.İster büyük ölçekli ister küçük ölçekli olsun neredeyse her projede en az 1 adet sıcaklık sensörü kullanıdığına rastlamışsınızdır.

Bir suyun gidiş ve dönüş sıcaklığı olsun,bir odanın ortam sıcaklığı olsun irili ufaklı her projede sıcaklık sensörü kullanılmaktadır.

Sıcaklık sensörleri en temelinde 2 ayrı gruba dağılırlar :

1. Kontak çıkış veren sıcaklık sensörleri :

Bu tip sensörler özellikleri dolayısı ile belirli bir sıcaklıkta size sıcaklığın aşılıp,aşılmadığı bilgisini vermek üzere tasarlanmışlardır.Sıcaklık değeri geçildiğinde özelliği kapsamında size açık kapalı kontak olarak dijital bir değer vererek geri bildirim almanızı sağlarlar.Bir nevi termostat mantığında çalışırlar

2. Kontak Çıkışlı olmayan sıcaklık sensörleri:

Bu tip sensörler sıcaklığın anlık olarak bilgisinin kullanıldığı ya da takip edilmesi gereken sıcaklığın kullanıcı ekranına yansıtıldığı daha detaylı otomasyon projelerinde kullanılırlar.

İsterseniz gelin sıcalık sensör tiplerine biraz daha yakından bakalım

Termostat tip mekanik sıcaklık sensörü :

Bu tip sensörler genel olarak 2 farklı element sacın bir araya getirilmesi ile oluşturulur.Bu elementler nikel,bakır,aluminyum gibi seçimlerden oluşabilir.

Yukarıda şekilde görüldüğü üzere mekanik sıcaklık anahtarı belirli bir sıcaklığa ulaştığında bimetal diyafram genleşerek ilk durumda kapalı kontak olarak bize bilgi veren sensörümüzü açık kontağa çevirir ve böylece sistemde sıcaklık değerinin aşıldığı bilgisi alınmış olur.

Bu tip termostat tipi sıcaklık sensörü tercih edilirken dikakt edilmesi gereken en önemli husus +- hata payıdır.Bir örnekle açıklamak gerekirse aldığımız bir sensör 20 derece sette 22 derece açık konuma gelebilecekken, eski haline yani kapalı durumuna 18 derece geri dönebilir.Bu sebeple projelerinizde bu sensör tipinin seçimi ya çok dikkatli yapılmalıdır ya da dijital,direnç tipi, termocoupler gibi farklı seçenelere yönelinmelidir.

Thermistörler :


İki termini ismini verdiği sıcaklık sensörü Sıcaklığa duyarlı direnç sözcüklerinin bir araya gelmesi ile adını alan termistörler.İçerisinde bulunan direncin sıcaklığa verdiği tepki ile ya direncinin azalması ya da direncinin artması ile sıcaklık ölçmemize yarayan sensör tipidir.

2 farklı tipte bulunmaktadır.
NTC tip : Sıcaklığın artması ile birlikte direnç değeri azalan sensör tipidir.
PTC tip :  Sıcaklığın artması ile birlikte direnç değeri artan sensör tipidir.


İsterseniz bir ntc sensör üzerinden nasıl sıcaklık değeri okunur bir örnek ile açıklayalım :

 Yukarıda şemada görüldüğü üzere besleme gerilimi ile referans direnci arasında ntc sensörü yerleştirilmiştir.12V Vcc beslemesi sensörün sıcaklık ile birlikte direnç değişiminden Vtemp voltajı değişim gösterecek ve op-amp çıkışıdan sıcaklığa duyarlı olarak değişen bir voltaj okuyacağız.

25 derecede 
Sensörümüz bize 1.09V olarak çıkış verecek.
Yine 100 derecede ise 
 
Basit bir hesaplama ile bize 10.9V verecektir.
Ntc olsun ya da Ptc olsun sensör seçiminde dikkat etmeniz gereken her sensör farklı sıcaklık-direnç tablosuna sahiptir.Bu dirençleri projenizde seçecek olursanız bu tabloları göz önünde bulundurmalısınız.

Diğer bir sıcaklığa duyarlı olarak direnç değişimi gösteren sensör tipi ise 
 RTD ler : Genel olarak platinum olarak karşımıza pt100 ya da pt 1000 olarak çıkarlar

 0 derecede aldıkları direnç değerlerine göre 100 ohm pt 100 ve 1000 ohm ise pt1000 olarak adlandırılır. Direnç özelliğinden pasif devre elemanı olan bu dirençleri okuyabilmek için bacaklarına sabit bir voltaj uygulayarak sıcaklığa bağımlı olarak direnç değişimi ile birlikte akım değeri üzerinden sıcaklık okuma işlemi gerçekleştirilebilir ya da bir voltaj bölücü devresi ile voltaj değişimi üzerinden sıcaklık değerini elde edebilirsiniz.Bu sensörlerin sıcaklık ölçüm aralıklar -200 ile 600 derece arasında değişebilmekte ve yüksek ve düşük sıcaklık ölçümlerinde sıklıkla kullanılan sensör olma özelliği taşımaktadırlar.

Gelelim en çok kullanılan ve sıcaklık ölçüm aralığı en geniş sıcaklık sensörlerine

Thermocouple : 
-200 derece ile +2000 derece arasında çalışabilme özelliği ile yükse derecede sıcaklık ölçüm projelerinde kullanılırlar.Sıcaklığa karşı yukarıda sırası ile saymış olduğumuz tüm sıcaklık sensörü tiplerinden daha hızlı tepki verirler.

Çalışma mantığı oldukça basittir.Soğuk nokta ile sıcak nokta iki farklı malzemeden oluşur ve bu iki nokta arasındaki sıcaklık farkı bize v1-v2 olarak voltaj olarak verilir.


Yukarıda şemada genel olarak bir thermocouple nasıl okunur devresini görmektesiniz.Sensör çıkış olarak milivolt seviyelerinde bir voltaj vereceğinden dolayı çıkışa ekleyeceğimiz uygun bir op-amp devresi ile voltajı yükselterek mikroişlemci tarafında sıcaklık değişimini okuyabilirsiniz.

Thermocouple kodları
Code
Type
Conductors (+/-) Sensitivity British
BS 1843:1952
E Nickel Chromium /
Constantan
-200 to 900oC type e thermocouple
J Iron / Constantan 0 to 750oC type j thermocouple
K Nickel Chromium /
Nickel Aluminium
-200 to 1250oC type k thermocouple
N Nicrosil / Nisil 0 to 1250oC type n thermocouple
T Copper / Constantan -200 to 350oC type t thermocouple
U Copper / Copper Nickel
Compensating for
"S" and "R"
0 to 1450oC type u thermocouple
Merhabalar,
Bu yazımızda plcler de kullanılan izole edilmiş dijital giriş pinlerinden bahsedeceğiz.

Sahadan alacağımız dijital veriler, sistemlerin vazgeçilmez bir parçasıdır.Örneğin sahada bulunan bir motorun on ya da off durumda olduğunu daha da önemlisi arızlı ya da normal koşulda bulunduğu gibi verileri dijital veriler üzerinden almaktayız.Yine eğerki bir scada sistemi tasarladıysak pano üzerlerinde bulunan pako devreleri ile yardımcı kontaklar vasıtası ise sistemin otomatik ya da manuel modda çalıştığı bilgisini scada sistemine yansıtabilmekteyiz.

Örneklerimizi burada sınırlı tutalım lakin sayfalarca endüstriyel dijital giriş senaryosu burada yazmak mümkün olmayacaktır.

Yazımızın ana konusuna geri dönmek gerekirse plcler üzerlerinde analog giriş,analog çıkış,dijital giriş ve dijital çıkış olmak üzere 4 ana grup barındırır.Biz ise bu yazımızda plc lerin dijital olarak sahadan bir veriyi nasıl aldıkları üzerinde duracağız.


Yukarıdaki şema bize bir plc üzerinde bulunan dijital giriş devresini vermektedir.Sağ taraf bizim otomasyon uygulamasını gerçekleştirdiğimiz sahamızı temsil ederken sola doğru ilerledikçe mikroişlemci tarafına yaklaşmaktayız.

Plc lerin genel olarak dijital girişleri 24V u logic 1 olarak görürken 0V u logic 0 olarak kabul etmektedir.Aslında mikroişlemci tarafı bunu 5V logic 1 ve 0V logic 0 olarak almakta.Sırası ile anlatacağız.Yukarıdaki şemada sol senör switch yani anahtar olarak adlandırılan kısım bizim sensörümüzden gelen veriyi temsil ederken, en sağ tarafta işlemcimizin ilgili gpio pinine giden veri ok ile belirtilmiştir.

Şimdi gelelim devremizin işleyişine :
Sahadaki dijital sensörümüzden gelecek veri ile olarak R1-C1 filtresinden geçirilmektedir.Bu filtre hem bizim sahadan gelecek olan dijital verimizi gürültüden arındıracak hemde gelen verinin daha tutarlı bir hal (oluşabilecek voltaj dalgalanmalarını engellemek) almasını sağlayacaktır.

Burada D1 ledi dikkatinizi çekmiştir.Endüstriyel cihazlarda plc gibi genellik watchdog adı verilen veri izleme işaretçileri bulunur.Nedir bu? o anda ilgili girişte bir dijital veri var ise o dijital giriş üzerindeki bir led vasıtası ile kullanıcı sahada direkt olarak plc üzerinden girişin mevcut değerini göz ile görebilmesini sağlamaktadır.

R3 direnci de tahmin edebileceğiniz gibi ledi korumak amacı ile devrede yer almaktadır.Sistemin ana can damarlarından biri optocoupler devresi hemen peşinden gelmekte.Optocoupler devreleri genellikle işlemci tarafı ile saha tarafını izole etmek bağımsızlaştırmak amacı ile kullanılır.Böylece oluşabilecek yüksek gerilim düzeylerinden mikroişlemcimiz bu koruma devresi sayesinde kendisini koruyacaktır.

Sahadan yani sensörümüzden 24V yani logic 1 gelmesi durumunda R4 direnci üzerinde bir gerilim oluşacak ve bu gerilim sayesinde optocoupler devresinde bulunan ledimiz ışımaya başlayacak sonrasında ise ışığa duyarlı transistör tetiklenecek ve mikroişlemci tarafına 5V logic 1 dijital verisi gönderilecektir.Dikkatinizi çekmiştir bir önceki yazımızda yer verdiğimiz pull up ve pull down devrelerinden bir örnek tam olarak optocoupler devresi çıkışında karşımıza çıkmata.Bu devremizde ise pull up devresi kullanılmakta yani sahadan sensör üzerinden veri gelemediği anda mikroişlemci logic 1 görür iken sensör üzerinden veri geldiği anda ise logic 0 mikroişlemci tarafından görülecek ve programcıya sensör verisi aktarılacaktır.
Merhabalar,
Bu yazımızda dijital input kullanımında sık olarak kullanılan pull up ve pull down devrelerinden bahsedeceğiz.

Pull up direnç devresi nedir ?

pull up devresi, mikroişlemci tarafında sensörden bilgi gelmediği durumlarda high yani 1 bilgisi almamızı sağlar.

Mikroişlemci tarafında bir sensörünüzün kopma durumu ya da takılı olmama durumunu kontrol etmek istediğiniz durumlarda kullanılabilir.Farklı bir şekilde açıklamak gerekirse dijital olarak bilgi alacağınız devreninin kapalı devresi pull up devresi üzerinden geçirilerek sensör devresinin açık konuma geçmesi durumu kontrol edilmektedir.

Yandaki şekilde görmüş olduğumuz R1 direncimiz bizim pull up direncimiz niteliğini taşımaktadır.Her zaman yüksek bir değer seçilir hem mikroişlemci tarafında girişimizi korumak hemde sensör tarafından gelecek olan ground ile kısa devre konumuna hızlı tepki vermek açısından.




Pull down direnç devresi nedir ?

Pull up devresi için ne belirttiysek pull down devresi için tam tersi karakteristik özellik geçerlidir.Sensör tarafında alacağımız dijital veriyi normalde açık olarak aldığımız durumda mikroişlemci tarafında digital input üzerinden alacağımız değer logic 0 yani low olur.Ne zaman sahadaki sensörümüz dijital çıkış olarak bize 1 verir işlemci tarafında da yine dijital input üzerinden HIGH bilgisini elde ederiz.

Burada pull down direncinin yüksek seçilmesindeki amaç ise sahadan sensör üzerinde gelecek logic 1 in direkt olarak işlemci üzerinde akmasını sağlamak ve yüksek değerli bir R1 puu down direnci ile de işlemcimize akacak olan akımı olabildiğince azaltmak olarak düşünebilirsiniz.






Pull up ve Pull down devrelerinde direnç seçimi nasıl yapılmalıdır ?

İster pull up olsun ister pull down dijital giriş devrelerimizde bu girişleri kullanırken direnç seçiminde 2 faktör rol oynamaktadır.

1. Faktör enerji tüketimi :

Direncimiz ne kadar küçük olursa bizim devre üzerinde çekeceğimiz akım o kadar fazla olur ve çekeceğimiz her fazla akım da daha fazla güç harcamamıza neden olacaktır.Akım hesabında işlemci tarafını korumak için ekleyeceğimiz (düşük dirençli bir pull up ya da pull down devresi tasarladığımızı varsayarsak) direnci de göz önüne alırsak zayıf akım devreleri üzerinde hatrı sayılır bir güç kaybı doğacaktır.

2. Mikroişlemci logic 1-0 voltaj değerleri:

Bildiğiniz üzere mikroişlemciler üzerinde dijital input olarak kullandığınız pinlerin logic 1 ve logic 0 olarak kabul ettikleri voltaj seviyeleri farklılık gösterebilmektedir.Bazı mikroişlemciler 5Vdc gibi bir değeri belirli bir tölerans aralığında logic 1 olarak kabul etmekte iken, bazı mikroişlemciler ise 3Vdc ya da 3.3Vdc yine belirli bir tolerans aralığında logic 1 olarak gelen veriyi kabul etmektedir.Bu durumda seçeceğimiz çok yüksek bir pull up direnci bizim devremizde logic 1 i mikroişlemciye verecek bir gerilim farkı oluşturmayacaktır.


PWM yani pulse width modulation dijital bir devreden en güzel analog sinyal elde etme metodlarından biridir.

Pwm sinyali tanımlanırken 2 birimden bahsedilir

1. Duty Cycle : pwm sinyalinde on yani 1 halinin ne kadar süre devam edeceğini belirler.0-100 arasında bir değer alır ve verilen değer kadar yüzde de on yani 1 sinyali üretir.Geri kalan yüzde de ise 0 yani off halini almaktadır.

2. Frekans : pwm sinyalinin ne kadarlık bir zaman yoğunluğunda oluşturulacağını belirler.Frekansımız ne kadar yükse ise pwm sinyallerimizi duty cycle ları o kadar kısa zamanda tekrarlanır.

Aşağıda farklı duty cyle ve frekans değerlerine sahip pwm sinyallerini görebilirsiniz.

Merhabalar arkadaşlar,
Önceki yazılarımızda lcd konularına girmiş, örnekler vermiş ve lcd kütüphane fonksiyonları üzerinde durmuştuk.Bu yazımıza ise grafik lcd ler üzerinde duracağız.

Daha önce kullanmış olduğumuz lcd ekranlar 2 satır içerirken grafik lcd ekran ise daha fazla piksel ile bize hizmet sunmaktadır.Üzerinde barındırdığı her bir piksel ile bize kullanıcı arayüzümüz için bir tuval olmaktadır.

Bu projemizde samsungun KS0108 GLCD sini kullanacağız.

Arduino ide tarafında yapmamız gereken arduino sitesine giderek GLCDks0108 kütüphanesini ide mize eklemek.

Peki bu kütüphane bizlere hangi fonksiyonları sağlar ?

Init(bool inverted): kütüphanemizi başlamaya hazır hale getirir.

ClearScreen() : grafik lcd ekranı tamamen temizler

DrawBitmap(bitmap,int x,int y,color) : x ve y koordinatları ile belirtilen noktaya bitmap uzantılı resmi ekler

SelectFont(font) : önceden tanımlı olan fontlar arasından seçim yapmamıza olanak tanır

PutChar(char c) : işaretçinin son kaldığı noktaya karakter yazdırır

GotoXY(int x, int y) : işaretçiyi x ve y ile belirtilen koordinata çeker

PrintNumber(long n) : ekranda son kalınan noktaya sayı yazdırır.

Puts(string t) : ekranda son kalınan noktaya string yazılmasını sağlar

DrawLine(int x1,int y1,int x2, int y2, color) : x1 y1 ve x2 y2 koordinatları başlangıç ve bitiş noktaları olacak şekilde ekrana çizgi çeker

DrawVertLine(int x,int y,long length , color) : x ve y koordinatıdan başlayarak length kadar uzunlukta bir dikey çizgi çeker

DrawHoriLine(int x,int y,long length , color) : x ve y koordinatıdan başlayarak lenght kadar uzunlukta yatay bir çizgi çeker

DrawRect(int x, int y, int width, int height) : x ve y koordinatlarından başlayarak width ile verilen genişlik ve height ile verilen yükseklikte bir dikdörtgen çizer

InvertRect(int x, int y, int width,int radius, int height) : x ve y koordinatlarından başlayarak widht ile verilen genişlik ve height ile verilen yükseklik kadar dikdörtgen alanın piksellerini tersine çevirir.

DrawRoundRect(int x, int y, int width, int height, color) : x ve y koordinatlarından başlayarak width ile verilen genişlik ile height ile verilen yükseklik kadar bir dikdörtgen çizer.Ancak verilen radius kadar dikdörtgenin köşelerini ovalleştirir.

FillRect(int x, int y, int width, int height, color) : x ve y koordinatlarından başlayarak width ile verilen genişlik ve height ile verilen yükseklik kadar alanı dikdörtgen şeklinde doldurur.

DrawCircle(int x, int y, int radius, color) : Dairenin merkezi x ve y ile verilen koordinatlarda yer alacak şekilde ve radius ile belirtilen yarıçapta bir daire çizer

SetDot(int x, int y, color) : x ve y koordinatları ile verilen tek bir pikseli doldurur

Bu devrede kullanacağımız malzeme listesi : 

1 adet arduinı mega
1 adet glcd
1 adet parlaklık ayarı için potansiyometre
1 adet 10k ohm direnç fazla akımı engellemek için

Gelelim devre şemamıza



Gelelim Ardunino kodlarımıza

#include <ks0108.h>

int x=0;  // x eksen koordinatımızı sıfırladık
int y=0; // y eksen koordinatımızı sıfırladık

void setup ()
{
    GLCD.Init(NON_INVERTED); // grafik lcd mizi beyaz bir şekilde başlattık
    GLCD.ClearScreen(); // başlamak için lcd mizi önce temizledik
}
void loop()
{
    GLCD.DrawCircle(63,31,5,BLACK); // 63-31 merkezli 5 yarıçaplı siyah bir daire çizdik
    delay(1000); // 1 sn kadar gecikme
    GLCD.ClearScreen(); // ekranı temizledik
    GLCD.DrawRoundRect(30,30,20,20,5,BLACK); //sol alt köşesi 30-30 koordinatında 20 genişlik ve 20 uzunlukta ve herbir köşesi 5 birimlik ovalleştirilmiş bir siyah dikdörtgen çizdirdik
    delay(1000); // 1 sn lik gecikme
     GLCD.ClearScreen(); // ekranı temizledik
     GLCD.FillRect(30,30,30,10,BLACK); // 30-30 koordinatına 30 genişlik 10 yüksekliğe sahip içi siyah dikdörtgen çizdirdik
    delay(1000); // 1 snlik gecikme
     GLCD.ClearScreen();// ekranı temizledik
   
}

Yukarıdaki örnekte sırası ile ekrana daire ,oval köşeli dörtgen ve içi siyah diktörgen sırası ile 1 er sn aralıkla çizdirelecek ve her sekil arasındaki 1 sn lik zaman aralığından sonra ekran temizlenecektir.
Merhabalar,
Bir önceki yazımızda arduino ile paralel olarak lcd kontrolü ve kütüphanesinden bahsetmiştik.
Bu yazımızda ise seri ve paralel kontrolün farkından ve seri olarak lcd ekranın kontrol edilmesinden bahsedeceğiz.

Nedir paralel ve seri lcd kontrol arasındaki farklılıklar ?

Paralel olarak lcd ekran kontrolünde hatırlarsanız lcd ekrana veri gönderimi için 4 adet pin kullanmıştık ve bu 4 adet pin üzerinden verilerimizi ekrana göndermiştik.Seri ekran kontrolü sırasında ise arduino ile seri haberleşebilen lcd ekran arasında aynı hat üzerinde bitlik seriler halinde haberleşme sağlanır.Böylece arduino pinlerinden tasarruf sağlanmış olur.

Arduino ide bize serLcd kütüphanesi ile seri olarak lcd ekran kontrolü sağlamamızı sağlamaktadır.İsterseniz bu kütüphanenin bize sunduğu fonksiyonları ele alalım.

serLCD(int pin) : pin ile tx pinini tanımlıyoruz ve seri ekranı bu pin ile birlikte belirtiyoruz.

clear() : ekran üzerindeki tüm verileri temizler

clearLine(int satır) : int ile belirtilen satırı temizler

selectLine(int satır) : işaretçimizi satır ile belirliediğimiz konuma getirir

setBrightness(int deger): lcd ekranın kontrast değerini deger ile int olarak vermemizi sağlar

home(): işaretçinin lcd ekran üzerinde sol en üst köşeye gelmesini sağlar

print(data): Verinin ekrana bastırılmasını sağlamaktadır

setSplash(): ilk 2 satırı ekranın başlangıç ekranı olarak atar.

toggleSplash(): splash ekranı aktif ya da deaktif etmemize olanak tanır

leftToRight(): ekranda veri akışının soldan sağa doğru olacağını belirtmeye yarar

rightToLeft(): ekranda veri akışının sağdan sola doğru olacağını belirtmeye yarar

blink(): işaretçinin ve üzerinde olduğu karakterin yanıp sönmesine olanak tanır

noBlink(): işaretçinin yanıp sönmesini engeller

cursor(): işaretçinin yerini belirtir.İşaretçinin üzerinde bulunan karakter altında alt çizgi belirir

noCursor(): işaretçinin gizlenmesine olanak tanır

display(): ekranı açar.Son olarak kalan veri tekrar ekrana gelir

noDisplay(): ekranı kapatır ve ekranda son olarak kalan veri display fonksiyonu için kayıt altına alınır

setCursor(int satır,int sütun): işaretçiyi satır ve sütun numarasına götürür

Örnek uygulamamızda seri olarak lcd ekran kullanımın yanı sıra lcd ekran üzerinde sıcaklık sensöründen almış olduğumuz verileri ekrana yazdıracağız.



DS18B20 sıcaklık sensörü üzerinde dijital olarak alacağımız sıcaklık verisini lcd ekran üzerine bastıracağız.


Gelelim kodlarımıza :

#include <SoftwareSerial.h>// yazılımsal olarak seri pin kütüphanemizi ekliyoruz
#include <serLCD.h>// seri lcd ekran kütüphanemizi ekliyoruz
#include <OneWire.h>// Sıcaklık sensörü ile tek hat üzerinden haberleşeceğiz
#include <DallasTemperature.h>// kullanacağımız sıcaklık sensörü kütüphanesi

serLCD ekran(12); // lcd ekranı tanımladık ve bunu 12 nolu pin üzerinden haberleşeceğimizi belirttik
OneWire oneWire(ONE_WIRE_BUS); // tek hat haberleşme belirttik
DallasTemperature sensor(&oneWire);// sıcaklık sensörünü belirledik ve bunu tek hat haberleşmeye bağladık

void setup(void)
{
   Serial.begin(9600);// 9600 baudrate ile seri haberleşme başlattık
   sensor.begin();//tek hat üzerinden haberleşeceğimiz sensörü başlattık
   ekran.clear(); // ekranımızı temizledik
}

void ekrana_sıcaklık_bastır() // tek hat üzerinden sıcaklık bilgisi almak için fonksiyon tanımladık
{
   ekran.clear();// lcd ekranı temizledik
   float sıcaklık=sensor.getTempCByIndex(0);// float küsürlü olarak santigrat değeri olarak sıcaklığı aldık
   ekran.setCursor(0,0);// işaretçiyi 0. satır ve 0. sütuna yani sol en üst köşeye aldık
   ekran.print("sıcaklık =");// ekranın başına sıcaklık= stringini bastırdık
   ekran.print(sıcaklık,1);//aldıgımız sıcaklık degerini ekrana ekledik
}

void loop()
{
   sensor.requestTemperatures();// sensörden sıcaklık verisi talep ettik
   ekrana_sıcaklık_bastır();// aldığımız sıcaklık verisini ekrana yazdırdık
   delay(2000);// her sıcaklık yazdırmamız arasına 2 sn lik gecikme verdik
}

Bir sonraki yazımızda grafik lcd kontrolü ile yeniden karşınızda olacağız.
Merhabalar,
Adım adım arduino derslerimizde bu yazımızda arduino ile lcd ekran sürme işleminden bahsedeceğiz.
Arduino Ide içerisinde lcd ekranları sürmemizi sağlayan liquidcrystal lcd kütüphanesi bulunmakadır.
Peki bu kütüphane bize neleri sağlamakta ve hangi fonksiyonları barındırmaktadır? isterseniz buna bir gözatalım

begin(int kolon,int sıra) : begin fonksiyonu bizim ne kadarlık bir lcd kullanacağımızı programsal olarak tanımlamamıza olanak tanır.Kullandığımız lcd kaç satır ve sütunu destekliyorsa kolon ve sıra ile bunu belirtmemiz gerekmektedir.

clear() : ingilizcesinden de kolayca anlaşılabileceği üzere lcd ekran üzerinde herşeyi temizleyen fonksiyonumuz

home() : lcd ekran üzerinde işaretçinin lcd ekranın başlangıç noktası yani en yukarı ve sol köşesine gitmesi sağlar

setCursor(int kolon,int sıra): işaretçimizin fonksiyon içerisinde girilmiş olan kolon ve sıra numarasına ilerlemesini sağlar

write(byte değer): işaretçini lcd ekran üzerinde bulunduğu yere değeri yazdırmaktadır.Burada değer 1 adet karakteri yani char belirmektedir.

print(veri): ekrana string olarak veri değerini yazdırmaya yarayan fonksiyonumuz

cursor(): işaretçinin altında çizginin belirlemesini sağlamaktadır.

noCursor(): işaretçinin ekran üzerinde görünmemesini sağlar.

blink(): işaretçinin yanıp sönmesine olanak tanır.

noBlink(): işaretçinin yanıp sönmesini iptal eder

display(): ekranın kapanmasını sağlayan noDisplay fonksiyonun tersini sağlayarak ekrana verilen son verinin geri getirilmesini sağlar

noDisplay(): ekranı kapatma fonksiyonudur.

scrollDisplayLeft(): ekrandaki veriyi bir karakter boşluk ile sola kaydırır

scrollDisplayRight(): ekrandaki veriyi bir karakter boşluk ile sağa kaydırır

autoscroll():her karakter girildiğinde otomatik olarak önceki karakteri sola ya da sağa kaydırır

noAutoscroll(): otomatik scroll komutunu devre dışı bırakır.

leftToRight(): verinin ekrana soldan sağa doğru akacak şekilde yazılmasını sağlar

rightToLeft():verinin ekrana sağdan sola doğru akacak şekilde yazılmasını sağlar

Fonksiyonlarımızı inceledikten sonra gelelim lcd ekranımızı nasıl arduinomuza bağlayacağımıza

şemada 68 ohm değerindeki direnç lcd ekranımızın arduino üzerinden çekilen akımını sınırlamak için kullanılmıştır.

Yukarıda arduino ile lcd ekran arasındaki bağlatı noktaları listenmiştir.Burada dikkatinizi çekeceği üzere arduino üzerinden veriler 4 bit olarak ekrana gönderilmektedir ve db4-7 üzerinde arduinonun d2-5 arasında bağlantı sağlanmıştır.Potansiyometre lcd ekranımızın kontrast yani netleğini ayarlamak amacı ile devreye eklenmiştir.


Gelelim arduino kodlarımıza

#include <LiquidCrystal.h> // lcd kütüphanemizi ekledik

LiquidCrsytal lcd(12,11,5,4,3,2); // lcd ekranımızın bağlantı noktalarını tanımladık 12,11 register ve enable pinleri iken 5-2 pinleri ise data pinlerimiz

void setup()
{
   lcd.begin(16,2);// lcd ekranımızın 2 satırlık ve 16 sütunluk olduğu programa belirtiyoruz
   lcd.print("Arduino");// lcd ekranın en üst sol köşesinden başlayarak arduino yazdırdık.
   lcd.setCursor(0,1);// lcd ekran üzerinde işaretçimizi 2. satır ve 0. sütuna yani 2. satır başlangıcına çekiyoruz
   lcd.print("LCD display");// 2. satırımıza verimizi yazdırdık.
}
void loop()
{
}

Bu yazımızda sizlerle paralel bağlantılı lcd ekranların arduino ile kullanımından bahsettik.Bir sonraki yazımızda seri olarak haberleşen lcd ekran ile uygulama üzerine sizlerle birlikte olacağız.

Merhabalar arkadaşlar,
Bu yazımızda ultrasonik sensörlerden ve bu sensörlerin arduino ile kullanılmasından bahsedeceğiz.
Ultrasonik sensörleri alarm sistemi olarak,engelden kaçan robot yapımında,mesafe uzaklığı ölçmede kullanabilirsiniz.

Nedir bu ultrasonik sensör ve nasıl çalışır ?

Ultrasonik sensörler, ultrasonik ses dalgaları göndererek bu dalgaların geri döünşleri yani eko yapmalarını beklerler.Bekleme süreleri sırasında eğer ki bir cisimden ses dalgası geri dönüyorsa bize geri bildirimde bulunurlar.Ultrasonic sensör içerisinde bulunan işlemci ile sesin ne kadar sürede geri döndüğü bilgisi tutulur ve bu bilgi bize pwm yani pulse olarak geri döndürülür.




Projemizde parallax ping sensörü üzerinden cisimlerin mesafe bilgilerini alacağız.Bunun için 7 numaralı pinimizi hem input hemde output olarak kullanacağız.Parallax ultrasonik sensör üzerinden veri okuyabilmemiz için, sensöre 5 mikrosaniye kadar dijital 1 yani HIGH değeri göndermemiz gerekiyor.Akabinde 7 numaralı pinimizi input pini olarak tanımlayacağız ve pulseIn() fonksiyonu dönen pulse süresi ile sensörün geribildirimi mesafe olarak alacağız.


const int sinyal=7; // sinyalimizin bize geleceği pini seçtik

void setup()
{
}
unsigned long ping()// sensörden dönen bilgiyi bize mesafe olarak döndürecek olan fonksiyonumuzu tanımladık
{
     pinMode(sinyal,OUTPUT);//sinyal pinimizi çıkış olarak atadık
    digitalWrite(sinyal,LOW);// 7 numaralı pinimize dijital 0 gönderdik
    delayMicroseconds(2);// 2 mikro saniye gecikme
    digitalWrite(sinyal,HIGH);// 7 numaralı pinimize dijital 1 gönderdik
    delayMicroseconds(5);
    digitalWrite(sinyal,LOW);//5 mikrosaniye boyunca sensöre dijital 1 verdik ve ölçüm yapmasını istedik.
    pinMode(sinyal,INPUT);//7 numaralı pinimizi giriş olarak değiştirdik
    digitalWrite(sinyal,LOW);// pinimizi dijital 0 yaptık ve pulse bekliyoruz
    return pulseIn(sinyal,HIGH);//7 numaralı pinin lowdan high olana kadar olan zaman yani sensör değeri
}
void loop()
{
    int range =ping() / 29;// sensörden dönen pulse süresini aldık
    delay(50);//50 ms gecikme
}

Yukarıdaki koddar 29 ile neden böldüğümüz aklınıza gelebilir.Parallax sensörün bizen döndürdüğü her pulse 29 microsaniyesi 1 cm ye denk gelmektedir.Bizde gelen süreyi cm ye çevirmek için gelen değeri 29 ile bölmekteyiz.
Bu yazımızda servo motoru arduino üzerinden sürme projesinden bahsedeceğiz.
Servo motorlarının üzerinde 1 adet power,1 adet ground ve 1 adette kontrol ya da sinyal ucu olmak üzere toplamda 3 adet pin bulunmaktadır.
Yandaki resimde tipik bir servo motor görülmektedir.Peki servo motor nasıl çalışır ?
Servo motorlar sinyal uçlarına gönderilen pulse ile çalışırlar ve bu pulse ile servo motorun 0 ile 180 derece arasında açıda dönmesini sağlar.Arduino tarafından gönderilecek olan pulse her 20 mili saniyede bir tekrarlanmalıdır aksi halde step motorumuz başlangıç değerine geri dönecektir.

Servo motoru 1ms ile 2ms pulse değerlerimizle 0-180 derece aralığında kontrol etmeye çalışacağız ve bunun içinde arduino servo motor kontrol kütüphanesini kullanacağız.


Arduino Servo motor kütüphanesi nasıl çalışır ? (<Servo.h>)

Servo kütüphanesini bir derleyici ile açtığınızda karşınıza kütüphane içerisinde tanımlı fonksiyonlar çıkacaktır ki bu fonksiyonları arduino ide içerisinde kullanacağız.İsterseni gelin bu fonksiyonlara bir göz atalım :

Servo : arduino ide içerisinde servo ile değişken tanımlayarak bir servo motor objesi oluşturmaya yarar.

attach(): bu fonksiyon servo motorumuzun bağlı olduğu pine servo motor kontrolünü bağlamamızı sağlayacak.

write(): tanımladığımız servo motora istediğimiz açı değerini göndermemizi sağlayacak olan fonksiyonumuz.

writeMicroseconds(): Servo motorumuza göndereceğimiz pulse değerimizin sıklığını ayarlayacak olan fonksiyonumuz.

read(): En son gönderilen açı değerini bize döndürecek olan fonksiyonumuz.

readMicroseconds():Servo motora gönderilen pulse değerinin sıklığını bize geri döndüren fonksiyonumuz.

attached(): Yukarıda belirtmiş olduğumuz attach fonksiyonun işlevini yerine getirmesi sonucu true ya da servo motorun yazılımsal olarak bağlı olmadığı durumda ise false döndüren fonksiyonumuz.

detach(): Yazılımsal olarak servo motoru programımızdan çıkaran yani attach foknsiyonu ile servo motoru bağladığımız pini yazılımsal olarak boşa çıkaran fonksiyonumuz.


Gelelim kodlarımıza :

#include<Servo.h>// servo kütüphanemizi ekledik

Servo motor;// motor adında bir servo objesi oluşturduk
int poz=0;//motorumuzun pozisyonunu içerisinde tutacağımız değişkenimiz.

void setup()
{
    motor.attach(9);// servo motorumuzu 9 numaralı pwm pini üzerinden kontrol edeceğimizi belirttik
}
void loop()
{
   for(poz=0;poz<180;poz++)//motorumuzun açısını sıfırdan başlatarak for içerisinde 180e kadar arttıracağız
   {
      motor.write(poz);//servo motora açısını gönderiyoruz.
      delay(15);//15ms gecikme gönderiyoruz
   }
   for(poz=180;poz>0;poz--)//motorumuzun açısından 180 dereceden 0 dereceye indiriyoruz
   {
      motor.write(poz);// motorumuza açısını gönderiyoruz
      delay(15);//15 ms bir gecikme gönderiyoruz
   }
}


Programı çalıştırdığınızda servo motorun önce 0 dan 180 dereceye, sonrasında ise 180 dereceden 0 dereceye doğru hareket ettiğini göreceksiniz.
ELEKTRO BLOGGER A HOŞGELDINIZ

ARAMA YAP

EN COK OKUNANLAR

- Copyright © ELEKTRO-BLOGGER Blogger