ዝርዝር ሁኔታ:

በብሉቱዝ ስማርትፎን የሚቆጣጠረው ስማርት LED አምፖል 7 ደረጃዎች
በብሉቱዝ ስማርትፎን የሚቆጣጠረው ስማርት LED አምፖል 7 ደረጃዎች

ቪዲዮ: በብሉቱዝ ስማርትፎን የሚቆጣጠረው ስማርት LED አምፖል 7 ደረጃዎች

ቪዲዮ: በብሉቱዝ ስማርትፎን የሚቆጣጠረው ስማርት LED አምፖል 7 ደረጃዎች
ቪዲዮ: ኘሪንተርን ከኮምፒውተራችን ጋር እንዴት በቀላሉ እናስተዋውቃለን ? make printer 🖨️ to be known by a computer and print page. 2024, ታህሳስ
Anonim
Image
Image
በብሉቱዝ ስማርትፎን ቁጥጥር የሚደረግበት ስማርት LED መብራት
በብሉቱዝ ስማርትፎን ቁጥጥር የሚደረግበት ስማርት LED መብራት

የመብራት መሣሪያዎቼን ለመቆጣጠር ሁል ጊዜ እመኛለሁ። ከዚያ አንድ ሰው የማይታመን በቀለማት ያሸበረቀ የ LED መብራት ሠራ። በቅርቡ በዮሴፍ ላይ በዮሴፍ ካሻ የ LED መብራት አገኘሁ። በእሱ ተመስጦ ፣ የዘመናዊውን ንድፍ በመጠበቅ በርካታ ተግባሮችን ለመጨመር ወሰንኩ።

ዕቅዱ የብሉቱዝ ሞዱል እና አድራሻ ያለው የ WS2812B RGB LED ስትሪፕ በመጨመር መብራቱን ለተጠቃሚ ምቹ ለማድረግ ነው። ይህ የስማርትፎን መተግበሪያን በመጠቀም ብቻ የመብራት ቀለምን ለመቆጣጠር አስችሏል።

ደረጃ 1: ቁሳቁሶችን ይሰብስቡ

ቁሳቁሶችን ይሰብስቡ
ቁሳቁሶችን ይሰብስቡ
ቁሳቁሶችን ይሰብስቡ
ቁሳቁሶችን ይሰብስቡ

መሣሪያዎች ፦

• የመሸጫ ጣቢያ

• ማሞቂያ የሚነፍስ ጠመንጃ

• ቁፋሮ ማሽን

• ክብ መጋዝ

• Jigsaw

• የሽቦ መቁረጫ መያዣዎች

• ጠባብ-አፍንጫ ፕሌዘር

ቁሳቁሶች

• አሳላፊ አክሬሊክስ ቦርድ

• የጃፓን ሳይፕረስ እንጨት (ወይም የተረጋጋ እና ጠንካራ እስከሆነ ድረስ ማንኛውንም እንጨት መጠቀም ይችላሉ)

• ብሎኖች

• አይዝጌ ብረት ዋልታ ወይም ዱላ

• ሽቦዎች (ቀይ እና ጥቁር ሽቦ እጠቀማለሁ)

• የመሸጫ ቲን

የኤሌክትሮኒክስ ክፍሎች;

• አርዱዲኖ ናኖ

• የብሉቱዝ ሞዱል HC-05 (ከ Wifi ሞዱል ESP8266 ይልቅ ኮድ ማድረግ ቀላል ስለሆነ ይህንን ለመጠቀም ወሰንኩ)

• WS2812B አድራሻ ያለው RGB LED Strip

• LM2596 ደረጃ መውረድ ሞዱል

• የዲሲ በርሜል ኃይል ጃክ

ደረጃ 2 - የመብራት መዋቅርን መገንባት

የመብራት አወቃቀር መገንባት
የመብራት አወቃቀር መገንባት
የመብራት አወቃቀር መገንባት
የመብራት አወቃቀር መገንባት

በዚህ ደረጃ ፣ የመብራት አወቃቀሩን የመገንባት ሁለት መንገዶች አሉኝ- የእንጨት ሥራ ዘዴ እና 3 ዲ-ማተሚያ ዘዴ። የመጀመሪያውን ዘዴ እጠቀማለሁ። 3 ዲ አታሚ በመጠቀም እሱን ለመሥራት ከመረጡ ፣ እኔ ላዘጋጀሁት ሞዴል ወደ ደረጃ 2 ለመዝለል ነፃነት ይሰማዎ።

