Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

Keegi Arduino'ga ka tegeleb?

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    #16
    Vs: Keegi Arduino'ga ka tegeleb?

    Kood:
    /*  Soil Moisture measurement 
    Pole kalibreeritud
     
      
           digital   ---*
                      |
                      \
                      /
                      \ must
                      /
                      |
               R 10k  |
          GND--~~~~~~----*
                      |
                      |
                      *----> nael 1
                     
                      *----> nael 2
                      |
                      |
                      |
          Digital---------*  punane
     */
    
     */
    #include <math.h>
    #define moisture_input 0
    #define divider_top 33 // takisti, seda tuleks muuta arduino puhul, panna digital pinidesse need mõlemad digital i/o , arduino puhul mingi 10, 9 jne. 
    #define divider_bottom 32 // punane juhe. 
    
    int moisture; 
    int Koguprotsent;
    
    
    int SoilMoisture(){
      int reading;
      // set driver pins to outputs
      pinMode(divider_top,OUTPUT);
      pinMode(divider_bottom,OUTPUT);
    
      // drive a current through the divider in one direction
      digitalWrite(divider_top,LOW);
      digitalWrite(divider_bottom,HIGH);
    
      // wait a moment for capacitance effects to settle
      delay(1000);
    
      // take a reading
      reading=analogRead(moisture_input);
    
      // reverse the current
      digitalWrite(divider_top,HIGH);
      digitalWrite(divider_bottom,LOW);
    
      // give as much time in 'reverse' as in 'forward'
      delay(1000);
    
      // stop the current
      digitalWrite(divider_bottom,LOW);
    
      return reading;
    }
    
    
    void setup () {
      Serial.begin(9600);
    
    }
    
    void loop (void) {
      moisture=SoilMoisture(); // soilmoister as variable
       Koguprotsent = ((moisture/650)*100); // soil moister %s see 650 on tegelt maksimaalne value, mis mul oli kui panin anduri üleni vette, aga eks seda tuleks kalibreerida enda vajaduste jaoks
      Serial.print("Soil moisture: ");
      Serial.println(moisture);
     
       Serial.print(Koguprotsent);
       Serial.print(" % ");
    
      Serial.println();
     
    ' 
      delay(1000);
      
      
      // siia edasi muud asjad.. näiteks if (moisture < 300) jne.
      
      
      
      
    }
    Kood mida ma kasutan naelte jaoks. Analoog värgiga pidi tekkima elektrolüüs, vähemalt nii ma lugesin foorumitest. Pead ikka teadma palju tarbija tarbib, siis saad teada kas saad kasutada seda releed või mitte.

    Ethernetiga oleks veel hea teha nii, et on kaugjuhitav, aga eks see võtab vähe rohkem aega, et progremeerida, aga vaata mingi "arduino twitter" või midagi. Siis peaksid vist saama igalt pool kus on internet arduinot juhtida.

    Comment


      #17
      Vs: Keegi Arduino'ga ka tegeleb?

      //include the datetime library, so our garduino can keep track of how long the lights are on
      #include


      //define analog inputs to which we have connected our sensors
      int moistureSensor = 0;




      //define digital outputs to which we have connecte our relays (water and light) and LED (temperature)
      int waterPump = 7;




      //define variables to store moisture, light, and temperature values
      int moisture_val;




      void setup() {
      //open serial port
      Serial.begin(9600);
      //set the water, light, and temperature pins as outputs that are turned off
      pinMode (waterPump, OUTPUT);
      //pinMode (lightSwitch, OUTPUT);
      //pinMode (tempLed, OUTPUT);
      digitalWrite (waterPump, LOW);
      //digitalWrite (lightSwitch, LOW);
      //digitalWrite (tempLed, LOW);


      //establish start time
      //start_time = DateTime.now();
      //seconds_elapsed_total = 0;


      }
      void loop() {
      // read the value from the moisture-sensing probes, print it to screen, and wait a second
      moisture_val = analogRead(moistureSensor);
      Serial.print("moisture sensor reads ");
      Serial.println( moisture_val );
      delay(1000);


      //turn water on when soil is dry, and delay until soil is wet
      if (moisture_val < 850)
      {
      digitalWrite(waterPump, HIGH);
      }


      while (moisture_val < 850)
      {
      delay(10000);
      }


      digitalWrite(waterPump, LOW);


      }



      midagi on jäänud vast veel kustutamata

      http://pastebin.com/Q6eQ0ixj

      a
      nnab miskit viga
      kasvuhoone.cpp:2:10: error: #include expects "FILENAME" or <FILENAME>

      Comment


        #18
        Vs: Keegi Arduino'ga ka tegeleb?

        include võta ära. Ta eeldab et sa reaalselt included midagi (library), kuid antud juhul pole sa seda teinud.

        Comment


          #19
          Vs: Keegi Arduino'ga ka tegeleb?

          võtsin ära.Nüüd ütleb,et ei taha uploadida.
          //define analog inputs to which we have connected our sensors
          int moistureSensor = 0;
          //define digital outputs to which we have connecte our relays (water and light) and LED (temperature)
          int waterPump = 7;
          //define variables to store moisture, light, and temperature values
          int moisture_val;
          voidsetup() {
          //open serial port
          Serial.begin(9600);
          //set the water, light, and temperature pins as outputs that are turned off
          pinMode (waterPump, OUTPUT);
          //pinMode (lightSwitch, OUTPUT);//pinMode (tempLed, OUTPUT);
          digitalWrite (waterPump, LOW);
          //digitalWrite (lightSwitch, LOW);//digitalWrite (tempLed, LOW);//establish start time//start_time = DateTime.now();//seconds_elapsed_total = 0;
          }
          voidloop() {
          // read the value from the moisture-sensing probes, print it to screen, and wait a second
          moisture_val =
          analogRead(moistureSensor);
          Serial.print("moisture sensor reads ");
          Serial.println( moisture_val );
          delay(1000);
          //turn water on when soil is dry, and delay until soil is wet
          if (moisture_val < 850)
          {
          digitalWrite(waterPump, HIGH);
          }
          while (moisture_val < 850)
          {
          delay(10000);
          }
          digitalWrite(waterPump, LOW);
          }

          Fritzingu fail kah


          e
          t kui otsad naeltel koos siis peaks minema led põlema ?
          led on läbi 220r takisti digital pin7 ja teine ots on gnd
          arduino ide serial monitor näitab ainult korra : moisture sensor reads 272
          ja kogu lugu



          viimati muutis kasutaja insippo; 30 m 2011, 15:33.

          Comment


            #20
            Vs: Keegi Arduino'ga ka tegeleb?

            kood selline
            //define analog inputs to which we have connected our sensors
            int moistureSensor = 0;
            //define digital outputs to which we have connecte our relays (water and light) and LED (temperature)
            int waterPump = 7;
            //define variables to store moisture, light, and temperature values
            int moisture_val;
            void setup() {
            //open serial port
            Serial.begin(9600);
            //set the water, light, and temperature pins as outputs that are turned off
            pinMode (waterPump, OUTPUT);
            //pinMode (lightSwitch, OUTPUT);
            //pinMode (tempLed, OUTPUT);
            digitalWrite (waterPump, LOW);
            }
            void loop() {
            // read the value from the moisture-sensing probes, print it to screen, and wait a second
            moisture_val = analogRead(moistureSensor);
            Serial.print("moisture sensor reads ");
            Serial.println( moisture_val );
            delay(10000);
            //turn water on when soil is dry, and delay until soil is wet
            if (moisture_val < 700)
            {
            digitalWrite(waterPump, HIGH);
            }
            while (moisture_val < 300)
            {
            delay(10000);
            }
            digitalWrite(waterPump, LOW);
            }

            teema selline,et kui naelad potti torkan ja serial monitor näitab väksemat arvu (naelad potist väljas siis on 900 ) siis serial monitor enam ei näita midagi.Nagu jookseks kinni.moisture sensor reads 202
            võtsin usb tagant ja panin eraldi toite külge ning pin 7 külge panin läbi takisti led-i.Jama on ikkagi.Paned käima.Naela potti ja led süttib. Võtad välja naela potist ja ikka põleb edasi.
            viimati muutis kasutaja insippo; 30 m 2011, 21:16.

            Comment


              #21
              Vs: Keegi Arduino'ga ka tegeleb?

              mul ka mingi kala selle koodiga preagu. Proovin fixida.

              edit: vaatasin et enda koodis ka kalad sees ja valesti komenteeritud, tegelen sellega homme hommikul
              viimati muutis kasutaja matukaz; 30 m 2011, 22:59.

              Comment


                #22
                Vs: Keegi Arduino'ga ka tegeleb?

                http://gardenbot.org/howTo/soilMoisture/#The_local_circuit_-_simple_voltage

                h
                omme katsetan teistsugust. Mul praegu töötab nii nagu ise tahab.Saaks veel ds18b20 tempi mõõtma ja kasvuhoone luuki avama ning seda kõike ka logima, sd kaardist ja eth kilbist serverisse oleks vägagi 5+

                Comment


                  #23
                  Vs: Keegi Arduino'ga ka tegeleb?

                  vot sellelt lehelt sain endale ka koodi.
                  Kahjuks ei olnud hommikul aega.

                  Selle if asjad võiks muidugi muuta teistsuguseks mingi do ja whileks aga see sobib ka preagu, mulle vähemalt tundus.
                  Sa pead ära muutma ainult numbrid(pinid) seal, sest ma ise kasutan chipkit klooni ja seal rohkem pine ja ei viitsi hetkel sobrada arduino datasheets. Kood mul endal töötab



                  Kood:
                  /*  Soil Moisture measurement 
                  Pole kalibreeritud
                   
                    
                         analog   ---*
                                    |
                                    \
                                    /
                                    \ must
                                    /
                                    |
                             R 10k  |
                        digital --~~~
                                    |
                                    |
                                    *----> nael 1
                                   
                                    *----> nael 2
                                    |
                                    |
                                    |
                        Digital---------*  punane
                   */
                  
                  
                  #include <math.h>
                  #define moisture_input 0 // analog pin must, näiteks 0
                  #define divider_top 33 // takisti, arduino puhul digital pin näiteks:9
                  #define divider_bottom 32 // punane juhe. digital pin mingi näiteks 10
                  int waterPump =41; // led water pump, tuleks ära muuta digital pin
                  int moisture; 
                  int Koguprotsent;
                  
                  
                  int SoilMoisture(){
                    int reading;
                    // set driver pins to outputs
                    pinMode(divider_top,OUTPUT);
                    pinMode(divider_bottom,OUTPUT);
                  
                    // drive a current through the divider in one direction
                    digitalWrite(divider_top,LOW);
                    digitalWrite(divider_bottom,HIGH);
                  
                    // wait a moment for capacitance effects to settle
                    delay(1000);
                  
                    // take a reading
                    reading=analogRead(moisture_input);
                  
                    // reverse the current
                    digitalWrite(divider_top,HIGH);
                    digitalWrite(divider_bottom,LOW);
                  
                    // give as much time in 'reverse' as in 'forward'
                    delay(1000);
                  
                    // stop the current
                    digitalWrite(divider_bottom,LOW);
                  
                    return reading;
                  
                  }
                  
                  
                  void setup () {
                    Serial.begin(9600);
                  pinMode (waterPump, OUTPUT);
                   digitalWrite(waterPump, LOW);
                  }
                  
                  void loop (void) {
                    moisture=SoilMoisture(); // soilmoister as variable
                     Koguprotsent = ((moisture/700)*100); // soil moister %s see 700 on tegelt maksimaalne value, mis mul oli kui panin anduri üleni vette, aga eks seda tuleks kalibreerida enda vajaduste jaoks
                    Serial.print("Soil moisture: ");
                    Serial.println(moisture);
                   
                     Serial.print(Koguprotsent);
                     Serial.print(" % ");
                  
                    Serial.println();
                  
                  
                    delay(1000); // tuleks sättida endale sobivaks.
                    
                  
                  
                      if (moisture > 700){
                      
                    digitalWrite(waterPump, HIGH);
                    
                      }
                      if (moisture < 300){
                        
                         digitalWrite(waterPump, LOW);
                  
                    
                      }
                    
                    
                  }
                  viimati muutis kasutaja matukaz; 31 m 2011, 12:37. Põhjus: texti juurde

                  Comment


                    #24
                    Vs: Keegi Arduino'ga ka tegeleb?

                    relee on mul digitaal pin7 ja andur on analoog pin 0-s.Õhtul katsetan.Järgmise ostan kah chipkit-i

                    Comment


                      #25
                      Vs: Keegi Arduino'ga ka tegeleb?

                      Endale mulle meeldib arduino veidi rohkem, kuna chipkitil ei tööta kõik libaryd aga see eest on tal rohkem i/o.

                      Kui kannatab, siis tuleks oodata järgmise aasta alguseni, mil tuleb ametlikult müüki arduino 32 bitine versioon, muidugi ei tea mis libaryd sellele versioonile tuleb.

                      http://farm7.static.flickr.com/6164/...70e2ff44_b.jpg - seal siis pildid ja infot plaanitavatest arduinodest.

                      Comment


                        #26
                        Vs: Keegi Arduino'ga ka tegeleb?

                        Naeltega anduri põhiline probleem saab olema naela ümber tekkiv rooste ja sodi kiht, mistõttu andur hakkab vajama pidevat ümberkalibreerimist. Tööstuslikes sensorites püütakse vältida metall-muld kontakte, näiteks valades elektroodid kipsi, nagu siin http://www.cheapvegetablegardener.co...re-sensor.html. Anduri takistus sõltub tugevalt pinnasesse sattuva vee soolasisaldusest (väetised), http://www.sowacs.com/sensors/gypsum.html .
                        Hoiatus - muudan oma postituse sisu kuni 30 minuti vältel pärast postitamist.

                        Comment


                          #27
                          Vs: Keegi Arduino'ga ka tegeleb?

                          andurid peaks siis tegemaroostevabast sest tsink reageerib hästi igast happeliste asjadega

                          Comment


                            #28
                            Vs: Keegi Arduino'ga ka tegeleb?

                            Patarei seest söepulk naela asemele.

                            Comment


                              #29
                              Vs: Keegi Arduino'ga ka tegeleb?

                              Kas söepulgaga ei juhtu midagi mulla all ?

                              Comment


                                #30
                                Vs: Keegi Arduino'ga ka tegeleb?

                                to matukaz : #include <math.h> : kas see peab ka kuskil olema?

                                Comment

                                Working...
                                X