Yürüyen İnternet

Hareketi/sıcaklığı/zamanı algılayıp bunlara göre kombiyi yönetebilmesi için AHMT‘i,  Hareketin bulunduğu mekana koyalım demiştik. Ve bu durumda Balkondaki kombi ile iletişim sorunu çıkmıştı.

Biz de asırlık  bir teknolojiyi, Radyo frekanslarını kullanarak çözüme gitmiş. AHMT’e bir de radyo frekans modülü (nRF2401L) eklemiştik. [Ya Evde Yoksan? + Radyo’dan Haberleşme]

Fakat o da ne modülün kütüphane kodlarında garip bir şey vardı..

Görsel1 Görsel2

Saniyede 2 Megabit’lik bir hızdan bahsediyor.

nRF modülü için teorik olarak 500 metre – 1000 metre gibi rakamlar söz konusu olsa da; şehir içi evler ve yollar gibi gerçek hayat ortamlarında bizzat test ettiğimizde, açık alanda 200 metre civarında, arada en fazla bir duvar olmak şartıyla ev içi ortamlarda az bir kayıpla haberleşebiliyor.

Bu mesafe Bluetooth’un 10-15 katı, Wifi modemlerin 2-3 katı bir uzaklık demek. Üstelik hız da; -şimdilerde vatandaşlık maaşı deneyleri yapan- Finlandiya’nın, daha önce Geniş Bant İnterneti İnsan Haklarına Dahil Edip ardından tüm vatandaşlarına ücretsiz olarak sunduğu 1 Mbit hızın iki katı.

Diyorum ki;
Yürüyen uçak yapabiliriz 

Kendi Kablosuz İnternet Protokollerimizi bile geliştirebiliriz.

E hadi standart demeyelim ama kendi özel iletişim sistemlerimizi kurabiliriz pek ala. “Uçuyorsun..” diyeceklere şöyle yanıt vermek isterim:  Düne kadar (1992) ASCII  varken, Bob ve Ken kafa kafaya verip UTF-8’i çıkardılarsa, yeni bir tanesi daha neden olmasın?

Atıyorum;
Daha önce geçtiği üzere bazı kelimeler daha çok kullanılıyor. [Steemit’te En Çok Kullanılan Kelimeler]

Çok basit 3-5 analiz ile Türkçe’de en sık kullanılan kelimeleri bulmak pek ala mümkün. Kaldı ki UTF8’in sunduğu  2,097,152 karakter sayısı hacmine, Türkçe’deki 616.767 kelime+deyimin 3.4 katı sığdırılabilir. (ekler ve tanınmayan heceler için öyle zemberek vari kelime yorumlama işlemlerine hiç girmeden basit formüller bulunabilir)

Yani?

İki saniye şuraya bi bakalım:
https://onlineutf8tools.com/convert-utf8-to-binary

“yağmur yağacak” yazabilmek için 32 byte harcadım.
bize hayli yetecek şekilde her kelimeyi 4 byte ile kodlamış olsak, 8 byte ile aynı iletişimi kurabiliriz. Yani şöyle:

y = 0111101
yerine
yağmur = 0111101

Abartırsak, bu sistem, web sitesi tarzı 4000X adet sunucu sayısının, 1000X adete düşmesi demek aynı zamanda text bazlı internetin 4 kat hızlanması demek.

Hatta yukarıdaki kelime öbeğindeki gibi sık kullanılan kelimeler ilk 1-2 byte içine oturacak şekilde ayarlanırsa çok daha optimize bir sistem ortaya çıkabilir.

Dünya Kabul Edecek mi?

AHMT’in Kombi haberleşmesi için Radyo frekans 1/0-AÇ/KAPA gönderebiliyorsak,
0111101 gönderince, arkadaşımın cihazının ekranına y yazdırmak yerine yağmur yazdırmak çok mümkün. Anteni biraz güçlendirince, toplasan 3-4-5 hava alanı kadar yer kaplayan Uşak’ta bizim işimizi hayli hayli görür..

Dünya kendi bilir 

 

EOS: Beta Katsayısı

12 gün önceden bu yana EOS’a taş atıp duruyorum.

Link vermek yerine ekran görüntüsü ekleyeyim:

 



 

 

 

 



..ve biraz önce:

 



Mevcut Steemit üyelerden EOS‘u bilmeyen en azından duymayan yoktur sanmıyorum. (varsa “evladın okur yazar mı” hikayesini ona gönderiyorum :)) “Okumak” ile  ‘oku’mak farklı zira.. )

EOS’ın Vestel benzerliğine dikkat çekmek istiyorum.

─  Ne alaka?
─  Kel :))

..değil tabiki.

CNBC-E ekranlarında sadece bağlaçları ve zamirleri anladığım konuşmalar olurdu. Hani öyle ofisçedeki gibi araya serpiştirilmiş özenti kelimelerle değil. Kadınlar saatlerce finansçanın terimleriyle konuşuyordu.
(Evet Kadınlar. “O doktor buradaydı.” cümlesini çevirirken, “He was here.” diye çeviriyorsan, bi daha düşün..)

Ne ki bir gün Altın Oranı araştırırken borsa konuları karşıma çıktı, çok fena şaşırdım.

Bu NASIL Mümkün olabilirdi?

NASIL on binlerce Özgür iradeli insanın, kendilerine göre alıp-sattıkları bir Hissenin fiyatı;
neredeyse TAM olarak altın orana uyabilirdi? Üstelik Dolar ya da Petrol hatta Buğday ve Pirinç fiyatlarında bile çalışıyordu.