ለ መብራቱ የላይኛው ክፍል ፣ ከላይ እንደተመለከተው የ acrylic ሰሌዳውን ወደ 90 ° ማእዘን እጠጋለሁ እና እጠፍጣለሁ። ወደ እንደዚህ ዓይነት ፍጹም አንግል እና አቅጣጫ ለማጠፍ ረጅም ጊዜ እወስዳለሁ።

በመቀጠሌ, ሇመብቱ ታችኛው ክፍል. እንደ አለመታደል ሆኖ… በመብራት ታችኛው ክፍል ላይ በምሠራበት ቀን የግንባታውን ፎቶግራፍ ማንሳት ሙሉ በሙሉ ረሳሁ! ይህንን ፕሮጀክት ስጨርስ ያንን ተገነዘብኩ። ግን የመብራት የታችኛው ክፍል ልኬትን ለእርስዎ ለማቅረብ የተቻለኝን ሁሉ እሞክራለሁ።

በመሠረቱ ፣ 13x6x2 ሴ.ሜ (LxHxW) የሚለካ አራት ብሎኮችን እንጨት መቁረጥ ያስፈልግዎታል። በመቀጠልም በእንጨት ጠርዝ ላይ እንደ መሰላል መሰንጠቂያ መቁረጥ ያስፈልግዎታል። ሥዕሉ ከላይ ይታያል።

ደረጃ 3: 3 ዲ ቅርጾች

3 ዲ ቅርጾች
3 ዲ ቅርጾች
3 ዲ ቅርጾች
3 ዲ ቅርጾች

የራሳቸው 3 ዲ አታሚ ላላቸው ሁሉ በትክክለኛው ደረጃ ላይ ነዎት። ይህ ይህንን መብራት ለተጠቃሚ ምቹ አድርጎታል።

እውነቱን ለመናገር እኔ ያደረግሁት በጣም ከባድ እርምጃ ነበር። ሶፍትዌሩን ከጫንኩ በኋላ ወዲያውኑ ያደረግሁት የመጀመሪያው ነገር ይህ ነው!

የመብራት አወቃቀሩን ለመንደፍ Sketchup Pro ን እጠቀማለሁ። እንደ አለመታደል ሆኖ እኔ የውስጥ ክፍሉን ለመንደፍ በቂ ችሎታ የለኝም። የእኔ 3 ዲ አምሳያ አገናኝ ከዚህ በታች ባለው ፋይል ውስጥ አለ።

ደረጃ 4 - የአካል ክፍሎች መርሃግብር

የ ክፍሎች 'Schematic
የ ክፍሎች 'Schematic

የአካሎቹን መርሃግብሮች ለመገንባት ፍሪቲንግን እጠቀማለሁ። ንድፈ -ሐሳቡ በእውነቱ በጣም ቀላል ነው።

ደረጃ 5 - ኮዱ

ኮዱ
ኮዱ

ለዚህ የስሜት መብራት ኮድ ፣ ከ Arduino IDE የተወሰኑ ቤተ -መጽሐፍቶችን እጠቀም ነበር። ቤተመፃህፍት በደረጃ 7 ላይ ተዘርዝረዋል።

ለኮዱ ፣ የአርዱዲኖ ሶፍትዌር ራሱ ሊኖርዎት ይገባል። እዚህ ለማውረድ አገናኙን እሰጣለሁ።

እንዲሁም ንድፉ ወይም ኮዱ ከዚህ በታች ይታያል?

ከዚህ በታች ያለው ኮድ እዚህ ለመገልበጥ በጣም ረጅም ከሆነ በ Github.com ውስጥ ለኮዱ ፋይሉን አቅርቤያለሁ።)

#አካት #አካትት #አካትት #ifdef _AVR_ #ያካትቱ #endif

SoftwareSerial BT (10, 11);

#ጥራት ኤልኢዲ_ፒን 7 #ገላጭ NUM_LEDS 60 #ጥርት ያለ ብሩህነት 200 #ፍጥነታዊ ፍጥነት 10 #መግለፅ ወዲያውኑ 0 #መለየት ቀስተ ደመና_ስፔድ 50 CRGB ሌዶች [NUM_LEDS];

Adafruit_NeoPixel strip = Adafruit_NeoPixel (NUM_LEDS ፣ LED_PIN ፣ NEO_GRB + NEO_KHZ800) ፤

bool offOld = LOW;

