Мазмұны:

Жарықдиодты шамды кетіру: 6 қадам (суреттермен)
Жарықдиодты шамды кетіру: 6 қадам (суреттермен)

Бейне: Жарықдиодты шамды кетіру: 6 қадам (суреттермен)

Бейне: Жарықдиодты шамды кетіру: 6 қадам (суреттермен)
Бейне: Басқа тышты деген осы 😡 2024, Қараша
Anonim
Светодиодты шамды лифтинг
Светодиодты шамды лифтинг

Сіз магнитпен ойнап, оларды левитация жасауға тырыстыңыз ба? Мен көпшілігімізде бар екеніне сенімдімін, және егер бұл өте ұқыпты болса, біраз уақыттан кейін бұл мүмкін емес екенін түсінесіз. Бұл Эрншоу теоремасына байланысты, ол тек ферромагниттік материалдармен объектіні көтеру мүмкін еместігін дәлелдейді. Дегенмен, бізде шешудің жолы бар. Магниттерді қолданудың орнына, біз шамды tensegrity деп аталатын иллюзия арқылы көтереміз, шамды өзгермелі етіп жасаймыз!

1 -қадам: Жабдықтар

Жабдықтар
Жабдықтар
Жабдықтар
Жабдықтар
Жабдықтар
Жабдықтар

Бұл шамды жасау үшін әр түрлі керек -жарақтар қажет:

Электроника:

  • Arduino Nano тақтасы
  • Өткізгіш сымдар
  • 24 жарықдиодты сақина
  • 9В батарея
  • 9В батарея қосқышы

Сәндік материалдар:

  • Картон (немесе ағаш, егер лазерлік кесу қолданылса)
  • Балық аулау желісі (кез келген адам жұмыс істеуі керек және мүмкіндігінше мөлдірін таңдауға тырысыңыз)

Басқалар:

  • Резеңке таспа
  • Ыстық желім қаруы
  • Ыстық желім таяқшалары
  • Дәнекерлеу жабдықтары
  • Velcro

2 -қадам: электрониканы жинаңыз

Электрониканы жинаңыз
Электрониканы жинаңыз
Электрониканы жинаңыз
Электрониканы жинаңыз
Электрониканы жинаңыз
Электрониканы жинаңыз
Электрониканы жинаңыз
Электрониканы жинаңыз

Алдымен біз электронды бөлшектерді жинауымыз керек. Бұл қарапайым және оны бірнеше қадаммен жасауға болады:

  1. 9V батарея қосқышын Arduino Nano тақтасына дәнекерлеңіз. Бұл біраз қиын болуы мүмкін, бірақ бұл жобаның сәтті болуының маңызды бөлігі, себебі тақтаға жеткілікті қуат берілмесе, ол дұрыс жұмыс істемейді. Қызыл сымды VIN түйреуішіне, ал қара сымды тақтадағы GND түйреуіштерінің біріне қосыңыз.
  2. Ілмектерді жарықдиодты сақинаның артқы жағына дәнекерлеңіз. Бұл 24 жарықдиодты сақиналарда әдетте дәнекерлеуге арналған 4 орын бар, бірақ бұл жобада біз тек 3 -ті қолданамыз: DI, VCC және GND. DO бөлігі бұл жобада қолданылмайды. Оны сақинаны көрсететін сыммен дәнекерлеңіз, өйткені сақинаның сырты қағаздың артында жасырылады, бірақ егер секіргіш сымдар дұрыс емес бағытта дәнекерленген болса, ол шамнан шығып кетеді.
  3. Сымдарды наноға қосыңыз. DI сәйкесінше жарық диодты сақина мен Arduino Nano D5 істігіне, VCC 5V -ге және GND GND -ге қосылуы керек.

Ал сіз электроникамен аяқталдыңыз!

3 -қадам: Tensegrity мүсіні

Tensegrity мүсіні
Tensegrity мүсіні
Tensegrity мүсіні
Tensegrity мүсіні
Tensegrity мүсіні
Tensegrity мүсіні

