Top 30 아두 이노 팬 속도 제어 The 43 New Answer

You are looking for information, articles, knowledge about the topic nail salons open on sunday near me 아두 이노 팬 속도 제어 on Google, you do not find the information you need! Here are the best content compiled and compiled by the https://chewathai27.com/to team, along with other related topics such as: 아두 이노 팬 속도 제어 아두이노 12v 쿨링팬 제어, 아두이노 5v 쿨링팬 제어, 아두이노 팬모터 제어, 아두이노 쿨링팬 제어, FAN PWM 제어, 아두이노 모터 속도 제어, 아두이노 pwm 제어, 아두이노 온도센서 팬


아두이노와 TIP120 을 이용해서 12V PWM 속도 조절 하기
아두이노와 TIP120 을 이용해서 12V PWM 속도 조절 하기


아두이노 우노 펜 PWM 제어, 속도 제어 – heat sink, fan

  • Article author: setoo0922.tistory.com
  • Reviews from users: 30377 ⭐ Ratings
  • Top rated: 4.0 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 아두이노 우노 펜 PWM 제어, 속도 제어 – heat sink, fan 아두이노 우노 펜 PWM 제어, 속도 제어 – heat sink, fan. by 쉬고 싶다 2020. 10. 16. 반응형. – PWM & 라이브러리 활용. – Fan pin 연결 (Vin, Gnd, PWM). …
  • Most searched keywords: Whether you are looking for 아두이노 우노 펜 PWM 제어, 속도 제어 – heat sink, fan 아두이노 우노 펜 PWM 제어, 속도 제어 – heat sink, fan. by 쉬고 싶다 2020. 10. 16. 반응형. – PWM & 라이브러리 활용. – Fan pin 연결 (Vin, Gnd, PWM). – PWM & 라이브러리 활용 – Fan pin 연결 (Vin, Gnd, PWM) – 코드  PWM & 라이브러리 활용 이번 포스팅에서는 Fan의 연결과 Fan의 PWM 제어에 대해 포스팅하고 PWM에 대해서와 라이브러리 활용에 관해서는 이전..
  • Table of Contents:

태그

관련글

댓글4

공지사항

최근글

인기글

최근댓글

티스토리툴바

아두이노 우노 펜 PWM 제어, 속도 제어 - heat sink, fan
아두이노 우노 펜 PWM 제어, 속도 제어 – heat sink, fan

Read More

아두이노와 TIP120 을 이용해서 12V PWM 속도 조절 하기 : 네이버 블로그

  • Article author: m.blog.naver.com
  • Reviews from users: 49977 ⭐ Ratings
  • Top rated: 3.2 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 아두이노와 TIP120 을 이용해서 12V PWM 속도 조절 하기 : 네이버 블로그 이번에는 한참 인기 절정이였던 공기청정기의 팬을 구동 시키고, 원하는 속도를 조절 할 수 있는 기능을 만들 수 있는 PWM 모듈 입니다. ​. 그럼 이 PWM … …
  • Most searched keywords: Whether you are looking for 아두이노와 TIP120 을 이용해서 12V PWM 속도 조절 하기 : 네이버 블로그 이번에는 한참 인기 절정이였던 공기청정기의 팬을 구동 시키고, 원하는 속도를 조절 할 수 있는 기능을 만들 수 있는 PWM 모듈 입니다. ​. 그럼 이 PWM …
  • Table of Contents:

카테고리 이동

나를 버리고 세상을 품다

이 블로그 
아두이노
 카테고리 글

카테고리

이 블로그 
아두이노
 카테고리 글

아두이노와 TIP120 을 이용해서 12V PWM 속도 조절 하기 : 네이버 블로그
아두이노와 TIP120 을 이용해서 12V PWM 속도 조절 하기 : 네이버 블로그

Read More

Arduino Uno를 사용하여 온도로 팬 속도를 제어하는 ​​방법

  • Article author: ciksiti.com
  • Reviews from users: 29239 ⭐ Ratings
  • Top rated: 3.8 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about Arduino Uno를 사용하여 온도로 팬 속도를 제어하는 ​​방법 아두이노 우노; 연결 전선; 브레드보드; 온도 센서(LM35); DC 팬; 액정 디스플레이(LCD); 전위차계. 따라서 온도에 대한 팬 속도 제어 회로의 개략도 … …
  • Most searched keywords: Whether you are looking for Arduino Uno를 사용하여 온도로 팬 속도를 제어하는 ​​방법 아두이노 우노; 연결 전선; 브레드보드; 온도 센서(LM35); DC 팬; 액정 디스플레이(LCD); 전위차계. 따라서 온도에 대한 팬 속도 제어 회로의 개략도 …
  • Table of Contents:

