Güle güle (!) 2011.. Hoşgeldin (!) 2012..

Koca bir yılı (1 yıl demek dile kolay, her ne kadar 12 ay olsa da 52 hafta, 365 gün ediyor) geride bırakmışız da haberimiz yok (insanın haberi olmaz mı?). Yılın son günündeyiz. Büyük kısmı sinirli stresli, yoğun geçse de güldüğümüz eğlendiğimiz çok zamanlar da olmadı değil. Uzun süre buraya birşey yazamadım. Aslında bu yazdığım da bir şey değil. Öylesine. Boş kalmasın maksat.

Aslında çok fazla söyleyecek birşey yok. Diyebileceğim tek şey, “yeni yılınız kutlu olsun” dileğidir.

2011 ne kadar güle güle gider bilemem ama umarım 2012 hoş gelir..

PIC ile RF Alıcı/Verici

Bu yazıda rf alıcı/verici kullanarak yapılan uygulama ile ilgili bilgi yer almaktadır. RF haberleşme’de mantık, verici tarafında giriş sinyalinin modüle edilerek anten vasıtasıyla havaya yayılması ve alıcı tarafında anten aracılığı ile alınan bu sinyalin demodüle edilerek sinyalin çekilmesine dayanır. Bu işlemi yapan hazır modüller mevcuttur. Bu uygulamara 434 MHz frekansında çalışan alıcı ve verici modüller kullanılmıştır. Verici modülün besleme, veri giriş ve anten ucu ile alıcı modülün besleme, veri çıkış ve anten ucu bulunmaktadır. Beslemeler 5V ile yapılmaktadır. Anten ucuna, frekansa uygun uzunlukta anten görevi görecek kablo takılmalıdır. Veri gönderecek olan PIC’in TX ucu, verici modülün data in ucuna, alıcı modülün data out ucu ise veri alacak olan PIC’in RX ucuna bağlanmalıdır. Veri gönderecek olan PIC, veriyi seri haberleşme kullanarak gönderirken veriyi alacak olan PIC te aynı seri haberleşmeyi kullanarak veriyi alacaktır. Gönderilen sinyale karışacak olan gürültü, verinin alınması sırasında sorun oluşturabileceğinden dolayı veriler bu tür uygulamalarda genellikle belirli bir formatta gönderilir. Örneğin, 1 verisi gönderilecekse önce #ABC gibi 4 karakter gönderilir. Daha sonra 1 verisi eklenir ve en son da /E gibi iki karakter daha eklenir. Bu eklenecek karakterler ve sayıları programcıya bağlıdır. Azaltılıp artırılabilir, farklı karakterler kullanılabilir. Artık gönderilecek veri #ABC1/E ‘dir. 1′den 255′e kadar sayan bir uygulama yapıldığı taktirde gönderilen veriler şu şekilde olacaktır:

#ABC1/E#ABC2/E#ABC3/E#ABC4/E#ABC5/E#ABC6/E#ABC7/E#ABC8/E……

Alıcı PIC’te bu veriler sırasıyla alınırken kontrol yapılacaktır. “Eğer ilk gelen veriler #ABC ise /E karakterlerinden önceki kısım benim verimdir” mantığı ile veri alınır. Bu durumda veri doğru alınmış olacaktır. Bu uygulamada da bu tür bir kodlama kullanılmıştır. Alıcı PIC’te veri, seri haberleşme kesmesi ile alınmaktadır.

Video:

Bu uygulamada verici PIC, 1′den 255′e kadar sayan ve 255′e gelince tekrar baştan bu işlemi tekrarlayan bir işlem gerçekleştirirken alıcı PIC ise aldığı veriyi direkt olarak PORTB’ye vermektedir. PORTB’de bar-led’ler bağlıdır. Binary olarak sayma işlemi ledler üzerinde görülmektedir.

Get the Flash Player to see this content.

