SlideShare a Scribd company logo
1 of 50
Download to read offline
Автоматизација на процесот
приготвување Ајвар
Ментор Изработил
Проф. д-р Живко Коколански Бојан Петрески
Скопје, ноември 2016
У н и в е р з и т е т „ С в . К и р и л и
М е т о д и ј “ - С к о п ј е
Ф а к у л т е т з а е л е к т р о т е х н и к а и и н ф о р м а ц и с к и
т е х н о л о г и и
Апстракт
Проектирање на систем за автоматизација и контрола на процесот приготвување ајвар.
Системот се состои од софтверски и од хардверски дел. Сигналите добиени преку
поставените сензори се носат до развојната плочка Arduino Uno каде што се
обработуваат. За плочката изработена е програма во програмскиот пакет LabVIEW што
извршува одлуки за тоа кои акции ќе бидат преземени. Софтверот, меѓудругото, врши
автоматска регулација на брзината на вртење на моторот што ги движи мешалките
согласно тековната температура, ги прикажува тековните параметри на системот и дава
предупредувања во случај на пречекорување на истите (преголема температура и сл.).
Клучни зборови: ајвар, LabVIEW, Arduino, Uno, SCADA, мешалка, автоматизација, DC-
мотор
2
Содржина
Содржина..................................................................................................................................2
Содржина на слики..................................................................................................................3
Содржина на табели.................................................................................................................4
1. Вовед..................................................................................................................................5
2. Автоматизација на процесот приготвување Ајвар (АППА).........................................6
2.1. Хардвер ......................................................................................................................6
2.1.1. Механички дел ...................................................................................................6
2.1.2. Димензионирање на електричен мотор ...........................................................7
2.1.3. Температурно сетило.......................................................................................11
2.1.4. Индуктивно сетило и принцип на мерење брзина........................................12
2.1.5. Сирена...............................................................................................................13
2.1.6. Електронски дел...............................................................................................14
2.1.6.1. Развојна плочка Arduino Uno...................................................................14
2.1.6.2. Електронска плочка за пренос на сигнали .............................................15
2.2. Софтвер ....................................................................................................................30
2.2.1. Подвиртуелни инструменти (ПВИ)................................................................31
2.2.2. Дијаграм на главниот код................................................................................39
3. Разлики помеѓу постоечките системи за мешање и АППА .......................................44
4. Заклучок...........................................................................................................................45
5. Додатоци..........................................................................................................................46
5.1. Пресметка на моќности – MATLAB......................................................................46
6. Библиографија и користени програми..........................................................................48
3
Содржина на слики
2.1 Механички компоненти на мешалката ............................................................................6
2.2 Температурна зависност на отпорот на ТО...................................................................11
2.3 Механизам за следење на брзина на вртење .................................................................12
2.4 Arduino Uno развојна плочка ..........................................................................................14
2.5 Заменска шема за DC мотор ...........................................................................................16
2.6 Електронско коло за контролирање на DC-мотор........................................................17
2.7 Eлектрично коло на мотор: транзистор исклучен ........................................................17
2.8 Електрично коло на мотор: транзистор вклучен ..........................................................17
2.9 Импулсно ширинска модуладија и фактор на исполнетост ........................................19
2.10 Електрично коло за термоотпорник – Витстонов мост и ДОЗ..................................20
2.11 Елекронско коло за мерење температура при 0°𝐶 (симулација Multisim)...............22
2.12 Елекронско коло за мерење температура при 120°𝐶 (симулација Multisim)...........22
2.13 Електонско коло за мерење на јачина на електрична струја .....................................24
2.14 Електронско коло за контрола на сирена ....................................................................26
2.15 Електронско коло за отчитување индуктивно сетило................................................26
2.16 Електронско коло за контрола на LED ........................................................................27
2.17 Електронско коло за отчитување на копче..................................................................27
2.18 Шема на електронската плочка за пренос на сигнали во Altiun Designer................28
2.19 Просторна поставеност и поврзување на електронските елементи на плочката за
пренос на сигнали во Altium Designer..................................................................................28
2.20 Плочка за пренос на сигнали (размер 1:1)...................................................................29
2.21 Испечатена плочка за пренос на сигнали ....................................................................29
2.22 Завршена плочка за пренос на сигнали........................................................................29
2.23 ПВИ „razlika.vi“..............................................................................................................31
2.24 ПВИ „LED.vi“.................................................................................................................31
2.25 ПВИ „allLED.vi“.............................................................................................................31
2.26 ПВИ „digChit.vi“ ............................................................................................................32
2.28 ПВИ „sirena.vi“...............................................................................................................32
2.27 ПВИ „chitKop.vi“............................................................................................................32
2.29 ПВИ „motor.vi“...............................................................................................................32
2.30 ПВИ „brzinoMetar.vi“.....................................................................................................32
2.31 ПВИ „Тermometar.vi“.....................................................................................................32
4
2.32 ПВИ „Tarifa.vi“...............................................................................................................33
2.33 ПВИ „Multimer.vi“ .........................................................................................................33
2.34 ПВИ „MS.vi“...................................................................................................................33
2.35 ПВИ „Programator.vi“ ....................................................................................................33
2.36 Управување со машината на состојби .........................................................................34
2.37 Дифолт програматорска матрица .................................................................................34
2.38 ПВИ „driverM.vi“ ...........................................................................................................35
2.39 ПВИ „ GrafSimBrz.vi “...................................................................................................35
2.40 Контролна табла на програмата во LabVIEW.............................................................37
2.41 Програмски дијаграм во LabVIEW ..............................................................................38
2.42 Грешка при воспоставување комуникација со Arduino-то - Дијаграм .....................39
2.43 Дијаграм на код за АРР .................................................................................................40
2.45 Дијаграм на код за КРАЈ ...............................................................................................41
2.44 Дијаграм на код за РРР..................................................................................................41
Содржина на табели
Табела 2.1 Измерени отпорности на ТО при различни температури ...............................11
Табела 2.2 Технички спецификации на Arduino Uno .........................................................14
5
1. Вовед
Потребата за зголемување на конкурентноста на пазарот, ограниченоста на ресурсите,
како и зголемувањето на побарувачката за добра и за услуги изнудува изнаоѓање на сѐ
поефикасни, поквалитетни, а воедно и на сѐ побрзи начини за остварување на крајниот
продукт. Поради тоа, денес многу технолошки процеси, но и секојдневни работи, од
перење облека, па сѐ до производство на автомобили – во себе содржат одреден степен
на автоматизација. Согласно потребите и комплексноста на истите во себе содржат
SCADA-системи изработени специјално за таа намена.
Платформата за програмирање LabVIEW значително го олеснува начинот на изработка
на програми и овозможува дури и инженерите со основни познавања на принципите на
програмирање да можат да изработат солидни, сигурни и доверливи програми, меѓу кои
и SCADA-системи, за најразлични намени.
Последниве неколку години во Македонија се зголеми интересот за користење на
електрични мотори за вртење на машини за мелење на потребните состојки при правење
зимници или за мешање на смесата за време на приготвувањето. Повеќето вакви системи
функционираат со рачно вклучување на моторот на напојување и можност за промена
на брзината на вртење преку потенциометар што бара постојано присуство на човек кој
ќе ја нагодува брзината.
Во оваа дипломска работа, главна цел ќе биде прикажувањето на начинот на изработка
на еден SCADA-систем во LabVIEW и истото ќе биде спакувано во приказната
„Автоматизација на процес приготвување Ајвар“ (АППА).
За таа цел, изработен беше прототип на машина за мешање Ајвар, којашто има можност
сама да ја контролира брзината на вртење според температурата, да дава звучни сигнали
во случај температурата да се искачи над одредена критична вредност и сето ова да го
комуницира со компјутер на кој се следи целиот овој процес.
6
2. Автоматизација на процесот приготвување Ајвар (АППА)
Машината има хардверски и софтверски дел. Хардверскиот дел се состои од мешалка,
DC-мотор, температурно и индуктивно сетило, електронска плочка за пренос на
сигнали, Arduino Uno развојна плочка и напојување.
2.1. Хардвер
2.1.1. Механички дел
Механичкиот дел, мешалката, се состои од:
1. Метална конструкција за прицврстување и стабилизација
2. Метална цевка за температурно сетило
3. Дрвени двојни перки
4. Ротирачка метална оска за перки
Предвидено е мешалката да работи во сад за пржење Ајвар, шерпа, со просечна големина
и да има двојни перки закосени под агол од 45ᵒ. Димензиите на садот и перките се дадени
подолу:
(1)
(2)
(3)
(4)
2.1 Механички компоненти на мешалката
7
Дијаметар на сад: 𝐷𝑠 = 52 𝑐𝑚 Висина на перка: ℎ 𝑝 = 2 𝑐𝑚
Висина на сад: 𝐻𝑠 = 18 𝑐𝑚 Маса на перки: 𝑚 𝑝 = 0,4 𝑘𝑔
Должина на перки: 𝑙 𝑝 = 26 𝑐𝑚 Агол на перка: 𝛼 𝑝 = 45°
Ширина на перки: 𝑤 𝑝 = 5,5 𝑐𝑚 Број на перки: 𝑛 𝑝 = 2
2.1.2. Димензионирање на електричен мотор
Пред да се започне со димензионирање на електронските компоненти, потребно е да се
има податок за потребната механичка моќност за мешалката да може да врти со
посакувана брзина. За приближно да се дојде до таа вредност неопходно е да се извршат
одредени теоретски пресметки на сили што би се спротивставувале на движењето на
перките на мешалката.
Ајварот по природа е многу хетерогена смеса, па пресметките би биле мошне
комплицирани во случај да се земат предвид сите негови карактеристики. Затоа, предвид
се зема само влијанието на тежина на Ајварот врз перките што доведува до поголемо
отстапување на пресметаната од вистинската вредност за механичката моќност т.е.
пресметковно ќе се добие помала вредност од вистинската.
Моторот во секое време треба да обезбеди механичка моќност за да овозможи вртење на
перките со максимална брзина, при што треба да ги совлада и вртливиот момент
предизвикан од тежината на ајварот врз перките, инерцијалниот момент на истите, но и
да компензира за загубите на енергија во преносниот систем. Сите овие параметри се
земени предвид при пресметка на вредноста за потребна механичка моќност што ќе се
искористи како ориентир за избор на мотор.
Мешалката е предвидена да работи со максимална брзина на вртење 𝜔 = 30 𝑣𝑟𝑡/𝑚𝑖𝑛 =
𝜋 𝑟𝑎𝑑/𝑠 и способност од мирување истата да ја постигне во рок од 1 s. Ова значи дека
ќе се јави максимално аголно забрзување 𝛼 𝑏𝑟𝑧 = 𝜋 𝑟𝑎𝑑/𝑠2
.
Тежината на ајварот има најголем удел во вртливиот момент на силите што влијаат
спротивно движењето на мешалката. Со претпоставка дека врз перката делува со сила
само делот од смесата што е над неа, тој се разгледува како цврсто тело со димензии на
основата (должина и ширина) еднакви на хоризонталната проекција на перката и висина
еднаква на максималната висината до која може да се исполни садот (5/6 од висината на
садот).
8
За пресметка на силата со која делува смесата врз перките се тргнува од Вториот Њутнов
Закон, во кој е земено 𝑔 = 9,91 𝑚/𝑠2
:
Елементарната сила 𝑑𝐹 предизвикана од елементарна маса на смеса 𝑑𝑚 𝑎 според
релацијата (2.1) е:
Елементарниот вртлив момент што го предизвикува силата 𝑑𝐹 на растојание 𝑟 од оската
се пресметува со:
Каде што: Висина на исполнетост: ℎ 𝑠 =
5
6
𝐻𝑠 = 15 𝑐𝑚 = 0,15 𝑚
Густина на ајвар: 𝜌 𝑎
Со замена на (2.2) во (2.3) и интегрирајќи од двете страни, се добива конечниот израз за
пресметка на вкупниот вртлив момент предизвикан од ајварот.
Во релацијата (2.5) познати се сите параметри освен густината на ајварот. Истата е
добиена по експериментален пат преку мерење на масата и волуменот на ајварот во една
тегла. Измерени се следните параметри:
Маса на празна тегла: 𝑚 𝑡 = 0.375 𝑘𝑔
Маса на тегла полна ајвар: 𝑚 𝑡+𝑎 = 1.033 𝑘𝑔
Волумен на вода во тегла: 𝑉𝑣 = 650 𝑚𝑙 = 650 ∗ 10−6
𝑚3
Па, густината на ајварот се пресметува:
Конечно со замена на вредностите за сите параметри во (2.5) се добива вредноста за
вртливиот момент предизвикан од ајварот и изнесува 𝜏 𝑎 = 2,7267 𝑁𝑚.
Аголното забрзување исходи со појава на инерцијални сили врз перките што се
спротивставуваат на промената на движењето и создаваат контра вртлив момент.
𝐹 = 𝑎 ∗ 𝑚 = 𝑔 ∗ 𝑚 𝑎 [𝑁] (2.1)
𝑑𝐹 = 𝑔 𝑑𝑚 𝑎 = 𝑔 𝜌 𝑎 𝑉𝑎 = 𝑔 𝜌 𝑎 𝑛 𝑝 ℎ 𝑠 𝑤 𝑝 cos 𝛼 𝑝 𝑑𝑟 [𝑁] (2.2)
𝑑𝜏 𝑎 = 𝑟 𝑑𝐹 (2.3)
𝜏 𝑎 = ∫ 𝑔 𝜌 𝑎 𝑛 𝑝 ℎ 𝑠 𝑤 𝑝 cos 𝛼 𝑝 𝑟 𝑑𝑟
𝑙 𝑝
0
[𝑁𝑚] (2.4)
𝜏 𝑎 = 𝑔 𝜌 𝑎 𝑛 𝑝 ℎ 𝑠 𝑤 𝑝 cos 𝛼 𝑝
𝑙 𝑝
2
2
[𝑁𝑚] (2.5)
𝜌 𝑎 =
𝑚 𝑡+𝑎 − 𝑚 𝑡
𝑉𝑣
=
1.033 − 0.375
650 ∗ 10−6
≈ 1012
𝑘𝑔
𝑚3
(2.6)
9
Вртливиот момент преку моментот на инерција на перките и аголното забрзување се
добива со формулата:
За пресметка на моментот на инерција важна е геометриската распределеност на масата
од оската. Перките се поставени радијално, т.е. со нивната должина во насока на
радиусот, па поради тоа важи релацијата (2.8) [1]:
Се претпоставува дека перките се изработени од материјали со иста густина и густината
се пресметува:
Масата на перките може да се изрази како функција од радиусот:
па, единечната маса што се наоѓа на должина 𝑑𝑟 ќе изнесува:
Со замена на (2.12) во (2.8) се добива:
Знаејќи го моментот на инерција и максималното потребно аголно забрзување преку
релацијата (2.7) ќе се добие вредноста на вртливиот момент што се појавува поради
инерцијални сили 𝜏𝑖𝑛 = 24,13 ∗ 10−3
𝑁𝑚, што е помал од вртливиот момент
предизвикан од тежината на Ајварот за четири редни величини.
За мешалката да може да врти, моторот треба да обезбеди вртлив момент поголем од
збирот на вртливите моменти пресметани погоре.
Прототипот е изработен така што моторот директно е поврзан на оската на перките, со
што загубите во преносен систем се релативно мали, па претпоставена е вредност за
коефициент на полезно дејство на преносниот систем 𝑘 𝑚𝑝𝑟 = 0,95.
𝜏𝑖𝑛 = 𝐼 𝛼 𝑏𝑟𝑧 [𝑁𝑚] (2.7)
𝐼 = ∫ 𝑟2
𝑑𝑚
𝑚 𝑝
[𝑘𝑔/𝑚2] (2.8)
𝜌 𝑝 =
𝑚 𝑝
𝑉𝑝
=
𝑚 𝑝
𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 𝑙 𝑝
= 704,7 𝑘𝑔/𝑚3
(2.9)
𝑚(𝑟) = 𝜌 𝑝 𝑉𝑝 = 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗ 𝑟 [𝑘𝑔] (2.10)
𝑚 𝑝 = 𝑚(𝑙 𝑝) = 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 𝑙 𝑝 [𝑘𝑔] (2.11)
𝑑𝑚 = 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗ 𝑑𝑟 [𝑘𝑔] (2.12)
𝐼 = ∫ 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗ 𝑟2
𝑑𝑟
𝑙 𝑝
0
= 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗
𝑙 𝑝
3
3
= 7,68 ∗ 10−3
𝑘𝑔/𝑚2 (2.13)
10
Функционалната зависност на моќноста од вртливиот момент и аголната брзина е дадена
со следната релација:
Каде што 𝜏 𝑠 = 𝜏 𝑎 + 𝜏𝑖𝑛.
Конечната вредност за механичката моќност што моторот треба да ја достави со
уважување на загубите во пренос се пресметува со:
Максималната електрична моќност што моторот ја повлекува од мрежа се пресметува
претпоставувајќи дека работи со најлош коефициент на полезно дејство 𝜂 𝑚 = 0,75.
Согласно овие вредности избран е DC-мотор со номинална моќност од 15 W и работен
номинален напон од 12 V.
Сите пресметки за овој дел се извршени преку MATLAB и кодот е ставен во додаток 1.
Моторот беше пуштен во работа да погонува мешалка за ајвар во сад со исти димензии
како оние земени при теоретските пресметки и беше измерено дека од мрежа влече
струја од 3,01 A при 6V напојување за да оствари брзина на вртење од 30 vrt/min. Тоа
значи дека влече електрична моќност од 18,06 W што отстапува 21% од ориентациската
вредност добиена преку пресметки.
𝑃𝑠 = 𝜏 𝑠 ∗ 𝜔 [𝑊] (2.14)
𝑃 𝑚𝑒ℎ =
𝑃𝑠
𝑘 𝑚𝑝𝑟
[𝑊] = 11,11 𝑊 (2.15)
𝑃𝑒𝑙 =
𝑃 𝑚𝑒ℎ
𝜂 𝑚
= 14,25 𝑊 (2.16)
11
2.1.3. Температурно сетило
За мерење на температура се користи сонда ST1K со температурно сетило тип KTY81-
121.
Во сад со вода на 0 𝐶° поставена беше сондата заедно со термометар. Садот постепено
беше загреван и се вршеше мерење на отпорноста на термоотпорникот со инструмент.
Измерените податоци се прикажани во Табела 2.1, а на слика 2.2 е прикажана зависноста
на отпорот од температурата.
Податоците се обработија во MATLAB, при што се доби полиномната апроксимација на
зависноста на температурата од отпорноста, но и на отпорноста од температурата. Кодот
е во продолжение:
n = 2;
T = [0 19 26 31 39 49 54 63 70 77 80 86 93];
R = [815 943 1000 1041 1105 1190 1243 1318 1396 1454 1492 1555 1617];
p1 = polyfit(T,R,n); p2 = polyfit(R,T,n);
Како решение се добија изразите (2.17) и (2.18):
𝑇(𝑅) = −32 10−6
𝑅2
+ 191,68 10−3
𝑅 − 133,93 [𝐶°] (2.17)
𝑅(𝑇) = 21 ∗ 10−3
𝑇2
+ 6,734 𝑇 + 811,45 [Ω] (2.18)
Табела 2.1 Измерени
отпорности на ТО при
различни температури
темп. ᵒС ТО1 [Ω]
0 815
19 943
26 1000
31 1041
39 1105
49 1190
54 1243
63 1318
70 1396
77 1454
80 1492
86 1555
93 1617
2.2 Температурна зависност на отпорот на ТО
12
2.1.4. Индуктивно сетило и принцип на мерење брзина
Една од можностите на овој
систем е контрола на
брзината на вртење. За таа
цел, потребно е постојано да
се добива информација за
тековната брзина, по што
системот ќе одлучи дали да ја
забрза, успори или да не ја
промени брзината на вртење
на мешалката.
Има повеќе начини на кои може да се дојде до овој податок и повеќето се сведуваат на
мерење на време помеѓу две случувања (комутација, добивање импулсен сигнал,
достигнување одредена состојба и сл.). Во овој труд ќе се користи индуктивно сетило и
ќе се мери поминатото време помеѓу две последователни истовидни комутации.
Освен времето за пресметка на брзината на вртење потребно е да се знае колку изнесува
аголното поместување за да настане, во случајов, нова комутација на индуктивното
сетило. Брзината се пресметува со формулата:
Каде што: аголно поместување на перките меѓу две комутации: – Δ𝜃 [𝑟𝑎𝑑]
измерено време меѓу две комутации: – t [s]
Треба да се спомене дека минималното време потребно за системот сигурно да добие
ажурирана вредност за тековна брзина изнесува:
Каде што: Минимално потребно време за ажурирање: – 𝑡 [𝑠]
Реална тековна брзина на вртење: – 𝜔 𝑡𝑒𝑘 [rad/s]
Од (2.20) се гледа дека колку помала е вредноста за Δ𝜃, толку системот побрзо ќе добие
ажурирана вредност за брзината и побрзо ќе се прилагоди согласно тековната состојба.
𝜔 =
Δ𝜃
𝑡
[𝑟𝑎𝑑/𝑠] (2.19)
𝑡 𝑚𝑖𝑛 =
Δ𝜃
𝜔 𝑡𝑒𝑘
(2.20)
2.3 Механизам за следење на брзина на вртење
13
Во случајов со мешалката механизмот за следење на вртењето е изработен така што на
оската на која се прицврстени перките заварен е дел од навртка што претходно
дијаметрално е пресечена на два дела.
Во идеален случај кога навртката би била пресечена на две идеални половини при
константна брзина на вртење индуктивното сетило би било во позиција вклучено
подеднакво долго колку што би било во позиција исклучено, па така вредноста за Δ𝜃 би
изнесувала 𝜋 𝑟𝑎𝑑.
Брзината на вртење обично се изразува во единица vrt/min, па така за пресметка на истата
се изведува следната формула:
Индуктивното сетило е од типот PRD12-8DP, PNP и функционира на работен напон од
12 V. Има 3 краеви од кои двa се напојување, а третиот е НО прекинувач.
2.1.5. Сирена
За давање на звучни сигнали при одредени критични ситуации се користи сирена што
функционира на работен напон од 12 V.
𝜔(𝑡) =
Δ𝜃
𝑡
=
𝜋 [𝑟𝑎𝑑]
𝑡 [𝑠]
∗
1 [𝑣𝑟𝑡]
2𝜋 [𝑟𝑎𝑑]
∗
60[𝑠]
1[min]
=
30
𝑡
[𝑣𝑟𝑡/𝑚𝑖𝑛] (2.21)
𝜔(𝑡[𝑠]) =
30
𝑡[𝑠]
[𝑣𝑟𝑡/𝑚𝑖𝑛] (2.22)
14
2.1.6. Електронски дел
Електронскиот дел се состои од две електронски плочки:
- Развојна плочка Arduino Uno
- Електронска плочка за пренос на сигнали
2.1.6.1. Развојна плочка Arduino Uno
Arduino Uno (слика 2.4) е развојна плочка базирана
на ATmega328P микро-контролер. Плочката има 6
аналогни влезови, 14 дигитални влезно-излезни
пинови од кои 6 способни за ИШМ (PWM outputs),
16 MHz кварцен кристал, USB конекција, напонски
приклучок, копче за ресетирање и ICSP header. Uno
развојната плочка е прва серија од Arduino USB
развојните плочки и претставува референтен
примерок за плантформата Arduino.
Во Табела 2.2 [2] се дадени спецификации за плочката:
Сигналите на дигиталните пинови со можност за ИШМ на Arduino Uno се со
фреквенција од 490 Hz, освен на дигиталните пинови 5 и 6 се на фреквенција од 980 Hz
[3]. Согласно ова, периодот на ИШМ-сигналот на пиновите 5 и 6 изнесува 𝑇𝑝𝑖𝑛5,6 =
1
980
=
1,02 𝑚𝑠, додека на останатите пинови 𝑇𝑝𝑖𝑛 =
1
490
= 2,4 𝑚𝑠.
Arduino Uno има 6-канален, 10-битен AD-конвертор што овозможува мапирање на
амплитудите на аналогните сигнали со броеви од 0 до 1023 (=210
− 1). Земајќи предвид
дека на влезовите не смее да се донесе напон вон интервалот 0-5 V, резолуцијата на
мерење аналоген напонски сигнал на Arduino-то изнесува
5
210
= 4,9 𝑚𝑉.
2.4 Arduino Uno развојна плочка
Работен напон 5V
Препорачано напојување 7-12V
Граници на напојување 6-20V
Дигитални влезно-излезни пинови 14 (од кои 6 со ИШМможност)
ШИМдигитални пинови (PWM) 6
Аналогни влезови 6
Макс. DC струја за 5V-пин 20 mA
Макс. DC струја за 3,3V-пин 50 mA
Clock Speed 16 MHz
Табела 2.2 Технички спецификации на Arduino Uno
15
2.1.6.2. Електронска плочка за пренос на сигнали
Во подглавите 2.1.2 – 2.1.5 беа дадени карактеристики на сирената, индуктивното
сетило, електричниот DC-мотор и на истите им е потребен работен напон од 12 V, а од
подглава 2.1.6.1 во карактеристиките на Arduino Uno развојната плочка се гледа дека
сите нејзини пинови работат на напони од 0 V до 5 V. Ова е една од причините зошто е
потребен посреден медиум кој ќе врши прилагодување на напоните на сигналите што
патуваат од Arduino-то до периферните електрични уреди и обратно.
Во текстот подолу ќе бидат објаснети сите електрични кола што ги содржи
електронската плочка за пренос на сигнали.
2.1.6.2.1. Електрично коло за контрола на DC-мотор
Во глава 2.1.2 експериментално e покажано дека максималната електрична моќност што
DC-моторот ќе ја влече од мрежа изнесува околу 18 W. За димензионирање на
елементите на електричното коло за контрола на моторот ќе се користи вредност од
𝑃𝑒𝑙 = 20 𝑊 за потребната електрична моќност.
Влезната отпорност на електричниот мотор е измерена и изнесува 𝑅 𝑚 = 1,5 Ω.
Моторот работи при константно напојување од 𝑉𝑁 = 12 𝑉, па со овие податоци се
пресметува струјата што ја влече моторот при максимално оптоварување:
Во општ случај, струјата што протекува низ DC-мотор може да се пресмета со следнава
формула (види слика 2.5) [4]:
Каде што: индуцирана електромоторна сила: 𝐸0
струјата што протекува низ моторот: 𝐼 𝑚
Индуциранта електромоторна сила правопропорционално зависи од брзината на вртење
на моторот и тоа:
𝐼 𝑛 =
𝑃𝑒𝑙
𝑉𝑁
=
20 𝑊
12 𝑉
= 1,67 𝐴 (2.23)
𝐼 𝑚 =
𝑉𝑁 − 𝐸0
𝑅 𝑚
(2.24)
𝐸0 =
𝑍 𝜔 Φ
60
(2.25)
16
Каде што: број на навивки: Z
Флукс по навивка: Φ
Брзина на вртење: 𝜔 [vrt/min]
При стартување на електричниот мотор неговата првична брзина изнесува 0 vrt/min, што
значи дека и индуцираната електромоторна сила е 𝐸0 = 0 𝑉. Заменувајќи ја оваа
вредност во формулата (2.24) се добива вредноста на струјата што протекува низ
електричниот мотор при стартување:
По стартувањето на моторот со зголемувањето на брзината на вртење, вредноста на Е0
ќе порасне, а со тоа и струјата Im ќе се намали.
Од овие пресметки следи заклучокот дека електронските елементи во колото за контрола
на моторот треба да се димензионираат така што ќе можат да издржат стабилна струја
од 1,7 А и краткотрајна струја од 8 А.
Контролата на брзината на вртење на DC моторот ќе се извршува преку ИШМ (PWM).
Дигиталните излези на Arduino-то не можат самостојно да ја вршат оваа регулација,
зашто во игра се релативно големи струи и напони, па за да се премине преку оваа пречка
ќе бидат искористени n-канален MOSFET IRF640 и npn-транзистор тип 2N2222 како што
е прикажано на шемата на слика 2.6
Кога пинот на Arduino-то ќе биде на потенцијал 0 V, транзисторот ќе се исклучи, па
напонот 𝑉𝐺𝑆 = 𝑉𝐶𝐶 = 12 𝑉 (слика 2.7). Бидејќи 𝑉𝐺𝑆 > 𝑉𝑇𝐻 = 2 𝑉, MOSFET-от ќе вклучи
и низ него ќе може да тече струја до 18 A, што е повеќе од струјата што ја влече моторот
𝐼 𝑚 =
𝑉𝑁 − 0
𝑅 𝑚
=
12
1,5
= 8 𝐴 (2.26)
2.5 Заменска шема за DC мотор
17
при вклучување. Според ова, моторот ќе биде вклучен кога од Arduino-то ќе се донесе
потенцијал 0 V.
Кога од Arduino-то ќе се донесе напон од 5 V на базата на транзисторот (слика 2.8), тој
ќе прејде во заситување бидејќи 5 𝑉 > 𝑉𝐵𝐸,𝑠𝑎𝑡 = 1,3𝑉1. Во овој случај, напонот 𝑉𝐺𝑆 =
𝑉𝐶𝐸,𝑆𝐴𝑇 = 0,4 𝑉2 и е помал од напонот на праг на MOSFET-от 𝑉𝑇𝐻 = 2 𝑉, што значи дека
истиот нема да проведува струја. Според ова, со носење на 5 V, на базата на транзисторот
од Arduino-то, моторот успешно ќе биде исклучен.
Од оваа анализа се гледа дека моторот успешно може да биде контролиран користејќи
MOSFET IRF640 и транзистор 2N2222. Останува уште да се нагодат отпорите на
отпорниците со што ќе се обезбеди сигурно исклучување/вклучување на овие елементи,
поточно на транзисторот.
1
Каталог за транзистор 2N2222
2
Каталог за транзистор 2N2222, за Ic = 150 mA и Ib = 15 mA
2.6 Електронско коло за контролирање на DC-мотор
2.7 Eлектрично коло на мотор: транзистор
исклучен
2.8 Електрично коло на мотор: транзистор
вклучен
18
Падот на напон на отпорникот 𝑅 𝑚1 изнесува:
Oттука се изразува 𝑅 𝑚1:
За да сме сигурни дека транзисторот ќе прејде во заситување, земаме вредност за Ib
трипати поголема [5]:
Струјата Ib се изразува преку Ic и струјното засилување hFE кое се отчитува од каталог.
Во анализата погоре, земена беше вредност за струја 𝐼 𝐶 = 150 𝑚𝐴, па струјното
засилување ℎ 𝐹𝐸 = 100. Со цел струјата IC да се ограничи на оваа вредност, се избира
отпор за Rm3 според изразот:
Струјата Ib се изразува преку Ic преку струјното засилување:
Со замена на (2.31) во (2.29), се добива:
Вредноста на отпорноста Rm2 се зема да биде 10 kΩ и служи во случај точката Vi да
остане да „виси“, на неа да се донесе напон од 0 V.
Со ова завршува димензионирањето на елементите на електронското коло за контрола
на моторот. Не треба да се заборави дека моторот е вклучен кога од Arduino се носи
напон од 0 V на базата на транзисторот, а се исклучува при напон од 5 V.
ИШМ (PWM) е техника која користи дигитален извор на сигнали за да добие аналоген
сигнал. Преку периодично вклучување на дигиталниот извор на сигнали се симулира
правоаголен бран со времетраење од 𝑡 = 𝑘 𝑇/100. k се нарекува фактор на исполнетост,
ФИ, (анг. Duty Cycle) и е зададен процент од периодот Т во кој амплитудата на сигналот,
во случајов, е 𝑈 𝑚𝑎𝑥
𝑠
= 5 𝑉. Во останатиот дел од периодот Т сигналот е исклучен т.е.
𝑉𝑖 = 𝐼 𝑏 𝑅 𝑚1 + 𝑉𝐵𝐸,𝑂𝑁 (2.27)
𝑅 𝑚1 =
𝑉𝑖 − 𝑉𝐵𝐸,𝑂𝑁
𝐼 𝑏
(2.28)
𝑅 𝑚1 =
𝑉𝑖 − 𝑉𝐵𝐸,𝑂𝑁
3 𝐼 𝑏
(2.29)
𝑅 𝑚3 =
𝑉𝐶𝐶 − 𝑉𝐶𝐸,𝑆𝐴𝑇
𝐼 𝐶
=
12 − 0,4
0,150
= 77, 3̅ ≈ 78 Ω (2.30)
𝐼 𝑏 =
𝐼𝑐
ℎ 𝐹𝐸
=
150
100
= 1,5 𝑚𝐴 (2.31)
𝑅 𝑚1 =
5 − 0,7
3 ∗ 1,5 ∗ 10−3
= 955,6 Ω ≈ 1 kΩ (2.32)
19
амплитудата изнесува 0 V. Ваквото вклучување и исклучување на сигналот е прикажано
графички на слика 2.9.
Периодот Т зависи од фреквенцијата на сигналот на ИШМ. За контрола на моторот во
овој проект се користи дигиталниот пин 11 со фреквенција од 490 Hz (види глава 2.1.6.1),
па разгледуваниот период Т ќе изнесува:
𝑇 =
1
490
= 2,04 𝑚𝑠 (2.33)
2.1.6.2.2. Електрично коло за температурното сетило
Карактеристиките на температурното сетило се изложени во глава 2.1.3. Предвидено е
мешалката да работи на температури во интервалот од 0°𝐶 до 120°𝐶, па согласно
релацијата (2.18) пресметани се граничните вредности на отпорноста на
терммоотпорникот при овие температури.
Со цел вредноста на напонскиот сигнал Vt0 што ќе се донесе до еден аналоген влез на
Arduino-то да биде во граници од 0 V до 5 V за да се обезбеди мерење на температура со
поголема резолуција – се користи Витстонов мост и диференцијален операциски
𝑅(0) = 𝑅 𝑇
𝑚𝑖𝑛
= 811 Ω 𝑅(120) = 𝑅 𝑇
𝑚𝑎𝑥
= 1930 Ω (2.34)
2.9 Импулсно ширинска модуладија и фактор на исполнетост
20
засилувач (ДОЗ) како што е прикажано во шемата на слика 2.10. Накусо, стратегијата за
избор на отпорници е следна:
Преку изборот на вредностите на отпорниците кај Витстоновиот мост треба да се сведе
минималната разлика 𝑉1 − 𝑉2, што се појавува при температура 0°𝐶, на вредност што
поблиска до 0+
𝑉 и при тоа да се внимава струјата што ќе протече низ мостот да не биде
поголема од максимално дозволената за еден пин – 20 mA. Откако ќе се одлучи за
вредностите на отпорите кај Витстоновиот мост, се пристапува кон избор на елементите
на диференцијалниот операциски засилувач. Во овој дел се гледа засилувањето на
сигналот дефинирано со односот
𝑅 𝑏5
𝑅 𝑏4
, да биде такво што при максимална разлика на
напоните 𝑉1 − 𝑉2, што ќе се јави при 120°𝐶, на излез да се добива вредност што поблиска
до 5−
𝑉. Сето ова преку математички пресметки е изведено подолу.
Се тргнува од напонските ограничувања на 𝑉𝑡0 при напојување на мостот 𝑉𝑐𝑐 = 5 𝑉.
Вредностите за напоните 𝑉1 и 𝑉2 преку напонски делител се изразуваат како:
Се заменуваат изразите под (2.38) во (2.37) и се добива:
𝑉0 = −
𝑅 𝑏5
𝑅 𝑏4
(𝑉2 − 𝑉1) (2.35)
𝑉0 ∈ [0, 5] => 𝑉0 ≥ 0 (2.36)
𝑉2 ≤ 𝑉1 (2.37)
𝑉1(𝑅 𝑇) = 𝑉𝐶𝐶
𝑅 𝑇
𝑅 𝑇 + 𝑅 𝑏1
; 𝑉2 = 𝑉𝐶𝐶
𝑅 𝑏3
𝑅 𝑏3 + 𝑅 𝑏2
; (2.38)
2.10 Електрично коло за термоотпорник – Витстонов
мост и ДОЗ
V1
V2
21
(2.39) се дели со 𝑉𝑐 𝑐 од двете страни и се дига на степен -1. Со тоа:
Се избира вредност за 𝑅 𝑏1 така што напонот V1 ќе тежнее да биде половина од VCC. Што
значи дека:
Па се зема најблиската стандардна вредност до пресметаната во (2.42), а истовремено и
𝑅 𝑏2 = 𝑅 𝑏1:
Земајќи ја предвид релацијата (2.41), се добива вредноста за 𝑅 𝑏3:
Па за конечна вредност е земено 𝑅 𝑏3 = 0,8 𝑘Ω.
Заменувајќи ги вредностите на избраните отпорници 𝑅 𝑏1, 𝑅 𝑏2, 𝑅 𝑏3 и 𝑅 𝑇
𝑚𝑖𝑛
/𝑅 𝑇
𝑚𝑎𝑥
во
релаците (2.38) се добиваат вредности за напоните:
Разликата помеѓу напоните 𝑉1 и 𝑉2 зависи од тековната отпорнотст на термоотпорникот
и се движи во интервал (𝑉1
𝑚𝑖𝑛
− 𝑉2, 𝑉1
𝑚𝑎𝑥
− 𝑉2).
Вредностите за отпорниците 𝑅 𝑏4 и 𝑅 𝑏5 се избираат така што напонот 𝑉0 да биде што
поблиску 5−
V. Се заменува максималната вредност за Δ𝑉12 во (2.35) и се добива:
𝑉𝐶𝐶
𝑅 𝑏3
𝑅 𝑏3 + 𝑅 𝑏2
≤ 𝑉𝐶𝐶
𝑅 𝑇
𝑅 𝑇 + 𝑅 𝑏1
(2.39)
1 +
𝑅 𝑏2
𝑅 𝑏3
≥ 1 +
𝑅 𝑏1
𝑅 𝑇
(2.40)
𝑅 𝑇 ≥ 𝑅 𝑇
𝑚𝑖𝑛
≥
𝑅 𝑏1
𝑅 𝑏2
𝑅 𝑏3 (2.41)
𝑅 𝑏1 =
𝑅(0) + 𝑅(120)
2
=
811 + 1930
2
= 1370,5 Ω (2.42)
𝑅 𝑏1 = 1,4 𝑘Ω; 𝑅 𝑏2 = 1,4 𝑘Ω (2.43)
𝑅 𝑏3 ≤ 811 Ω (2.44)
𝑉1
𝑚𝑎𝑥
= 𝑉1(𝑅 𝑇
𝑚𝑎𝑥) = 5
1930
1930 + 1400
= 2,9 𝑉 (2.45)
𝑉1
𝑚𝑖𝑛
= 𝑉1(𝑅 𝑇
𝑚𝑖𝑛
) = 5
811
811 + 1400
= 1,83 𝑉 (2.46)
𝑉2 = 5
800
800 + 1400
= 1,82 𝑉 (2.47)
Δ𝑉12 = 𝑉1(𝑅 𝑇) − 𝑉2 (2.48)
Δ𝑉12 ∈ (0,01; 1,08) [𝑉] (2.49)
22
Електронското коло со вака пресметаните вредности за елементите и избран операциски
засилувач LM358P, беше симулирано во NI Multisim (види слики 2.11 и 2.12).
𝑉0
𝑚𝑎𝑥
≥
𝑅 𝑏5
𝑅 𝑏4
Δ𝑉12
𝑚𝑎𝑥 (2.50)
𝑅 𝑏5
𝑅 𝑏4
≤
𝑉0
𝑚𝑎𝑥
Δ𝑉12
𝑚𝑎𝑥 =
5
1,08
= 4,63 (2.51)
𝑅 𝑏4 = 10 𝑘Ω → 𝑅 𝑏5 ≤ 46,3 𝑘Ω (2.52)
𝑅 𝑏5 = 43 𝑘Ω (2.53)
2.11 Елекронско коло за мерење температура при 0°𝐶 (симулација Multisim)
2.12 Елекронско коло за мерење температура при 120°𝐶 (симулација Multisim)
23
Вредноста на отпорникот 𝑅 𝑏5, согласно податоците добиени од симулацијата, е
променета да изнесува 47 𝑘Ω, при што се овозможува поголемо искористување на
мерното подрачје. Сепак вредноста 47 𝑘Ω е поблиску до 46,3 𝑘Ω, теоретски добиениот
максимум, од 43 𝑘Ω, но не премногу висока за да предизвика проблеми за аналогниот
влез на Arduino-то.
Конечните вредности на отпорниците од колото на термоотпорникот се:
𝑅 𝑏1 = 1,4 𝑘Ω, 𝑅 𝑏2 = 1,4 𝑘Ω, 𝑅 𝑏3 = 0,8 𝑘Ω,
𝑅 𝑏4 = 10 𝑘Ω, 𝑅 𝑏5 = 47 𝑘Ω
Функционална зависност на отпорот на термоотпорникот од измерениот напон V0
Од релацијата (2.35) се добива:
Разликата Δ𝑉12 се изразува преку релациите (2.38) и се добива:
Со замена на изразот (2.55) во (2.54) се добива:
На крајот се добива зависност на отпорот на термоотпорникот во функција од напонот
𝑉0 што доаѓа на аналогниот влез на Arduino-то.
Со замена на (2.60) во (2.17) програмски се пресметува тековната температура на
смесата.
𝑉0 = −
𝑅5
𝑅4
(𝑉2 − 𝑉1) =
𝑅5
𝑅4
(𝑉1 − 𝑉2) =
𝑅5
𝑅4
Δ𝑉12 (2.54)
Δ𝑉12 = 𝑉𝐶𝐶 [
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
−
𝑅 𝑇
𝑅 𝑇 + 𝑅 𝑏1
] (2.55)
𝑉0 =
𝑅5
𝑅4
𝑉𝐶𝐶 [
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
−
𝑅 𝑇
𝑅 𝑇 + 𝑅 𝑏1
] (2.56)
[
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
−
𝑉0
𝑉𝐶𝐶
𝑅 𝑏4
𝑅 𝑏5
] (𝑅 𝑇 + 𝑅 𝑏1) − 𝑅 𝑇 = 0 (2.57)
𝑅 𝑏1 [
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
−
𝑅 𝑏4
𝑅 𝑏5
𝑉0
𝑉𝐶𝐶
] + 𝑅 𝑇 [
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
−
𝑅 𝑏4
𝑅 𝑏5
𝑉0
𝑉𝐶𝐶
− 1] = 0 (2.58)
𝑅 𝑏1 [
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
−
𝑅 𝑏4
𝑅 𝑏5
𝑉0
𝑉𝐶𝐶
] = 𝑅 𝑇 [1 +
𝑅 𝑏4
𝑅 𝑏5
𝑉0
𝑉𝐶𝐶
−
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
] (2.59)
𝑅 𝑇(𝑉0) = 𝑅 𝑏1 [
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
−
𝑅 𝑏4
𝑅 𝑏5
𝑉0
𝑉𝐶𝐶
] [1 +
𝑅 𝑏4
𝑅 𝑏5
𝑉0
𝑉𝐶𝐶
−
𝑅 𝑏3
𝑅 𝑏2 + 𝑅 𝑏3
]
−1
(2.60)
24
2.1.6.2.3. Електрично коло за мерење на јачина на електрична струја
Со цел да се добие податок за тековната потрошувачка на моќност од системот, потребно
е да се знае вредноста на јачината на струјата што тече низ колото, како и вредноста на
напојувањето. Потоа тековната моќност се пресметува со:
За напојување се користи стабилен напонски извор од 12 V, така што единствена
непозната величина е јачината на струјата за чие мерење се користи шемата на слика
2.13.
Струјата I поминува низ паралелно врзаните отпорници Rsh и на нив се појавува пад на
напон кој потоа со диференцијален операциски засилувач се засилува. Односот на
отпорниците Rsh2 и Rsh1 се одредува така што при максимално очекуваната струја I, VO
ќе изнесува не повеќе од 5 V.
Најголем потрошувач на електрична енергија во системот е електричниот мотор кој,
според изразот (2.26), при вклучување влече максимална струја од 8 A. Земајќи го ова
предвид, се претпоставува дека низ системот нема да протече струја со поголема јачина
од 12 A и согласно тоа се димензионираат отпорниците кај ДОЗ.
Падот на напон на паралелно поврзаните отпорници се пресметува според Омовиот
закон:
𝑃 = 𝑈 ∗ 𝐼 (2.61)
2.13 Електонско коло за мерење на јачина на електрична струја
25
𝑉12 = 𝐼 ∗
𝑅 𝑠ℎ
2
= 12 ∗
0,1
2
= 0,6 𝑉 (2.62)
Вредноста на напонот VO треба да е помала од 𝑉𝑜
𝑚𝑎𝑥
= 5 𝑉, поради ограничувањата на
пиновите на Arduino-то, и користејќи го изразот (2.35) во кој наместо R1 и R2, се
заменуваат соодветно Rsh1 и Rsh2 се добива:
𝑉0
𝑚𝑎𝑥
≥
𝑅 𝑠ℎ2
𝑅 𝑠ℎ1
𝑉12 (2.63)
𝑉0
𝑚𝑎𝑥
𝑉12
≥
𝑅 𝑠ℎ2
𝑅 𝑠ℎ1
(2.64)
𝑅 𝑠ℎ2 ≤ 𝑅 𝑠ℎ1
𝑉0
𝑚𝑎𝑥
𝑉12
= 𝑅 𝑠ℎ1
5
0,6
= 8, 3̅ ∗ 𝑅 𝑠ℎ1
(2.65)
За 𝑅 𝑠ℎ1 се зема вредност од 10 𝑘Ω и заменувајќи ја во релацијата погоре се добива:
𝑅 𝑠ℎ2 ≤ 83, 3̅ kΩ (2.66)
Па како конечни вредности за отпорниците Rsh1 и Rsh2 се земаат:
𝑅 𝑠ℎ1 = 10𝑘Ω, 𝑅 𝑠ℎ2 = 82 𝑘Ω
Од изразите (2.44) и (2.35) се добива функционалната зависност на струјата I од напонот
VO:
𝐼(𝑉0) =
2 𝑅 𝑠ℎ1
𝑅 𝑠ℎ 𝑅 𝑠ℎ2
∗ 𝑉0 = 2,44 𝑉0 (2.67)
Чувствителноста на мерачот на јачина на електрична енергија изнесува:
𝑠 =
𝑉0
𝐼
=
𝑅 𝑠ℎ 𝑅 𝑠ℎ2
2 𝑅 𝑠ℎ1
= 0,41 𝑉/𝐴 (2.68)
Бидејќи Arduino-то има 10-битен A/D конвертор, вредноста на напонот од 5 V се
преведува во број од 0 до (210
− 1), што значи дека има резолуција од:
𝑟𝑒𝑧𝑉0 =
𝑉0
𝑚𝑎𝑥
210
=
5
1024
= 4,88 𝑚𝑉 (2.69)
Ако од изразот (2.68) се изведе струјата во функција од напонот и наместо напонот се
замени rezVo се добива резолуцијата на мерење на јачина на електрична струја и
изнесува:
𝑟𝑒𝑧𝐼 =
𝑟𝑒𝑧𝑉0
𝑠
=
4,88
0,41 ∗ 103
= 11,9 𝑚𝐴 (2.70)
26
2.1.6.2.4. Електрично коло за контрола на сирена
За потребите на звучна сигнализација избрана е работи на напон од 12 V и повлекува
струја од 150 mA. За контрола на истата искористен е MOSFET IRL640. Шемата е дадена
на слика 2.14.
Отпорникот Rm е pull-down отпорник чија функција е да го одржува потенцијалот на
гејтот од MOSFET-от на 0 V кога од Arduino-то не дава никаков сигнал. Вредноста на
𝑅 𝑚 = 10 𝑘Ω. Отпорникот Rs функционира како заштита на дигиталниот пин од Arduino-
то, во случај на прегорување на MOSFET-от. Вредноста на 𝑅 𝑚 = 1,5 𝑘Ω.
2.1.6.2.5. Електрично коло за отчитување на индуктивното сетило
За потребите на системот за мерење на брзина, користено е индуктивно сетило тип
PRD12-8DP, PNP и е напојувано со 12 V. Во случај до индуктивното сетило да се
приближи метален објект, тоа ќе реагира така што ќе вклучи 12 V на неговиот NO излез,
а кога во близина нема метален објект – NO излезот виси од страната на сетилото. Со
цел, до дигиталниот влез на Arduino-то да се носи сигнал од 0 V и од 5 V, се користи
отпорнички делител како во шемата на слика 2.15.
Вредностите за отпорниците 𝑅𝑖𝑠1 и 𝑅𝑖𝑠2 се добиваат тргнувајќи од напонските
ограничувањата на дигиталниот влез на Arduino-то (2.71), како и фактот што Arduino-то
сигналите со повисока вредност од 3 V ги смета за HIGH [6], па со отпорничкиот делител
треба да се обезбеди при напон на влез од 12 V, вредноста на 𝑉𝑖𝑛 да не биде под 3 V.
𝑉𝑖𝑛 ∈ [0, 5] 𝑉 (2.71)
𝑉𝑖𝑛
𝐻𝐼𝐺𝐻
∈ [3, 5] 𝑉 (2.72)
2.15 Електронско коло за
отчитување индуктивно сетило
2.14 Електронско коло за контрола на сирена
27
Вредноста за 𝑉𝑖𝑛 се пресметува со отпорнички делител, земајќи предвид дека гранката
со отпорниците е напојувана со 𝑉𝐶𝐶 = 12 𝑉 кога сетилото е во позиција вклучено.
Од (2.73) и горните ограничувања од (2.71) се добива:
Се избира вредност за 𝑅𝑖𝑠2 = 22 𝑘Ω и, согласно изразот (2.78), 𝑅𝑖𝑠1 ≥ 30,8 𝑘Ω.
Прва стандардна вредност за отпорници поголема од 30,8 𝑘Ω е 33 𝑘Ω, па конечно се зема
дека 𝑅𝑖𝑠1 = 33 𝑘Ω. Со замена на овие вредности во (2.73) се добива 𝑉𝑖𝑛 = 4,8 𝑉, што е во
интервалот (2.72) и електронското коло е добро димензионирано.
2.1.6.2.6. Електронски кола за контрола на LED и за отчитување состојба на
копчиња
LED-овите се контролираат директно преку соодветните дигитални пинови на Arduino-
то, со тоа што се додава отпорник RLED = 680 Ω сериски на диодата со цел да се
ограничи струјата што протекува низ тоа коло за да не премине вредност од 20 mA. (види
слика 2.16)
𝑉𝑖𝑛 = 𝑉𝐶𝐶
𝑅𝑖𝑠2
𝑅𝑖𝑠1 + 𝑅𝑖𝑠2
(2.73)
5 ≥ 𝑉𝑖𝑛 = 𝑉𝐶𝐶
𝑅𝑖𝑠2
𝑅𝑖𝑠1 + 𝑅𝑖𝑠2
(2.74)
𝑅𝑖𝑠1 + 𝑅𝑖𝑠2
𝑅𝑖𝑠2
≥
𝑉𝐶𝐶
5
(2.75)
𝑅𝑖𝑠1
𝑅𝑖𝑠2
+ 1 ≥
𝑉𝐶𝐶
5
(2.76)
𝑅𝑖𝑠1 ≥ (
𝑉𝐶𝐶
5
− 1) 𝑅𝑖𝑠2 = (
12
5
− 1) 𝑅𝑖𝑠2
(2.77)
𝑅𝑖𝑠1 ≥ 1,4 𝑅𝑖𝑠2
(2.78)
2.16 Електронско коло за
контрола на LED
2.17 Електронско коло за отчитување на копче
28
Копчињата играат улога на прекинувачи во соодветните електронски кола така што, кога
копчето ќе биде притиснато се затвора прекинувачот и на дигиталниот влез на Arduino-
то доаѓа напон од 5 V, додека кога прекинувачот е отворен, т.е. копчето не е притиснато,
на дигиталниот влез преку pull-down отпорникот, 𝑅 𝑘, се носи потенцијал од 0 V. (види
слика 2.17). Вредноста на отпорот на отпорниците 𝑅 𝑘 = 10 𝑘Ω, па струјата што ќе
протече низ колото при притиснато копче изнесува 0,5 mA и е далеку помала од
ограничувањето за пиновите.
2.1.6.2.7. Дизајнирање на електронската плочка за пренос на сигнали во Altium Designer
Сите електрични кола што се дел од
електронската плочка за пренос на сигнали,
шематски се цртаат во Altium Designer. На
слика 2.18 се прикажани конекциите помеѓу
елементите.
Откако шематски се поврзаа сите елементи на
плочката, се продолжува со просторно
распоредување и поврзување на истите.
Дебелината на сите водови беше земено да
изнесува 1 mm, освен на водовите на колото
за контрола на моторот низ кои течат
поголеми струи, па дебелината беше нагодена
2.18 Шема на електронската плочка за пренос на сигнали во Altiun Designer
2.19 Просторна поставеност и
поврзување на електронските
елементи на плочката за пренос на
сигнали во Altium Designer
29
на 2 mm. Минимално дозволеното растојание помеѓу водовите беше нагодено на 0,5 mm
и следејќи ги овие ограничувања шемирана беше плочката за пренос на сигнали (види
слика 2.19). Димензиите на конечната верзија испаднаа 70 mm должина и 72 mm ширина.
Откако ова беше завршено, шемата се испечати на мрсна хартија во размер 1:1 (види
слика 2.20). Потоа, се отсече бакарна плочка на потребните димензии, бакарниот слој
убаво се исчисти и исуши, врз него се постави печатената мрсна хартија и 15-тина
минути се загреваше со електрична пегла на температура од 180°𝐶, доволна за тонерот
од хартијата да се прелепи на бакарот
без да се разлее. Хартијата целосно
беше отстранета со внимавање линиите
на плочката што помалку да се оштетат,
со маркер беа поправени местата на кои
тонерот не се залепил или бил оштетен,
па плочката беше потопена во смеса од
хлороводородна киселина и хидроген.
Откако откриените делови од
бакарниот слој целосно се отстранија од
плочката, истата беше извадена од
растворот, се исплакна, па тонерот се
2.20 Плочка за пренос на сигнали (размер 1:1) 2.21 Испечатена плочка за пренос на сигнали
2.22 Завршена плочка за пренос на сигнали
30
отстрани (слика 2.21). Потоа, на неа беа залемени електронските елементи и се доби
конечната верзија (слика 2.22).
2.2. Софтвер
Со изработката на електронската плочка за пренос на сигнали се отвори можноста за
комуникација со сетилата, како и контрола на механичкиот систем од страна на
Arduinoто – и веќе се започна со изработка на програмата што ќе го автоматизира
процесот мешање.
Програмата треба да ги има следните карактеристики:
- можност за автоматска контрола на брзината на вртење на мешалката согласно
тековната температура;
- можност за рачна контрола на брзината на вртење на мешалката користејќи
копчиња;
- звучна сигнализација во случај на прегревање или паѓање на температурата под
одредена вредност;
- автоматска работа на мешалката – наизменично вклучување и исклучување на
вртењето во периоди согласно претходно зададена програма;
- преглед на тековната температура на смесата;
- преглед на тековната брзина на вртење на мешалката;
- мерење и евиденција на потрошувачката на системот;
- пресметка на потрошена енергија и економски трошоци за истата;
- контрола на процесот преку компјутер.
Кодот беше изработен на платформата LabVIEW користејќи графички програмски јазик
(G). На слика 2.40 е прикажана контролната табла (КТ) којашто е поделена на два дела.
Во горната половина на КТ се наоѓаат индикатори на кои се прикажани одредени
тековни параметри на системот, како тековна температура, тековна брзина, графичка
симулација на тековната брзина, вредност на поставена потребна брзина, тековна
потрошувачка, потрошена енергија до тековниот момент, цена на чинење на енергијата
во моментот согласно тарифата, потрошена енергија во период на висока тарифа (ВТ),
потрошена енергија во период на ниска тарифа (НТ), виртуелни LED, но и четири
копчиња за управување кои се виртуелни еквиваленти на физичките копчиња.
Физичките копчиња низ кодот се означувани со: BTNONOFF, BTNM, BTNMz и BTNMu.
Накусо, преку вклучување/исклучување на BTNONOFF, системот почнува/завршува со
31
работа. Копчето BTNM служи за рачно управување со состојбата на моторот, додека
останатите две копчиња се за рачна контрола на брзината на вртење или за преод од еден
во друг режим на работа, за што ќе се зборува подоцна. На слика 2.41 е дијаграмот на
кодот и на неа може да се видат блоковите на користените подвиртуелни инструменти
(ПВИ), како и „протокот на податоци“ што се одвива помеѓу нив – претставен преку
линии.
За подобро да се разберат останатите елементи на контролната табла, прво ќе се
разработи дијаграмот и карактеристиките на користените ПВИ.
Управувањето на Arduino-то се врши користејќи го пакетот „LINX“ кој содржи ПВИ
специјализирани за таа намена.
Со цел програмата да ги има сите карактеристики набројани погоре, изработени беа
повеќе ПВИ кои извршуваат посебни функции.
2.2.1. Подвиртуелни инструменти (ПВИ)
ПВИ-то „razlika.vi“ (слика 2.23) на влез добива две променливи од тип unsigned long и
ја пресметува разликата помеѓу нив. Се користи за пресметка на период во ms помеѓу
два момента.
ПВИ-то „LED.vi“ (слика 2.24) се користи за управување на LED, со тоа што на влез добива
Boolean SvetiLi за тоа дали LED-то со дадена „boja“ треба да свети или не. Во случај да има
промена на состојбата на LED, се повикува ПВИ „Digital Write“ за запишување на дигитален
сигнал што е дел од LINX-пакетот. Ова се прави со цел да се заштеди времето потребно за
извршување на дигитален запис, а бидејќи Arduino-to ја држи состојбата на пиновите на нивната
последна зададена вредност – истото нема да влијае врз функционалноста на програмата.
ПВИ-то „allLED.vi“ во себе содржи три ПВИ „LED.vi“ за секоја LED посебно, та на влез
добива само три Boolean вредности за трите LED по редослед прикажан на слика 2.25.
Т2
Т1
dT
2.23 ПВИ „razlika.vi“
SvetiLi
boja
Error In
Error Out
2.24 ПВИ „LED.vi“ 2.25 ПВИ „allLED.vi“
32
ПВИ-то digChit.vi (слика 2.26) врши отчитување на состојбата на зададениот дигитален
пин.
ПВИ chitKop.vi (слика 2.27) врши отчитување на вредноста на физичкото и виртуелното
копче, враќа информација за тековната состојба на копчето, но и за тоа дали истото
комутирало или не.
ПВИ-то sirena.vi (слика 2.28) на влез добива Boolean порменлива Sviri согласно која ја
вклучува или исклучува сирената. Исто како и кај LED.vi, ПВИ-то врши запишување на
дигитален сигнал само во случај да тековната состојба на сирената е различна од онаа
што се задава.
ПВИ-то motor.vi (слика 2.29) врши управување со факторот на исполнетост (Duty Cycle)
на пинот на моторот со тоа што го нагодува на вредност зададена на неговиот влез. Од
исти причини како претходно, „аналогното“ запишување се извршува доколку има
промени од претходната негова вредност. Вредноста на факторот на исполнетост треба
да биде нагодена како контролата на пинот на моторот да е Active-HIGH. Но, во случај
електронското коло (види „Електрично коло за контрола на DC-мотор“ стр. 15) е
направено така што пинот за контрола на моторот треба да биде поставен на Active-LOW
како што е тука, на влез за „PWM set LOW?“ треба да се проследи вредност „true“, така
што ПВИ ќе ја нагоди вредноста соодветно. ПВИ-то исто така води евиденција за
тековната состојба на моторот, како и времето на негова последна комутација.
ПВИ-то brzinoMetar.vi (слика 2.30) врши следење на состојбата на индуктивното сетило и го
мери времето помеѓу две комутации. Потоа користејќи ја пресметува тековната брзина на
вртење на начин објаснет во глава 2.1.4. Се смета дека доколку не се случи комутација во период
2.26 ПВИ „digChit.vi“
dBTNs
2.28 ПВИ „chitKop.vi“
2.29 ПВИ „motor.vi“2.27 ПВИ „sirena.vi“
2.30 ПВИ „brzinoMetar.vi“ 2.31 ПВИ „Тermometar.vi“
33
подолг од 6 секунди, што соодветствува на брзина од 5 врт/мин, тогаш системот е запрен и за
тековна брзина се зема 0. Се пресметува аритметичка средина на последните 6 вака добиени
вредности и таквиот податок се проследува на излез од ПВИ-то.
ПВИ-то Termometar.vi (слика 2.31) врши мерење на напонот на аналогниот влез одреден за
колото на температурното сетило, па согласно релациите (2.60) и (2.17) изведени во глава
2.1.6.2.2. се пресметува тековната температура. Мерењето се врши на секои 5 минути.
ПВИ-то Tarifa.vi (слика 2.32) според времето и денот во седмицата одредува по која тарифа се
наплатува електричната енергија (ВТ – висока тарифа 5,56 МКД/kWh, НТ – ниска тарифа 2,78
МКД/kWh) [7], па сите овие параметри ги проследува на излез.
ПВО-то Multimer.vi (слика 2.33) на влез добива информација за тоа во која тарифа е енергијата
што тековно се троши. Влезот „Vremenski interval“ одредува на колку секунди да се извршува
мерењето на јачината на електрична енергија и во случај да не се поврзе никаква вредност на
овој терминал, ПВИ зема вредност 5 секунди. ПВИ врши мерење на напонот на шантот и, како
што е објаснето во глава 2.1.6.2.3, пресметува јачина на електрична струја, тековна
потрошувачка во W, енергија потрошена во интервалот од 5 секунди, вкупно потрошена
енергија, енергија потрошена само при ниска тарифа и енергија потрошена при висока тарифа.
Исто така формира матрица на потрошувачка и време во секунди кога е измерена таа
потрошувачка. Сите овие параметри ги проследува на неговиот излез.
ПВИ-то MS.vi (слика 2.34) има единствена цел да управува со машината на состојби на
системот. Предвидени се два режими на работа: автоматски режим на работа (АРР) и
рачен режим на работа (РРР) коишто се разликуваат по тоа кој е оној што ја врши
контролата на вклучување на моторот, како и неговата брзина за што ќе стане збор
подоцна. Двава режима на работа заедно со состојба за започнување и состојба за
2.35 ПВИ „Programator.vi“
2.34 ПВИ „MS.vi“
2.33 ПВИ „Multimer.vi“
2.32 ПВИ „Tarifa.vi“
34
завршување на програмата ја формираат
машината на состојби. Истите се
именувани соодветно со
„INICIRANJE“, „ARR“, „RRR“ и
„KRAJ“.
MS.vi на влез добива кластер со
вредности на виртуелните копчиња,
како и податок за тековната
температура. За време на неговото
извршување, истиот врши отчитување
на состојбите на физичките копчиња, па
имајќи ги предвид отчитаните
вредности, како и податоците добиени на влез, одлучува во која состојба да се премине
во наредната итерација на главниот круг. Начинот на кој се носи одлука за промена на
состојба користејќи ги копчињата е прикажан на слика 2.36. Исто така, во случај
системот да е во РРР, а моторот е исклучен подолго од 5 минути за температури над
50°𝐶, односно 10 минути за температури под 50°𝐶, MS.vi ќе ја смени состојбата во АРР
безразлика што ниту едно копче не е притиснато.
ПВИ-то Programator.vi (слика 2.35) на влез добива
повеќе параметри според кои носи одлука за вредноста
на потребната брзина на вртење на моторот кон која
системот треба да се прилагоди, за колку време моторот
треба да биде вклучен, а колку исклучен – наизменично
во ms. Programator.vi ова го прави преку отчитување на физичките и виртуелните
копчиња или преку отчитување на потребната вредност од програматорската матрица
ProgMatrix зависно од тоа во кој режим на работа е системот. Ако системот се наоѓа во
РРР и копчето за вклучување на моторот, BTNM, е вклучено, тогаш со секое притискање
на копчето за забрзување, BTNMz, потребната брзина се инкрементира за 5 врт/мин сѐ
до максимална вредност од 30 врт/мин, додека со притискање на копчето за успорување,
BTNMu, потребната брзина ќе се декрементира за 5 врт/мин сѐ до вредност 0.
Вредностите за „Vreme iskliceno“ и „Vreme vkluceno“ се отчитуваат од програматорската
матрица, но сепак не играат никаква улога во работата на системот во РРР. Вредноста за
потребната брзина не се менува со притискање на копчињата за забрзување и
2.36 Управување со машината на состојби
2.37 Дифолт програматорска
матрица
35
успорување во случај копчето за вклучување на моторот да е исклучено, тогаш истите
служат исклучиво за менување на режимот на работа како што е објаснето на сликата
2.36. Во АРР, вредноста за потребната брзина се отчитува од програматорската матрица,
за која ако не е зададено преку контролната табла, се зема дифолт матрицата прикажана
на слика 2.37. Во првата редица на матрицата, се вредности на горните граници на
интервалот на температура, па programator.vi прво проверува во која колона е
интервалот во кој се наоѓа тековната температура. Потоа, за потребна брзина ја зема
вредноста во втората редица на истата колона. Во третата редица е зададена
процентуална вредност од интервал Тт во кој моторот треба да биде вклучен, па така
времињата за вклученост/исклученост се пресметуваат така што бројот од третата
редица на истата колона се множи со 0,01, па со временскиот интервал Тт што изнесува
5 минути претворени во ms за температури над 50°𝐶, а за температури под 50°𝐶 – 10
минути.
ПВИ-то driverM.vi (слика 2.38) на влез добива податоци за потребната брзина на вртење
на моторот во врт/мин, тековната брзина на вртење, како и незадолжителни параметри
Epsilon и dPWM кои по дифолт изнесуваат 10 и 5 соодветно. Целта на овој ПВИ е да ја
нагоди вредноста на факторот на исполнетост таква што тековната брзина на вртење на
моторот биде во интервалот [potBrz*(1-Epsilon/100), potBrz*(1+Epsilon/100)]. Во случај
тековната брзина да биде вон овој интервал, ПВИ врши корекција на факторот на
исполнетост за вредност од dPWM во позитивна или негативна насока зависно
потребата. Кога вредноста ќе биде коригирана, ПВИ нема да изврши нова корекција сѐ
дури не измине време пресметано според релацијата (2.20) што е објаснето во глава 2.1.4.
Во случај на вклучување на моторот се зема почетна вредност за факторот на
исполнетост на 35%, а при исклучување веднаш се зема вредност 0. Ваквата корекција
се прави така што се претпоставува дека моторот е контролиран од Active-HIGH сигнал
и како таква вредноста се проследува понатаму. ПВИ motor.vi, како што е објаснето
погоре, врши нагодување на вредноста земајќи предвид со каков сигнал е контролиран
моторот. Вредностите за Epsilon и dPWM можат да се нагодат и од контролната табла.
2.39 ПВИ „ GrafSimBrz.vi “2.38 ПВИ „driverM.vi“
36
ПВИ GrafSimBrz.vi (слика 2.39) на влез добива информација само за тековната брзина
на вртење во врт/мин, па врши симулација и графички приказ на физичкото вртење на
мешалката. Истото е изведено користејќи XY графа со вредности за X од -1* 10-5 и 1*
10-5, а вредностите на Y пресметани според формулата
𝑦𝑖 = 𝑥 ∗ tan(θi−1 + ω ∗ Δt) , 𝜃𝑖 = θi−1 + ω ∗ Δt (2.79)
Каде што: - агол во rad што го зафаќа правата y во претходна итерација - 𝜃𝑖−1
- тековна брзина во rad/s - 𝜔
- време изминато од последното повикување на ПВИ во секунди - Δ𝑡
Вака добиените вредности по пребришување на графикот се цртаат на графа на секое
извршување на ПВИ-то. На овој начин успешно се симулира вртењето на мешалката во реално
време.
37
2.40 Контролна табла на програмата во LabVIEW
38
2.41 Програмски дијаграм во LabVIEW
39
2.2.2. Дијаграм на главниот код
Дијаграмот на главниот код е прикажан
на слика 2.41. Со самото стартување на
програмата се воспоставува
комуникација помеѓу компјутерот и
Arduino-то преку отворање на сериска
комуникација со ПВИ означен со (1) на
слика 2.41. На влез ПВИ (1) добива
празен кластер на грешка и информација на кој сериски порт е приклучено Arduino-то.
Во случај на излезот од ПВИ (1) да се добие информација дека настанала грешка (true),
статусот се инвертира во false и се извршува кодот на истоимениот случај на Case-
структурата (слика 2.42). Се продолжува до ПВИ (18) кој ја затвора комуникацијата и со
тоа завршува програмата. Најчеста причина за појава на грешка тука е физичката
неповрзаност на Arduino-то со компјутерот, поставување погрешен сериски порт на влез
на ПВИ (1) или неинсталирани драјвери.
Откако успешно ќе се воспостави комуникацијата, се извршува кодот на случајот „true“
од Case-структурата како што е и прикажано на слика 2.41. Пред да се влезе во „главниот
круг“ сите дигитални излези со ПВИ (2) се поставуваат на исклучено, освен дигиталниот
излез со кој се контролира електричниот мотор – тој се поставува на вклучено со цел
моторот да биде исклучен (види „Електрично коло за контрола на DC-мотор“ стр. 15).
Со влегувањето во прва итерација на главниот круг програмата е успешно стартувана.
До структурата „Машина на состојби“ се носи кластер вредности отчитани од
виртуелните копчиња на контролната табла (слика 2.41 (3)), како и вредност за состојба
од претходна итерација (што за нулта итерација е INICIRANJE).
Ако системот се наоѓа во состојбата „INICIRANJE“ тогаш моторот и сирената се
исклучуваат, додека црвената и зелената LED се вклучени. Ако по првпат системот се
наоѓа во оваа состојба, се извршува кодот во структурата „прво извршување“ каде што
се ажурираат вредностите за глобалните променливи за време, се проверува состојбата
на индуктивното сетило и се чисти матрицата на вредностите на времето и измерената
потрошувачка од претходното извршување на кодот. Понатаму, овој дел воопшто не се
извршува сѐ додека кодот не биде рестартиран.
2.42 Грешка при воспоставување комуникација
со Arduino-то - Дијаграм
40
Ако системот се наоѓа во состојбата „ARR“ тогаш се извршува кодот од Case-
структурата прикажан на слика 2.43.
На влез се сигнализира со запалување на зелена LED дека системот се наоѓа во АРР, па
потоа се извршува ПВИ programator.vi (слика 2.43 (1)) кој согласно тековната
температура одлучува за вредноста на потребната брзина, како и за времето на
вклученост/исклученост на моторот. До операторот за споредување поголемо или
еднакво, се носи вредноста на времето на вклученост или исклученост зависно тековната
состојба на моторот и вредност за изминато време од последна комутација на моторот
(слика 2.43 (2)). Ако времето на вклученост/исклученост е поголемо од изминатото
време, моторот останува во таа состојба во која е и тоа е изведено со проследување на
соодветната вредност за потребната брзина во состојбата „true“ на структурата „Не
поминало времето?“ (слика 2.43 (3)). Во спротивно, моторот ќе треба да ја смени својата
состојба, па извршувајќи го кодот од состојбата „false“ на истата структура, се
проследува вредност за потребна брзина предодредена за спротивната состојба на
тековната на моторот. Понатаму, при извршување на ПВИ motor.vi оваа промена ќе биде
забележана и глобалните променливи за тековната состојба на моторот, заедно со
времето на последна комутација на истиот ќе бидат ажурирани, така што во наредна
итерација нема да настане повторна промена на состојбата сѐ додека потребното време
не е поминато. Вредноста за потребната брзина се проследува до ПВИ driverM.vi (слика
2.43 (4)) и тој истата ја преведува во вредност за факторот на исполнетост и ја проследува
до ПВИ motor.vi. На крајот од состојбата АРР на структурата „Машина на состојби“ се
извршува ПВИ alarm.vi (слика 2.43 (5)) што алармира доколку температурата надмине
одредена граница или почнува да паѓа.
2.43 Дијаграм на код за АРР
41
Ако системот се наоѓа во состојба „RRR“ се извршува кодот прикажан на дијаграмот на
сликата 2.44. Овој код се разликува од кодот за „ARR“ само по начинот на кој се
одлучува дали моторот да се вклучи или не. Истото се извршува со ПВИ chitKop.vi што
ја отчитува состојбата на копчето за вклучување на моторот, BTNM, и во случај да е
вклучено, до driverM.vi се проследува вредноста на потребната брзина на вртење од
programator.vi, а доколку е исклучено – се проследува вредност 0. Сигнализацијата за
РРР се прави со вклучување на жолтата LED.
Ако системот се наоѓа во состојба „KRAJ“, тогаш се извршува кодот прикажан на
дијаграмот на сликата 2.45. Сигнализацијата се прави со вклучување на црвена LED
додека моторот и сирената се исклучуваат.
2.45 Дијаграм на код за РРР
2.44 Дијаграм на код за КРАЈ
Автоматизација на процес приготвување ајвар
Автоматизација на процес приготвување ајвар
Автоматизација на процес приготвување ајвар
Автоматизација на процес приготвување ајвар
Автоматизација на процес приготвување ајвар
Автоматизација на процес приготвување ајвар
Автоматизација на процес приготвување ајвар

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Автоматизација на процес приготвување ајвар

  • 1. Автоматизација на процесот приготвување Ајвар Ментор Изработил Проф. д-р Живко Коколански Бојан Петрески Скопје, ноември 2016 У н и в е р з и т е т „ С в . К и р и л и М е т о д и ј “ - С к о п ј е Ф а к у л т е т з а е л е к т р о т е х н и к а и и н ф о р м а ц и с к и т е х н о л о г и и
  • 2.
  • 3. Апстракт Проектирање на систем за автоматизација и контрола на процесот приготвување ајвар. Системот се состои од софтверски и од хардверски дел. Сигналите добиени преку поставените сензори се носат до развојната плочка Arduino Uno каде што се обработуваат. За плочката изработена е програма во програмскиот пакет LabVIEW што извршува одлуки за тоа кои акции ќе бидат преземени. Софтверот, меѓудругото, врши автоматска регулација на брзината на вртење на моторот што ги движи мешалките согласно тековната температура, ги прикажува тековните параметри на системот и дава предупредувања во случај на пречекорување на истите (преголема температура и сл.). Клучни зборови: ајвар, LabVIEW, Arduino, Uno, SCADA, мешалка, автоматизација, DC- мотор
  • 4. 2 Содржина Содржина..................................................................................................................................2 Содржина на слики..................................................................................................................3 Содржина на табели.................................................................................................................4 1. Вовед..................................................................................................................................5 2. Автоматизација на процесот приготвување Ајвар (АППА).........................................6 2.1. Хардвер ......................................................................................................................6 2.1.1. Механички дел ...................................................................................................6 2.1.2. Димензионирање на електричен мотор ...........................................................7 2.1.3. Температурно сетило.......................................................................................11 2.1.4. Индуктивно сетило и принцип на мерење брзина........................................12 2.1.5. Сирена...............................................................................................................13 2.1.6. Електронски дел...............................................................................................14 2.1.6.1. Развојна плочка Arduino Uno...................................................................14 2.1.6.2. Електронска плочка за пренос на сигнали .............................................15 2.2. Софтвер ....................................................................................................................30 2.2.1. Подвиртуелни инструменти (ПВИ)................................................................31 2.2.2. Дијаграм на главниот код................................................................................39 3. Разлики помеѓу постоечките системи за мешање и АППА .......................................44 4. Заклучок...........................................................................................................................45 5. Додатоци..........................................................................................................................46 5.1. Пресметка на моќности – MATLAB......................................................................46 6. Библиографија и користени програми..........................................................................48
  • 5. 3 Содржина на слики 2.1 Механички компоненти на мешалката ............................................................................6 2.2 Температурна зависност на отпорот на ТО...................................................................11 2.3 Механизам за следење на брзина на вртење .................................................................12 2.4 Arduino Uno развојна плочка ..........................................................................................14 2.5 Заменска шема за DC мотор ...........................................................................................16 2.6 Електронско коло за контролирање на DC-мотор........................................................17 2.7 Eлектрично коло на мотор: транзистор исклучен ........................................................17 2.8 Електрично коло на мотор: транзистор вклучен ..........................................................17 2.9 Импулсно ширинска модуладија и фактор на исполнетост ........................................19 2.10 Електрично коло за термоотпорник – Витстонов мост и ДОЗ..................................20 2.11 Елекронско коло за мерење температура при 0°𝐶 (симулација Multisim)...............22 2.12 Елекронско коло за мерење температура при 120°𝐶 (симулација Multisim)...........22 2.13 Електонско коло за мерење на јачина на електрична струја .....................................24 2.14 Електронско коло за контрола на сирена ....................................................................26 2.15 Електронско коло за отчитување индуктивно сетило................................................26 2.16 Електронско коло за контрола на LED ........................................................................27 2.17 Електронско коло за отчитување на копче..................................................................27 2.18 Шема на електронската плочка за пренос на сигнали во Altiun Designer................28 2.19 Просторна поставеност и поврзување на електронските елементи на плочката за пренос на сигнали во Altium Designer..................................................................................28 2.20 Плочка за пренос на сигнали (размер 1:1)...................................................................29 2.21 Испечатена плочка за пренос на сигнали ....................................................................29 2.22 Завршена плочка за пренос на сигнали........................................................................29 2.23 ПВИ „razlika.vi“..............................................................................................................31 2.24 ПВИ „LED.vi“.................................................................................................................31 2.25 ПВИ „allLED.vi“.............................................................................................................31 2.26 ПВИ „digChit.vi“ ............................................................................................................32 2.28 ПВИ „sirena.vi“...............................................................................................................32 2.27 ПВИ „chitKop.vi“............................................................................................................32 2.29 ПВИ „motor.vi“...............................................................................................................32 2.30 ПВИ „brzinoMetar.vi“.....................................................................................................32 2.31 ПВИ „Тermometar.vi“.....................................................................................................32
  • 6. 4 2.32 ПВИ „Tarifa.vi“...............................................................................................................33 2.33 ПВИ „Multimer.vi“ .........................................................................................................33 2.34 ПВИ „MS.vi“...................................................................................................................33 2.35 ПВИ „Programator.vi“ ....................................................................................................33 2.36 Управување со машината на состојби .........................................................................34 2.37 Дифолт програматорска матрица .................................................................................34 2.38 ПВИ „driverM.vi“ ...........................................................................................................35 2.39 ПВИ „ GrafSimBrz.vi “...................................................................................................35 2.40 Контролна табла на програмата во LabVIEW.............................................................37 2.41 Програмски дијаграм во LabVIEW ..............................................................................38 2.42 Грешка при воспоставување комуникација со Arduino-то - Дијаграм .....................39 2.43 Дијаграм на код за АРР .................................................................................................40 2.45 Дијаграм на код за КРАЈ ...............................................................................................41 2.44 Дијаграм на код за РРР..................................................................................................41 Содржина на табели Табела 2.1 Измерени отпорности на ТО при различни температури ...............................11 Табела 2.2 Технички спецификации на Arduino Uno .........................................................14
  • 7. 5 1. Вовед Потребата за зголемување на конкурентноста на пазарот, ограниченоста на ресурсите, како и зголемувањето на побарувачката за добра и за услуги изнудува изнаоѓање на сѐ поефикасни, поквалитетни, а воедно и на сѐ побрзи начини за остварување на крајниот продукт. Поради тоа, денес многу технолошки процеси, но и секојдневни работи, од перење облека, па сѐ до производство на автомобили – во себе содржат одреден степен на автоматизација. Согласно потребите и комплексноста на истите во себе содржат SCADA-системи изработени специјално за таа намена. Платформата за програмирање LabVIEW значително го олеснува начинот на изработка на програми и овозможува дури и инженерите со основни познавања на принципите на програмирање да можат да изработат солидни, сигурни и доверливи програми, меѓу кои и SCADA-системи, за најразлични намени. Последниве неколку години во Македонија се зголеми интересот за користење на електрични мотори за вртење на машини за мелење на потребните состојки при правење зимници или за мешање на смесата за време на приготвувањето. Повеќето вакви системи функционираат со рачно вклучување на моторот на напојување и можност за промена на брзината на вртење преку потенциометар што бара постојано присуство на човек кој ќе ја нагодува брзината. Во оваа дипломска работа, главна цел ќе биде прикажувањето на начинот на изработка на еден SCADA-систем во LabVIEW и истото ќе биде спакувано во приказната „Автоматизација на процес приготвување Ајвар“ (АППА). За таа цел, изработен беше прототип на машина за мешање Ајвар, којашто има можност сама да ја контролира брзината на вртење според температурата, да дава звучни сигнали во случај температурата да се искачи над одредена критична вредност и сето ова да го комуницира со компјутер на кој се следи целиот овој процес.
  • 8. 6 2. Автоматизација на процесот приготвување Ајвар (АППА) Машината има хардверски и софтверски дел. Хардверскиот дел се состои од мешалка, DC-мотор, температурно и индуктивно сетило, електронска плочка за пренос на сигнали, Arduino Uno развојна плочка и напојување. 2.1. Хардвер 2.1.1. Механички дел Механичкиот дел, мешалката, се состои од: 1. Метална конструкција за прицврстување и стабилизација 2. Метална цевка за температурно сетило 3. Дрвени двојни перки 4. Ротирачка метална оска за перки Предвидено е мешалката да работи во сад за пржење Ајвар, шерпа, со просечна големина и да има двојни перки закосени под агол од 45ᵒ. Димензиите на садот и перките се дадени подолу: (1) (2) (3) (4) 2.1 Механички компоненти на мешалката
  • 9. 7 Дијаметар на сад: 𝐷𝑠 = 52 𝑐𝑚 Висина на перка: ℎ 𝑝 = 2 𝑐𝑚 Висина на сад: 𝐻𝑠 = 18 𝑐𝑚 Маса на перки: 𝑚 𝑝 = 0,4 𝑘𝑔 Должина на перки: 𝑙 𝑝 = 26 𝑐𝑚 Агол на перка: 𝛼 𝑝 = 45° Ширина на перки: 𝑤 𝑝 = 5,5 𝑐𝑚 Број на перки: 𝑛 𝑝 = 2 2.1.2. Димензионирање на електричен мотор Пред да се започне со димензионирање на електронските компоненти, потребно е да се има податок за потребната механичка моќност за мешалката да може да врти со посакувана брзина. За приближно да се дојде до таа вредност неопходно е да се извршат одредени теоретски пресметки на сили што би се спротивставувале на движењето на перките на мешалката. Ајварот по природа е многу хетерогена смеса, па пресметките би биле мошне комплицирани во случај да се земат предвид сите негови карактеристики. Затоа, предвид се зема само влијанието на тежина на Ајварот врз перките што доведува до поголемо отстапување на пресметаната од вистинската вредност за механичката моќност т.е. пресметковно ќе се добие помала вредност од вистинската. Моторот во секое време треба да обезбеди механичка моќност за да овозможи вртење на перките со максимална брзина, при што треба да ги совлада и вртливиот момент предизвикан од тежината на ајварот врз перките, инерцијалниот момент на истите, но и да компензира за загубите на енергија во преносниот систем. Сите овие параметри се земени предвид при пресметка на вредноста за потребна механичка моќност што ќе се искористи како ориентир за избор на мотор. Мешалката е предвидена да работи со максимална брзина на вртење 𝜔 = 30 𝑣𝑟𝑡/𝑚𝑖𝑛 = 𝜋 𝑟𝑎𝑑/𝑠 и способност од мирување истата да ја постигне во рок од 1 s. Ова значи дека ќе се јави максимално аголно забрзување 𝛼 𝑏𝑟𝑧 = 𝜋 𝑟𝑎𝑑/𝑠2 . Тежината на ајварот има најголем удел во вртливиот момент на силите што влијаат спротивно движењето на мешалката. Со претпоставка дека врз перката делува со сила само делот од смесата што е над неа, тој се разгледува како цврсто тело со димензии на основата (должина и ширина) еднакви на хоризонталната проекција на перката и висина еднаква на максималната висината до која може да се исполни садот (5/6 од висината на садот).
  • 10. 8 За пресметка на силата со која делува смесата врз перките се тргнува од Вториот Њутнов Закон, во кој е земено 𝑔 = 9,91 𝑚/𝑠2 : Елементарната сила 𝑑𝐹 предизвикана од елементарна маса на смеса 𝑑𝑚 𝑎 според релацијата (2.1) е: Елементарниот вртлив момент што го предизвикува силата 𝑑𝐹 на растојание 𝑟 од оската се пресметува со: Каде што: Висина на исполнетост: ℎ 𝑠 = 5 6 𝐻𝑠 = 15 𝑐𝑚 = 0,15 𝑚 Густина на ајвар: 𝜌 𝑎 Со замена на (2.2) во (2.3) и интегрирајќи од двете страни, се добива конечниот израз за пресметка на вкупниот вртлив момент предизвикан од ајварот. Во релацијата (2.5) познати се сите параметри освен густината на ајварот. Истата е добиена по експериментален пат преку мерење на масата и волуменот на ајварот во една тегла. Измерени се следните параметри: Маса на празна тегла: 𝑚 𝑡 = 0.375 𝑘𝑔 Маса на тегла полна ајвар: 𝑚 𝑡+𝑎 = 1.033 𝑘𝑔 Волумен на вода во тегла: 𝑉𝑣 = 650 𝑚𝑙 = 650 ∗ 10−6 𝑚3 Па, густината на ајварот се пресметува: Конечно со замена на вредностите за сите параметри во (2.5) се добива вредноста за вртливиот момент предизвикан од ајварот и изнесува 𝜏 𝑎 = 2,7267 𝑁𝑚. Аголното забрзување исходи со појава на инерцијални сили врз перките што се спротивставуваат на промената на движењето и создаваат контра вртлив момент. 𝐹 = 𝑎 ∗ 𝑚 = 𝑔 ∗ 𝑚 𝑎 [𝑁] (2.1) 𝑑𝐹 = 𝑔 𝑑𝑚 𝑎 = 𝑔 𝜌 𝑎 𝑉𝑎 = 𝑔 𝜌 𝑎 𝑛 𝑝 ℎ 𝑠 𝑤 𝑝 cos 𝛼 𝑝 𝑑𝑟 [𝑁] (2.2) 𝑑𝜏 𝑎 = 𝑟 𝑑𝐹 (2.3) 𝜏 𝑎 = ∫ 𝑔 𝜌 𝑎 𝑛 𝑝 ℎ 𝑠 𝑤 𝑝 cos 𝛼 𝑝 𝑟 𝑑𝑟 𝑙 𝑝 0 [𝑁𝑚] (2.4) 𝜏 𝑎 = 𝑔 𝜌 𝑎 𝑛 𝑝 ℎ 𝑠 𝑤 𝑝 cos 𝛼 𝑝 𝑙 𝑝 2 2 [𝑁𝑚] (2.5) 𝜌 𝑎 = 𝑚 𝑡+𝑎 − 𝑚 𝑡 𝑉𝑣 = 1.033 − 0.375 650 ∗ 10−6 ≈ 1012 𝑘𝑔 𝑚3 (2.6)
  • 11. 9 Вртливиот момент преку моментот на инерција на перките и аголното забрзување се добива со формулата: За пресметка на моментот на инерција важна е геометриската распределеност на масата од оската. Перките се поставени радијално, т.е. со нивната должина во насока на радиусот, па поради тоа важи релацијата (2.8) [1]: Се претпоставува дека перките се изработени од материјали со иста густина и густината се пресметува: Масата на перките може да се изрази како функција од радиусот: па, единечната маса што се наоѓа на должина 𝑑𝑟 ќе изнесува: Со замена на (2.12) во (2.8) се добива: Знаејќи го моментот на инерција и максималното потребно аголно забрзување преку релацијата (2.7) ќе се добие вредноста на вртливиот момент што се појавува поради инерцијални сили 𝜏𝑖𝑛 = 24,13 ∗ 10−3 𝑁𝑚, што е помал од вртливиот момент предизвикан од тежината на Ајварот за четири редни величини. За мешалката да може да врти, моторот треба да обезбеди вртлив момент поголем од збирот на вртливите моменти пресметани погоре. Прототипот е изработен така што моторот директно е поврзан на оската на перките, со што загубите во преносен систем се релативно мали, па претпоставена е вредност за коефициент на полезно дејство на преносниот систем 𝑘 𝑚𝑝𝑟 = 0,95. 𝜏𝑖𝑛 = 𝐼 𝛼 𝑏𝑟𝑧 [𝑁𝑚] (2.7) 𝐼 = ∫ 𝑟2 𝑑𝑚 𝑚 𝑝 [𝑘𝑔/𝑚2] (2.8) 𝜌 𝑝 = 𝑚 𝑝 𝑉𝑝 = 𝑚 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 𝑙 𝑝 = 704,7 𝑘𝑔/𝑚3 (2.9) 𝑚(𝑟) = 𝜌 𝑝 𝑉𝑝 = 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗ 𝑟 [𝑘𝑔] (2.10) 𝑚 𝑝 = 𝑚(𝑙 𝑝) = 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 𝑙 𝑝 [𝑘𝑔] (2.11) 𝑑𝑚 = 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗ 𝑑𝑟 [𝑘𝑔] (2.12) 𝐼 = ∫ 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗ 𝑟2 𝑑𝑟 𝑙 𝑝 0 = 𝜌 𝑝 𝑛 𝑝 𝑤 𝑝 ℎ 𝑝 ∗ 𝑙 𝑝 3 3 = 7,68 ∗ 10−3 𝑘𝑔/𝑚2 (2.13)
  • 12. 10 Функционалната зависност на моќноста од вртливиот момент и аголната брзина е дадена со следната релација: Каде што 𝜏 𝑠 = 𝜏 𝑎 + 𝜏𝑖𝑛. Конечната вредност за механичката моќност што моторот треба да ја достави со уважување на загубите во пренос се пресметува со: Максималната електрична моќност што моторот ја повлекува од мрежа се пресметува претпоставувајќи дека работи со најлош коефициент на полезно дејство 𝜂 𝑚 = 0,75. Согласно овие вредности избран е DC-мотор со номинална моќност од 15 W и работен номинален напон од 12 V. Сите пресметки за овој дел се извршени преку MATLAB и кодот е ставен во додаток 1. Моторот беше пуштен во работа да погонува мешалка за ајвар во сад со исти димензии како оние земени при теоретските пресметки и беше измерено дека од мрежа влече струја од 3,01 A при 6V напојување за да оствари брзина на вртење од 30 vrt/min. Тоа значи дека влече електрична моќност од 18,06 W што отстапува 21% од ориентациската вредност добиена преку пресметки. 𝑃𝑠 = 𝜏 𝑠 ∗ 𝜔 [𝑊] (2.14) 𝑃 𝑚𝑒ℎ = 𝑃𝑠 𝑘 𝑚𝑝𝑟 [𝑊] = 11,11 𝑊 (2.15) 𝑃𝑒𝑙 = 𝑃 𝑚𝑒ℎ 𝜂 𝑚 = 14,25 𝑊 (2.16)
  • 13. 11 2.1.3. Температурно сетило За мерење на температура се користи сонда ST1K со температурно сетило тип KTY81- 121. Во сад со вода на 0 𝐶° поставена беше сондата заедно со термометар. Садот постепено беше загреван и се вршеше мерење на отпорноста на термоотпорникот со инструмент. Измерените податоци се прикажани во Табела 2.1, а на слика 2.2 е прикажана зависноста на отпорот од температурата. Податоците се обработија во MATLAB, при што се доби полиномната апроксимација на зависноста на температурата од отпорноста, но и на отпорноста од температурата. Кодот е во продолжение: n = 2; T = [0 19 26 31 39 49 54 63 70 77 80 86 93]; R = [815 943 1000 1041 1105 1190 1243 1318 1396 1454 1492 1555 1617]; p1 = polyfit(T,R,n); p2 = polyfit(R,T,n); Како решение се добија изразите (2.17) и (2.18): 𝑇(𝑅) = −32 10−6 𝑅2 + 191,68 10−3 𝑅 − 133,93 [𝐶°] (2.17) 𝑅(𝑇) = 21 ∗ 10−3 𝑇2 + 6,734 𝑇 + 811,45 [Ω] (2.18) Табела 2.1 Измерени отпорности на ТО при различни температури темп. ᵒС ТО1 [Ω] 0 815 19 943 26 1000 31 1041 39 1105 49 1190 54 1243 63 1318 70 1396 77 1454 80 1492 86 1555 93 1617 2.2 Температурна зависност на отпорот на ТО
  • 14. 12 2.1.4. Индуктивно сетило и принцип на мерење брзина Една од можностите на овој систем е контрола на брзината на вртење. За таа цел, потребно е постојано да се добива информација за тековната брзина, по што системот ќе одлучи дали да ја забрза, успори или да не ја промени брзината на вртење на мешалката. Има повеќе начини на кои може да се дојде до овој податок и повеќето се сведуваат на мерење на време помеѓу две случувања (комутација, добивање импулсен сигнал, достигнување одредена состојба и сл.). Во овој труд ќе се користи индуктивно сетило и ќе се мери поминатото време помеѓу две последователни истовидни комутации. Освен времето за пресметка на брзината на вртење потребно е да се знае колку изнесува аголното поместување за да настане, во случајов, нова комутација на индуктивното сетило. Брзината се пресметува со формулата: Каде што: аголно поместување на перките меѓу две комутации: – Δ𝜃 [𝑟𝑎𝑑] измерено време меѓу две комутации: – t [s] Треба да се спомене дека минималното време потребно за системот сигурно да добие ажурирана вредност за тековна брзина изнесува: Каде што: Минимално потребно време за ажурирање: – 𝑡 [𝑠] Реална тековна брзина на вртење: – 𝜔 𝑡𝑒𝑘 [rad/s] Од (2.20) се гледа дека колку помала е вредноста за Δ𝜃, толку системот побрзо ќе добие ажурирана вредност за брзината и побрзо ќе се прилагоди согласно тековната состојба. 𝜔 = Δ𝜃 𝑡 [𝑟𝑎𝑑/𝑠] (2.19) 𝑡 𝑚𝑖𝑛 = Δ𝜃 𝜔 𝑡𝑒𝑘 (2.20) 2.3 Механизам за следење на брзина на вртење
  • 15. 13 Во случајов со мешалката механизмот за следење на вртењето е изработен така што на оската на која се прицврстени перките заварен е дел од навртка што претходно дијаметрално е пресечена на два дела. Во идеален случај кога навртката би била пресечена на две идеални половини при константна брзина на вртење индуктивното сетило би било во позиција вклучено подеднакво долго колку што би било во позиција исклучено, па така вредноста за Δ𝜃 би изнесувала 𝜋 𝑟𝑎𝑑. Брзината на вртење обично се изразува во единица vrt/min, па така за пресметка на истата се изведува следната формула: Индуктивното сетило е од типот PRD12-8DP, PNP и функционира на работен напон од 12 V. Има 3 краеви од кои двa се напојување, а третиот е НО прекинувач. 2.1.5. Сирена За давање на звучни сигнали при одредени критични ситуации се користи сирена што функционира на работен напон од 12 V. 𝜔(𝑡) = Δ𝜃 𝑡 = 𝜋 [𝑟𝑎𝑑] 𝑡 [𝑠] ∗ 1 [𝑣𝑟𝑡] 2𝜋 [𝑟𝑎𝑑] ∗ 60[𝑠] 1[min] = 30 𝑡 [𝑣𝑟𝑡/𝑚𝑖𝑛] (2.21) 𝜔(𝑡[𝑠]) = 30 𝑡[𝑠] [𝑣𝑟𝑡/𝑚𝑖𝑛] (2.22)
  • 16. 14 2.1.6. Електронски дел Електронскиот дел се состои од две електронски плочки: - Развојна плочка Arduino Uno - Електронска плочка за пренос на сигнали 2.1.6.1. Развојна плочка Arduino Uno Arduino Uno (слика 2.4) е развојна плочка базирана на ATmega328P микро-контролер. Плочката има 6 аналогни влезови, 14 дигитални влезно-излезни пинови од кои 6 способни за ИШМ (PWM outputs), 16 MHz кварцен кристал, USB конекција, напонски приклучок, копче за ресетирање и ICSP header. Uno развојната плочка е прва серија од Arduino USB развојните плочки и претставува референтен примерок за плантформата Arduino. Во Табела 2.2 [2] се дадени спецификации за плочката: Сигналите на дигиталните пинови со можност за ИШМ на Arduino Uno се со фреквенција од 490 Hz, освен на дигиталните пинови 5 и 6 се на фреквенција од 980 Hz [3]. Согласно ова, периодот на ИШМ-сигналот на пиновите 5 и 6 изнесува 𝑇𝑝𝑖𝑛5,6 = 1 980 = 1,02 𝑚𝑠, додека на останатите пинови 𝑇𝑝𝑖𝑛 = 1 490 = 2,4 𝑚𝑠. Arduino Uno има 6-канален, 10-битен AD-конвертор што овозможува мапирање на амплитудите на аналогните сигнали со броеви од 0 до 1023 (=210 − 1). Земајќи предвид дека на влезовите не смее да се донесе напон вон интервалот 0-5 V, резолуцијата на мерење аналоген напонски сигнал на Arduino-то изнесува 5 210 = 4,9 𝑚𝑉. 2.4 Arduino Uno развојна плочка Работен напон 5V Препорачано напојување 7-12V Граници на напојување 6-20V Дигитални влезно-излезни пинови 14 (од кои 6 со ИШМможност) ШИМдигитални пинови (PWM) 6 Аналогни влезови 6 Макс. DC струја за 5V-пин 20 mA Макс. DC струја за 3,3V-пин 50 mA Clock Speed 16 MHz Табела 2.2 Технички спецификации на Arduino Uno
  • 17. 15 2.1.6.2. Електронска плочка за пренос на сигнали Во подглавите 2.1.2 – 2.1.5 беа дадени карактеристики на сирената, индуктивното сетило, електричниот DC-мотор и на истите им е потребен работен напон од 12 V, а од подглава 2.1.6.1 во карактеристиките на Arduino Uno развојната плочка се гледа дека сите нејзини пинови работат на напони од 0 V до 5 V. Ова е една од причините зошто е потребен посреден медиум кој ќе врши прилагодување на напоните на сигналите што патуваат од Arduino-то до периферните електрични уреди и обратно. Во текстот подолу ќе бидат објаснети сите електрични кола што ги содржи електронската плочка за пренос на сигнали. 2.1.6.2.1. Електрично коло за контрола на DC-мотор Во глава 2.1.2 експериментално e покажано дека максималната електрична моќност што DC-моторот ќе ја влече од мрежа изнесува околу 18 W. За димензионирање на елементите на електричното коло за контрола на моторот ќе се користи вредност од 𝑃𝑒𝑙 = 20 𝑊 за потребната електрична моќност. Влезната отпорност на електричниот мотор е измерена и изнесува 𝑅 𝑚 = 1,5 Ω. Моторот работи при константно напојување од 𝑉𝑁 = 12 𝑉, па со овие податоци се пресметува струјата што ја влече моторот при максимално оптоварување: Во општ случај, струјата што протекува низ DC-мотор може да се пресмета со следнава формула (види слика 2.5) [4]: Каде што: индуцирана електромоторна сила: 𝐸0 струјата што протекува низ моторот: 𝐼 𝑚 Индуциранта електромоторна сила правопропорционално зависи од брзината на вртење на моторот и тоа: 𝐼 𝑛 = 𝑃𝑒𝑙 𝑉𝑁 = 20 𝑊 12 𝑉 = 1,67 𝐴 (2.23) 𝐼 𝑚 = 𝑉𝑁 − 𝐸0 𝑅 𝑚 (2.24) 𝐸0 = 𝑍 𝜔 Φ 60 (2.25)
  • 18. 16 Каде што: број на навивки: Z Флукс по навивка: Φ Брзина на вртење: 𝜔 [vrt/min] При стартување на електричниот мотор неговата првична брзина изнесува 0 vrt/min, што значи дека и индуцираната електромоторна сила е 𝐸0 = 0 𝑉. Заменувајќи ја оваа вредност во формулата (2.24) се добива вредноста на струјата што протекува низ електричниот мотор при стартување: По стартувањето на моторот со зголемувањето на брзината на вртење, вредноста на Е0 ќе порасне, а со тоа и струјата Im ќе се намали. Од овие пресметки следи заклучокот дека електронските елементи во колото за контрола на моторот треба да се димензионираат така што ќе можат да издржат стабилна струја од 1,7 А и краткотрајна струја од 8 А. Контролата на брзината на вртење на DC моторот ќе се извршува преку ИШМ (PWM). Дигиталните излези на Arduino-то не можат самостојно да ја вршат оваа регулација, зашто во игра се релативно големи струи и напони, па за да се премине преку оваа пречка ќе бидат искористени n-канален MOSFET IRF640 и npn-транзистор тип 2N2222 како што е прикажано на шемата на слика 2.6 Кога пинот на Arduino-то ќе биде на потенцијал 0 V, транзисторот ќе се исклучи, па напонот 𝑉𝐺𝑆 = 𝑉𝐶𝐶 = 12 𝑉 (слика 2.7). Бидејќи 𝑉𝐺𝑆 > 𝑉𝑇𝐻 = 2 𝑉, MOSFET-от ќе вклучи и низ него ќе може да тече струја до 18 A, што е повеќе од струјата што ја влече моторот 𝐼 𝑚 = 𝑉𝑁 − 0 𝑅 𝑚 = 12 1,5 = 8 𝐴 (2.26) 2.5 Заменска шема за DC мотор
  • 19. 17 при вклучување. Според ова, моторот ќе биде вклучен кога од Arduino-то ќе се донесе потенцијал 0 V. Кога од Arduino-то ќе се донесе напон од 5 V на базата на транзисторот (слика 2.8), тој ќе прејде во заситување бидејќи 5 𝑉 > 𝑉𝐵𝐸,𝑠𝑎𝑡 = 1,3𝑉1. Во овој случај, напонот 𝑉𝐺𝑆 = 𝑉𝐶𝐸,𝑆𝐴𝑇 = 0,4 𝑉2 и е помал од напонот на праг на MOSFET-от 𝑉𝑇𝐻 = 2 𝑉, што значи дека истиот нема да проведува струја. Според ова, со носење на 5 V, на базата на транзисторот од Arduino-то, моторот успешно ќе биде исклучен. Од оваа анализа се гледа дека моторот успешно може да биде контролиран користејќи MOSFET IRF640 и транзистор 2N2222. Останува уште да се нагодат отпорите на отпорниците со што ќе се обезбеди сигурно исклучување/вклучување на овие елементи, поточно на транзисторот. 1 Каталог за транзистор 2N2222 2 Каталог за транзистор 2N2222, за Ic = 150 mA и Ib = 15 mA 2.6 Електронско коло за контролирање на DC-мотор 2.7 Eлектрично коло на мотор: транзистор исклучен 2.8 Електрично коло на мотор: транзистор вклучен
  • 20. 18 Падот на напон на отпорникот 𝑅 𝑚1 изнесува: Oттука се изразува 𝑅 𝑚1: За да сме сигурни дека транзисторот ќе прејде во заситување, земаме вредност за Ib трипати поголема [5]: Струјата Ib се изразува преку Ic и струјното засилување hFE кое се отчитува од каталог. Во анализата погоре, земена беше вредност за струја 𝐼 𝐶 = 150 𝑚𝐴, па струјното засилување ℎ 𝐹𝐸 = 100. Со цел струјата IC да се ограничи на оваа вредност, се избира отпор за Rm3 според изразот: Струјата Ib се изразува преку Ic преку струјното засилување: Со замена на (2.31) во (2.29), се добива: Вредноста на отпорноста Rm2 се зема да биде 10 kΩ и служи во случај точката Vi да остане да „виси“, на неа да се донесе напон од 0 V. Со ова завршува димензионирањето на елементите на електронското коло за контрола на моторот. Не треба да се заборави дека моторот е вклучен кога од Arduino се носи напон од 0 V на базата на транзисторот, а се исклучува при напон од 5 V. ИШМ (PWM) е техника која користи дигитален извор на сигнали за да добие аналоген сигнал. Преку периодично вклучување на дигиталниот извор на сигнали се симулира правоаголен бран со времетраење од 𝑡 = 𝑘 𝑇/100. k се нарекува фактор на исполнетост, ФИ, (анг. Duty Cycle) и е зададен процент од периодот Т во кој амплитудата на сигналот, во случајов, е 𝑈 𝑚𝑎𝑥 𝑠 = 5 𝑉. Во останатиот дел од периодот Т сигналот е исклучен т.е. 𝑉𝑖 = 𝐼 𝑏 𝑅 𝑚1 + 𝑉𝐵𝐸,𝑂𝑁 (2.27) 𝑅 𝑚1 = 𝑉𝑖 − 𝑉𝐵𝐸,𝑂𝑁 𝐼 𝑏 (2.28) 𝑅 𝑚1 = 𝑉𝑖 − 𝑉𝐵𝐸,𝑂𝑁 3 𝐼 𝑏 (2.29) 𝑅 𝑚3 = 𝑉𝐶𝐶 − 𝑉𝐶𝐸,𝑆𝐴𝑇 𝐼 𝐶 = 12 − 0,4 0,150 = 77, 3̅ ≈ 78 Ω (2.30) 𝐼 𝑏 = 𝐼𝑐 ℎ 𝐹𝐸 = 150 100 = 1,5 𝑚𝐴 (2.31) 𝑅 𝑚1 = 5 − 0,7 3 ∗ 1,5 ∗ 10−3 = 955,6 Ω ≈ 1 kΩ (2.32)
  • 21. 19 амплитудата изнесува 0 V. Ваквото вклучување и исклучување на сигналот е прикажано графички на слика 2.9. Периодот Т зависи од фреквенцијата на сигналот на ИШМ. За контрола на моторот во овој проект се користи дигиталниот пин 11 со фреквенција од 490 Hz (види глава 2.1.6.1), па разгледуваниот период Т ќе изнесува: 𝑇 = 1 490 = 2,04 𝑚𝑠 (2.33) 2.1.6.2.2. Електрично коло за температурното сетило Карактеристиките на температурното сетило се изложени во глава 2.1.3. Предвидено е мешалката да работи на температури во интервалот од 0°𝐶 до 120°𝐶, па согласно релацијата (2.18) пресметани се граничните вредности на отпорноста на терммоотпорникот при овие температури. Со цел вредноста на напонскиот сигнал Vt0 што ќе се донесе до еден аналоген влез на Arduino-то да биде во граници од 0 V до 5 V за да се обезбеди мерење на температура со поголема резолуција – се користи Витстонов мост и диференцијален операциски 𝑅(0) = 𝑅 𝑇 𝑚𝑖𝑛 = 811 Ω 𝑅(120) = 𝑅 𝑇 𝑚𝑎𝑥 = 1930 Ω (2.34) 2.9 Импулсно ширинска модуладија и фактор на исполнетост
  • 22. 20 засилувач (ДОЗ) како што е прикажано во шемата на слика 2.10. Накусо, стратегијата за избор на отпорници е следна: Преку изборот на вредностите на отпорниците кај Витстоновиот мост треба да се сведе минималната разлика 𝑉1 − 𝑉2, што се појавува при температура 0°𝐶, на вредност што поблиска до 0+ 𝑉 и при тоа да се внимава струјата што ќе протече низ мостот да не биде поголема од максимално дозволената за еден пин – 20 mA. Откако ќе се одлучи за вредностите на отпорите кај Витстоновиот мост, се пристапува кон избор на елементите на диференцијалниот операциски засилувач. Во овој дел се гледа засилувањето на сигналот дефинирано со односот 𝑅 𝑏5 𝑅 𝑏4 , да биде такво што при максимална разлика на напоните 𝑉1 − 𝑉2, што ќе се јави при 120°𝐶, на излез да се добива вредност што поблиска до 5− 𝑉. Сето ова преку математички пресметки е изведено подолу. Се тргнува од напонските ограничувања на 𝑉𝑡0 при напојување на мостот 𝑉𝑐𝑐 = 5 𝑉. Вредностите за напоните 𝑉1 и 𝑉2 преку напонски делител се изразуваат како: Се заменуваат изразите под (2.38) во (2.37) и се добива: 𝑉0 = − 𝑅 𝑏5 𝑅 𝑏4 (𝑉2 − 𝑉1) (2.35) 𝑉0 ∈ [0, 5] => 𝑉0 ≥ 0 (2.36) 𝑉2 ≤ 𝑉1 (2.37) 𝑉1(𝑅 𝑇) = 𝑉𝐶𝐶 𝑅 𝑇 𝑅 𝑇 + 𝑅 𝑏1 ; 𝑉2 = 𝑉𝐶𝐶 𝑅 𝑏3 𝑅 𝑏3 + 𝑅 𝑏2 ; (2.38) 2.10 Електрично коло за термоотпорник – Витстонов мост и ДОЗ V1 V2
  • 23. 21 (2.39) се дели со 𝑉𝑐 𝑐 од двете страни и се дига на степен -1. Со тоа: Се избира вредност за 𝑅 𝑏1 така што напонот V1 ќе тежнее да биде половина од VCC. Што значи дека: Па се зема најблиската стандардна вредност до пресметаната во (2.42), а истовремено и 𝑅 𝑏2 = 𝑅 𝑏1: Земајќи ја предвид релацијата (2.41), се добива вредноста за 𝑅 𝑏3: Па за конечна вредност е земено 𝑅 𝑏3 = 0,8 𝑘Ω. Заменувајќи ги вредностите на избраните отпорници 𝑅 𝑏1, 𝑅 𝑏2, 𝑅 𝑏3 и 𝑅 𝑇 𝑚𝑖𝑛 /𝑅 𝑇 𝑚𝑎𝑥 во релаците (2.38) се добиваат вредности за напоните: Разликата помеѓу напоните 𝑉1 и 𝑉2 зависи од тековната отпорнотст на термоотпорникот и се движи во интервал (𝑉1 𝑚𝑖𝑛 − 𝑉2, 𝑉1 𝑚𝑎𝑥 − 𝑉2). Вредностите за отпорниците 𝑅 𝑏4 и 𝑅 𝑏5 се избираат така што напонот 𝑉0 да биде што поблиску 5− V. Се заменува максималната вредност за Δ𝑉12 во (2.35) и се добива: 𝑉𝐶𝐶 𝑅 𝑏3 𝑅 𝑏3 + 𝑅 𝑏2 ≤ 𝑉𝐶𝐶 𝑅 𝑇 𝑅 𝑇 + 𝑅 𝑏1 (2.39) 1 + 𝑅 𝑏2 𝑅 𝑏3 ≥ 1 + 𝑅 𝑏1 𝑅 𝑇 (2.40) 𝑅 𝑇 ≥ 𝑅 𝑇 𝑚𝑖𝑛 ≥ 𝑅 𝑏1 𝑅 𝑏2 𝑅 𝑏3 (2.41) 𝑅 𝑏1 = 𝑅(0) + 𝑅(120) 2 = 811 + 1930 2 = 1370,5 Ω (2.42) 𝑅 𝑏1 = 1,4 𝑘Ω; 𝑅 𝑏2 = 1,4 𝑘Ω (2.43) 𝑅 𝑏3 ≤ 811 Ω (2.44) 𝑉1 𝑚𝑎𝑥 = 𝑉1(𝑅 𝑇 𝑚𝑎𝑥) = 5 1930 1930 + 1400 = 2,9 𝑉 (2.45) 𝑉1 𝑚𝑖𝑛 = 𝑉1(𝑅 𝑇 𝑚𝑖𝑛 ) = 5 811 811 + 1400 = 1,83 𝑉 (2.46) 𝑉2 = 5 800 800 + 1400 = 1,82 𝑉 (2.47) Δ𝑉12 = 𝑉1(𝑅 𝑇) − 𝑉2 (2.48) Δ𝑉12 ∈ (0,01; 1,08) [𝑉] (2.49)
  • 24. 22 Електронското коло со вака пресметаните вредности за елементите и избран операциски засилувач LM358P, беше симулирано во NI Multisim (види слики 2.11 и 2.12). 𝑉0 𝑚𝑎𝑥 ≥ 𝑅 𝑏5 𝑅 𝑏4 Δ𝑉12 𝑚𝑎𝑥 (2.50) 𝑅 𝑏5 𝑅 𝑏4 ≤ 𝑉0 𝑚𝑎𝑥 Δ𝑉12 𝑚𝑎𝑥 = 5 1,08 = 4,63 (2.51) 𝑅 𝑏4 = 10 𝑘Ω → 𝑅 𝑏5 ≤ 46,3 𝑘Ω (2.52) 𝑅 𝑏5 = 43 𝑘Ω (2.53) 2.11 Елекронско коло за мерење температура при 0°𝐶 (симулација Multisim) 2.12 Елекронско коло за мерење температура при 120°𝐶 (симулација Multisim)
  • 25. 23 Вредноста на отпорникот 𝑅 𝑏5, согласно податоците добиени од симулацијата, е променета да изнесува 47 𝑘Ω, при што се овозможува поголемо искористување на мерното подрачје. Сепак вредноста 47 𝑘Ω е поблиску до 46,3 𝑘Ω, теоретски добиениот максимум, од 43 𝑘Ω, но не премногу висока за да предизвика проблеми за аналогниот влез на Arduino-то. Конечните вредности на отпорниците од колото на термоотпорникот се: 𝑅 𝑏1 = 1,4 𝑘Ω, 𝑅 𝑏2 = 1,4 𝑘Ω, 𝑅 𝑏3 = 0,8 𝑘Ω, 𝑅 𝑏4 = 10 𝑘Ω, 𝑅 𝑏5 = 47 𝑘Ω Функционална зависност на отпорот на термоотпорникот од измерениот напон V0 Од релацијата (2.35) се добива: Разликата Δ𝑉12 се изразува преку релациите (2.38) и се добива: Со замена на изразот (2.55) во (2.54) се добива: На крајот се добива зависност на отпорот на термоотпорникот во функција од напонот 𝑉0 што доаѓа на аналогниот влез на Arduino-то. Со замена на (2.60) во (2.17) програмски се пресметува тековната температура на смесата. 𝑉0 = − 𝑅5 𝑅4 (𝑉2 − 𝑉1) = 𝑅5 𝑅4 (𝑉1 − 𝑉2) = 𝑅5 𝑅4 Δ𝑉12 (2.54) Δ𝑉12 = 𝑉𝐶𝐶 [ 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 − 𝑅 𝑇 𝑅 𝑇 + 𝑅 𝑏1 ] (2.55) 𝑉0 = 𝑅5 𝑅4 𝑉𝐶𝐶 [ 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 − 𝑅 𝑇 𝑅 𝑇 + 𝑅 𝑏1 ] (2.56) [ 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 − 𝑉0 𝑉𝐶𝐶 𝑅 𝑏4 𝑅 𝑏5 ] (𝑅 𝑇 + 𝑅 𝑏1) − 𝑅 𝑇 = 0 (2.57) 𝑅 𝑏1 [ 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 − 𝑅 𝑏4 𝑅 𝑏5 𝑉0 𝑉𝐶𝐶 ] + 𝑅 𝑇 [ 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 − 𝑅 𝑏4 𝑅 𝑏5 𝑉0 𝑉𝐶𝐶 − 1] = 0 (2.58) 𝑅 𝑏1 [ 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 − 𝑅 𝑏4 𝑅 𝑏5 𝑉0 𝑉𝐶𝐶 ] = 𝑅 𝑇 [1 + 𝑅 𝑏4 𝑅 𝑏5 𝑉0 𝑉𝐶𝐶 − 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 ] (2.59) 𝑅 𝑇(𝑉0) = 𝑅 𝑏1 [ 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 − 𝑅 𝑏4 𝑅 𝑏5 𝑉0 𝑉𝐶𝐶 ] [1 + 𝑅 𝑏4 𝑅 𝑏5 𝑉0 𝑉𝐶𝐶 − 𝑅 𝑏3 𝑅 𝑏2 + 𝑅 𝑏3 ] −1 (2.60)
  • 26. 24 2.1.6.2.3. Електрично коло за мерење на јачина на електрична струја Со цел да се добие податок за тековната потрошувачка на моќност од системот, потребно е да се знае вредноста на јачината на струјата што тече низ колото, како и вредноста на напојувањето. Потоа тековната моќност се пресметува со: За напојување се користи стабилен напонски извор од 12 V, така што единствена непозната величина е јачината на струјата за чие мерење се користи шемата на слика 2.13. Струјата I поминува низ паралелно врзаните отпорници Rsh и на нив се појавува пад на напон кој потоа со диференцијален операциски засилувач се засилува. Односот на отпорниците Rsh2 и Rsh1 се одредува така што при максимално очекуваната струја I, VO ќе изнесува не повеќе од 5 V. Најголем потрошувач на електрична енергија во системот е електричниот мотор кој, според изразот (2.26), при вклучување влече максимална струја од 8 A. Земајќи го ова предвид, се претпоставува дека низ системот нема да протече струја со поголема јачина од 12 A и согласно тоа се димензионираат отпорниците кај ДОЗ. Падот на напон на паралелно поврзаните отпорници се пресметува според Омовиот закон: 𝑃 = 𝑈 ∗ 𝐼 (2.61) 2.13 Електонско коло за мерење на јачина на електрична струја
  • 27. 25 𝑉12 = 𝐼 ∗ 𝑅 𝑠ℎ 2 = 12 ∗ 0,1 2 = 0,6 𝑉 (2.62) Вредноста на напонот VO треба да е помала од 𝑉𝑜 𝑚𝑎𝑥 = 5 𝑉, поради ограничувањата на пиновите на Arduino-то, и користејќи го изразот (2.35) во кој наместо R1 и R2, се заменуваат соодветно Rsh1 и Rsh2 се добива: 𝑉0 𝑚𝑎𝑥 ≥ 𝑅 𝑠ℎ2 𝑅 𝑠ℎ1 𝑉12 (2.63) 𝑉0 𝑚𝑎𝑥 𝑉12 ≥ 𝑅 𝑠ℎ2 𝑅 𝑠ℎ1 (2.64) 𝑅 𝑠ℎ2 ≤ 𝑅 𝑠ℎ1 𝑉0 𝑚𝑎𝑥 𝑉12 = 𝑅 𝑠ℎ1 5 0,6 = 8, 3̅ ∗ 𝑅 𝑠ℎ1 (2.65) За 𝑅 𝑠ℎ1 се зема вредност од 10 𝑘Ω и заменувајќи ја во релацијата погоре се добива: 𝑅 𝑠ℎ2 ≤ 83, 3̅ kΩ (2.66) Па како конечни вредности за отпорниците Rsh1 и Rsh2 се земаат: 𝑅 𝑠ℎ1 = 10𝑘Ω, 𝑅 𝑠ℎ2 = 82 𝑘Ω Од изразите (2.44) и (2.35) се добива функционалната зависност на струјата I од напонот VO: 𝐼(𝑉0) = 2 𝑅 𝑠ℎ1 𝑅 𝑠ℎ 𝑅 𝑠ℎ2 ∗ 𝑉0 = 2,44 𝑉0 (2.67) Чувствителноста на мерачот на јачина на електрична енергија изнесува: 𝑠 = 𝑉0 𝐼 = 𝑅 𝑠ℎ 𝑅 𝑠ℎ2 2 𝑅 𝑠ℎ1 = 0,41 𝑉/𝐴 (2.68) Бидејќи Arduino-то има 10-битен A/D конвертор, вредноста на напонот од 5 V се преведува во број од 0 до (210 − 1), што значи дека има резолуција од: 𝑟𝑒𝑧𝑉0 = 𝑉0 𝑚𝑎𝑥 210 = 5 1024 = 4,88 𝑚𝑉 (2.69) Ако од изразот (2.68) се изведе струјата во функција од напонот и наместо напонот се замени rezVo се добива резолуцијата на мерење на јачина на електрична струја и изнесува: 𝑟𝑒𝑧𝐼 = 𝑟𝑒𝑧𝑉0 𝑠 = 4,88 0,41 ∗ 103 = 11,9 𝑚𝐴 (2.70)
  • 28. 26 2.1.6.2.4. Електрично коло за контрола на сирена За потребите на звучна сигнализација избрана е работи на напон од 12 V и повлекува струја од 150 mA. За контрола на истата искористен е MOSFET IRL640. Шемата е дадена на слика 2.14. Отпорникот Rm е pull-down отпорник чија функција е да го одржува потенцијалот на гејтот од MOSFET-от на 0 V кога од Arduino-то не дава никаков сигнал. Вредноста на 𝑅 𝑚 = 10 𝑘Ω. Отпорникот Rs функционира како заштита на дигиталниот пин од Arduino- то, во случај на прегорување на MOSFET-от. Вредноста на 𝑅 𝑚 = 1,5 𝑘Ω. 2.1.6.2.5. Електрично коло за отчитување на индуктивното сетило За потребите на системот за мерење на брзина, користено е индуктивно сетило тип PRD12-8DP, PNP и е напојувано со 12 V. Во случај до индуктивното сетило да се приближи метален објект, тоа ќе реагира така што ќе вклучи 12 V на неговиот NO излез, а кога во близина нема метален објект – NO излезот виси од страната на сетилото. Со цел, до дигиталниот влез на Arduino-то да се носи сигнал од 0 V и од 5 V, се користи отпорнички делител како во шемата на слика 2.15. Вредностите за отпорниците 𝑅𝑖𝑠1 и 𝑅𝑖𝑠2 се добиваат тргнувајќи од напонските ограничувањата на дигиталниот влез на Arduino-то (2.71), како и фактот што Arduino-то сигналите со повисока вредност од 3 V ги смета за HIGH [6], па со отпорничкиот делител треба да се обезбеди при напон на влез од 12 V, вредноста на 𝑉𝑖𝑛 да не биде под 3 V. 𝑉𝑖𝑛 ∈ [0, 5] 𝑉 (2.71) 𝑉𝑖𝑛 𝐻𝐼𝐺𝐻 ∈ [3, 5] 𝑉 (2.72) 2.15 Електронско коло за отчитување индуктивно сетило 2.14 Електронско коло за контрола на сирена
  • 29. 27 Вредноста за 𝑉𝑖𝑛 се пресметува со отпорнички делител, земајќи предвид дека гранката со отпорниците е напојувана со 𝑉𝐶𝐶 = 12 𝑉 кога сетилото е во позиција вклучено. Од (2.73) и горните ограничувања од (2.71) се добива: Се избира вредност за 𝑅𝑖𝑠2 = 22 𝑘Ω и, согласно изразот (2.78), 𝑅𝑖𝑠1 ≥ 30,8 𝑘Ω. Прва стандардна вредност за отпорници поголема од 30,8 𝑘Ω е 33 𝑘Ω, па конечно се зема дека 𝑅𝑖𝑠1 = 33 𝑘Ω. Со замена на овие вредности во (2.73) се добива 𝑉𝑖𝑛 = 4,8 𝑉, што е во интервалот (2.72) и електронското коло е добро димензионирано. 2.1.6.2.6. Електронски кола за контрола на LED и за отчитување состојба на копчиња LED-овите се контролираат директно преку соодветните дигитални пинови на Arduino- то, со тоа што се додава отпорник RLED = 680 Ω сериски на диодата со цел да се ограничи струјата што протекува низ тоа коло за да не премине вредност од 20 mA. (види слика 2.16) 𝑉𝑖𝑛 = 𝑉𝐶𝐶 𝑅𝑖𝑠2 𝑅𝑖𝑠1 + 𝑅𝑖𝑠2 (2.73) 5 ≥ 𝑉𝑖𝑛 = 𝑉𝐶𝐶 𝑅𝑖𝑠2 𝑅𝑖𝑠1 + 𝑅𝑖𝑠2 (2.74) 𝑅𝑖𝑠1 + 𝑅𝑖𝑠2 𝑅𝑖𝑠2 ≥ 𝑉𝐶𝐶 5 (2.75) 𝑅𝑖𝑠1 𝑅𝑖𝑠2 + 1 ≥ 𝑉𝐶𝐶 5 (2.76) 𝑅𝑖𝑠1 ≥ ( 𝑉𝐶𝐶 5 − 1) 𝑅𝑖𝑠2 = ( 12 5 − 1) 𝑅𝑖𝑠2 (2.77) 𝑅𝑖𝑠1 ≥ 1,4 𝑅𝑖𝑠2 (2.78) 2.16 Електронско коло за контрола на LED 2.17 Електронско коло за отчитување на копче
  • 30. 28 Копчињата играат улога на прекинувачи во соодветните електронски кола така што, кога копчето ќе биде притиснато се затвора прекинувачот и на дигиталниот влез на Arduino- то доаѓа напон од 5 V, додека кога прекинувачот е отворен, т.е. копчето не е притиснато, на дигиталниот влез преку pull-down отпорникот, 𝑅 𝑘, се носи потенцијал од 0 V. (види слика 2.17). Вредноста на отпорот на отпорниците 𝑅 𝑘 = 10 𝑘Ω, па струјата што ќе протече низ колото при притиснато копче изнесува 0,5 mA и е далеку помала од ограничувањето за пиновите. 2.1.6.2.7. Дизајнирање на електронската плочка за пренос на сигнали во Altium Designer Сите електрични кола што се дел од електронската плочка за пренос на сигнали, шематски се цртаат во Altium Designer. На слика 2.18 се прикажани конекциите помеѓу елементите. Откако шематски се поврзаа сите елементи на плочката, се продолжува со просторно распоредување и поврзување на истите. Дебелината на сите водови беше земено да изнесува 1 mm, освен на водовите на колото за контрола на моторот низ кои течат поголеми струи, па дебелината беше нагодена 2.18 Шема на електронската плочка за пренос на сигнали во Altiun Designer 2.19 Просторна поставеност и поврзување на електронските елементи на плочката за пренос на сигнали во Altium Designer
  • 31. 29 на 2 mm. Минимално дозволеното растојание помеѓу водовите беше нагодено на 0,5 mm и следејќи ги овие ограничувања шемирана беше плочката за пренос на сигнали (види слика 2.19). Димензиите на конечната верзија испаднаа 70 mm должина и 72 mm ширина. Откако ова беше завршено, шемата се испечати на мрсна хартија во размер 1:1 (види слика 2.20). Потоа, се отсече бакарна плочка на потребните димензии, бакарниот слој убаво се исчисти и исуши, врз него се постави печатената мрсна хартија и 15-тина минути се загреваше со електрична пегла на температура од 180°𝐶, доволна за тонерот од хартијата да се прелепи на бакарот без да се разлее. Хартијата целосно беше отстранета со внимавање линиите на плочката што помалку да се оштетат, со маркер беа поправени местата на кои тонерот не се залепил или бил оштетен, па плочката беше потопена во смеса од хлороводородна киселина и хидроген. Откако откриените делови од бакарниот слој целосно се отстранија од плочката, истата беше извадена од растворот, се исплакна, па тонерот се 2.20 Плочка за пренос на сигнали (размер 1:1) 2.21 Испечатена плочка за пренос на сигнали 2.22 Завршена плочка за пренос на сигнали
  • 32. 30 отстрани (слика 2.21). Потоа, на неа беа залемени електронските елементи и се доби конечната верзија (слика 2.22). 2.2. Софтвер Со изработката на електронската плочка за пренос на сигнали се отвори можноста за комуникација со сетилата, како и контрола на механичкиот систем од страна на Arduinoто – и веќе се започна со изработка на програмата што ќе го автоматизира процесот мешање. Програмата треба да ги има следните карактеристики: - можност за автоматска контрола на брзината на вртење на мешалката согласно тековната температура; - можност за рачна контрола на брзината на вртење на мешалката користејќи копчиња; - звучна сигнализација во случај на прегревање или паѓање на температурата под одредена вредност; - автоматска работа на мешалката – наизменично вклучување и исклучување на вртењето во периоди согласно претходно зададена програма; - преглед на тековната температура на смесата; - преглед на тековната брзина на вртење на мешалката; - мерење и евиденција на потрошувачката на системот; - пресметка на потрошена енергија и економски трошоци за истата; - контрола на процесот преку компјутер. Кодот беше изработен на платформата LabVIEW користејќи графички програмски јазик (G). На слика 2.40 е прикажана контролната табла (КТ) којашто е поделена на два дела. Во горната половина на КТ се наоѓаат индикатори на кои се прикажани одредени тековни параметри на системот, како тековна температура, тековна брзина, графичка симулација на тековната брзина, вредност на поставена потребна брзина, тековна потрошувачка, потрошена енергија до тековниот момент, цена на чинење на енергијата во моментот согласно тарифата, потрошена енергија во период на висока тарифа (ВТ), потрошена енергија во период на ниска тарифа (НТ), виртуелни LED, но и четири копчиња за управување кои се виртуелни еквиваленти на физичките копчиња. Физичките копчиња низ кодот се означувани со: BTNONOFF, BTNM, BTNMz и BTNMu. Накусо, преку вклучување/исклучување на BTNONOFF, системот почнува/завршува со
  • 33. 31 работа. Копчето BTNM служи за рачно управување со состојбата на моторот, додека останатите две копчиња се за рачна контрола на брзината на вртење или за преод од еден во друг режим на работа, за што ќе се зборува подоцна. На слика 2.41 е дијаграмот на кодот и на неа може да се видат блоковите на користените подвиртуелни инструменти (ПВИ), како и „протокот на податоци“ што се одвива помеѓу нив – претставен преку линии. За подобро да се разберат останатите елементи на контролната табла, прво ќе се разработи дијаграмот и карактеристиките на користените ПВИ. Управувањето на Arduino-то се врши користејќи го пакетот „LINX“ кој содржи ПВИ специјализирани за таа намена. Со цел програмата да ги има сите карактеристики набројани погоре, изработени беа повеќе ПВИ кои извршуваат посебни функции. 2.2.1. Подвиртуелни инструменти (ПВИ) ПВИ-то „razlika.vi“ (слика 2.23) на влез добива две променливи од тип unsigned long и ја пресметува разликата помеѓу нив. Се користи за пресметка на период во ms помеѓу два момента. ПВИ-то „LED.vi“ (слика 2.24) се користи за управување на LED, со тоа што на влез добива Boolean SvetiLi за тоа дали LED-то со дадена „boja“ треба да свети или не. Во случај да има промена на состојбата на LED, се повикува ПВИ „Digital Write“ за запишување на дигитален сигнал што е дел од LINX-пакетот. Ова се прави со цел да се заштеди времето потребно за извршување на дигитален запис, а бидејќи Arduino-to ја држи состојбата на пиновите на нивната последна зададена вредност – истото нема да влијае врз функционалноста на програмата. ПВИ-то „allLED.vi“ во себе содржи три ПВИ „LED.vi“ за секоја LED посебно, та на влез добива само три Boolean вредности за трите LED по редослед прикажан на слика 2.25. Т2 Т1 dT 2.23 ПВИ „razlika.vi“ SvetiLi boja Error In Error Out 2.24 ПВИ „LED.vi“ 2.25 ПВИ „allLED.vi“
  • 34. 32 ПВИ-то digChit.vi (слика 2.26) врши отчитување на состојбата на зададениот дигитален пин. ПВИ chitKop.vi (слика 2.27) врши отчитување на вредноста на физичкото и виртуелното копче, враќа информација за тековната состојба на копчето, но и за тоа дали истото комутирало или не. ПВИ-то sirena.vi (слика 2.28) на влез добива Boolean порменлива Sviri согласно која ја вклучува или исклучува сирената. Исто како и кај LED.vi, ПВИ-то врши запишување на дигитален сигнал само во случај да тековната состојба на сирената е различна од онаа што се задава. ПВИ-то motor.vi (слика 2.29) врши управување со факторот на исполнетост (Duty Cycle) на пинот на моторот со тоа што го нагодува на вредност зададена на неговиот влез. Од исти причини како претходно, „аналогното“ запишување се извршува доколку има промени од претходната негова вредност. Вредноста на факторот на исполнетост треба да биде нагодена како контролата на пинот на моторот да е Active-HIGH. Но, во случај електронското коло (види „Електрично коло за контрола на DC-мотор“ стр. 15) е направено така што пинот за контрола на моторот треба да биде поставен на Active-LOW како што е тука, на влез за „PWM set LOW?“ треба да се проследи вредност „true“, така што ПВИ ќе ја нагоди вредноста соодветно. ПВИ-то исто така води евиденција за тековната состојба на моторот, како и времето на негова последна комутација. ПВИ-то brzinoMetar.vi (слика 2.30) врши следење на состојбата на индуктивното сетило и го мери времето помеѓу две комутации. Потоа користејќи ја пресметува тековната брзина на вртење на начин објаснет во глава 2.1.4. Се смета дека доколку не се случи комутација во период 2.26 ПВИ „digChit.vi“ dBTNs 2.28 ПВИ „chitKop.vi“ 2.29 ПВИ „motor.vi“2.27 ПВИ „sirena.vi“ 2.30 ПВИ „brzinoMetar.vi“ 2.31 ПВИ „Тermometar.vi“
  • 35. 33 подолг од 6 секунди, што соодветствува на брзина од 5 врт/мин, тогаш системот е запрен и за тековна брзина се зема 0. Се пресметува аритметичка средина на последните 6 вака добиени вредности и таквиот податок се проследува на излез од ПВИ-то. ПВИ-то Termometar.vi (слика 2.31) врши мерење на напонот на аналогниот влез одреден за колото на температурното сетило, па согласно релациите (2.60) и (2.17) изведени во глава 2.1.6.2.2. се пресметува тековната температура. Мерењето се врши на секои 5 минути. ПВИ-то Tarifa.vi (слика 2.32) според времето и денот во седмицата одредува по која тарифа се наплатува електричната енергија (ВТ – висока тарифа 5,56 МКД/kWh, НТ – ниска тарифа 2,78 МКД/kWh) [7], па сите овие параметри ги проследува на излез. ПВО-то Multimer.vi (слика 2.33) на влез добива информација за тоа во која тарифа е енергијата што тековно се троши. Влезот „Vremenski interval“ одредува на колку секунди да се извршува мерењето на јачината на електрична енергија и во случај да не се поврзе никаква вредност на овој терминал, ПВИ зема вредност 5 секунди. ПВИ врши мерење на напонот на шантот и, како што е објаснето во глава 2.1.6.2.3, пресметува јачина на електрична струја, тековна потрошувачка во W, енергија потрошена во интервалот од 5 секунди, вкупно потрошена енергија, енергија потрошена само при ниска тарифа и енергија потрошена при висока тарифа. Исто така формира матрица на потрошувачка и време во секунди кога е измерена таа потрошувачка. Сите овие параметри ги проследува на неговиот излез. ПВИ-то MS.vi (слика 2.34) има единствена цел да управува со машината на состојби на системот. Предвидени се два режими на работа: автоматски режим на работа (АРР) и рачен режим на работа (РРР) коишто се разликуваат по тоа кој е оној што ја врши контролата на вклучување на моторот, како и неговата брзина за што ќе стане збор подоцна. Двава режима на работа заедно со состојба за започнување и состојба за 2.35 ПВИ „Programator.vi“ 2.34 ПВИ „MS.vi“ 2.33 ПВИ „Multimer.vi“ 2.32 ПВИ „Tarifa.vi“
  • 36. 34 завршување на програмата ја формираат машината на состојби. Истите се именувани соодветно со „INICIRANJE“, „ARR“, „RRR“ и „KRAJ“. MS.vi на влез добива кластер со вредности на виртуелните копчиња, како и податок за тековната температура. За време на неговото извршување, истиот врши отчитување на состојбите на физичките копчиња, па имајќи ги предвид отчитаните вредности, како и податоците добиени на влез, одлучува во која состојба да се премине во наредната итерација на главниот круг. Начинот на кој се носи одлука за промена на состојба користејќи ги копчињата е прикажан на слика 2.36. Исто така, во случај системот да е во РРР, а моторот е исклучен подолго од 5 минути за температури над 50°𝐶, односно 10 минути за температури под 50°𝐶, MS.vi ќе ја смени состојбата во АРР безразлика што ниту едно копче не е притиснато. ПВИ-то Programator.vi (слика 2.35) на влез добива повеќе параметри според кои носи одлука за вредноста на потребната брзина на вртење на моторот кон која системот треба да се прилагоди, за колку време моторот треба да биде вклучен, а колку исклучен – наизменично во ms. Programator.vi ова го прави преку отчитување на физичките и виртуелните копчиња или преку отчитување на потребната вредност од програматорската матрица ProgMatrix зависно од тоа во кој режим на работа е системот. Ако системот се наоѓа во РРР и копчето за вклучување на моторот, BTNM, е вклучено, тогаш со секое притискање на копчето за забрзување, BTNMz, потребната брзина се инкрементира за 5 врт/мин сѐ до максимална вредност од 30 врт/мин, додека со притискање на копчето за успорување, BTNMu, потребната брзина ќе се декрементира за 5 врт/мин сѐ до вредност 0. Вредностите за „Vreme iskliceno“ и „Vreme vkluceno“ се отчитуваат од програматорската матрица, но сепак не играат никаква улога во работата на системот во РРР. Вредноста за потребната брзина не се менува со притискање на копчињата за забрзување и 2.36 Управување со машината на состојби 2.37 Дифолт програматорска матрица
  • 37. 35 успорување во случај копчето за вклучување на моторот да е исклучено, тогаш истите служат исклучиво за менување на режимот на работа како што е објаснето на сликата 2.36. Во АРР, вредноста за потребната брзина се отчитува од програматорската матрица, за која ако не е зададено преку контролната табла, се зема дифолт матрицата прикажана на слика 2.37. Во првата редица на матрицата, се вредности на горните граници на интервалот на температура, па programator.vi прво проверува во која колона е интервалот во кој се наоѓа тековната температура. Потоа, за потребна брзина ја зема вредноста во втората редица на истата колона. Во третата редица е зададена процентуална вредност од интервал Тт во кој моторот треба да биде вклучен, па така времињата за вклученост/исклученост се пресметуваат така што бројот од третата редица на истата колона се множи со 0,01, па со временскиот интервал Тт што изнесува 5 минути претворени во ms за температури над 50°𝐶, а за температури под 50°𝐶 – 10 минути. ПВИ-то driverM.vi (слика 2.38) на влез добива податоци за потребната брзина на вртење на моторот во врт/мин, тековната брзина на вртење, како и незадолжителни параметри Epsilon и dPWM кои по дифолт изнесуваат 10 и 5 соодветно. Целта на овој ПВИ е да ја нагоди вредноста на факторот на исполнетост таква што тековната брзина на вртење на моторот биде во интервалот [potBrz*(1-Epsilon/100), potBrz*(1+Epsilon/100)]. Во случај тековната брзина да биде вон овој интервал, ПВИ врши корекција на факторот на исполнетост за вредност од dPWM во позитивна или негативна насока зависно потребата. Кога вредноста ќе биде коригирана, ПВИ нема да изврши нова корекција сѐ дури не измине време пресметано според релацијата (2.20) што е објаснето во глава 2.1.4. Во случај на вклучување на моторот се зема почетна вредност за факторот на исполнетост на 35%, а при исклучување веднаш се зема вредност 0. Ваквата корекција се прави така што се претпоставува дека моторот е контролиран од Active-HIGH сигнал и како таква вредноста се проследува понатаму. ПВИ motor.vi, како што е објаснето погоре, врши нагодување на вредноста земајќи предвид со каков сигнал е контролиран моторот. Вредностите за Epsilon и dPWM можат да се нагодат и од контролната табла. 2.39 ПВИ „ GrafSimBrz.vi “2.38 ПВИ „driverM.vi“
  • 38. 36 ПВИ GrafSimBrz.vi (слика 2.39) на влез добива информација само за тековната брзина на вртење во врт/мин, па врши симулација и графички приказ на физичкото вртење на мешалката. Истото е изведено користејќи XY графа со вредности за X од -1* 10-5 и 1* 10-5, а вредностите на Y пресметани според формулата 𝑦𝑖 = 𝑥 ∗ tan(θi−1 + ω ∗ Δt) , 𝜃𝑖 = θi−1 + ω ∗ Δt (2.79) Каде што: - агол во rad што го зафаќа правата y во претходна итерација - 𝜃𝑖−1 - тековна брзина во rad/s - 𝜔 - време изминато од последното повикување на ПВИ во секунди - Δ𝑡 Вака добиените вредности по пребришување на графикот се цртаат на графа на секое извршување на ПВИ-то. На овој начин успешно се симулира вртењето на мешалката во реално време.
  • 39. 37 2.40 Контролна табла на програмата во LabVIEW
  • 41. 39 2.2.2. Дијаграм на главниот код Дијаграмот на главниот код е прикажан на слика 2.41. Со самото стартување на програмата се воспоставува комуникација помеѓу компјутерот и Arduino-то преку отворање на сериска комуникација со ПВИ означен со (1) на слика 2.41. На влез ПВИ (1) добива празен кластер на грешка и информација на кој сериски порт е приклучено Arduino-то. Во случај на излезот од ПВИ (1) да се добие информација дека настанала грешка (true), статусот се инвертира во false и се извршува кодот на истоимениот случај на Case- структурата (слика 2.42). Се продолжува до ПВИ (18) кој ја затвора комуникацијата и со тоа завршува програмата. Најчеста причина за појава на грешка тука е физичката неповрзаност на Arduino-то со компјутерот, поставување погрешен сериски порт на влез на ПВИ (1) или неинсталирани драјвери. Откако успешно ќе се воспостави комуникацијата, се извршува кодот на случајот „true“ од Case-структурата како што е и прикажано на слика 2.41. Пред да се влезе во „главниот круг“ сите дигитални излези со ПВИ (2) се поставуваат на исклучено, освен дигиталниот излез со кој се контролира електричниот мотор – тој се поставува на вклучено со цел моторот да биде исклучен (види „Електрично коло за контрола на DC-мотор“ стр. 15). Со влегувањето во прва итерација на главниот круг програмата е успешно стартувана. До структурата „Машина на состојби“ се носи кластер вредности отчитани од виртуелните копчиња на контролната табла (слика 2.41 (3)), како и вредност за состојба од претходна итерација (што за нулта итерација е INICIRANJE). Ако системот се наоѓа во состојбата „INICIRANJE“ тогаш моторот и сирената се исклучуваат, додека црвената и зелената LED се вклучени. Ако по првпат системот се наоѓа во оваа состојба, се извршува кодот во структурата „прво извршување“ каде што се ажурираат вредностите за глобалните променливи за време, се проверува состојбата на индуктивното сетило и се чисти матрицата на вредностите на времето и измерената потрошувачка од претходното извршување на кодот. Понатаму, овој дел воопшто не се извршува сѐ додека кодот не биде рестартиран. 2.42 Грешка при воспоставување комуникација со Arduino-то - Дијаграм
  • 42. 40 Ако системот се наоѓа во состојбата „ARR“ тогаш се извршува кодот од Case- структурата прикажан на слика 2.43. На влез се сигнализира со запалување на зелена LED дека системот се наоѓа во АРР, па потоа се извршува ПВИ programator.vi (слика 2.43 (1)) кој согласно тековната температура одлучува за вредноста на потребната брзина, како и за времето на вклученост/исклученост на моторот. До операторот за споредување поголемо или еднакво, се носи вредноста на времето на вклученост или исклученост зависно тековната состојба на моторот и вредност за изминато време од последна комутација на моторот (слика 2.43 (2)). Ако времето на вклученост/исклученост е поголемо од изминатото време, моторот останува во таа состојба во која е и тоа е изведено со проследување на соодветната вредност за потребната брзина во состојбата „true“ на структурата „Не поминало времето?“ (слика 2.43 (3)). Во спротивно, моторот ќе треба да ја смени својата состојба, па извршувајќи го кодот од состојбата „false“ на истата структура, се проследува вредност за потребна брзина предодредена за спротивната состојба на тековната на моторот. Понатаму, при извршување на ПВИ motor.vi оваа промена ќе биде забележана и глобалните променливи за тековната состојба на моторот, заедно со времето на последна комутација на истиот ќе бидат ажурирани, така што во наредна итерација нема да настане повторна промена на состојбата сѐ додека потребното време не е поминато. Вредноста за потребната брзина се проследува до ПВИ driverM.vi (слика 2.43 (4)) и тој истата ја преведува во вредност за факторот на исполнетост и ја проследува до ПВИ motor.vi. На крајот од состојбата АРР на структурата „Машина на состојби“ се извршува ПВИ alarm.vi (слика 2.43 (5)) што алармира доколку температурата надмине одредена граница или почнува да паѓа. 2.43 Дијаграм на код за АРР
  • 43. 41 Ако системот се наоѓа во состојба „RRR“ се извршува кодот прикажан на дијаграмот на сликата 2.44. Овој код се разликува од кодот за „ARR“ само по начинот на кој се одлучува дали моторот да се вклучи или не. Истото се извршува со ПВИ chitKop.vi што ја отчитува состојбата на копчето за вклучување на моторот, BTNM, и во случај да е вклучено, до driverM.vi се проследува вредноста на потребната брзина на вртење од programator.vi, а доколку е исклучено – се проследува вредност 0. Сигнализацијата за РРР се прави со вклучување на жолтата LED. Ако системот се наоѓа во состојба „KRAJ“, тогаш се извршува кодот прикажан на дијаграмот на сликата 2.45. Сигнализацијата се прави со вклучување на црвена LED додека моторот и сирената се исклучуваат. 2.45 Дијаграм на код за РРР 2.44 Дијаграм на код за КРАЈ