Zannediyorum bir ay boyunca sadece zaruri durumlar için evden çıktım. Nerede seri halde doküman bulduysam okudum, bulduğum çoğu video ders serilerini bitirdim.

Derken grafikler üzerinde kendim çizgiler çizmeye başladım.  Günlerce yükselen Altın, benim çizdiğim çizgiyi fark edebiliyormuş gibi, ona dokununca geri dönüyordu. Nasıl yani?
Yoksa matrix?? Yoksa kaderin matematiği??.. neler neler 🙂

Sonraki zamanlarda “Forex = %100 Kayıp” denklemini kurana dek, Hilton senin GreenPark benim bolca Forex kurabiyesi atıştırdım 🙂 Ama bu arada sahnede anlatım yapanların hatalarını görebilecek duruma gelmiş, pek çok terim öğrenmiştim.

Bu terimlerden en hoşuma gidenlerden birisi Beta Katsayısı idi.

Beta Katsayısı,

daha çok Referans bir Sembol olduğunda işe yarıyordu. Örneğin IMKB 100 endeksi (o zaman öyle idi adı), referans alınarak diğer hisselere, buna uyumuna göre bir puan veriliyordu (hesaplanıyordu). Atıyorum;

IMKB100 endeksi %3 arttığında, A hissesi de %3 artıyorsa, Beta Katsayısı +1‘e eşitti.
IMKB100 endeksi %3 arttığında, A hissesi de %7 artıyorsa, Beta Katsayısı +1.5‘e eşitti.

IMKB100 endeksi %3 arttığında, A hissesi %3 düşüyorsa, Beta Katsayısı -1‘e eşitti.
IMKB100 endeksi %3 arttığında, A hissesi %7 düşüyorsa, Beta Katsayısı -1.5‘e eşitti.

O halde;
Endeks’te artı yönlü bir kıpırdama olduğunda, betası +2’ye yakın hisseler daha verimli olabilirdi 😉
Hatta endeks düşerken betası -2’e yakın hisselere bakıp, borsanın geneli kayıp yazarken bile kazanacak stratejiler geliştirmek mümkün olabilirdi.

Ve oldu da, o zaman için, endeks artı %1 olduğu günlerin çoğunda VESTEL artı %1,7 – %2 oldu.



 

Yukarıdaki çalışan Vestel örneğine benzer bir durum şimdilerde,
Bitcoin-EOS arasında var.

Ve o kadar bariz ki Beta Beta Beta!! diye bağırıyor adeta.

 

Önceki yazılarda geçenleri ve Beta Katsayısını düşünerek, konun ilk başındaki CoinMarketCap resmine yeniden bakın derim 😉


Burada anılan hiç bir şey, Yatırım Tavsiyesi Değildir.
Yapacak Olduğunuz Her Türlü İşlemin Sorumluluğu, Kendinize Aittir.

Ya Evde Yoksan? + Radyo’dan Haberleşme

Harekete daha duyarlı hale getirdiğimiz AHMT‘i, Hareketsizlik durumları için de daha optimal hale getirmiştik. Bunun için kombi() fonksiyonumuzu belli bir süre boyunca dönecek bir döngü içine almıştık.

/* // 60*5 demek: 5 dakika yanacak */
for ( k = 1; k < 60 * 5; k++ ) {...; delay(1000); }


Bkz: #1, #2, #3#4#5#6#7#8#9#10#11#12#13, #14, görsel



Ya, Evde Yoksak?
(haliyle hareket te yoksa)

 

 

Ve işten/okuldan eve gelecek olduğumuzda, sıcak bir ev istiyorsak..
böyle durumlar için DS3231 saat modülünü işletmiştik. Yukarıdakine benzer bir döngüyü bu kısım için de kullansak sanki daha şık olacak.

Yani SAAT kısmı için kodlarımız şöyle olacak;


String saat = zaman.getTimeStr();
Serial.print ( "saat" ) ; Serial.println ( saat) ;
if (saat == "06:00:00") {
Serial.print (" **Eve gelişe yarim saat kaldı.. hareket olsun veya olmasın kombi yansın " ) ;
yanson ( 10 ) ;
for ( k = 1; k < 60 * 10; k++ ) {
Serial.print ( k );
kombi ( ISIdeger - 3 , ISIdeger ); delay ( 1000 ) ;
}
}

for’daki, k < 60*10 kısmıyla;
eve gelmeden önce, ne kadar süre ile kombi fonksiyonun tetikleneceğini ayarlamış oluyoruz. (10 dakika vb)

ISIdeger-3 ve ISIdeger kısımlarıyla, istenen sıcaklık aralığı da ayarlanabilir. (ISIdeger düğmeyi/potu çevirerek ayarladığımız değer)


Peki.. güzel.
Bu cihaz hareketi algılamak için salon ya da oturma odası gibi mekanlarda olacak.
Amma velkain


Kombi mutfakta ya da balkonda
.
Nasıl olacak bu iş?

Bu soruya, 100-150 yıl önceden gelen bir yanıt verebiliriz: Radyo.

Ki ilginç bir şekilde Radyo, Melon Şapka ya da İlaç Müzik türü yayınlardan çok önce (1894 Lodge, 1898 Tesla) ses için değil Uzaktan bir cihazı Çalıştırmak için kullanılmış. 


nRF24L01

Buradaki n harfinin Nordic/Norveç/İskandinav’a atıf yapıyor olması bana farklı şeyler düşündürüyor..
.. bir chip‘im bile yok anlıyor musun,
.. iklim değişikliği ise ayrı mevzu.. 