Simülasyon ve hex kodlarına buraya tıklayarak ulaşabilirsiniz.

 

Ultrasonik Mesafe Ölçümü

Bu yazıda ultrasonik mesafe ölçümünün, hazır bir modül kullanılarak nasıl yapıldığı yer almaktadır. Optumus BE102 ultrasonik mesafe ölçümü modülü, pic ve 2×16 LCD kullanılarak hazırlanan bu devre, 60 cm civarına kadar ölçüm yapabilmektedir. Modül kullanımı ile ilgili genel bilgiler, modülün datasheet’inde yer almaktadır. Özet olarak anlatmak gerekirse;
Modül seri port kullanarak çalışmaktadır. 9600 baud hızında gereken ayar yapılmalıdır. Modülün toprak, gerilim ve seri iletişim bağlantıları yapılmalıdır. Bunlar yapıldıktan sonra modüle öncelikle 209, ardından 6, onun da ardından 210 verileri gönderilmelidir. Böylece modül, ölçüm emrini almış olur. Ölçümünü yapar ve sonucu seri olarak PIC’e gönderir. Modülün gönderdiği veri 16bit’tir. Bunu, önce bu verinin düşük daha sonra da yüksek kısmını göndererek PIC’e iletir. Örneğin ölçüm sonucu 0×0124 olsun. Bu durumda ölçümden sonra ilk önce 0×24, daha sonra 0×01 verisi PIC’e gönderilecektir. PIC programı buna göre düzenlenerek veriler alınır. Alınan veriler mm cinsinden uzaklık değeridir. Bu mesafenin hesabı da, ikinci olarak gelen yüksek kısımın 256 ile çarpılarak düşük kısmın buna eklenmesi ile yapılır. Sonuç mm cinsinden mesafe olacaktır. Bu işlem için kurulan devrenin görüntüsü ve çalışma videosu aşağıda yer almaktadır.

Devre Şeması:

Video:

Bu videoda program çalışırken saniyede iki ölçüm yapmakta ve bu ölçümü LCD’de göstermektedir. Kenara 30 cm’lik metal cetvel konulmuştur. Cetvelin en uç kısmına, genişliği 5cm olan bir nesne yerleştirilmiştir. Yani nesnenin, mesafe ölçülecek kısmı, cetvelin 5cm yazan yerine denk gelmektedir. Bu da videoda görülmektedir. Modül tam olarak 30 cm’ye getirildiğinde beklenen mesafe değeri 250mm yani 25 cm olmalıdır. Ölçüm değerine de bakılırsa 251mm değeri bulunmuştur. Burada nesnenin tam olarak uzaklığı ve civarındaki nesnelerden yansıyan dalgalar ölçümü etkileyen faktörlerdir.

İlk baştaki sürekli değişen mesafeler, modülün düzgün bir yere tutulmamasından kaynaklanmaktadır.

Get the Flash Player to see this content.

Simülasyon ve hex kodlarına buraya tıklayarak ulaşabilirsiniz.

Müzik Arası

Zülfü Livaneli – Eski Tüfek

Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.

Baba Zula – Ben Bir Martı Olsam

Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.

 

Mikrodenetleyici Laboratuvarı Föy Kodları ve Uygulama Videoları

Mikrodenetleyici Laboratuvarı föyüne buraya tıklayarak, föyde yer alan kodlara buraya tıklayarak erişebilirsiniz.

Bu yazıda örnek kodların deney setinde çalıştırılması sırasında çekilen videolara erişebilirsiniz.

Devamını okuyun

Step Motor İle LED Yakmak

Aşağıda görülen devre şeması, bir step motor kullanarak nasıl elektrik üretileceğini gösteriyor. Bipolar step motor kullanılmıştır. Motoru sabit ve biraz yüksek hızda döndürmek gerekmektedir.

Get the Flash Player to see this content.

Selena Gomez & The Scene – A Year Without Rain

