Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
5
Cevap
728
Tıklama
0
Öne Çıkarma
Role Çektirme Ardiuno
F
4 yıl
Teğmen
Konu Sahibi

Arkadaşlar merhabalar,,

butona basınca role 1 sn çekip bırakmasını ve bir daha butona basınca sistemin durmasını istiyorum
Youtube da araştırdım bulamadım.

Sadece butonla çalıştırma ve kapatma sistemi var.




/*
 * This is the Arduino code for push button to push Fade ON and Push Fade OFF a and LED
 * 
 * Original code was to turn ON and OFF AC bulbe. watch video instruction on video
 * Be carefull working with AC is dangrous. Disconnect from AC power when working and wear protective gloves when touch the AC components.
 Update Oct 25, 2019 for John M.
 * 
 * Written by Ahmad Nejrabi for Roboja Video, www.Robojax.com
 * Date: Dec 14, 2017, in Ajax, Ontario, Canada
 * Permission granted to share this code given that this
 * note is kept with the code.
 * Disclaimer: this code is "AS IS" and for educational purpose only.
 *
 * 
 */

const int ONTime =4000;// time for Fade ON
const int OFFTime = 4000;// Time for Fade OFF
int pbuttonPin = 2;// connect output to push button
int LEDPin = 3;// Connected to (LED) this must PWM enabled pin that has "~" beside it

int val = 0; // push value from pin 2
int lightON = 0;//light status
int pushed = 0;//push status


void setup() {
// Robojax.com code and video tutorial for push button ON and OFF
 Serial.begin(9600);
 pinMode(pbuttonPin, INPUT_PULLUP); 
 pinMode(LEDPin, OUTPUT);
 digitalWrite(relayPin, LOW);// keep the LED OFF initially
}

void loop() {
// Robojax.com code and video tutorial for push button ON and OFF
 val = digitalRead(pbuttonPin);// read the push button value

 if(val == HIGH && lightON == LOW){

  pushed = 1-pushed;
  delay(100);
 }   

 lightON = val;

   if(pushed == HIGH){
    Serial.println("LED fading ON");
    doFadeON();// fade ON 
    
   }else{
    Serial.println("LED fading OFF");
    doFadeOFF();
  
   }   

// Robojax.com code and video tutorial for push button ON and OFF

 delay(100);
}

/*
Written by Ahmad Shamshiri 
This funciton fades ON an LED to ONTime
*/
void doFadeON()
{
  int step =ONTime/255;
  for(int i=0; i<255; i +=step)
  {
    analogwrite(relayPin, i);
    delay(255)
  }

}


/*
Written by Ahmad Shamshiri 
This funciton fades OFF an LED to OFFTime
*/
void doFadeOFF()
{
  int step =OFFTimeTime/255;// 
  for(int i=255; i>0; i -=step)
  {
    analogwrite(relayPin, i);
    delay(255);
  }
https://robojax.com/learn/arduino//
https://www.youtube.com/watch?v=7CCSRs5bvH0&feature=youtu.be

}


Bu kodun neresine butona basınca rolenin 1 sn çekip 3 saniye beklemesini ekleyebilirim





< Bu mesaj bu kişi tarafından değiştirildi ftekinsen -- 9 Ekim 2021; 12:36:39 >

S
4 yıl
Binbaşı

Bunun için arduino fazla gelir.
Bir buton bir röle bir kondansatör işini görür.



< Bu ileti mobil sürüm kullanılarak atıldı >

F
4 yıl
Teğmen
Konu Sahibi

Hocam bence yanılıyorsunuz, bunun iki butonla da yapılabileceği kanısındayım. Çok yeniyim ama bşr butona basınca sistem başlıcak, diğer buton A basınca kapatma zaten basit bir sistem,



< Bu ileti mobil sürüm kullanılarak atıldı >

H
4 yıl
Çavuş

Tek butonlu bir devrenin röle ile beslediği bir sistem,
butona basınca, normalde çalışan röle 1sn kapanacak ve tekrar çalışacak,
tekrar basınca da röle kapanacak ve sisteme elektrik gitmeyecek, öyle mi ?



F
4 yıl
Teğmen
Konu Sahibi

Hocam tek veya çift buton sorum değil, ben tuşa.basınca istediğim komutların çalışmasını diğer tuşa basınca sistemin stop etmesini istiyorum



< Bu ileti mobil sürüm kullanılarak atıldı >

H
4 yıl
Çavuş

Arduino - Button - Debounce | Arduino Tutorial (arduinogetstarted.com)

Yukarıdaki sitenin en altındaki kod bu,
devreyi de sitedeki gibi yaparsan çalışacaktır,
kullanacak olduğun pinlerin numarasını yazmayı unutma, buradaki 6, 7 ve 13



#include <ezButton.h>
ezButton button1(6);
ezButton button2(7);
const int role=13;
void setup() {
pinMode(role, OUTPUT);
button1.setDebounceTime(50);
button2.setDebounceTime(50);
digitalWrite(role, HIGH);
}
void loop() {
button1.loop();
button2.loop();

if(button1.isPressed()) {
digitalWrite(role, LOW);
delay(1000);
}
if(button1.isReleased()) {

}
if(button2.isPressed()) {
digitalWrite(role, HIGH);
}
if(button2.isReleased()) {

}
}


bu da ezbuton kütüphanesi (butonlu devrelerde kullanılır)
ezButton - Arduino Libraries





< Bu mesaj bu kişi tarafından değiştirildi hllkntrc -- 12 Ekim 2021; 19:23:41 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.