Бұл жоба үшін біз tensegrity қолданамыз, бұл бір нәрсені орнында ұстау үшін кернеуді қолдану әрекетін сипаттайтын термин. Егер сіз мүсінді жасағыңыз келсе, онда сіз лазермен кесуге арналған Adobe Illustrator файлын жүктей аласыз немесе фотосуретке қарап, оны картоннан өзіңіз қиып аласыз.

Егер сіз бұл қалай жұмыс істейтінін білгіңіз келсе, төменде оқуды жалғастырыңыз!

Бұл шиеленісті мүсін балық аулау сызығын қолданып, оны қозғалатын затқа ұқсайды. Аннотацияланған фотосуретте 6 жолдың әрқайсысының орны бөлек түстермен ерекшеленеді. Ұзын қызылдар - төбені құлап кетуден сақтайтындар. Бұларды «құрылымдық сызықтар» деп атайық. Содан кейін бізде қызыл сызықтан әлдеқайда қысқа көк сызықтар бар, олар жоғарғы бөлікті жоғары ұстап тұрады. Бұларды «левитациялық сызықтар» деп атайық.

Біздің шиеленісті мүсінімізде левитациялық сызықтар құрылымды жоғары ұстайды. Жоғарғы бөлік гравитация әсерінен төмен қарай жылжуды қалайтындықтан, левитациялық сызықтар құрылымды жоғары ұстап тұруы керек. Олар бекітілген кезде, олар өте кернеулі, құрылымның жоғарғы бөлігін жоғары ұстайды. Мүсіннің төрт жағының екеуінде олардың бірі бар, бірақ теория бойынша біреуі құрылымды ұстап тұру үшін жеткілікті.

Алайда, егер сіз тек левитация сызықтарын бекітуге тырыссаңыз, оның оңай құлап кететінін байқайсыз. Себебі жоғарғы жағы тек екі нүктемен бекітілген, бұл тұрақты құрылымды қамтамасыз ету үшін жеткіліксіз. Қарақұйрықты елестетіп көріңіз. Ол бір жолмен бекітілген, бұл оның еркін қозғалуына мүмкіндік береді. Біздің жағдайда бізде үстіңгі бөлік екі нүктемен бекітілген, ал екі нүкте сызықты құрайды, сондықтан біздің мүсіннің жоғарғы жағы тек левитациялық сызықтармен ғана кесіледі.

Бұл жерде құрылымдық сызықтар ойнауға келеді. Бұл сызықтар да шиеленісті және олар құрылымды орнында ұстайды. Егер құрылымның жоғарғы жағы кез келген бағытқа қисайса, онда басқа бағыттағы құрылымдық сызықтар құрылымды орнында ұстайды, бұл құрылымның тұрақты болуына әкеледі.

Бұл сиқырға ұқсаса да, мүсіннің артында көптеген себептер бар!

4 -қадам: құрылымды жинау

Құрылымды жинау
Құрылымды жинау
Құрылымды жинау
Құрылымды жинау
Құрылымды жинау
Құрылымды жинау
Құрылымды жинау
Құрылымды жинау

Енді шамды бекіту үшін құрылымды жинау уақыты келді. Бұл бөлік салыстырмалы түрде оңай:

  1. Негізгі бөліктерді табыңыз. Олар әрқашан ең үлкен шаршы.
  2. «Қол» бөліктерін киіңіз. Олардың барлығына бір жақтан қарағанына көз жеткізіңіз. Бұл кернеу құрылымын мақсатты түрде жинауға мүмкіндік береді.
  3. Бүйірлік бөліктердің бірін салыңыз. Бұл бізге желімделіп жатқан кезде қолдың бөлігі тым қатты итерілмейтініне сенімді болуға мүмкіндік береді және құрылымның бүкіл негізін туралауға мүмкіндік береді.
  4. Қалған құрылымды жинаңыз. Бөлшектер дәл орнына түсуі керек, ал желімдеудің арқасында сіз жоғарыда көрсетілгендей боласыз.

