Satura rādītājs:
- 1. darbība: iespējamās idejas vai risinājumi
- 2. solis: montāžas sagatavošana
- 3. darbība: neredzīgo pārnesumu projektēšana
- 4. solis: aklo kodēšana
- 5. solis: apdares darbi
- 6. solis: projekta novērtēšana
Video: Automātiskais žalūziju atvērējs, izmantojot EV3: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Manā guļamistabā ir rullo aptumšojošo žalūziju komplekts, ko es bieži aizmirstu atvērt vai aizvērt no rīta vai vakarā. Es vēlos automatizēt atvēršanu un aizvēršanu, bet ar ignorēšanu, kad es mainos.
1. darbība: iespējamās idejas vai risinājumi
Pēc dažādu vietņu, piemēram, YouTube, Instructables un Thingiverse, izpētīšanas es atklāju, ka visizplatītākais risinājums bija motorizēt spoli, kas savija un atritināja žalūzijas, izmantojot pakāpju motoru vai servo. Es atklāju 2 galvenās iespējas ar dažādām priekšrocībām un trūkumiem.
1. ideja: spoles metode, kurā motors un zobrats atrodas spoles iekšpusē. Tam ir priekšrocības, jo tā ir glīta un eleganta metode, taču tai ir trūkumi, ka tai ir vajadzīgas lielas izmaiņas neredzīgajiem, vads vairs nav izmantojams, un montāža būtu ļoti grūti pieejama apkopei, kad tā tiks ieviesta.
2. ideja: auklas metode, kurā motors un pārnesums ir novietots uz auklas. Tam ir priekšrocība, ka tas ir vienkāršāks un montāža varētu būt viegli pieejama. Tomēr tam ir trūkums, ka tas var būt neglīts un apjomīgs, kā arī tas, ka tas ir jāpiestiprina pie sliekšņa, kad tas tiek ieviests.
Es dodu priekšroku auklas metodei, jo tas ir daudz vienkāršāks risinājums, kas netraucē vadu manuālu izmantošanu, un žalūzijai nebūs vajadzīgas nekādas būtiskas izmaiņas. Es plānoju to padarīt pēc iespējas slēptu un kompaktu, kad izveidoju galīgo versiju ar ESP8266.
2. solis: montāžas sagatavošana
Es veicu šo projektu, izmantojot savu Lego mindstorms EV3, kam ir funkcionalitāte, kas man jāparāda, ka projekts varētu darboties, un es esmu iepazinies ar programmatūru, kas noteikti ļoti palīdzēja. Tā kā žalūzijas spoles virzīšanai izmanto lodīšu ķēdi, ar kuru Lego zobrati nav saderīgi, es nolēmu, ka labākais risinājums ir izveidot pārnesumu ar pareizu atstarpi starp bumbiņām ārpusē- ar standarta “krusta formas” caurumu centrā, kur es pēc tam 3D drukātu dizainu. Šajā brīdī es arī izveidoju kalibrēšanas pogu un savam logam pievienoju gaismas sensoru, kā arī pogu, kas darbojas kā ignorēšana.
3. darbība: neredzīgo pārnesumu projektēšana
Es izjaucu žalūzijas, lai redzētu, kā kloķis izskatījās sīkāk. Demontāžas laikā es atradu nelielu 16 zobu zobratu, ko turēja nospriegota spole, tā bija daļa, ko es meklēju. Pēc zobrata kopijas izstrādes es pievienoju nepieciešamos ar Lego saderīgos caurumus, izdrukāju 3 atsevišķās detaļas un beidzot sasaistīju tās kopā ar superlīmi. Sākotnēji man bija problēmas ar Lego saderības nodrošināšanu tādā nozīmē, ka manam 3D printerim nebija izšķirtspējas, lai pietiekami izveidotu “x” caurumu, tomēr tam nebija problēmu ar apaļajiem caurumiem abās pusēs. Tāpēc es nomainīju “x” ar apaļu caurumu, un tas bija labi izdrukāts. Tad pēc nelielas pārbaudes es redzēju, ka tā spēj izturēt neredzīgo griezes momentu un svaru. Zemāk es saistīšu savus pārnesumu dizainus, vai arī jūs varat to atrast vietnē Thingiverse:
4. solis: aklo kodēšana
Es gribēju kodu, kas automātiski atver un aizver žalūziju, kad tas sasniedz noteiktu gaismas līmeni, bet tam bija arī ignorēšanas poga, lai vēl varētu atvērt vai aizvērt žalūziju, kad viņi to vēlas. Esmu saistījis savu GitHub ar koda galīgo versiju šeit:
Projekta koda aizpildīšana aizņēma vairākas dienas, man bija programmas pamatloģika, kas pareizi darbojās ar gaismas sensoru, tomēr īslaicīgās ignorēšanas poga nedarbojās pareizi. Tas mainīja žalūziju stāvokli, kad tika nospiests, taču tam trūka “aizbīdīšanas” funkcijas, kas nozīmētu, ka žalūzija paliks tādā stāvoklī, kas nozīmē, ka žalūzija nekavējoties to atgriezīs līdz iepriekšējam. Es to novērsu, izmantojot “pagaidiet” bloku, kas saistīts ar loģiskiem VAI vārtiem, kas nolasa gaismas sensora un pieskāriena sensora vērtības, kuras es paskaidrošu tālāk.
Kods sākas, kalibrējot motorus un žalūzijas, sākot ar pilnībā atvērtu žalūziju un nolaižot to, līdz tas skar skārienjutīgo sensoru apakšā. mainīgais. Tad tas uzraksta “false” uz mainīgo “BlindOpen”, ko izmanto, lai izsekotu neredzīgo stāvokli. Šajā brīdī kods tiek sadalīts 4 cilpās.
Viena no šīm cilpām ir cilne “Buttonstate”, kas nepārtraukti publicē pogas stāvokli mainīgajā ar nosaukumu “ButtonPressed”. Tas novērš nepieciešamību skriptā izvietot vairākus pogu blokus.
Otrā cilpa ir “gaišs vai tumšs”, kas nepārtraukti salīdzina gaismas līmeni ārpus mana loga ar konstanti, kas iepriekš definēta kodā. Ja rezultāts ir zem šīs konstantes, cilpa mainīgajam “ItIsLight” rakstīs “false”, savukārt, ja tas ir virs vērtības, tas rakstīs “true”.
Trešā cilpa satur skaitlisku sarakstu ar 3 iespējām, kas būtībā norāda neredzīgajiem, kas jādara, 0 = akls, 1 = akls, 2 = nedarīt neko, jo aklais ir pareizajā vietā. Cikls sākas, lasot mainīgo “BlindShould”, kas nosaka pareizo uzdevumu, kas neredzīgajam būtu jāveic, pēc tam veic šo uzdevumu, maina “BlindOpen” mainīgo uz pareizo opciju un pēc tam paliek dīkstāvē, līdz mainās “BlindShould” mainīgais tas atkārtojas. Tas izmanto vērtību “RotationsNeeded”, kā arī +/- 100% jaudu, lai pārvietotu žalūziju pilnībā atvērtu vai aizvērtu.
Ceturtā un pēdējā cilpa ir vissarežģītākā, tā ir “Lemšanas” cilpa, kas apstrādā visus datus un izlemj, ko darīt ar katru permutāciju. Tas tiek darīts, izmantojot uz loģiku balstītas “ceļa dakšas”, kur “poga ir nospiesta”, “Gaismas līmenis”, “Akls atvērts” ir patiesi vai nepatiesi jautājumi. Visām permutācijām ir kodēta atbilde, kas ir 0 = akls, 1 = akls vai 2 = nedarīt neko - šī vērtība tiek ierakstīta mainīgajā “BlindShould”, ko pēc tam apstrādā iepriekšējā cilpa. Dažas atbildes pēc skripta pabeigšanas gaidīs, līdz mainīsies mainīgais “ItIsLight” un/vai “ButtonPressed”; tas attiecas tikai uz pogas aktivizētajām permutācijām, jo pretējā gadījumā tā nekavējoties mēģinātu labot savu pozīciju, kas nozīmē, ka aklais atgriezīsies sākotnējā stāvoklī. Pēc tam šis process tiek atkārtots, lai izveidotu stabilu un salīdzinoši vienkāršu automātisko sistēmu, kuru var viegli pievienot un atkļūdot. Fau.
5. solis: apdares darbi
Pēc tam es nolēmu pievienot EVV 9 V barošanas avotu, izmantojot dažus koka tapas un skrūves kā "baterijas", tas padarīja produktu neuzticamu akumulatoriem un neļāva man nomainīt baterijas ik pēc pāris dienām.
6. solis: projekta novērtēšana
Es domāju, ka projekts kopumā noritēja labi, tāpēc es saņēmu darba prototipu automātisko žalūziju montāžai, kuru es varu izmantot visu attiecīgo informāciju, ko atradu projekta laikā, un ieviest galīgajā versijā. Es veiksmīgi kodēju ierīci un vēlāk līdz šim neesmu atradis lielas problēmas ar kodu. Es būtu gribējis padarīt ierīci vizuāli pievilcīgāku, taču tas atkal ir koncepcijas pierādījums, un es pielieku zināmas pūles, lai tā izskatītos labi, kad gatavoju galīgo versiju ar ESP8266. Kad es vēlreiz veicu projektu, es izveidošu motoru tā, lai tas sēdētu žalūziju iekšpusē, jo to būtu vieglāk noslēpt. Lielākā mācība, ko esmu iemācījusies, ir loģiska atkļūdošana un pārdomāt, dokumentēt un pārbaudīt savu kodu pirms tā ieviešanas.
Ieteicams:
Garāžas durvju atvērējs ar atsauksmēm, izmantojot tīmekļa serveri Esp8266 .: 6 soļi
Garāžas durvju atvērējs ar atsauksmēm, izmantojot tīmekļa serveri Esp8266. Sveiki, es jums parādīšu, kā vienkāršā veidā izveidot garāžas durvju atvērēju.-ESP8266 ir kodēts kā tīmekļa serveris, durvis var būt atvērtas visā pasaulē. atgriezeniskā saite, jūs zināt, vai durvis ir atvērtas vai aizvērtas reāllaikā-vienkāršs, tikai viens īsceļš
Garāžas durvju atvērējs, izmantojot Raspberry Pi: 5 soļi (ar attēliem)
Garāžas durvju atvērējs, izmantojot Raspberry Pi: Vadiet garāžas motoru no viedtālruņa vai jebkuras ierīces, kas spēj pārlūkot tīmekļa vietni (ar AJAX!). Projekts tika uzsākts, jo manai garāžai bija tikai viena tālvadības pults. Cik jautri bija nopirkt otro? Nepietiekami. Mans mērķis bija spēt kontrolēt un uzraudzīt
Garāžas vārtu atvērējs, izmantojot Arduino: 3 soļi
Garāžas vārtu atvērējs, izmantojot Arduino: Šis ir uz aparatūru balstīts projekts, kas izmanto Atmel Atmega 328P (Arduino UNO), lai izgatavotu garāžas vārtu atvērēju bez papildu perifērijas ierīcēm. Kods spēj aizsargāt pašu sistēmu no elektriskiem bojājumiem. Visa ķēde ir barota
Mājas automatizācija: automātiskais slēdžu panelis ar dimmeru vadību, izmantojot Bluetooth, izmantojot Tiva TM4C123G: 7 soļi
Mājas automatizācija: automātiska slēdžu sistēma ar regulēšanas funkciju, izmantojot Bluetooth, izmantojot Tiva TM4C123G: Mūsdienās mūsu televizoriem un citām elektroniskajām sistēmām ir tālvadības pults, kas ir padarījušas mūsu dzīvi patiešām vieglu. Vai esat kādreiz domājuši par mājas automatizāciju, kas ļautu kontrolēt lampu gaismas, ventilatorus un citu elektrību
Automātiskais žalūziju atvērējs: 11 soļi
Automātiskā žalūziju atvērēja: http: //contraptionmaker.infoMēs dzīvojam 150 gadus vecā lauku mājā ar oriģinālajiem logiem. Neskatoties uz izolāciju un jauno apšuvumu, tas ir kā dzīvot sietā ziemas laikā. Lai cīnītos ar šo problēmu, mēs uzstādām plastmasu virs logiem, lai