ዝርዝር ሁኔታ:

ከ ARDUINO UNO R3: 5 ደረጃዎች ጋር አውቶማቲክ የብርሃን ምንጭ መከታተል
ከ ARDUINO UNO R3: 5 ደረጃዎች ጋር አውቶማቲክ የብርሃን ምንጭ መከታተል

ቪዲዮ: ከ ARDUINO UNO R3: 5 ደረጃዎች ጋር አውቶማቲክ የብርሃን ምንጭ መከታተል

ቪዲዮ: ከ ARDUINO UNO R3: 5 ደረጃዎች ጋር አውቶማቲክ የብርሃን ምንጭ መከታተል
ቪዲዮ: {721} LED Bar Graph Arduino Uno Code Using if else || Arduino Project 2024, ሀምሌ
Anonim
ከ ARDUINO UNO R3 ጋር አውቶማቲክ የብርሃን ምንጭ መከታተል
ከ ARDUINO UNO R3 ጋር አውቶማቲክ የብርሃን ምንጭ መከታተል

በዚህ ትምህርት ውስጥ ፣ በራስ-ሰር የመከታተያ የብርሃን ምንጭ ስርዓትን ለመሰብሰብ የ servo ሞተር ፣ የፎቶሰስተር እና የመጎተት መቆጣጠሪያን እንጠቀማለን።

ደረጃ 1: አካላት

- አርዱዲኖ ኡኖ ሰሌዳ * 1

- የዩኤስቢ ገመድ * 1

- ሰርቮ ሞተር * 1

- ፎቶቶሪስተር * 1

- ተከላካይ (10 ኪ) * 1

- የዳቦ ሰሌዳ * 1

- ዝላይ ሽቦዎች

ደረጃ 2: መርህ

ሰርቪው ሞተር እና የፎቶሪስቶርተር ቅኝት እና በ 180 ዲግሪ ውስጥ የብርሃን ምንጭ ይፈልጉ እና የብርሃን ምንጭ ቦታን ይመዝግቡ። ፍተሻውን ከጨረሱ በኋላ ሰርቪው ሞተር እና የፎቶግራፍ ባለሙያው በብርሃን ምንጭ አቅጣጫ ይቆማሉ።

ደረጃ 3: ንድፋዊ ንድፍ

የእቅድ ንድፍ
የእቅድ ንድፍ

ደረጃ 4: ሂደቶች

ሂደቶች
ሂደቶች
ሂደቶች
ሂደቶች

ደረጃ 1 ፦

ወረዳውን ይገንቡ።

ደረጃ 2

ኮዱን ከ https://github.com/primerobotics/Arduino ያውርዱ

ደረጃ 3

ንድፉን ወደ አርዱዲኖ ኡኖ ቦርድ ይስቀሉ

ኮዱን ወደ መቆጣጠሪያ ሰሌዳ ለመስቀል የሰቀላ አዶውን ጠቅ ያድርጉ።

በመስኮቱ ታችኛው ክፍል ላይ “ሰቀላ ተከናውኗል” ከታየ ፣ ንድፉ በተሳካ ሁኔታ ተሰቅሏል ማለት ነው።

አሁን ፣ የፎቶግራፍ አስተናጋጁን ለማንፀባረቅ የእጅ ባትሪ ከተጠቀሙ ፣ የ servo ሞተርን እና የፎቲስተስተሩ ሲሽከረከሩ ይመለከታሉ ፣ እና በመጨረሻም በብርሃን ምንጭ አቅጣጫ ይቆማሉ

ደረጃ 5 ኮድ

/********************************************************************

* ስም:

የብርሃን ምንጭ በራስ -ሰር መከታተል

* ተግባር

: የፎቶግራፍ አስተናጋጁን ለማብራት የእጅ ባትሪ ከተጠቀሙ ፣

* ታያለህ

የ servo ሞተር እና የፎቶግራፍ ተቆጣጣሪው ይሽከረከራሉ ፣

* እና በመጨረሻ

በብርሃን ምንጭ አቅጣጫ ላይ ያቁሙ።

***********************************************************************

/ኢሜል [email protected]

// ድር ጣቢያ www.primerobotics.in

#ያካትቱ

const int photocellPin = A0;

/************************************************/

Servo myservo; // አንድ servo ን ለመቆጣጠር servo ን ነገር ይፍጠሩ

int outputValue = 0;

int ማዕዘን = {0, 10, 20, 30, 40, 50, 60, 70, 80, 90 ፣

100, 110, 120, 130, 140, 150, 160, 170, 180};

int maxVal = 0;

int maxPos = 0;

/*************************************************/

ባዶነት ማዋቀር ()

{

Serial.begin (9600);

myservo.attach (9); // አገልጋዩን በፒን 9 ላይ ወደ servo ነገር ያያይዘዋል

}

/*************************************************/

ባዶነት loop ()

{

ለ (int i = 0;

እኔ <19; እኔ ++)

{

myservo.write (አንግል ); // ማእዘኑን ወደ servo ይፃፉ

የውጤት ዋጋ

= አናሎግ አንብብ (photocellPin); // የ A0 ን እሴት ያንብቡ

Serial.println (outputValue) ፤ // ያትሙት

ከሆነ (outputValue> maxVal) // የአሁኑ የ A0 እሴት ከቀዳሚው የበለጠ ከሆነ

{

maxVal = outputValue; // እሴቱን ይፃፉ

maxPos

= እኔ; //

}

መዘግየት (200);

}

myservo.write (አንግል [maxPos]); // ማእዘኑን ይፃፉ A0 ከፍተኛ እሴት ያለው

ሳለ (1);

}

የሚመከር: