aHR0cDovL2ZyZWVzaGlwLmNvLmty
- ºê·£µå À̸§: Doit.am
- Àç·á: º¹ÇÕ Àç·á
- »ç¿ë: Â÷·® & ¿ø°Ý Á¦¾î Àå³°¨
¿É¼ÇÁ¤º¸
[(29)the whole set]
[(366)Circuit and Cable]![](https://ae01.alicdn.com/kf/H3ca8d332c93b4c888f5ca4840975657bO/Ec-arduino-uno-r3-diy.jpg_640x640.jpg)
¿ì¸®ÀÇ ¾ö¼÷ÇÑ ¾à¼Ó
Ç°Áú º¸Áõ!
¿ø·¡°øÀå Á÷¸Å, ±×·¡¼ °¡°ÝÀº »ó´ëÀûÀ¸·Î ³·½À´Ï´Ù!
ȯ¿µ ¿¡ÀÌÀüÆ® ÆǸÅ! µµ¸Å¿¡ ȯ¿µ!ȯ¿µ Çù»ó!°¨»çÇÕ´Ï´Ù!
¼Ò°³
ÀÌ Á¦Ç°°ú tds Á¦Ç°ÀÇ ´Ù¸§Àº: Å« ¹üÀ§: 1 ms/cm-20ms/cm. Tds´Â °¡±¸ ¼öÁúÀÇ ´Ü°Å¸® ÃøÁ¤À» À§ÇØ Àû´çÇÕ´Ï´Ù.
ÀÌ ¾Æ³¯·Î±× Àüµµµµ ¹ÌÅÍ´Â °£´ÜÇÑ ¿¬°á, ÆíÀÍ ¹× ½Ç¿ë¼ºÀÇ Æ¯¼ºÀÌ ÀÖ½À´Ï´Ù. µµ½Ä ´ÙÀ̾î±×·¥¿¡ µû¶ó ¶óÀÎÀ» ¿¬°áÇÏ¿© ¼Ö·ç¼ÇÀÇ Àüµµµµ¸¦ ÃøÁ¤ÇÏ°í ÇÁ·Î±×·¥¿¡ ÀÇÇØ Á¦¾îÇÏ´Â °ÍÀÌ ¸Å¿ì Æí¸®ÇÕ´Ï´Ù.
°¡Àå Áß¿äÇÑ °ÍÀº ¿ì¸®°¡ ¸ðµç µðÀÚÀΰú Äڵ带 °ø±ÞÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. »ç¿ëÀÚ´Â ´õ ÅëÁ¦ ¹× ¿¬±¸¸¦ À§ÇÑ arduino¸¦ ÅëÇØ ½±°Ô Àüµµµµ ÀڷḦ ¸ðÀ» ¼ö ÀÖ½À´Ï´Ù. ¿±¤ÀÚ´Â °øºÎÇÏ°í °øÀ¯ÇÏ°í ±ÍÁßÇÑ Á¶¾ðÀ» Á¦°øÇÕ´Ï´Ù.
Àüµµµµ´Â Àü·ù¿Í ÀúÇ×·ÂÀÇ ¿Õº¹ Àü¼ÛÇÏ´Â ¹®Á¦ÀÇ ´É·ÂÀÔ´Ï´Ù. ¾×ü¿¡¼´Â, ÀúÇ× ÀüµµµµÀÇ »óÈ£ ÀÛ¿ëÀº ¼ö½Ã·Î ±×°ÍÀÇ Àüµµµµ¸¦ ÃøÁ¤Çϱâ À§ÇÏ¿© ÀÌ¿ëµË´Ï´Ù. ¹° Àüµµµµ´Â ¼öÁúÀ» ÃøÁ¤ÇÏ´Â Áß¿äÇÑ »öÀÎÀÔ´Ï´Ù. ±×°ÍÀº ¹°¿¡ ÀÖ´Â ÀüÇØÁúÀÇ Á¤µµ¸¦ ¹Ý¿µÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼ö¼º ¿ë¾×ÀÇ ÀüÇØÁúÀÇ ³óµµ¿¡ µû¸£¸é ÀüµµµµÀÇ Á¤µµ´Â ´Ù¸¨´Ï´Ù. ±¹Á¦ ´ÜÀ§ ü°è¿¡¼´Â, ÀüµµµµÀÇ ´ÜÀ§´Â ½Ã¸à½º/m (s/m) ¿¡°Ô ºÒ¸®°í, ´Ù¸¥ ´ÜÀ§´Â s/m, MS/cm ¹× mu s/cmÀÔ´Ï´Ù.
½Åû s
¼öÁú °¨Áö
Åä¾ç°ú ¹°ÀÇ È¥ÇÕ ³ó¾÷
¾ç½Ä
°ü»ó¿ë ¼öÁ·°ü
±â¼úÀûÀÎ ¸ð¼ö
ÀÛµ¿ Àü¾Ð: + 5.00 v
Pcb Å©±â: 45mm * 32mm
ÃøÁ¤ ¹üÀ§: 1 ms/cm -- 20 ms/cm
Àû¿ë °¡´ÉÇÑ ¿Âµµ: 5-40 c
Á¤È®µµ: <+ 10% f.s. (ƯÁ¤ Á¤È®µµ µû¶ó ±³Á¤ Á¤È®µµ)
Xh2.54 ÀÎÅÍÆäÀ̽º (3 ÇÇÆ® ÆÐÄ¡)
Bnc ÀÎÅÍÆäÀ̽º Àüµµµµ Àü±Ø (Àü±Ø »ó¼ö 1)
Àüµµ¼º Àü±Ø ÄÉÀÌºí ±æÀÌ: ¾à 60 cm
Àü¿ø Ç¥½Ã µî
¹è¼± ´ÙÀ̾î±×·¥
EC ¹ÌÅÍ-Arduino
V---5.0 v;
G--- gnd;
A¾Æ³¯·Î±×Io (¼Ò½º Äڵ忡 ÇØ´ç)
´Ü°è »ç¿ë¹ý
Âü°í:
»ç¿ëÇϽʽÿÀ ¿ÜºÎ Àü¿ø ÀÖµµ·Ï °ø±Þ Àü¾Ð EC ¹ÌÅÍ °¡±î¿î + 5.00 V. ´õ Á¤È®ÇÑ Àü¾Ð, ³ôÀº Á¤È®µµ.
´Ù¸¥ ÇØ°áÃ¥À» ÃøÁ¤Çϱâ Àü¿¡, û°áÇÑ ¹°À» °¡Áø Àüµµµµ Àü±Ø ±×¸®°í ¿Âµµ °¨Áö±â¸¦ ºÎÁ¤È®ÇÑ µ¶¼ ¹× ÇØ°áÃ¥ ¿À¿°À» ¹æÁöÇϱâ À§ÇÏ¿© û¼ÒÇϽʽÿÀ. ÀÌ¿ÂÈ µÈ ¹°Àº ±ÇÀåµË´Ï´Ù.
ÇØ°áÃ¥ÀÇ Àüµµµµ¸¦ ÃøÁ¤ÇÒ ¶§, ¿Âµµ Àü±ØÀÌ ÃøÁ¤µÉ ÇØ°áÃ¥À¸·Î »ðÀԵȴٴ °ÍÀ» È®ÀÎÇϽʽÿÀ, ±×¸®°í Àüµµµµ Àü±ØÀÇ Àüµµ¼º ºÎºÐÀÌ ¿ÏÀüÈ÷ ÇØ°áÃ¥À» Á¢ÃËÇÏ´Ù ±×·¡¾ß Àüµµµµ Àü±ØÀ» °¡Áø ÇØ°áÃ¥À» ¾àµ¿ÇϽʽÿÀ. ¿Âµµ ¹× Àüµµµµ °ªÀÌ ¾ÈÁ¤È µÈ ÈÄ ÇÊ¿äÇÑ °ªÀ» ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù. ³ôÀº Àüµµµµ¸¦ °¡Áø ÇØ°áÃ¥À» ÃøÁ¤ÇÒ ¶§ ÇØ°áÃ¥ÀÇ ºÐ±Ø¿¡ ÀÇÇØ ¿µÇâÀ» ¹Þ´Â, Àüµµµµ µ¶¼´Â ƯÁ¤ ¹üÀ§ ¾È¿¡ ÁöÅÍ °ÍÀÔ´Ï´Ù. Àüµµµµ°¡ ³ôÀ»¼ö·Ï ´õ ½ÉÇÑ ÁöÅÍ.
(1) ±×¸²¿¡¼ º¸ÀÎ °Í°ú °°ÀÌ °¢ ÀåÄ¡¸¦ ¿¬°áÇϽʽÿÀ, Áï, Àüµµµµ Àü±ØÀº ec ¹ÌÅÍ È¸·ÎÆÇÀÇ bnc °ø¿ë¿µ¿ª¿¡ ¿¬°áµË´Ï´Ù, ´ÙÀ½ ¾Æ³¯·Î±× ¹ÌÅÍ´Â ¿¬°á EC ¹ÌÅÍ È¸·Î º¸µå ¾Æ³¯·Î±× Æ÷Æ® 1 Arduino ¸ÞÀÎ ÄÁÆ®·Ñ·¯. ´ÙÀ½ ¹æ¼ö DS18B20 ¿Âµµ ¼¾¼¸¦ Å͹̳ΠÇ÷¯±× °¡´É ¼¾¼ ¾î´ðÅÍ ´ÙÀ½ µðÁöÅÐ ¿¬°á ÄÉÀÌºí ¿¬°á µðÁöÅÐ Æ÷Æ® 2 Arduino ¸ÞÀÎ ÄÁÆ®·Ñ·¯. Arduino °üÁ¦»ç¿¡ °ÈÇÑ ÈÄ¿¡, ´ç½ÅÀº ec ¹ÌÅÍ È¸·ÎÆÇ¿¡ ÆĶõ Áö½ÃÀÚ°¡ À§¿¡ ÀÖ´Ù´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.
(2) arduino ÁÖ¿ä °üÁ¦»ç¿¡ Ç¥º» ºÎÈ£¸¦ ÇÁ·Î±×·¥ÇϽʽÿÀ.
(3) arduino ideÀÇ Á÷·Ä ¸ð´ÏÅ͸¦ ¿±´Ï ´Ù. ÀÌ ¶§, ±×°ÍÀº Àü¾Ð °ª ¹× ¿Âµµ °ª°ú °°Àº ÀϺΠ¸Å°³ º¯¼ö¸¦ Ãâ·Â ÇÒ ¼ö ÀÖÀ¸¸ç, ÇØ°áÃ¥ÀÌ ¾ø´Ù´Â °ÍÀ» ÀÚ±ØÇÕ´Ï´Ù.
![orp-1](https://ae01.alicdn.com/kf/H26d842e224ee4c079cd82c1cb3e7dfb1C.jpg)
(4) Àüµµ¼º Àü±Ø°ú ¿Âµµ ¼¾¼¸¦ ±³Á¤ ¼Ö·ç¼ÇÀ¸·Î »ðÀÔÇÏ¿© ¿ë¾×ÀÇ Àüµµµµ °ªÀ» ÃøÁ¤ÇϽʽÿÀ. Ç¥½ÃµÈ ¼ýÀÚ°¡ ¾ÈÁ¤ µÉ ¶§±îÁö ÇØ°áÃ¥À» Àú¾î. Ç¥½ÃµÈ °ªÀÌ Ç¥ÁØ ¿ë¾× º´ÀÇ °¡Ä¡¿¡ °¡±õ´Ù¸é »ç¿ëÀ¸·Î ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù.
¿¹·Î 1413us/cmÀÇ ½ÃÇè Àüµµµµ¸¦ °¡Áø Àüµµµµ ÇØ°áÃ¥À» °¡Áö°í °¡½Ê½Ã¿À:
¼±¹Ú ¸ñ·Ï (´ç½ÅÀÇ ¼±Åÿ¡ ±Ù°Å¸¦ µÎ´Â)
¶Ç´Â ¾Æ·¡¸¦ Æ÷ÇÔÇÏ¿© ÀüüÀûÀÎ ¼¼Æ®:
BNC ÀÎÅÍÆäÀ̽ºÀüµµµµÀü±Ø: 1 pc;
EC ¹ÌÅÍȸ·Î º¸µå:1 pc
¾Æ³¯·Î±×¿¬°áÄÉÀ̺í: 1 pc
¶Ç´Âȸ·Î º¸µå ¹×¾Æ³¯·Î±×¿¬°áÄÉÀ̺í;
Arduino ¼Ò½º ÄÚµå
# Æ÷ÇÔ <oneire. h>
# Define StartConvert 0
# Define ReadTemperature 1
Const ¹ÙÀÌÆ® numreadings = 20;/»ùÇà ½Ã°£ÀÇ ¼ö
Byte ecsensorpin = a0;/ec ¹ÌÅÍ ¾Æ³¯·Î±× Ãâ·Â, ¾Æ³¯·Î±× 1 ÇÉ
¹ÙÀÌÆ® ds18b20_pin = 2;/ds18b20 ½ÅÈ£, µðÁöÅÐ 2 ÇÉ
Unsigned int analogsample°£°Ý = 25, printspact = 700, tempsampleinterp = 850;/¾Æ³¯·Î±× »ùÇà °£°Ý; Á÷·Ä Àμ⠰£°Ý; ¿Âµµ »ùÇà °£°Ý
Unsigned int readings [numreadings];/¾Æ³¯·Î±× ÀÔ·ÂÀÇ Æǵ¶ °ª
¹ÙÀÌÆ® »öÀÎ = 0;/ÇöÀç µ¶¼ÀÇ »öÀÎ
Unsigned long analogvaluetotal = 0;/½ÇÇà ÃÑ
Unsigned int analogaverage = 0, averagevoltage = 0;/Æò±Õ
Unsigned ±ä analogsampletime, printtime, tempsampletime;
ºÎÀ¯¹° ¿Âµµ, eccurrent;
//¿Âµµ Ĩ ÀÔ·Â/Ãâ·Â
Onewire ds (ds18b20_pin),/on µðÁöÅÐ ÇÉ 2
¹«È¿ ¼³Á¤ () {
/ÄÄÇ»ÅÍ¿Í Á÷·Ä Åë½ÅÀ» ÃʱâÈ:
Serial. begin (115200);
// ÃʱâÈ ¸ðµç Æǵ¶ 0:
For (¹ÙÀÌÆ® thisreading = 0; thisreading <numreadings; thisreading + +)
µ¶¼ [thisreading] = 0;
Temptrocess (startconvert);/ds18b20 º¯È¯À» ½ÃÀÛÇÏÀÚ
Analogsampletime = ¹Ð¸® ();
Printtime = ¹Ð¸® ();
Tempsampletime = ¹Ð¸® ();
}
¹«È¿ ·çÇÁ () {
/*
ÇÑ ¹ø¸¶´Ù ¾Æ³¯·Î±× °ªÀ» »ùÇÃÇÏ°í Æò±ÕÀ» °è»êÇÕ´Ï´Ù.
*/
If (¹Ð¸® ()-analogsampletime> = analogsampleinterp)
{
Analogsampletime = ¹Ð¸® ();
/¸¶Áö¸· µ¶¼¸¦ »©: ´Ï´Ù:
Analogvaluetotal = analogvaluetotal-µ¶¼ [»öÀÎ];
/¼¾¼¿¡¼ Àбâ:
µ¶¼ [»öÀÎ] = analogread (ecsensorpin);
/ÇÕ°è¿¡ µ¶¼¸¦ Ãß°¡ÇϽʽÿÀ:
Analogvaluetotal = analogvaluetotal + Æǵ¶ [»öÀÎ];
//¹è¿ÀÇ ´ÙÀ½ À§Ä¡·Î »çÀü:
»öÀÎ = »öÀÎ + 1;
// ¿ì¸®°¡ ³¡¿¡ ¾î·¹ÀÌ...
If (»öÀÎ> = ¼ýÀÚ)
//. .. ½ÃÀÛÀ¸·Î °¨½Î½Ê½Ã¿À:
»öÀÎ = 0;
/Æò±Õ °è»ê:
Analogaverage = analogvaluetotal/numreadings;
}
/*
¸ðµç Çѵ¿¾È, MCU Àб⠿µµ ¿¡¼ DS18B20 ¹× ´ÙÀ½ DS18B20 ½ÃÀÛ º¯È¯.
ÁÖÀÇ: º¯È¯À» ½ÃÀÛÇÏ°í ¿Âµµ¸¦ Àд »çÀÌÀÇ °£°ÝÀº 750 ¹Ð¸® Ãʺ¸´Ù Ä¿¾ßÇϰųª ¿Âµµ°¡ Á¤È®ÇÏÁö ¾Ê½À´Ï´Ù!
*/
If (¹Ð¸® ()-tempsampletime> = tempsampleinterp)
{
Tempsampletime = ¹Ð¸® ();
¿Âµµ = 25;/ds18b20 ¿¡¼ ÇöÀç ¿Âµµ¸¦ ÀÐÀ¸½Ê½Ã¿À
Temptrocess (startconvert);/µ¶¼ ÈÄ, ´ÙÀ½ µ¶¼¿¡ ´ëÇÑ º¯È¯À» ½ÃÀÛ
}
/*
ÇÑ ¹ø¸¶´Ù Á÷·Ä ¸ð´ÏÅÍÀÇ Á¤º¸¸¦ ÀμâÇϽʽÿÀ.
*/
If (¹Ð¸® ()-printtime> = printinterp)
{
Printtime = ¹Ð¸® ();
Averagevoltage = analogaverage * (ºÎÀ¯¹°) 5000/1024;
Á÷·Ä. Àμâ ("¾Æ³¯·Î±× °ª:");
Á÷·Ä. Àμâ (AnalogAverage); // ¾Æ³¯·Î±× Æò±Õ 0¿¡¼ 1023
Á÷·Ä. Àμâ ("Àü¾Ð:");
Serial. print (averagevoltage);/millivolt Æò±Õ, 0mv¿¡¼ 4995mv¿¡
Serial. print ("mv");
ÀÏ·Ã. Àμâ ("Àӽà Á÷¿ø:");
Serial. print (¿Âµµ);/ÇöÀç ¿Âµµ
Serial. print ("^ c ec:");
Çà ·ÎÆ® tempcoefficient = 1.0 + 0.0185 * (25-25.0);//¿Âµµ º¸»ó °ø½Ä: ffinalconsuress (25 ^ c) = ffinalrequent (ÇöÀç)/(1.0 + 0.0185 * (fTP-25.0);
ºÎÀ¯¹° coefficientvolatge = (ºÎÀ¯¹°) averagevoltage/tempcoefficient;
If (coefficientvolatge <150) serial. println ("ÇØ°áÃ¥ ¾øÀ½! ");/25 ^ c 1413us/cm <--> ¾à 216mv Àü¾Ð (º¸»ó) <150, Áï <1 ms/cm, ¹üÀ§¿¡¼
´Ù¸¥ °æ¿ì (coefficientvolatge> 3300) serial. println ("¹üÀ§¿¡¼!");/> 20 ms/cm, ¹üÀ§¿¡¼
´Ù¸¥
{
If (coefficientvolatge <= 448) eccurrent = 6.84 * CoefficientVolatge-64.32;/1 ms/cm <ec <= 3 ms/cm
´Ù¸¥ °æ¿ì (coefficientvolatge <= 1457) eccurrent = 6.98 * CoefficientVolatge-127;/3 ms/cm <ec <= 10 ms/cm
´Ù¸¥ eccurrent = 5.3 * coefficientvolatge + 2278;/10 ms/cm <ec <20 ms/cm
Eccurrent/= 1000;//us/cm¸¦ MS/cm·Î º¯È¯
Serial. print (eccurrent, 2);/2 ½ÊÁø¼ö
Serial. println ("ms/cm");
}
}
}
/*
Ch = 0, ds18b20 ½ÃÀÛ º¯È¯; ch = 1, mcu ds18b20 ¿¡¼ ÇöÀç ¿Âµµ¸¦ ÀнÀ´Ï´Ù.
*/
Float temptrocess (ÇÃ ·ÎÆ® temptrocess)
{
/¼·¾¾ ¿Âµµ¿¡ ÀÖ´Â 1°³ÀÇ ds18b20 ¿¡¼ ¿Âµµ¸¦ µ¹·Áº¸³À´Ï´Ù
Á¤Àû ¹ÙÀÌÆ® µ¥ÀÌÅÍ [12];
Á¤Àû ¹ÙÀÌÆ® addr [8];
Á¤Àû Ç÷ÎÆ® TemperatureSum;
¸¸¾à¿¡ (! ch) {
°æ¿ì (! Ds. search (addr)) {
Serial. println ("üÀο¡ ´õ ÀÌ»ó ¼¾¼, °Ë»ö Àç¼³Á¤!");
Ds. reset_search ();
¹Ýȯ 0;
}
If (¿Ànewire:: crc8 (addr, 7)! = addr [7]) {
Serial. println ("crc´Â À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù!");
¹Ýȯ 0;
}
If (addr [0]!) = 0x10 & & addr [0]! = 0x28) {
Serial. print ("ÀåÄ¡´Â ÀνĵÇÁö ¾Ê½À´Ï´Ù!");
¹Ýȯ 0;
}
Ds. reset ();
Ds. select (addr);
Ds. write (0x44,1);/³¡¿¡ ±â»ýÃæ Èû°ú ´õºÒ¾î/½ÃÀÛ º¯È¯,
}
´Ù¸¥ {
ÇöÀç ¹ÙÀÌÆ® = ds. reset ();
Ds. select (addr);
Ds. write (0xbe);/Àбâ scratchpad
(Int i = 0; i <9; i + +) {/¿ì¸®´Â 9 ¹ÙÀÌÆ®°¡ ÇÊ¿äÇÕ´Ï´Ù.
µ¥ÀÌÅÍ [i] = ds. Àбâ ();
}
Ds. reset_search ();
¹ÙÀÌÆ® msb = µ¥ÀÌÅÍ [1];
¹ÙÀÌÆ® lsb = µ¥ÀÌÅÍ [0];
Çà ·ÎÆ® tempread = ((msb <<8) | lsb);/µÎ ĪÂùÀ» »ç¿ë ÇÏ ¿©
Temperaturesum = tempread/16;
}
¹Ýȯ TemperatureSum;
}