Best Tech Tips

온도 조절 팬 만들기

Arduino Uno를 사용하여 온도 제어 팬을 만들기 위한 하드웨어 어셈블리

온도 제어 팬을 위한 Arduino 코드

시뮬레이션

결론

Arduino Uno를 사용하여 온도로 팬 속도를 제어하는 ​​방법
Arduino Uno를 사용하여 온도로 팬 속도를 제어하는 ​​방법

Read More

아두이노로 DC모터 속도 제어하기 _ PWM이용

  • Article author: diyver.tistory.com
  • Reviews from users: 43811 ⭐ Ratings
  • Top rated: 5.0 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 아두이노로 DC모터 속도 제어하기 _ PWM이용 목표> – 모터를 사용하다보면 모터 출력을 조금만 더 낮추고 싶거나, 내 마음대로 조절하고 싶을때가 많다. 아두이노로 모터 회전속도를 제어할 수 … …
  • Most searched keywords: Whether you are looking for 아두이노로 DC모터 속도 제어하기 _ PWM이용 목표> – 모터를 사용하다보면 모터 출력을 조금만 더 낮추고 싶거나, 내 마음대로 조절하고 싶을때가 많다. 아두이노로 모터 회전속도를 제어할 수 … <목표> – 모터를 사용하다보면 모터 출력을 조금만 더 낮추고 싶거나, 내 마음대로 조절하고 싶을때가 많다. 아두이노로 모터 회전속도를 제어할 수 있는데, PWM 을 이용하여 모터드라이버에 신호를 주면 된다…
  • Table of Contents:

태그

관련글

댓글0

공지사항

최근글

인기글

최근댓글

태그

티스토리툴바

아두이노로 DC모터 속도 제어하기 _ PWM이용
아두이노로 DC모터 속도 제어하기 _ PWM이용

Read More

[아두이노] DC 모터, 아두이노 PWM으로 속도 제어

  • Article author: deneb21.tistory.com
  • Reviews from users: 32468 ⭐ Ratings
  • Top rated: 3.2 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [아두이노] DC 모터, 아두이노 PWM으로 속도 제어 아두이노의 PWM (Pulse Wth Modulation, 펄스 폭 변조) 을 이용해서 DC 모터의 속도를 제어할 수 있다. 예전 글에서는 DC 모터 드라이버 모듈인 … …
  • Most searched keywords: Whether you are looking for [아두이노] DC 모터, 아두이노 PWM으로 속도 제어 아두이노의 PWM (Pulse Wth Modulation, 펄스 폭 변조) 을 이용해서 DC 모터의 속도를 제어할 수 있다. 예전 글에서는 DC 모터 드라이버 모듈인 … 아두이노의 PWM (Pulse Width Modulation, 펄스 폭 변조) 을 이용해서 DC 모터의 속도를 제어할 수 있다. 예전 글에서는 DC 모터 드라이버 모듈인 L298N 모듈을 이용해서 DC 모터를 제어해 본 적이 있지만 (http:..
  • Table of Contents:
[아두이노] DC 모터 아두이노 PWM으로 속도 제어

티스토리툴바

[아두이노] DC 모터, 아두이노 PWM으로 속도 제어
[아두이노] DC 모터, 아두이노 PWM으로 속도 제어

Read More

아두 이노 선풍기 속도 제어-YNT

  • Article author: dryinfo.com
  • Reviews from users: 21814 ⭐ Ratings
  • Top rated: 3.3 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 아두 이노 선풍기 속도 제어-YNT 16/3/2011 · 준비물은 이정도면 된것 같습니다! 존재하지 않는 이미지입니다. 저희가 사용할 냉각 팬 이라고 생각하시면 됩니다. UNO보드의 출력 포트와 … …
  • Most searched keywords: Whether you are looking for 아두 이노 선풍기 속도 제어-YNT 16/3/2011 · 준비물은 이정도면 된것 같습니다! 존재하지 않는 이미지입니다. 저희가 사용할 냉각 팬 이라고 생각하시면 됩니다. UNO보드의 출력 포트와 … 아두 이노 선풍기 속도 제어아두 이노 선풍기 속도 제어 YNT 는 많은 아두 이노 선풍기 속도 제어 제품 정보, 제품 견적, 제조사와의 직접적인 커뮤니케이션, 아두 이노 선풍기 속도 제어 저렴한 가격, 품질 보증 및 아두 이노 선풍기 속도 제어 업계 브랜드를 수집 및 정리합니다. 빅 데이터 분석 및 연구에 따르면 발표된 상위 10위 아두 이노 선풍기 속도 제어 브랜드 순위는 욕실 캐비닛 브랜드를 칭찬하고 업계의 우수한 기업을 보여주는 것을 목표로 합니다.
  • Table of Contents:
아두 이노 선풍기 속도 제어-YNT
아두 이노 선풍기 속도 제어-YNT

Read More

팬 컨트롤 + 온습도 센싱 + LCD 디스플레이 = ??

  • Article author: crazydoc.tistory.com
  • Reviews from users: 24823 ⭐ Ratings
  • Top rated: 3.4 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 팬 컨트롤 + 온습도 센싱 + LCD 디스플레이 = ?? 팬속도 조절하기 위한 가변저항은 0V와 아두이노의 VCC 출력단을 연결하고, 가변값을 아날로그 입력에 연결했습니다. 팬의 4핀중에 12V, … …
  • Most searched keywords: Whether you are looking for 팬 컨트롤 + 온습도 센싱 + LCD 디스플레이 = ?? 팬속도 조절하기 위한 가변저항은 0V와 아두이노의 VCC 출력단을 연결하고, 가변값을 아날로그 입력에 연결했습니다. 팬의 4핀중에 12V, … 요새 뭔가 하나 만들 구상을 하면서, 팬도 속도 조절하면서 돌리고, 온도 센싱도 해서 화면에 보여주면 좋겠다 생각을 했습니다. 그럼 만들면 되지요. 필요한 것들을 생각해 봅니다. LCD 디스플레이, 팬, 온도 센..미친도사의 공연 중독, 모형 만들고 칠하기, 음악과 영화 이야기, 가족 이야기 등등. 하하.
  • Table of Contents:
팬 컨트롤 + 온습도 센싱 + LCD 디스플레이 = ??
팬 컨트롤 + 온습도 센싱 + LCD 디스플레이 = ??

Read More

모두의 아두이노 DIY – 김홍덕 – Google Sách

  • Article author: books.google.com.vn
  • Reviews from users: 15348 ⭐ Ratings
  • Top rated: 3.8 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 모두의 아두이노 DIY – 김홍덕 – Google Sách Updating …
  • Most searched keywords: Whether you are looking for 모두의 아두이노 DIY – 김홍덕 – Google Sách Updating 아두이노로 나만의 작품을 만들며 실력을 레벨 업!LED 점등부터 시작해 스마트홈 시스템까지! 이제 ‘프로젝트’를 시작해보자!모든 과정마다 동영상 강의 수록!아두이노 IDE를 설치하고 실습 환경을 구성하는 방법, 아두이노에 전자 소자를 연결해 회로를 작동시키는 방법, 내가 원하는 대로 아두이노가 동작하도록 프로그램을 작성하는 방법을 직접 따라해 보며 배울 수 있습니다. 실습은 [기본 실습] – [응용 실습] – [Semi 프로젝트] – [종합 프로젝트] 단계별로 진행할 수 있습니다. 처음에는 간단한 소자와 코드로 단순한 동작을 시켜보고, 다음에는 좀더 다양하게, 다음에는 좀더 복잡하게 활용도를 높여갑니다. 실습을 하다가 막히는 부분이 있다면 책 속의 QR코드로 동영상 강의를 참고해보세요. 회로 구현, 프로그래밍, 결과 확인까지 동영상으로 설명합니다! 궁리하고 연구하여 기능을 개선시켜 나가는 아두이노와 DIY의 장점을 경험해 보세요! 프로젝트 1 LED 스탠드 만들기아두이노 IDE를 설치하고 실습 환경을 구성해 봅니다. 터치센서로 네오픽셀 LED의 출력과 광량을 제어해 스탠드 ON/OFF 기능과 3단계 밝기 조절 기능까지 구현해 봅니다. 프로젝트 2 스마트 선풍기 만들기여러 소자를 활용해 선풍기에 스마트한 기능들을 담아 봅니다. DC 모터로 바람 세기를 3단계로 조정하고, 서보 모터로 회전 기능을 추가해 봅니다. 온도, 습도, 불쾌지수 데이터를 OLED에 시각적으로 나타내고, 불쾌지수가 높을 경우 선풍기를 자동으로 동작시켜 봅니다. 프로젝트 3 스마트홈 시스템 만들기집에서 활용할 수 있는 스마트한 IoT 시스템을 만들어 봅니다. 현관문이 열려 있거나, 가스가 누출될 경우 감지하여 경고를 울립니다. 사람이 들어오면 자동으로 현관에 불을 켜고, 가스 농도가 높아지면 알아서 가스 밸브를 잠급니다. 앱 인벤터를 활용해 스마트폰에서 스마트홈 시스템을 제어할 수도 있습니다. 거실과 방에 있는 전등을 스마트폰으로 켜고 꺼 봅니다.
  • Table of Contents:
모두의 아두이노 DIY - 김홍덕 - Google Sách
모두의 아두이노 DIY – 김홍덕 – Google Sách

Read More


See more articles in the same category here: https://chewathai27.com/to/blog.

아두이노 우노 펜 PWM 제어, 속도 제어 – heat sink, fan

반응형

– PWM & 라이브러리 활용

– Fan pin 연결 (Vin, Gnd, PWM)

– 코드

PWM & 라이브러리 활용

이번 포스팅에서는 Fan의 연결과 Fan의 PWM 제어에 대해 포스팅하고

PWM에 대해서와 라이브러리 활용에 관해서는 이전 포스팅을 참고해주시면 좋겠습니다!

PWM 관련 이전 포스팅입니다

2020/09/24 – [정리, 공부해요/전기, 전자, 통신] – PWM (Pulse Width Modulated) square wave, PWM파 with 아두이노

PWM 라이브러리 다운로드 & 활용 관련 이전 포스팅입니다.

2020/10/14 – [정리, 공부해요/아두이노] – 아두이노 우노, PWM 제어 라이브러리 활용

Fan pin 연결 (Vin, Gnd, PWM)

https://rgy0409.tistory.com/3362

3핀 쿨러는 DC 방식으로, 4핀 쿨러는 PWM방식으로 회전속도가 변합니다.

4핀 쿨러는 PWM 제어가 가능한데,

4번째 핀인 컨트롤 핀에 PWM 신호를 넣어주고,

GND와 VDC를 연결해주면 신호에 맞춰 속도가 변합니다.

PWM값에 대한 펜의 속도

펜을 컨트롤 해주다 보면, 일정 PWM 값 이상이 되어야 제대로(충분히) 회전하기 시작합니다.

위 그래프를 보면 PWM 듀디사이클이 0 ~ 20% 일때는 고정된 느린속도로 회전하다가 (바람이 거의 느껴지지 않을 정도로)

듀디사이클이 일때는 고정된 느린속도로 회전하다가 (바람이 거의 느껴지지 않을 정도로) 20 ~ 100% 까지는 PWM 듀디사이클에 따라 거의 비례하면서 제어됩니다 .

까지는 듀디사이클에 따라 거의 비례하면서 제어됩니다 이는 제조사마다 조금씩 차이가 있으니 자세한것은 데이터시트를 확인하시기 바랍니다 .

공급 전력

4핀을 사용하던, 3핀을 사용하던, Fan 자체는 12VDC, GND에 파워만 공급해주면 돌아갑니다.

단, fan의 요구 전압이 12V이고, 2.5W정도가 필요하다고 치면

12V에 0.3A이상 되는 전원을 연결해 주어야 풀로 돌아갑니다.

테스트 삼아 5V 아웃풋인 아두이노에 연결하면 약하고, 돌아가다 멈추는게 보이기도 하는, 시원찮게 돌아갑니다.

300×250

코드

저항 값을 인풋으로 받아,

0~1023의 값을 255로 변경하여 Fan의 PWM컨트롤 해주는 코드 입니다.

코드에서 아웃풋 값을 확인하기 위해 LCD display (I2C) (16×2)를 사용했고,

LCD 관련 내용은 필요하시다면 아래의 포스팅을 참고해주시면 감사하겠습니다 🙂

(라이브러리가 필요하시면 참고하시면 됩니다)

2020/10/06 – [정리, 공부해요/아두이노] – LCD display, 아두이노 우노, 기본연결/I2C/가변저항의 필요. 회로&코드

#include #include LiquidCrystal_I2C lcd(0x27, 16, 2); int resist = A0; int fan = 9; int fan_power = 0; int32_t frequency = 25000; //frequency (in Hz) void setup() { //initialize all timers except for 0, to save time keeping functions InitTimersSafe(); //sets the frequency for the specified pin bool success = SetPinFrequencySafe(fan, frequency); #ifndef ESP8266 while (!Serial); // will pause Zero, Leonardo, etc until serial console opens #endif Serial.begin(9600); lcd.init(); lcd.backlight(); lcd.setCursor(0,0); //if the pin frequency was set successfully, turn pin 13 on if(success) { lcd.print(“succeed freq”) ; delay(1000); } pinMode(resist,INPUT); } void loop() { //use this functions instead of analogWrite on ‘initialized’ pins pwmWrite(fan, fan_power); fan_power = map(analogRead(resist),0,1023,5,255); lcd.clear(); lcd.setCursor(0,1); lcd.print(analogRead(resist)); lcd.print(” / “); lcd.print(fan_power); Serial.print(resist); Serial.print(” , “); Serial.println(analogRead(resist)); delay(100); }

<<가변저항 연결 참고>>

가운데 시그널, 빨강 + 밤색 –

마무리

실제 넣은 코드의 GIF입니다.

Fan의 반응 속도가 느려서, 돌고 있는 Fan을 pwm값에 맞게 바로바로 잡아주는 것이 아니고 관성은 그대로 이기에,

속도가 넣는 값에 맞게 바로 맞춰지는 것은 아닙니다 🙂

반응형

아두이노로 DC모터 속도 제어하기 _ PWM이용

<목표>

– 모터를 사용하다보면 모터 출력을 조금만 더 낮추고 싶거나, 내 마음대로 조절하고 싶을때가 많다.

아두이노로 모터 회전속도를 제어할 수 있는데,

PWM 을 이용하여 모터드라이버에 신호를 주면 된다.

그 방법을 한번 알아보도록 하자.

<준비물>

– 아두이노(우노, 나노, 메가), 모터드라이버(L298N, L9110)

(모터 드라이버마다 사용법이 다를 수 있음)

<회로도>

< 12V 이하의 건전지 사용 시 회로 >

< 컴퓨터 USB 전원 사용 시 회로 >

<코드>

int motor_1 = 10; int motor_2 = 9; void setup() { // put your setup code here, to run once: pinMode(motor_1, OUTPUT); pinMode(motor_2, OUTPUT); } void loop() { // put your main code here, to run repeatedly: delay(1000); analogWrite(motor_1, 255/3); digitalWrite(motor_2, 0); delay(2000); analogWrite(motor_1, 255*2/3); digitalWrite(motor_2, 0); delay(2000); analogWrite(motor_1, 255); digitalWrite(motor_2, 0); delay(1000); }

<실행 결과>

youtu.be/nSYL2PLpLiI

위의 영상을보면 처음 2초 동안은 느리게

그다음 2초 동안은 중간 속도로

그다음 2초 동안은 모터 최고 속도로 회전하는 작동을 볼 수 있다.

코드를 보면 analogWrite( ) 함수를 사용하는 것을 볼 수 있다.

analogWrite( ) 함수를 사용함으로써 짧은 시간동안 제어신호를 보내고 끊고를 반복할 수 있는데,

analogWrite( ) 함수를 이용하기 위해서는 아두이노에서 PWM 핀을 확인해야 한다.

기본적으로 아두이노 우노와 나노는 핀맵이 똑같기 때문에, 아두이노 핀맵을 참고하면 된다.

아두이노 우노에서는

3, 5, 6, 9, 10, 11번 핀에서만 PWM 제어가 가능하다.

나머지 핀들은 출력할 때, HIGH 또는 LOW만 가능하다는 뜻이다.

위에서 소개한 방법은 PWM 제어가 가능한 핀들이 여유가 있을 때 사용하면 된다.

그런데 핀들이 많아지고 PWM 제어 핀이 여유가 없다면 다른 방법으로 모터 제어를 해야한다.

L298N 모터드라이버에서는 PWM 제어를 하는 방법은 두가지가 있다.

여태 필자가 위에서 사용한 방식 그대로 사용하는 방법이 있고,

다른 방법은 L298N 과 같은 모터드라이버에서만 가능한 방법이다.

모터드라이버에 있는 ENA 점퍼핀을 제거해야 한다.

점퍼핀을 제거하고 해당 핀에 아두이노 PWM제어 가능 핀을 연결시켜주어야 한다.

그리고 나머지 핀

IN 1, IN 2 핀은 아두이노의 아무 digital Pin 에 연결해주면 된다.

필자의 경우

IN 1 – 8번

IN 2 – 7번

ENA – 9번 핀에 연결해 주었다.

코드는 아래 코드를 이용하면 된다.

int motor_1 = 8; int motor_2 = 7; int motor_pwm = 9; void setup() { // put your setup code here, to run once: pinMode(motor_1, OUTPUT); pinMode(motor_2, OUTPUT); digitalWrite(motor_1, HIGH); digitalWrite(motor_2, LOW); pinMode(motor_pwm, OUTPUT); analogWrite(motor_pwm, 0); } void loop() { // put your main code here, to run repeatedly: delay(1000); analogWrite(motor_pwm, 255/3); delay(2000); analogWrite(motor_pwm, 255*2/3); delay(2000); analogWrite(motor_pwm, 255); delay(1000); }

youtu.be/bIjKJjXAUyg

시연 영상은 위 동영상을 확인하면 된다.

앞선 시연과 같다는 것을 볼 수 있다.

모터드라이버는 모스펫을 가지고 모터를 제어한다고 생각하면 된다.

위의 문구도 이해하기 어렵다면 스위치를 가지고 제어한다고 생각하면 된다.

스위치를 짧은 시간동안 여러번 켰다 껐다 하면서 모터에 전원을 공급해 주는 것이다.

그렇게 해서 모터에 인가되는 전압을 조절할 수 있는 것이다.

PWM에 대한 이해를 하려면 위의 그림을 이해해야 한다.

5V 전원에서 스위치를 켰다 껐다를 1초동안 몇 퍼센트로 반복하는지로 이해하면 된다.

제일 위에부터 보면

0%는 1초 동안 스위치를 켜지 않은 것으로 0V가 된다.

25%는 1초 동안 스위치를 켰다 껐다를 25%의 비율로 반복한 것으로 5V * 25% = 1.25V 로 출력된 것 처럼 보인다.

아두이노에서는 64/255 = 25% 이므로, analogWrite() 에서는 64 값을 주어야 한다.

DUTY 비에 대해서 알았으니

이제 모터드라이버 내부를 살펴보자.

일단 우리가 제거했었던 ENA 점퍼핀의 역할은

모터 A를 사용할 것이냐 말것이냐를 정하는 핀인데

평소에는 점퍼핀으로 연결되어 있어서 무조건 모터 A를 사용하는 것으로 설정되어 있다.

그래서 IN1 과 IN2 에 analogWrite() 를 이용한 PWM 신호로 모터 속도를 제어할 수 있었다.

모터드라이버 내부에서 모터를 사용하는 것으로 받아들이고 IN1 과 IN2 에 따라서 모터속도를 결정하기 때문이다.

ENA 점퍼핀을 제거하게 되면 아무리 IN1 과 IN2 에 신호를 보내줘도 모터는 작동하지 않는데,

내부 회로에서 모터 A를 사용하는 회로가 끊겨있기 때문이다.

대신 ENA 핀에 아두이노의 PWM 핀을 연결해주고,

IN1 에는 HIGH 신호를, IN2 에는 LOW 신호를 준다면

모터는 IN1 과 IN2 에서 회전방향을 인지를 한 상태이지만, ENA 의 신호를 대기하고 있는 상황인 것이다.

여기서 ENA 신호를 PWM 제어로 보내주게 되면 전류가 흘렀다 말았다 하면서 모터속도를 제어해주게 되는 것이다.

너무 잡소리가 많았다.

그냥 위의 코드를 그대로 따라하면 사용가능하니 따라하면 된다.

L298N 의 경우 ENA 과 ENB 핀이 있지만

L9110 의 경우 ENA과 ENB핀이 없다고 해서 모터 속도 제어가 안 되는 것이 아니니

위에서 설명한 방법대로 사용하면 된다.

※ 궁금하시거나 질문사항이 있으시면 댓글로 작성해주시면 답변해 드릴 수 있는 부분에서 친절히 답변드리겠습니다!

팬 컨트롤 + 온습도 센싱 + LCD 디스플레이 = ??

요새 뭔가 하나 만들 구상을 하면서, 팬도 속도 조절하면서 돌리고, 온도 센싱도 해서 화면에 보여주면 좋겠다 생각을 했습니다. 그럼 만들면 되지요.

필요한 것들을 생각해 봅니다.

LCD 디스플레이, 팬, 온도 센서, 가변저항, 아두이노…

그럼 메인 컨트롤러는 제일 많이 갖고 있고, 크기도 적당히 작은 아두이노 프로 미니 3.3V 8MHz짜리를 쓰기로 합니다.

자, 일단 LCD는 여러 개 갖고 있는 제일 평범한 16×2 캐릭터 LCD를 쓰기로 하고, 온도 센서는 검색했더니 온습도 센서가 저렴한 게 있어서 구입. 팬 속도 조절할 거니까 4핀짜리 팬 하나 구하고, 속도 조절을 위해서는 가변 저항 하나 쓰기로 합니다.

제일 흔해 빠진 16×2 캐릭터 LCD 2천원짜리 온습도 센서 DHT11

전원은 외부에서 24V를 받아서 12V로 변환해서 이걸로 장치들에 공급하기로 해서 제일 만만한 7812를 쓰기로 했습니다.

L7812CV

컨셉은 잡았으니, 어떤 형태가 될 지 스케치업으로 그려보았습니다. 3D 프린터가 있으니 케이스 제작까지 쉽게 할 수 있어 DIY로 뭔가 만들기가 한결 편해졌습니다.

납땜하고 테스트 중 …

조립에 꼭 필요한 기구 부품만 출력해서 조립까지 완료. 아직 케이스 부품 큰 거 하나 더 필요한데, 일단 이 정도만 해도 확인하는 데엔 충분합니다.

최종적으로 프로그램까지 마무리하고 시험 구동 화면 한 컷.

기능 설명을 하자면 …

(LCD) 현재의 팬 속도(RPM)을 읽어서 디스플레이 (LCD) 팬속도 조절을 PWM duty cycle (%)로 표현 (LCD) 온도값 (LCD) 습도값 (슬라이드 스위치) LCD의 백라이트 on/off (가변저항) 팬속도 조절 (록커스위치) 별도로 연결할 12V LED바 on/off

회로도도 첨부해 봅니다.

(누르면 좀 크게 보일 겁니다)

처음부터 완성형은 아니고, 테스트해가면서 핀 배치 좀 바꾸면서 최종적으로 마무리한 버전입니다.

LCD 디스플레이는 데이터 입출력을 위한 8핀 중에 D4~D7까지 4핀만 있어도 쓸 수 있고, 컨트롤을 위한 EN, RS 신호를 적당히 디지털 I/O에 연결하면 됩니다. (합계 6핀)

LCD 디스플레이의 컨트라스트를 조절을 위한 작은 가변 저항 하나 썼고요.

온습도 센서가 아날로그 입력인 줄 알고, 아날로그 핀에 연결했는데 실제 동작은 디지털 I/O에서 동작하더군요. 아두이노 사양을 보면 아날로그 입력 단자를 아날로그로만 써야 할 것처럼 쓰여 있는데, 실제로 디지털 I/O로도 동작합니다.

팬속도 조절하기 위한 가변저항은 0V와 아두이노의 VCC 출력단을 연결하고, 가변값을 아날로그 입력에 연결했습니다.

팬의 4핀중에 12V, GND를 제외하고 RPM핀 (3번)은 D2, PWM핀 (4번)은 PWN 출력이 가능한 D3에 연결하였습니다. 그냥 별 생각없이 연결했는데, RPM핀은 D2 연결했어야 하더라고요. 이건 소스 부분에서 설명하겠습니다.

아두이노 전원은 외부 24V 받아서 L7812CV로 변환한 12V를 입력으로 삼았습니다.

이 정도 회로 구성하고 각 구성품 별로 테스트를 했습니다. 작업한 순서는 다음과 같았습니다.

LCD 디스플레이 예제 불러다가 테스트 온습도 센서 예제 불러다가 LCD에 표시 가변저항 변경하면서 그 값을 팬의 속도 조절하는 PWM 출력으로 변경하고 화면 표시 팬 RPM 값 읽어서 표시하기 위의 값들을 보기 좋게 배치하기

이 중에 3번이 설명할 게 좀 있는데, 그냥 말로 풀어보면…

아날로그 입력에 연결된 가변저항의 값을 읽어서 (0~1023) 최대값인 1023으로 나누어서 100을 곱하면 PWM duty cycle이 %로 표현될 겁니다. 해당값들을 int로 정의한 변수에 적당히 배치하고 곱하고 나누면 된다. 쉽지요? 그런데, 이게 원하는 동작을 안 합니다. 시리얼 콘솔이나 LCD에 나타난 duty cycle 값이 음수(-)가 나오는 겁니다. 헐. 이게 뭐지?

일단, 아날로그 입력 0~1023값을 1023으로 나누는 데서 말썽이 시작입니다. 정수이기 때문에 0~1023을 1023으로 나누면 그 결과는 대부분 0으로 변환이 되어 버립니다. 그나마 입력값이 1023이 되어야 1이 간신히 됩니다.

그럼, 입력값에 먼저 100을 곱하면 될 것 같지요? 그렇게 100을 먼저 곱하고 1023으로 나누면 음수(-)가 나오는 걸 목결할 겁니다. 헐! 1023 * 100이 얼마 안 큰 수 같지만, 이게 정수의 범위를 벗어나 버립니다. 정수는 기껏해야 -32768~32767까지 밖에 안 됩니다. 그래서, 이 부분을 다 해결하기 위해서는 변수를 unsigned long으로 해야 우리가 원하는 계산값이 나옵니다. 이걸 생각 안 하고 팬 PWM에 넣다 보면, 0%에서 차근차근 올리다 보면 갑자기 팬이 윙~ 속도가 높아지고 어느 정도 더 올리면 다시 정상 동작합니다. 이것만 해결하면 PWM 출력은 쉽고요.

RPM 읽는 것은 아두이노의 인터럽트 기능을 써야 합니다. 전에 적외선 센서를 이용한 모터 RPM 카운터를 만들어 본 적이 있어서 어렵지 않게 응용할 수 있었습니다.

2016.08.25 – [디지털 라이프 電子的生活 My Digital Life/아두이노 (Arduino)] – 아두이노로 RPM 카운터를 만들었습니다.

사실 회로 구성할 때, 아무 생각 없이 디지털 I/O에 연결한 건데, 마침 2번 핀에 연결이 되었네요. 아두이노의 여러 디지털 I/O 핀 중에 인터럽트로 쓸 수 있는 핀 중 하나죠. ㅋㅋ

예전에 이것저것 만들어 본 적이 있는 지라 이번 프로그래밍은 두어시간 만에 마무리할 수 있었습니다. 이번에 만든 소스도 첨부하지요.

chamber_controller.ino 0.00MB

아, LCD 백라이트 on/off 스위치는 이 장치를 켜놓고 잠이 들 때 너무 환하지 말라고 슬라이드 스위치 하나 달았습니다. 이게 꺼져도 적당히 볼 수 있어서 이 기능 넣기를 잘 한 것 같아요.

이 정도로 해서 컨트롤러 부분을 완성한 것 같습니다. 케이스 일부를 하나 더 출력해야 하는데, 이번 주말에 출력해 볼까 합니다. 그리고 이제 이 프로젝트의 몸통을 시작해야겠지요.

일단 뭔지는 아직 공개되지 않은 프로젝트의 일부를 준비했습니다.

다음 작업을 이번 주말에 시작할 수 있으면 좋겠네요.

그럼 이번 글은 여기까지~!

반응형

So you have finished reading the 아두 이노 팬 속도 제어 topic article, if you find this article useful, please share it. Thank you very much. See more: 아두이노 12v 쿨링팬 제어, 아두이노 5v 쿨링팬 제어, 아두이노 팬모터 제어, 아두이노 쿨링팬 제어, FAN PWM 제어, 아두이노 모터 속도 제어, 아두이노 pwm 제어, 아두이노 온도센서 팬

Leave a Comment