View Full Version : Ardunio ile Ec Metre ve Sıcaklık Ölçer Yapımı
kahvelekesi
10-04-2017, 23:42
Ardunio ile yaptığım bu ec ölçer basit ucuz ve sonuçlar güzel.Kalibrasyonu doğrumu yapmışım bilmiyorum ama şimdi bitirdim ve hemen paylaştım yorumlarınızı bekliyorum.İş yapar mı?
https://www.youtube.com/watch?v=JY5Z4RoZjKc
latif.07
10-04-2017, 23:50
Baya iyi olmuş çok kısa sürede tepki veriyor ama nasıl yaptığınızı, devre elemanlarını, pcb sini yazılımını da burada paylaşsaydınız belki bizde faydalanırdık şuan videoya bakara sadece calıştığını görebiliyoruz
kahvelekesi
11-04-2017, 00:20
https://www.element14.com/community/community/design-challenges/vertical-farming/blog/2015/09/03/automated-green-house-blog9--three-dollar-ec-ppm-meter-for-mcu
Kaynak burası yarın zamanım olursa detaylı video cekeceğim.
megbilgi
11-04-2017, 13:36
Merhaba
Güzel çalışma ancak EC ve SICAKLIK probları olarak ne kullanıldığını tam anlayamadım.
Hazır bir prob mu yoksa sizin tasarladığınız birşey mi ?
Kolay gelsin
kahvelekesi
11-04-2017, 19:47
Sıcaklık Arttıkça Elektriksel İletkenlik Azalıyor normal mi bu?
kahvelekesi
11-04-2017, 22:07
Arduino ec metre ihlastan aldığımız su arıtıcısının suyu 0.04 ölçtü.Direk bitkiye dökersem bitki sabahına sararıyordu.Acaba bu suya besin eriyiği koysam yine bitkilere zarar verirmi acaba?
kahvelekesi
11-04-2017, 22:23
Sayın Megbilgi yukarıdaki linkte var aslında ama tekrar sizin için resimleri ile birlikte paylaşıyorum.Sanırım linkte 4.7 k direnç yok ve sıcaklık ölçemezsiniz eklemeniz lazım.
DS18B20 Digital Su geçirmez ısı sensörü isminin uzun olduğuma bakma 10 tl civarı ve 4.7k direnç
Eski teyplerde olurdu.8 şekilli soket yuvası ve 1k direnç
MaynaVira
17-04-2017, 17:53
Merhabalar,
Öncelikle çalışmanızda başarılar diliyorum.
Ben de elimdeki (arduino, dirençler, multimetreye ait sıcaklık probe'ları vs.) malzemelerle benzer bir proje yapmayı düşünüyordum.
Başlığı gördüğüm iyi oldu. Üşenmez de bir gün işe koyulursam, ara sıra kopya çekerim belki. :p
Gelişmeleri paylaşmaya devam etmeniz dileğiyle...
merhaba,
sizin kaynak aldığınız siteden esinlenerek bende aynısını yaptım. kalibrasyon önemli.
Ardionu uyumlu ph sensörü arıyorum. bildiğiniz uygun fiyatlı sensör var mı ?
5 volt çalışan yarım metreye su basabilen ufak motorlar buldum. bu motorlarla işleri yapmaya çalışacağım.
Selamlar, söz konusu linkteki ec metreyi bende yaptım, ancak kalibrasyon sorunu yaşıyorum sanırım. Elimde kalibrasyonu kesin bildiğim sıvı yok. 3-4 farklı marka su aldım. Üzerlerindeki ec değerlerine göre kalibre etmeye çalıştım ama olmadı. **** suların üzerindeki değerler yanlış. nerede yanlış yapmış olabilirim acaba.
Selamlar, söz konusu linkteki ec metreyi bende yaptım, ancak kalibrasyon sorunu yaşıyorum sanırım. Elimde kalibrasyonu kesin bildiğim sıvı yok. 3-4 farklı marka su aldım. Üzerlerindeki ec değerlerine göre kalibre etmeye çalıştım ama olmadı. **** suların üzerindeki değerler yanlış. nerede yanlış yapmış olabilirim acaba.
dediğiniz gibi kalibrasyon problem olabilir.
benim elimde daha önce kullandığım bir ec metre vardı, ben onu doğru kabul edip kalibrasyonu yaptım. bence sizde bir yerden ec metre bulmaya çalışın. suların üzerindeki değerlerin doğru olacağını düşünmüyorum.
komple sistemi kurmama çok az kaldı. yakında fotoları paylaşacağım.
kahvelekesi
26-04-2017, 19:57
https://www.youtube.com/watch?v=R6V31rTlU4M
KOD
#include <OneWire.h>
#include <DallasTemperature.h>
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3);
//#include <LCD5110_Basic.h>
//LCD5110 myGLCD(7,6,5,3,4);
//extern uint8_t SmallFont[];
//extern uint8_t MediumNumbers[];
//extern uint8_t BigNumbers[];
int role=11;
int R1= 1000;
int Ra=25; //Resistance of powering Pins
int ECPin= A0;
int ECGround=A1;
int ECPower =A4;
float PPMconversion=0.5;
float TemperatureCoef = 0.019;
float K=2.40 ;
#define ONE_WIRE_BUS 10 // Data wire For Temp Probe is plugged into pin 10 on the Arduino
const int TempProbePossitive =8; //Temp Probe power connected to pin 9
const int TempProbeNegative=9; //Temp Probe Negative connected to pin 8
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);// Pass our oneWire reference to Dallas Temperature.
float Temperature=10;
float EC=0;
float EC25 =0;
int ppm =0;
float raw= 0;
float Vin= 5;
float Vdrop= 0;
float Rc= 0;
float buffer=0;
void setup()
{
//myGLCD.InitLCD();
//myGLCD.setContrast(60);
pinMode(role, OUTPUT);
pinMode(TempProbeNegative , OUTPUT ); //seting ground pin as output for tmp probe
digitalWrite(TempProbeNegative , LOW );//Seting it to ground so it can sink current
pinMode(TempProbePossitive , OUTPUT );//ditto but for positive
digitalWrite(TempProbePossitive , HIGH );
pinMode(ECPin,INPUT);
pinMode(ECPower,OUTPUT);//Setting pin for sourcing current
pinMode(ECGround,OUTPUT);//setting pin for sinking current
digitalWrite(ECGround,LOW);//We can leave the ground connected permanantly
delay(100);// gives sensor time to settle
sensors.begin();
delay(100);
R1=(R1+Ra);// Taking into acount Powering Pin Resitance
};
void loop()
{
GetEC();
GetRole();
PrintReadings(); // Cals Print routine [below main loop]
delay(60000);
}
void GetEC(){
sensors.requestTemperatures();// Send the command to get temperatures
Temperature=sensors.getTempCByIndex(0); //Stores Value in Variable
digitalWrite(ECPower,HIGH);
raw= analogRead(ECPin);
raw= analogRead(ECPin);// This is not a mistake, First reading will be low beause if charged a capacitor
digitalWrite(ECPower,LOW);
Vdrop= (Vin*raw)/1024.0;
Rc=(Vdrop*R1)/(Vin-Vdrop);
Rc=Rc-Ra; //acounting for Digital Pin Resitance
EC = 1000/(Rc*K);
EC25 = EC/ (1+ TemperatureCoef*(Temperature-25.0));
ppm=(EC25)*(PPMconversion*1000);
}
void GetRole(){
if( EC25 < 0.20 )
{
digitalWrite(role, HIGH);
delay(3000);
digitalWrite(role, LOW);
}
}
void PrintReadings(){
Serial.begin(9600);
display.begin();
display.setContrast(60);
display.clearDisplay(); // clears the screen and buffer
display.setTextSize(2);
display.setTextColor(BLACK);
display.setCursor(0,0);
display.println(EC25);
display.setCursor(55,0);
display.print("EC");
display.setCursor(0,15);
display.println(ppm);
display.setCursor(45,15);
display.print("PPM");
display.setCursor(0,30);
display.println(Temperature);
display.setCursor(65,30);
display.print("C");
display.display();
//myGLCD.clrScr();
// myGLCD.setFont(MediumNumbers);
// myGLCD.printNumI(EC25,0,0);
//myGLCD.setFont(SmallFont);
//myGLCD.print("Simens",45,10);
// myGLCD.setFont(MediumNumbers);
//myGLCD.printNumI(ppm,0,20);
// myGLCD.setFont(SmallFont);
//myGLCD.print("Ppm",45,25);
//myGLCD.setFont(MediumNumbers);
// myGLCD.printNumI(Temperature,0,35);
// myGLCD.setFont(SmallFont);
//myGLCD.print("C",45,40);
//Serial.print(Rc);
//Serial.print(" EC: ");
Serial.print(EC25);
//Serial.print(" Simens ");
Serial.print(ppm);
//Serial.print(" ppm ");
Serial.print(Temperature);
// Serial.println(" *C ");
//Serial.print("Vdrop: ");
//Serial.println(Vdrop);
//Serial.print("Rc: ");
//Serial.println(Rc);
//Serial.print(EC);
//Serial.println("Siemens");
}
;
https://www.youtube.com/watch?v=wGjYwIdpRMw&index=5&t=123s&list=WL
Bu şekilde yapabilirim
kahvelekesi
26-04-2017, 20:50
resimdeki gibi ön yüzü sağ taraftan başladım yazmaya
1. soket - ismi vdd - arduino da 3.3v
2. soket - ismi sclk - arduino da 7
3. soket - ismi sdin - arduino da 6
4. soket - ismi dc - arduino da 5
5. soket - ismi sce - arduino da 4
6. soket - ismi gnd - arduino da gnd
7. soket - ismi vout - arduino da gnd ye 1 ile 10 uf arası farketmez kondanstor ile birlikte
8. soket - ismi re - arduino da 3
Taskin74
15-05-2017, 17:59
merakla takip ediyoruz ınsallah devamı gelir ve basarılı olur ..
Sayın Kahvelekesi,
Aşağıdaki LCD yi adapte edebilir miyim. kodlarda nasıl bir değişiklik yapmam gerekir. Yardımcı olabilir misiniz. bir de dozlama ile ilgili bir gelişme oldu mu acaba? Varsa ve paylaşabilirseniz çok memnun olurum.
Teşekkürler.
resimdeki gibi ön yüzü sağ taraftan başladım yazmaya
1. soket - ismi vdd - arduino da 3.3v
2. soket - ismi sclk - arduino da 7
3. soket - ismi sdin - arduino da 6
4. soket - ismi dc - arduino da 5
5. soket - ismi sce - arduino da 4
6. soket - ismi gnd - arduino da gnd
7. soket - ismi vout - arduino da gnd ye 1 ile 10 uf arası farketmez kondanstor ile birlikte
8. soket - ismi re - arduino da 3
kahvelekesi
04-06-2017, 15:43
Deneyerek anlayabilirsin bir fikrim yok
fevziergin
14-06-2017, 00:31
kod hatalı ec uyuşmuyor
kahvelekesi
14-07-2017, 11:06
https://i.hizliresim.com/Q72EVZ.png
https://i.hizliresim.com/Q72EVZ.png
burakesk
08-08-2017, 14:03
elimde TES 3010 digital clamb meter var. normal dirençleri ölçebiliyorum fakat suyun direncini ölçemiyorum hep sonsuz gösteriyor. dijital ohm metre ile suyun direncini ölçmenin bir yolu varmı acaba?
megbilgi
08-08-2017, 17:57
Ölçersinizde ohmmeterin gücü suyun direncini ölçmeye yetmez.
Meger kullanmanız lazım.
.
shpejt34
28-12-2018, 12:47
Merhaba, emeğinize sağlık. bu sistemi ne kadara mal ettiniz?
vBulletin® v3.8.5, Copyright ©2000-2025, Jelsoft Enterprises Ltd.