پروژه آردوینو: ساخت سیستم اندازه گیری میزان کربن دی اکسید هوا + کد

پروژه ساخت دستگاه تمایش میزان CO2 با آردوینو

در نتیجه ی این پروژه میزان کربن دی اکسید هوا توسط آردوینو و سنسور گاز مورد نظر اندازه گیری شده و بر روی ال سی دی کاراکتری 16*2 نمایش داده خواهد شد.

 

لوازم و قطعات مورد نیاز این پروژه:

1- بورد آردوینو اونو

2- کابل آردوینو اونو (USB A-B)

3- سنسور کربن دی اکسید EZO

4- پل سنسور

LCD -5 کاراکتری 16*2

6- مبدل i2c/SPI برای ال سی دی

7- سیم جامپر نر ماده و نر به نر

 

برای خرید بسته لوازم شروع کار با آردوینو کلیک کنید

درباره این پروژه

در این پروژه، با استفاده از سنسور Atlas Scientific متصل به آردوینو Uno، یک دی‌اکسید سنج به سبک رومیزی می‌سازیم. قرائت زمان واقعی در واحد PPM بر روی یک صفحه نمایش کریستال مایع (LCD) نشان داده می شود. هر دو سنسور و نمایشگر از طریق I2C به آردوینو متصل می شوند.

توجه داشته باشید:

این دستگاه با استفاده از یک کامپیوتر ویندوزی ساخته و آزمایش شده است. روی سیستم عامل مک تست نشده است.
سنسور CO2 فقط برای کربن دی اکسید گازی است. آن را زیر آب فرو نبرید! این سنسور ضدا آب نیست.

 

لحیم کاری ماژول I2C به نمایشگر

از آنجایی که ماژول I2C یک جزء جداگانه است، مطابق شکل زیر آن را روی پین های LCD لحیم کنید.

 

 

 

 

 

سنسور CO2 را روی حالت I2C قرار دهید

سنسور CO2 را در حالت I2C با آدرس 105 تنظیم کنید.

به طور پیش فرض، سنسور CO2 در حالت UART قرار می گیرد. برای این پروژه باید آن را روی حالت I2C در آدرس پیش فرض 105 تنظیم کنید.

به دیتاشیت نحوه تغییر حالت ها مراجعه کنید.

همانطور که در مدار شماتیک نشان داده شده است، پل سنسور را با استفاده از سیم های جامپر نر به نر به آردوینو وصل کنید.

در مرحله بعد، سنسور CO2 را به پل سنسور وصل کنید. مطمئن شوید که سیم های سفید و آبی کابل داده را با برچسب های مربوطه روی پل مطابقت دهید.

ال سی دی کاراکتری را نیز با استفاده از سیم های جامپر نر به ماده مطابقمدار شماتیک به پل سنسور وصل کنید.

 

با استفاده از کابل USB A – B (کابل پرینتر)، آردوینو را به کامپیوتر خود متصل کرده و نرم افزار Arduino IDE را باز کنید. وقت آن است که کد را پروژه را بنویسید.

مطمئن شوید که کتابخانه های Arduino IDE شما به روز هستند. سپس کتابخانه EZO I2C را اضافه کنید. برای دانلود فایل کتابخانه Ezo_I2c اینجا کلیک کنید.

 

آن را از حالت فشرده خارج نکنید!

فایل.ZIP را به Arduino IDE وارد کنید. برای وارد کردن فایل.ZIP به Sketch > Include Library > Add.ZIP Library بروید.

سپس باید کتابخانه Adafruit LiquidCrystal را نصب کنید. برای این کار در IDE به Sketch > Include Library > Manage Libraries بروید و “Adafruit LiquidCrystal” را در نوار جستجوی کتابخانه جستجو کرده و بر روی Install کلیک کنید.

 

نوشتن کد آردوینو

الف) کد را با رفتن به File > Examples > EZO_I2C_lib-master > Examples > Projects > arduino_co2_meter باز کنید.

ب) CPU مورد نظر را تنظیم کنید: Tools > Board > Arduino AVR Boards > Arduino Uno

ج) پورتی را که آردوینو به آن متصل است انتخاب کنید: Tools > Port > COM X

د) کد را کامپایل و در آردوینو آپلود کنید. پس از اتمام، باید میزان CO2 را در مانیتور سریال خود مشاهده کنید (حتماً سرعت تبادل اطلاعات را روی 9600 تنظیم کنید). کنتراست صفحه نمایش را در صورت نیاز میتوانید با استفاده از درجه روی مبدل i2c تنظیم کنید.

 

مرحله نهایی پروژه

کابل آردوینو را از کامپیوتر جدا کنید. برای تغذیه بورد می توانید از آداپتور 12 ولت خارجی با خروجی جک 5 میلیمتری استفاده کنید.

پروژه کربن دی اکسید آردوینو

برنامه نوشته شده برای پروژه کربن دی اکسید سنج با آردوینو

<include <Ezo_i2c.h#
include <sequencer2.h#
include <Ezo_i2c_util.h#
include “Adafruit_LiquidCrystal.h#

;Ezo_board CO2 = Ezo_board(105, “CO2”)
;Adafruit_LiquidCrystal CO2_lcd(0)

;()void step1
;()void step2

Sequencer2 Seq(&step1, 1000, &step2, 0); //calls the steps in sequence and sets the time between them

}()void setup
Serial.begin(9600); //enables the serial port and sets the baud rate to 9600
Seq.reset(); //initialize the sequencer
CO2_lcd.begin(16, 2); //initialize the 16×2 lcd
CO2_lcd.setBacklight(HIGH); //turn on backlight of lcd
CO2_lcd.setCursor(1, 0); //set cursor to column 1, row 0
CO2_lcd.print(“Carbon Dioxide”); //sends the words “Carbon Dioxide” to line 1 of the display
CO2_lcd.setCursor(10, 1); //set cursor to column 10, row 1
CO2_lcd.print(“ppm”); //send the words “ppm” to the display
}

}()void loop
{Seq.run(); //run the sequncer to get the co2 readings

{

}()void step1
{CO2.send_read_cmd(); //sends a read command using the Ezo_i2c library

}()void step2
receive_and_print_reading(CO2); //get the reading from the CO2 sensor
Serial.println(); //and send it out through the serial monitor (this is for debugging, you do not need to do this)
lcd_print(); //send the Co2 reading to the LCD
{

void lcd_print() { //prints the co2 reading to the LCD

CO2_lcd.setCursor(3, 1); //moves the cursor to column 3, row 1
CO2_lcd.print(” “); //clears the CO2 readings on the display after each iteration
CO2_lcd.setCursor(3, 1); //moves the cursor to column 3, row 1
CO2_lcd.print(CO2.get_last_received_reading(), 0); //sends the CO2 reading to the display
}

 

گردآوری و ترجمه: مهندس سبحان جوان

منبع: https://create.arduino.cc/

با وبلاگ آکادمی رباتیک توسکانیک از مطالب مهم رباتیک در جهان آگاه باشید!

 

آخرین مقالات

مقالات مرتبط