2022-05-12 Arduino_9

트랜스두서(transducer)

한 에너지 형태(신호)를 다른 에너지 형태(신호)로 변환하는 소자를 총칭하는 용어.

  • 센서 : 비전기적 양을 전기신호로 변환하는 입력 트랜스두서(input transducer)
  • 액추에이터 : 전기신호를 다른 에너지로 변환하는 출력 트랜스두서(output transducer)

A/D 변환기

  • 센서 등에서 측정된 아날로그 전기 신호를 컴퓨터가 읽을 수 있는 병렬 또는 직렬의 디지털 데이터로 변환하여 주는 장치
  • 측정하려는 아날로그 물리량의 범위 및 시스템의 응용 목적에 따라 분해능이나 정밀도가 적합한 것을 사용
    • 변환시간(conversion time) : A/D변환을 수행하는데 필요한 시간. 초당 샘플링 속도로 나타냄.
    • 분해능(resolution) : A/D 컨버터가 표현할 수 있는 최소 아날로그량. (n비트 A/D컨버터 → 1/2^n)

아날로그 입력

가변 저항기

자항 물질이 둥글게 연결되어 있고 저항 물질의 길이의 변화에 따라 저항 값이 변함.

analogRead()

전압 아두이노 입력값

전압아두이노 입력값
5V1023
0V0

analogRead() 함수로 값을 읽음.

전압의 크기를 10bit, 0~1023의 정수 값으로 대응. (0V는 0, 5V는 1023)


3_5

// C++ code
//
void setup()
{
  Serial.begin(9600);
}

void loop()
{
  int a = analogRead(A0);
  Serial.println(a);
  delay(100);
  
}
Code language: JavaScript (javascript)

가변저항기를 거쳐서 입력되는 전압값을 시리얼 모니터로 출력.


3_6

// C++ code
//
int ledPin = 13;
int val = 0;

void setup()
{
  pinMode(ledPin, OUTPUT);
}

void loop()
{
  val = analogRead(A0);
  digitalWrite(ledPin, HIGH);
  delay(val);
  digitalWrite(ledPin, LOW);
  delay(val);
}
Code language: JavaScript (javascript)

가변저항기 값에 비례해 LED가 켜지고 꺼지는 시간을 조절.


조도센서 CDS

빛의 밝기를 측정하는 센서

CDS 조도센서는 광 도전체인 황화카드뮴(cadmium sulfide)이라는 의미

빛이 많이 들어오면 저항이 작아지고 빛이 적게 들어오면 저항이 커지는 성질을 가짐.

카메라의 노출계, 가로등의 자동 점멸 장치, TV 수상기의 자동 휘도 조정장치 등에 사용됨.


3_7

// C++ code
//
void setup()
{
  Serial.begin(9600);
}

void loop()
{
  int a = analogRead(A0);
  Serial.println(a);
  delay(200);
}
Code language: JavaScript (javascript)

빛의 밝기가 강하면 조도센서의 저항이 감소해 A0의 입력값이 상승하고 반대로 빛의 밝기가 약하면 조도센서의 저항이 상승하면서 A0의 입력값이 하락한다.


3_8

// C++ code
//
void setup()
{
  Serial.begin(9600);
  pinMode(4, OUTPUT);
}

void loop()
{
  int sensorValue = analogRead(A0);
  Serial.println(sensorValue);
  if (sensorValue > 500) digitalWrite(4, LOW);
  else digitalWrite(4, HIGH);
  delay(200);
}
Code language: JavaScript (javascript)

빛의 밝기가 일정치보다 강하면 LED를 끄고 일정치보다 약하면 LED를 켠다.

참고 :조도센서와 GND 사이에 연결된 저항의 세기를 바꾸면 조도센서 값의 범위가 바뀐다.

 

댓글 남기기