Съдържание:

UCL - IIoT - Пазар на фермери: 7 стъпки
UCL - IIoT - Пазар на фермери: 7 стъпки

Видео: UCL - IIoT - Пазар на фермери: 7 стъпки

Видео: UCL - IIoT - Пазар на фермери: 7 стъпки
Видео: london diaries | random realistic days in my life as a ucl masters student 2024, Ноември
Anonim
UCL - IIoT - Фермерски пазар
UCL - IIoT - Фермерски пазар

Портфейлът Farmersmarket може да се използва на панаири, фермерски пазари или други събирания, където се продават стоки.

Портфейлът Farmersmarket е машина за броене на монети, създадена, за да позволи бързо да се види общото съдържание на кутия с монети. Портфейлът на farmmarket също ще качи общата сума на сървър, програмиран чрез Node-red.

Изработен е от трима студенти от Университетския колеж в Лилебелт в Дания. От предишния ни проект, Сортиращият монети, научихме много нови неща, които ще включим в изграждането. Избрахме да се откажем от сортирането на монетите и вместо това да накараме машината да ги преброи, като ги депозира в обща кутия за монети.

Портфейлът се състои от пет слайда или слота, по един за всеки тип монета. Когато монетата бъде поставена в подходящото гнездо, тя ще падне през рефлектор, който изпраща ВИСОК сигнал към arduino. Ще използваме сигнала, за да добавим стойността на монетите към преброената сума, да я покажем на външния дисплей и да изпратим новата сума на сървър. След като сървърът получи общата сума, той ще актуализира потребителския интерфейс, намерен онлайн, показващ новата сума.

Описание Кутия с пет слота за монети, водещи до пет отделни вътрешни слайда, по един за всеки тип монети: 1kr, 2kr, 5kr, 10kr, 20kr

LCD дисплей, показващ общите парични средства, депозирани в горната част на кутията.

Горната част на кутията е обезопасена с люкове. Повдигането на горната част ще извади корпуса на arduino заедно с горната част, съдържаща LCD, слотове за монети, отражатели и др., Оставяйки само кутията, в която са поставени монетите.

Компоненти и материали - Инструменти и оборудване за направата на кутия (може да бъде картон или дърво)

- Arduino Mega 2560

- 30 джъмпер кабела

- 5 x LDR "Светлинен сензор"

- 5 x 220 ома резистори

- 5 x 10k ома резистори

- 5 x бели светодиода

- 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 дисплея с новата му стойност.

Новите стойности на „Antal“и „result“се изпращат до Node-RED, в който таблото за управление ще се актуализира с тези стойности. Най-после Node-RED изпраща стойностите в нашата база данни.

И повторете.

Стъпка 2: Направете кутия

Този път използвахме Illustrator за проектиране на нашата кутия. С лазерен нож ние трябваше да изработим точно тази кутия и функциите, които са необходими за нашия проект. В крайна сметка от вас зависи да решите как да направите перфектната кутия за вашия проект.

Стъпка 3: Добавяне на Arduino

Добавяне на Arduino
Добавяне на Arduino

Време е да внедрите Arduino в кутията. Това може да бъде доста трудно, тъй като сензорът може да се държи непредсказуемо. (Ново) В тази стъпка сме сменили сензора, който използваме, поради гореспоменатата ненадеждност на тези сензори (tcrt 5000). Вместо това сме избрали по-прост LDR-сензор (резистор, зависим от светлината). Изходът от този сензор е аналогова стойност, която се променя в зависимост от количеството светлина, достигащо до самия сензор.

Стъпка 4: Arduino код

В тази стъпка ние се фокусираме върху софтуера. Кодът на Arduino изглежда така:

const int сензорPin1 = 3; // TCRT-5000 сензор, който е свързан към пин nr. 2 int sensorState1 = 0; // Съдържа стойността на сензора (висока/ниска)

int Antal10 = 0; // Променлива, която съхранява количеството монети, които са били поставени в машината int

Резултат = 0; // Променлива, която съхранява комбинираната стойност на всички монети, поставени в машината

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

void loop () {int sensorState1 = analogRead (sensorPin1); // Чете състоянието на сензора

if (540 <sensorState1 <620) {// Когато изходната стойност на сензорите е между 540 и 620

Antal10 += 10; // - през сензора преминава монета, която блокира малко светлина

резултат += 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.

NOD-ЧЕРВЕН код:

Стъпка 6: База данни

База данни
База данни

Сега ще използваме база данни за съхраняване на стойностите. С Wampserver е възможно да използвате phpMyAdmin за администриране на MySQL и създаване на собствена база данни, като използвате локален сървър, който да отговаря на вашите специфични нужди.

Първо, когато правите база данни (farm_market) от нулата, трябва да направите таблица (mont_tabel), в която съхранявате вашите ценности. В зависимост от това колко данни имате и как трябва да ги поръчате, можете да направите толкова таблици, колкото ви е необходимо. Тъй като трябва да съхраняваме шест различни стойности и следователно се нуждаем от шест колони, по един за всяка стойност, в нашата таблица. На горната снимка можете да видите нашата база данни.

Когато нашите данни пристигнат в Node-RED, те се разделят чрез функция за разделяне и данните сега се изпращат към базата данни.

Стъпка 7: Оценка

Първо искаме да споменем, че правенето на кутията от дърво, вместо от картон, прави цялата физическа настройка много по -надеждна и затова препоръчваме да го направите.

Смяната на сензорите от TCRT-5000 на обикновен LDR сензор за светлина даде много по-голяма стабилност, що се отнася до способността на сензорите да четат бързо, когато монетата мине покрай тях. Когато работите с TCRT-5000, трябва да се вземат предвид много фактори, за да може сензорът да работи както искате.

Свързването на системата към база данни и възможността за визуално представяне на вашите данни по начин, така че всеки човек без предварително познаване на този проект, който е в състояние да разбере какво се случва, изглежда придава на проекта по -голяма стойност.

Препоръчано: