Arduino mega Siemens SQS65 acvatix 2 yollu vana kontrol

Konusu 'Arduino' forumundadır ve gezginbilge tarafından 11 Eylül 2017 başlatılmıştır.


  1. gezginbilge

    gezginbilge Üye

    Katılım:
    19 Ağustos 2014
    Mesajlar:
    3
    Beğenilen Mesajları:
    0
    Ödül Puanları:
    1
    Cinsiyet:
    Bay
    Bulunduğu Yer:
    ELAZIĞ
    Merhaba arkadaşlar.

    Başlıkta da belirttiğim gibi arduino mega geliştirme kartı ile Siemens SQS65 Acvatix 2 yollu vanayı kumanda etmem gerekiyor. Konuyu açmadan önce internette hatrı sayılır bir arama yaptım ama ne bulduğum datasheet dosyası ne de yapmış olduğum denemeler sonuç vermedi.

    İşin özeti: 2 yollu vana içerisinde bulunan pine 0 - 10 v dc voltaj vererek kontrol yapmak. Ama her ne hikmet ise manuel olarak açtığım vana enerjilendiği anda otomatik olarak kapanmakta ve tetikleme pini çalışmamaktadır.


    Bu konuda acil yardımlarınızı bekliyorum.


    Şimdiden anlayışınız ve yardımlarınız için çok teşekkür ederim.
     
  2. yavuz1712

    yavuz1712 Üye

    Katılım:
    11 Eylül 2017
    Mesajlar:
    4
    Beğenilen Mesajları:
    0
    Ödül Puanları:
    1
    Cinsiyet:
    Bay
    merhabalar elimde bir ardiuno programı var sensör algıladığında led yanıyor , bu programda sensör algıladığında 10sn 20Hz şeklinde olmasını istiyorum. bunu ekleye bilirmisiniz. yardımcı olabilecek var mı

    #define sensor_pin 3

    #define led_out_pin 6

    #define laser_out 9

    #define set_time_out 100


    unsigned int cycle=0;


    void setup() {


    pinMode(sensor_pin,INPUT);

    pinMode(led_out_pin,OUTPUT);

    pinMode(laser_out,OUTPUT);

    Serial.begin(9600);

    }



    bool new_data=false;


    void loop() {

    sensor_read();

    serial_send();

    }



    void sensor_read(){

    int time_out=0;

    if(digitalRead(sensor_pin)==HIGH){

    while(digitalRead(sensor_pin)){

    time_out++;

    delay(10);

    if(time_out>set_time_out)return;

    }

    cycle++;

    new_data=true;

    }

    }


    int laser_cycle=0;

    void serial_send(){

    if(new_data==true){

    Serial.println(cycle);

    digitalWrite(led_out_pin,HIGH);

    delay(5000);

    digitalWrite(led_out_pin,LOW);

    analogWrite(laser_out,100);

    new_data=false;

    laser_cycle=0;

    }

    laser_cycle++;

    if(laser_cycle>3200)analogWrite(laser_cycle,255);

    }
     
  3. mehmet.bey

    mehmet.bey Üye

    Katılım:
    19 Aralık 2011
    Mesajlar:
    261
    Beğenilen Mesajları:
    157
    Ödül Puanları:
    33
  4. yavuz1712

    yavuz1712 Üye

    Katılım:
    11 Eylül 2017
    Mesajlar:
    4
    Beğenilen Mesajları:
    0
    Ödül Puanları:
    1
    Cinsiyet:
    Bay
    teşekkür ederim devremi hazır sadece program yazılımı lazım onu yazabilir misiniz
     
  5. gezginbilge

    gezginbilge Üye

    Katılım:
    19 Ağustos 2014
    Mesajlar:
    3
    Beğenilen Mesajları:
    0
    Ödül Puanları:
    1
    Cinsiyet:
    Bay
    Bulunduğu Yer:
    ELAZIĞ

    @mehmet.bey vermiş olduğunuz bilgi için teşekkür ederim. Dediğiniz gibi pwm ile motor sürme işlemini denedim. An itibari ile çalışmaya başladı fakat açma veya kapama işlemini bir defa yaptığı zaman ikinci bir tetiklemeyi kabul etmiyor.
     
  6. mehmet.bey

    mehmet.bey Üye

    Katılım:
    19 Aralık 2011
    Mesajlar:
    261
    Beğenilen Mesajları:
    157
    Ödül Puanları:
    33
    Ben sensörü hiç bilmiyorum. Bu yüzden
    sensör ile ilgili yardımcı olamayacağım.

    Ancak bir pot ile pwm çıkışı alabilirsiniz.
    Alttaki linkte basit bir pot ile pwm kontrolü var,
    deneyebilirsiniz...
    http://www.mehmetbilgi.net.tr/?q=node/7
     
  7. gezginbilge

    gezginbilge Üye

    Katılım:
    19 Ağustos 2014
    Mesajlar:
    3
    Beğenilen Mesajları:
    0
    Ödül Puanları:
    1
    Cinsiyet:
    Bay
    Bulunduğu Yer:
    ELAZIĞ
    @mehmet.bey sistem otomatik/web tabanlı olacağından, doğrudan parametreler ile konumlandırma yapacak bu yüzden potansiyometre malesef kullanamıyorum. Bunun yerine arduino için 0-10V pwm devresi araştırıyorum.

    Bu arada yolu buraya düşebilecek arkadaşlar için bir hatırlatma.

    Siemens SQS65 acvatix vana motorunu dc pwm veya doğrudan 0-5 v aralığında kontrol edebilmek için M portunu arduino kartının üzerinde bulunan nötr(gnd) hattına bağlayın. Diğer türlü çalışmıyor. Datasheet dosyasında ki gibi ac nötr hattında tetikleme veremeyebilirsiniz.
     
    Yönetici tarafından son düzenleme: 13 Eylül 2017
  8. yavuz1712

    yavuz1712 Üye

    Katılım:
    11 Eylül 2017
    Mesajlar:
    4
    Beğenilen Mesajları:
    0
    Ödül Puanları:
    1
    Cinsiyet:
    Bay
    Benim istediğim tcrt5000 kızıl ötesi sensörü kullanıp buna bağlı olarak cismi algıladığında bir led e output vermesi ve bu ledin yanması gereken sürede 10sn 20hz şeklinde olmasını istiyorum. Bunun kodunu yazabilecek biri varsa çok memnun olurum !!! Acil
     
  9. mehmet.bey

    mehmet.bey Üye

    Katılım:
    19 Aralık 2011
    Mesajlar:
    261
    Beğenilen Mesajları:
    157
    Ödül Puanları:
    33
    @yavuz1712 ;
    Kod:
    
    int sensor = 2;
    int cikis  = 3;
    int debug = 4;
    
    int kontrol = 0;
    
    void setup(void)
    {
      Serial.begin(9600);
      pinMode(sensor, INPUT);
      pinMode(cikis, OUTPUT);
      pinMode(debug, OUTPUT);
    
      digitalWrite(cikis, LOW);
      digitalWrite(debug, HIGH);
    
      Serial.println("Baslangic...");
    }
    
    void loop(void)
    {
      if(digitalRead(sensor) == 1 && kontrol == 0)
      {
        Serial.println("Sensor calisti.");
        digitalWrite(debug, LOW);
        for(int a = 0; a < 200; a++)
        {
          digitalWrite(cikis, HIGH);
          delay(25);
          digitalWrite(cikis, LOW);
          delay(25);
        }
        digitalWrite(debug, LOW);
        Serial.println("Sayma bitti.");
        digitalWrite(debug, HIGH);
        kontrol = 1;
      }
      if(digitalRead(sensor) == 0 && kontrol == 1) kontrol = 0;
    }
    
     
  10. yavuz1712

    yavuz1712 Üye

    Katılım:
    11 Eylül 2017
    Mesajlar:
    4
    Beğenilen Mesajları:
    0
    Ödül Puanları:
    1
    Cinsiyet:
    Bay
    Merhabalar asagidaki programda ledin calisma suresini 10saniye 20hz olacak seklinde duzeltmeniz mumkun mu ?


    int pirPin = 3; // PIR pin
    int ledPin = 4; // LED pin
    int deger = 0;

    void setup() {
    pinMode(pirPin, INPUT); // PIR Pin'i giriş yapılıyor
    pinMode(ledPin, OUTPUT); // LED Pin'i çıkış yapılıyor
    Serial.begin(9600); //Serial Porttan veri göndermek için baundrate ayarlanıyor.
    }

    void loop(){
    deger = digitalRead(pirPin); // Dijital pin okunuyor
    Serial.println(deger); // Okunan değer seri porttan okunuyor.
    if (deger == HIGH) {
    digitalWrite(ledPin, HIGH);
    }
    else{
    digitalWrite(ledPin,LOW); // Eğer okunan değer 0 ise LED söndürülüyor.
    }

    }
     

Sayfayı Paylaş