![Arduino օդորակման մոդել `6 քայլ Arduino օդորակման մոդել `6 քայլ](https://i.howwhatproduce.com/images/002/image-5412-66-j.webp)
Բովանդակություն:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48
![Arduino օդորակման մոդել Arduino օդորակման մոդել](https://i.howwhatproduce.com/images/002/image-5412-67-j.webp)
Որպես շուկայավարման նպատակով խելացի գնացքի սարքի մոդել ստեղծելու մեր թիմի ունակության մաս, նպատակն էր ստեղծել այնպիսի համակարգ, որի դեպքում ջերմաստիճանի տվիչը կարդում է տվյալները միացումից և տեղեկատվությունը փոխակերպում ջերմաստիճանի արժեքի ցուցադրվում է լուսավորված էկրանին և կենտրոնացած է օդափոխիչի միացման կամ անջատման վրա: Նպատակն է օգնել հարմարեցնել ուղևորների ձիավարման պայմանները ՝ օգտագործելով ավտոմատացված համակարգ, որը նաև գործում է ջերմաստիճանը ցուցադրելու համար անմիջական հարևանությամբ:
Օգտագործելով Arduino միկրոկառավարիչի հավաքածուն և MATLAB տարբերակները 2016b և 2017b, մենք կարողացանք համեմատաբար հաջողությամբ ցուցադրել այս արդյունքները:
Քայլ 1: Սարքավորումներ
![Սարքավորումներ Սարքավորումներ](https://i.howwhatproduce.com/images/002/image-5412-68-j.webp)
Միկրոկառավարիչների հավաքածու ՝ հետևյալով.
-Sparkfun Red Board
-Sparkfun Breadboard
-LCD խորհուրդ
-Պոտենցիոմետր
-emերմաստիճանի ցուցիչ
-Սերվո
-USB/Arduino ադապտեր
-Jumper Wires (նվազագույնը 25)
Նոթբուք (Windows 10) USB մուտքով
3D տպված օբյեկտ (ըստ ցանկության)
Քայլ 2: Միկրոհսկիչի կարգավորում
![Միկրոհսկիչի կարգաբերում Միկրոհսկիչի կարգաբերում](https://i.howwhatproduce.com/images/002/image-5412-69-j.webp)
![Միկրոհսկիչի կարգավորում Միկրոհսկիչի կարգավորում](https://i.howwhatproduce.com/images/002/image-5412-70-j.webp)
![Միկրոհսկիչի կարգավորում Միկրոհսկիչի կարգավորում](https://i.howwhatproduce.com/images/002/image-5412-71-j.webp)
![Միկրոհսկիչի կարգավորում Միկրոհսկիչի կարգավորում](https://i.howwhatproduce.com/images/002/image-5412-72-j.webp)
Նկատի ունեցեք սա. Ամբողջ համակարգը բաղկացած է մեկ միավորից, որոնցից յուրաքանչյուրը նշանակալի գործոն է կիրառում վերջնական արդյունքի նկատմամբ: Այդ պատճառով խիստ խորհուրդ է տրվում նախքան խճճված խառնաշփոթի մեջ լարեր ամրացնելը, միացման սխեմա տեղադրել:
Յուրաքանչյուր առանձին մոդելի պատկերներ կարելի է գտնել Microcontroller գործիքների հավաքածուի ձեռնարկում կամ դրա կայքում ՝
Սկսեք `տախտակի վրա ամրացնելով ջերմաստիճանի տվիչը, պոտենցիոմետրը, servo միակցիչները և LCD- ը: Խորհուրդ է տրվում, որ LCD- ի չափի և դրա համար լարերի քանակի պահանջի պատճառով այն պետք է տեղադրվի տախտակի իր կեսի վրա, իսկ մյուս մասերում `մյուս կեսին, և պոտենցիոմետրը լինի ինչ -որ մեկի տարածքում: հեշտությամբ պտտեք իր բռնակը:
Հղման համար:
LCD ՝ c1-16
Voառայություն ՝ i1-3 (GND + -)
Pերմաստիճանի տվիչ ՝ i13-15 (- GND +)
Պոտենցիոմետր ՝ g24-26 (- GND +)
Հաջորդը, սկսեք jumper լարերը միացնել միկրոկառավարիչի միավորների յուրաքանչյուր քորոցին. Չնայած ընդհանուր մեծ սխեմայում կամայական լինելուն, դիզայնը ստեղծվեց այս կարևոր կապերով.
Պոտենցիոմետրի միացում LCD- ին ՝ f25 - e3
Servo GND մետաղալար ՝ j1 - Թվային մուտք 9
Temp ցուցիչ GND: j14 - անալոգային մուտք 0
LCD մուտքեր ՝ e11-e15-թվային մուտք 2-5
e4 - Թվային մուտք 7
e6 - Թվային մուտք 6
(Նշում. Եթե հաջողվի, LCD- ի եզրին երկու լույսերը պետք է վառվեն, և պոտենցիոմետրը կարող է օգնել հարմարեցնել դրա պայծառությունը ադապտորից էներգիա ստանալուց հետո):
Լրացուցիչ. 3D տպագիր առարկան օգտագործվել է որպես պահանջի մաս: Ավելի փխրուն մասերի պոտենցիալ վնասներից խուսափելու համար երկարացված պատյան տեղադրվեց որպես թև LCD- ի շուրջը: LCD- ի էկրանի չափումները ցույց տվեցին, որ մոտավորապես 2-13/16 "x 1-1/16" x 1/4 "են, և դրանով իսկ միայն բարձրությունը զգալիորեն փոխվել է: Եթե 3D տպիչը մատչելի է, ապա հաշվի առեք անձնական իր ավելացնելը:, չնայած ավելորդ է: Նաև տեղյակ եղեք, որ չափումները կարող են տարբեր լինել:
Քայլ 3: MATLAB- ի կարգավորում
![MATLAB- ի կարգավորում MATLAB- ի կարգավորում](https://i.howwhatproduce.com/images/002/image-5412-73-j.webp)
![MATLAB- ի կարգավորում MATLAB- ի կարգավորում](https://i.howwhatproduce.com/images/002/image-5412-74-j.webp)
Տեղադրեք MATLAB- ի ավելի թարմացված տարբերակ (2016 ա և ավելի), որը հասանելի է MathWorks կայքում ՝ https://www.mathworks.com/products/matlab.html?s_tid=srchtitle: Բացելուց հետո գնացեք Հիմնական ներդիրի Լրացումներ և ներբեռնեք «MATLAB Support Package for Arduino Hardware» ՝ միկրոկառավարիչի հրամանների հասանելիության համար:
Ավարտվելուց հետո կարող է կատարվել թեստ `միկրոկառավարիչի միացումը համակարգչին/նոութբուքին գտնելու համար: Գործիքի հավաքածուից դրանք USB ադապտերին միացնելուց հետո տեղադրեք «fopen (serial ('nada')) հրամանը:"
Սխալ հաղորդագրություն կբացվի, որտեղ միակցիչը նշվում է որպես «COM#», որը կպահանջվի arduino օբյեկտ ստեղծելու համար, քանի դեռ այն միշտ նույն մուտքն է:
Քանի որ LCD- ն անմիջական կապ չունի Arduino գրադարանի հետ, հաղորդագրությունները ցուցադրելու համար պետք է ստեղծվի նոր գրադարան: Խորհուրդ է տրվում ստեղծել LCDAddon.m ֆայլ MATLAB օգնության պատուհանում հայտնաբերված LCD օրինակից ՝ «Arduino LCD» որոնելուց և այն տեղադրել +arduinoioaddons պանակում, կամ օգտագործել կցված սեղմված թղթապանակը և պատճենել դրա ամբողջ բովանդակությունը վերը նշվածում թղթապանակ:
Եթե հաջողված է, ապա MATLAB- ում Arduino օբյեկտ ստեղծելու ծածկագիրը հետևյալն է.
a = arduino ('com#', 'uno', 'Libraries', 'ExampleLCD/LCDAddon');
Քայլ 4: Գործառույթներ
![Գործառույթներ Գործառույթներ](https://i.howwhatproduce.com/images/002/image-5412-75-j.webp)
![Գործառույթներ Գործառույթներ](https://i.howwhatproduce.com/images/002/image-5412-76-j.webp)
Ստեղծեք MATLAB գործառույթ: Մուտքերի համար մենք օգտագործում ենք «eff» և «T_min» փոփոխականները; արդյունքների համար, չնայած ընդհանուր նախագծում ավելորդ է, մենք օգտագործեցինք «B» փոփոխականը ՝ որպես արդյունքներից տվյալները պարունակելու միջոց: «Eff» մուտքագրումը թույլ է տալիս կառավարել սերվոյի առավելագույն արագությունը, իսկ «T_min» մուտքը վերահսկում է ցանկալի նվազագույն ջերմաստիճանը: «B» արժեքը պետք է արտադրի մատրիցա, որը պարունակում է երեք սյունակ ժամանակի, ջերմաստիճանի և օդափոխիչի արդյունավետության համար: Բացի այդ, որպես մանրամասնության բոնուս, ստորև թվարկված ծածկագրում կա նաև if- հայտարարություն, որի դեպքում օդափոխիչի արագությունը կնվազի հիսուն տոկոսով, երբ այն մոտենա ցանկալի նվազագույն ջերմաստիճանին:
Եթե բոլոր մուտքերն ու jumper լարերը տեղադրված են ճշգրիտ և ենթադրելով, որ arduino միացման նավահանգիստը COM4 է, և գործառույթի անունը «fanread» է, ապա պետք է բավարար լինի հետևյալ ծածկագիրը.
գործառույթ [B] = fanread (Tmin, eff)
մաքրել a; մաքրել lcd; a = arduino ('com4', 'uno', 'Libraries', 'ExampleLCD/LCDAddon');
t = 0; t_max = 15; % ժամանակը վայրկյանների ընթացքում
lcd = addon (a, 'ExampleLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
initializeLCD (lcd, 'Rows', 2, 'Columns', 2);
եթե eff> = 1 || ե <0
սխալ («Երկրպագուն չի ակտիվանա, եթե eff- ը 0 -ից 1 սահմանվի»)
վերջ
t = 1: օղակների/ընդմիջումների 10 % -ի համար
հստակ գ; % կանխել սխալի կրկնությունը
v = readVoltage (a, 'A0');
TempC = (v-0.5)*100; % գնահատում լարման տիրույթների համար 2.7-5.5 Վ
եթե TempC> Tmin եթե TempC
c = ['Temp', num2str (TempC, 3), 'C On'];
writePWMDutyCycle (a, 'D9', eff/2); % միացրեք servo- ն կես արագությամբ
spd = 50;
ուրիշ
c = ['Temp', num2str (TempC, 3), 'C On'];
writePWMDutyCycle (a, 'D9', eff); % միացրեք servo- ն տրված արագությամբ
spd = 100;
վերջ
ուրիշ
c = ['Temp', num2str (TempC, 3), 'C Off'];
writePWMDutyCycle (a, 'D9', 0); % անջատված է, եթե արդեն միացված է
spd = 0;
վերջ
printLCD (LCD, c);
դադար (3); Մեկ օղակի համար անցնում է երեք վայրկյան
ժամանակ (t) = t.*3;
tempplot (t) = TempC;
ակտ (t) = spd;
ենթահող (2, 1, 1)
գծապատկեր (ժամանակ, tempplot, 'b-o') % գծային գրաֆիկ
առանցք ([0 33 0 40])
xlabel ('Timeամանակ (վայրկյան)')
ylabel ('peratերմաստիճանը (C)')
սպասիր
հողամաս ([0 33], [Tmin Tmin], 'r-')
սպասիր
հողամաս ([0 33], [Tmin+2 Tmin+2], 'g-')
ենթահող (2, 1, 2)
բար (ժամանակ, գործողություն) % բար գրաֆիկ
xlabel ('Timeամանակ (վայրկյան)')
ylabel («Արդյունավետություն (%)»)
վերջ
B = փոխակերպում ([ժամանակ; tempplot; գործողություն]);
վերջ
Այժմ, երբ գործառույթը ավարտված է, ժամանակն է փորձարկել:
Քայլ 5: Փորձարկում
![Փորձարկում Փորձարկում](https://i.howwhatproduce.com/images/002/image-5412-77-j.webp)
![Փորձարկում Փորձարկում](https://i.howwhatproduce.com/images/002/image-5412-78-j.webp)
Այժմ փորձարկեք հրամանի պատուհանի գործառույթը ՝ տեղադրելով «ֆունկցիայի_անունը (մուտքագրման_արժեքը, մուտքագրման_արժեքը_2» ») և դիտեք: Համոզված եղեք, որ Arduino- ի ոչ մի օբյեկտ արդեն գոյություն չունի. եթե այո, ապա այն հեռացնելու համար օգտագործիր «clear a» հրամանը: Եթե սխալներ են առաջանում, ստուգեք և տեսեք, արդյոք որևէ միակցիչ սխալ տեղում է, թե սխալ թվային կամ անալոգային մուտքեր են օգտագործվում: Ակնկալվում է, որ արդյունքները կարող են տարբեր լինել, չնայած դա կարող է պայմանավորված լինել որոշ ցատկող լարերի և ջերմաստիճանի տվիչի տեղադրմամբ:
Արդյունքների ակնկալիքները պետք է փոփոխություններ կատարեն servo- ի աշխատանքի և LCD- ի տվյալների վրա: Յուրաքանչյուր երեք վայրկյան ընդմիջումով տեքստի տողում պետք է ցուցադրվի ջերմաստիճանը Celsius- ում և անկախ նրանից ՝ օդափոխիչն ակտիվ է, թե ոչ, մինչդեռ օդափոխիչը աշխատում է ամբողջ արագությամբ, կես արագությամբ կամ առանց արագության: Տվյալները, ամենայն հավանականությամբ, չպետք է համահունչ լինեն, չնայած ավելի բազմազան արդյունքներ ցանկանալու դեպքում տեղադրեք «Tmin» արժեքը շղթայի արտադրած միջին ջերմաստիճանին մոտ:
Քայլ 6: Եզրակացություն
![Եզրակացություն Եզրակացություն](https://i.howwhatproduce.com/images/002/image-5412-79-j.webp)
Չնայած փորձությամբ և սխալով կատարելու դժվարին խնդիր, վերջնական արդյունքները բավականին հետաքրքիր և գոհացուցիչ էին: Համակարգը, որպես այդպիսին, օգնում է լուսաբանել, թե որքան բարդ մեքենաներ, կամ նույնիսկ դրանց մասերից մի քանիսը, կարող են դիտվել որպես առանձին նպատակների իրականացման համար միասին տեղադրված անկախ մասերի հավաքածու:
Վերջնական ծրագրի բավականին պարզեցված դիզայնի շնորհիվ, նրանք, ովքեր շահագրգռված են բարելավել դրա կատարողականը, կարող են փոփոխություններ և փոփոխություններ կատարել վերջնական արտադրանքի մեջ, ինչը կարող է նախագիծը դարձնել ավելի լավը և ավելի մշակված: Այնուամենայնիվ, այն բացահայտում է սխեմաների թույլ կողմերը, ինչպիսիք են servo- ի ակտիվացումը, ինչը հանգեցնում է շղթայի լարման ընթերցման պարբերական տատանումների, ինչը կարող է ստիպել համակարգին երբեք նույնական արդյունքներ չտալ: Բացի այդ, խնդիրներ են առաջացել սերվոյի արագության փոփոխություն տեսնելիս, երբ «eff» - ը սահմանվում է 0.4 և ավելի բարձր: Եթե օգտագործվեր ջերմաստիճանի և խոնավության տվիչ, վերջնական մոդելը կլիներ ավելի բարդ, բայց ավելի համաչափ արժեքներ: Այնուամենայնիվ, սա փորձ է, որը ցույց է տալիս, որ բարդ մեքենան կարող է գործել որպես իր պարզ մասերի համադրություն:
Խորհուրդ ենք տալիս:
Miniaturizing Arduino ինքնավար ռոբոտ (Land Rover / Car) Stage1 Մոդել 3: 6 քայլ
![Miniaturizing Arduino ինքնավար ռոբոտ (Land Rover / Car) Stage1 Մոդել 3: 6 քայլ Miniaturizing Arduino ինքնավար ռոբոտ (Land Rover / Car) Stage1 Մոդել 3: 6 քայլ](https://i.howwhatproduce.com/images/001/image-360-j.webp)
Miniaturizing Arduino ինքնավար ռոբոտ (Land Rover / Ավտոմեքենա) Stage1Model3. Ես որոշեցի մանրանկարել Land Rover / Car / Bot- ը `նախագծի չափսերն ու էներգիայի սպառումը նվազեցնելու համար:
Duամացույցի յուրօրինակ մոդել, որը աշխատում է Arduino Servo Motors- ի կողմից. 5 քայլ
![Duամացույցի յուրօրինակ մոդել, որը աշխատում է Arduino Servo Motors- ի կողմից. 5 քայլ Duամացույցի յուրօրինակ մոդել, որը աշխատում է Arduino Servo Motors- ի կողմից. 5 քայլ](https://i.howwhatproduce.com/images/006/image-16708-j.webp)
Arduino Servo Motors- ի կողմից տրամադրված ժամացույցի յուրօրինակ մոդել: Այս հրահանգով ես ձեզ ցույց կտամ, թե ինչպես ստեղծել ժամացույց Arduino Nano և Servo շարժիչներով: Դա անելու համար ձեզ հարկավոր են հետևյալ տարրերը ՝
Օդափոխիչի/օդորակման ավտոմատ համակարգ `6 քայլ
![Օդափոխիչի/օդորակման ավտոմատ համակարգ `6 քայլ Օդափոխիչի/օդորակման ավտոմատ համակարգ `6 քայլ](https://i.howwhatproduce.com/images/007/image-19563-j.webp)
Օդափոխիչի/օդորակման ավտոմատ համակարգ. Բարի գալուստ: Այս Ուղեցույցում ես ձեզ կքննարկեմ, թե ինչպես կառուցել ձեր սեփական ավտոմատ օդափոխիչի/օդորակման համակարգը: Այս Instructable- ը վերաբերում է պատուհանի օդափոխիչին, որն օգտագործվում է ամառվա շոգին սենյակները զովացնելու համար: Այս նախագծի նպատակն է
(Ascensor) Վերելակի մոդել Arduino- ի, App Inventor- ի և այլ անվճար ծրագրերի միջոցով. 7 քայլ
![(Ascensor) Վերելակի մոդել Arduino- ի, App Inventor- ի և այլ անվճար ծրագրերի միջոցով. 7 քայլ (Ascensor) Վերելակի մոդել Arduino- ի, App Inventor- ի և այլ անվճար ծրագրերի միջոցով. 7 քայլ](https://i.howwhatproduce.com/images/001/image-2709-58-j.webp)
(Ascensor) Վերելակի մոդել ՝ օգտագործելով Arduino, App Inventor և այլ անվճար ծրագրեր. de control del ascensor) y freeCAD y LibreCAD para disño.Abajo
Arduino 2-in-1 գնացքի մոդել ՝ 4 քայլ
![Arduino 2-in-1 գնացքի մոդել ՝ 4 քայլ Arduino 2-in-1 գնացքի մոդել ՝ 4 քայլ](https://i.howwhatproduce.com/none.webp)
Arduino 2-in-1 մոդելային գնացքի վերահսկիչ. Քառասուն տարի առաջ ես նախագծեցի op-amp- ով աշխատող մոդելային գնացքի շարժիչ ՝ մի քանի ընկերների համար, այնուհետև մոտ չորս տարի առաջ ես այն վերստեղծեցի ՝ օգտագործելով PIC միկրոկոնտրոլեր: Այս Arduino նախագիծը վերստեղծում է PIC տարբերակը, բայց նաև ավելացնում է