Осыдан кейін балық аулау сызықтарын құрылымдарға қосатын уақыт келді.

  1. Ыстық желімнің көмегімен құрылымның бір бөлігінің бұрыштарының әрқайсысына балық аулау сызығының төрт бөлігін жабыстырыңыз. Олардың ұзындығы бірдей екеніне көз жеткізіңіз.
  2. Балық аулау сызығын басқа құрылымның сәйкес бұрыштарына жабыстырыңыз. Егер мен бүкіл құрылымды жатқызсам, оны желімдеу оңайырақ болды, сондықтан оны қолыммен ұстауға тура келмеді.
  3. «Левитация сызықтарын» орнына жабыстырыңыз. Желім салқындағаннан кейін жоғарғы және төменгі бөліктерді мүмкіндігінше итеріп, құрылымның қолдарын байланыстыратын соңғы екі балық аулау желісін жабыстырыңыз.

Егер сіз осы уақытқа дейін жетсеңіз, онда жақсы жұмыс! Сіз жұмыстың көп бөлігін орындадыңыз:)

Енді біз шамды жинауымыз керек. Бұл бөлім өте оңай:

  1. Жарық диодты сақинаны дөңгелек дөңгелек бөлігіне екі тесік ортасында жабыстырыңыз. Өткізгіш сымдардың пластикалық тірегі сыртқы шеңбердің ішінде толық орналасқанына көз жеткізіңіз.
  2. Екі дөңгелек бөлікті бір -біріне жабыстырыңыз. Ортасында екі саңылауы бар толық шеңбері бар бірінші «дөңгелек» бөлігін жабыстырыңыз. Бұл біздің лампаның жоғарғы бөлігін құрайды.
  3. Батареяны соңғы төртбұрышты бөлікке байлаңыз. Бұл бөлікте 9В батареясына арналған тесік бар және оны Arduino Nano тақтасымен бірге резеңке жолақтармен байлаңыз. Бұл жерде желім қолданбауды ұмытпаңыз: батарея ақырында өледі және сізде ештеңе болмайды!
  4. B5 қағазын алып, оны шамның шетіне жабыстырыңыз. Бұл шамның көлеңкесі сияқты жұмыс істейді, сонымен қатар ол көрермендердің тақта мен батареядағы шамды көруіне кедергі болады.
  5. Сізде шамның түбінен бір нәрсе ілінуі мүмкін. Менің бірнеше фотосуреттерімде люстра әсерін жасау үшін қысқа, кесілген сабан бөліктерін қолдануға тырыстым, бірақ кейінірек мен оны алып тастадым, себебі бұл менің суреттеріме кедергі болды. Сіз мұнда енгізген нәрсемен шығармашылықпен айналыса аласыз!
  6. Шамның жоғарғы жағын дөңгелектің соңғы бөлігіне жабыстырыңыз. Тағы да, балық аулау сызығының барлық бөліктерінің ұзындығы бірдей екеніне көз жеткізіңіз.
  7. Велкроны екінші дөңгелектің жоғарғы жағына және құрылымның жоғарғы бөлігінің түбіне жабыстырыңыз. Бұл шамды көтеру кезінде орнында ұстайды. Velcro қолдану сізге оны алып тастауға және қажет болғанда жаңа батарея беруге мүмкіндік береді.

5 -қадам: кодтау

Кодтау!
Кодтау!
Кодтау!
Кодтау!

Енді міне, қызықты жері: лампаның қалай болғысы келетінін кодтау! Мен мұнда айналатын RGB шамды қолдандым, бірақ қалағаныңызды жасай аласыз және онымен шығармашылықпен айналысыңыз!

Мен соңғы нұсқаулықта кодтың әр бөлігін өз бетімше түсіндіргенімді білемін, бірақ бұл жолы мен түсініктемелердің барлығын кодқа енгіздім. Сіз кодты зерттей отырып, мен жасаған нәрсені есіңізде сақтаңыз: айналмалы кемпірқосақ шамы. Егер бұл түсініктеме жеткіліксіз болса (оны қалай түсіндіруге болатынын білмеймін), сіз әрқашан басындағы бейнеге қайта қарай аласыз. Сіз кодты төменде көре аласыз немесе оны төмендегі Arduino Create веб -сайтындағы сілтемеден жүктей аласыз!

Arduino сілтемесін жасаңыз

(Сонымен қатар, егер жеткілікті адамдар кодты егжей -тегжейлі түсіндіруді сұраса, мүмкін мен бұл туралы бірдеңе жасаймын …)

Levitating_Lamp.ino

#қосу// жарықдиодты сақинаны пайдалану үшін кітапхананы қосыңыз
#definePIN5 // светодиодты сақина қосылған түйреуіш
#defineNumPixels24 // сақинадағы пиксельдер саны. 8 светодиоды бар сақиналар бар немесе неопиксельдері бар жарықдиодты жолақты қолдануға болады. Сізде қанша жарық диоды бар екенін көрсетуді ұмытпаңыз!
Adafruit_NeoPixel пиксельдері (NumPixels, PIN, NEO_GRB + NEO_KHZ800); // пиксель деп аталатын жарық объектісін жариялау. Бұл код жарық диодты сақинаны білдіреді.
#defineDELAYVAL20 // бұл тақта шамдар бұрылғанша қанша уақыт күту керектігін шешеді. Егер сіз мұны кішірейтсеңіз, кемпірқосақтың түстері одан да жылдам айналады.
int r [NumPixels]; // бұл барлық светодиодтар үшін қызыл мән
int g [NumPixels]; // бұл барлық светодиодтардың жасыл мәні
int b [NumPixels]; // бұл барлық светодиодтардың көк мәні
constint айырмасы = 31; // бұл жарықтық мәнін орнатады. Максималды сан - 31, бірақ 0 <x <32 болатын кез келген x саны жұмыс істейді.
/////// Шамдардың бастапқы орнын орнатыңыз ////////
voidsetLights () {
int R = 8*айырмашылығы, G = 0, B = 0; // барлық светодиодтардың бастапқы жағдайы
үшін (int i = 0; i <8; i ++, R- = айырмашылық, G+= айырмашылық) {
r = R;
g = G;
b = 0;
}
үшін (int i = 0; i <8; i ++, G- = айырмасы, B+= айырмасы) {
g [i+8] = G;
b [i+8] = B;
r [i+8] = 0;
}
үшін (int i = 0; i <8; i ++, B- = айырмасы, R+= айырмасы) {
r [i+16] = R;
b [i+16] = B;
g [i+16] = 0;
}
}
/////// Жарық диодтардың бастапқы орнын орнатуды аяқтаңыз ////////
voidsetup () {
piksel.begin (); // пиксель нысанын қосыңыз
setLights (); // светодиодтардың бастапқы орнын орнатыңыз
}
int idx = 0; // жарықдиодты айналудың бастапқы орнын орнатыңыз
voidloop () {
/////// светодиодтардың әрқайсысының түсін орнатыңыз ////////
үшін (int i = 0; i <сандық пиксельдер; i ++) = «» {
piksel.setPixelColor (i, пиксель Түсі (r [(i+idx)%24], g [(i+idx)%24], b [(i+idx)%24]));
пиксель.шоу ();
}
/////// жарық диодтарының түсін орнатуды аяқтаңыз ////////
кідіріс (DELAYVAL); // DELAYVAL миллисекунд күтіңіз
idx ++; // светодиодтардың айналуын бір жылжытыңыз
idx%= 24; // 24 мәнін өзгертіңіз. Бұл idx мәнін 0 мен 23 аралығында шектейді
}

GitHub ұсынған ❤ арқылы rawLevitating_Lamp.ino қарау

6 -қадам: Аяқтаңыз

Аяқталды!
Аяқталды!
Аяқталды!
Аяқталды!
Аяқталды!
Аяқталды!

Енді шамды қосу, велкроны құрылымға жабыстыру және шамдарды сөндіру уақыты келді: бұл шоу уақыты. Өзіңіз қалаған өзгерістерді жасаңыз және әлеммен осы жобаның көмегімен жасағандарыңызбен бөлісіңіз!

Сәттілік және зерттеуді жалғастырыңыз!

Ұсынылған: