Blynk로 서보모터 제어하기

회로도


신호선은 D0핀에 연결하고, VCC와 GND는 그림과 다르게 아두이노 UNO보드에다가 연결해준다. 서보모터는 원래 5V에서 동작하기 때문에 회로도 상에서는 3.3V에 연결을 해놓았지만 아두이노에서 5V핀만 따로 뽑아서 연결해주길 바란다. (5V배터리가 존재하지 않아 전압을 낮추어주는 레귤레이터를 사용해야 하는데 번거롭기 때문에 아두이노의 5V 핀을 쓴다.)

그 다음 Blynk App에 들어가서 새로운 프로젝트를 하나 만들어준다.

만들고 나면 메일로 Auth Token이 와있을 것이다.

그리고 아래 코드에서 auth, ssid, pass에다가 저번 시간처럼 값을 적절히 채워준 뒤. NodeMCU에 업로드 한다.

NodeMCU 코드

#define BLYNK_PRINT Serial


#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

#include <Servo.h>

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YourAuthToken";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";

Servo servo;

BLYNK_WRITE(V3) 
{
   servo.write(param.asInt());
}

void setup() 
{
   // Debug console Serial.begin(115200);
   Blynk.begin(auth, ssid, pass);
   
   servo.attach(16); // NodeMCU의 D0핀에 연결
}

void loop()

{
  Blynk.run();
}

Blynk App 설정

Blynk App에 들어가서는 위젯의 Slider를 선택해 준다.

그 다음 생성된 Slider를 눌러서 아래와 같이 V3으로 OUTPUT pin을 설정해준다. 여기서 기본 설정이 0부터 1024까지라고 되어있을텐데, 서보모터의 각도값이므로 0부터 180까지로 바꾸어준다.

그러면 아래와 같이 만들어지고, 이제 연결 버튼을 눌러 실습해보자.


Comments

Leave a Reply