anyway..
Kodlarımıza nRF kütüphanemizi ekleyelim. (farklı kütüphaneler var, nRF modülünden hiç tepki gelmiyorsa, bir başka kütüphaneyi deneyebilirsiniz)

#include
#include
RH_NRF24 nrf24;

Arduino’ya güç geldiğinde Radyo modülümüzü başlatmak için,   void setup() { . . } içine  şu kodları ilave edelim:

while ( !Serial ); // Leonardo için, seri portu bekleyelim
if ( !nrf24.init() )
Serial.println ( "kurulum hatasi" );
// Başlatma sonrası yayın: 2.402 GHz ( channel 2 ), 2Mbps, 0dBm
if ( !nrf24.setChannel(1) )
Serial.println ( "radyoKanali hatasi" );
if ( !nrf24.setRF(RH_NRF24::DataRate2Mbps, RH_NRF24::TransmitPower0dBm) )
Serial.println ( "nRFhiz hatasi" );

HEY dur bi dakika, Bİ DAKİKA! Nasıl yani? Burada 2 Mbps diyor!?

Evet, düşündüğün şey 😉

E o zaman Çok harika, Yürüyen Uçak yapabiliriz!

Evet!! Kesinlikle!!

 

Harari (-Sapiens-)

Murat’tan ve Benden, Kendime 🙂 araklayabildiğim zamanlarda Yuval Noah Harari‘nin yazdığı Sapiens kitabını bitirdim. Nihayet!

Neredeyse istisnasız herkes, okuduğu güzel kitapları “Mutlaka Okunması Gereken” kitaplar listesine koyar. Ben de öyle yapayım 😉

Mutlaka Okumalısınız!


Daha önce  lazım oldukça referans yapacağımı belirttiğim Kabul ve İtiraz yazısına atıfta bulunarak bir ukalalık yapayım: İlber Ortaylı dahil, Tarih’in misyonuna uyan bildiğimiz tarihçi yok.

Ya da o hep söylenen “Tarih, geçmişten ders alıp geleceğe bakma sanatıdır/bilimidir” tekerlemesi enikonu Yalan! Aksini iddia eden varsa, Gelecekten Bahseden 3 tane tarihçimizi söylesin. Ya da Hodri Meydan, 1 tane de olur!

Rahmetli Halil İnalcık’tan, Halil Berktay’a, Muazzez İlmiye Çığ’a yahut İlber Ortayı’ya hangisinin gerçek manada Gelecek bahseden kitapları/makaleleri var? Makaleyi geçtim çok değil önümüzdeki 20-30 yılı düşünmüş ve bunu, en azından sohbetlerine garnitür yapan var mı?

50-100-200 yıl değil bari 20-30 yıl.. Bu, bir annenin çocuğu için plan yapmak isteyeceği bir rakam.

// –Yusuf Halaçoğlu’nu anmayı unuttun sanki?
// –ahaha  çok güldürdün, sen de gülesin emi 🙂


 

” Tarih, iki adım bile önümüzü görmemize yardımcı olmayacaksa, Masal’dan bir farkı yok. Kan davası sürdürmekten başka bir işe yaramayan, zaman kaybıdır. “

diye düşünmekteydim. Ta ki Harari ile tanışana kadar.

Harari, yıllardır boş kalmış bir duvarı tamamlayan enfes tabloların ressamı oldu benim için. Genel olarak hala Tarih’in; gereksiz, kan davası masalları olduğunu düşünüyorum. Ancak cümlenin sonuna -şimdilik gizli öznesi sadece Harari olan- şöyle bir parantez açtım:   (bazı istisna tarihçilerin anlattıkları dışında)


Aslında bu yazıda kitabın başından ortasından, altılı çizilesi yerlerinden ya da dip notlarından ufak alıntılar yapmayı düşünüyordum. Ama “Mevcut Tarih Anlayışı” hayli hamurlu/çamurlu olduğu için, şöyle iki kelamlık yer açana kadar, girişin kendisi bi yazı oldu çıkı neredeyse..

O zaman bu, sadece “okudum/bitti” tweeti gibi olsun 😉 Bil ahir, direk Sapiens hakkında bir kaç kelam edeyim.

EOS’un 3,80 Kahvesi

Geçtiğimiz günlerde Kendimden ve Murat’tan bana kalan vakitlerde  🙂 EOS’un grafiklerini inceleme ve emir güncelleme fırsatı bulmuştum. O gün yazdığım yazının başlığı şöyle idi:


EOS’un 3.05 barajı

Yazı içinde ise kendimce, cause ~ effect bağlantıları kurup şöyle demiştim:


Bu şu demek;
Bir zirve varsa, %50 ve %38 noktalarına ALIM emri girmek faydalı olabilir 😉

Ve sonu ise şöyle bitiyordu:


Koşullu emirlerini girmek şartıyla, Kum Saati ile ALIM yapmak riski çok az bir şekilde kazanç ihtimali sunabilir.


Görsel


Çok derine girip konuyu dağıtma niyetinde değilim ama linkini verdiğim videoda da geçtiği üzere; Seçim, bir yanılsamadan ibaret. Gücü olanların olmayanlara sunduğu bir illüzyon sadece.

 

 

Benzer şekilde Bitcoin’deki ya da EOS’taki yükselişleri tetiklemek, -sağlam bir organizasyon yoksa – sıradan kullanıcıların yapabilecekleri bir iş değil.

Dolayısı ile STEEM’in EOS’un ya da Bitcoin’in yükselmesi için yapabileceğimiz çok bir şey yok.
AMA
Yükselişler başladığında, Üst Kat düğmesine basmış olan balinaların asansörüne sıvışmayı deneyebiliriz 🙂  

Veya genel olarak, yemeğe ne zaman çıktıklarını takip edip olası çizelgeler hazırlayıp, yemek gongunu çaldıklarında açık büfeden bir şeyler atıştırmaya çalışabiliriz.

Bunlar, dünyayı illuminati yönetiyor geyikleri değil.  2013’ten bu yana “bizatihi su içinde yüzerken” yapılmış gözlemlerden süzülenler.


Bkz: Araçlara LPG takmanın önce yasaklanması, Aygaz gibilerin hazırlıklara başlamasıyla serbest oluşu.


 

EOS 3.0 psikolojik barajını aştı ve 3.80’den bi smaç bile attı. Coin Ayıklama kriteri olarak zor zamanlarda ayakta kalmak önemli. Dahası, ufacık iyileşme sinyalinde depara çıkıp, diğerlerinin %5 yükseldiği yerde, %15 yükselmek, ciddi bir cetvel olsa gerek.

 

–Olası tepki satışlarına karşı tedbir almak önemli.

–Hatta -olursa- bu satışlar esnasında Kum Saati ile düşüş fırsata dönüştürülebilir

–EOS özelinde konuşursak, bir sonraki hedef 4.15 bölgesi olabilir. Buna göre Kademeli alım ve satım emirleri girilebilir.

–Beklenen Nasdaq, NYSE ya da ETF haberlerinden biri bile olumlu olursa, EOS aynı gün içinde bile güzel fırsatlar sunabilir. İsteyenler abartıp “alarm kurabilir” 😉


Direk ya da dolaylı olarak burada anılan hiç bir şey,
Yatırım Tavsiyesi Değildir.
Yapacak Olduğunuz Her Türlü İşlemin Tüm Sorumluluğu
Kendinize Aittir.

Sevil(e)meyen NodeJs için Notlar

Daha ilk denediğimde; Python’u, Php‘yi, jQuey‘i ve Arduino‘yu çok sevmiştim. Elbette bazen kurulum esnasında, bazen de  dilin mantığına ve imlasına alışırken sorunlar çıkıyor ama bunları çözmek orta zorlukta bir bulmaca gibi çözmesi sıkıntıdan çok keyif bile veriyor denilebilir.

Ama Flappy Bird gibi ilerleme sürecini her dakika engelleyip, insanı germekten başka bir işe yaramayan ama bir şekilde bir süreliğine popüler olmuş şeyler oluyor. NodeJS de Flappy Bird’den ya da Rober Hatemo’dan farklı değil.


Görseller: nodejs, flappy bird


Sıfırdan NodeJS yazacak ne zamanım var ne ekibim. TAR niyetlenmesi dışında, tamama erişmiş bir tecrübem de yok. Ancak NodeJS’e İTİRAZ etmeye devam ediyorum 🙂

Bununla beraber, Pyhton3.7 ya da Nodejs gerektiriyor.
Python 3.7+ 32bit kabul etse de gerekli bazı kütüphaneler 64bit istiyor. Kullandığım pc’de çok fazla şey yüklü ve ayarlı olduğu için değiştiremiyorum da.. Bu yüzden Node’a mecbur kalıyorum..

 


Kendime ve bir şekilde Node’a bulaşmak zorunda olanlara notlar..

NodeJs Open SSL (32bit) Kurulumu denemeleri..

https://slproweb.com/products/Win32OpenSSL.html
adresinden

Win32 OpenSSL v1.1.1a Light MSI (experimental)
indir, kur

Kurarken yolu

C: \ OpenSSL-Win32

olarak ayarla

————-

Ortam değişkenlerinden PATH’a OpenSSL’in yolunu gir
(bilgisayarım > özellikler > gelişmiş sistem ayarları > gelişmiş > )

Sistem değişkenleri arasından PATH‘i seç
İkinci satırın sonuna, noktalı virgül ve ardından
C:\OpenSSL-Win32 
ekle

—-
yeni’ye tıkla

üste:
OPENSSL_CONF

alta:
C:\OpenSSL-Win32\bin\cnf\

ekle

——–

cmd aç

openssl

yazıp enter’a bas

Her eksik olarak söylediği .dll dosyasını google’da ara 32bit versiyonlarını indir

yeniden openssl

yazıp enter’a bas, eksik derse yine indir.. (17-20 tane olabilir)
https://www.dlldosyaindir.com/dllkategori/a-ile-baslayan-dll-dosyalari/?v_sortby=views&v_orderby=desc

nihayet şöyle olmalı

C:\Users\Arwen>openssl
OpenSSL>

sondaki
OpenSSL> ‘i görünce olmuştur

YEY! sonunda 😉

////***** başa dönmek gerekirse **
Windows 32 bit ve Windows 64 bit için CMD komut penceresine sfc /scannow komutunu girerseniz, bilgisayarınızda bulunan tüm DLL dosyalarını onarırsınız.
****///

———————–

Node kısmına geçelim

cmd/konsolda

npm install pem

yazıp, pem modülü kur

app.js içine şunları yazarak dene:

var https = require('https')
var pem = require('pem')
var express = require('express')
pem.createCertificate({ days: 1, selfSigned: true }, function (err, keys) {
if (err) {
throw err
}
var app = express()
app.get('/', function (req, res) {
res.send('o hai!')
})
https.createServer({ key: keys.serviceKey, cert: keys.certificate }, app).listen(443)
})

cms/consol’da
node app.js
yazınca openssl config failed: error:02001002:system library:fopen:No such file or directory

ya da