Get the Flash Player to see this content.

Yazıldığı gibi..

Hayat, yazıldığı gibi.. Okumasını bilene..

PHP İle Header Post

Header verisini değiştirerek post etmek, bazı uygulamalarda lazım olabilir. Bana lazım olmuştu ve bu yazıda verdiğim kodu kullanarak çözüm üretmiştim.

Bunun için şöyle bir fonksiyon yazalım.

function do_post_request($url, $data, $optional_headers = null)
{
$params = array(‘http’ => array(
‘method’ => ‘POST’,
‘content’ => $data
));
if ($optional_headers !== null) {
$params['http']['header'] = $optional_headers;
}
$ctx = stream_context_create($params);
$fp = @fopen($url, ‘rb’, false, $ctx);
if (!$fp) {
throw new Exception(“Problem with $url, $php_errormsg”);
}
$response = @stream_get_contents($fp);
if ($response === false) {
throw new Exception(“Problem reading data from $url, $php_errormsg”);
}
return $response;
}

Bu fonksiyonda, parametre olarak verilen $url adresine $data verileri, $optional_headers opsiyonel başlığı kullanılarak POST edilebiliyor. Geriye, gelen veriyi döndürüyor. Bu fonksiyon için örnek bir kullanım şu şekildedir:

$posturl = ‘http://www.domainname.com/example.php’);
$postvars= ‘username=’.$uname.’&pass=’.$upass);

$opshdr=”Host: www.domainname.com”;
$opshdr.=”\nKeep-Alive: 300″;
$opshdr.=”\nConnection: keep -alive”;
$opshdr.=”\nReferer: http://www.domainname.com”;
$opshdr.=”\nContent-Type: application/x-www-form-urlencoded”;
$cdata=”Gelen Veri : “.do_post_request($posturl, $postvars, $opshdr);

Plesk Panel Sorunlarından İkisine Çözümler

Bir sunucudan diğerine, pleskten yedek alarak ve diğerinde de bu yedeği açarak yapılan taşıma sırasında, sitenize giremeyebiliyorsunuz. Bunun nedeni de dizindeki erişim izinleri. Taşıma sırasında sorun oluşabiliyor ve bazı yerler atlanabiliyor. Benzer şekilde, bir sayfaya girerken kullanıcı adı ve şifresi soruyorsa, büyük ihtimalle anlattığımı uyguladığınızda sorun çözülecektir.

Bu sorunu çözmek için, sorun olan sitenin bulunduğu klasörde bulunan .Security dosyasını silin. Daha sonra Plesk panele girip, domainlerden, sorun olan domaini seçin. İzinleri Kontrol Et linkine tıklayın. Gelen sayfadan Yalnızca Denetim Modu’nun işaretini kaldırıp Tamam butonuna tıklayın. İşlem tamamlandığında sorun çözülmüş olacaktır.

Bir diğer sorun da, webmail sayfasına girildiğinde açılan Varsayılan Plesk Sayfası.

Bu sorunu çözmek için, Plesk panelden Sunucu sayfasına girin. Daha sonra gelen sayfadan, Bileşenler’e tıklayarak bileşenlerin bulunduğu sayfayı açın. Webmail kısmına tıklayarak Horde’yi seçin. Daha sonra Başlat>Çalıştır’a cmd yazarak komut sistemini açın. Komut sistemine

C:\Program Files\Parallels\Plesk\admin\bin>websrvmng.exe –reconfigure-webmail

yazın ve onaylayın. Webmail sorununuz da çözülecektir. Çözülmezse, Plesk panelde Domainler sayfasından istediğiniz domainleri seçin. Grup işlemleri linkine tıklayın. Tercihler kısmından Aç’a tıklayarak, devamındaki açılan kutudan Horde’li olan seçeneği seçin ve sayfanın en altındaki Tamam butonuna tıklayın. Sorun çözülmelidir.