Son kullanma tarihi geçmiş, bayatlamış bir tarayıcı kullanıyorsanız, Mercedes kullanmak yerine tosbağaya binmek gibi... Web sitelerini düzgün görüntüleyemiyorsanız eh, bi' zahmet tarayıcınızı güncelleyiniz. Modern Web standartlarını karşılayan bir tarayıcı alternatifine göz atın.
Merhaba Arduino Leonardo hakkında birkaç sorum olacak. Öncelikle Arduino'ya bir DC motor takmam gerekiyor ve bu motorun gün içinde 50 dakika çalışıp 10 dakika durması gerekiyor. 24 saat boyunca böyle çalışmalı. Bunu nasıl yapabilirim?
Bir diğer sorum, Arduino'yu zaman ayarlı Switch olarak kullanabilir miyim? Yani tek yapması gereken zamanı geldiğinde düğmeye basacak, sonra bırakacak gibi.
Hocam, bu sefer kodu gerçekten hallettim galiba içime de sindi.
Kod'u yüklerken kodda değiştirmeniz gereken yerler var, oraları zaten yorum satırıyla belli ettim nereleri değiştirebilir nereleri değiştiremezsiniz kod üzerinde belirteceğim.
Kod saat 4-23 arası çalışıyor saat 00.00 olduğunda röleyi kapatıyor 4-23 arası boyunca 15dk çalışıp 5dk duracak şekilde yazdım fakat siz çalışma ve bekleme süresini ayarlayabileceksiniz.
Hatta çalışma saat aralığını da galiba ayarlanabilir yapabilirim.
Son düzeltmeleri yapayım kodu paylaşacağım.
C++:
#define ROLE 9 // röle pinini ayarlayabilirsiniz.
boolean role_tipi = 1; // eğer devre tersine çalışıyor ise değeri 0 yapın.
byte saat = 13; // saati ayarlayabilirsiniz (09 değil 9 şeklinde girin)
byte dakika = 7; // dakikayı ayarlayabilirsiniz (06 değil 6 şeklinde girin)
byte saniye; // ayarlamanıza gerek yok.
byte calisma = 15; // xdk çalışma süresi (dakika cinsinden yazınız) [MAKS DEĞER 255]
byte bekleme = 5; //xdk bekleme süresi (dakika cinsinden yazınız) [MAKS DEĞER 255]
byte baslangic = 4; // başlangıç saatini ayarlayabilirsiniz.
byte bitis = 24; // bitiş saatini ayarlayabilirsiniz (gece yarısı için 24 yazın)
long cals = (calisma * 60); // xdk çalışma süresi (dk saniye cinsine çevrilir) otomatik değişir.
long bekl = (bekleme * 60); // xdk bekleme süresi (dk saniye cinsine çevrilir) otomatik değişir.
void watch() // saat kodu burayı değiştirmeyin!
{
saniye++;
delay(1000);
if (saniye == 60)
{
dakika++;
saniye = 0;
}
else if (dakika == 60)
{
saat++;
dakika = 0;
saniye = 0;
}
else if (saat == 24)
{
saat = 0;
dakika = 0;
saniye = 0;
}
}
void setup()
{
pinMode(ROLE, OUTPUT);
}
void loop()
{
watch(); // saatin çalıştığı watch fonksiyonunu çağırıyoruz ve saat işlemeye başlıyor.
if (saat >= baslangic && saat < bitis) // başlangıç saati gelince çalışp bitiş saatinde durduran bunu yaparken 15dk çalışıp 5dk duran kod.
{
for (int a = 0; a < cals; a++)
{
digitalWrite(ROLE, role_tipi);
watch();
if (!(saat >= baslangic && saat < bitis)) // eğer çalışma saatleri dışındaysa döngüden çık.
break;
}
for (int b = 0; b < bekl; b++)
{
digitalWrite(ROLE, !(role_tipi));
watch();
if (!(saat >= baslangic && saat < bitis)) // eğer çalışma saatleri dışındaysa döngüden çık.
break;
}
}
else // çalışma saatleri dışında röleyi kapatan kod.
{
digitalWrite(ROLE, !(role_tipi));
}
}
Hocam, kodun üst tarafında "ayarlayabilirsiniz" yazan yerleri ayarlayabilirsiniz.
Kodu birkaç dk denedim ve düzgünce çalıştı kodu deneyip geri dönüş sağlayın.
Kodu yüklemeden önce saat ve dakikayı ayarlayın saniye kısmını ayarlamanıza gerek yok tavsiyem dakikayı 1dk ileri yapın.
Evet motoru değiştirdiğim için hız ve yön kontrolu gerekmiyor artık. Dolayısıyla dirence de gerek kalmadı. Ancak aklıma takılan şey, ben 5V röle aldım fakat motora 10v vermem gerekecek. Bu sıkıntı çıkarmaz mi? Eğer sıkıntı derseniz 12v röle ile de değiştirebilirim.
Ha anladım, ben de düşünüyorum neden 10v gibi ara değerler yok diye.
Neyse durumu biraz toparlayalım şimdi.
Harici bir motor kullanacağız ve motoru 10v ile besleyeceğiz. Bunu şimdilik pil ile yapacağım ama daha sonra 12v adaptör alabilirim (bildiğiniz bu iş yapar dediğiniz adaptör varsa link falan atabilirsiniz.) Arduino'yu 5V şarj cihazı ile (anladığım kadarıyla oluyor) besleyeceğim. Röleyi gene kullanacağım. Kod kısmında size sormak istediğim, delay komutuyla bir süre çalıştırıp bir süre durdurmak gibi bir örüntü kurabiliyoruz. Buna ek olarak, örneğin saat 23.00'a kadar 5dk çalışıp 5dk durdu. 23.00'dan sonra 9.00'a kadar kapalı kaldı ve gene çalışmaya devam etti gibi bir şey yapılabilir mi?
Ha anladım, ben de düşünüyorum neden 10v gibi ara değerler yok diye.
Neyse durumu biraz toparlayalım şimdi.
Harici bir motor kullanacağız ve motoru 10v ile besleyeceğiz. Bunu şimdilik pil ile yapacağım ama daha sonra 12v adaptör alabilirim (bildiğiniz bu iş yapar dediğiniz adaptör varsa link falan atabilirsiniz.) Arduino'yu 5V şarj cihazı ile (anladığım kadarıyla oluyor) besleyeceğim. Röleyi gene kullanacağım. Kod kısmında size sormak istediğim, delay komutuyla bir süre çalıştırıp bir süre durdurmak gibi bir örüntü kurabiliyoruz. Buna ek olarak, örneğin saat 23.00'a kadar 5dk çalışıp 5dk durdu. 23.00'dan sonra 9.00'a kadar kapalı kaldı ve gene çalışmaya devam etti gibi bir şey yapılabilir mi?
Dediğiniz şekilde yapılabilir biraz hesaplama ile bu mümkündür.
Mili saniye cinsenden çalışacağımız için sayılar çok büyük olacak bu yüzden kod kısmında bu değerleri rahat karşılayacak bir değişken kullanacağız (unsigned long) gibi.
Size verebileceğim bir link yok fakat 12v 2 ya da 3 amperlik bir adaptör edinebilirsiniz.
Hatta Arduino üzerindeki jack girişi ile direkt o 12v ile de besleyebilirsiniz ama USB girişine takmayın.
Dediğiniz şekilde yapılabilir biraz hesaplama ile bu mümkündür.
Mili saniye cinsenden çalışacağımız için sayılar çok büyük olacak bu yüzden kod kısmında bu değerleri rahat karşılayacak bir değişken kullanacağız (unsigned long) gibi.
Size verebileceğim bir link yok fakat 12v 2 ya da 3 amperlik bir adaptör edinebilirsiniz.
Hatta Arduino üzerindeki jack girişi ile direkt o 12v ile de besleyebilirsiniz ama USB girişine takmayın.
Hem Arduino'yu hem de motoru 12v ile besleyebilirsem cok iyi olur gerçekten. Bugün biraz yorgunum size de uyarsa yarın ayarlayabiliriz isterseniz kod işini.
Hem Arduino'yu hem de motoru 12v ile besleyebilirsem cok iyi olur gerçekten. Bugün biraz yorgunum size de uyarsa yarın ayarlayabiliriz isterseniz kod işini.
Hem Arduino'yu hem de motoru 12v ile besleyebilirsem cok iyi olur gerçekten. Bugün biraz yorgunum size de uyarsa yarın ayarlayabiliriz isterseniz kod işini.
Böyle bir adaptör buldum bu işimi görür mü acaba yoksa farklı bir şey mi gerek?
İşinizi görecektir bütçeniz sorun etmeyecekse 2A'lık bir tane daha iyi olur ama bu da iş görecektir, evet Arduino'nun üzerindeki jack girişini biraz araştırdım oradan 12v besleme yapabilirsiniz.
Kod işini yarın hallederiz inşallah, bugün ben de biraz yoruldum.
İşinizi görecektir bütçeniz sorun etmeyecekse 2A'lık bir tane daha iyi olur ama bu da iş görecektir, evet Arduino'nun üzerindeki jack girişini biraz araştırdım oradan 12v besleme yapabilirsiniz.
Kod işini yarın hallederiz inşallah, bugün ben de biraz yoruldum.
2A olmasının avantajı ne olur acaba? Bir tek devir olarak mı artar yoksa Arduino'yu besleme konusunda vs de yararı olur mu? Birazdan şu anki devre de akım ölçümü yapacağım kıyaslamak adına benzer çıkarsa ve yüksek akımın devirden başka faydası yoksa attığım resimde kini alabilirim sanırım.
Hocam orayı anladım ama dediğiniz gibi röleyi Arduino ile besleyecegiz. Arduinoyuda bu sefer 5V değil 12v ile besleyeceğimiz icin acaba röleyi değiştirmek mi gerek diye düşünmüştüm ama gene yanlış düşündüm herhalde