openssl config failed: error:02001003:system library:fopen:No such process

benzeri bir hata veriyorsa

CMD açıp
set OPENSSL_CONF=

yaz.

nodejs dinlemeye başlayacak.

———–

nodejs dinlemeye başlıyor ama
tarayıcı da ERR_CONNECTION_REFUSED hatası geliyorsa
httpS portu 443 olduğu için node’un dinlediği portu düzenle

—–
bağlantı reddetme aşıldı ise
ERR_SSL_PROTOCOL_ERROR
hatası verebilir.

Bu hataya kadar sevinmek lazım, zira güvenlik sertifikası kısmına geldik demektir. Şu aşamada olay çözülecek gibi duruyor ama “nasıl”ı hakkında henüz fikrim yok.

Flappy Bird gibi başa dönmem umarım 🙂

Kabul ve İtiraz

Bir kabul ve bir itiraz:

Kabul: Bir prof. ya da doçent değilim.

Ancak şu meseleye İtiraz ediyorum: “Bir konu hakkında, o konunun uzmanı isen konuşabilirsin. Aksi halde sus ve  bilenleri dinle.”


Görsel: Kuczynski


 

Çoğu itiraz meselesi, doğruyla karışık bir yanlış veya teknik durduğu için çoğu kişi çoğu zaman bu hataya düşebiliyor.

Örneğin, bir kalp cerrahı “Çocukların, istese de susamayan ağlamaları, kalp kapakcıklarındaki delikle ilgilidir” der. Bir beyin cerrahı ise buna itiraz eder, “hayır, bu hipofizin yanlış hormon göndermesiyle ilgilidir” der. Ve tuzak çalışır: “Efendim herkes kendi uzman olduğu alanda konuşsun, ben 20 yıldır etfal-kalple uğraşıyorum, yaşadığım vak’alara göre konuşuyorum, kalp nedir kapakcıkları ne işe yarar bunların uzmanı olun öyle itiraz edin”

Burada tuzağı fark etmek güç olduğu için bi örnek daha vereyim: Alim kişi Peygamberin mucizelerinden bahsetmektedir. Bir gün namaz kılarken bilerek önünden geçen çocuğun sakatlanmasını, mucize olarak nakleder. Kafir kişi inanmadığı halde, genel anlatıya uymadığı için “Hayır böyle bir olay yaşanmış olamaz” der, itiraz eder. Ve tuzak çalışır:  “Efendim 12+ Cilt Buhari, 8+ Cilt Müslim 3+ Cilt Tirmizi hadislerini ezbere bilin ondan sonra konuşun, olay üç kitapta da nakledilir”

Yine “itiraz tamam ama, adam da bu işi çok iyi biliyor, haklı olan uzman olandır” duygusu oluşuyorsa bi örnek daha vereyim: Çırağan Kempinski’nin Michelin yıldızlı Şefi, bir yemek yapmıştır. Siz de yemeği yersiniz ve beğenmezsiniz. Ve tuzak çalışır: “Adam yıldızlı bir şef, sen ağzının tadını bilmiyorsun, sana hoşaf bile fazla” 


Görüleceği üzere iş biraz detaylı yahut teknik bir konu ise, itiraz etme kapılarını kapatacak tuzaklar çok daha kolay çalışmaya başlıyor. Ama yemek örneği tüm önermeleri çürütüyor. İstersen galaksinin en iyi şefi ol. Tuzu fazla işe kardeşim, bunun için yemek fakültesi dekanı olmama gerek yok 🙂

Başta coğrafi keşifler olmak üzere bilimsel keşifler çağını başlatan şey, “Mevcuda İtiraz” olmuştur. Doğal olarak Amerika’ya henüz gitmediğim için “Amerika ustası olarak konuşamam” ancak mevcuda razı olursam da hiç bir zaman Amerika’yı keşfedemem ve uzmanı olamam.

Orwell 😉

AHMT, Sadece Gerekli ise Lütfen..

Valize teker eklemek gibi dramatik bir örnek olmasa da; Ses sensörü yerine PIR sensörü takarak AHMT’i harekete daha duyarlı hale getirmiştik.


Bkz: #1, #2, #3#4#5#6#7#8#9#10#11#12, #13görsel


Son durumdaki kodları biraz geliştirelim.

if (biri) {
Serial.println("biri var"); kombi(ISIdeger - 3 , ISIdeger);
} else {
Serial.println("kimse yok"); }

Burada, PIR sensöründen gelecek değere göre, ısıyı kontrol edip kombiye Çalış demesi için, kombi() fonksiyonunu çağırıyoruz.

Ancak yazılımsal olarak imla hatası olmasa da mantıksal olarak öyle mi tartışılabilir. Zira koda dikkat edilecek olursa, “biri” durumuna göre tetikleniyor. Biri=1 ise kombi’yi çağırıyoruz, Biri=0 ise kimse yok yazıyoruz.

Burada sürekli hareket etmemiz lazım ki kombi() fonksiyonu tetiklensin. Aksi halde herhangi bir aksiyon olmayacak. Yani çok fazla hareket etmeden uzanmış youtube izliyorsanız, biraz sonra üşümeye başlayabilirsiniz 


Şöyle bir güncelleme yapsak?

PIR sensöründen Biri=1, değeri geliyorsa, evde hareketlenme başlamış birileri eve gelmiş demektir. Ve kitap unutma/cüzdan unutma gibi vakalar yoksa çok büyük ihtimalle evde uzun bir müddet birileri olacak demektir.

Her iki -hatta tasarruf ögesini de eklersek 3- durumu düşünerek kodlarımızı şu hale getirelim:

