Мазмуну:

UCL - IIoT - Фермерлер базары: 7 кадам
UCL - IIoT - Фермерлер базары: 7 кадам

Video: UCL - IIoT - Фермерлер базары: 7 кадам

Video: UCL - IIoT - Фермерлер базары: 7 кадам
Video: UCL-IIoT-Datalogger 2024, Ноябрь
Anonim
UCL - IIoT - Дыйкандар базары
UCL - IIoT - Дыйкандар базары

Farmersmarket капчыгы жарманкелерде, дыйкандардын базарларында же товарлар сатылган башка чогулуштарда колдонулушу мүмкүн.

Farmersmarket капчыгы монеталарды эсептөөчү машина болуп саналат, ал тыйындарды кармап турган кутунун жалпы мазмунун тез көрүүгө мүмкүндүк берет. Фермерлердин капчыгы жалпы сумманы Node-red аркылуу программаланган серверге жүктөйт.

Бул Даниядагы Лиллеболт университетинин үч студенти тарабынан даярдалган. Мурунку долбоорубуздан, тыйын сорттоочу, биз курууга киргизе турган көптөгөн жаңы нерселерди үйрөндүк. Биз тыйындарды сорттоодон баш тартууну чечтик жана анын ордуна машинаны санап, коммуналдык монета кутусуна салып койдук.

Капчык беш слайддан же уячадан турат, монетанын ар бир түрүнө бирден. Тиешелүү тешикке салынганда, ал чагылтуучудан өтүп түшөт, ал ардуиного ЖОГОРКУ сигнал берет. Биз сигналды монеталардын наркын эсептелген суммага кошуп, тышкы дисплейде көрсөтөбүз жана жаңы сумманы серверге жөнөтөбүз. Сервер жалпы сумманы алгандан кийин, интернетте жаңы сумманы көрсөтүүчү UI жаңыртылат.

Сүрөттөмө: Беш монетанын уячасы бар куту, беш жеке, ички слайддар, монетанын ар бир түрү үчүн бирөө: 1kr, 2kr, 5kr, 10kr, 20kr

ЖК дисплейи кутунун үстүнө түшкөн жалпы акчаны көрсөтөт.

Кутунун үстү люктар менен бекитилген. Үстүн көтөрүү ардуино корпусун алып чыгат, анын үстүнө ЖК, монета уячалары, рефлекторлор ж.

Компоненттер жана материалдар - Куту жасоо үчүн шаймандар жана жабдуулар (картон же жыгач болушу мүмкүн)

- Arduino Mega 2560

- 30 жип

- 5 x LDR "Жарык сенсору"

- 5 х 220 ом каршылыгы

- 5 x 10k Ом резисторлору

- 5 х Ак LED

- LCD 16x02 модулу

- Монеталар

Код Ардуинодо

Жогоруда айтылгандай, бул долбоор биз болжол менен сегиз ай мурун жасаган мурунку долбоордон келип чыккан (https://www.instructables.com/id/Coin-Sorting-Machine/). Ушундан улам, биз кичине өзгөртүүлөр болсо да, коддун чоң бөлүгүн arduinoдо кайра колдоно алабыз. Көрүнүп тургандай, коду абдан жөнөкөй, аны Arduino менен бир аз тажрыйбасы бар адам түшүнө алышы керек.

Түйүн-КЫЗЫЛ Түйүн-КЫЗЫЛ-бул ардуинодон жана компьютериңизге маалыматтарды алуу үчүн колдоно турган куралыбыз, андан ары интернетте, эгер бул сиздин кызыкчылыгыңызда болсо. Node-REDти колдонуунун дагы бир маанилүү себеби, Arduino жана Node-RED менен программалоо/коддоо тажрыйбасы жок адамдар үчүн Arduino маалыматын түшүнүүгө оңой берүү мүмкүнчүлүгү.

Wampserverди колдонуп маалымат базасы, биз баалуулуктарыбызды Arduino маалымат базасында сактай алабыз. Wampserver менен MySQLти башкаруу үчүн phpMyAdminди колдонуп, өзүңүз каалагандай өз маалымат базаңызды түзүп, алмаштырып койсоңуз болот. Биздин учурда, биз сакташыбыз керек болгон алты баалуулукка ээбиз (монетанын ар бир түрү үчүн бирөө жана натыйжа үчүн бирөө), демек, биз ар бир баалуулук сактала турган алты мамычаны түздүк.

1 -кадам: Бул кантип иштейт?

Бул кантип иштейт?
Бул кантип иштейт?

Кененирээк үйдө, биз азыр системабыздын кантип иштээрин түшүндүрөбүз.

Агым диаграммадан көрүп тургандай, процесстин биринчи кезеги - тыйындын туура оюкчасына салынышы.

LDR жарык сенсору жарыктын азайганын байкайт, качан монета сенсордун жанынан өтөт, бул Arduino программасын "Antal" (саны) өзгөрмөсүн бирөө менен көбөйтөт, анткени азыр машинада бир тыйын бар. Ошол эле учурда монетанын баасы "натыйжа" өзгөрмөсүнө кошулат. "натыйжа" ЖКда жаңы мааниси менен көрсөтүлөт.

"Antal" жана "result" жаңы баалуулуктары Node-REDге жөнөтүлөт, анда панель бул маанилер менен өзүн жаңыртып турат. Акыры Node-RED баалуулуктарды биздин маалымат базасына жөнөтөт.

Жана кайталаңыз.

2 -кадам: кутуча жасоо

Бул жолу биз кутучаны долбоорлоо үчүн Illustratorду колдонуп жатабыз. Лазердик кескич менен биз бул кутучаны жана долбоорубузга керектүү болгон өзгөчөлүктөрдү так жасап алдык. Акыр -аягы, сиздин долбооруңуз үчүн идеалдуу кутуну кантип жасоону өзүңүз чечесиз.

3 -кадам: Arduino кошуу

Arduino кошуу
Arduino кошуу

Бул кутуга Arduino ишке ашыруу үчүн убакыт келди. Бул абдан кыйын, анткени сенсор өзүн өзү алып жүрө албайт. (Жаңы) Бул кадамда биз колдонуп жаткан сенсорду өзгөрттүк, анткени бул сенсорлордун ишенимсиздиги (tcrt 5000). Анын ордуна биз жөнөкөй LDR-сенсорун (Жарыкка көз каранды каршылык) тандап алдык. Бул сенсордун чыгышы аналогдук мааниге ээ, ал сенсордун өзүнө жеткен жарыктын көлөмүнө жараша өзгөрөт.

4 -кадам: Arduino коду

Бул кадамда биз программалык камсыздоого көңүл бурабыз. Arduino коду мындай көрүнөт:

const int sensorPin1 = 3; // TCRT-5000 сенсор, ал nr пинге туташкан. 2 int sensorState1 = 0; // Сенсордун маанисин камтыйт (Жогорку/төмөн)

int Antal10 = 0; // int машинасына салынган монеталардын суммасын сактаган өзгөрмө

Resultat = 0; // Машинага салынган бардык монеталардын бириккен баасын сактаган өзгөрмө

void setup () {Serial.begin (9600); }

void loop () {int sensorState1 = analogRead (sensorPin1); // Сенсордун абалын окуйт

if (540 <sensorState1 <620) {// Сенсорлордун чыгуу мааниси 540тан 620га чейин болгондо

Antal10 += 10; // - сенсордун жанынан бир тыйын бар, ал кандайдыр бир жарыкты бөгөйт

resultat += 10; // - жана сенсор жарыктын төмөнкү деңгээлин окуйт}

Serial.print (Resultat);

Serial.print (","); // Өзгөрмөлөрдү үтүр менен ажыратат, бул Node-REDдеги өзгөрмөлөрдүн маанилерин окуп жатканда керек.

Serial.println (Antal10); // - жана ошондой эле бул баалуулуктар маалымат базасында сакталганда керек

кечиктирүү (100); }

Бул код окууну жеңилдетүү үчүн бир гана сенсор үчүн жазылган.

Толук код:

5-кадам: Node-RED

Түйүн-КЫЗЫЛ
Түйүн-КЫЗЫЛ
Түйүн-КЫЗЫЛ
Түйүн-КЫЗЫЛ

Arduino коду иштеши керек болгондо, Node-RED программалоосун баштасаңыз болот, ал Arduino менен маалымат базасынын ортосундагы ортоңку линия жана машинанын кандай иштеп жатканынын визуалдык дисплейи катары кызмат кылат. Node-RED программалоосу ар кандай функцияларга ээ болгон түйүндөрдү колдонуудан жана бул түйүндөрдүн туура иштеши үчүн туура параметрлерди коюудан турат.

Биздин маалыматтар Node-REDге келгенде, ал эки башка бөлүнүү функциясына жөнөтүлөт. Бул функцияларынын бири азыр бөлүнгөн маалыматтарды маалымат базасына жөнөтөт. Экинчиси ар кандай маалыматтык баалуулуктарды алардын такта түйүндөрүнүн ар бирине жөнөтөт, алар азыр панелде көрүнүшү керек.

Жогоруда айтылгандай, бизде дарылана турган алты баалуулук бар. Node-Redдин панелинин жөндөмдөрү менен биз бул баалуулуктарды көрсөтө алабыз, сиз 3-кадамдын жогору жагындагы оң жактагы сүрөттө көрөсүз.

Node-RED коду:

6 -кадам: Маалыматтар базасы

Маалыматтар базасы
Маалыматтар базасы

Азыр биз баалуулуктарды сактоо үчүн маалымат базасын колдонобуз. Wampserverдин жардамы менен phpMyAdminди колдонуп, MySQLти башкарууга жана өзүңүздүн маалымат базаңызды түзүүгө, жергиликтүү серверди колдонуу сиздин керектүү керектөөлөрүңүзгө жооп берет.

Биринчиден, маалымат базасын (фермерлер_маркасы) нөлдөн баштап жасоодо сиз өзүңүздүн баалуулуктарыңызды сактай турган таблицаны (mont_tabel) жасашыңыз керек. Канча маалыматыңыз бар экендигине жана аны кантип заказ кылышыңызга жараша, сизге керектүү көп стол жасай аласыз. Анткени биз алты башка баалуулукту сакташыбыз керек, ошондуктан биздин столго ар бир баалуулук үчүн бирден алты колонна керек болчу. Жогорудагы сүрөттө сиз биздин базаны көрө аласыз.

Биздин маалыматтар Node-REDге келгенде, ал бөлүнүү функциясы менен бөлүнөт жана азыр маалыматтар базага жөнөтүлөт.

7 -кадам: баалоо

Биринчиден, картон эмес, жыгачтан кутучаны жасоо, бүт физикалык орнотууну кыйла ишенимдүү кылат, ошондуктан биз муну сунуштайбыз.

Сенсорлорду TCRT-5000ден жана жөнөкөй LDR жарык сенсоруна өзгөртүү бир топ туруктуулукту берди, анткени сенсор тыйын жанына келгенде тез окуй алат. TCRT-5000 менен иштөөдө сенсор сиз каалагандай иштеши үчүн көптөгөн факторлорду эске алуу керек.

Системаны маалымат базасына туташтыруу жана бул долбоорду алдын ала билбеген ар бир адам, эмне болуп жатканын түшүнүүгө жөндөмдүү болуп, маалыматыңызды визуалдуу түрдө көрсөтө алуу, долбоорго көбүрөөк маани бергендей.

Сунушталууда: