Cov txheej txheem:
- Kauj Ruam 1: Yuav Tsim Li Cas POV
- Kauj Ruam 2: Kev Siv Software Tshooj 1
- Kauj Ruam 3: Kev Siv Software Tshooj 2
Video: 1 Meter POV Nrog IOT Enabled: 3 Kauj Ruam (nrog Duab)
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:29
Ua ntej pib piav qhia txog txoj haujlwm no kuv xav thov zam txim rau cov duab tsis zoo thiab yees duab, tab sis ua siab ncaj nws yog qhov nyuaj heev kom coj tus duab ntse thiab meej los ntawm kev khiav POV nrog lub koob yees duab zoo li kuv lub koob yees duab txawb. Nws xav tau lub diaphragm kho qhov muag nrawm heev txhawm rau ntes qhov tseeb, tab sis kuv yuav tso cov vis dis aus zoo dua thaum thaum kawg kuv tuaj yeem yuav kuv lub CANON lub koob yees duab
POV yog dab tsi
POV sawv rau Persistence Of Vision Globe uas cuam tshuam nrog qhov tshwm sim ntawm tib neeg lub zeem muag. Lub teeb pom kev zoo nyob ib puag ncig tom qab retina txog li 1/10 ntawm ib pliag. Thaum lub teeb pom kev zoo tau ua ntu zus ua tiav sai sai, lawv sib koom ua ke ua ib qho duab txuas mus. Qhov tseeb nws yog lub hauv paus rau cov yeeb yaj kiab thiab TV khoom siv,. POV ua qhov kev xav tsis zoo (dag peb) thiab tsim cov duab los ntawm kev sib hloov cov teeb ntawm LED teeb nyob ib puag ncig lossis ib qho
Dab tsi yog qhov kev tsim kho tshiab
Tawm POV tsis yog lub tswv yim tshiab thiab muaj ntau txoj haujlwm twb muaj nyob hauv Kev Qhia lossis hauv lwm qhov chaw, txawm li cas los xij cov phiaj xwm no feem ntau siv lub tuam tsev zoo li qub lossis duab uas feem ntau nyeem los ntawm MCU nco lossis SD daim npav, tab sis hauv txoj haujlwm no peb siv tso cov yam ntxwv zoo nkauj ntawm IOT qhib lub nti zoo li ESP8266 hauv qhov teeb meem no.
Nrog rau IOT nta no peb
- tau yooj yim tuaj yeem tso cov duab tshiab rau lub cim xeeb wirelessly
- tsim qhov xwm txheej xav tau ntawm cov duab qhia nrog ib ntu lossis ib lub sijhawm
- tsis tas yuav rov tsim dua lub nti lossis tshem lub cim xeeb daim npav thiab rov txuas nws rau qhov ua yeeb yaj kiab tshiab
- tus neeg siv phooj ywg IOT webhost ua kom yooj yim rau txhua tus los tswj POV nrog txawb lossis ntsiav tshuaj txawm tias nyob deb
- kev siv kho vajtse tus nqi qis heev nrog lub peev xwm ntawm ntau dua 30 cov duab sib txawv
POV ua haujlwm li cas
POV qhia, kab (1-dimensional) array ntawm LED teeb tig ib ncig ntawm ib qho taw tes, zoo li lub tsheb kauj vab. Los ntawm kev ntsuas lawv qhov kev hloov pauv thiab tswj lawv qhov muag pom nrog lub millisecond qhov tseeb, peb tuaj yeem tsim qhov tsis pom kev ntawm 2 lossis 3-dimensional duab nyob hauv huab cua nyias. Cia peb xav txog ib tus ncej ntawm ib qho kev cuam tshuam (duab, ntawv, …), txhua tus ncej suav nrog ntau lub pixel thiab vim li no ntau txoj kab hauv dav hlau lossis thaj chaw kheej, POV tso saib cov duab no nrog ib kab ntawm cov duab uas yog txoj haujlwm hloov nrog nws qhov kev sib hloov kom puv cov duab ntawd, yog li qhov teeb meem yog yuav ua li cas thiaj li tswj tau LED pixel xim raws li lub sijhawm thiab qhov chaw yog li nws tuaj yeem tsim tag nrho cov duab POV tau muab cais raws lub hauv paus ntawm kev sib hloov, hom nyhuv tuaj yeem tso tawm thiab ntau npaum li cas xim tuaj yeem tsim.
Los ntawm kev sib txawv ntawm kev sib hloov, tuaj yeem tsim cov phiaj xwm, cylindrical thiab kheej kheej POV zaub
ntau txoj haujlwm POV siv yooj yim ib leeg-xim LED lossis nrawm nrawm pixel zoo li WS2812 lossis APA104 thiab hauv txoj haujlwm no peb siv cov nti LED nrawm dua APA102 nrog kev ua haujlwm ib puag ncig 16 MHz rov ua dua tshiab. cov nti LED no muaj 2 kab los tswj (Hauv av, Cov Ntaub Ntawv, Moos, +5v)
Kauj Ruam 1: Yuav Tsim Li Cas POV
Thaum xub thawj kuv xav tau tus qauv txhawm rau txhim kho POV hub, ua cov hlau lossis cov qauv hlau tsis yog nyob ntawm qhov koj muaj hauv txhais tes. Koj tuaj yeem ua nrog txhua yam khoom siv los teeb tsa nws ntawm phab ntsa lossis ntxiv ob txhais ceg kom sawv ntsug. Kuv tus phooj ywg ua qhov yooj yim tripod thiab nce lub sijhawm siv tshuab los txo DC lub cev muaj zog RPM ib puag ncig 500. lub sij hawm ib pliag, Raws li kuv POV suav nrog 1 kab pheeb ces kaum LED, yog li txhua tus ncej ua tiav nrog ib nrab lossis kev sib hloov, hauv lwm lo lus peb xav tau Lub Hom Phiaj Zoo RPM ib puag ncig 600 thiab nrog RPM txhua qhov kev hloov pauv tau siv txog 100 ms. hauv qab no qhov sib npaug ua kom pom lub tswv yim RPM = (fps/Nb)*60 uas Nb sib npaug rau Tus naj npawb ntawm ceg, thiab qhov no peb muaj RPM = (20/2)*60 = 600my POV tig ncig 430 rpm yog li kuv fps nyob ib ncig 15 fsp uas yog qhov zoo rau qhov teeb meem no. Tsim lub tshuab txhua yam
Hauv theem tom ntej kuv siv daim PVC lub tog raj kheej Milled los tuav lub LED bar. Txhawm rau txuas lub hauv paus nrog cov hlua rub ib M10 ntsia liaj qhov rooj tau thim rov qab ntawm PCV ntu Ob Lub Khaub Ncaws ntiv nplhaib tau teeb tsa ntawm lub tog raj kheej kom xa 5 volts DC rau lub rooj tsavxwm thiab LED sawb, tom qab raws li cov duab hauv qab no, ntu no tau teeb tsa ntawm qhov yooj yim pulley lub sijhawm sib kis uas txuas nrog 12v DC lub cev muaj zog txhua ntu nws muaj nws lub zog muab thiab ntim rau hauv lub thawv dawb txuas rau ob txhais ceg
Kauj Ruam 2: Kev Siv Software Tshooj 1
Txhawm rau ua kom pom cov duab hauv kab sawb LED, txhua daim duab yuav tsum tau pixelized tom qab tso rau hauv MCU lub cim xeeb thiab tom qab ntawd pub rau LED kab kab ntawm kab, ua qhov ntawd kuv tau ua rau software rau ob lub platform sib txawv, ib qho yog pib ntawm java runtime Ua thiab lwm yam hauv C ++ rau MCUProcessing pixelized program qhov program no tau sau hauv Processing IDE thiab nws yooj yim qhib cov ntawv, tom qab ntawd tig nws hauv cov kauj ruam kom tshem tawm cov kab pixelized ntawm daim duab. Kuv xaiv 200 kab rau tso saib ib qho duab, yog li kuv tig cov duab abut (360 /200=1.8 degree) 200 zaug rau rho tawm 200 kab. Raws li kuv cov hlua LED suav nrog 144 LED nrog kos APA102 nti yog li cov duab tag nrho muaj 200*144 = 28800 pixel. Raws li txhua xim hauv APA102 nti tso nrog 4 byte (W, RGB) yog li txhua qhov duab loj yog raws nraim 200*144*4 = 115200 lossis 112.5KB tom qab Kev ua cov lej ua piv txwv ntawm cov duab pixelization, thiab qhov tshwm sim yuav yog cov ntaub ntawv txuas ntxiv uas tuaj yeem muab tso rau hauv MCU nco
PImage img, black_b, image_load; PrintWriter tso zis; koj SQL; ntab led_t; byte pov_data; int kab_num = 200; Txoj hlua _OUTPUT = "";
void nqis ()
{selectInput ("Xaiv cov duab", "imageChosen"); noLoop (); tos (); }
void teeb tsa ()
{tso zis = createWriter (_OUTPUT); black_b = createImage (SQL, SQL, RGB); black_b.loadPixels (); rau (int i = 0; i = line_num) {noLoop (); output.flush (); output.close ();} background (black_b); pushMatrix (); imageMode (CENTER); txhais lus (SQL/2, SQL/2); tig (radians (l*360/line_num)); duab (img, 0, 0); popMatrix (); pushMatrix (); rau (int i = 0; i <144; i ++) {xim c = tau (int (i*led_t+led_t/2), int (SQL/2)); print.print ((char) liab (c)+""+(char) ntsuab (c)+""+(char) xiav (c)); // print ((char) liab (c)+""+(char) ntsuab (c)+""+(char) xiav (c)+";"); sau (c); rect (i*led_t, (SQL/2)-(led_t/2), led_t, led_t); } // println (); cov. popMatrix (); // ncua (500); l ++; }
tsis muaj qhov tseem ceeb Pressed ()
{output.flush (); // Sau cov ntaub ntawv tseem tshuav rau hauv cov ntaub ntawv output.close (); // Ua tiav cov ntawv tawm (); // Nres qhov program}
void imageChosen (Cov ntaub ntawv f)
{yog (f == null) {println ("Qhov rai raug kaw lossis tus neeg siv ntaus thim."); tawm (); } lwm {yog (f.exists ()) img = loadImage (f.getAbsolutePath ()); Txoj hlua s = f.getAbsolutePath (); Txoj hlua daim ntawv = cais (s, '\'); int n = list.length; Txoj hlua fle = cais (sau [n-1], '.'); println ("Qhib cov ntawv:"+fle [0]); _OUTPUT = fle [0]+". Bin"; // img = loadImage ("test.jpg"); int w = img.width; int h = img.height; SQL = max (w, h); loj (SQL, SQL); led_t = SQL/144.0; println ("h ="+h+"w ="+w+"max ="+SQL+"size coj ="+led_t); }} void mousePressed () {loop ();}
tsis muaj dab tsi mydata ()
{byte b = loadBytes ("something.dat"); // Luam tawm txhua tus nqi, los ntawm 0 txog 255 rau (int i = 0; i <b.length; i ++) {// Txhua tus lej thib kaum, pib kab tshiab yog ((i % 10) == 0) println (); // bytes yog los ntawm -128 txog 127, qhov no hloov mus rau 0 txog 255 int a = b & 0xff; print (ib + ""); } println (); cov. // Luam kab dawb paug ntawm qhov kawg saveBytes ("numbers.dat", b); } tsis muaj dab tsi tos () {thaum (img == null) {ncua (200); } kab (); }
Kauj Ruam 3: Kev Siv Software Tshooj 2
MCU cov phiaj xwm
kev ua tau zoo ESP8266 nti tau xaiv rau ob peb yam, ua ntej nws tau txhim kho qhib SDK cov cuab yeej kom tau txais txiaj ntsig ntawm WiFi nta nrog nws lub cim xeeb rau hosting web-server rau cov neeg siv. Nrog rau qhov peev xwm no, cov neeg siv tus phooj ywg lub web-server tsim los tso cov duab pixelized rau MCU lub cim xeeb thiab tsim cov neeg siv txhais cov xwm txheej rau kev ua yeeb yam. Nrog 4 Mb ESP-12E series peb tuaj yeem siv 1 Mb rau qhov program thiab 3 Mb rau cov duab uas muaj qhov loj me ntawm 112.5KB rau pixelized duab peb tuaj yeem kwv yees li 25 daim duab tso rau ntawm MCU thiab tuaj yeem ua ib ntu lossis txhua lub sijhawm tso rau duab tso tawm kuv siv Arduino txoj cai pib siv rau kev ua lub vev xaib. code muaj peb lub luag haujlwm tseem ceeb hauv nws lub voj raws li hauv qab no
void loop () {yog (! SHOW &&! TEST) server.handleClient (); if (SHOW) {if ((millis ()- OpenlastTime)> DURATION [image_index]*1000) {if (image_index> = IMAGE_NUM) image_index = 0; _memory_pointer = start_address_of_imagefile [image_index]; Serial.printf ("Cov lej naj npawb =%u lub npe:%s chaw nyob:%u sijhawm:%u / n", image_index, IMAGES [image_index].c_str (), start_address_of_imagefile [image_index], DURATION [image_index]); Current_imageLine = 0; image_index ++; OpenlastTime = millis (); } yog ((micros ()-lastLineShow)> lineInterval) {lastLineShow = micros (); ESP.flashRead (_memory_pointer, (uint32_t *) leds, NUM_LEDS *3); FastLED.show (); _memory_pointer+= (NUM_LEDS*3); Current_imageLine ++; ncua (LineIntervalDelay); } yog (Current_imageLine> = IMAGES_LINES) {Current_imageLine = 0; _memory_pointer = start_address_of_imagefile [image_index-1]; }} optimistic_yield (1000); }
Neeg rau zaub mov Handler server.handleClient (); lub luag haujlwm los ua ib qho kev thov ntawm cov neeg siv khoom ntawm webhost, lub vev xaib no tuaj yeem tsim qhov xav tau kom xa cov ntaub ntawv, hloov pauv qhia qhov teeb tsa ntawm ib lub xeev daim ntawv tshaj tawm. Kuv lub vev xaib suav nrog peb tab raws li cov duab hauv thawj tab peb tuaj yeem tshawb xyuas qhov xwm txheej tam sim no ntawm kev ua yeeb yam nrog ntu thiab sijhawm rau txhua daim duab, tseem muaj cov ntaub ntawv network zoo li POV rpm qhia
hauv upload cov duab tab peb tuaj yeem tso cov duab pixelized rau MCU nco lossis tshem tawm cov duab tshwj xeeb
hauv network tab peb tuaj yeem hloov pauv teeb tsa network xws li hom wifi, ip zoo li qub, npe network & dhau,..
Duab Up-loader
qhov haujlwm no tus neeg siv khoom thov los ntawm Ajax kom xa cov duab pixelized rau MCU lub cim xeeb, tom qab ntawv sau cov ntawv hauv cim xeeb ua hom ntawv nyoos kom nyeem cov ntawv kom sai li sai tau. Lub cim xeeb pib thiab xaus qhov chaw khaws khoom hauv cov lus rau tso saib hauv LED sawb
Zaub muaj nuj nqi
Kuv siv FastLED lib los qhia pixel hauv LED kab txaij, lub tsev qiv ntawv no yog ib qhov ua tau zoo tshaj plaws thiab tsim tau zoo rau LED qhia ntawm AVR thiab ESP platform. Nws tsuas yog xav tau xa FastLED ua haujlwm, qhov chaw khaws cia LED pixel. peb nyeem kab ntawv los ntawm kab pixel los ntawm kev nco thiab qhia nws hauv LED sawb thiab tos kom tus chij tshiab tig los tiag. peb rov ua ntu zus no txog 200 kab ntawm txhua daim duab tau nyeem
tag nrho cov cai nyob hauv kuv qhov chaw cia khoom git ntawm no
hauv qab no yog cov yeeb yaj kiab ntawm POV hauv kev nqis tes uas tau kaw los ntawm lub koob yees duab mobile thiab raws li kuv tau piav qhia, cov vis dis aus tsis zoo vim tias qeeb diaphragm nrawm ntawm lub koob yees duab tsis muaj txuj ci
Pom zoo:
Ua Tus Pov Hwm Pov Tseg Pi Nrog ML !: 8 Kauj Ruam (nrog Duab)
Ua Tus Pej Xeem Pov Tseg Pi Nrog ML !: Qhov Project Trash Classifier, paub zoo tias "Nws mus qhov twg?! kawm hauv Lobe, tus pib ua phooj ywg (tsis muaj tus lej!)
Qhov Taw Qhia Tsheb kauj vab Minimalist, Kov-Enabled !: 10 Kauj Ruam (nrog Duab)
Qhov taw qhia tsheb kauj vab Minimalist, Touch-Enabled!: Nyob zoo! Nov yog kuv thawj Phau Ntawv Qhia. Kuv ib txwm xav ua tej yam los ntawm kos tsuas yog pom nws ua haujlwm li cas thiab leej twg tsis nyiam DIY (Ua koj tus kheej) cov khoom thaum koj tuaj yeem hloov kho qee yam raws li koj xav tau txoj cai? Zoo li nthuav raws li DIY m
IoT APIS V2 - Autonomous IoT -enabled Automated Plant Irrigation System: 17 Cov Kauj Ruam (nrog Duab)
IoT APIS V2 - Autonomous IoT -enabled Automated Plant Irrigation System: Txoj haujlwm no yog kev hloov pauv ntawm kuv cov lus qhia yav dhau los: APIS - Cov Tshuab Cog cog cog qoob loo Kuv tau siv APIS tau yuav luag ib xyoos tam sim no, thiab xav txhim kho raws li kev tsim yav dhau los: Muaj peev xwm saib xyuas cov nroj tsuag nyob deb. Nov yog li cas
IoT Enabled Kas Fes Tshuab: 9 Kauj Ruam (nrog Duab)
IoT Enabled Coffee Machine: Cov lus qhia no tau nkag mus rau hauv IoT kev sib tw - Yog tias koj nyiam nws, thov pov npav rau nws! kom siv nws li cas.Kuv tau
IoT Enabled Sensor Cov Chaw Sau Cov Ntaub Ntawv Nrog ESP8266 & PubNub: 9 Kauj Ruam (nrog Duab)
IoT Enabled Sensor Cov Chaw Sau Cov Ntaub Ntawv Nrog ESP8266 & PubNub: Feem ntau ntawm cov kev qhia ntawm ESP8266 yog ib qho ntawm cov neeg tshiab (nyob ntsiag to ntsais ib tus coj) lossis nyuaj rau qee tus neeg uas tab tom nrhiav qee yam los txhim kho thiab txhim kho raws li nws coj kev ntsais ntsais. qhia paub lub hom phiaj txhawm rau txhawm rau qhov sib txawv no rau kev tsim