if ( biri > 0) {
Serial.println ("biri var");
/* // 60*5 demek: 5 dakika yanacak */
for ( k = 1; k < 60 * 5; k++ ) {
Serial.print (k);
kombi ( ISIdeger - 3 , ISIdeger );
delay (1000); /* // çalışma süresi için durmalı */ }
} else {
Serial.println ( "kimse yok" );
kombi ( ISIdeger - 3 , ISIdeger );
}

gayet kolay ve pratik bir şekilde, kombi() fonksiyonunu bir döngünün içine aldık. Ve döndü adı üstünde başa dönmeden içerisine 1 saniye bekleme koyduk. Böylece; for’un çalışma şeklini belirtirken yazdığımız  k < 60 * 5 kısmında 5 yerine 10 yazarsak 10 dakika ya da Ne kadar süre boyunca kombi()’yi kontrol etmesi gerektiğini ayarlamış oluruz.

Dikkat! 10 dakika boyunca kombi yanacak demiyorum. 10 dakika boyunca kombi() fonksiyonunu çağıracağız.

Aradaki fark ne ki?

Birisinde,
hareketi algıladığında kombi yanacak.
10 dakika sonunda
yeniden hareketi dinlemeye(?) başlayacak.

Diğerinde,
hareketi algıladığında kombi’nin çalışmasına gerek var mı bakacak,
zaten istenen sıcaklık aralığında ise kombi yanmayacak
ama ortam sıcaklığı evde birisi varken olması gereken sıcaklıktan düşükse kombi yanacak.

// evet daha karpuz kesmedik,  evde birisi yokken olması gereken min ve max sıcaklık aralıklarını da kodlarımıza ekleyeceğiz 😉 //ki evde kimse yokken tümden kapanıp, eve birisi geldiğinde iyice buz olmuş evi ısıtana kadar millet hasta olmasın..

Coin Ayıklama

Coinlerin Ayıklanması


Eskilerin şöyle bir sözü var malum; İyi dost kara günde belli olur.

Yılların tecrübesinin damıtılıp, bir cümleye ziplenmiş hali olan bu artık demode gibi dursa da pek ala geçerliliğini korumaya devam ediyor.

En başta Bitcoin olmak üzere tüm coin piyasası son bir yıldır efsane düşüşler yaşadı. Her gün bir yenisi çıkan ICO’ların, vazo kırdığı için ayaklarının altında yumurta var gibi yürüyen kediler misali, sesi soluğu çıkmıyor. Silikon vadisinin kuluçka merkezlerinde bir sonraki coşkuya kadar, depolarını şarj etmekle meşguller.

Piyasaya çıkma hazırlıklarında olanlar için durum böyle. Fırtınaya yakalanmış olanlar içinse SINAV ZAMANI.

20.000 dolar’dan 3.000 dolar’a gelmek demek, piyasanın %85 ‘lik değer kaybına uğraması demek. Biraz saman alevi durumu vardı denilebilir, lale çılgınlığı yaşandı da denebilir. Öyle varsaysak bile 10.000 dolara göre %70’lik, 5000 dolara göre de %40’lık bir oran söz konusu.

// Veriler, Görsel

 

Fırtınada Ayakta Kalmak


Şimdilerde yaşadığımız ülkenin güney sahillerinde de görmeye başladığımız ama daha çok haberlerde/filmlerde gördüğümüz kasırgalar olur hani.. Önüne gelirse savurur, arabalar, ağaçlar, çatılar hatta evlerin tamamı bazen..

Bu havalarda yıkılmadan ayakta kalanlar, temelleri yahut kökleri sağlam atılmış, gövdesi de mukavemetli olanlardır.

Coin piyasalarında 2017’nin sonunda başlayan ve bir yılı aşkın süredir devam eden böyle bir kasırga var. Bu süreçte ayakta kalanlar, gelecek için daha emin adımlarla ilerleyecek coinler olacaktır. (Ya da yıkılanlar: PAY1, PAY2)

-Elbette şu dakikan sonra her şey ters gidebilir ve o sağlam direncine rağmen tepe taklak olabilir elbet ama yine de- ard arda bir kaç fırtınaya göğüs germiş coinlere daha pozitif bakabiliriz.

Bakalım…

1 Ocak 2014 ve 1 Ocak 2015 kıyaslamasında ilk 10 ve ilk 20 coin..


1 Ocak 2015 ve 1 Ocak 2016 kıyaslamasında ilk 10 ve ilk 20 coin..


1 Ocak 2016 ve 1 Ocak 2017 kıyaslamasında ilk 10 ve ilk 20 coin..


1 Ocak 2017 ve 1 Ocak 2018 kıyaslamasında ilk 10 ve ilk 20 coin..


1 Ocak 2018 ve 1 Ocak 2019 kıyaslamasında ilk 10 ve ilk 20 coin..



 

Her listede adı geçen coinler hangileri acaba?

Bitcoin
Litecoin

Şayet “1 yıllığına listede olmayabilir” gibi bir esneklik sağlanırsa, geçtiğimiz 5 yılın en az 4’ünde ilk 20’de yer almış coinler şöyle:

Bitcoin
Litecoin
Ethereum

Dash 
Monero
Stellar

Görece yeni coinlere haksızlık yapıldığı iddia edilebilir ve bunun doğruluk payı olabilir. Bunun için yıllar bazında değil de aylar bazında bir kıyaslama yapılabilir belki..

EOS’un 3.05 barajı

Uzunca bir süre 18 Aralık’ı beklemiştik.

