1. Ez a weboldal cookie-t használ. Az új EU szabályozásnak megfelelően ez az üzenet az első látogatáskor megjelenik.
    A weblap további használatával automatikusan elfogadod, hogy az Akvakertész.hu Fórum cookie-t használ.
    Az Akvakertész Fórum csapata Learn More.
  2. Most regisztráltál, de nem tudsz privát üzenetet küldeni?

    Kérjük olvasd el milyen korlátozások vonatkoznak rád, miután regisztrációd jóvá lett hagyva.
    Regisztrációs korlátozások

    Értesítés elrejtése

Építsünk akváriumvezérlőt Arduino-ból

Kategória: '"Csináld magad" (DIY) - barkács megoldások és tech', témanyitó: Victor, téma nyitása: Jan 4, 2013.

  1. Polip112
    Épp nem fórumozik ...

    Polip112 Tapasztalt kertész

    Tag:
    Okt 6, 2013
    Hozzászólások:
    99
    Kedvelik:
    35
    Hely:
    Komló
    Sziasztok! Szeretnék egy hőmérőt üzembe helyezni. Tesztelés gyanánt össze is állítottam egy uno+Ds18b20-as kombót. Elvileg működik is de rendszertelen időközönként a mutatott hőmérséklet leugrik - 127 C fokra. Mi lehet az oka? Próbáltam másik uno-t másik hőmérőt de mindig ugyanaz. Valakinek ötlete?

    Tapatalkkal küldve az én LG-D620 eszközömről
     
  2. Nowayback
    Épp nem fórumozik ...

    Nowayback Új regisztrált

    Tag:
    Okt 11, 2016
    Hozzászólások:
    3
    Kedvelik:
    0
    Hely:
    Kaposvár
    Általában hosszú kábel okozza, vagy a felhúzó ellenállás hiánya.
    Így valahogy:
    http://chipenable.ru/images/stories/articles/DS18B20/1-podkluchenie-ds18b20-ds18s20.png
    Ha hosszabb a kábel, érdemes próbálkozni kisebb ellenállással (2K2), de 1K alá ne menj.

     
    Utoljára módosított: Okt 30, 2016
  3. Polip112
    Épp nem fórumozik ...

    Polip112 Tapasztalt kertész

    Tag:
    Okt 6, 2013
    Hozzászólások:
    99
    Kedvelik:
    35
    Hely:
    Komló
    Köszi a segítséget, úgy néz ki a felhúzó ellenállás csökkentésével megoldódott a probléma, mivel a gyári kábelhosszal illetve a leírásokban szereplő 4,7K-s ellenállással használtam eszembe sem jutott hogy ez lehet a gond.
     
  4. Laki12
    Épp nem fórumozik ...

    Laki12 Kertész tanonc

    Tag:
    Máj 21, 2016
    Hozzászólások:
    33
    Kedvelik:
    11
    Hely:
    Budakeszi Arany János u. 3
    Még a buszsebesség csökkentésével lehet az ilyen problémákon segíteni. Kisebb sebességnél a nagyobb ellenálláson keresztül is fel tud menni a vonal logikai '1'-be.
     
    Polip112 kedveli.
  5. kslszl
    Épp nem fórumozik ...

    kslszl Kertész szaki

    Tag:
    Jan 11, 2015
    Hozzászólások:
    158
    Kedvelik:
    105
    Hely:
    Balatonfőkajár
    Sziasztok!

    Egy kis segítségre lenne szükségem, nagy mennyiségű adatot szeretnék küldeni serialon az ardura de úgy néz ki kevés a soros buffer.
    Valakinek esetleg valami ötlete?

    Köszönettel Laci
     
  6. T. Endre
    Épp nem fórumozik ...

    T. Endre Kertész szaki

    Tag:
    Dec 1, 2013
    Hozzászólások:
    335
    Kedvelik:
    162
    Hely:
    Budapest - Százados Negyed
    Buffer méretet tudod bővíteni, ha nem kell másra.

    Ha szebb megoldást szeretnél akkor csinálj packageket. (gondolom van is rá valami lib)
     
    kslszl kedveli.
  7. kslszl
    Épp nem fórumozik ...

    kslszl Kertész szaki

    Tag:
    Jan 11, 2015
    Hozzászólások:
    158
    Kedvelik:
    105
    Hely:
    Balatonfőkajár
    T. Endre kedveli.
  8. nagyharcos
    Épp nem fórumozik ...

    nagyharcos Nézelődő

    Tag:
    Ápr 29, 2013
    Hozzászólások:
    8
    Kedvelik:
    3
    Sziasztok!

    Már egy ideje kisebb-nagyobb megszakításokkal dolgozom a vezérlőmön. A közelmúltban találkoztam a NEXTION kijelzővel és ez lényeges változást hozott az eddig dédelgetett menüvezérelt projektembe. A cél karácsony, így addigra akarok előállni (és beüzemelni) az 1.0 verzióval (Arduino Mega 2560 + 7' Nextion + pH + hőmérők + teljes kontrol a világítás, co2, fűtés, hűtés, UV.... stb. felett - minden fontos paraméter kivülről állítható auto és manual üzemben).
    Természetesen közzéteszem a teljes anyagot, mivel innen indult az álom... Addig ha érdekelnek a dizájnos és egyszerűen programozható kijelzők, keress rá a NEXTON HMI-re és építs....

    Addig is egy friss tapasztalat. Beszereztem az akciós oldalról egy "Liquid PH0-14 Value Sensor Module + BNC PH Electrode Probe for Arduino" pH szenzort, és elég sokat szívtam a beüzemeléssel. Mivel a net tele van rossz és pontatlan, használhatatlan példákkal, megosztom veletek az általam jónak és pontosnak vélt kódot. Több forrásból dolgoztam, így ebben a formában többé-kevésbe új a kód (a képletet loptam :whistle:). A pH 4.01-es etalon folyadékkal 25C-on +-2 százados pontosságot sikerült kihozni belőle. Ha módosító javaslatotok van, ne habozzatok az írással...
    Természetesen a teljes programban nem delay-el van időzítve a tényleges mérés, és csak percenként 1 mérésciklus lefutás van jelenleg.

    Kód beillesztése:
    #define pHSensorPin 7
    float pH_ertek;
    
    void setup()
    {
      Serial.begin(9600);
    }
    
    void loop()
    {
      Serial.println(" * PH meres indul... *");
       unsigned long int pHkozep;
       analogWrite(pHSensorPin, HIGH);
      int buf[10];             //buffer feltöltése
       for(int i=0;i<10;i++)   // 10 mérés átlagolása
        {buf[i]=0;
        buf[i]=analogRead(pHSensorPin);
        delay(10);
        }
       for(int i=0;i<9;i++)
        {byte j=0;
        for(int j=i+1;j<10;j++)
         {if(buf[i]>buf[j])
          {int temp=buf[i];
           buf[i]=buf[j];
           buf[j]=temp;
          }
         }
       }
     pHkozep = 0;             //min és max értékek elhagyása
      for(int i=2;i<8;i++)     //6 középső érték kiválasztása
       pHkozep+=buf[i];
        float pHsensor_atlag = pHkozep/6;
       pH_ertek = mapfloat(pHsensor_atlag, 765, 665, 4.01, 7.01);   // Map the '0 to 1023' result to '0 to 14'.
       analogWrite(pHSensorPin, LOW);
        Serial.print(" PH ertek: "), Serial.println(pH_ertek);
        Serial.println(" * PH meres vege! *");
       delay(1000);
    }
    
    float mapfloat(long x, long in_min, long in_max, long out_min, long out_max){
     return (float)(x - in_min) * (out_max - out_min) / (float)(in_max - in_min) + out_min;
    }
     
    Utoljára módosított: Dec 4, 2016
    Daszkalosz kedveli.
  9. Victor
    Épp nem fórumozik ...

    Victor VIP kertész

    Tag:
    Aug 26, 2009
    Hozzászólások:
    2,653
    Kedvelik:
    1,241
    Hely:
    Várpalota, Veszprém megye
    Én ezt a progit, pontosabban, ennek alapját találtam, de azt most persze nincs meg. Ebben igazából csak az LCD kijelzés amit beleraktam. Ennél annyi pluszt látok, hogy az Offset résznél kalibrálható a pH mérő

    Kód beillesztése:
    /*
     # This sample code is used to test the pH meter V1.0.
     # Editor : YouYou
     # Ver    : 1.0
     # Product: analog pH meter
     # SKU    : SEN0161
    */
    #define SensorPin A2            //pH meter Analog output to Arduino Analog Input 0
    #define Offset 0.00            //deviation compensate
    #define LED 13
    #define samplingInterval 20
    #define printInterval 800
    #define ArrayLenth  40    //times of collection
    #include "RTClib.h"
    #include <LiquidCrystal.h>
    LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
    int pHArray[ArrayLenth];   //Store the average value of the sensor feedback
    int pHArrayIndex=0;  
    RTC_DS1307 RTC;
    void setup(void)
    {
      pinMode(LED,OUTPUT);
      Serial.begin(9600);
      Serial.println("pH meter experiment!");    //Test the serial monitor
    
    
    
    // set up the LCD's number of columns and rows:
      lcd.begin(16, 2);
      // initialize the serial communications:
      Serial.begin(9600);
      // set up the LCD's number of columns and rows:
    
    
    
    }
    void loop(void)
    {
      static unsigned long samplingTime = millis();
      static unsigned long printTime = millis();
      static float pHValue,voltage;
      if(millis()-samplingTime > samplingInterval)
      {
          pHArray[pHArrayIndex++]=analogRead(SensorPin);
          if(pHArrayIndex==ArrayLenth)pHArrayIndex=0;
          voltage = avergearray(pHArray, ArrayLenth)*5.0/1024;
          pHValue = 3.5*voltage+Offset;
          samplingTime=millis();
      }
      if(millis() - printTime > printInterval)   //Every 800 milliseconds, print a numerical, convert the state of the LED indicator
      {
        Serial.print("Voltage:");
            Serial.print(voltage,2);
            Serial.print("    pH value: ");
        Serial.println(pHValue,2);
            digitalWrite(LED,digitalRead(LED)^1);
            printTime=millis();
        lcd.clear();
        lcd.begin(16, 2);
        lcd.setCursor(0, 0);
        lcd.print("pH:");
        lcd.setCursor(4, 0);
        lcd.print(pHValue,2);
        lcd.setCursor(10, 0);
        lcd.print(voltage,2);
        lcd.setCursor(0, 0);
        lcd.print("Volt:");
     
       
     
    
           
      }
    }
    double avergearray(int* arr, int number){
      int i;
      int max,min;
      double avg;
      long amount=0;
      if(number<=0){
        Serial.println("Error number for the array to avraging!/n");
        return 0;
      }
      if(number<5){   //less than 5, calculated directly statistics
        for(i=0;i<number;i++){
          amount+=arr[i];
        }
        avg = amount/number;
        return avg;
      }else{
        if(arr[0]<arr[1]){
          min = arr[0];max=arr[1];
        }
        else{
          min=arr[1];max=arr[0];
        }
        for(i=2;i<number;i++){
          if(arr[i]<min){
            amount+=min;        //arr<min
            min=arr[i];
          }else {
            if(arr[i]>max){
              amount+=max;    //arr>max
              max=arr[i];
            }else{
              amount+=arr[i]; //min<=arr<=max
            }
          }//if
        }//for
        avg = (double)amount/(number-2);
      }//if
      return avg;
    }
     
  10. T. Endre
    Épp nem fórumozik ...

    T. Endre Kertész szaki

    Tag:
    Dec 1, 2013
    Hozzászólások:
    335
    Kedvelik:
    162
    Hely:
    Budapest - Százados Negyed

    Ezt a HMI-t én is csak ajánlani tudom. Nekem is nagyon bejött. (Azt hiszem régebben már be is linkeltem ide :D)
     
    Victor kedveli.
  11. Mouset
    Épp nem fórumozik ...

    Mouset Kertész szaki

    Tag:
    Jan 6, 2014
    Hozzászólások:
    313
    Kedvelik:
    124
    Hely:
    Budapest XX. ker Baross utca 5/A
    Sziasztok,

    szerintetek egy ilyen tápot ráköthetek egy Arduino UNO-ra?
    Azt tudom hogy 12V-is lehet, de esetleg az Amperszám okozhat-e gondot.

    220-led-tapegyseg-12v-2a-24w-fem-haz

    vagy

    221-led-tapegyseg-12v-5a-60w-fem-haz

    Az előző vezérlőnél amit csináltam ott az Arduinot 9V-s táppal hajtom, és a többi megy 12V-ról (ventilátorok).
    Ha tudnám arról táplálni, akkor ezzel kiváltanám a 9V-s külön tápot.

    Köszi a segítséget előre is.

    Üdv,
    Krisztián
     
    Utoljára módosított moderátor által: Dec 19, 2016
  12. Raiden
    Online

    Raiden Kertész tanonc

    Tag:
    Júli 24, 2012
    Hozzászólások:
    51
    Kedvelik:
    12
    Hely:
    Kisunyom
    T. Endre kedveli.
  13. ZwickCore
    Épp nem fórumozik ...

    ZwickCore Kertész szaki

    Tag:
    Aug 22, 2011
    Hozzászólások:
    109
    Kedvelik:
    50
    Hely:
    Veszprém
    Udv!

    egy kis segitseget szeretnek kerni.
    egy ideje olvasgatom mar a topicot most sikerult az utolso hozzaszolashoz ideerni :)
    Erdekes tema a vezerlo epites,meg nekemis aki annyira nem konyit az ilyen jellegu dolgokhoz,de kello erdeklodessel es kitartassal szerintem megepitheto.

    A kovetkezo akihoz szeretnek majd enis egy ilyen vezerlot osszedobni.

    Amit szeretnem hogy tudjon:
    -2 szuro van mindegyiket kulon gombnyomasra leallitani/inditani
    -lampa idozitve fel/lekapcs
    (ventik akkor indulnak mikor a pilacs)
    (nem dimmelheto csak fel/le)
    -lampa idon kivuli fel/lekapcs gombbal
    -co2 idozitve fel/lekapcs
    -aki vizofok/ido kiiras kijelzore

    (kesobb dozispumpat is szeretnek hasznalni es ahhoz is jolenne igy bovithetore szeretnem hogy ne legyen gond.
    kesobbi ph meres stb)

    A kerdesem az volna hogy mivel jarok jobban?

    Ha egyesevel osszevadaszom a dolgokat amik kellenek vagy ha veszek egy 'tanulocsomagot' es mindent megtanulva kesobb ehhez veszem meg a dolgokat?

    60napos tanfolyamot nezegetem mar de igy hogy nincs elottem igy nem olyan :)
    konkretan ezt neztem:

    tanfolyami-kezdocsomag-btanfolyami-teljes-keszletb-p-505

    ebbol is a mega ch 340 vagy r3 bar nemtudom meg mi a kulonbseg a ketto kozt.
    az sem lenne hatrany ha bluetothon tudna b4 beszelgetni a geppel mert asztali gepem van es olyan hosszu kabelrol meg nem hallottam amivel ha beepitettem is ossze tudnam dugni az ardut beepites utan :)najo..legyen 6 meter de igy egyszerubb volna.

    elore is koszi! :)
     
    Utoljára módosított moderátor által: Dec 25, 2016
  14. Raiden
    Online

    Raiden Kertész tanonc

    Tag:
    Júli 24, 2012
    Hozzászólások:
    51
    Kedvelik:
    12
    Hely:
    Kisunyom
    Minden megvalósítható, de helyedbe uno r3-at elfelejteném, sok kimenet kell. vagy a mega vagy a due
    Nekem is rendelés alatt vana Due, uno r3 már kevés lessz :D

    6m-nél van hoszabb usb mi aktív erősítővel rendelkezik :D
     
  15. Victor
    Épp nem fórumozik ...

    Victor VIP kertész

    Tag:
    Aug 26, 2009
    Hozzászólások:
    2,653
    Kedvelik:
    1,241
    Hely:
    Várpalota, Veszprém megye
    A DUE nem macerás kicsit? Azt néztem, hogy annak 3,3 volt az üzemi feszültsége, míg a többinek 5 volt, és a kütyük többsége, amit kapni a panelhoz 5 voltos.
     
  16. Raiden
    Online

    Raiden Kertész tanonc

    Tag:
    Júli 24, 2012
    Hozzászólások:
    51
    Kedvelik:
    12
    Hely:
    Kisunyom
    de igaz 3,3V
    akko nem nyert :D
     
  17. Victor
    Épp nem fórumozik ...

    Victor VIP kertész

    Tag:
    Aug 26, 2009
    Hozzászólások:
    2,653
    Kedvelik:
    1,241
    Hely:
    Várpalota, Veszprém megye
    Én is csak azért emlékeztem erre, mert van nekem is DUE, csak én USB billentyűzet emuláláshoz vettem, mert az ez és a Leonardo tudja csak.
     
    Utoljára módosított: Dec 26, 2016
  18. Raiden
    Online

    Raiden Kertész tanonc

    Tag:
    Júli 24, 2012
    Hozzászólások:
    51
    Kedvelik:
    12
    Hely:
    Kisunyom
    Én a I/O miatt néztem ki meg a jóval nagyobb órajel miatt. De akko marad a Mega


    Tapatalkkal küldve az én EVOLVEO_StrongPhone_Q7_LTE eszközömről
     
  19. ZwickCore
    Épp nem fórumozik ...

    ZwickCore Kertész szaki

    Tag:
    Aug 22, 2011
    Hozzászólások:
    109
    Kedvelik:
    50
    Hely:
    Veszprém

    Mega mennyibe jon ki?vagy rendelsz mast is ?
     
  20. Raiden
    Online

    Raiden Kertész tanonc

    Tag:
    Júli 24, 2012
    Hozzászólások:
    51
    Kedvelik:
    12
    Hely:
    Kisunyom
    Hát ez nem a reklám heje de nem itthonrol rendelek.....
     

Aktuális oldal megosztása