bool WhiteOld = LOW; bool RedOld = LOW; bool GreenOld = LOW; bool BlueOld = LOW; bool TopazOld = LOW; bool LilacOld = LOW; bool RainbowOld = LOW; bool rgbOld = LOW; int showType = 0;

ባዶነት ማዋቀር () {

FastLED.addLeds (ሊዶች ፣ NUM_LEDS); ////////////

BT.begin (9600);

BT.println ("ከአርዱዲኖ ጋር ተገናኝቷል");

strip.set ብሩህነት (ብሩህነት);

strip.begin ();

strip.show ();

}

ቻር ሀ;

ባዶነት loop () {

ለ (int i = 0; i <= 59; i ++) {leds = CRGB (255 ፣ 255 ፣ 255) ፤ FastLED.show (); } bool off = LOW; bool White = LOW; bool Blue = LOW; bool Red = LOW; bool Green = LOW; bool Topaz = LOW; bool Lilac = LOW; bool ቀስተ ደመና = ዝቅተኛ; bool rgb = LOW; bool ende; ከሆነ (BT.available ()) {a = (char) BT.read ();

ከሆነ (a == 'o')

{ጠፍቷል = ከፍተኛ; BT.println ("LEDs off..");

} ሌላ {

ጠፍቷል = ዝቅተኛ; } // ======================================================= ==============================================

ከሆነ (a == 'w')

{ነጭ = ከፍተኛ; BT.println ("TURNING LEDs WHITE");

} ሌላ {

ነጭ = ዝቅተኛ; } // ======================================================= ==============================================

ከሆነ (a == 'b')

{ሰማያዊ = ከፍተኛ; BT.println ("ወደ ሰማያዊ መለወጥ"); } ሌላ {ሰማያዊ = LOW; }

// ===========================================================================================

ከሆነ (a == 'r')

{ቀይ = ከፍተኛ; BT.println ("ወደ ቀይ መለወጥ"); } ሌላ {Red = LOW; }

// ===========================================================================================

ከሆነ (a == 'g')

{አረንጓዴ = ከፍተኛ; BT.println (“ወደ አረንጓዴ መለወጥ”); } ሌላ {አረንጓዴ = LOW; }

// ===========================================================================================

ከሆነ (a == 't')

{ቶፓዝ = ከፍተኛ; BT.println ("ወደ ቶፓዝ መለወጥ"); } ሌላ {ቶፓዝ = LOW; }

// ===========================================================================================

ከሆነ (a == 'l')

{ሊላክ = ከፍተኛ; BT.println ("ወደ LILAC መለወጥ"); } ሌላ {Lilac = LOW; }

// ===========================================================================================

ከሆነ (a == 'a')

{ቀስተ ደመና = ከፍተኛ; BT.println ("የዝናብ አኒሜሽን"); } ሌላ {ቀስተ ደመና = LOW; } // ======================================================= ==============================================

ከሆነ (a == 'm')

{rgb = ከፍተኛ; BT.println ("MIX COLORS"); } ሌላ {rgb = LOW; }} ከሆነ (ጠፍቷል == LOW &&Old == ከፍተኛ) {መዘግየት (20); ከሆነ (ጠፍቷል == LOW) {showType = 0; // ከአኒሜሽን ውጭ ዓይነት 0 startShow (showType); }}

// ===========================================================================================

ከሆነ (ነጭ == LOW && WhiteOld == HIGH) {

መዘግየት (20); ከሆነ (ነጭ == LOW) {showType = 1; // የነጭ አኒሜሽን ዓይነት 1 startShow (showType); }}

// ====================================================== ============================================ ከሆነ (ቀይ == LOW && RedOld == HIGH) {መዘግየት (20); ከሆነ (ቀይ == LOW) {showType = 2; // ቀይ አኒሜሽን ዓይነት 2 startShow (showType); }}

// ===========================================================================================

ከሆነ (አረንጓዴ == LOW && GreenOld == HIGH) {

መዘግየት (20); ከሆነ (አረንጓዴ == LOW) {showType = 3; // አረንጓዴ እነማ ዓይነት 3 startShow (showType); }} // ====================================================== ==============================================

ከሆነ (ሰማያዊ == LOW && BlueOld == HIGH) {

መዘግየት (20); ከሆነ (ሰማያዊ == LOW) {showType = 4; // ሰማያዊ እነማ ዓይነት 4 startShow (showType); }}

// ===========================================================================================

ከሆነ (ቶፓዝ == LOW && TopazOld == HIGH) {

መዘግየት (20); ከሆነ (ቶፓዝ == LOW) {showType = 5; // የቶፓዝ አኒሜሽን ዓይነት 5 startShow (showType); }}

// ===========================================================================================

ከሆነ (Lilac == LOW && LilacOld == HIGH) {

መዘግየት (20); ከሆነ (Lilac == LOW) {showType = 6; // የቶፓዝ አኒሜሽን ዓይነት 6 startShow (showType); }} // ====================================================== ==============================================

ከሆነ (ቀስተ ደመና == LOW && RainbowOld == HIGH) {

መዘግየት (20);

ከሆነ (ቀስተ ደመና == LOW) {

showType = 8; // ቀስተ ደመና እነማ ዓይነት 8 startShow (showType); }}

// ===========================================================================================

ከሆነ (rgb == LOW && rgbOld == HIGH) {

መዘግየት (20);

ከሆነ (rgb == LOW) {

showType = 7; // ድብልቅ እነማ ዓይነት 7 rgb = ከፍተኛ;

startShow (showType);

} }

WhiteOld = ነጭ;

RedOld = ቀይ; BlueOld = ሰማያዊ; GreenOld = አረንጓዴ; ቶፓዝ ኦልድ = ቶፓዝ; LilacOld = Lilac; offOld = ጠፍቷል; RainbowOld = ቀስተ ደመና; rgbOld = rgb;

}

ባዶ ጀምር ማሳያ (int i) {

ቀይር (i) {

መያዣ 0: colorWipe (strip. ቀለም (0, 0, 0), SPEED); // ጥቁር/ጠፍቷል

ሰበር;

ጉዳይ 1 ስትሪፕ ቅንብር ብሩህነት (255); // ብሩህነትን ወደ MAX ይለውጣል

colorWipe (ስትሪፕ ቀለም (255 ፣ 255 ፣ 255) ፣ ወዲያውኑ); // ነጭ ስትሪፕ ቅንብር ብሩህነት (ብሩህነት); // ብሩህነትን ወደ ነባሪ እሴት መቋረጥ ዳግም ያስጀምሩ ፣

መያዣ 2: colorWipe (strip. ቀለም (255, 0, 0), SPEED); // ቀይ

ሰበር;

መያዣ 3: colorWipe (strip. ቀለም (0, 255, 0), SPEED); // አረንጓዴ

ሰበር;

መያዣ 4: colorWipe (strip. ቀለም (0, 0, 255), SPEED); // ሰማያዊ

ሰበር;

መያዣ 5: colorWipe (strip. ቀለም (0, 250, 255), SPEED); // ቶፓዝ

ሰበር;

ኬዝ 6: colorWipe (strip. ቀለም (221, 130, 255), SPEED); // ሊላክ

ሰበር; ጉዳይ 7: colorWipe (strip. ቀለም (255, 0, 0), SPEED); // ቀይ ቀለም ይጥረጉ (ስትሪፕ ቀለም (0 ፣ 255 ፣ 0) ፣ ፍጥነት); // አረንጓዴ ቀለም ይጥረጉ (ስትሪፕ ቀለም (0 ፣ 0 ፣ 255) ፣ ፍጥነት); // ሰማያዊ ቲያትር ቼዝ (ስትሪፕ ቀለም (0 ፣ 0 ፣ 127) ፣ ፍጥነት); // ሰማያዊ ቲያትር ቼዝ (ስትሪፕ ቀለም (127 ፣ 0 ፣ 0) ፣ ፍጥነት); // ቀይ ቲያትር ቼዝ (ስትሪፕ ቀለም (0 ፣ 127 ፣ 0) ፣ ፍጥነት); // አረንጓዴ እረፍት;

ጉዳይ 8 ቀስተ ደመና ሳይክል (25);

ሰበር; }} ባዶ ቀለም ይጥረጉ (uint32_t c ፣ uint8_t ይጠብቁ) {ለ (uint16_t i = 0; i

ባዶ ቀስተ ደመና ሳይክል (uint8_t ይጠብቁ) {

uint16_t i, j;

ለ (j = 0; j <256*10; j ++) {// በ 5 ጎማዎች ላይ የሁሉም ቀለሞች ዑደቶች ለ (i = 0; i <strip.numPixels (); i ++) {strip.setPixelColor (i, Wheel (((i * 256 / strip.numPixels ()) + j) & 255)); } strip.show (); መዘግየት (ይጠብቁ); }}

ባዶነት ቲያትር ጫጫታ (uint32_t c ፣ uint8_t መጠበቅ) {

ለ (int j = 0; j <10; j ++) {// 10 ዑደቶችን ለ (int q = 0; q <3; q ++) {ለ (int i = 0; i <strip.numPixels (); i = i+3) {strip.setPixelColor (i+q, c); // እያንዳንዱን ሶስተኛ ፒክሴል} strip.show () ላይ ያብሩ።

መዘግየት (ይጠብቁ);

ለ (int i = 0; i <strip.numPixels (); i = i+3) {strip.setPixelColor (i+q, 0); // እያንዳንዱን ሶስተኛ ፒክስል ያጥፉ}}}}

uint32_t ጎማ (ባይት WheelPos) {

WheelPos = 255 - WheelPos; ከሆነ (WheelPos <85) {return strip. Color (255 - WheelPos * 3, 0 ፣ WheelPos * 3); } ከሆነ (WheelPos <170) {WheelPos -= 85; የመመለሻ ገመድ ቀለም (0 ፣ WheelPos * 3 ፣ 255 - WheelPos * 3); } WheelPos -= 170; የመመለሻ ገመድ ቀለም (WheelPos * 3, 255 - WheelPos * 3, 0); }

ደረጃ 6 - መብራቱን መቆጣጠር

መብራቱን መቆጣጠር
መብራቱን መቆጣጠር
መብራቱን መቆጣጠር
መብራቱን መቆጣጠር
መብራቱን መቆጣጠር
መብራቱን መቆጣጠር

የእርስዎን ዘመናዊ ስልክ በመጠቀም የመብራት ቀለም መቆጣጠር ይቻላል።

በመጀመሪያ ፣ ከ Google Play መደብር ወይም ከአፕል የመተግበሪያ መደብር ‹የብሉቱዝ ተርሚናል HC-05› የተባለውን መተግበሪያ መጫን ያስፈልግዎታል።

በእራስዎ ስማርትፎን በኩል መብራቱን ለመቆጣጠር እነዚህ እርምጃዎች ናቸው

1. በስማርትፎንዎ ውስጥ ብሉቱዝን ያብሩ።

2. 'የብሉቱዝ ተርሚናል HC-05' የሆነውን መተግበሪያ ይክፈቱ።

3. አሁን የተጣመሩ መሣሪያዎችን በማያ ገጹ ላይ ማየት አለብዎት። «HC-05» ን ይምረጡ።

4. አሁን በስማርትፎንዎ ውስጥ ‹ከአርዲኖ ጋር መገናኘቱን› የሚያመለክት ጥቁር ማያ ገጽ ማየት ይችላሉ።

5. እዚህ አስደሳች ክፍል ነው ፣ በጽሑፍ ሳጥኑ ውስጥ ‹ለ› ብለው ቢተይቡ ፣ መብራቱ ወደ ሰማያዊ ቀለም ይለወጣል። ለመብራት መተየብ የሚችሉት የትእዛዙ ዝርዝር እነሆ-

- w ለ ነጭ

- ለ ሰማያዊ

- g ለአረንጓዴ

- r ለቀይ

- ለቶፓዝ

- l ለ lilac

- ለ ቀስተ ደመና እነማ

- ኦ ጠፍቷል

አዝናኝ?

6. በመጨረሻ ግን ቢያንስ ፣ ከላይ በስዕሉ ላይ እንደሚታየው ከማያ ገጹ በታች ያለውን አዝራር ወደሚፈልጉት ጽሑፍ ማበጀት ይችላሉ።

ደረጃ 7: በስሜትዎ መብራት ይደሰቱ

በስሜትዎ መብራት ይደሰቱ !!
በስሜትዎ መብራት ይደሰቱ !!
በስሜትዎ መብራት ይደሰቱ !!
በስሜትዎ መብራት ይደሰቱ !!
በስሜትዎ መብራት ይደሰቱ !!
በስሜትዎ መብራት ይደሰቱ !!

ይህንን Instructables እንደወደዱት ተስፋ አደርጋለሁ። ለእኔ በጣም ፈታኝ ፕሮጀክት ነበር ግን እኔ የ 14 ዓመት ልጅ እያለሁ ሙሉ በሙሉ ለመጨረስ ችያለሁ። ለወደፊቱ ማሻሻያዎች አንዳንድ ግብረመልስ ይስጡኝ።

ለንባብ እና ለገና ገና እናመሰግናለን!

የሚመከር: