Tải bản đầy đủ - 0 (trang)
Code điều hướng năng lượng mặt trời

Code điều hướng năng lượng mặt trời

Tải bản đầy đủ - 0trang

// 180 horizontal MAX

Servo horizontal;

int servoh = 90; // 90;

int servohLimitHigh = 170;

int servohLimitLow = 5;

// 65 degrees MAX

Servo vertical;

int servov = 45; // 90;

int servovLimitHigh = 130;

int servovLimitLow = 5;

// LDR pin connections

// name = analogpin;

int ldrlt = 0;

int ldrrt = 1;

int ldrld = 2;

int ldrrd = 3;

void setup()

{ Serial.begin(9600);

// servo connections

// name.attacht(pin);

horizontal.attach(9);

vertical.attach(10);

68



horizontal.write(90);

vertical.write(45);

delay(3000);

}

void loop()

{ int lt = analogRead(ldrlt);

int rt = analogRead(ldrrt);

int ld = analogRead(ldrld);

int rd = analogRead(ldrrd);

// int dtime = analogRead(4)/20;

// int tol = analogRead(5)/4;

int dtime = 10; int tol = 50;

int avt = (lt + rt) / 2;

int avd = (ld + rd) / 2;

int avl = (lt + ld) / 2;

int avr = (rt + rd) / 2;

int dvert = avt - avd;

int dhoriz = avl - avr;

Serial.print(avt);

69



Serial.print(" ");

Serial.print(avd);

Serial.print(" ");

Serial.print(avl);

Serial.print(" ");

Serial.print(avr);

Serial.print(" ");

Serial.print(dtime);

Serial.print(" ");

Serial.print(tol);

Serial.println(" ");

if (-1*tol > dvert || dvert > tol)

{

if (avt > avd)

{

servov = ++servov;

delay(100);



if (servov > servovLimitHigh)

70



{

servov = servovLimitHigh;

}

}

else if (avt < avd)

{

servov= --servov;

delay(100);

if (servov < servovLimitLow)

{

servov = servovLimitLow;

}

}

vertical.write(servov);

}

if (-1*tol > dhoriz || dhoriz > tol)

{

if (avl > avr)

{

71



servoh = --servoh;

delay(100);

if (servoh < servohLimitLow)

{

servoh = servohLimitLow;

}

}

else if (avl < avr)

{

servoh = ++servoh;

delay(100);

if (servoh > servohLimitHigh)

{

servoh = servohLimitHigh;

}

}

else if (avl = avr)

{

// nothing

}

72



horizontal.write(servoh);

}

delay(dtime);

}



73



 Code điều khiển và giám sát

#define BLYNK_PRINT Serial



#include

#include

#include



// You should get Auth Token in the Blynk App.

// Go to the Project Settings (nut icon).

//char auth[] = "08253a9ffc7c465481d066b6ab7004ea";//sever Blynk

char auth[] = "ce315ffb9d1e44878109a0cfce2fbe95";//sever VN

#include "DHT.h"

const int DHTPIN = 2;

//Đọc dữ liệu từ DHT11 ở chân 2 trên mạch Arduino

const int DHTTYPE = DHT11;

DHT dht(DHTPIN, DHTTYPE);

void setup()

{

// Debug console

Serial.begin(9600);

dht.begin();

pinMode(9, OUTPUT);

pinMode(8,OUTPUT);

pinMode(7,OUTPUT);

pinMode(6,OUTPUT);

Blynk.begin(auth);

// You can also specify server:

//Blynk.begin(auth, "blynk-cloud.com", 8442);

//Blynk.begin(auth, IPAddress(192,168,1,100), 8442);

// For more options, see Boards_Ethernet/Arduino_Ethernet_Manual example

}

74



void loop()

{

Blynk.run();

float h = dht.readHumidity(); //Đọc độ ẩm

float t = dht.readTemperature();

Blynk.virtualWrite(V5, h);

Blynk.virtualWrite(V6, t);

Serial.print("nhiet do: ");

Serial.println(t);

Serial.print("do am: ");

Serial.println(h);

int value = analogRead(A1);

int percent = map(value, 0, 1023, 0, 100);

Blynk.virtualWrite(V7,100-percent);

Serial.print(percent);

Serial.println('%');

}



75



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Code điều hướng năng lượng mặt trời

Tải bản đầy đủ ngay(0 tr)

×