Geldi. Ve daha önceki tahminlerimizi ve beklentileri boşa çıkarmayacak şekilde, coin piyasalarında bir yükseliş oldu.

 

EOS özelinde bu yükseliş, %75 gibi hayli yüksek bir değer kazancı sağladı. 18 Aralık değil de 7 Aralık itibariye bakıldığında ise bu oran %100’ü buluyor.

Bu toparlamanın zirve noktası, aynı zamanda psikolojik de bir baraj olan 3,0 olarak gerçekleşti. // Yukarıdaki grafik, Binance’tan alınan verilere göre düzenlendiği için, Binance’de zirve 3,08 ancak aramızda 5-10 kuruşun lazfı olmaz sanırım 😉

Elbette işin doğası gereği birileri karını almak isteyeceği için bu olumlu akış öyle ilanihaye sürüp gidemezdi ve gitmedi de.  Karşısına çıkan güçlü bir engelde şelale formunda düştü.

Belki 100 defa yazdım ama yine yazacağım; Koşullu emir kullanan birisi, her yükseliş sonrası, StopLoss noktasını daha yukarıya taşırsa, bu düşüşten etkilenmemiş olur.

Yeri gelmişken, son bir kaç gündür gerçekleşen yükselişin ardından HEMEN ŞİMDİ böyle bir stoploss koşullu emiri girebilirsiniz.

Şubat sonu ya da Mart sonu gibi olumlu bir ETF haberi gelecek olursa, bu haber öncesi sağlam bi düşüş olabilir. Hazır bir merdiven çıkmışken, yeni bir düşüş dalgasına kapılmanın gereği yok. Hem böyle bir stoploss emri girerek, olası düşüşlerde elinizde ki coin miktarını da arttırma şansınız olur 😉


Zirve sonrası düşüşte bilin bakalım EOS nereye kadar düştü?

ALTIN ORAN seviyelerine.

Bu şu demek;

Bir zirve varsa, %50 ve %38 noktalarına ALIM emri girmek faydalı olabilir 😉


Bundan sonra?

Bunu kesin olarak bilme elbetteki yok. En azından kafamızın içinde quantum chipler taşıyana kadar 🙂

Olası tahminler şöyle olabilir:

Son bir kaç günlük yükselişte Bitcoin ~+%6 ‘yı gösterirken EOS ~+%12 seviyelerini gösteriyordu.

An itibariyle yeniden 2.77 seviyelerine gerilemiş olsa da 3,0 psikolojik barajına hayli yakın.

Koşullu emirlerini girmek şartıyla, Kum Saati ile ALIM yapmak riski çok az bir şekilde kazanç ihtimali sunabilir.

AHMT, Kalk salonda biri var galiba :) – İnovasyon

Son yazıdaki Mertcan’ın, çocukların ciğerini solduran ailelere atarlanmasından da anladığımız üzre, geniş alanlar önemli 😉 Biz de elimizdeki cihazın hafızasını optimal kullanmak için;

var yok veya doğru yanlış yahut 1/0 durumları için bool
2, 3, 5, 8, 18, 50, 150, 255 gibi değerler için byte
± 32768 arası için için int
0 – 65536 arası için unsigned int
±  2,147,483,648 arası için long
0 – 4,294,967,295 arası için unsigned long

şeklinde tanımlamalar yaparsak, ileride sorun yaşama ihtimalimiz azalır.

Bu yüzden hatırlarsanız,


Bkz: #1, #2, #3#4#5#6#7#8#9#10#11, #12görsel


Şimdi hareket / PIR sensöründen gelen değerleri, yorumlatalım..

analogRead ile değişken değerleri okurken (örn: sıcaklık, basınç..), digitalRead ile evet/hayır – 1/0 şeklindeki ikili değerleri okuyuyoruz.

biri = digitalRead(pir);

Tabi buraya bir değer gelmesi için, öncesinde  PIR sensörünün Data pinini ( + data -), Arduino’nun 6 dolu Digital pinine fiziksel olarak bağlıyoruz.

bu şekilde biri ‘nin değeri PIR’ın data değerine eşit olacak..
Yani Salonda hareket varsa 🙂 biri = 1 olacak

Ekranda görelim: Serial.print("biriDegeri:"); Serial.println(biri);


Alogaritmaların EN temeli olan IF ile biri hakkında dedikodu yapalım 🙂

Eğer biri, yakışıklı ya da güzelse.. Yok yok öğle değil 🙂

Eğer biri =1 ise, demek ki bir salonda bi hareket vardır. Hemen polisi arayalım.
Tamam tamam.. 🙂 Bunu ekrana yazalım.

if(biri) {
Serial.println ("biri var");
} else {
Serial.println ("kimse yok");
}


İnovasyon

Tekerlek ne zaman icat edildi? MÖ 3000 civarı.

Bavul, 1000 yıl önce?

Peki Tekerlekli Valiz? Daha dün!

> > içten yanmalı motora sahip ilk otomobilin 1885 yılında yapıldığını referans alırsak tekerlekli valiz neredeyse 100 yıl sonra 1972 yılında icat edilmiş. arada atom bombası yapılmış, internet kurulmuş, aya kadar bi arkadaşa bakıp çıkılmış.

Piyasadaki, kablolu ya da kablosuz, kombiyi kontrol eden tüm termostatlar Sadece ISI’yı ölçüp buna göre kombiyi yönetiyor. Biz ise Hareketi de dahil etmiş olacağız. (Ki takip edenlerin bildiği üzere artı bir de Saat olayını ekliyoruz malum. // Oldu olacak, olmuşken Kablosuz olsun.)

Valize teker eklemek kadar basit ama Devasa bir değişiklik durumu olur mu bilmem ama Kombinin yönetimini harekete bağlamak için şu sade kodları yazabiliriz:

Tabi bu haliyle sadece harekete ve sonrasında PIR’dan 15 saniye boyunca gelecek sinyale duyarlı olmuş oldu, hareketi algıladıktan sonra belli bir süre çalışması için biraz elden geçirmek lazım..

Dil Milliyetçiliği – pIR Sensörü bozuk mu Sürekli 1/High Gönderiyor

Tanımlar aşağıdaki gibi olacak ama Başlık hakkında bir kaç kelam etmek isterim detaya geçmeden önce..


 

Bir ırkı, ırk yapan en temel şey sanırım Dil. Bu yüzden sağda solda dilini kaybeden özünü/ülkesini/medeniyetini..  kaybeder gibi sözler duyuyoruz. Tarih kitaplarını falan karıştırsak konuyla ilgili bir sürü şey çıkar sanırım. Fakat o kadar maziye gitmeye gerek yok. Günümüz dünya küresine/haritasına bakmak da sözün ne kadar doğru olduğunu gösterebilir.

Bununla birlikte, parti meselelerinden uzakta, dünyanın herhangi bir ülkesindeki her hangi bir kişinin aşırı milliyetçi olduğunu biliyorsam, o kişinin konulara çok dar açıdan baktığını iddia edebilirim. Bakış açısı daha da darsa prof bile olsa pek ala cahil olduğunu iddia edebilirim. Buna çok içerlerse, en azından günümüz ve gelecek adına işlevi kalmamış bir beyin olduğunu söyleyebilirim //O da beni kendi ülkesinin vatan haini ilan eder 🙂


Bkz: #1, #2, #3#4#5#6#7#8#9#10, #11görsel


 

Diyeceksiniz ki “E be kardeşim ‘Konuşur gibi Türkçe Kod’ serisinde 14 yazı yayınlayan sen değil miydin?”

Evet benim. Mesele şu ki Japonya’da doğmuş olsa idim, “Kodlarımızı Japonca Yazabilmek için Shodo 書道 kütüphanesi” adında yine 14 yazılık bir seri yazabilirdim.

Benim tercihime bağlı olmadan Japonya’da doğduğum için Japonca konuşuyor olmak
ile
Japonya’da doğdum diye geçmişten günümüze tüm Japon imparatorlarını ve günümüz Japon ırkını Kutsayıp, herkesten üstün görmek arasında merih kadar fark var.


Çok fazla Türkçe kaynak olmadığı için, yazının başlığını özellikle seçtim. Hata aramalarında çıksın diye. (Daha dün akşam; komşunun çocuğu kendini oyununu yapmaya istekliydi fakat karışımıza çıkan sayfaların İngilizce olması hevesini kırdı.)


 

pIR Sensörü sağlıklı çalışmıyor 1/High Gönderiyor

Bu sorun 3 hafta belki de 1 ay kaybetmemize sebep oldu. Ama sorun da çözümü de Çok Komikmiş  

Geçen yazılarda geçtiği üzere sensörün üzerinde 3 tane pin, iki tane de ayarlama düğmesi/potansiyometresi var.

Artı(+) Eksi(-) Data(↕) kablolarını DOĞRU bağladığımız halde, sensör olması gerektiği gibi çalışmıyor. Sanki sürekli hareket varmış gibi Sürekli 1/high gönderiyordu. Tak çıkar yer değiştir bir sürü şey denedik. Nihayet sensörün bozuk olduğuna kadar verdik 🙂

Meselenin aslı ise komik dediğim kısım: Şimdi düşünün, hareketle otomatik yanan bir ışık sizin hareketinizle yandı. Hemen 2 saniye sonra sönüyor mu? Hayır elbette en az bir kaç+ dakika yanıyor.

Sensörü takıyoruz, doğal olarak bu esnada minik de olsa hareket algıladığı için HIGH veriyor. 2 Dakika beklesek/beklemek aklımıza gelse, olay çözülecek aslında ama biz güya test etmek için elimizi yeniden önünden geçirip hareket sonrası LOW gelmesini bekliyoruz.  Oysa 2 dakika sonra bitecek HIGH’ın süresini daha da uzatmış oluyoruz. Ve diyoruz ki;  sensör bozuk, sürekli high gönderiyor 


Hareket sensöründen gelen değeri bu kodlarla okuyacağız. Ekrana sürekli biriDegeri: 1 yazarsa panik yapmayın 🙂 ya biraz bekleyin ya da Sarı Düğmelerden, alttan bakınca soldakini çevirip süreyi 15 saniyeye kadar düşürün.


 

Bu kısımda ise dikkat çekmek istediğim bir nokta var.

Ne yazık ki youtube’da ve değişik sitelerde kod yazan arkadaş, her önüne gelen yere

int degisken_adi;

yazıp geçiyor. Bu örnekte mesela, PIR’dan gelecek duruma göre, odada birisi olup olmadığı durumuna bakacağız. Yani, ya VAR ya da YOK. Makina için BİR ya da SIFIR  bu kadar. Neden sadece 2 bit yer kaplayacak bir işlem için 32678 bit kullanalım ki? Böyle bir örnek için
bool degisken_adi; gayet yeterli ve de verimli olarak işimizi görebilir.

Sonra, makina kilitlendi.. dondu.. durduk yere bozuldu vs.  Yapmayın efenim olmaz böyle, cihaz nefes alsın, kendisine biraz oyun alanı kalsın 🙂