Բովանդակություն:
- Քայլ 1: Ինչպե՞ս է այն աշխատում:
- Քայլ 2: Տուփ պատրաստելը
- Քայլ 3. Arduino- ի ավելացում
- Քայլ 4: Arduino կոդ
- Քայլ 5: Node-RED
- Քայլ 6: Տվյալների բազա
- Քայլ 7: Գնահատում
Video: UCL - IIoT - Ֆերմերների շուկա. 7 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Farmersmarket դրամապանակը կարող է օգտագործվել տոնավաճառներում, ֆերմերային շուկաներում կամ այլ հավաքույթներում, որտեղ ապրանքներ են վաճառվում:
Farmersmarket դրամապանակը մետաղադրամների հաշվիչ մեքենա է, որը թույլ է տվել արագ տեսնել մետաղադրամներ պահող տուփի ընդհանուր պարունակությունը: Ֆերմերային շուկայի դրամապանակը նաև ընդհանուրը կբեռնի Node-red- ի միջոցով ծրագրավորված սերվերի վրա:
Այն պատրաստել են Դանիայի Լիլեբելտի համալսարանական քոլեջի երեք ուսանողներ: Մեր նախորդ նախագծից ՝ The coin sorter- ից, մենք սովորել ենք շատ նոր բաներ, որոնք մենք կներառենք կառուցման մեջ: Մենք որոշեցինք հրաժարվել մետաղադրամների տեսակավորումից և փոխարենը ստիպել մեքենային հաշվել դրանք ՝ դրանք տեղադրելով ընդհանուր մետաղադրամների տուփի մեջ:
Դրամապանակը բաղկացած է հինգ սլայդներից կամ սլոթերից ՝ մեկը յուրաքանչյուր տեսակի մետաղադրամի համար: Երբ մետաղադրամը տեղադրվում է համապատասխան անցքի մեջ, այն կընկնի ներքև ՝ անդրադարձիչի կողքով, որը բարձր ազդանշան է ուղարկում arduino- ին: Մենք կօգտագործենք ազդանշանը մետաղադրամների արժեքը հաշված ընդհանուրին ավելացնելու, այն արտաքին էկրանին ցուցադրելու և նոր ընդհանուրը սերվեր ուղարկելու համար: Երբ սերվերը ստանա ընդհանուր գումարը, այն կթարմացնի առցանց գտած UI- ն ՝ ցույց տալով նոր ընդհանուրը:
Նկարագրություն Մետաղադրամների հինգ անցքով տուփ, որը տանում է դեպի հինգ առանձին, ներքին սահիկներ, մեկը ՝ յուրաքանչյուր տեսակի մետաղադրամի համար ՝ 1kr, 2kr, 5kr, 10kr, 20kr
LCD էկրան, որը ցույց է տալիս տուփի վերևում տեղադրված կանխիկ գումարը:
Տուփի վերին հատվածը ամրացված է ծակոցներով: Վերևը բարձրացնելով ՝ arduino- ի պատյանները դուրս կգան LCD- ից, մետաղադրամների սլաքներից, արտացոլող սարքերից և այլն:
Բաղադրիչներ և նյութեր - Տուփ պատրաստելու գործիքներ և սարքավորումներ (կարող են լինել ստվարաթուղթ կամ փայտ)
- Arduino Mega 2560
- 30 jumperwires
- 5 x LDR «Լույսի ցուցիչ»
- 5 x 220 օմ դիմադրիչներ
- 5 x 10k ohm դիմադրողներ
- 5 x սպիտակ LED
- LCD 16x02 մոդուլ
- Մետաղադրամներ
Կոդ Arduino- ում
Ինչպես արդեն նշվեց, այս նախագիծը ծագում է ավելի վաղ ութ ամիս առաջ մեր կատարած նախագծից (https://www.instructables.com/id/Coin-Sorting-Machine/): Դրա շնորհիվ մենք կարողանում ենք վերաօգտագործել ծածկագրի մեծ մասը arduino- ում, չնայած դրանում կան ավելի փոքր փոփոխություններ: Ինչպես կտեսնեք, կոդը բավականին պարզ է, ինչը Arduino- ի հետ մի փոքր փորձ ունեցող ցանկացած անձ պետք է կարողանա հասկանալ:
Node-RED Node-RED- ը այն գործիքն է, որը մենք կօգտագործենք arduino- ից և ձեր համակարգչից տվյալները ստանալու համար, այնուհետև ինտերնետից, եթե դա ձեզ հետաքրքրում է: Node-RED- ի օգտագործման մեկ այլ կարևոր պատճառ է հանդիսանում Arduino- ի տվյալները դյուրընկալելի ձևով ներկայացնելու ունակությունը այն մարդկանց համար, ովքեր չունեն Arduino- ի և Node-RED- ի ծրագրավորման/կոդավորման փորձ:
Տվյալների բազան Wampserver- ի միջոցով մենք կարող ենք Arduino- ից մեր արժեքները պահել տվյալների բազայում: Wampserver- ի միջոցով հնարավոր է ստեղծել և փոխարինել ձեր սեփական տվյալների բազան, ինչպես ցանկանում եք ՝ օգտագործելով phpMyAdmin ՝ MySQL- ը կառավարելու համար: Մեր դեպքում մենք ունենք վեց արժեք, որոնք մենք պետք է պահենք (մեկը `յուրաքանչյուր տեսակի մետաղադրամի համար և մեկը` արդյունքի համար), և, հետևաբար, մենք ստեղծել ենք վեց սյունակ, որոնցում յուրաքանչյուր արժեք կարող է պահվել:
Քայլ 1: Ինչպե՞ս է այն աշխատում:
Ավելի մանրամասն կալվածքում մենք այժմ կբացատրենք, թե ինչպես է աշխատում մեր համակարգը:
Ինչպես տեսնում եք հոսքի գծապատկերում, գործընթացի առաջին բանը, որ սահմանում է, այն է, երբ մետաղադրամը տեղադրվում է դրա ճիշտ անցքի մեջ:
LDR լույսի սենսորը կնկատի լույսի նվազված քանակությունը, երբ մետաղադրամը անցնում է սենսորի կողքով, ինչը Arduino ծրագրին կհանգեցնի «Antal» փոփոխականի (թիվը) մեկի ավելացմանը, քանի որ այժմ մեքենայում կա մեկ մետաղադրամ: Միևնույն ժամանակ, մետաղադրամի արժեքը ավելացվում է «արդյունք» փոփոխականին: «արդյունքը» կցուցադրվի LCD- ում `իր նոր արժեքով:
«Անթալ» -ի և «արդյունքի» նոր արժեքներն ուղարկվում են Node-RED, որի վահանակը ինքն իրեն կթարմացնի այս արժեքներով: Վերջապես Node-RED- ը արժեքները ուղարկում է մեր տվյալների բազա:
Եվ կրկնել:
Քայլ 2: Տուփ պատրաստելը
Այս անգամ մենք օգտագործում էինք Illustrator- ը ՝ մեր տուփը նախագծելու համար: Լազերային դանակով մենք պետք է ճշգրիտ պատրաստենք այս տուփը և այն հնարավորությունները, որոնք պահանջվում են մեր նախագծի համար: Ի վերջո, դա ձեզն է ՝ որոշելու, թե ինչպես կատարել կատարյալ տուփ ձեր նախագծի համար:
Քայլ 3. Arduino- ի ավելացում
It'sամանակն է Arduino- ն ներդնել տուփի մեջ: Սա կարող է բավականին դժվար լինել, քանի որ սենսորը կարող է իրեն անկանխատեսելի պահել: (Նոր) Այս քայլում մենք փոխեցինք մեր օգտագործած սենսորը `այս տվիչների նախապես նշված անհուսալիության պատճառով (tcrt 5000): Փոխարենը մենք ընտրել ենք ավելի պարզ LDR սենսոր (Լույսի կախվածության դիմադրություն): Այս սենսորից ելքը անալոգային արժեք է, որը փոխվում է ՝ կախված սենսորին հասնող լույսի քանակից:
Քայլ 4: Arduino կոդ
Այս քայլում մենք կենտրոնանում ենք ծրագրաշարի վրա: Arduino ծածկագիրն այսպիսին է.
const int sensorPin1 = 3; // TCRT-5000 ցուցիչ, որը միացված է nr pin- ին: 2 int sensorState1 = 0; // Պարունակում է սենսորի արժեքը (բարձր/ցածր)
int Antal10 = 0; // Փոփոխական, որը պահում է մեքենայի մեջ դրված մետաղադրամների քանակը int
Արդյունք = 0; // Փոփոխական, որը պահում է մեքենայի մեջ դրված բոլոր մետաղադրամների համակցված արժեքը
void setup () {Serial.begin (9600); }
void loop () {int sensorState1 = analogRead (sensorPin1); // Կարդում է սենսորի վիճակը
եթե (540 <sensorState1 <620) {// Երբ սենսորների ելքային արժեքը 540 -ից 620 -ի միջև է
Անթալ 10 += 10; // - կա մի մետաղադրամ, որը անցնում է սենսորից, որն արգելափակում է որոշ լույս
resultat += 10; // - և սենսորը կարդալու է լույսի ավելի ցածր մակարդակ}
Serial.print (արդյունք);
Serial.print (","); // Փոփոխականներին բաժանում է ստորակետով, որն անհրաժեշտ է Node-RED- ում փոփոխականների արժեքները կարդալիս
Serial.println (Antal10); // - և նաև անհրաժեշտ է, երբ այդ արժեքները պետք է պահվեն տվյալների բազայում
ուշացում (100); }
Այս ծածկագիրը գրված է միայն մեկ տվիչի համար `ավելի հեշտ ընթերցելու համար:
Ամբողջական կոդը ՝
Քայլ 5: Node-RED
Երբ Arduino ծածկագիրն աշխատում է այնպես, ինչպես պետք է, կարող եք սկսել ծրագրավորել Node-RED- ը, որը հանդես կգա որպես Arduino- ի և տվյալների բազայի միջև միջին կապ և որպես սարքի աշխատանքի տեսողական ցուցադրում: Node-RED- ի ծրագրավորումը բաղկացած է տարբեր գործառույթներով հանգույցների օգտագործումից և այդ պարամետրերի ճիշտ պարամետրերի տեղադրումից:
Երբ մեր տվյալները հասնում են Node-RED, այն ուղարկվում է երկու տարբեր պառակտման գործառույթների: Այս գործառույթներից մեկը այժմ բաժանված տվյալները փոխանցում է տվյալների բազա: Մյուսը տարբեր տվյալների արժեքներ է ուղարկում իրենց վահանակի յուրաքանչյուր հանգույցի վրա, որոնք այժմ պետք է տեսանելի լինեն վահանակի վրա:
Ինչպես նշվեց, մենք ունենք վեց արժեք, որոնք պետք է բուժվեն: Node-Red- ի կառավարման վահանակի միջոցով մենք կարող ենք ցուցադրել այս արժեքները, ինչպես կտեսնեք նկարի 3-րդ մասի վերևի աջ մասում գտնվող պատկերում:
Հանգույց-RED կոդ:
Քայլ 6: Տվյալների բազա
Այժմ մենք օգտագործում ենք տվյալների բազա `արժեքները պահելու համար: Wampserver- ի միջոցով հնարավոր է օգտագործել phpMyAdmin ՝ MySQL- ը կառավարելու և ձեր սեփական տվյալների շտեմարան ստեղծելու համար ՝ օգտագործելով տեղական սերվեր ՝ ձեր հատուկ կարիքներին համապատասխան:
Սկզբից տվյալների բազա (ֆերմերային շուկա) զրոյից կազմելիս պետք է կազմել աղյուսակ (mont_tabel), որում պահում եք ձեր արժեքները: Կախված նրանից, թե որքան տվյալներ ունեք, և ինչպես պետք է դրանք պատվիրեք, կարող եք պատրաստել այնքան աղյուսակ, որքան անհրաժեշտ է: Քանի որ մենք պետք է պահենք վեց տարբեր արժեքներ, և, հետևաբար, մեզ անհրաժեշտ էր վեց սյունակ ՝ մեկը յուրաքանչյուր արժեքի համար, մեր աղյուսակում: Վերևի նկարում դուք կարող եք տեսնել մեր տվյալների բազան:
Երբ մեր տվյալները հասնում են Node-RED, այն պառակտվում է պառակտման գործառույթով, և այժմ տվյալները ուղարկվում են տվյալների բազա:
Քայլ 7: Գնահատում
Նախևառաջ ուզում ենք նշել, որ ստվարաթղթի փոխարեն փայտից տուփ պատրաստելը շատ ավելի հուսալի է դարձնում ամբողջ ֆիզիկական կառուցվածքը, և, հետևաբար, խորհուրդ ենք տալիս դա անել:
Սենսորները TCRT-5000- ից և պարզ LDR լույսի ցուցիչից փոխելը շատ ավելի կայունություն տվեց, քանի որ սենսորների մոտ արագ կարդալու ունակությունը, երբ մետաղադրամն անցնում է դրանով: TCRT-5000- ի հետ աշխատելիս շատ գործոններ պետք է հաշվի առնել, որպեսզի սենսորը աշխատի այնպես, ինչպես կցանկանայիք:
Համակարգը միացնելով տվյալների բազային և կարողանալով տեսողականորեն ներկայացնել ձեր տվյալները, որ ցանկացած մարդ, առանց այս նախագծի որևէ նախնական իմացության, կարողանա հասկանալ, թե ինչ է կատարվում, կարծես ավելի մեծ արժեք է տալիս նախագծին:
Խորհուրդ ենք տալիս:
UCL - Տեղադրված - Ընտրեք և տեղադրեք ՝ 4 քայլ
UCL - Ներկառուցված - Ընտրություն և տեղ
UCL - Ներկառուցված // Արևային վահանակների երկակի առանցքի լուսակիր. 7 քայլ
UCL - Ներկառուցված // Արևային վահանակների երկակի առանցքի լուսավորիչ. Հավաքված նախագիծը և առանձին 3D ֆայլերը
UCL - Միացնելով Node -red- ը Siemens PLC- ին `օգտագործելով KEPserver: 7 քայլ
UCL-Կապի հանգույցը Siemens PLC- ին միացնելով KEPserver- ի միջոցով. Պահանջներ Node-red: https://nodered.org/docs/getting-started/installationKEPserver: -6-ազատում
UCL - Արդյունաբերություն 4.0. Քենդի խառնիչ 4.000: 9 քայլ
UCL - Industry 4.0. Candy Mixer 4.000. Industry 4.0 -ում մեր նախագծի համար մենք որոշեցինք քաղցրավենիքի համար խառնիչ պատրաստել: Գաղափարն այն է, որ մենք ունենք օգտվողի վահանակ ՝ պատրաստված Node-Red- ում, որտեղ հաճախորդները կարող են պատվիրել իրենց կոնֆետները, այնուհետ arduino- ն կմշակի պատվերը և կոնֆետը կխառնի ամանի մեջ: Հետո մենք
UCL-lloT-Outdoor-light Գործարկվում է արևածագ/մայրամուտ. 6 քայլ
UCL-lloT-Outdoor-light Գործարկեց արևածագը/մայրամուտը. Բարև բոլորին: Մի փոքր աշխատելով, որոշ մասեր և ծածկագիր ես հավաքեցի այս ուսանելի ծրագիրը, որը սկզբից մինչև վերջ ձեզ ցույց կտա, թե ինչպես արտադրել այս արտաքին լույսը: Գաղափարը ծագեց հայրիկիցս, ով ամռանը ստիպված էր ձեռքով դուրս գալ