Բովանդակություն:
- Քայլ 1: Այն, ինչ ձեզ հարկավոր է…
- Քայլ 2: Կտորների միացում
- Քայլ 3: Arduino IDE- ի կարգավորում
- Քայլ 4: Կոդավորման ժամանակը
Video: RGB ջերմաստիճանի ցուցիչ (XinaBox- ով) ՝ 5 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Սա պաշտոնապես իմ Instructables– ի առաջին հոդվածն է, ուստի ես պատրաստվում եմ խոստովանել, որ ես հենց հիմա օգտագործում եմ այս հնարավորությունը ՝ այն փորձելու համար: Getգացեք, թե ինչպես է աշխատում հարթակը և դրա ամբողջ օգտագործողի փորձը: Բայց մինչ ես դա անում եմ, ես հասկացա, որ կարող եմ նաև օգտագործել հնարավորությունը կիսվելու մի պարզ նախագծի մասին, որի վրա ես այսօր աշխատում էի (օգտագործելով XinaBox- ի արտադրանքը, որն, ի դեպ, արտասանվում է որպես «X-in-a- Տուփ »):
Այս 5-քայլանոց պարզ ուսանելի դասում ես կընդգրկեմ հետևյալ թեմաները.
- Անհրաժեշտ բաղադրիչներ
- Տարբեր xChips- ի միացում:
- Arduino IDE միջավայրի կարգավորում:
- Գրել կոդը
- Եվ, վերջապես, փորձարկելով գաղափարը
Այն, ինչ ես չեմ կիսվի այս ուսանելիի մեջ.
- Որքան էլ ես սիրում եմ սուզվել ՝ բացատրելու, թե ինչ կարող է անել այդ xChips- ից յուրաքանչյուրը և ինչպես կարող եք դրանք շահարկել որոշակի գործառույթներ կատարելու համար, դա չի լինի այս ուսանելի նպատակը: Ես նախատեսում եմ առաջիկայում հրապարակել այլ հրահանգներ, որոնք կխորացնեն XinaBox- ի արտադրանքի կատալոգի միջոցով հասանելի յուրաքանչյուր տարբեր xChip- երը:
- Ես չեմ մտնելու Arduino կոդի հիմունքների մեջ, քանի որ ենթադրում եմ, որ դուք արդեն ունեք որոշակի մակարդակի փորձ Arduino IDE- ի օգտագործման, ինչպես նաև C/C ++ ծրագրավորման հիմնական մակարդակի իմացություն:
Քայլ 1: Այն, ինչ ձեզ հարկավոր է…
Տեխնիկապես, արտադրանքի հիմնական դասընթացները սովորաբար սկսվում են «Բարև աշխարհ» բառով: օրինակ, կամ նույնիսկ «Թարթել» օրինակ, որին կարող եք արդեն ծանոթ լինել, քանի որ ինչ -որ պահի աշխատել եք Arduino- ի կամ Raspberry Pi- ի հետ: Բայց ես չեմ ուզում սկսել դրանից, քանի որ բոլորն արդեն նույն բանն են անում, ինչն իրոք մի փոքր ձանձրացնում է:
Փոխարենը, ես ուզում էի սկսել գործնական նախագծի գաղափարով: Մի բան, որը և՛ բավականին պարզ է, և՛ մասշտաբելի, եթե ցանկանում եք, ավելի բարդ նախագծի գաղափար:
Ահա այն իրերը, որոնք մեզ պետք կգան (տե՛ս Instructable- ի այս բաժնի համար տրամադրված լուսանկարները).
- IP02 - Ընդլայնված USB ծրագրավորման միջերես
- CC03 - Arm Cortex M0+ Core
- SW02 - VOC և Եղանակի տվիչ (որն օգտագործում է BME680 սենսորը BOSCH- ի կողմից)
- xBUS միակցիչներ - միացնել I2C հաղորդակցությունը տարբեր xChips- երի միջև (x2)
- xPDI միակցիչ - ծրագրավորումը և կարգաբերումը միացնելու համար (x1)
Քայլ 2: Կտորների միացում
Բոլոր կտորները միմյանց միացնելու համար մենք նախ կսկսենք xBUS միակցիչից և xPDI միակցիչից 1 կտորով:
Հետևելով իմ տրամադրած պատկերներին ՝ նկատեք xChips- ի կողմնորոշումը և ուր են գնալու միակցիչները:
IP02- ի և CC03 xChips- ի միջև բավականին հեշտ է որոշել միացման կետերը:
CC03- ի համար դա կլինի հարավային կողմը: IP02- ի համար դա կլինի xChip- ի հյուսիսային կողմը:
Երբ դա արվի, մենք կավելացնենք ևս մեկ xBUS միակցիչ CC03 xChip- ի արևմտյան կողմին:
Կատարած?
Այժմ, պարզապես միացրեք SW02 xChip- ը CC03- ի արևմտյան կողմին:
Նախքան մեր նոութբուքում IP02 տեղադրելը, համոզվեք, որ երկու անջատիչների համար ընտրված են հետևյալ ընտրանքները.
- B- ն ընտրված է (ձախ անջատիչ)
- DCE- ն ընտրված է (աջ անջատիչ)
Վերջապես, մենք այժմ պատրաստ ենք տեղադրել IP02- ը մեր նոթբուքի մեջ և սկսել Arduino IDE- ի կարգավորումը:
Քայլ 3: Arduino IDE- ի կարգավորում
Կրկին, այս ուսանելի, ես ենթադրություն եմ արել, որ դուք արդեն ծանոթ եք Arduino IDE միջավայրին, ինչպես նաև այն մասին, թե ինչպես կառավարել գրադարանները զարգացման միջավայրում:
Այս նախագծի նպատակների համար մեզ անհրաժեշտ կլինեն երկու հիմնական գրադարաններ.
- arduino-CORE-https://github.com/xinabox/arduino-CORE
- SW02 գրադարան -
Ներբեռնեք երկու գրադարանները ձեր աշխատասեղանի ներսում գտնվող վայրում:
Հաջորդը, գործարկեք ձեր Arduino IDE- ն:
Հիմնական ընտրացանկից ընտրեք "Էսքիզ"> "Ներառել գրադարանը"> "Ավելացնել. ZIP գրադարան …"
Կրկնեք նույն գործընթացը երկու գրադարանային ֆայլերի համար:
Հաջորդը, մենք պետք է ընտրենք համապատասխան «Տախտակ», ինչպես նաև «Պորտ»: (Ուշադրություն դարձրեք, որ ես նաև ընդգծել եմ անհրաժեշտ ընտրանքները ՝ օգտագործելով նարնջագույն տուփ:
- Տախտակ. «Arduino/Genuino Zero (մայրենի USB պորտ)»
- Պորտ. «COMXX» (սա պետք է լինի ըստ ձեր մեքենայի վրա արտացոլված COM պորտի: Իմն օգտագործում է COM31)
Լավ! Ես գիտեմ, որ դուք մեծ ցանկություն ունեիք անցնել կոդավորման մեջ, այնպես որ հաջորդ քայլին հենց դրա վրա ենք կենտրոնանալու:
Քայլ 4: Կոդավորման ժամանակը
Այս բաժնում ես կսկսեմ կիսելով ծրագրի ավարտված ծրագրի ծածկագրի հատվածները: Եվ վերջում, ես կհրապարակեմ ամբողջական աղբյուրը ՝ հեշտացնելով ձեզ պարզապես պատճենել և տեղադրել կոդը ձեր Arduino IDE աղբյուրի ֆայլում:
Վերնագրի ֆայլեր
#ներառել /* Սա XinaBox հիմնական գործառույթների գրադարանն է: */
#include /* Սա VOC & Weather Sensor xChip- ի գրադարանն է: */
RGB ազդանշանների վերահսկման որոշ հաստատունների սահմանում
#սահմանեք կարմիր LedPin A4- ը
#սահմանեք կանաչLedPin 8 #սահմանեք կապույտLedPin 9
Հաջորդը, մենք պետք է հայտարարենք RGB արժեքների փոխանցման գործառույթի նախատիպ:
void setRGBColor (int redValue, int greenValue, int blueValue);
SW02 օբյեկտի հայտարարում
xSW02 SW02;
Setup () մեթոդը
void setup () {
// Սկսեք I2C Communication Wire.begin (); // Սկսեք SW02 սենսոր SW02.begin (); // Հետաձգման նորմալացման համար սենսորի հետաձգում (5000); }
Այժմ հիմնական հանգույցի համար ():
դատարկ շրջան () {
float tempC; }
Հաջորդը, մենք պետք է հարցում անցկացնենք SW02 օբյեկտի միջոցով, որը մենք ավելի վաղ ստեղծել էինք ծրագրում ՝ սենսորային չիպի հետ մեր հաղորդակցությունը սկսելու համար
// Կարդացեք և հաշվարկեք տվյալները SW02 տվիչից SW02.poll ();
Այժմ մենք կարդում ենք ՝ սենսորի ջերմաստիճանի ցուցանիշը ստանալու համար:
tempC = SW02.getTempC ();
Երբ մենք կարդում ենք, վերջին բանը, որ մենք պատրաստվում ենք անել, այն է, որ օգտագործենք մի շարք, եթե… else… հսկողության հայտարարություններ `ջերմաստիճանի տիրույթը որոշելու համար, այնուհետև զանգահարենք setRGBColor () գործառույթը:
// Դուք կարող եք կարգավորել ջերմաստիճանի տիրույթը `ըստ ձեր կլիմայի: Ինձ համար ես ապրում եմ Սինգապուրում, // որը արևադարձային է ամբողջ տարին, և այստեղ ջերմաստիճանի սահմանը կարող է բավականին նեղ լինել: եթե (tempC> = 20 && tempC = 25 && tempC = 30 && tempC = 32 && tempC = 35) {setRGBColor (255, 0, 0); }
Նշում. Եթե ձեզ հետաքրքրում է իմանալ, թե որոնք են RGB- ի համապատասխան արժեքները որոշակի գույնի համար, խորհուրդ եմ տալիս Google- ում որոնել «RGB գույնի արժեքները»: Կան բազմաթիվ կայքեր, որտեղ դուք կարող եք օգտագործել գույնի ընտրիչ ՝ ձեր ուզած գույնը ընտրելու համար:
// Եթե ցանկանում եք, և դա ընտրովի չէ, կարող եք նաև ավելացնել սենսորի ընթերցումների համար քվեարկության միջև ընկած ժամանակահատվածը:
ուշացում (DELAY_TIME);
Ofրագրի սկզբում, իհարկե, կարող եք DELAY_TIME- ի հաստատուն հայտարարել, այդպիսով դուք միայն պետք է փոփոխեք դրա արժեքը մեկ անգամ, այլ ոչ թե ձեր ծրագրի մի քանի վայրերում: Վերջապես, մեզ անհրաժեշտ է մեր RGB LED- ը վերահսկելու գործառույթը
void setRGBColor (int redValue, int greenValue, int blueValue) {
analogWrite (redLedPin, redValue); analogWrite (greenLedPin, greenValue); analogWrite (blueLedPin, blueValue); }
Վերջնական ծրագիր
#ներառում
#ներառել #սահմանել կարմիրLedPin A4 #սահմանել կանաչLedPin 8 #սահմանել կապույտLedPin 9 անվավեր հավաքածու RGBColor (int redValue, int greenValue, int blueValue); const int DELAY_TIME = 1000; xSW02 SW02; void setup () {// Գործարկել I2C Communication Wire.begin (); // Սկսեք SW02 սենսոր SW02.begin (); // Հետաձգման նորմալացման համար սենսորի հետաձգում (5000); } void loop () {// Ստեղծեք փոփոխական ՝ SW02 float tempC- ից կարդացած տվյալները պահելու համար; tempC = 0; // Կարդացեք և հաշվարկեք տվյալները SW02 տվիչից SW02.poll (); // Պահանջեք SW02 ՝ ջերմաստիճանի չափումը ստանալու և պահելու համար // temperatue փոփոխական tempC = SW02.getTempC (); եթե (tempC> = 20 && tempC = 25 && tempC = 30 && tempC = 32 && tempC = 35) {setRGBColor (255, 0, 0); } // Սենսորների ընթերցման հետաձգման միջև փոքր ուշացում (DELAY_TIME); } void setRGBColor (int redValue, int greenValue, int blueValue) {analogWrite (redLedPin, redValue); analogWrite (greenLedPin, greenValue); analogWrite (blueLedPin, blueValue); }
Այժմ, երբ մեր ծրագիրը պատրաստ է, եկեք ծրագրավորենք xChip- ը: Վերբեռնման գործընթացը ճիշտ նույնն է, ինչ դուք կբեռնեիք ծրագիր ձեր Arduino տախտակներում:
Երբ ավարտեք աշխատանքը, ինչու՞ չանջատեք վարդակից և դուրս բերեք այն փորձնական աշխատանքի:
Խորհուրդ ենք տալիս:
Raspberry Pi CPU ջերմաստիճանի ցուցիչ. 11 քայլ (նկարներով)
Raspberry Pi CPU ջերմաստիճանի ցուցիչ. Նախկինում ես ներկայացրել էի ազնվամորի pi (այսուհետ `RPI) գործառնական կարգավիճակի ցուցիչ: Այս անգամ ես կբացատրեմ RPI- ի համար ավելի օգտակար ինդիկատորային միացում, որն աշխատում է առանց գլխի (առանց մոնիտորի) եղանակով: Պրոցեսորի ջերմաստիճանը
DHT21 թվային ջերմաստիճանի և խոնավության ցուցիչ Arduino- ով. 6 քայլ
DHT21 թվային ջերմաստիճանի և խոնավության սենսոր Arduino- ով. Այս ձեռնարկում մենք կսովորենք, թե ինչպես օգտագործել DHT21 խոնավության և ջերմաստիճանի տվիչը Arduino- ի հետ և արժեքները ցուցադրել OLED էկրանին: Դիտեք տեսանյութը:
Ստեղծում-Ահազանգ-Օգտագործելով-Ubidots-ESP32+ջերմաստիճանի և խոնավության ցուցիչ ՝ 9 քայլ
Creating-Alert-Using-Ubidots-ESP32+Temp and Humidity Sensor. Այս ձեռնարկում մենք ջերմաստիճանի և խոնավության տարբեր տվյալներ ենք չափելու ՝ օգտագործելով Temp և խոնավության տվիչ: Դուք նաև կսովորեք, թե ինչպես ուղարկել այս տվյալները Ubidots- ին: Որպեսզի կարողանաք վերլուծել այն ցանկացած վայրից ՝ տարբեր կիրառման համար: Նաև ստեղծելով emai
ESP32 NTP ջերմաստիճանի զոնդի պատրաստման ջերմաչափ Steinhart-Hart ուղղիչ և ջերմաստիճանի ահազանգով. 7 քայլ (նկարներով)
ESP32 NTP ջերմաստիճանի զոնդի պատրաստման ջերմաչափ Steinhart-Hart ուղղման և ջերմաստիճանի տագնապի միջոցով. Դեռևս ճանապարհորդում եք «առաջիկա նախագիծ» ավարտելու համար, հրահանգելի է, որը ցույց է տալիս, թե ինչպես եմ ավելացնում NTP ջերմաստիճանի զոնդ, պիեզո բ
Ո՞վ է իմ դռան մոտ: PIR Շարժման ցուցիչ/միջակայքի ցուցիչ `5 քայլ
Ո՞վ է իմ դռան մոտ: PIR Շարժման սենսոր/Շարժման սենսորային նախագիծ. Մեր նախագիծը նպատակ ունի զգալ շարժումը PIR և հեռավորության տվիչների միջոցով: Arduino ծածկագիրը կտա տեսողական և ձայնային ազդանշան ՝ օգտագործողին մոտակայքում հայտնելու համար: MATLAB ծածկագիրը կուղարկի էլեկտրոնային փոստի ազդանշան ՝ օգտագործողին զգուշացնելու համար, որ ինչ -որ մեկը մոտ է: Այս սարքը