ماژول ADS1115 یک مبدل ADC است که می توانید از آن برای اندازه گیری سیگنال های آنالوگ همچون خروجی سنسنر های مختلف استفاده کنید . ADS1115 چهار کانال ورودی سیگنال آنالوگ دارد که میتواند مقادیر صفر تا ولتاژ تغذیه را به مقادیر 16 بیتی تبدیل کند . در مدل های نختلف رزبری به دلیل اینکه واحد ADC ندارند می توانید از این ماژول استفاده کنید . رابط ارتباطی این ماژول I2C است لذا تنها از طریق دو پین SDA و SCL می توانید ماژول را راه اندازی کنید . در تصویر زیر پین های ماژول ADS1115 نشان داده شده است :

 

پین های A0 تا A3 ورودی سیگنال آنالوگ می باشد .

پین ADDR جهت تعیین آدرس ارتباط I2C است .

پین های SDA و SCL نیز برای ارتباط I2C می باشد .

پین های VCC و GND به ترتیب پین های تغذیه و زمین ماژول هستند .

 

راه اندازی ماژول ADS1115 با آردوینو :

برای راه اندازی این ماژول از ارتباط I2C استفاده می شود . از طریق پین ADDR می توانید آدرس I2C ماژول را تعیین کنید . پین ADDR چهار حالت مختلف به صورت زیر دارد :

  • 0x48 (1001000) ADR -> GND
  • 0x49 (1001001) ADR -> VDD
  • 0x4A (1001010) ADR -> SDA
  • 0x4B (1001011) ADR -> SCL

به طور مثال اگر پین ADDR را به SCL متثل کنید آدرس ماژول به 0x4B تغییر می کند .

 

#include <Wire.h>
#include <Adafruit_ADS1015.h>
 
Adafruit_ADS1115 ads(0x48);
 
void setup(void)
{
Serial.begin(9600);
Serial.println("Hello!");
 
Serial.println("Getting single-ended readings from AIN0..3");
Serial.println("ADC Range: +/- 6.144V (1 bit = 3mV/ADS1015, 0.1875mV/ADS1115)");
 
ads.begin();
}
 
void loop(void)
{
int16_t adc0, adc1, adc2, adc3;
 
adc0 = ads.readADC_SingleEnded(0);
adc1 = ads.readADC_SingleEnded(1);
adc2 = ads.readADC_SingleEnded(2);
adc3 = ads.readADC_SingleEnded(3);
Serial.print("AIN0: ");
Serial.println(adc0);
Serial.print("AIN1: ");
Serial.println(adc1);
Serial.print("AIN2: ");
Serial.println(adc2);
Serial.print("AIN3: ");
Serial.println(adc3);
Serial.println(" ");
 
delay(1000);
}

 

 

Tags:
About Author: USER_4