Სარჩევი:

როგორ გავაკეთოთ მონაცემთა ჩამწერი ტემპერატურის, PH და გახსნილი ჟანგბადისათვის: 11 ნაბიჯი (სურათებით)
როგორ გავაკეთოთ მონაცემთა ჩამწერი ტემპერატურის, PH და გახსნილი ჟანგბადისათვის: 11 ნაბიჯი (სურათებით)

ვიდეო: როგორ გავაკეთოთ მონაცემთა ჩამწერი ტემპერატურის, PH და გახსნილი ჟანგბადისათვის: 11 ნაბიჯი (სურათებით)

ვიდეო: როგორ გავაკეთოთ მონაცემთა ჩამწერი ტემპერატურის, PH და გახსნილი ჟანგბადისათვის: 11 ნაბიჯი (სურათებით)
ვიდეო: როგორ გავიგო ვიდეოკარტის და პროცესორის ტემპერატურა 2024, ივლისი
Anonim
Image
Image
გამოსახულება
გამოსახულება

მიზნები:

  • გააკეთეთ მონაცემთა ჩამწერი ≤ 500 დოლარად. იგი ინახავს მონაცემებს ტემპერატურის, pH და DO დროის ბეჭდით და I2C კომუნიკაციის გამოყენებით.
  • რატომ I2C (ინტეგრირებული წრე)? ერთი სტრიქონის დალაგება შესაძლებელია იმავე ხაზში, რადგან თითოეულ მათგანს აქვს უნიკალური მისამართი.

Ნაბიჯი 1:

ნაბიჯი 2: იყიდეთ ქვემოთ მოყვანილი ნაწილები:

შეიძინეთ ქვემოთ მოყვანილი ნაწილები
შეიძინეთ ქვემოთ მოყვანილი ნაწილები
  1. Arduino MEGA 2560, $ 35,
  2. დენის ადაპტერი Arduino დაფისთვის, $ 5.98,
  3. LCD მოდული I2C (ჩვენება), $ 8.99,
  4. რეალურ დროში საათის (RTC) გარღვევა, $ 7.5,
  5. MicroSD ბარათის გარღვევის დაფა, $ 7.5,
  6. 4 GB SD ბარათი, $ 6.98,
  7. წყალგაუმტარი DS18B20 ციფრული სენსორი, $ 9.95,
  8. pH ზონდი + ნაკრები + სტანდარტული ბუფერები, $ 149.15,
  9. DO probe + Kits + Standard buffers, $ 247.45,
  10. პურის დაფა, ჯუმბერის კაბელი, $ 7.98,
  11. (სურვილისამებრ) ძაბვის იზოლატორი, $ 24,

სულ: $ 510.48

* ზოგიერთი ნაწილის (როგორც ზოგადი დაფის) შეძენა შესაძლებელია სხვა გამყიდველებისგან (eBay, ჩინელი გამყიდველი) უფრო დაბალ ფასად. რეკომენდებულია pH და DO ზონდების მიღება Atlas Scientific– დან.

* მულტიმეტრი რეკომენდირებულია გამტარობის და ძაბვის შესამოწმებლად. ღირს დაახლოებით $ 10-15 (https://goo.gl/iAMDJo)

ნაბიჯი 3: გაყვანილობა

გაყვანილობა
გაყვანილობა
  • გამოიყენეთ jumper/DuPont კაბელები ნაწილების დასაკავშირებლად, როგორც ეს ნაჩვენებია ქვემოთ მოცემულ ესკიზში.
  • გამოიყენეთ მულტიმეტრი გამტარობის შესამოწმებლად.
  • შეამოწმეთ პოზიტიური ძაბვის მიწოდება (VCC) და მიწა (GND) (ადვილია დაბნეულობა, თუ არ იცნობთ წრეს)
  • შეაერთეთ დენის ადაპტერი და შეამოწმეთ კვების ინდიკატორი თითოეულ ნაწილში. როდესაც ეჭვი გეპარებათ, გამოიყენეთ მრიცხველი, რომ შეამოწმოთ ძაბვა VCC- სა და GND- ს შორის (5V)

ნაბიჯი 4: მოამზადეთ PH, DO სქემები, SD ბარათი

მოამზადეთ PH, DO სქემები, SD ბარათი
მოამზადეთ PH, DO სქემები, SD ბარათი
  1. გადართეთ I2C– ზე pH და DO სქემებისთვის
  2. PH და DO გარღვევები იგზავნება სერიული კომუნიკაციით, როგორც გადაცემის/მიღების ნაგულისხმევი რეჟიმი (TX/RX). I2C რეჟიმში საათის ხაზის (SCL) და მონაცემთა ხაზის (SDA) გამოსაყენებლად, გადართეთ რეჟიმი (1): გამორთეთ VCC, TX, RX კაბელები, (2): გადადით TX to Ground for Probe, PGND (არა GND), (3) შეაერთეთ VCC წრედში, (4): დაელოდეთ სანამ LED იცვლება მწვანედან ლურჯად. დაწვრილებითი ინფორმაცია იხილეთ 39 გვერდზე (მონაცემთა ცხრილი pH წრედისთვის,
  3. გააკეთეთ იგივე ნაბიჯი DO ჩართვით
  4. (თუ იცით როგორ ატვირთოთ კოდის ნიმუში დაფაზე, ამის გაკეთება შეგიძლიათ სერიული მონიტორის საშუალებით)
  5. SD ბარათის ფორმატირება FAT ფორმატში

ნაბიჯი 5: მოამზადეთ პროგრამული უზრუნველყოფა

მოამზადეთ პროგრამული უზრუნველყოფა
მოამზადეთ პროგრამული უზრუნველყოფა
მოამზადეთ პროგრამული უზრუნველყოფა
მოამზადეთ პროგრამული უზრუნველყოფა
მოამზადეთ პროგრამული უზრუნველყოფა
მოამზადეთ პროგრამული უზრუნველყოფა
მოამზადეთ პროგრამული უზრუნველყოფა
მოამზადეთ პროგრამული უზრუნველყოფა
  1. ჩამოტვირთეთ Arduino ინტეგრირებული განვითარების გარემო (IDE),
  2. დააინსტალირეთ ბიბლიოთეკა Arduino IDE– ზე:
  3. მათი უმეტესობა მოყვება Arduino პროგრამულ უზრუნველყოფას. LiquidCrystal_I2C.h ხელმისაწვდომია GitHub– ის საშუალებით
  4. დააინსტალირეთ დრაივერი USB– ისთვის. ნამდვილი Arduino– სთვის, შეიძლება არ დაგჭირდეთ მისი დაყენება. ზოგადისთვის, თქვენ უნდა დააინსტალიროთ დრაივერი CH340 (GitHub:
  5. შეამოწმეთ სწორად აკავშირებთ დაფას მოციმციმე LED ტესტის გამოყენებით
  6. როგორ მოვძებნოთ 18B20 ციფრული ტემპერატურის MAC მისამართი. Arduino IDE– ში I2C სკანერის შაბლონის გამოყენება გამოსაყენებელი ზონდით. თითოეულ მოწყობილობას აქვს უნიკალური MAC მისამართი, ასე რომ თქვენ შეგიძლიათ გამოიყენოთ იმდენი ტემპერატურის ზონდი ერთი საერთო ხაზით (#9). 18B20 იყენებს ერთი მავთულის I2C- ს, ამიტომ ეს არის I2C საკომუნიკაციო მეთოდის განსაკუთრებული შემთხვევა. ქვემოთ მოცემულია ერთი მეთოდი MAC– ის პოვნაში - სამედიცინო წვდომის კონტროლი („ROM“, როდესაც თქვენ განახორციელებთ ქვემოთ მოცემულ პროცედურას).

ნაბიჯი 6: დაიწყეთ კოდირება

დაიწყეთ კოდირება
დაიწყეთ კოდირება
  • დააკოპირეთ ჩასვით ქვემოთ კოდი Arduino IDE– ში:
  • ან გადმოწერეთ კოდი (.ino) და ახალი ფანჯარა გამოჩნდება Arduino IDE– ში.

/*

საცნობარო გაკვეთილები:

1. ტემპერატურა, ORP, pH logger:

2. დაცული ციფრული (SD) ფარი:

ეს კოდი მონაცემებს გამოიტანს Arduino სერიულ მონიტორზე. ჩაწერეთ ბრძანებები Arduino– ს სერიულ მონიტორში EZO pH მიკროსქემის გასაკონტროლებლად I2C რეჟიმში.

შეცვლილია ზემოთ მითითებული გაკვეთილებიდან, ძირითადად I2C კოდიდან Atlas-Scientific

ბოლო განახლება: 2017 წლის 26 ივლისი, Binh Nguyen

*/

#მოიცავს // ჩართე I2C.

#განსაზღვრეთ pH_ მისამართი 99 // ნაგულისხმევი I2C ID ნომერი EZO pH მიკროსქემისთვის.

#განსაზღვრეთ DO_address 97 // ნაგულისხმევი I2C ID ნომერი EZO DO Circuit– ისთვის.

#მოიცავს "RTClib.h" // თარიღი და დრო ფუნქციები DS1307 RTC გამოყენებით I2C და Wire lib მეშვეობით

RTC_DS1307 rtc;

#მოიცავს // SD ბიბლიოთეკისთვის

#მოიცავს // SD ბარათი მონაცემების შესანახად

const int chipSelect = 53; // უნდა გაერკვნენ Adafruit SD გარღვევაში //

// DO = MISO, DI = MOSI, ATmega pin#: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS)

char logFileName = "dataLT.txt"; // შეცვალეთ logFileName თქვენი ექსპერიმენტის დასადგენად, გამოცდისთვის PBR_01_02, datalog1

გრძელი id = 1; // id ნომერი შესვლის მიზნით

#ჩართეთ

LiquidCrystal_I2C LCD (0x27, 20, 4);

#ჩართეთ

#ჩართეთ

# განსაზღვრეთ ONE_WIRE_BUS 9 // განსაზღვრეთ პინ # ტემპერატურის ზონდისთვის

OneWire oneWire (ONE_WIRE_BUS);

DallasTemperature სენსორები (& oneWire);

DeviceAddress ProbeP = {0x28, 0xC2, 0xE8, 0x37, 0x07, 0x00, 0x00, 0xBF}; // MAC მისამართი, უნიკალური თითოეული ზონდისთვის

სიმებიანი dataString; // მთავარი ვარიანტი ყველა მონაცემის შესანახად

სიმებიანი dataString2; // დროებითი ვარიანტი ტემპერატურის/pH/DO შესანახად დასაბეჭდად

char კომპიუტერული მონაცემები [20]; // ინსტრუქცია Atlas Scientific– დან: ჩვენ ვაკეთებთ 20 ბაიტიანი მასივის მასივს, რომ შევინარჩუნოთ შემომავალი მონაცემები pc/mac/other– დან.

ბაიტი მიღებული_კომპიუტერიდან = 0; // ჩვენ უნდა ვიცოდეთ რამდენი პერსონაჟი იქნა მიღებული.

ბაიტი serial_event = 0; // დროშა სიგნალისთვის, როდესაც მონაცემები მიიღება pc/mac/other– დან.

ბაიტის კოდი = 0; // გამოიყენება I2C საპასუხო კოდის შესანახად.

char pH_data [20]; // ჩვენ ვაკეთებთ 20 ბაიტიანი სიმბოლოების მასივს, რათა შეინარჩუნოს შემომავალი მონაცემები pH წრიდან.

ბაიტი in_char = 0; // გამოიყენება როგორც 1 ბაიტიანი ბუფერი, რათა შეინარჩუნოს შეკრული ბაიტები pH წრიდან.

ბაიტი i = 0; // მრიცხველი გამოიყენება ph_data მასივისათვის.

int დრო_ = 1800; // გამოიყენება შეფერხების შესაცვლელად EZO კლასის pH წრედში გაგზავნილი ბრძანებიდან გამომდინარე.

float pH_float; // float var გამოიყენება pH- ის მცურავი მნიშვნელობის შესანარჩუნებლად.

char DO_data [20];

// float temp_C;

void setup () // ტექნიკის ინიციალიზაცია.

{

სერიული.დაწყება (9600); // სერიული პორტის ჩართვა.

მავთული. დასაწყისი (pH_ მისამართი); // ჩართეთ I2C პორტი pH ზონდისთვის

Wire.begin (DO_address);

lcd.init ();

lcd. დასაწყისი (20, 4);

lcd. განათება ();

LCD. მთავარი ();

lcd.print ("გამარჯობა PBR!");

lcd.setCursor (0, 1);

lcd.print ("ინიციალიზაცია …");

Serial.print ("RTC არის …");

თუ (! rtc. იწყება ())

{

Serial.println ("RTC: რეალურ დროში საათი … არ არის ნაპოვნი");

ხოლო (1); // (Serial.println ("RTC: რეალურ დროში საათი … ნაპოვნია"));

}

Serial.println ("გაშვებული");

Serial.print ("რეალურ დროში საათი …");

თუ (! rtc.isrunning ())

{rtc.adjust (DateTime (F (_ DATE_), F (_ TIME_)));

}

Serial.println ("სამუშაო");

lcd.setCursor (0, 0);

lcd.println ("RTC: OK");

Serial.print ("SD ბარათი …"); // ნახეთ, არის თუ არა ბარათი და შესაძლებელია მისი ინიციალიზაცია:

თუ (! SD.begin (chipSelect))

{Serial.println ("ვერ მოხერხდა"); // მეტი არაფერი გააკეთო:

დაბრუნების;

}

Serial.println ("OK");

lcd.setCursor (0, 1);

lcd.println ("SD ბარათი: კარგი");

Serial.print ("შესვლის ფაილი:");

Serial.print (logFileName);

Serial.print ("…");

ფაილი logFile = SD.open (logFileName, FILE_WRITE); // გახსენით ფაილი. "datalog" და დაბეჭდე სათაური

თუ (logFile)

{

logFile.println (",,,"); // მიუთითეთ, რომ იყო მონაცემები წინა რანგში

სიმებიანი სათაური = "თარიღი -დრო, ტემპი (C), pH, DO";

logFile.println (სათაური);

logFile.close ();

Serial.println ("მზადაა");

//Serial.println(dataString); // დაბეჭდე სერიულ პორტშიც:

}

else {Serial.println ("შეცდომა მონაცემთა ბაზის გახსნისას"); } // თუ ფაილი არ არის გახსნილი, გამოჩნდება შეცდომა:

lcd.setCursor (0, 2);

lcd.print ("შესვლა ფაილი:");

lcd.println (logFileName);

დაგვიანება (1000);

სენსორები.დაწყება ();

sensors.setResolution (ProbeP, 10); // 10 არის რეზოლუცია (10 ბიტი)

lcd. წმინდა ();

id = 0;

}

ბათილი მარყუჟი ()

{// მთავარი მარყუჟი.

dataString = სიმებიანი (id);

dataString = სიმებიანი (',');

თარიღი ახლა = rtc.now ();

dataString = სიმებიანი (ახლა. წელი (), DEC);

dataString += სიმებიანი ('/');

dataString += სიმებიანი (ახლა თვე, (DEC);

dataString += სიმებიანი ('/');

dataString += სიმებიანი (ახლა დღე), DEC);

dataString += სიმებიანი ('');

dataString += სიმებიანი (ახლა. საათი (), DEC);

dataString += სიმებიანი (':');

dataString += სიმებიანი (ახლა. წუთი (), DEC);

dataString += სიმებიანი (':');

dataString += სიმებიანი (ახლა. მეორე (), DEC);

LCD. მთავარი ();

lcd.print (dataString);

სენსორები. მოითხოვეთ ტემპერატურა ();

ჩვენების ტემპერატურა (ProbeP);

Wire.beginTransmission (pH_address); // დარეკეთ წრედში მისი ID ნომრით

Wire.write ('r'); // მყარი კოდი r მუდმივად წასაკითხად

Wire.endTransmission (); // დასრულდეს I2C მონაცემთა გადაცემა.

დროის გადადება_); // დაელოდეთ დროის სწორ რაოდენობას, სანამ წრე დაასრულებს თავის ინსტრუქციას.

მავთული. მოთხოვნა (pH_ მისამართი, 20, 1); // დარეკეთ წრეში და მოითხოვეთ 20 ბაიტი (ეს შეიძლება იყოს იმაზე მეტი ვიდრე ჩვენ გვჭირდება)

ხოლო (Wire.available ()) // არის მისაღები ბაიტები

{

in_char = Wire.read (); // მიიღეთ ბაიტი.

თუ ((in_char> 31) && (in_char <127)) // შეამოწმეთ არის თუ არა სიმბოლო გამოსაყენებელი (დასაბეჭდი)

{

pH_ მონაცემები = in_char; // ჩატვირთეთ ეს ბაიტი ჩვენს მასივში.

i+= 1;

}

if (in_char == 0) // თუ დავინახავთ რომ გამოგვიგზავნეს null ბრძანება.

{

i = 0; // აღადგინეთ მრიცხველი i 0 -ზე.

Wire.endTransmission (); // დასრულდეს I2C მონაცემთა გადაცემა.

შესვენება; // გასვლა while მარყუჟისგან.

}

}

სერიული_ მოვლენა = 0; // გადატვირთეთ სერიული მოვლენის დროშა.

dataString2 += ",";

dataString2 += სიმებიანი (pH_data);

Wire.beginTransmission (DO_address); // დარეკეთ წრედში მისი ID ნომრით

Wire.write ('r');

Wire.endTransmission (); // დასრულდეს I2C მონაცემთა გადაცემა

დროის გადადება_); // დაელოდეთ დროის სწორ რაოდენობას, სანამ წრე დაასრულებს თავის ინსტრუქციას

მავთული. მოითხოვეთ (DO_address, 20, 1); // დარეკეთ წრედ და მოითხოვეთ 20 ბაიტი

ხოლო (Wire.available ()) // არის მისაღები ბაიტები.

{

in_char = Wire.read (); // მიიღეთ ბაიტი.

if ((in_char> 31) && (in_char <127)) // შეამოწმეთ არის თუ არა char გამოსაყენებელი (დასაბეჭდი), წინააღმდეგ შემთხვევაში in_char შეიცავს სიმბოლოს დასაწყისში.txt ფაილში

{DO_data = in_char; // ჩატვირთეთ ეს ბაიტი ჩვენს მასივში

i+= 1; // იწვევენ მრიცხველს მასივის ელემენტისთვის

}

თუ (in_char == 0)

{// თუ ვნახავთ, რომ გამოგვიგზავნეს ნულოვანი ბრძანება

i = 0; // აღადგინეთ მრიცხველი i 0 -ზე.

Wire.endTransmission (); // დასრულდეს I2C მონაცემთა გადაცემა.

შესვენება; // გასვლა while მარყუჟისგან.

}

}

სერიული_ მოვლენა = 0; // გადატვირთეთ სერიული მოვლენის დროშა

pH_float = atof (pH_data);

dataString2 += ",";

dataString2 += სიმებიანი (DO_data);

lcd.setCursor (0, 1);

lcd.print ("ტემპერატურა/ pH/ DO");

lcd.setCursor (0, 2);

lcd.print (dataString2);

dataString += ',';

dataString += dataString2;

ფაილის მონაცემებიFile = SD.open (logFileName, FILE_WRITE); // გახსენით ფაილი. გაითვალისწინეთ, რომ მხოლოდ ერთი ფაილი შეიძლება იყოს გახსნილი ერთდროულად, ასე რომ თქვენ უნდა დახუროთ ეს ერთი მეორის გახსნამდე.

თუ (dataFile) // თუ ფაილი ხელმისაწვდომია, ჩაწერეთ მას:

{

dataFile.println (dataString);

dataFile.close ();

Serial.println (dataString); // დაბეჭდე სერიულ პორტშიც:

}

else {Serial.println ("შეცდომა datalog ფაილის გახსნისას"); } // თუ ფაილი არ არის გახსნილი, გამოჩნდება შეცდომა:

lcd.setCursor (0, 3);

lcd.print ("გაშვებული (x5 მ):");

lcd.setCursor (15, 3);

lcd.print (id);

id ++; // გაზარდეთ ერთი ID მომდევნო გამეორება

dataString = "";

დაგვიანება (300000); // შეფერხება 5 წთ = 5*60*1000 ms

lcd. წმინდა ();

} // მთავარი მარყუჟის დასრულება

ბათილი ჩვენება ტემპერატურა (DeviceAddress deviceAddress)

{

float tempC = sensors.getTempC (deviceAddress);

if (tempC == -127.00) lcd.print ("ტემპერატურის შეცდომა");

else dataString2 = სიმებიანი (tempC);

} // კოდი მთავრდება აქ

  • შეარჩიეთ სწორი COM პორტი Arduino IDE– ს საშუალებით Tools/Port– ში
  • შეარჩიეთ სწორი Arduino დაფა. მე მეგა 2560 გამოვიყენე, რადგან მას აქვს უფრო მეტი შიდა მეხსიერება. Arduino Nano ან Uno კარგად მუშაობს ამ კონფიგურაციით.
  • შეამოწმეთ და კოდირება და ატვირთეთ კოდი

ნაბიჯი 7: შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი

შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
შედეგები გაყვანილობის შესახებ (შეიძლება გაუმჯობესდეს) და LCD ეკრანი
  • შენიშვნა: მე შევხვდი ხმაურს DO ზონდიდან pH ზონდის შემდეგ 2-3 თვის უწყვეტი მუშაობის შემდეგ. Atlas Scientific- ის თანახმად, ძაბვის ხაზის იზოლატორი რეკომენდირებულია, როდესაც pH, გამტარობის ზონდები ერთად მუშაობენ. დამატებითი დეტალები მოცემულია მე -9 გვერდზე (https://goo.gl/d62Rqv)
  • რეგისტრირებული მონაცემები (პირველს აქვს დაუბეჭდავი სიმბოლოები pH და DO მონაცემებამდე). მე გავფილტრო კოდს მხოლოდ დასაბეჭდი სიმბოლოების დაშვებით.

ნაბიჯი 8: მონაცემების იმპორტი და გრაფიკის შედგენა

მონაცემების იმპორტი და გრაფიკის შედგენა
მონაცემების იმპორტი და გრაფიკის შედგენა
მონაცემების იმპორტი და გრაფიკის შედგენა
მონაცემების იმპორტი და გრაფიკის შედგენა
მონაცემების იმპორტი და გრაფიკის შედგენა
მონაცემების იმპორტი და გრაფიკის შედგენა
  1. მონაცემების იმპორტი ტექსტიდან DATA ჩანართში (Excel 2013)
  2. გამოყავით მონაცემები მძიმით (ამიტომაა, რომ თითოეული მონაცემის შეყვანის შემდეგ მძიმეების გამოყენება სასარგებლოა)
  3. დახაზეთ მონაცემები. თითოეულ მონაცემს აქვს დაახლოებით 1700 ქულა. გაზომვის ინტერვალი 5 წუთია (რეგულირებადი). მინიმალური DO და pH სქემები მონაცემების წასაკითხად არის 1.8 წმ.

ნაბიჯი 9: კალიბრაცია

კალიბრაცია
კალიბრაცია
  1. ციფრული ტემპერატურის სენსორი (18B20) შეიძლება დაკალიბრდეს განსხვავების პირდაპირ მორგებით. წინააღმდეგ შემთხვევაში, თუ კომპენსაცია და ფერდობზე დაკალიბრებაა საჭირო, შეგიძლიათ შეცვალოთ მნიშვნელობები ხაზზე #453, DallasTemperature.cpp / libraries / DallasTemperature საქაღალდეში.
  2. PH და DO ზონდებისათვის შეგიძლიათ გამოძიების დაკალიბრება თანმხლები ხსნარებით. თქვენ უნდა გამოიყენოთ კოდის ნიმუში Atlas Scientific და მიჰყევით ამ ფაილის ინსტრუქციას.
  3. გთხოვთ მიჰყევით გვერდებს 26 და 50 pH ზონდისთვის (https://goo.gl/d62Rqv) კალიბრაციისა და ტემპერატურის კომპენსაციისთვის, ასევე გვერდებს, 7-8 და 50 DO ზონდისთვის (https://goo.gl/mA32mp). პირველ რიგში, გთხოვთ ხელახლა ატვირთოთ ატლასის მიერ მოწოდებული ზოგადი კოდი, გახსენით სერიული მონიტორი და შეიყვანეთ შესაბამისი ბრძანება.

ნაბიჯი 10: ძალიან ბევრი გაყვანილობა?

  1. თქვენ შეგიძლიათ წაშალოთ SD ბარათი და რეალურ დროში საათის მოდული Dragino Yun Shield– ის გამოყენებით Arduino დაფებისთვის (https://goo.gl/J9PBTH). კოდი უნდა შეიცვალოს იუნ შილდთან მუშაობისთვის. აქ არის კარგი ადგილი დასაწყებად (https://goo.gl/c1x8Dm)
  2. ჯერ კიდევ ძალიან ბევრი გაყვანილობა: Atlas Scientific– მა შექმნა სახელმძღვანელო მათი EZO სქემებისთვის (https://goo.gl/dGyb12) და გამწოვი დაფა (https://goo.gl/uWF51n). 18B20 ციფრული ტემპერატურის ინტეგრირება აქ არის (https://goo.gl/ATcnGd). თქვენ უნდა იცოდეთ Raspbian– ის (Debian Linux– ის ვერსია) ბრძანებები Raspberry Pi– ზე (https://goo.gl/549xvk)

ნაბიჯი 11: აღიარება:

ეს არის ჩემი გვერდითი პროექტი პოსტდოქტორული კვლევის დროს, რომელიც ვიმუშავე წინასწარ ფოტოობიორეაქტორზე მიკრო წყალმცენარეების გასამუშავებლად. ამიტომ ვიფიქრე, რომ აუცილებელია გავითვალისწინო, რომ მხარეებმა შექმნეს პირობები, რომ ეს მოხდეს. პირველ რიგში, გრანტი, DE-EE0007093: „ატმოსფერული CO2 გამდიდრება და მიწოდება (ACED)“, აშშ – ს ენერგეტიკის დეპარტამენტიდან, ენერგოეფექტურობისა და განახლებადი ენერგიის ოფისის მიზნობრივი წყალმცენარეების ბიოსაწვავი და ბიოპროდუქტები. მადლობას ვუხდი დოქტორ ბრიუს ე. რიტმანს Biodesign Swette გარემოსდაცვითი ბიოტექნოლოგიის ცენტრში, არიზონას სახელმწიფო უნივერსიტეტში, რომ მომცა საშუალება ელექტრონულ ტექნიკასა და არდუინოში. მე მოვამზადე გარემოს ინჟინერიაში, ძირითადად ქიმიაში, ცოტა მიკრობიოლოგიაში.

გირჩევთ: