ERK 2019 Portorož, Slovenija, 23. - 24. september 2019 Zbornik osemindvajsete mednarodne Elektrotehniške in računalniške konference ERK 2019 Proceedings of the Twenty-eighth International Electrotechnical and Computer Science Conference ERK 2019 Vabljena predavanja / Invited Lectures Elektronika / Electronics Telekomunikacije / Telecommunications Multimedija / Multimedia Avtomatika in robotika / Automatic Control and Robotics Modeliranje in simulacija / Modelling and Simulation Močnostna elektrotehnika / Power Engineering Merilna tehnika / Measurement - ISEMEC 2019 Akustika in elektroakustika / Acoustics and Electroacoustics Računalništvo in informatika / Computer and Information Science Razpoznavanje vzorcev / Pattern Recognition Biomedicinska tehnika /Biomedical Engineering Didaktika / Didactics Študentski članki / Student Papers Uredila / Edited by Andrej Žemva, Andrej Trost ISSN 2591-0442 (online) Slovenska sekcija IEEE / Slovenian Section IEEE 2591-0442 (online) Zbornik osemindvajsete Elektotehniške in računalniške konference ERK 2019, 23. - 24. september 2019, Portorož, Slovenija Proceedings of the Twenty-eighth Electrotechnical and Computer Science Conference ERK 2019, 23 - 24 September 2019, Portorož, Slovenia Vabljena predavanja; Elektronika; Telekomunikacije; Avtomatika in robotika; Modeliranje in simulacija; Močnostna elektronika; Merilna tehnika - (ISEMEC) Akustika in elektroakustika Računalništvo in informatika / Computer and Information Science Razpoznavanje vzorcev Biomedicinska tehnika Didaktika Študentski članki Pri organizaciji Elektrotehniške in računalniške konference so sodelovala naslednja društva: Društvo avtomatikov Slovenije, Slovensko društvo za merilno-procesno tehniko (ISEMEC), SLOKO-CIGRE, Društvo za medicinsko in biološko tehniko Slovenije, Slovensko društvo za umetno inteligenco, Slovensko društvo za razpoznavanje vzorcev, Slovensko društvo za simulacije in modeliranje. Slovenska sekcija IEEE Fakulteta za elektrotehniko v Ljubljani ii Sporočilo predsednika konference v imenu Organizacijskega odbora imam prijetno dolžnost, da Vas ponovno pozdravim tokrat že na osemindvajseti Elektrotehniški in računalniški konferenci - ERK 2019. Konferenca bo potekala od 23. do 24. septembra 2019 v hotelu Bernardin, v Portorožu v Sloveniji. Konferenca ERK se je utrdila kot vsakoletno srečanje strokovnjakov na elektrotehniškem in računalniškem področju. Pod okriljem Slovenske sekcije IEEE združuje enkrat letno interese velikega števila strokovnih društev, ki skrbijo za program konference na svojih delovnih področjih. Tudi letošnje srečanje ERK 2019 naj bo mozaik, sestavljen iz mnogih drobnih, ozko usmerjenih strokovnih srečanj, ki bodo kvalitetna; skupno dogajanje pa bo omogočalo mnoga interdisciplinarna srečanja in obisk vabljenih predavanj, zanimivih za širši krog poslušalcev. Zanimanje za srečanje je že 28 let. Tako vidimo, kako potrebujemo nek forum, kjer lahko naši raziskovalci predstavijo strokovnemu krogu svoje delo, ga primerjajo z drugimi prispevki in dobijo kritične pripombe in ustvarjalne nasvete za nadaljnje delo. Na ta način poročevalec dograjuje svoje delo in spozna skupine in posameznike za sodelovanje. Mladi avtorji vadijo nastop v sredini, kjer živijo, kjer se želijo uveljaviti. Pri tem pa vsi skupaj razvijamo tudi slovensko tehniško besedo, zato se slovenskemu jeziku na konferenci nismo odpovedali. Skupno si prizadevamo, da ostaja ta jezik tudi naš dopoldanski jezik v službi, na delovnem mestu. Program konference smo razdelili na 11 strokovnih področij, poleg treh vabljenih predavanj in štirih študentskih prispevkov, je v posameznih sekcijah razvrščenih 81 predstavitev. Vabljena predavanja smo postavili kot plenarna predavanja. Ker takrat posameznih sekcij ni, se lahko teh predavanj udeležimo vsi. Pričakujemo velik interes udeležencev in plodno razpravo z uglednimi predavatelji iz Slovenije in tujine. V osemindvajsetih letih je bilo predstavljenih 173 vabljenih predavanj, 277 študentskih prispevkov in 5223 rednih prispevkov. Nagrajena študentska dela so bila podlaga za vsakoletna IEEE študentska tekmovanja v regiji 8 (Evropa, večji del Azije in Afrika), kjer so naši študenti dobili štiri prva mesta, nagrado za najboljšo tehnično predstavitev, pet drugih mest in eno tretje mesto. ERK je zibelka študentskih uspehov. Razpored referatov in vsi prispevki so dostopni na spletni strani https://erk.fe.uni-lj.si/2019/program.php. Andrej Žemva Baldomir Zajc Predsednik konference Častni predsednik konference iii Organizatorji / Organizers • Slovenska sekcija IEEE • Fakulteta za elektrotehniko, Univerza v Ljubljani Strokovna društva Pri delu posameznih konferenčnih sekcij sodelujejo naslednja strokovna društva: • Društvo avtomatikov Slovenije, • Slovensko društvo za merilno-procesno tehniko (ISEMEC 2019), • SLOKO–CIGRE, • Društvo za medicinsko in biološko tehniko Slovenije, • Slovensko društvo za umetno inteligenco, • Slovensko društvo za razpoznavanje vzorcev, • Slovensko društvo za simulacijo in modeliranje. iv Konferenčni odbori / Board Predsednik konference / Conference Chairman Andrej Žemva Podpredsednik konference / Conference Vicechairman Matej Zajc Predsednik program. odbora / Program Committee Chairman Janko Drnovšek Predsednik odbora za tisk / Publications Chairman Andrej Trost Častni predsednik konference / Honorary Conference Chairman Baldomir Zajc Programski odbor / Programe Committee Dušan Agrež Vanja Ambrožič Maja A. Kunc Tadej Bajd Boštjan Batagelj Genevieve Baudoin Sašo Blažič Zmago Brezočnik Franc Brglez Patricio Bulić Urban Burnik Emilio Corchado Matjaž Debevc Carl Debono Marko Delimar Simon Dobrišek Janko Drnovšek Iztok Fajfar Peter Farkaš Matjaž Gams Gregor Geršak Bernard Grum Jože Guna Iztok Humar Franc Jager Marko Jagodič Roman Kamnik Maharatna Koushik Stanislav Kovačič Igor Kuzle Andrea M. Tonello Alenka M. Lebar Rok Mandeljc France Mihelič Damijan Miklavčič Miro Milanovič Josef Modelski Aljo Mujčić David Nedeljković Nataša Nešković Igor Papič George Paunović Janez Perš Vili Podgorelec Matevž Pogačnik Franc P. Antoncich Igor Pušnik Kurt Richter Radovan Sernec Danijel Skočaj Franc Solina Janez Sterle Nermin Suljanović Igor Škrjanc Sebastijan Šprager Vitomir Štruc Fabio Tosato Andrej Trost Anton Umek Danijel Vončina Matej Zajc Aleš Zamuda Damjan Zazula Borut Zupančič Borut Žalik Andrej Žemva v Recenzenti / Reviewers Amina Alić Vanja Ambrožič Zdešar Andrej Marko Avberšek Boštjan Batagelj Gaber Begeš Sašo Blažič Borko Bošković Borja Bovcon Urban Burnik Saul Calderon Ramirez Luka Čehovin Zajc Vončina Danjel Igor Dejanovič Matjaž Divjak Jani Dugonik Žiga Emeršič Simon Erjavec Aljaž Frančič Helena Gabrijelčič Tomc Gregor Geršak Godena Giovanni Karer Gorazd Sebastjan Gorecki Timotej Gruden Jože Guna Aleš Holobar Grega Jakus Tomaž Jarm Francisco Javier Bellas Bouza Tomaž Javornik Roman Kamnik Rihard Karba Matej B. Kobav Bor Kos Peter Kramar Matej Kranjc Angel Pedrero Janez Podobnik Matevž Pogačnik Franc Policardi Abraham Prieto Garcı́a Matej Rabzelj Matej Reberšek Alejandro Romero Montero Danijel Skočaj Strmčnik Stanko Diego Sušanj Rajko Svečko Božidar Šarler Martin Šavc Sebastjan Šlajpah Matej Štefanič Domen Tabernik Andrej Trost Luka Varga Tomaž Vrtovec Aleš Zamuda Borut Zupančič Andrej Žemva Leon Žlajpah Matevž Kunaver Kihoon Kwon Henrik Lavrič Vito Logar Zvezdan Lončarević Alenka Maček Lebar Blaž Meden Marko Meža Peter Miklavčič Petar Milić Tomi Mlinar David Nedeljković Muškinja Nenad vi Sekc./Sect. VP Vabljena predavanja / Invited Papers 1 Pulsed Power Applications to Biomedical Engineering: Background and Possibilities Probed Through Model Based Simulations P. Joshi Ravi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NEMO-HD Microsatellite - Technical Solution for Interactive Earth Observation Mission Hubert Fröhlich, Tomaž Rodič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 3 From invention to high-tech commercial product Roman Kužnar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sekc./Sect. EL Elektronika / Electronics 5 Upgrading the Management of Electronic Systems in a Passenger Car Josip Sušec, Ernest Gungl, Zmago Brezočnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Simple and Low-Cost Electronic System for Honey Bee Counting Mitar Simić, Vanja Starčević, Nikola Kezić, Zdenka Babić . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Vhodno–izhodna krmilniška kartica Jaka Koren, Andrej Trost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Sekc./Sect. TC Telekomunikacije / Telecommunications 18 Prenosni avtonomni registrator z lokalno obdelavo podatkov in brezžičnim prenosom Miha Horvat , Boštjan Vlaovič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Sistem za nadzor dimniških požarov Aljaž Gaber, Boštjan Vlaovič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Overview and test of on-premise open-source and online proprietary collaboration systems for establishing IT business environment in small and medium-sized companies. Matej Rabzelj, Aljaž Martinčič, Tjaša Jereb, Andrej Kos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4 6G ali kje so meje pete generacije Tomi Mlinar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Device positioning and location-aware communications Klemen Bregar, Aleš Švigel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Testing the interoperability of the joint scheduling and routing algorithm for IIoT applications Andrej Hrovat, Gregor Cerar, Gordana Gardašević, Dragan Vasiljević, Tomaž Javornik . . . . . . . . . 40 31 Zakasnitve v modernih komunikacijah Tomi Mlinar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sekc./Sect. MM Multimedija / Multimedia 48 Vpliv načina interakcije informacijsko-komunikacijskega sistema vozila na varnost vožnje Tomaž Čegovnik, Jaka Sodnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Taktilno-vizualni uporabniški vmesnik za voznikov prevzem upravljanja vozila pri prekinitvi avtonomne vožnje Timotej Gruden, Matevž Hribernik, Erik Keš, Jaka Sodnik, Grega Jakus . . . . . . . . . . . . . . . . . . . . . . . . 53 Primerjava modalnosti interakcije v aplikaciji pametnega doma Luka Bezovšek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Uporaba Video over IP tehnologij in zaščita Žana Juvan, Matevž Pogačnik, Klemen Pečnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Načrtovanje interaktivnega pametnega smetnjaka Gregor Burger, Marko Uhan, Jože Guna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii 44 57 61 65 Sekc./Sect. AR Avtomatika in robotika / Automatic Control and Robotics 69 Optimal velocity profile planning considering velocity, acceleration and jerk constraints Martina Loknar, Gregor Klančar, Sašo Blažič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Lokalizacija kolesnega mobilnega sistema na osnovi zaznavanja posebnih značk s stereo kamero Martin Anton Škoberne, Andrej Zdešar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Vibracijski mikrofluidni rotacijski motor na osnovi stebrička Suzana Uran, Matjaž Malok, Riko Šafarič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Razvoj in integracija sistema za regulacijo osvetljenosti prostora v okolju Internet stvari Gregor Jeromel, Grega Močnik, Marjan Golob . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Dogodkovno proženje regulatorja drsnega režima pozicionirnega sistema Andrej Sarjaš, Dušan Gleich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Learning-based local navigation in dynamic environments Matej Dobrevski, Danijel Skočaj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Dvoročni vadbeni sistem z robotom HapticMaster Janez Podobnik, Anže Stražar, Marko Munih, Matjaž Mihelj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Kalibracija nizkocenovnega robotskega manipulatorja Luka Čehovin Zajc, Anže Rezelj, Danijel Skočaj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Vijačenje s sodelujočim robotom Simon Erjavec, Sebastjan Šlajpah, Primož Vidmar, Marko Munih, Matjaž Mihelj . . . . . . . . . . . . . . . 102 Daljinsko vodenje robota z inercijskimi merilnimi enotami Jernej Puc, Gaja Žumer, Janez Podobnik, Marko Munih . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Combining Foot Placement Prediction with Obstacle Detection to Detect Tripping Urban Bobek, Elmar Rueckert, Marko Jamšek, Saša Barišić, Jan Babič . . . . . . . . . . . . . . . . . . . . . . . . . 110 Sekc./Sect. SM Modeliranje in simulacija / Modeling and Simulation 114 Numerična analiza vpliva temperature zraka v izdelovalnem prostoru na temperaturo površine kalupne votline pri brizganju plastike Kristjan Krebelj, Dragan Kusić, Dejan Antolovič, Anton Krebelj, Aleš Hančič . . . . . . . . . . . . . . . . . . 115 Povečanje konkurenčnosti proizvodnje električne energije s soobratovanjem fotonapetostne in konvencionalne elektrarne Grega Redek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 Zaznavanje manevrov pri voznikih Miloš Antić, Goran Andonovski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 Modeliranje estimacije kvalitativnih lastnosti vožnje Gregor Felzer, Uroš Sadek, Amor Chowdhury, Dalibor Igrec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Sekc./Sect. ME Močnostna elektrotehnika / Power Engineering 131 Vpliv višjih harmonskih komponent na magnetne lastnosti mehkomagnetnih materialov Marko Petkovšek, Peter Zajec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Zagotavljanje elektromagnetne združljivosti v elektroenergetskem objektu Urban Metod Peterlin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Brezžični prenos električne energije Rok Hodnik, Miha Šrekl, Selma Čorović, Damijan Miljavec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Reducing the Number of Solutions in the Unit Commitment Problem Using Variations with Repetition Izudin Softic, Nedžmija Demirović, Marina Pejić, Midhat Umihanić, Samed Bajrić . . . . . . . . . . . . . 144 Numerični izračun razporeditve koncentriranih navitij v električnih strojih Danilo Makuc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Brezsenzorska regulacija hitrosti enosmernega stroja Mitja Nemec, Yuge Zhao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii 136 148 152 Primerjalna analiza vplivov napajanja bremen z modificirano sinusno napetostjo in omrežno napetostjo Andraž Rihar, Denis Sušin, Klemen Drobnič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Zagon in preliminarno preizkušanje vodenja 2x3-faznega pogona Andraž Rihar, Mitja Nemec, Klemen Drobnič, Danjel Vončina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Ovrednotenje izgub v dušilki enosmernega presmernika Peter Zajec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Testiranje močnostne elektronike s fantomsko obremenitvijo Mitja Nemec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Sekc./Sect. MT Merilna tehnika / Measurement 172 Avtomatizacija stroja za kalibriranje sile z utežmi Tine Šubic, Miha Hiti, Gaber Begeš . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Vpliv velikosti vira referenčnih sevalnih termometrov v LMK Igor Pušnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Analiza vpliva zamenjave merilnih ojačevalnikov na rezultat kalibracije pretvornika sile Miha Hiti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Krmiljenje dvomotornega asinhronskega sklopa za trajnostno testiranje polimernih zobnikov Tomaž Finkšt, Borut Černe, Damijan Zorko, Leon Kos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 185 Preskušanje delovanja kirurške svetilke Urban Kraševec, Andrej Žemva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 Sekc./Sect. AE Akustika in elektroakustika / Acoustics and Electroacoustics 193 Meritev akustične prenosne impedance simulatorjev ušesa Metod Celestina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Uporaba Raspberry Pi za izdelavo Hi-Fi zvočniškega sistema Rok Prislan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nekonvencionalen poskus reševanja slabih akustičnih lastnosti v prazni dvorani Franc Policardi-Antoncich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . New auditorium “Pavilion” of Unicredit: architectural acoustic study Marcelo Brugola, Giovanni Amadasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 198 202 206 Vibro-acoustic analysis to detect structural deterioration on roof covering plates Giovanni Amadasi, Massimo Chieregato, Marcelo Brugola, Franc Policardi-Antoncich . . . . . . . . . . 210 Sekc./Sect. CS Računalništvo in informatika / Computer and Information Science 214 Analiza algoritma jDE100 za enokriterijsko globalno optimizacijo z realnimi vrednostmi Janez Brest, Jan Popič, Mirjam Sepesy Maučec, Borko Bošković . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Experimental Evaluation of Deep Q-Learning Applied on Pendulum Balancing Zvezdan Lončarević, Rok Pahič, Gregor Papa, Andrej Gams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Gradnja napovednih modelov za klike na oglase v družabnih omrežjih Vesna Novak, Matej Guid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Industry 4.0: Data analysis and forecasting of extraordinary events Matej Račič, Aleš Papič, Uroš Lotrič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Generating program code for psychological experiments from high-level descriptions Igor Dejanovic, Mirjana Dejanović . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Razvoj odprtokodnega JavaScript vtičnika za optimizirano nalaganje in prikaz grafik na spletnih platformah Luka Varga , Helena Gabrijelčič Tomc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 Povečanje varnosti mobilne aplikacije v javnem potniškem prometu Marko Avberšek, Katja Podrzavnik, Amor Chowdhury . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Algorithm design in Python for cybersecurity Kristijan Kuk, Petar Milic, Petar Spalević, Milan Gocić . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 ix Sekc./Sect. PR Razpoznavanje vzorcev / Pattern Recognition 247 Katastrofalno pozabljanje pri inkrementalnem učenju konvolucijske nevronske mreže Jakob Božič, Danijel Skočaj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Semantična segmentacija za detekcijo kompaktnih površinskih anomalij z deflektometrijo Lojze Žust, Alan Lukežič, Matej Kristan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 Rekonstrukcija predmetov iz barvnih slik z načrtovanjem naslednjega pogleda Kristian Žarn, Danijel Skočaj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Comparing discriminative and generative approach todetection of defects on injection moulded routing disc Samo Šela, Domen Tabernik, Jan Ogrin, Danijel Skočaj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 Generation of 2D Ear Dataset with Annotated View Angles as a Basis for Angle-Aware Ear Recognition Anja Hrovatič, Kihoon Kwon, Diego Sušanj, Peter Peer, Žiga Emeršič . . . . . . . . . . . . . . . . . . . . . . . . . 264 Natančna retrospektivna sinhronizacija posnetkov iz sistemov z večimi kamerami Tomaž Kavaš, Janez Perš . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Comparison of Semi-Global Block Matching Algorithm and DispNet Neural Network on KITTI Data Set Tin Kramberger, Božidar Potočnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 SloTex odprtokodno ogrodje za procesiranje slovenskega naravnega jezika Klara Eva Kukovičič, Sonja Debevec, Mark Juvan, Jakob Bernik, Aljaž Trebušak, Peter Čebašek, Simon Dobrišek, Tadej Justin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Sekc./Sect. BM Biomedicinska tehnika / Biomedical Engineering 280 Effect of calcium ions on liposomes as cell membrane analogues Katja Balantič, Victor U. Weiss, Günter Allmaier, Peter Kramar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 How does cell culture media with additional lipids and vitamin E affects electropermeabilization, cell-cell fusion and survival of CHO-K1 cell line? Maša Kandušer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Razvoj avtonomnega sistema za merjenje električnih lastnosti ravninskih lipidnih dvoslojev Jaša Montani, Peter Kramar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 Safety and certification of clinical electroporators Aleksandra Cvetkoska, Damijan Miklavčič, Matej Reberšek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Expanding the power pulse duration range for electroporation Anja Zajc, Damijan Miklavčič, Matej Reberšek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Optimization of electroporation parameters for delivery of small molecules into primary human myotubes Mojca Pavlin, Maša Kandušer, Nives Škorja, Sergej Pirkmajer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Driving activity assessment using accelerometer data Nikola Šolaja, Nadica Miljković, Jaka Sodnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 Numerical modelling of treatment of liver metastases with irreversible electroporation Helena Cindrič, Masashi Fujimori, Francois H. Cornelis, Stephen B Solomon, Govindarajan Srimathveeravalli, Damijan Miklavčič, Bor Kos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 Hemorrhage detection on head CT images using convolutional neural networks Damir Demirović, Amira Šerifović Trbalić, Emir Skejić, Amir Trbalić, Amila Dubravić . . . . . . . . . 313 Ugotavljanje prvotne stopnje anizotropnosti mišičnega tkiva prašiča z dinamičnim modelom elektroporacije ex vivo Rok Šmerc, Samo Mahnič-Kalamiza, Matevž Pintar, Janez Langus, Tomaž Šuštar, Damijan Miklavčič . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ireverzibilna elektroporacija – nova rešitev za zdravljenje atrijske fibrilacije Jernej Štublar, Tomaž Jarm, Matevž Jan, David Žižek, Damijan Miklavčič . . . . . . . . . . . . . . . . . . . . . x 285 318 322 Sekc./Sect. DI Didaktika / Didactics 326 Spodbujanje inovativnosti s pomočjo tehnologije 3D tiska v okviru kliničnih vaj tehniškega izobraževanja Veronika Šuligoj, Janez Jamšek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 Samoevalvacija študentov na pisnih izpitih pri predmetih s področja regulacijske tehnike David Nedeljković . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 Interactive didactical utility for dynamic routing using LP solve Tjaša Jereb, Matej Rabzelj, Aljaž Martinčič, Andrej Košir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 Poenostavljen strojno-opisni jezik Andrej Trost, Andrej Žemva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 Sekc./Sect. ST Študentski članki / Student Competition IEEE Slovenia 343 Razvoj vibracijske naprave mikrofluidnega motorja Matjaž Malok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344 Maintaining Secure Data Using Hash Functions in the Process of Fingerprint Detection as a Separate Method Within the Field of Pattern Recognition Lina Lumburovska . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Naprava za vizualno-kinestetično navigacijo slepih in slabovidnih Kristjan Stopar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 Varen komunikacijski posrednik na podlagi WebSocket protokola in arhitektura za neposredno povezovanje interneta stvari s spletnimi aplikacijami Matevž Hribernik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 xi 346 Vabljena predavanja Invited Lectures Pulsed Power Applications to Biomedical Engineering: Background and Possibilities Probed Through Model Based Simulations Ravi P. Joshi Dept. Of Electrical and Computer Engineering Texas Tech University, Lubbock, TX 79409, USA E-mail: Ravi.Joshi@ttu.edu Abstract: Pulsed power is a broad technical field that is united by a common theme and activity—the transformation of electrical energy into high peak-power pulses. The value in this enabling technology is that pulsed power can be used in a large variety of applications that range from generation of electromagnetic radiation and high power microwaves either for radars or destructive capabilities, for high power lasers, in applications to nuclear fusion, production of X-rays, to ultrashort electrical pulses for bio-treatments, and in food decontamination and sterilizations. This presentation will focus on the bio-medical applications of this technology, especially as a non-thermal tool that might have minimal sideeffects or collateral tissue damage. The use of electric fields on biological systems is not new and is also arises quite naturally given that every biological cell possesses built-in potential, neurons generate signals and communicate via electrical impulses, and ions which are abundantly present in the bio-system can be made to respond and flow by externally applied electric fields. More recently, high intensity (~100 kV/cm), very short (nanosecond) duration pulsed electric fields have been shown to be useful for electrically triggered intra-cellular calcium release, immunogenic tumor cell death and shrinkage of tumors, temporary blockage of action potential in nerves, and activation of platelets for accelerated wound healing. Thus plausibly, such nanosecond pulsed electric fields could be an alternative to ionizing radiation for cancer treatment, or in conjunction with chemotherapy. The non-thermal nature of this ultrashort, high-intensity electric pulse excitation modality (unlike the heating caused by microwave or radiofrequency ablation) allows for successful and safe treatment of tumor ablation even in close proximity to critical structures and/or large vessels. This presentation will focus on the physics-based modeling and simulation efforts at understanding the basic physics and mechanisms of electric field interactions and modulation of the bio-responses especially by ultrashort, high-intensity electric pulsing. For clarity and concreteness, a number of representative applications will be chosen. Possibilities of using magnetic stimulation will also be discussed. ERK'2019, Portorož, 2-2 2 NEMO-HD Microsatellite - Technical Solution for Interactive Earth Observation Mission Hubert Fröhlich, Tomaž Rodič SPACE-SI – Slovenian Centre of Excellence for Space Sciences and Technologies E-mail: hubert.froehlich@space.si Abstract. NEMO-HD (Next-Generation Earth Monitoring and Observation – High Definition) is a high performance multispectral Earth observation microsatellite (65 kg) developed in collaboration between SPACE-SI and SFL, the Space Flight Laboratory of University of Toronto. The NEMO-HD payload consists of two instruments of which the primary instrument is capable of imaging in four spectral bands at a pan-sharpened GSD of 2.8m, and covers a swath width of 10 km and the secondary instrument produces images at a GSD of 40m and a much wider field of view. In addition to still imaging, both instruments can capture high definition video at 25 fps. The video is H.264 encoded and can be downlinked in real time when the satellite is within a line of sight with a ground station. The video channels are co-boresighted with the still imagery channels. This allows for a real-time imaging mode in which an operator can, during viewing the real-time video feed, command the spacecraft to acquire still images of area of interest. NEMO-HD includes standard complement of subsystems, sensors and actuators that make up a three-axis stabilized bus. Payload data will be downlinked via 50 Mbps X-band downlink. It has 279.4 GB of on-board storage, a high-performance instrument computers, solar pannels capable of producing 55W of power and 300 Wh Li-ion battery. ERK'2019, Portorož, 3-3 3 From invention to high-tech commercial product Roman Kužnar Iskratel d.o.o., Kranj E-mail: roman.kuznar@rcikt.com Abstract. In this lecture we’ll address the question of what are the key factors that determine a high commercial value of a research discovery or a technical invention and what is the typical evolution path from an idea to the viable and commercially successful product. Beside technical development, we’ll briefly touch other non-technical aspects that need to be considered to make whole innovation and commercialization process coherent and plausible. ERK'2019, Portorož, 4-4 4 Elektronika Electronics Upgrading the Management of Electronic Systems in a Passenger Car Josip Sučec, Ernest Gungl, Zmago Brezočnik University of Maribor, Faculty of Electrical Engineering and Computer Science, Koroška cesta 46, 2000 Maribor E-mail: josip.sucec@student.um.si, ernest.gungl@um.si, zmago.brezocnik@um.si Upgrading the Management of Electronic Systems in a Passenger Car Abstract: This paper introduces the process of modernizing an older model of a passenger car. The mechanical, electrical, and programming solutions were required to upgrade the existing car. Upgrades have been done to improve safety, comfort, and performance. The safety upgrades contain the development and implementation of the brake temperature and tire pressure monitoring systems, respectively. The comfort upgrades include the car’s light system and accessory improvements, such as the “follow me home” function and automatic window closing. The performance upgrades include installation of the racing coilovers and the development of the remote damping ratio adjustment system. A vehicle specific Android device was installed for the central logic unit. It controls the local electronic control units made for each specific task and displays tire pressures and brake temperatures. The Android device communicates with the electromechanical car systems by using several serial buses. First, the communication protocols and their messages in the original car had to be reverse engineered, so that later we were able to establish proper communication between the systems in the upgraded car. 1 Introduction The car used as a base for upgrading the management of its mechanical and electronic systems is the 2002 BMW 3 series (Figure 1). The car is equipped with two different serial communication buses – the CAN-Bus for timesensitive and passenger safety equipment, and the K-Bus based on the ISO9141-2 standard for multimedia and devices that are not critical for passenger safety. The usage of two different buses makes our vehicle the best choice for upgrades since working and testing on the Figure 1. 2002 BMW 3 series ERK'2019, Portorož, 6-9 6 K-Bus does not interfere with crucial components connected to the CAN-Bus [1]. Upgrading of the existing car began as a master’s thesis and was inspired by the equipment of newer, more modern cars. The newer cars offer many safety and comfort options, such as remotely adjustable suspension or TPMS (Tire Pressure Monitoring System), and those are some of the upgrades we managed to implement in the car. The car did not have an infotainment system, but only a standard radio receiver. We replaced it with a vehicle specific Android device (Figure 2). Figure 2. Vehicle specific Android device The installation of the Android device made all upgrades possible, as it is used as a master device which controls both original as well as the added equipment. The K-Bus is a one-wire, 12 V idle state serial bus with a data link layer very similar to UART [1]. Therefore, the easiest way to establish communication with the bus was via a serial communication port, but since the Android device does not support a serial port, we had to design a special transducer. The USB to K-Bus transducer matches both the physical and data link layers of the buses to establish communication between the Android device and the car. We spent much time on reverse engineering the K-Bus messages, and the decoded protocol enabled many upgrades, such as DRL (daytime running lights) or “follow me home” function as a part of comfort and safety upgrades. The performance upgrades of the vehicle included installation of racing suspension parts using coilovers (an abbreviation of “coil-over shock absorbers”). [2]. The coilovers allow independent changes of vehicle height, spring preload, and damping ratio. The electromechanical system was developed for remote adjustment of the damping ratio, and it is controlled via the Android device. TPMS and the brake temperature monitoring system were added as safety improvements. They display Figure 3. Conceptual solution for car upgrading information on tire pressure and brake temperature on the Android device. The conceptual solution and hardware description are given in Chapter 2, while software solutions are described in Chapter 3. In Chapter 4, we describe the realization and test of the added equipment. In the Conclusions, we evaluate the success of the project and give some ideas for adding further functionalities. 2 Hardware 2.1 Conceptual Solution The conceptual solution of the upgraded car is shown in Figure 3. As we mentioned, the car has multiple serial buses, and we had to design two transducers for communication with the car and the newly developed systems. The coilovers have a damping ratio adjustment pin at the top, and the electromechanical system was designed to establish a remote adjustment of the damping ratio. Also, we had to design a local ECU (Electronic Control Unit) for control of the electromechanical system. We did not design the TPMS receiver by ourselves but bought one that was available. The receiver receives data from the sensors mounted inside the car’s wheels via 433 MHz radio communication [3]. We use a local ECU for connecting to the I2C bus on the circuit board of the TPMS receiver and listen to the data sent to the display of the receiver. 7 2.2 USB to K-Bus Transducer The simplified scheme of the USB to K-Bus transducer is shown in Figure 4. The transducer enables communication between the Android device and the car. It is based on an FTDI FT230XS-R USB to UART bridge, which converts USB messages to UART serial data. We designed a two-layer PCB (Printed Circuit Board) for robust and safe operation [4]. The FTDI chip operates at CMOS levels (3.3 V), but the K-Bus at the car battery voltage levels (12 V). The UART uses two wires (RX and TX) while the K-Bus only one bi-directional wire (K-LINE). Figure 4. Simplified scheme of the USB to K-Bus transducer To match the physical layers of the two buses, we had to implement a special transducer, the L9637, made by STMicroelectronics [5]. The layer matching could have been accomplished with the use of a few MOSFET transistors, but during the experimenting, the solution was found to be insufficient. This more straightforward and cheaper method can lead to high voltage induction due to parasitic inductivity and high-speed switching, resulting in destroying the equipment [6]. Therefore, the device used was explicitly made for this application. 2.3 Electromechanical System for Damping Ratio Adjustments The electromechanical system is used for turning the oil valve inside the damper. By tightening or loosening the valve, we can adjust the damping ratio of the damper. The electromechanical system was designed in AutoCAD, and after many trials and errors, the final design was sent to a local machining shop. The brackets were laser cut out of an aluminium AlMg3 alloy suited for mechanical use. The system consists of a servomotor for turning the oil valve, and a potentiometer for position feedback. Due to minimal bonnet space clearance, the servomotor and the potentiometer had to be moved to the centre of the engine bay to ensure normal bonnet closing. The front electromechanical system for damping ratio adjustments is shown in Figure 5. The local ECU is used for controlling the electromechanical system and for the brake temperature monitoring system. We designed its PCB around an automotive grade ATMega48p microcontroller, and with I2C, A/D, and PWM input and output ports [7]. 2.5 Infrared Temperature Sensor The brake temperature monitoring system is based on a Melexis MLX90614 infrared thermometer [8]. We chose this sensor because it is a low-cost and reliable solution. A significant problem with the sensor is that it is not waterproof. To make it waterproof, we had to choose a material that is transparent to the IR light and would protect the lens of the sensor from water. PVC (polyvinyl chloride) foil was the most straightforward solution, with very low attenuation of the signal. We had to make an enclosure that would hold the sensor in place, and we chose polyester resin and moulded the sensor. The sensor had to be mounted on a bracket, close to the brake disc to provide the best results (Figure 7). Figure 7. Mounting of the brake temperature sensor The sensor’s readings can be off if not calibrated because the sensor is factory-calibrated to the black body. Usually, a brake disc has an emissivity factor between 0.3 and 0.55 [9]. With proper calibration temperature readings can be very accurate. 3 Software Solution Figure 5. The front electromechanical system 3.1 2.4 Local ECU Local ECU The local ECU’s software was developed in the Atmel Studio and written in C. The program is written modularly. We first programmed the UART communication, and after that made it as a stand-alone library. The same procedure was made for the A/D, I2C, and PWM features. The software is very efficient and easy to use for future upgrades. 3.2 Android Application The application that we made for the Android device was developed in the Android Studio and written in the Java programming language. The software performs several tasks; it communicates with the car via a serial bus, controls the local ECUs, and manages the communication flow. Figure 6. Simplified scheme of the Local ECU 8 Figure 8. Screenshot of the Android application Figure 9. The PCB of the local ECU For each wheel, it displays brake temperature and tire pressure with a sound warning activated when critical values are reached. We also implemented a car service interval notification and low engine oil level warning. Figure 8 shows how the damping ratio is set. There are two buttons (Comfort and Sport) for faster and preloaded parameter change and another two buttons (Custom and Race Mode) for more precise parameter setting. The local ECUs communicate with the Android device via a serial bus (ISO9141-2). There are five different local ECUs. To establish proper and collisionfree communication, we had to implement some message arbitration. The Android device sends a request message every 50 ms to the serial bus, and only the device with the specific address responds, thus removing the chance of data collision. The car's K-Bus is very busy. Often, the device has only 30 or 40 ms of time to send a message. Each device must sense if the bus is busy, and it may start communicating only if the bus is free. Therefore, we made a background thread which has only one task; it informs the rest of the program if the bus is free or not. If the bus is busy, then the background thread stops data transmission and only receiving is allowed. 4 Implementation and Testing We used AutoCAD for drawing the design of the electromechanical system. With the use of simple cardboard, we simulated how close to the engine we should move the servomotor and the potentiometer. The plastic gears used as transmission were processed with simple hand tools, and to make a mechanical coupler, we had to use a welding machine and an angle grinder to make a proper mechanical connection. The local ECUs are communicating with the Android device flawlessly since we managed to implement data collision avoidance, and the K-Bus idle state sensing provides robust and safe control over the car’s modules. The two-layer PCB design of the local ECUs was developed in Altium Designer (Figure 9). 9 5 Conclusions The main goal of the work was to improve the project car within a limited budget. It turned out that the developed car improvements work as intended and improve the driving experience. The performance, safety and comfort have been improved significantly, thus making the car more modern. The car can be upgraded further. With the reverse engineering of the CAN-Bus, we could develop an automatic speed limit or a complete data acquisition such as engine load and oil temperature. Literature [1] F. Touanen, I-BUS Inside: Inside the BMW Cars entertainment Serial Bus, 2002. [Online]. Available: https://mikrob.ru/download/file.php?id=92802. [Accessed 4 June, 2019]. [2] HSD Coilovers, "Featured HSD Products," Driftworks LTD, 2019. [Online]. Available: https://www.hsdcoilovers.com/. [Accessed 4 June, 2019]. [3] A. Arnold and S. Piscitelli, "TPMS Receiver Hacking," Worcester Polytechnic Institute, Worcester, 2015. [4] Future Technology Devices International Ltd, "FT230X (USB to BASIC UART IC)," Future Technology Devices International Ltd, 2016. [5] STMicroelectronics, "L9637 - Monolithic bus driver with ISO 9141 interface," STMicroelectronics, 2013. [Online]. Available: https://www.st.com/resource/en/datasheet/l9637.pdf. [Accessed 4 June, 2019]. [6] G. Mahajan, S.K. Parchandekar, and M. Tahir, "Implementation and Validation of K Line (ISO 9141) Protocol for Diagnostic Application," International Research Journal of Engineering and Technology, vol. 4, no. 7, pp. 708-712, 2017. [7] Atmel Corporation, "ATmega48/88/168 Automotive," Atmel Corporation, San Jose, 2014. [8] Melexis, "MLX90614 family," 2018. [9] Engineering ToolBox, (2003). Emissivity Coefficients Materials. [Online] Available: https://www.engineeringtoolbox.com/emissivitycoefficients-d_447.html. [Accessed 4 June, 2019]. Simple and Low-Cost Electronic System for Honey Bee Counting Mitar Simić1 , Vanja Starčević1 , Nikola Kezić2 , Zdenka Babić1 1 University of Banja Luka, Faculty of Electrical Engineering, Patre 5, 78000 Banja Luka, Bosnia and Herzegovina 2 University of Zagreb, 10000 Zagreb, Croatia E-mail: mitar.simic@etf.unibl.org Simple and Low-Cost Electronic System for Honey Bee Counting Bee counting on the entrance of the bee hive is important part of general bee monitoring, because of present colony bee collapses. Even there is a huge number of solutions for such bee counting, we recognized need for development of the system which will be based on the simple methodology suitable for widely available low-cost embedded systems with low RAM, low flash memory and small dimensions. Our approach is based on Arduino Mega board and resistive voltage divider created by highresistance resistor and a bee. Preliminary tests showed that proposed structure is promising, but that reliability and accuracy can be improved with some hardware and software updates. 1 Introduction Bees play very significant role in ecosystem as they are considered as very important for pollination of fruits, vegetables and seed crops [1]. However, bees are exposed to many negative factors (such as use of pesticides in agriculture, mite infections, viruses, etc.) which lead to massive disappearance of bee colonies [2]. This trend in literature has been called the colony collapse disorder [1–3], and presents very strong motivation for researchers and experts to develop systems for bee counting. Such systems should provide precise information of bees’ activities during the different environmental conditions and/or periods of day/year, thus they can be used for analysis as well as prediction of future trends. The bee counting systems aim to obtain counts of bees entering or exiting a given beehive per unit of time. The use of human observation has some limits such as fatigue and the amount of time that the hive can be observed. One of the first electrical bee counters was proposed in 1925 [4]. It was based on bees tripping a balance arm, which produced electrical impulses that drove a printer. In 1943 the use of photovoltaic cells was discussed [5], but it was not realized because of high-cost at that time. However, in [6–8] such counters are reported as technology improvements made cheaper that kind of realization. In the last about 30 years continuous development of sensors reduced cost of realization of microcontroller-based systems with infrared (IR) sensors (usually an infrared LED as a source and a photo- ERK'2019, Portorož, 10-13 10 transistor in switching mode as a detector). Such realizations showed reliability and accuracy in many tests [6–9]. However, since the IR counters require regular cleaning and maintenance, it is necessary to develop procedures to check whether all of the emitters and detectors are functioning properly. Moreover, sunlight includes IR spectrum, thus optical blackout material as covers should be placed to prevent penetration and false switching-on of the detector [9]. In last few years, development of lowcost embedded hardware with high processing power, such as Raspberry Pi, enabled realizations of honey bee counting systems based on the video signal processing [2, 3, 10]. Advantage of such systems is ability to have realtime video monitoring of the entrance in the hive for detailed analysis. For example, to see if there is present some infection (Varroa destructor and similar) or for pollen bearing detection [10]. However, disadvantages are relatively high price of complete system (Raspberry Pi, camera, storage, power supply) for massive use, request for grid power supply and influence of changes in background light intensity. Even there is a huge number of solutions for bee counting, we recognized need for development of the system which will be based on the simple methodology suitable for widely available low-cost embedded systems with low RAM, low flash memory and small dimensions (Arduino boards, for example). Our approach is based on resistive voltage divider created by high-resistance resistor and a bee. The rest of this paper is organized as follows. In Section II proposed methodology for bee counting is presented. In Section III, the hardware and software details of bee counter are presented, and collected data are described. In Section IV, conclusions are drawn. 2 The method With aim to obtain more robust system for bee counting, which will eliminate unreliability of the previously reported systems based on the IR sensors [9], our research was directed towards design and development of the system for bee counting which will use resistive voltage dividers. The resistive divider is created by a bee and a resistor, as it is shown in Fig. 1. Bee inside the input channel will make a short circuit between two pads which will change the voltage between 3.2 Printed circuit board of bee counter Based on the proposed circuit of bee counter (Figure 1) a schematic and printed circuit board (PCB) layout have been created in Eagle 8.3.2 free software. Generated files have been used for fabrication of the PCB with hardware outcome shown in Figure 4. Board has pin header with pins for 5 V and GND, as well as connections with 8 analog inputs of AD converter of central processing unit. Figure 1: Proposed structure of the system for bee counting. the upper pad and the ground. Pads will not be connected if there is no a bee, thus there should be 5 Vdc at the output pin. If there is a bee voltage should drop, as it shown in Figure 2. Figure 4: Fabricated PCB of bee counter. To obtain more controlled motion of bees we added plastic tubes (1 cm x 1cm square cross section) as shown in Figure 5. Moreover, to have bidirectional counting with single sensor per channel we made physical separation of inbound and outbound bees with longer tubes on different sides for entrance and exit (Figure 5). Figure 2: Theoretical voltage changes at the output pin of the single channel. We propose continuous measurement of these changes with the ADC of microcontroller. As the safety precaution, for protection of bees, we propose current limitation with very high resistance R (few MΩ). 3 Experimental results and discussion 3.1 Central processing unit Central processing unit in our realization is Arduino Mega board. We choose ATmega2560-based Arduino Mega because of availability of 54 digital I/O pins, 16 analog inputs, 8 KB SRAM and 256 KB flash memory. It was expected that these specification will meet requirements of proposed structure of bee counter (Figure 3). We expanded Arduino Mega capabilities with inclusion of real time clock (RTC) for date and time stamp, SD card for data storage, buzzer for sound confirmation of regular work of all components, and bee counter board. Figure 5: Plastic tubes for physical separation of inbound and outbound bees. 3.3 Software Program code of microcontroller was written in Arduino IDE 1.8.5. Microcontroller controls work of attached peripherals (RTC, SD card, buzzer and bee counter) as well as data storage and communication with PC via serial port. We have included option for readout of stored file through serial port of PC. As it can be seen in our code [11], only 1130 bytes of RAM and 17674 bytes of FLASH are required which our realization makes suitable for embedded systems with limited sources. 3.4 Hardware outcome Hardware outcome of proposed bee counter and mounting on the beehive are shown in Figure 6. 3.5 Obtained results Initial testing of the realized bee counter was performed in Šušnjari (nearby Banja Luka, Bosnia and Herzegovina) at the very end of April 2019. ADC levels of six ADC channels were stored on SD card and obtained results are Figure 3: Block-scheme of bee counter. 11 1025 1020 1015 1010 ADC 1005 1000 995 990 985 Output 1 Output 2 Output 3 980 975 0 5 10 15 t [s] 20 25 30 Figure 8: ADC levels on output channels. Figure 6: Hardware outcome of bee counter and mounting on the beehive. shown in Figure 7 (input channels) and Figure 8 (output channels). We decided to store ADC level because it is integer value, and voltage on ADC pin is directly proportional to ADC level. However, voltage is float which requires more memory for storage, and RAM for processing. Table 1: Detected number of bees crossing the sensors at specific input or output. Channel Input 1 Input 2 Input 3 Output 1 Output 2 Output 3 Detected number of bees 1 12 9 2 0 0 1040 1020 1000 980 ADC 960 940 920 900 880 Input 1 Input 2 Input 3 860 840 0 5 10 15 t [s] 20 25 30 Figure 7: ADC levels on input channels. Collected results were used for bee counting with very simple software based on the comparison of ADC levels with specific threshold (we choose ADC=1015). Obtained results are presented in Table 1. Obtained results (Figure 7 and Figure 8) show that proposed system is able to detect crossings of bees at the exit or entrance of the hive, but that we need to make some modifications which will contribute to improvements in terms of reliability and accuracy. For example, we can see at Figure 7 and Figure 8 that noise is presented and 12 that we need to make longer delay between ADC reading from neighboring channels (Arduino Mega has just one ADC, thus inputs are multiplexed which requires some time for sample and hold circuit to stabilize). Moreover, we have recognized that voltage drop is not always the same when bee is present on the sensor. This change can be explained as bees can create different resistance because of different surface area of bee in contact with the sensor, or different biological state of bee which will affect her resistance. Thus, change of the threshold would change number of detected crossings. To obtain more detailed picture we have analyzed video recording made at the entrance in the beehive [12]. Six volunteers (S1, S2., S3, S4, S5 and S6) were involved in visual bee counting from video and results are presented in Table 2. As it can be seen from Table 2, different volunteers counted different numbers of bees, which contributes to our conclusion that visual counting by human is very subjective. However, we can see that our bee counter generate results comparable with human. Because of that we will continue to work in this area with further improvements in reliability and accuracy. Table 2: Detected number of bees by electronic bee counter and different volunteers. Channel Input 1 Input 2 Input 3 Output 1 Output 2 Output 3 4 [4] A. E. Lundie, “The flight activities of the honey bees”, United States Department of Agriculture, Dept. Bull. No. 1328, 1925. Number of detections Bee counter 1 12 9 2 0 0 on Image Processing, Computer Vision, and Pattern Recognition, pp. 229-234, 2016. S1 S2 S3 S4 S5 S6 1 6 5 1 0 0 1 10 4 1 0 0 1 13 8 1 0 0 0 15 9 1 0 0 0 14 11 1 0 0 0 1 1 1 0 0 Conclusion In this paper we presented simple and low cost electronic system for bee counting. Our realization is based on the Arduino Mega board as central processing unit with attached RTC, SD card and in-house developed PCB for bee counting. Our future work is directed towards improvements in reliability and accuracy of the proposed system. One software change will be longer delay between readings from ADC channels, while we also will investigate if we need two or more sensors in the input channel to detect direction of the motion, as well as if bee reach the exit/entrance, because of collision with other bees are registered as well. Acknowledgment This research is partially supported by the “Biological Methods (Bees) for Explosive Detection” international project, supported by NATO Science for Peace and Security (SPS) Programme, project number SPS 985355, and Ministry of Science and Technology Republic of Srpska, Bosnia and Herzegovina, ”UAV Video Analysis in Biological Methods for Explosive Detection”, project number 19/6-030/3-2-21-1/17 and by the Bilateral Collaboration Project of Slovenian Research Agency (ARRS) and the Ministry of Scientific and technological development, higher education and informational society of the Republic of Srpska, under contract 19/6-020-964-25-1/18. References [1] V. A. Kulyukin, S. K. Reka, ”Toward Sustainable Electronic Beehive Monitoring: Algorithms for Omnidirectional Bee Counting from Images and Harmonic Analysis of Buzzing Signals”, Engineering Letters, 2016, 24(3). [2] O. Debauche, M. El Moulat, S. Mahmoudi, S. Boukraa, P. Manneback, F. Lebeau, ”Web monitoring of bee health for researchers and beekeepers based on the internet of things”, Procedia computer science, 130, pp. 991-998, 2018. [3] V. Kulyukin, S. K. Reka, ”A Computer Vision Algorithm for Omnidirectional Bee Counting at Langstroth Beehive Entrances”, In Proceedings of the International Conference 13 [5] A. C. Faberge, “Apparatus for recording the number of bees leaving and entering a hive”, J. Sci. Instr., vol. 20, pp. 28–311, 1943. [6] H. G. Spangler, ”Photoelectrical counting of outgoing and incoming honey bees”. J Econ Entomol, 62, pp. 1183-1184, 1969. [7] Erickson, E.H., Miller, H.H., and Sikkema, D.J. “A method of separating and monitoring honey-bee flight activity at the hive entrance”. J. Apic. Res., vol. 14, pp. 119–125, 1975. [8] Liu, C., Leonard, J., and Feddes, J.J. “Automated monitoring of flight activity at a beehive entrance using infrared light sensors”. J. Apic. Res., vol. 29(1), pp. 20– 27, 1990. [9] M. Simić, R. Gillanders, A. Avramović, S. Gajić, V. Jovanović, V. Stojnić, V. Risojevi, J. Glackin, G. Turnbull, J. Filipi, N. Kezić, and Z. Babić, ”Honeybee Activity Monitoring in a Biohybrid System for Explosives Detection”, Proceedings of the International Conference on Medical and Biological Engineering, 16–18 May 2019, Banja Luka, Bosnia and Herzegovina, pp. 185-192. [10] Z. Babic, R. Pilipovic V. Risojevic, G. Mirjanic, ”Pollen Bearing Honey Bee Detection In Hive Entrance Video Recorded By Remote Embedded System For Pollination Monitoring”, ISPRS Annals of Photogrammetry, Remote Sensing and Spatial Information Sciences, 2016, pp. 51-57. [11] https://github.com/simicm1987/ Bee-Counter/blob/master/Bee4Exp_ Susnjari_April2019_ETRAN.ino [12] https://github.com/simicm1987/ Bee-Counter/blob/master/final_ 5cd907982aec5500146aef64_720517.mp4 Vhodno–izhodna krmilniška kartica Jaka Koren1, Andrej Trost2 1 Hidria d.o.o Šmarska cesta 4, 6000 Koper Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška 25, 1000 Ljubljana E-pošta: jkkoren55@gmail.com 2 Design of a custom input-output controller card is presented. The electric scheme and printed circuit boards (PCB) are developed to meet specifications based on the needs of the company. The card will be used on automatic assembly lines for adjusting the lightning for image capture and controlling the position of motors. The controller card can read digital and analogue sensors and control some analogue and digital outputs. It is connected through RS-232, RS-485 and Ethernet interfaces. The RS-485 is present on a DIN lath and used for communication between devices. The main PCB is controlled with STM32F407 microcontroller. A smaller and cheaper 8-bit STM8S103K3 is used for the user interface. The circuit includes ESD and EFT protection for the industrial environment. The card is powered with 24 V DC from the main electro box. We present simulations of the critical parts of the PCB, which helped us in deploying and choosing the correct values for the components. Input-output controller card neprimerne, ker jih ne moremo implementirati neposredno na letev DIN na avtomatski liniji [8]. Naprava ki smo jo sami načrtovali, pa se predvsem od vseh ostalih razlikuje zaradi implementiranega uporabniškega vmesnika, ki omogoča, da naprava popolnoma neodvisno, brez centralnega računalnika, deluje na avtomatski liniji. Specifikacije vhodno-izhodne krmilniške kartice: • 8 digitalnih izhodov, izhodni tok do 500 mA, • 8 digitalnih vhodov, • 2 enkoderska vhoda za zaznavanje pozicije motorjev, • 2 analogna vhoda V = 0 – 10 V, I = 0 - 24 mA, • 2 analogna izhoda V = 0 – 10 V, I = 0 – 24 mA, • RS-232 komunikacijski vmesnik, • RS-485 komunikacijski vmesnik, • Ethernet komunikacijski vmesnik. 1 Uvod 2 Shema tiskanega vezja Vhodno-izhodna krmilniška kartica omogoča krmiljenje in nastavljanje naprav na avtomatskih linijah. Z digitalnimi in analognimi vhodi in izhodi lahko nastavljamo aktuatorje in beremo senzorje. Glavna naloga bo predvsem dinamično nastavljanje osvetlitve za bolj kvaliteten zajem slike, pri pregledovanju končnih izdelkov. Motivacija za izdelavo lastne naprave je bila želja po napravi, ki je optimizirana za funkcije ki jih potrebujemo v podjetju. S tem bi zmanjšali količino komponent in zahtevnost naprave, ter posledično zmanjšali ceno izdelka. Veliko izdelkov na trgu omogoča podobno zmogljivost, ampak omogočajo samo delovanje za vnaprej določen tip aplikacij. Z lastnim sistemom pa lahko napravo reprogramiramo, ji spreminjamo delovanje in dodajamo različno periferijo. Primer kartice ki omogoča podobno zmogljivost pri krmiljenju in merjenju analognih signalov [6]. Kartica ne omogoča procesiranja digitalnih signalov, zato ni primerna, smo si pa pri svojem načrtovanju analognega dela vezja pomagal z referenčnim načrtom. Primer popolnoma modularnega sistema, ki ga lahko implementiramo na letev DIN so modularni moduli podjetja Sensoray [7]. Centralni modul je povezan z ethernet komunikacijo na računalnik, nanj pa lahko priklopimo module, ki omogočajo dodatne operacije. Veliko je tudi vhodno-izhodnih kartic, ki omogočajo podobno zmogljivost kot naša naprava, vendar so Pri načrtovanju tiskanine smo bili omejeni z velikostjo in obliko tiskanega vezja. Poleg vhodno-izhodnih sponk so na tiskanem vezju še priključek za RS-232, RS-485 in Ethernet komunikacijski vmesnik. ERK'2019, Portorož, 14-17 14 Slika 1: Blokovna shema naprave Načrtovanje tiskanega vezja smo razdelili na 3 dele: • analogni del, za katerega smo poskrbeli, da je ločen od ostalih delov, predvsem od hitrih signalov, ki lahko povzročajo motnje, • digitalni del s hitrimi povezavami, kjer smo pozornost posvetili impedanci linij ter zaščiti pred EMI motnjami, • ter zadnji del, ki je za povezavo najmanj zahteven, saj pri njem nimamo analognih veličin ter visokih frekvenc pri komunikaciji. Te tri dele smo fizično ločili med seboj, da ne prihaja do presluhov in motenj. Tiskano vezje je zaradi lažjega kontroliranja impedance podatkovnih linij in zaradi boljše povezave mase narejeno s štirimi plastmi. 2.1 Analogno digitalna pretvorba Implementirali smo možnost analogne meritve diferencialnih napetostnih vhodov, napetostnih vhodov proti masi ter tokovnih vhodov. Merjene napetosti imajo nivoje določene z industrijskim standardom, napetosti med 0 V in 10 V in tokovi med 0 mA in 24 mA. Analogno digitalni pretvornik, ne omogoča merjenja tako visokih logičnih nivojev, zato moramo logične nivoje prepoloviti. Za to uporabljamo namensko integrirano vezje INA146, ki vhodno napetost zmanjša v razmerju 1:10. Izhodno napetost nato nastavimo z zunanjimi upori. Pretvorjeno napetost peljemo skozi analogni filter na sigma-delta pretvornik. Sigma-delta pretvornik je bil izbran zaradi večje natančnosti pretvorbe, ki jo omogoča glede na ostale verzije analogno digitalnih pretvornikov. Sigma-delta pretvornik z »oversamplingom« potisne zrcalne slike signala proti višjim frekvencam, ki jih nato odrežemo s filtri. Sigma-delta A/D pretvornik oblikuje spekter šuma, tako da je večina gostote moči šuma premaknjena proti višjim frekvencam, ki jih odrežemo, ko signal peljemo skozi filter. 2.2 Digitalno analogna pretvorba Pri digitalno analogni pretvorbi smo uporabili integrirano različico namenskega vezja za pretvorbo digitalne kode v analogne vrednosti. Integrirana različica omogoča tako tokovni kot napetostni izhod in dosega nivoje, ki se uporabljajo v industriji, zato za pretvorbo ne potrebujemo nobenih dodatnih zunanjih komponent. Poleg tega ima implementirano zaščito pred kratkim stikom, do katerega lahko pride pri napačni implementaciji naprave na avtomatsko linijo. Poleg tokovne zaščite ima D/A pretvornik implementirano tudi zaznavo nekateri drugih napak, ki se lahko zgodijo na izhodu, takrat postavi »ALARM« signal in tako sporoči mikroprocesorju, da se je zgodila napaka. Mikroprocesor lahko nato iz registra prebere katera napaka se je zgodila in pravilno odreagira in zaščiti celotno vezje. Nastavljanje in branje vseh registrov iz čipa je mogoče preko SPI komunikacije [4]. Vezje D/A pretvorbe je postavljeno čisto na izhod, saj ima možnosti meritve dejanske analogne napetosti in popravljanje napetosti. 2.3 Ethernet komunikacijski vmesnik Ethernet komunikacijski vmesnik predstavlja izziv pri načrtovanju zaradi hitrih komunikacijskih linij, zato je bil poudarek na zagotavljanju pravilne impedance celotne komunikacijske linije. Na začetku med RJ45 priključkom in PHY čipom potekata dve diferencialni povezavi RX_P/N in TX_P/N. Ciljna impedanca diferencialne 15 linije je 100 Ω. PHY čip pretvori diferencialni komunikaciji v RMII ali MII komunikacijo. MII komunikacija potrebuje 16 povezav, vendar komunikacija poteka pri nižji frekvenci, kar predstavlja manjšo težavo z vidika EMC sevanja. RMII komunikacija potrebuje manjše število povezav, je pa referenčna ura višja in sicer 50 MHz. Ciljna impedanca povezave med PHY čipom, ki skrbi za povezavo med fizično plastjo in mikroprocesorjem, ki skrbi za ostale plasti TCP/IP modela je 68 Ω. Zaradi uporabe vij impedanca ni enaka skozi celotno povezavo, zato smo na vsaki liniji dodali serijski upor, s katerim zadušimo hitra nihanja napetosti na liniji. Referenčno uro zagotavljamo z zunanjim oscilatorjem. Da se hitri signali iz oscilatorja ne razlezejo po večji površini referenčne ravnine in motijo sosednji del tiskanega vezja, smo referenčno ravnino pri oscilatorju omejili. 2.4 Uporabniški vmesnik Poleg nastavljanje krmilniške kartice po ethernet in RS232 komunikacijskem vmesniku, je na napravi omogočena nastavitev osnovnih funkcij z petimi tipkami na zgornjem tiskanem vezju. Informacijo o trenutnih nastavitvah in trenutnem stanju sistema lahko vidimo na OLED zaslonu, ki je tudi prisoten na uporabniškem tiskanem vezju. Z dodatnim uporabniškim vmesnikom lahko nastavljamo napravo tudi na enostavnejših avtomatskih linijah. V temu primeru ne potrebujemo prisotnega računalnika in si s tem zmanjšamo proizvodni strošek. Dobra lastnost tega je tudi enostavna uporaba, saj lahko uporabnik, ki je nevešč v uporabi računalnika, nastavi in kontrolira avtomatsko liniji in hitro ukrepa. 3 Simulacija analognega dela vezja in hitrih podatkovnih linij 3.1 Teoretični uvod Parazitna kapacitivnost in induktivnost linije preprečujeta, da se napetost na liniji ne more hipno spremeniti. Energija signala na liniji potuje s hitrostjo 𝑉= 3 × 108 √𝜀𝑟 𝑚 𝑠 ( 1) Pri povezovanju hitrih linij moramo poskrbeti, da se celotna energija ki se prenaša od izvora do ponora, v celoti prenese brez odbojev, ki nastajajo na stiku dveh impedanc [2]. Pri kontroliranju impedance linije sta najpomembnejša parametra širina linije ter njena oddaljenost od referenčne ravnine. Mi smo si pri načrtovanju pomagali s programom Saturn PCB Design Toolkit. Hitro linijo je priporočljivo v celoti povezati na isti plasti, saj nam vije vnašajo dodatno impedanco. Impedanca vij je tudi pogojena z geometrijo. Njeno impedanco lahko spreminjamo z velikostjo obroča brez bakra na referenčni ravnini. S tem spreminjamo kapacitivni sklop med obročema. Pri uporabi vij je zelo pomembna njihova postavitev, saj moramo poskrbeti, da so vije dovolj narazen, da ne prekinemo referenčne ravnine in s tem povečamo povratno zanko in posledično EMI sevanje. frekvencami povzročajo EMC motnje, ki motijo analogne meritev in okoliške naprave, lahko pa tudi spremenijo napetostni nivo signala, kar v skrajnem primeru privede do uničenja vhoda zaradi prevelike napetosti. Slika 2: Postavitev vij na referenčni ravnini Slika 3: Shema simulacije prenosne linije Pri povezovanju paralelnih signalov moramo paziti, da so vse linije enako dolge, saj lahko v nasprotnem primeru pride do zamika signalov na posamezni liniji in izgube informacij. Priporočljivo je, da vse povezave povežemo na isti plasti brez uporabe vij. V večini primerov to ni mogoče, zato poskrbimo, da vije uporabimo na vseh signalih in tako poskrbimo za enake razmere na vseh linijah [1]. Preden smo začeli z načrtovanjem vhodno-izhodne krmilniške kartice, smo opravili simulacije nekaterih bolj kritičnih delov tiskanega vezja. Tako smo dobili boljši vpogled v stanje signalov ter si s tem pomagali pri izbiri komponent. 3.2 Simulacija povezave hitrih linij Prva simulacija ki smo jo opravili, je bila simulacija hitrih komunikacijskih linij na ethernet komunikacijskem vmesniku. Zaradi postavitve vhodov in izhodom na PHY čipu in STM32 mikroprocesorju, nismo mogli povezati vseh signalov na isti plasti. Hoteli smo preveriti, kako uporaba vije vpliva na signal na prenosni liniji, ki se ob spremembi impedance odbije. Z geometrijo vije smo poskusili poskrbeti, da bi bila sprememba impedance kar se da majhna. S tem bi zmanjšali njen vpliv na integriteto signala. Model vije smo simulirali s C-L-C pi filtrom [3] 𝐶𝑣𝑖𝑎 ≈ 1.41 × 𝜀𝑟 × 𝐷1 × 𝑇 𝐷2 − 𝐷1 𝐿𝑣𝑖𝑎 ≈ 5.08 × ℎ × [ln 𝑝𝐹 4 ×ℎ 𝑑 + 1] 𝑛𝐻 Slika 4: Simulacija prenosne linije različen serijski upor Slika 5: Bode diagram prenosne linije 3.3 Simulacija analognega vhodnega dela Pri analognem delu smo želeli preveriti, kakšna je razlika med uporabo diskretnih komponent, ki so nekoliko cenejše, ampak ne dosegajo toleranc, kot jih lahko dosežemo z uporabo integriranega tiskanega vezja za pretvorbo logičnih signalov. Toleranca pri diskretnih uporih namreč povzroči, da se na vhodu, poleg diferencialne napetosti ki jo želimo meriti, pojavi tudi sofazna napetosti, ki se prišteva merjeni napetosti in moti meritev. ( 2) ( 3) 𝐷1 − 𝑃𝑟𝑒𝑚𝑒𝑟 𝑣𝑖𝑗𝑒 𝐷2 − 𝑃𝑟𝑒𝑚𝑒𝑟 𝑟𝑒𝑔𝑖𝑗𝑒 𝑜𝑘𝑜𝑙𝑖 𝑣𝑖𝑗𝑒 𝑘𝑗𝑒𝑟 𝑛𝑖 𝑏𝑎𝑘𝑟𝑎 𝑇 − 𝑑𝑒𝑏𝑒𝑙𝑖𝑛𝑎 𝑡𝑖𝑘𝑎𝑛𝑒𝑔𝑎 𝑣𝑒𝑧𝑗𝑎 ℎ − 𝑑𝑜𝑙ž𝑖𝑛𝑎 𝑣𝑖𝑗𝑒 𝑑 − 𝑝𝑟𝑒𝑚𝑒𝑟 𝑙𝑢𝑘𝑛𝑗𝑒 Slika 6: Shema simulacije analognega vhodnega dela Enačbe smo preverili s programom Saturn PCB Design. Opazili smo, da je pri ohranjanju integritete signala, predvsem pomembna pravilna izbira vrednosti serijskega upora. Signal se odbije na stiku dveh različnih impedanc, torej pri viji in na vhodu v mikroprocesor. S pravilno vrednostjo upora lahko hitre nihaje, ki zaradi tega nastanejo, zadušimo. Nihaji lahko s svojimi hitrimi 16 Slika 7: Razlika pri uporabi integriranega operacijskega ojačevalnika in diskretnih uporov pri diferencialnem vhodnem signali amplitude 4 V 4 ESD in EFT zaščita vezja Naprava bo delovala v industrijskem okolju, kjer velika bremena in dolge povezave predstavljajo idealne razmere za nastajanje hitrih visokonapetostnih pulzov, ki lahko uničijo napravo. Učinkovito preprečevanje napetostnih pulzov je v prvi vrsti doseženo s hitrimi TVS diodami. Med normalnim delovanjem TVS diode predstavljajo visoko impedančno oviro za signale na liniji, med ESD in EFT pulzi pa nizko impedančno pot. Tako zmanjšajo napetostni nivo na liniji, da ne predstavlja nevarnosti za komponente na tiskanem vezju. TVS diode moramo postaviti čim bližje priključkom, ki povezujejo krmilniško kartico z ostalo periferijo na avtomatski liniji, saj moramo motnjo čim bližje preusmeriti nazaj iz vezja. Poleg tega, moramo zagotoviti nizko ohmsko pot na izhod z neprekinjeno maso. Paziti moramo, da ostale povezave na tiskanem vezju ne potekajo vzporedno z vhodno povezavo pred TVS diodo, saj se lahko tako visokonapetostni pulz inducira tudi naprej v vezje [5]. Slika 9: Testiranje naprave Slika 10: 3D model končnega izdelka 6 Zaključek Slika 8: Napačna povezava linije na tiskanem vezju, kjer se lahko inducira motnja na zaščiteno stran [5] Vhodi in izhodi na krmilniški kartici so galvansko ločeni. Vhodi so krmiljeni preko optičnih sklopnikov, izhodi pa so krmiljeni preko optičnih MOSFET-ov, ki so počasnejši, ampak omogočajo večje izhodne tokove. Pri enkoderskih vhodih pri kateri zahtevamo še posebej hitro in natančno zaznavo vhodnih signalov za zaznavanje pozicije in smeri vrtenja motorjev, uporabljamo optične sklopnike, ki omogočajo prenos signalov do hitrosti 5 Mbd. 5 Prototipni izdelek Zadnji korak pri izdelavi prototipne verzije naprave je bilo testiranje funkcionalnosti naprave. Testni program smo napisali tako, da smo lahko testirali vsako periferijo neodvisno. Največ težav smo imeli pri vzpostavitvi ethernet komunikacije, zaradi napačne povezave sinhronizacijske ure in napačne vrednosti serijskega upora, zato je bila uspešnosti »pinga« naprave slaba. Nekaj naprav smo odkrili tudi na ostalih delih vezja, predvsem smo nekaj težav imeli z nastavljanjem analognega dela preko SPI komunikacije. Uporabili smo modularno ohišje, ki ga lahko spreminjamo in mu po potrebi dodajamo priključke. Zgornje tiskano vezje na katerem so tipke in OLED zaslon mora biti uporabniku dostopno, zato smo izbrali transparentni pokrov, ki ga lahko odpiramo. 17 Predstavili smo razvoj prototipa vhodno-izhodne kartice za industrijske namene. Razvili smo prototip kartice in opravili osnovne preizkuse. Testi na naslednji verziji naprave, kjer bodo funkcionalne napake že popravljene, bodo predvsem imunost na okoliške motnje ter natančnost pretvorbe analognih signalov v digitalne in obratno. Potrebno bo opraviti tudi meritve EMC motenj, s katerimi bomo potrdili, da naprava ustreza vsem predpisanim standardom. Literatura [1] High-Speed Layout Guidelines,Texas instruments, avgust 2017, http://www.ti.com/lit/an/scaa082a/scaa082a.pdf. [2] A. Bahl, Signal speed and propagation delay in a PCB transmission line, junij 2018. https://www.linkedin.com/pulse/signal-speedpropagation-delay-pcb-transmission-line-amit-bahl/. [3] Via Optimization Techniques for High-Speed Channel Designs, Altera Corporation, maj 2008. https://www.intel.com/content/dam/www/programmable/ us/en/pdfs/literature/an/an529.pdf. [4] DACx760, Texas instruments, januar 2018. http://www.ti.com/lit/ds/symlink/dac8760.pdf. [5] ESD Protection Layout Guide, Texas instruments, februar 2015. http://www.ti.com/lit/an/slva680/slva680.pdf [6] A. Gadkari, S. Sadasivam, 2014: 16-Bit Analog Mixed Input and Output Module for PLCs, Texas Instruments [Dosegljivo: 2019]. [7] Model 2600 Family Instruction Manual, Sensoray Co. Inc, avgust 2008. http://www.sensoray.com/downloads/ man_2600_2.0.2_hw.pdf [8] Cognex products, 2019 https://www.cognex.com/products/machinevision/vision-software/vision-accessories/io-cards. Telekomunikacije Telecommunications Prenosni avtonomni registrator z lokalno obdelavo podatkov in brezžičnim prenosom Miha Horvat, Boštjan Vlaovič Fakulteta za elektrotehniko, računalništvo in informatiko, Univerza v Mariboru Koroška cesta 46, 2000 Maribor E-pošta: miha.horvat3@student.um.si, bostjan.vlaovic@um.si Portable autonomous data logger with local data processing and wireless transmission This paper presents a student project where a data logger was developed for measuring pressure in the water distribution system ”Vodovod sistema B”. The aim was to provide prompt notifications of quick pressure changes that might cause various problems and damage the distribution infrastructure. Most of the existing data loggers log only raw data without any processing, and report to the central system with time intervals that are inadequate to detect quick momentary changes of pressure. To avoid water hammer and similar problems, the developed data logger collects changes of pressure every second and logs data locally. Next, the minimum, maximum, and average values for the selected time period are sent to remote servers. The device is fitted in a watertight case and controlled by the Atmega328P microcontroller, which is programmed in C. Data are collected at control servers and visualised with graphs, Tables, and dynamic graphics. The initial tests show that the proposed solution will enable operators to optimise the water distribution system in the region. Some challenges remain, e.g., the power consumption should be decreased to improve the autonomy of the system 1 Uvod Za optimalno delovanje vodovodnih sistemov je potrebno podatke beležiti, obdelovati, ustrezno interpretirati ter ob zaznanih odstopanjih kvalitete distribucije vode tudi pravočasno ukrepati. Upravljavci vodovodnih sistemov spremljajo pretok, količino klora v vodi, temperaturo vode, nivo podtalnice in tlak. Slednji je še posebno pomemben, saj je ob prenizkih vrednostih prekinjena distribucija vode do porabnikov, pri previsokih vrednostih pa lahko pride do poškodb na cevovodih. Tehnični pravilnik na Vodovodu sistema B v 11. členu opisuje, da je obratovalni tlak v omrežju odvisen od hidravličnega stanja in porabe vode. Kadar ni pretoka je na mestu obračunskega vodomera lahko tlak najmanj 1,5 bara, v izrednih razmerah, ko pride do požara ali večje okvare, pa je tlak lahko tudi nižji [1]. Zaznavanje hipnih sprememb tlaka je ključnega pomena predvsem na transportnih cevovodih, saj tam ni objektov z merilno in krmilno tehnologijo. Na take lokacije je potrebno namestiti baterijsko napajane naprave, ki omogočajo beleženje in brezžični prenos ERK'2019, Portorož, 19-22 19 podatkov. Tovrstni merilniki morajo biti avtonomni in primerne velikosti za namestitev v neprostorne betonske jaške. V tem članku je predstavljen registrator podatkov, ki omogoča zaznavanje hipnih sprememb. Registrator pridobljene merilne podatke obdela in na strežnik brezžično pošlje zgolj mejne in srednje vrednosti, s čimer se optimizira količina hranjenih in prenesenih podatkov. Registrator lokalno hrani podatke na podatkovni kartici, zato ne potrebujemo namenskih kablov za prenos podatkov na računalnik, kot je to praksa pri tržno dobavljivih napravah. Modul GSM/GPRS omogoča prenos podatkov na oddaljeni strežnik za potrebe arhiviranja in vizualizacije podatkov. Ob odstopanjih od normalnih vrednosti se lahko pošlje tudi SMS sporočilo na izbrano telefonsko številko. Registrator je baterijsko napajan in dovolj majhnih dimenzij, da se ga lahko namesti v poljubni jašek. Napravo lahko klasificiramo kot nizkocenovni registrator, ki je funkcionalno primerljiv s trenutno ponudbo na trgu, a hkrati optimiziran za spremljanje hipnih sprememb tlaka na vodovodnem omrežju. Prototip smo testirali vzporedno z obstoječim komercialnim registratorjem. Izkazal se je s preprostim prenosom lokalno beleženih podatkov in zaznavanju hipnih sprememb tlaka, ima pa krajši čas avtonomnosti, zato bi bilo potrebno porabo električne energije še nekoliko zmanjšati. V drugem poglavju predstavimo gradnike prototipa ter programsko opremo za arhiviranje in vizualizacijo podatkov na strežniku. V tretjem poglavju opišemo testiranje prototipa registratorja. V sklepu povzamemo opravljeno delo in podamo predloge za izboljšave. 2 Razvoj prototipa registratorja Izbira komponent za prototip registratorja je bila odvisna od kompatibilnosti, funkcionalnih specifikacij, dobavljivosti gradnikov in cene. 2.1 Mikrokrmilnik Osrednja komponenta registratorja je mikrokrmilnik, ki izvaja vse funkcionalnosti registratorja. Odločili smo se za namestitev v podnožje, ki omogoča preprosto odstranitev in zamenjavo tekom razvoja prototipa. Izbrali smo ATMEL ATmega328P z 8-bitno centralno procesno enoto. Glavne lastnosti mikrokrmilnika so [2]: • zmogljivost: 20 MIPS (Millions of instructions per second) pri 20 MHz, • Bliskovni pomnilnik: 32 kB, • SRAM (Static Random-Access Memory) pomnilnik: 2 kB, • EEPROM (Electrically-Erasable Programmable Read-Only Memory) pomnilnik: 1 kB, z mikrokrmilnikom povezan s štirimi povezavami: MISO (Master Input Slave Output), MOSI (Master Output Slave Input), SCK (Serial Clock) ter SS (Slave Select). MISO in MOSI sta uporabljena za pošiljanje podatkov ali ukazov od gospodarja k sužnju ali obratno, po SCK se pošiljajo sinhronizacijski impulzi. SS je uporabljen za izbiro aktivnega modula s strani gospodarja, kadar je na mikrokrmilnik povezanih več sužnjev [3]. • najvišja frekvenca delovanja: 20 MHz, • 32 splošno-namenskih registrov, • 3 prilagodljivi časovniki z več načini delovanja, • notranje in zunanje prekinitve, • serijsko programirljiv USART (Universal Synchronus and Asynchronus Receiver-Transmitter), • 10-bitni analogno-digitalni pretvornik, • 5 programsko določljivih načinov delovanja za varčevanje z energijo, • napajanje: 1,8-5,5 V. Slika 1: Senzor tlaka Eltratec PPI110. Za delovanje mikrokrmilnika uporabljamo zunanji 16 MHz kristalni oscilator, ki v povezavi z vezjem uporablja dva 22 pF kondenzatorja. 2.2 Senzor tlaka Senzor tlaka Eltratec PPI 110 lahko meri tlak korozivnih in agresivnih medijev (tekočin) in se lahko uporablja za meritev tlaka v cevovodih ali rezervoarjih (slika 1). Senzor PPI 110 pretvarja tlak agresivnih in korozivnih medijev v tok 4–20 mA. Ohišje merilnika in senzor sta izdelana iz nerjavečega jekla, elektronika v ohišju pa je zalita s posebno smolo, kar povečuje robustnost in zanesljivost merilnika [4]. Tehnične lastnosti senzorja tlaka so: • napajanje: 9-27 VDC (Voltage Direct Current – dvožični priključek), 2.4 Modul za uro realnega časa Časovna značka se izmerjenim podatkom doda z uporabo modula RTC DS3231 za uro realnega časa. Slednji ima dodatno 3 V baterijsko napajanje (CR 2032), kar zagotavlja nemoteno delovanje tudi ob izpadu primarnega napajanja. Modul je z mikrokrmilnikom povezan preko vodila I2 C (Inter-Integrated Circuit). Uporablja se za povezavo počasnejših perifernih naprav z mikrokrmilniki na kratkih razdaljah. Deluje na principu gospodar/suženj [5]. Tudi v tem primeru je mikrokrmilnik gospodar. Modul je z mikrokrmilnikom povezan preko dveh povezav: SCK (Serial Clock) in SDA (Serial Data). SCK je uporabljena za sinhronizacijo prenosa podatkov med napravami, SDA pa za prenos podatkov. • merilno območje: 0-16 bara, • izhodni signal: 4-20 mA, • temperatura medija: -30 do 120°C, • temperatura okolice: -30 do 80°C, • merilna napaka: 0,1 % merilnega območja. 2.3 Modul za hrambo podatkov Za lokalno hrambo podatkov smo izbrali pomnilniško kartico tipa microSD. Glede na to smo izbrali primerni podatkovni modul, ki za delovanje potrebuje 4,5–5 V napetosti, pomnilniške kartice pa lahko imajo od 2 GB do 32 GB spomina. Bralnik je z mikrokrmilnikom povezan preko vmesnika SPI (Serial Peripheral Interface). SPI uporablja sinhrono dvosmerno serijsko povezavo med mikrokrmilnikom in perifernimi napravami. Deluje na principu gospodar/suženj. Ponavadi je mikrokrmilnik gospodar in upravlja periferne naprave ali module. Bralnik je 20 2.5 Komunikacijski modul GSM/GPRS Z uporabo modula GSM, model EVB SIM800L v2.2, registrator pošilja podatke preko GPRS omrežja v centralni nadzorni sistem ter v primeru alarma SMS sporočilo preko omrežja GSM. Modul vsebuje regulatorje napetosti, saj so moduli SimCom serije 800 zelo občutljivi na vhodno napetost, ki mora biti v ozko določenem obsegu. Za uporabljeni modul zadostuje vhodna napetost 5 V. Največjo porabo ima modul v fazi vzpostavljanja povezave, vse do 2 A. Med testiranjem smo imeli nekaj težav zaradi premalo zmogljivega napajalnega vira, kar je povzročalo pogoste ponovne zagone modula in izpad delovanja. Težavo smo odpravili z zamenjavo baterije. Standardno alkalno 9 V baterijo smo zamenjali z baterijami EWT ER26500M, ki zagotavljajo dovolj zmogljiv vir. V modul lahko vstavimo micro SIM kartico. SIM800L upravljamo z ukazi AT, ki jih z uporabo mikrokrmilnika pošiljamo preko serijske povezave. Slednja zaseda dve povezavi: RX (rece- ive) in TX (transmit). Na mikrokrmilniku Atmega328P lahko za RX in TX določimo različne priključke. Na komunikacijski modul smo priključili paličasto anteno proizvajalca Taoglas, tip TG.22.0112 za frekvenčno območje 824–2170 MHz. Deluje v GSM, GPRS, CDMA, HSPA, UMTS in EDGE omrežjih. Uporabljeni GSM/GPRS modul za prototoip podpira 2G omrežje (GSM), ki deluje na frekvencah 900 in 1800 MHz. Lastnosti te antene v določenih frekvenčnih pasovih opisuje tabela 1. Tabela 1: Lastnosti antene TG.22.0112 Lastnost frekvenca delovanja (MHz) polarizacija impedanca VSWR prilagoditveno slabljenje (dB) izkoristek (%) najvišji dobitek (dBi) povprečni dobitek (dBi) GSM frekvenčni pas 880–960 1710–1880 linearna 50 Ω <3.5 <-5dB 70,86 70,47 1,93 2,37 -1,50 -1,52 2.6 Napajalni modul in baterija Za vir napajanja smo se odločili uporabiti baterijo EWT ER26500M. Baterija je sestavljena iz dveh litijevih 3,6 V celic. Skupna napetost baterije je 7,2 V, kapaciteta baterije je 6500 mAh. Izhodno napetost, potrebno za delovanje prototipa registratorja, reguliramo s stabilizatorji napetosti ali s stikalnim pretvornikom navzgor. Uporabljeni stabilizator je tipa LM7805CV, ki sprejema 7–35 V vhodne napetosti, izhodno napetost pa stabilizira na 5 V, z najvišjim tokom 1 A. Sikalni pretvornik DC-DC navzgor je tipa LM2577. Vhodna napetost je lahko 5–32 V, izhodna pa 6–35 V. Maksimalni izhodni tok je 2 A. Izhodna napetost se regulira s pomočjo vijačnega regulatorja na modulu. Stabilizator uporabljamo za reguliranje napetosti na mikrokrmilniku ter ostalih modulih, stikalni pretvornik navzgor pa za napajanje senzorja tlaka, ki za delovanje potrebuje 14 V napetosti. 2.7 Ohišje za vezje in baterijo Vse komponente smo ustrezno povezali ter pricinili na prototipno vezje. Končno PCB vezje še ni bilo izdelano, saj je pričakovati manjše spremembe in popravke tudi na vezju. Po testiranju bo izdelano končno vezje PCB. Skupno vezje smo namestili v ohišje z zaščito IP67. Baterija je nameščena fiksno na spodnji strani pokrova. Registrator je dovolj kompakten za namestitev v vse tipe obstoječih jaškov. Končni prototip registratorja z vsemi moduli na prototipnem vezju je prikazan na sliki 2. Slika 2: Prototip registratorja Uporabljen mikrokrmilnik ATmega328P, vsebuje 10bitni analogno-digitalni pretvornik na šestih različnih vhodih (priključki od 23 do 28). Vhodni signal na tovrstnem priključku lahko predstavimo s 1024 različnimi vrednostmi. Merilnik tlaka PPI 110 deluje na podlagi tokovne zanke v območju 4–20 mA, območje merjenja dejanske vrednosti tlaka pa je od 0 do 16 barov. Enačba 1 predstavlja pretvorbo izmerjene vrednosti na merilnem uporu v bare. p= (Uin − Umin )(pmax − pmin ) + pmin (Umax − Umin ) (1) Uin predstavlja napetost na analognem vhodu mikrokrmilnika in je med 1 in 5 V. Umin predstavlja najnižjo vrednost vhodne napetosti, torej 1 V, Umax pa najvišjo vrednost vhodne napetosti, torej 5 V. Najnižjo željeno vrednost podaja pmin (0), najvišjo pa pmax (16). Zaradi večje preglednosti in optimalnejše porabe delovnega pomnilnika smo posamezne dele algoritma zapisali v več funkcij. Kjer je bilo to mogoče, smo uporabili lokalne spremenljivke. 2.9 Vključitev v centralni sistem nadzora Komunikacija med registratorjem in strežnikom v centralnem sistemu poteka preko protokolnega sklada TCP/IP. Javno podjetje Vodovod sistema B ima vzpostavljen zasebni APN (Access Point Name), na katerega se povezujejo vsi uporabniki kartic SIM, ki so uporabljene za telemetrijo. V nadzornem centru se na RADIUS strežnikih 2.8 Programska oprema Glavni program mikrokrmilnika zajema merjenje analo- za vsako kartico določi uporabniško ime in pripadajoče gne vrednosti tlaka, obdelavo merjenih vrednosti, beleženje geslo za dostop do omrežja. Oddaljene merilne naprave podatkov na SD kartico in upravljanje GSM/GPRS mo- imajo dodeljen statični naslov IP, ki omogoča enostavno dula z ukazi AT za prenos podatkov v centralni nadzorni upravljanje naprav na daljavo. Uporaba privatnega APN sistem ter pošiljanje sporočila SMS v primeru preseženih je dodaten vidik varnosti, saj se promet med merilnimi napravami in strežniki loči od javnega medmrežja. Dovrednosti. stop do intraneta podjetja je dodatno zaščiten z več ukrepi. 21 Na strežniku je nameščena storitev za poslušanje na vratih TCP. Storitev smo razvili v programskem jeziku C#, v prostodostopnem razvojnem okolju IDE Visual Studio Community 2017. Razviti servis teče v ozadju operacijskega sistema Windows. Storitev ob prejeti zahtevi za komunikacijo prebere prejete podatke in jih v formatu CSV (Comma Separated Values) zapiše v datoteko. Iz te datoteke program GE Proficy Historian prebere vrednosti ter jih, skladno z nastavitvami, pripiše izbranim spremenljivkam. Za vizualizacijo podatkov z dinamičnimi grafičnimi prikazovalniki in izrisi trendov smo, v okviru sistema SCADA, uporabili program GE Proficy iFix (slika 3). s komercialno dobavljivimi registratorji. Osnovni izziv sta predstavljala dovolj pogosto izvajanje meritev tlaka in obdelava podatkov, ki omogoča zaznavanje hipnih sprememb na vodovodnem omrežju. Z izdelavo registratorjev po vzoru prototipa in namestitvijo teh na vodovodni sistem bi omogočili optimizacijo delovanja vodovodnega sistema B. Hitrejše zaznavanje sprememb tlaka v vodovodnih ceveh bi omogočilo pravočasno ukrepanje upravljavcev ter preprečilo finančne posledice poškodb sistema. Prototip bi lahko izboljšali z uporabo mikrokrmilnika, ki bi imel več pomnilnika, kar bi omogočalo zahtevnejšo obdelavo podatkov in daljši interval komunikacije, saj bi se več podatkov lahko hranilo v delovnem pomnilniku. Optimizirati bi bilo potrebno tudi porabo električne energije, kar bi omogočilo avtonomno delovanje registratorja za daljše časovno obdobje. Trenutna različica hrani podatke na pomnilniški kartici, zato je potreben fizični dostop do bralnika. S podporo tehnologiji Bluetooth bi se lahko popolnoma izognili poseganju v jaške in registratorje. Ob primernem razvoju omrežja LoRa in NB-IoT bi veljalo nadgraditi tudi komunikacijski modul. Literatura [1] Tehnični pravilnik na Vodovodu sistema B. Ur. l. RS, 14/2018, str. 2214. [2] Atmel Corporation. ATmega328P Datasheet. 2009. Dostopno na: https://www.sparkfun.com/datasheets/Components/SMD/ ATMega328.pdf Dostopano: [14. 1. 2019] Slika 3: Trenutno stanje merjenih podatkov. 3 Testiranje prototipa registratorja Prototip registratorja smo testirali v nadzorovanem okolju s prilagojenimi komponentami glede na zmožnosti podjetja, v sodelovanju s katerim je prototip nastal. Testiranje je potekalo v pisarnah javnega podjetja Vodovod sistema B. Za merjenje tlaka smo uporabili tlačno posodo, v kateri je bil stisnjen zrak. Senzor smo namestili med dva ventila, s katerima smo nadzorovali izpust zraka ter simulirali padec tlaka v cevovodu. Med testiranjem smo preverili delovanje vseh funkcionalnosti prototipa. Preverili smo lokalno beleženje podatkov na spominsko kartico. Podatki so bili z ustrezno časovno značko pravilno zapisani brez odstopanj. Na strežniku smo preverili pošiljanje oz. prejemanje podatkov. Ti so bili relevantni in enakih vrednosti kot podatki, zapisani na pomnilniški kartici. S simulacijo padca tlaka pod mejno vrednost smo preverili pošiljanje SMS sporočila na izbrano telefonsko številko. Sporočilo je bilo uspešno poslano. Prav tako je bila uspešna lokalna obdelava podatkov na samem registratorju. Vse funkcionalnosti prototipa so bile potrjene kot delujoče. 4 Zaključek V prispevku smo predstavili prototip avtonomnega registratorja podatkov, ki lokalno beleži meritve analognega senzorja tlaka, jih obdeluje in brezžično pošilja na oddaljeni strežnik. Funkcionalnosti prototipa so primerljive 22 [3] Wikipedia. SPI. 2013. Dostopno na: https://sl.wikipedia.org/wiki/SPI Dostopano: [26. 6. 2019] [4] Eltratec d.o.o. Tehnični list Merilnik tlaka PPI 110. Sveti Jurij ob Ščavnici: Eltratec, trgovina, proizvodnja in storitve d.o.o., 2010. Dostopno na: http://www.eltratec.com/datoteke/tehni%C4%8Dni %20listi/PPI110(P01-01-01-002).pdf Dostopano: [21. 12. 2018] [5] Wikipedia. I2C. 2019. Dostopno na: https://en.wikipedia.org/wiki/I%C2%B2C Dostopano: [26. 6. 2019] Sistem za nadzor dimniških požarov Aljaž Gaber, Boštjan Vlaovič Fakulteta za elektrotehniko, računalništvo in informatiko, Univerza v Mariboru Koroška cesta 46, 2000 Maribor, Slovenija E-pošta: aljaz.gaber@student.um.si, bostjan.vlaovic@um.si Chimney fire control system In many parts of the world it is necessary to have a heating system installed in our homes. Most of these systems contain a chimney. Inadequate maintenance presents risk of creosote build-up on its inner walls. It can ignite under the high temperature of flue gases and eventually cause a chimney fire. As a part of the student project, we have developed a low-cost DIY prototype wireless sensor system for detecting chimney fires. It contains a measurement and receiving unit, which are based on the IoT platform NodeMCU. The measurement unit reads the temperature of the flue gases and concentration of the carbon monoxide. Data are encrypted with the XXTEA algorithm and sent to the receiving unit using LoRa technology. The receiver unit stores the received data on a remote Firebase via Wi-Fi technology. The article presents the development of the prototype, and suggests additional functionalities that could be developed using the proposed approach. 1 Uvod V mnogih predelih sveta je ogrevanje ključnega pomena za normalno bivanje. Najbolj pogosti so ogrevalni sistemi z dimniki. To področje je v Sloveniji zakonsko urejeno, a se kljub temu ocenjuje, da je kar 30.000 hišnih dimnikov neprimerno vzdrževanih. Tovrstna malomarnost je ena izmed glavnih povzročiteljev dimniških požarov. Dimniški požar lahko definiramo kot vžig nabranega kreozota na notranjih stenah dimnika. Nevzdrževani dimnik ima večjo možnost za nabiranje kreozota, ki je zmes fenola in fenolovih etrov. Nastane pri nepopolnem izgorevanju ob uporabi neustrezne kurjave, kot je moker les ali karton. Najpogostejši vzrok za vžig kreozota je vroč ogenj v kurilni peči, ki prekomerno segreje izhodne pline [1]. Optimalna povprečna temperatura izhodnih plinov je 110 °C. Faza vžiga kreozota se začne, ko izhodni plini dosežejo temperaturo nad 500±37 °C. Do požara pride, ko je kreozot izpostavljen tej temperaturi za približno 30 minut. V fazi požara izhodni plini s hipnim skokom dosežejo temperaturo do 1000 °C, gostota ogljikovega monoksida pa presega 7000 delcev na milijon [2, 3, 4]. ERK'2019, Portorož, 23-26 23 Letno zabeležimo več kot 600 dimniških požarov pri povprečni starosti objektov 34 let [5]. V primerjavi s Finsko, ki ima dvakrat večjo populacijo od Slovenije, veliko hladnejše podnebje ter je veliko intenzivnejši uporabnik ogrevalnih sistemov, je med letoma 2008 in 2014 v dimnikih zagorelo med 500 do 700-krat na leto [6]. Ta statistični podatek nakazuje, da imamo v povprečju večje število dimniških požarov. V okviru študentskega projekta smo zato sprejeli izziv in razvili prototip nizkocenovnega brezžičnega senzorskega sistema za detekcijo dimniških požarov. Naš cilj ni bila profesionalna naprava, temveč pripomoček, ki bi ga lahko zainteresirani posamezniki izdelali sami, pri delovanju uporabili obstoječo infrastrukturo ter na ta način pripomogli k večji varnosti svoje nepremičnine. Po pregledu obstoječih rešitev in uvodnem spoznavanju lastnosti dimniških požarov smo se odločili, da sistem razdelimo na dva sklopa. Na hišnem dimniku bo nameščena merilna enota, ki z uporabo različnih senzorjev detektira potencialno nevarnost za razvoj dimniškega požara. Ob izpolnjenih pogojih se posreduje šifrirano sporočilo na sprejemno enoto. Slednja lahko sprejema podatke z več merilnih enot ter ukrepa skladno s sprejetim protokolom. Enoti za komunikacijo uporabljata omrežje LoRa (slika 1). Sprejemna enota vključuje tudi svetlobno in zvočno signalizacijo ob prejetem LoRa paketu ter omogoča povezavo v medmrežje preko Wi-Fi. To predstavlja osnovo za razvoj centralnega sistema za obveščanje, tudi z uporabo storitev v oblaku in aplikacij za mobilne telefone. šifrirana brezžina povezava medmrežje Wi-Fi LoRa Mikrokrmilnik Opozorilni signali LoRa Mikrokrmilnik Senzorji Slika 1: Zasnova sistema V drugem poglavju podrobneje predstavimo posamezne sklope in izbrane gradnike prototipa. V tre- tjem poglavju opišemo komunikacijo preko omrežja Temperature pri dimniškem požaru presegajo speLoRa in šifriranje. V zaključku podamo oceno stroškov cifikacije izbranega temperaturnega senzorja, saj ta ter predloge za izboljšave. deluje zgolj do 80 ◦ C. Pred testiranjem na dimniku bi bilo potrebno uporabiti senzor, ki podpira meritve 2 Zasnova prototipa vsaj do 500 ºC, na primer senzor DM-333, ki podpira meritve do 600 ◦ C. Za potrebe prototipa smo sprejeli Odločili smo se, da bo prvi prototip meril tempeomejitve izbranega senzorja, ki deluje z natančnostjo raturo izhodnih plinov in gostoto delcev CO, ki so ±2 ◦ C. Za vzpostavitev delovanja senzorja smo upoposledica nepopolnega izgorevanja ob gorenju kreorabili prostodostopno knjižnico [8, 9]. Senzor za svoje zota. Presodili smo, da je kombinacija teh vzorcev delovanje potrebuje napajalno napetost 3,3 V. DHTlahko dovolj zanesljiva indikacija razvoja požara v 11 je digitalni senzor, izmerjene vrednosti temperadimniku. ture beremo preko digitalnega vmesnika D4 na NoIzbrali smo prototipno platformo NodeMCU z modeMCU. dulom ESP8266. NodeMCU vključuje 16 digitalnih Senzor MQ-2 zaznava dim in pline, kot so ogljikov vhodov oz. izhodov, analogni vhod, operacijski sismonoksid, propan in metan v koncentracijah med tem XTOS, podporo omrežju Wi-Fi in vodilo USB, 300 in 10.000 delci na milijon [10]. Pri nepopolpreko katerega se lahko platforma tudi napaja. Na nem gorenju kreozota vsebuje nastali dim koncenvoljo je 123 kB delovnega pomnilnika in trajni potracijo ogljikovega monoksida, ki je višja od 7000 mnilnik velikosti 4 MB [7]. To platformo smo izbrali delcev na milijon. Za delovanje priporočeno potrezaradi nizke energijske porabe in prekratke časovnice buje napetost 5 V, vendar smo uporabili napajalno za razvoj lastne tiskanine. Za podporo omrežju LoRa napetost 3,3 V. Pri testiranju nismo opazili težav, smo izbrali modul Ra-01. zato nismo uporabili napetostnega pretvornika. Senzor vključuje grelnik jakosti 900 mW in poseben po2.1 Merilna enota Merilna enota deluje avtonomno v enem izmed dveh stopek kalibracije z 20-sekundnim predgretjem sennačinov. V aktivnem stanju izvaja meritve, preostali zorja. V naši aplikaciji kršimo priporočila glede tračas pa je v t. i. globokem spanju z optimirano po- janja meritve, saj je 10 sekund ravno polovica prirabo energije. Meritve se izvajajo 6-krat na uro v 10- poročene vrednosti. S krajšo meritvijo podaljšamo sekundnih intervalih. To nam omogoča pravočasno čas avtonomnega delovanja sprejemne enote. Ker ne detekcijo faze vžiga kreozota. Po meritvi se podatki potrebujemo visoke natačnosti meritev, senzor pa sepošljejo na sprejemno enoto preko omrežja LoRa, grevajo tudi izhodni plini, smo bili pripravljeni sprepreostali čas pa je enota neaktivna (slika 2). Za mer- jeti ta kompromis. Ob testiranju se niso pokazala jenje temperature smo uporabili senzor DHT-11, za pomembna odstopanja zaradi krajšega časa meritve. Za povečanje avtonomnosti izklopimo grelnik tudi v merjenje gostote plinov pa senzor MQ-2. času globokega spanja z uporabo MOSFET tranzistorja. Izmerjene vrednosti beremo z uporabo analogno-digitalnega priključka A0 na mikrokrmilniku. VreMerilna enota Sprejemna enota dnosti predstavljajo izhodno napetost v referenčnih enotah, ki so proporcionalne s koncentracijo plina ali dima v zraku. Občutljivost senzorja izberemo s spremenljivim uporom nameščenim na ohišju senprejet aktiviraj se NE zorja. Senzor vsebuje zaznavni element, ki temelji podatkovni na aluminijevem oksidu s prevleko iz kositrovega diopaket ksida. Senzor glede na koncentracijo plinov oz. dima DA v zraku spreminja upornost zaznavnega materiala. zaženi asovnik Upornost se spreminja v območju med 20 kΩ in 2 povezava na Wi-Fi kΩ in je dodatno odvisna od vlažnosti in temperature okolice. Mejne vrednosti za zaznavo CO smo izvedli s testiranjem. Na aluminijasti plošči smo s spajkalizvedi meritve posredovanje nikom segrevali vzorec kreozota iz hišnega dimnika meritev v oddaljeno do pojava ognja. Med segravanjem smo senzor držali podatkovno bazo 20 cm nad ploščo. Skladno s priporočili za uporabo šifriraj in pošlji senzorja MQ-2 smo mejne koncentracije CO v dimu zapusti omrežje podatke določali tako, da smo ugotavljali razmerje Rs/Ro. Z Wi-Fi uporabo podatkovnega lista lahko določimo koncentracijo CO v delcih na milijon. Izmerjena vrednost globok spanec Rs/Ro je bila v stanju brez zaznanih plinov 7,55. V fazi vžiga, ob pojavu belega dima, je padla na 5,01. Ob vžigu se je pojavil ogenj in črn dim. V tej fazi je vrednost Rs/Ro padla na 1,79, kar označuje vsebnost Slika 2: Poenostavljen diagram izvajanja 24 CO s koncentracijo okoli 7000 delcev na milijon. Na merilni enoti se prebrane vrednosti temperature in gostote dima hranijo v ločenih nizih, na primer, temp=74, dim=6.21. Pred prenosom podatkov se polji združita v skupni znakovni niz, za podan primer se uporabi ”74,6.21”. Niz se pred oddajo šifrira z uporabo algoritma XXTEA. V aktivnem stanju merilna enota porabi v povprečju 130 mA, v času globokega spanja pa okoli 50 nA. Meritve izvajamo vsakih 10 minut. To zadostuje za pravočasno zaznavo vzpostavljanja pogojev za razvoj dimniškega požara. Ob izbiri napajalnega vira kapacitete 20 Ah lahko dosežemo avtonomnost naprave za 11 mesecev dolgo kurilno sezono. 2.2 Sprejemna enota Sprejemna enota prejeti znakovni niz preko omrežja LoRa pretvori v format JSON. Do medmrežja je povezana z uporabo omrežja Wi-Fi. Meritev shrani v oddaljeno podatkovno bazo Firebase v formatu {”temp”,74}, {”dim”,6.21}. S takšnim pristopom smo testirali delovanje v oblaku ter hkrati zagotovili podporo različnim uporabniškim platformam [11, 12]. Za namene testiranja smo dodali svetlečo diodo in piskač, ki signalizirata uspešno prejet paket. Delovanje te enote ni avtonomno, saj je priključena na stalni vir napajanja. Deluje tako, da ves čas preverja, ali je na voljo nov paket iz katere merilne enote (slika 1). Ob prejetem paketu se preko Wi-Fi modula poveže na usmerjevalnik in podatke shrani v oddaljeno podatkovno bazo Firebase. Naprava je povezana v medmrežje samo za čas prenosa. S tem dosežemo manjšo izpostavljenost varnostnim tveganjem ter potencialnim težavam ob ponovnih zagonih usmerjevalnika. 3 Omrežje LoRa Merilna in sprejemna enota komunicirata preko brezžične tehnologije LoRa. Tehnologija je namenjena uporabi v aplikacijah z nizko porabo energije, majhnimi prenosnimi hitrostmi in komunikacijo na sorazmerno dolgih razdaljah. Praviloma je omrežje sestavljeno iz centralnega vozlišča, na katero je povezanih več ostalih vozlišč. Prenosne hitrosti zadostujejo našim potrebam [13]. Podatkovna Usmerjevalnik baza Wi-Fi Sprejemna Merilna enota enota t2 t3 merilne vrednosti LoRaWAN ACK asovni žig (t1,t4) t1 t4 avtorizacija potrditev prenos podatkov potrditev prekinitev povezave potrditev Slika 3: Sporočila med usmerjevalnikom, merilno in sprejemno enoto 25 LoRa modul Ra-01 vključuje integrirano vezje SX1278 z občutljivostjo reda -148 dBm in podporo modulacijam FSK, GFSK, MSK in GMSK. Modul odlikuje nizka poraba: 93 mA pri pošiljanju, 12,15 mA ob sprejemu in 1,6 mA v stanju pripravljenosti. Predviden doseg signala modula je do 5 km. Omejitev pa predstavlja podprti frekvenčni obseg delovanja med 410 in 525 MHz in ne na frekvenci 868 MHz, na kateri deluje LoRa omrežje v našem okolju. Zaradi časovnih omejitev projekta smo se vseeno odločili za njegovo uporabo na frekvenci 433 MHz. Modul ima priloženo vijačno anteno, ki se namesti s spajkanjem. Predviden dobitek antene je 2,5 dBi [14]. Za namestitev na razvojno ploščo smo uporabili namenski adapter ESP-12. Komunikacijo vedno prične merilna enota (slika 3). Ob prehodu iz globokega spanca izmeri vrednosti, pripravi paket LoRa in ga pošlje na naslov sprejemne enote [15]. Sledi potrditev o uspešno sprejetem paketu. Merilna enota pošlje časovni žig z začetnim (t1) in končnim časom (t4). To potrebuje algoritem za sinhronizacijo. Pri programski izvedbi povezave smo uporabili knjižnico ”Lora Shield Arudino”. Za varno komunikacijo med enotama se poslane podatke šifrira po postopku XXTEA [16]. Postopek temelji na Corrected Block TEA algoritmu in se uporablja pri več IoT projektih, saj ni procesorsko zahteven. Omejitev uporabljene knjižnice je, da lahko naenkrat zakodiramo največ 80 zlogov. V našem primeru to ne predstavlja ovire, saj podatki ne presežejo 48 zlogov. Poslani podatki se na merilni enoti šifrirajo tik pred pošiljanjem, na sprejemni pa dešifrirajo takoj po prejetju. Enoti za uspešno komunikacijo uporabljata enak šifrirni ključ. Ob testiranju na terenu smo dosegli domet signala okoli 610 m. Ko smo sprejemno enoto namestili v notranjost stavbe, se je domet zmanjšal za približno 100 m. Sprejemna enota lahko sprejema podatke na 24 različnih kanalih. Stroški izdelave prototipa merilne enote so 35 €, stroški sprejemne enote pa 25 €. Dobava vseh komponent traja približno dva tedna. Vse uporabljene knjižnice in programska oprema je brezplačna. V razvoj in testiranje prototipa smo vložili okoli 150 ur. 4 Zaključek in možnosti za izboljšave V članku smo predstavili prototip sistema za nadzor dimniških požarov. Predstavili smo uporabljene komponente, njihovo vključitev v sistem in implementacijo. Razvito programsko opremo smo testirali ob nadzorovanem ognju, preverili smo doseg sistema in ocenili strošek izdelave prototipa. Sistem bi bilo vsekakor smotrno nadgraditi s podporo delovanju na frekvenci 868 MHz, saj bi tako lahko, zaradi obstoječe infrastrukture, bistveno povečali območje delovanja posamezne sprejemne enote. Uporabili bi lahko obstoječe omrežje LoRaWan, kjer je trenutno aktivnih 58 prehodov. Dodatno bi veljalo preveriti različne načine delovanja z namenom [3] Baker E. David. Wood Stove Maintenance and Operation. University of Missouri, oktober 1993. Dostopno na: https://extension2.missouri.edu/g1731 [4] Isenhour E. J., Brewer P. J., Eldridge A. Chimney Fires: Cause, Effects & Evaluation, Chimney Safety Institute of America, marec 2007. Dostopno na: https://www.csia.org/chimneyfires.html [5] Šubic M. Pozimi je lahko dimnik še kako nevaren, februar 2018. Dostopno na: https://www.dnevnik.si/1042802774 [6] Leppänen P., Neri M., Luscietti D., Bani S., Pentti M., Pilotelli M. Comparison between Europen chimney test results and actual installations, november 2016. Dostopno na: https://journals.sagepub.com/doi/full/10.1177/07349 04116680222 [7] NodeMCU, marec 2015. Dostopna na: https://en.wikipedia.org/wiki/NodeMCU Slika 4: Izmerjen domet na prostem, med merilno in sprejemno enoto povečanja dosega. Ob razvoju nove različice prototipa bi se lahko posebna pozornost posvetila podaljšanju časa avtonomije merilne enote, razmisleku o pripravi protokola za povezavo čim večjega števila merilnih enot na posamezno sprejemno enoto in povečanju zanesljivosti z uvedbo redundančnih sprejemnih enot. Pregled nad podatki lahko izvedemo s spletno aplikacijo ali namensko aplikacijo za mobilne naprave. Tako bi lahko imel uporabnik na voljo dodatno analizo in kronološki pregled merilnih vrednosti. Ob tem bi skrbni uporabnik lahko zaznal spremembe v svojem hišnem dimniku in pravočasno ukrepal še pred razvojem pogojev za dimniški požar. Ob tem bi se verjetno pojavila potreba za boljšo kalibracijo senzorja za dimne pline, ki jo trenutni prototip ne vključuje. V primeru testiranja v realih pogojih delovanja bi bila najprimernejša namestitev merilne enote v kapo dimnika. Izbrano ohišje bi moralo biti odporno na zunanje vplive, primerno velikost celotne enote pa bi lahko zagotovili tudi z izvedbo lastne tiskanine, čemur se ob izdelavi prvega prototipa nismo posvetili. Literatura [1] Chimney Fires Can Be Prevented. Northeastern Chimney, Inc., oktober 2015. Dostopno na: https://www.ctsweep.com/blog/top-sweepstories/chimney-fires-can-be-prevented/ [8] DHT Sensor Library, februar 2019. Dostopno na: https://github.com/adafruit/DHT-sensor-library [9] DHT11 – Temperature and Humidity Sensor. Components 101, januar 2018. Dostopno na: https://components101.com/dht11-temperaturesensor [10] MQ-2 Semiconductor Sensor for Combustible Gas. Pololu Robotics & Electronics, januar 2019. Dostopno na: https://www.pololu.com/file/0J309/MQ2.pdf [11] Firebase Realtime Database, januar 2019. Dostopno na: https://firebase.google.com /docs/database/ [12] Firebase Arudino, marec 2019. Dostopno na: https://github.com/FirebaseExtended/firebasearduino [13] Narayan R. All You Need to Know About LoRaWAN and Hot It Works, november 2015. Dostopno na: https://www.iotleague.com/lorawanlow-power-wide-area-network/ [14] Ra-01 LoRa Module. Ai-Thinker, 2017. Dostopno na: http://wiki.aithinker.com/ media/lora/docs/c047ps01a1 ra01 product specification v1.1.pdf [15] Sisinni E. Standard LoRaWAN message exchange sequence between end device (ED) and gateway (GW), avgust 2018. Dostopno na: https://www.researchgate.net/figure/StandardLoRaWAN-message-exchange-sequence-betweenend-device-ED-and-gateway-GW fig3 327085205 [16] XXTEA Encryption and Decryption Library for Arduino, november 2018. Dostopno na: https://github.com/boseji/xxtea-lib [2] Greiner H. T. Carbon Monoxide Poisoning: Checking for Complete Combustion (AEN-175). Department of Agricultural and Biosystems Engineering, Iowa State University, september 1997. Dostopno na: https://www.abe.iastate.edu/extension-andoutreach/carbon-monoxide-poisoning-checking-forcomplete-combustion-aen-175/ 26 Overview and test of on-premise open-source and online proprietary collaboration systems for establishing IT business environment in small and medium-sized companies. Matej Rabzelj, Aljaž Martinčič, Tjaša Jereb, Andrej Kos University of Ljubljana, Faculty of Electrical Engineering E-mail: matej@rabzelj.si, aljaz.martincic@ltfe.org, tjasa.jereb@svet.fe.uni-lj.si, andrej.kos@fe.uni-lj.si Abstract 2 Every company faces the problem of establishing a functional IT business environment in order to enable productive work. Selection of the most optimal digital collaboration solution requires balancing different factors, such as user privacy, service scalability, and its cost. This paper briefly describes different aspects of some of the most widely-used self-hosted open-source online collaboration software and its commercial cloud-hosted competitors. Furthermore, it describes the setup of a promising opensource project in a simulated small-sized IT business environment. 1 Introduction Today, hundreds of different online collaboration services are available, ranging from essential file storage utilities to complete in-browser office solutions. The vast majority of their market share belongs to some of the most prominent online players, such as Google, Dropbox, Atlassian, and several others. These services are usually provided to professional customers for a certain monthly subscription, or in some cases entirely for free, but with severe usability restrictions or in the form of an ad-supported product. Nevertheless, nearly all of the available options come with some form of constraints regarding either the storage size and bandwidth capacity or privacy policy concerns and extensibility restrictions. More demanding customers or companies with numerous users may have to pay very high fees or even develop custom solutions in order to get a flexible service that truly fits their business model and needs. The combined costs of volume software licenses and multiple third-party service subscriptions may not always lie within the company’s financial structure or justify their use. Attention to this problem has recently been brought to light by the several of the world’s leading research institutions, including CERN’s migration to open source software to avoid vendor and data lock-in [1] and NASA’s switch to Linux on board of the International Space Station [2]. Following these examples, we selected the Nextcloud project from the vast array of available open-source collaboration services, compared it with two commercial third-party solutions, and set up an on-premise IT collaboration system. ERK'2019, Portorož, 27-30 27 Licensing, cost, privacy and security License costs and subscription fees are only some of the aspects when debating about the usage of open source solutions in a business environment. Intellectual property and EULA (End User License Agreement) licenses must fit the company’s policy before a decision of purchase is made. Some organizations, for example, may not be comfortable using a proprietary licensed software due to possible privacy concerns, while others may intentionally avoid AGPL, GPL or even LGPL license, as it obligates them to release the source code of distributed binaries or modified libraries [3]. Other issues, particular to cloud-based solutions include the questions of data ownership, its confidentiality, and the customer’s privacy. When customers upload their data to a file sharing or online processing service, that data is treated regarding the service provider’s ToS (Terms of Service) and its Privacy Policy. Sensitive data may cross borders and can be inspected by different computer algorithms or even forwarded and processed by subcontractors or third parties. These service providers and their privacy policies are not necessarily under the jurisdiction of the same regulatory framework as in the customer’s state. Individual users may, therefore, be profiled and find themselves subject to a targeted advertisement. On the other side, companies attempting to implement their own version of open source projects, which by most licenses comes ”as is” and ”without warranty or guarantee of any kind” [3] need to understand the risks involved and assume complete responsibility for their system’s operation. Particularly noteworthy is adequate IT and hardware security expertise to aid in achieving compliance with local regulations and standards. Furthermore, a small to a medium-sized organization may never be able to achieve the same data security standards in terms of geolocation and physical redundancy as its most substantial cloud-providing counterparts. 3 Overview of typical online collaboration system’s features The essential components of online collaboration are file sharing and permission management. Such a system should support secure file storage, either in a centralized on-premise location or in a decentralized manner (a server cluster, geographically distributed servers). It should also provide user-friendly file access via the web or desktop and mobile client application. Advanced file-sharing solutions typically also offer file versioning and remote directory mounting via various file transfer protocols such as WebDAV, SMB and FTPS. Additionally, office collaboration requires some form of internal task management and team communication. Some systems implement file tagging, per-person task management, real-time document co-authoring, and private chat platforms. Rare solutions also include a self-hosted e-mail server, as most only offer an online interface for e-mail integration. While an integrated e-mail client does streamline the business workflow, it does not guarantee communication security and user privacy as data still resides on a third-party server. Lastly, per-employee PIM (personal information management) suite should include a system for calendar and contact information sharing to aid meetings and complete the digital transformation of business. While it is desired that collaboration software includes the functionalities mentioned above, it should not sacrifice information security to do so. It is therefore expected that software follows the latest security guidelines, such as TLS communication encryption of communication, CSP (Content Security Policy) 3.0 for web interfaces, two-factor authentication support, support for perfile or full disk encryption, and revokable methods of file sharing. When comparing different solutions, it is also worth noting how scalable those systems are. Self-hosted solutions for small to medium businesses typically prevent vendor lock-in in the long run but can pose a problem as the company and its demands grow. The comparison should, therefore, include support for third-party extensions (distributed via a trusted source) or store data in a way that allows either API access or direct filesystem manipulation on POSIX systems. The latter two options enable companies to easily extend the open source software and further tailor the system to their needs. 4 Comparison of popular online collaboration solutions and their features Despite evaluating several open-source and proprietary collaboration solutions centered around file-sharing, such as Nextcloud, Seafile, Pydio, Kolab Groupware, GSuite, Dropbox, and Box, their detailed comparison is far beyond the scope of this article. Instead, the following section provides a brief overview of some of the most popular solutions available on the internet and presents their most prominent features as well as potential disadvantages in the following table (Table 1). 28 Table 1: Comparisons of popular open-source and proprietary online collaboration suites [4]. Comparison is based on criteria with an emphasis on security, file manipulation features, document co-authoring, PIM, user communication options, and system extensibility. Feature GSuite Nextcloud Dropbox On premises No Yes No Source model Closed Open Closed Setup complexity Easy Difficult Easy Server-side encryption Yes Yes Yes Client-side encryption No Yes No Brute-force prevention Yes Yes Yes ENV variable authentication No Yes No LDAP support Yes Yes Yes Two factor authentication Yes Yes Yes NFS support No Yes No CIFS support No Yes No File versioning Yes Yes 1 year Access Control Lists Yes Yes Yes Online file preview Yes Yes Yes PIM features Yes Yes No Audio, Video, Text Chat Y/Y/Y Y/Y/Y No Integrated e-mail server Yes No No Inter-server sharing No Yes No Lan synchronization No No Yes Online office Yes Extension Thirdparty Desktop client Yes Yes Yes Mobile client Yes Yes Yes Compared features represent several different system aspects and can be roughly categorized into the following sections: • licensing model and system setup complexity • available security and authentication mechanisms • file storage and file manipulation mechanisms • PIM, live document co-authoring and team communication options Feature selection criteria is based on approximation of real-world use cases in various business environments. The first category usually dictates the service setup and operational costs. While commercial cloud-based software tends to have simple installation and low implementation price, its costs tend to significantly grow with the increasing number of system users (company employees). Inversely an organization may freely obtain community releases of open source solutions without any costs but has to possess the expertise and network architecture to install and maintain such a service. The second section provides an overview of common authentication mechanisms, which may be one of the deciding factors for integration with existing digital infrastructure. Adequacy of file storage mechanisms largely depends on the nature of work and the consequential file volume and size. The typical uplink bandwidth limitations may also play an important role and require a fast locally attached storage as an alternative. Lastly, a vast diversity of PIM, co-authoring, and team intra-communication functionalities justifies the title of online collaboration solutions. 5 The host system includes a modified Debian Linux distribution with Proxmox kernel and KVM virtualization utilities. It is installed on RAID + LVM stack providing redundancy and partitioning flexibility (Figure 1). All disks are LUKS (Linux Unified Key System) encrypted. The system can be remotely operated and provides a secure key-based SSH environment for boot-time disk decryption. The platform hosts several virtualized servers with bridged paravirtualized (virtio) NICs and dedicated LVM partitions for near-native performance. Servers include an Nginx reverse proxy instance for web access and a dedicated Nextcloud installation on a LAMP (Apache 2.4, MariaDB and PHP 7) stack [5]. Nextcloud stores data directly on EXT4 formatted volumes, locally exposed via NFS. Nextcloud core installation is further extended with a two-factor authentication module, secure online password management interface (KeePass), complete PIM (contacts, calendars, notes, tasks, polls, and e-mail) suite with native support for iOS and Android synchronization via CardDAV and CalDAV protocol. Furthermore, the Collabora package provides a shared real-time cloud document editing. Individual files can be tagged and shared securely (configurable password protection, expiration date, user permissions) within local groups, or to third party users. The e-mail server, however, is configured as VUMS (Virtual User Mail System), relying on Postfix and Dovecot running on a separate virtual machine. Test environment Research and testing showed that the Nextcloud system was one of the easiest and most polished self-hosted solutions to set up among comparable open-source projects. Its base installation provided most of the expected functionality. Nextcloud was also easily extended through an integrated extension store with open-source applications. The following functionality and performance test were therefore performed on a Nextcloud instance. Tests were conducted on networking equipment that simulates a small business environment. Hardware configuration is listed below. • Dell R710 Xeon X5670 6 core server with 12 TB RAID10 SSD + HDD storage • RouterBOARD 3011UiAS-RM router • Mikrotik CSS326-24G-2S + RM switch • RIPE Atlas probe (uptime and link-state statistics) 29 Figure 1: Visualization of the virtual storage configuration of the first SSD drive. Note the encrypted LUKS container and thin-provisioned LVM structure. The unencrypted boot partition, which includes initramfs with integrated networking and SSH environment is also visible. 6 Functionality and performance results 7 The system was test loaded with 1.7 TB of real usergenerated data (Figure 2). Files ranged from small text documents to multi-gigabyte raw disk image backups of virtual servers, totaling in 617842 inodes. Figure 2: Nextcloud’s web interface on a mobile device. File management is the system’s central feature and a default application on the main screen. Additional functionalities are presented in the form of modular extensions, accessible via a dropdown menu. Configured Nextcloud instance has been successfully operating for over 8 months, serving 9 active users and participating in 3 inter-server federated shares. The service was regularly updated and remained stable ever since. The virtual machine’s CPU load mostly varied with user activity, file indexing, and scheduled cron operations. Memory consumption remained astonishingly low, and even noticeably dropped after one of the updates (Figure 3). Conclusion Online collaboration systems enable digital business transformation by providing a centralized environment for user communication and project management. The combined services of file sharing, task and resource management, event scheduling, live document co-authoring, and employee communication streamline a company’s typical workflow and reduce its organizational overhead. Moreover, self-hosting open-source online collaboration systems allow organizations to cut down on costs of similar third-party services, provide faster content access in the local network environment, as well as brand, tailor and extend the software to their needs. Modern solutions of such systems prove to be secure and scalable, which allows businesses to keep data under their control and retain their privacy policy. On-premise hosting of such systems, therefore, provides a viable alternative for organizations of various size. However, the major drawbacks of this solution include uneven cost distribution due to an initial hardware investment, a considerable set-up complexity, and the requirement of an organization to assume complete responsibility for the system’s operation. The latter requires companies to possess technical know-how and makes this method unsuitable for businesses without a dedicated IT department. The costs of system maintenance, potential data loss or security breach due to an improper service configuration may by far exceed a license fee of a comparable commercial offering. Finally, we conclude that the most notable delimiting factors of choice between a third-party, commercial collaboration suite and an open-source on-premise deployment seem to be requirements of privacy policy retention and specific use-cases of system configurability. A realworld example of the latter could be illustrated on a creative agency in need of fast, large drive arrays of locally exposed network storage for real-time, high bitrate content editing, and remote access for content deployment, live online script co-authoring and project timeline management functionality. On the other hand, a small startup company with uncertain future and limited resources could opt for an entirely cloud-based solution, which usually bears a low price tag for a small number of users and eliminates the burden of maintenance and configuration. References [1] CERN, https://home.cern/news/news/computing/migratingopen-source-technologies [2] NASA, https://training.linuxfoundation.org/solutions/ corporate-solutions/success-stories/linux-foundationtraining-prepares-the-international-space-station-for-linuxmigration/ [3] GNU GPL v3.0, https://www.gnu.org/licenses/gpl-3.0.html [4] Nextcloud, https://nextcloud.com/compare/ Figure 3: Virtual machine’s CPU utilization and memory consumption in the idle state. 30 [5] Odprtokodni oblak, https://stromar.si/wp-content/uploads/zapiski/2017/01/ Odprtokodni-oblak-2017-2.pdf 6G ali kje so meje pete generacije Tomi Mlinar1 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Katedra za informacijske in komunikacijske tehnologije, Laboratorij za sevanje in optiko, Tržaška cesta 25, 1000 Ljubljana tomi.mlinar@fe.uni-lj.si 6G – where are the limits of fifth generation Abstract. This article describes anticipated requirements for the forthcoming fifth generation of mobile communications (5G) and tries to predict what services will have to wait for the next generation (6G), mainly due to technical immaturity. According to today's specifications of 3GPP we cannot expect from the 5G to simultaneously offer services to a large number of devices in a small space, with high precision, extremely high speeds and latencies of micro seconds. Some predicted services as real localization, virtual and augmented reality and similar should only be possible with the arrival of 6G or even later. The most promising 6G-enabling technologies could be cell-free networks, quantum communications, wireless power transfer, energy harvesting, intelligent structures and omnipresent artificial intelligence. 1 Uvod Peta generacija mobilnih komunikacij (5G) je danes kakšno leto oddaljena od masovne eksplozije. Vsekakor se to ne bo zgodilo po vsem svetu enakomerno, prav gotovo pa v gospodarsko in tehnološko razvitejših državah sveta, kot so Južna Koreja, ZDA, Kitajska in v določeni meri Evropa. Seveda je na mestu vprašanje, na katerih področjih izmed napovedanih se bo 5G najprej začela uporabljati. Po nekaterih razmišljanjih [1, 2, 3] naj bi omrežja 5G pokrila potrebe po povezljivosti visokohitrostnih naprav, kot so računalniki, pametni telefoni in povezana vozila, medtem ko naj bi področje interneta vsega (IoE, Internet of Everything), ki zahteva posebne lastnosti omrežja, počakalo na naslednjo generacijo. Po današnjih specifikacijah 3GPP, različic 15 in 16 [4,5], ne moremo pričakovati od sistema 5G, da bo hkrati nudil storitve velikemu številu naprav na majhnem prostoru, s centimetrsko natančnostjo, izjemno velikimi hitrostmi in zakasnitvami reda nekaj deset mikro sekund. Prava lokalizacija, navidezna resničnost, obogatena resničnost in teleprisotnost naj bi bile mogoče šele s prihodom 6G ali celo kasneje. Glede na razvoj dosedanjih petih generacij, lahko pričakujemo naslednjo generacijo (6G) okrog leta 2030, ki pa ne bo namenjena širokim množicam, ampak le ciljnim skupinam uporabnikov. 2 Zmogljivosti sistema 5G 2.1 Splošno o 5G Po krovni definiciji [5] naj bi bil sistem 5G zgrajen tako, da bi omogočal optimalno podporo različnim ERK'2019, Portorož, 31-34 31 storitvam, različnim prometnim obremenitvam in različnim vrstam uporabnikov. Sistem 5G naj bi bil zmožen hkratne podpore različnih kombinacij zanesljivosti, zakasnitev, prepustnosti, lokalizacije in dostopnosti. ITU [6] in druge organizacije so izoblikovale tri glavne skupine storitev, ki naj bi zaznamovale 5G. To so: izboljšane širokopasovne komunikacije (eMBB, Enhanced Mobile Broadband), masovne komunikacije med napravami (mMTC, Massive Machine Type Communications) in zelo zanesljive komunikacije z majhnimi zakasnitvami (URLLC, Ultra Reliable Low Latency Communications). Vse to je mogoče le z vpeljavo novih tehnologij, tako na jedrnem kot na dostopovnem delu. Iz opisanega lahko sklepamo, da bo prehod iz 4G v 5G izvedljiv in bodo dosežene želene ravni pomembnejših parametrov, kot so npr. zakasnitev in zanesljivost, saj že imamo na razpolago tehnike, kot so brezžična programsko določena omrežja (SON, Software-defined Networking), virtualizacija omrežnih funkcij (NFV, Network Function Virtualization), antenska tehnika MIMO (Multiple In Multiple Out), deljenje omrežja na rezine, prenos računske moči na rob omrežja in selitev komunikacij na področje frekvenčnega spektra mm-valov. Delno se v 5G že vpeljuje tudi umetna inteligenca. Tehnika radijskega dostopa v oblaku (C-RAN, Cloud Radio Access), ki jo bo uporabljal 5G, predstavlja podlago za umetno inteligenco z izkoriščanjem velepodatkov. Na radijskem delu 5G se računska moč seli zelo blizu uporabnikom. Vpeljuje se t.i. tehnika "meglenega RAN" (ang. Fog-RAN), kar seveda zmanjšuje zakasnitve in porabo moči. Izpolnjevanje določenih ključnih parametrov je nujno, da lahko omrežje zagotavlja storitve, kot npr. nadzor zrakoplovov brez posadke, obogateno resničnost, avtomatizacijo tovarn in podobno. Nadalje mora biti omrežje sposobno zagotavljati množico heterogenih storitev med dvema ekstremoma, npr. prenesti velike količine podatkov v čim krajšem času eni skupini uporabnikov in majhne količine podatkov v daljšem času drugi skupini uporabnikov. Potem so tu še različne zahteve za uporabo znotraj in zunaj stavb, lokalna povezljivost, velike gostote uporabnikov na majhnih površinah, pokrivanje večjih območij in nudenje storitev uporabnikom, ki se gibljejo z velikimi hitrostmi. V vseh primerih gre za kombinacijo določenih ključnih parametrov, kot so zakasnitev, zanesljivost delovanja, točnost določanja lokacije, prenosna hitrost, doseg komunikacije oz. velikost celice, poraba energije, hitrost premikanja uporabnika, nadaljevanje storitve pri prehajanju med omrežji in druge. temeljijo na poznavanju vsebine, v celoti krmilila umetna inteligenca [3]. 2.2 Lastnosti in omejitve 5G Ključni indikatorji delovanja sistema 5G, ki so v [7] določeni za peto generacijo in so povzeti v preglednici 1, so določeni za storitve, ki jih poznamo danes ali pričakujemo jutri. Gotovo pa bo čas pokazal, da so nekateri od postavljenih parametrov nedosegljivi z današnjimi tehnologijami oz. se bodo storitve razvile toliko, da bo treba lestvico postaviti višje. 3.2 Arhitektura 6G Določeni avtorji [2] predvidevajo, da bo arhitektura radijskega dela 6G razdeljena v grobem na dve ravnini. Prvo bodo predstavljale pametne elektromagnetne površine (necelične strukture), ki bodo delovale na zelo visokih frekvencah (THz), v podporo pa jim bodo t.i. »drobne celice«, ki bodo delovale na mm-valovih. Slednje bodo omogočale mobilni in fiksni dostop. Za pokrivanje trenutnih »vročih točk« bodo uporabne bazne postaje na dronih ali fiksnih balonih. Tehnologiji [8], ki naj bi se predvidoma uporabljali v 6G, sta tudi: brezžično napajanje in prejemanje radiofrekvenčne energije ter brezžične optične komunikacije (Li-Fi, Light-Fidelity). 6G pa ne bo pomenil le brezžičnih komunikacij. Uporaben bo tudi v osebnih računalnikih, ki bodo za interno komunikacijo uporabljali digitalne komunikacije površinskih valov. Prenosne hitrosti po uporabniku bodo v 6G najmanj 10 Gb/s pa vse tja do 100 Gb/s. Spektralna učinkovitost se bo merila prostorsko, v b/s/Hz/m3. V preglednici 2 so povzeti verjetni ključni parametri sistema 6G [2,3]. Preglednica 1. Ključni parametri sistema 5G Ključni parametri 5G Največja teoretična hitrost 20 Gb/s DL1 prenosa podatkov 10 Gb/s UL2 Spektralna učinkovitost 30 b/s/Hz DL 15 b/s/Hz UL Največja pasovna širina agregirana celotna pasovna širina, ki je na voljo Zakasnitev v kontrolni ravnini 10 ms Zakasnitev v uporabniški 0,5 ms za URLLC ravnini (UL ali DL) 4 ms za eMBB 50 ms RTT3 (LEO4) 180 ms RTT (MEO5) 600 ms RTT (GEO6) Zakasnitev pri prenosu majhnih < 10 s UL paketov (20 bajtov) Zanesljivost 10-5 Mobilnost < 500 km/h Frekvenčni spekter do 100 GHz Preglednica 2. Ključni parametri sistema 6G 3 Ali potrebujemo 6G? 3.1 Splošno o 6G Storitve in aplikacije se pospešeno razvijajo. Primeri IoE so lahko združevanje navidezne, obogatene in mešane resničnosti v t.i. razširjeno resničnost (XR, eXtended Reality), leteča prevozna sredstva, vmesniki med možgani in računalniki in povezana avtonomna vozila. Teh ni mogoče uvrstiti le v eno od treh glavnih skupin 5G (eMBB, URLLC ali mMTC). Za delovanje storitev IoE mora biti sistem sposoben zagotoviti hkrati visoko zanesljivost delovanja, nizke zakasnitve in visoke podatkovne hitrosti, tako v smeri proti uporabniku kot od njega. Zelo verjetno bo ključna prednost 6G, da jo bo na vseh ravneh, kot je orkestracija in upravljanje omrežja, kodiranje in obdelava signalov fizične ravnine, manipulacija pametnih struktur, rudarjenje podatkov na ravni omrežja in naprav za komunikacijske storitve, ki Ključni parametri 6G Največja teoretična hitrost 1 Tb/s (simetrično) prenosa podatkov Spektralna učinkovitost 1000x današnje zmogljivosti, merjeno v b/s/Hz/m3 Skupna zakasnitev (E2E) Zakasnitev samo na radijskem delu Zakasnitev zaradi obdelave Zanesljivost delovanja (E2E) Frekvenčni pasovi < 1 ms 10 ns - 10 ns 99,99999 % < 6 GHz 30-300 GHZ (mm-valovi) > 300 GHz (področje THz) ne-RF komunikacije (komunikacije z vidno svetlobo in optične komunikacije) 3.3 Aplikacije 6G Potencialne aplikacije [2], ki zahtevajo nadaljnji razvoj tehnologij v smeri 6G, bi lahko bile: multisenzorske aplikacije, povezani roboti in avtonomni sistemi brezžične interakcije na relaciji možganiračunalnik, veriženje blokov in tehnologije porazdeljene glavne knjige ter druge. 1 DL (Down Link)povezava proti uporabniku UL (Up Link)povezava od uporabnika proti bazni postaji 3 RTT (Round Trip Time)–obhodni čas 4 LEO (Low Earth Orbit)–nizka zemeljska orbita (160– 2000 km) 5 MEO (Medium Earth Orbit)–srednja zemeljska orbita (2000–35.000 km) 6 GEO (Geostationary Equatorial Orbit)–Geostacionarna zemeljska orbita (35.786 km) 2 32 3.4 Trendi 6G Uporaba prej omenjenih aplikacij bo verjetno povzročila naslednje smeri razvoja 6G [2]: - razvoj pametnih površin (razvoj elektromagnetno aktivnih površin z uporabo meta materialov); - množična majhnih količin podatkov (premik iz uporabe centraliziranih »big data« v uporabo masovno distribuiranih »small data«); - od samoorganiziranih omrežij v samozadostna omrežja (SSN, Self-Sustaining Networks); konvergenca komunikacij, računalništva, nadzora, lokalizacije in zaznavanja; konec obdobja pametnih telefonov - nadomestile jih bodo nosljive naprave, pametni implantati itd. 3.5 Tehnologije 6G Podporo prej opisanim storitvam in aplikacijam bodo predvidoma nudile izboljšane ali nove tehnologije, ki so naštete v nadaljevanju [3]. Razširjena umetna inteligenca Umetna inteligenca bo prisotna: na fizični ravnini pri ocenjevanju kanala in kodiranju, pri razporejanju omrežnih virov, kot je nadzor prometa in upravljanje s predpomnilnikom, pri varnosti in preverjanju avtentičnosti uporabnika, dinamičnem formiranju in upravljanju s topologijo celic, predvidevanju in detekciji napak itd. Pravo moč 6G naj bi dodala t.i. »kolektivna umetna inteligenca«, združena s teorijo iger. 1. Kontekstne komunikacije z radarjem Z uporabo radarskih tehnologij se izboljša zavedanje mobilnega terminala ali naprave IoT o okolici. S podatki iz radarjev in umetno inteligenco se bo lokaliziralo morebitne prisluškovalce in posledično prilagodilo komunikacije. Kontekstualni podatki, ki jih bo zbiral uporabniški terminal, bodo pomagali omrežju pri predvidevanju naslednjih premikov terminalov. frekvenca in celo orbitalni kotni moment elektromagnetnega valovanja, kar pomeni moduliranje radijskega signala brez mešalnika in RF-verige. 5. Komunikacije z vidno svetlobo Te komunikacije uporabljajo belo svetlobo LED za kodiranje informacij v optične frekvence. Vsaka povezava bi lahko dosegla prenosno hitrost do 500 Mb/s [10]. Uporabne so pri komunikaciji med vozili, kjer komunikacija potekala med prednjimi in zadnjimi lučmi dveh vozil, ali tam, kjer je uporaba radijskih valov manj učinkovita, kot npr. na letalih, pri podvodnih komunikacijah ali v medicinskih ustanovah. Brezžični prenos moči in pridobivanje energije Ta tehnologija bi lahko zaživela, ker bodo (a) komunikacijske razdalje precej manjše in (b) uporabniški terminali, zaradi velikih računskih potreb in izvajanja procesov umetne inteligence, energetsko zelo požrešni. Radiofrekvenčni signali lahko postanejo pomemben vir energije za nizkoenergetske naprave. 6. 2. 7. Necelična omrežja Brezpilotni letalniki bodo poleg radijskega pokrivanja služili tudi kot ponudniki vsebine in računski strežniki. Z umetno inteligenco se bo dinamično določalo poti brezpilotnih letalnikov in optimiziralo ostale parametre – topologija omrežja se bo dinamično spreminjala. Brezžični prenos energije bo omogočil stalno gibanje brezpilotnih letalnikov. 8. 3. 4. Metamateriali in inteligentne strukture Pričakuje se, da bodo antenske strukture na osnovi metamaterialov postale standardna oprema mobilnih terminalov, kar bo omogočilo uporabo tehnike MIMO tudi na strani uporabniških terminalov. Druga zanimiva tehnologija so t.i. fluidne antene, narejene iz prevodne ali ionizirane tekočine, ki se jo lahko poljubno oblikuje za dano okolje, kjer se razširja signal. Predvidevajo, da lahko ena programsko določena fluidna antena nadomesti klasično anteno MIMO. Fluidna struktura omogoča optimizacijo položaja in oblike antene, kar omogoči velik dobitek raznosmernosti in razvrščanja, medtem ko se izpostavljenost uporabnikov elektromagnetnim poljem pomembno zmanjša. Programsko določeni materiali (SDM, Software Defined Materials) lahko zagotavljajo nadzorovano radijsko okolje. Programsko nastavljive metapovršine lahko povsem spremenijo zgradbo oddajnikov. Zadnje raziskave [9] kažejo, da lahko metapovršine programiramo tako, da se spreminja faza, amplituda, 33 Rodovno razvrščanje Na optičnem delu elektromagnetnega spektra je tehnika rodovnega razvrščanja (OAM, Orbital Angular Momentum) že dolgo poznana, v 6G pa bi se jo lahko uporabilo tudi na radijskem delu spektra, predvsem za razdalje nekaj metrov, kot je to primer pri industrijskih aplikacijah. Raziskava [11] je pokazala, da se lahko dosežejo prenosne hitrosti do 2,5 Tb/s s spektralno učinkovitostjo 95,7 b/s/Hz. Po raziskavi [12] so sicer sistemi, ki uporabljajo omenjeno tehniko na področju radijskih frekvenc elektromagnetnega spektra, še zelo primitivni. Kvantne komunikacije in omrežja Kvantne komunikacije se lahko uporabijo za zelo varne prenose podatkov. Inherentna lastnost kvantnega prepletanja je, da ne omogoča kloniranja ali dostopanja brez opazne spremembe signala. Kvantne komunikacije so mogoče tudi za prenos signalov na velike razdalje, čeprav poskusi na frekvencah milimetrskih valov [13] dajejo dobre rezultate do razdalje manj kot 100 m. Za regeneracijo in redistribucijo kvantnega ključa se lahko, kot zaupanja vredna vozlišča, uporabijo brezpilotni letalniki ali sateliti. 9. Mikrovalovna fotonika Zahteve novih generacij, kot npr. množična povezljivost in velike prenosne zmogljivosti, postavljajo izzive današnjemu razvoj elektronike. Zelo verjetna rešitev je v integraciji radijskih in optičnih tehnologij - integrirani mikrovalovni fotoniki [14]. Današnje sisteme mikrovalovne fotonike sestavljajo optično vlakno in diskretne komponente, ki so energetsko potratne, neprilagodljive in omejeno razširljive. Cilj integrirane mikrovalovne fotonike je preseči omejitve z vključevanjem teh gradnikov v t.i. fotonska integrirana vezja (PIC, Photonic Integrated Circuits). 3.6 Izzivi 6G Predvidena selitev računalniške moči na rob omrežja oz. čim bliže uporabniku, s tem pa porazdelitev podatkov po robovih omrežja, omejuje polno operativnost umetne inteligence. Omrežje se bo delilo na zelo majhne celice za večjo zmogljivost in manjše zakasnitve. Pri gostitvi omrežja bo imela vsaka bazna postaja mnogo možnosti za povezljivost. Način, kako se bo uporabnik povezal, bo imel velik vpliv na interferenčni vzorec. Primer hitro spreminjajoče se interferenčne dinamike lahko predstavljajo celice na dronih in hitro gibajoča se omrežja vozil. Dobro modeliranje dinamike motenj bo eden od izzivov, zato bo potrebno razviti nova matematična orodja za analizo in optimizacijo. Umetna inteligenca bo igrala pomembno vlogo tudi pri odločitvah uporabniških naprav. Za to bo potrebna velika računska moč in posledično velika poraba energije. Za delovanje teh naprav bo potrebno razviti nove materiale, ki bodo omogočili delovanje na širokem naboru frekvenc, z velikimi dobitki in visoko inteligenco. Pri milijardah naprav, ki bodo vsakodnevno aktivne v omrežju, bo varnost igrala pomembno vlogo. Za to bo v 6G potreben nov holističen pristop k varnosti. 4 Sklep Peta generacija omrežij nam verjetno ne bo ponudila vsega, kar se napoveduje danes. Tako lahko pričakujemo nadaljnji razvoj tehnologij, ki bodo omogočale storitve, ki se napovedujejo že danes, prav gotovo pa bo šele širša uporaba omrežij 5G pripeljala do novih spoznanj, kaj dejansko potrebujemo in kar bi lahko rešila nova šesta generacija. Večje spremembe v 6G bodo verjetno; integracija treh skupin (eMBB, URLLC in mMTC) v eno, s skupnim imenom MBRLLC (Mobile Broadband Reliable Low Latency Communications) [2], premik komunikacij na frekvenčna območja teraherzov, izgradnja samozadostnih omrežij ter integracija satelitskih omrežij LEO, prizemnih omrežij in omrežij brezpilotnih letalnikov. Vsa komunikacija dobiva še eno dimenzijo: analiza in optimizacija sistema 6G bo zahtevala pokrivanje treh dimenzij. Spremeniti se bo moral koncept iz zdajšnjega radiocentričnega načina omrežja v integriran način, ki ga označujemo s kratico 3CLS (Communications, Computing, Control, Localization, and Sensing) [2], ki ga bo poganjala umetna inteligenca. Verjetno se bo spremenila zdajšnja paradigma komunikacije med pametnim telefonom in bazno postajo v nov način komunikacije terminalov s pametnimi površinami. Komunikacijske površine 6G bodo preko brezžičnega prenosa energije zagotavljale napravam, kot so senzorji in implantati, osnovno napajanje. 6G bodo zaznamovale prihajajoče tehnologije, kot npr. kvantne komunikacije in integracija radiofrekvenčnih povezav z neradijskimi povezavami (optičnimi, nevronskimi, molekularnimi …). 34 Danes je skoraj nemogoče napovedati, ali bodo omrežja 6G res potrebovala deset let za svoj razvoj in ali bomo ponujene storitve tudi vsi uporabljali. Če sklepamo iz današnjega stanja tehnologije (4G in 5G), lahko predvidimo, da se bodo generacije še vedno razvijale, gotovo pa to ne bo pomenilo takšnega globalnega preskoka, kot ga je pomenil prehod iz 3G v 4G. Literatura [1] Pablo Valerio: "5G is already here, 6G will arrive soon", https://iot.eetimes.com/wi-fi-expecting-next-gen-11axapproval-in-july/, June 19, 2018 [2] Walid Saad, Mehdi Bennis, and Mingzhe Chen: "A Vision of 6G Wireless Systems: Applications, Trends, Technologies, and Open Research Problems", https://www.researchgate.net/publication/331396903_A_ Vision_of_6G_Wireless_Systems_Applications_Trends_ Technologies_and_Open_Research_Problems, February 2019 [3] Faisal Tariq at all: "A Speculative Study on 6G", https://www.researchgate.net/publication/331159423_A_ Speculative_Study_on_6G , February 2019 [4] ETSI TS 123 501 V15.2.0 (2018-06): System Architecture for the 5G System (3GPP TS 23.501 version 15.2.0 Release 15) [5] 3GPP TS 22.261 V16.8.0 (2019-06): 3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Service requirements for the 5G system; Stage 1 (Release 16) [6] Setings the Scene for 5G: Opportunities & Challenges, ITU, Geneva, 2018 [7] 3GPP TR 38.913 V15.0.0 (2018-06): 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Study on Scenarios and Requirements for Next Generation Access Technologies; (Release 15) [8] Setings the Scene for 5G: Opportunities & Challenges, ITU, Geneva, 2018 [9] W. Tang, J. Dai, M. Chen, X. Li, Q. Cheng, S. Jin, K. K. Wong, and T. J. Cui, “A programmable metasurface based RF chain-free 8PSK wireless transmitter,” IET Electronics Letters, 2019 [10] C. Chen, R. Bian and H. Haas, “Omnidirectional transmitter and receiver design for wireless infrared uplink transmission in LiFi,” in Proc. IEEE Int. Conf. Commun. Workshops, Kansas City, USA, 2018 [11] J. Wang, J.-Y. Yang, I. M. Fazal, N. Ahmed, Y. Yan, H. Huang, Y. Ren, Y. Yue, S. Dolinar, M. Tur, and A. E. Willner, “Terabit free-space data transmission employing orbital angular momentum multiplexing,” Nature Photonics, vol. 6, pp. 488-496, Jun. 2012 [12] P. Miklavčič, M. Vidmar, B. Batagelj, "Patch-monopole monopulse feed for deep reflectors", Electronic Letters, 2018, vol. 54, No. 24, str. 1364-1366 [13] N. Hosseinidehaj and R. Malaney, "Quantum Entanglement Distribution in Next-Generation Wireless Communication Systems", arXiv:1608.05188v1 [quantph] 18 Aug 2016 [14] European Network for High Performance Integrated Microwave Photonics, COST, https://euimwp.eu/ Device positioning and location-aware communications Klemen Bregar1,2 , Aleš Švigelj1,2 1 Department of Communication Systems, Jožef Stefan Institute, Ljubljana, Slovenia 2 Jožef Stefan International Postgraduate School, Ljubljana, Slovenia E-pošta: klemen.bregar@ijs.si Abstract Modern communication systems can substantially benefit from the availability of location information. For example tracking the user’s location can help predict future position and thus increase the resource allocation performance. Location information can also help disabled people live in their apartments in the assisted living facilities. We first introduced fundamental positioning techniques and overlooked the location awareness in the communication systems. We proposed an UWB localization system for passive and active localization with sensor network definition, communication protocol overview and simple active localization technique based on least squares estimation. 1 • • • Introduction Knowing the position and being aware of device’s location in modern communication systems can help improve user experience and help improve network optimization. It can also help residents in assisted living facilities with tracking their activity, detect exceptional events like falling and many more. The localization systems can be very diverse regarding the used technologies and location estimation principles. Based on the location in the network where the position of a device is being computed the positioning methods can be divided into two categories [1]: • Device-based positioning methods: The device with the unknown location calculates its own location. The device uses all the measurements to the reference points available in the network and combines them with the localization method of a choice to determine its location. • Centralized positioning methods: The central device in the network (e.g. a localization server) uses all available measurements from the network devices to the device with the unknown location and combines them in the location of the device. Position can be calculated using different radio signal properties and or other network-related information. They can be classified in the following groups: • Multilateration techniques: The localization system uses range-based information obtained by time ERK'2019, Portorož, 35-39 35 • • of flight (ToF), time of arrival (ToA), time difference of arrival (TDoA) or received signal strength (RSS) between the node with the unknown location and several reference nodes in the network. Triangulation techniques: Intersection of two (for 2D localization) or more direction of arrival (DoA) or angle of arrival (AoA) measurements of the received signals are used for position calculation. Proximity-based techniques: Location of device is determined by the location of the nearest reference device in the network. Fingerprinting techniques: Fingerprinting techniques are actually the pattern matching techniques, where a combination of measured signal features (e.g. RSS, multipath components, delay spread, etc.) is matched against the fingerprints in the fingerprint database. Network techniques: Network techniques are based on inter-node distances. Inter-node distances can be described by the connectivity, proximity or range information. Cooperative techniques: Cooperative techniques are used when the centralized localization systems are not feasible, when a scalable localization solution for large networks is needed or when the dense network of anchors is available [2]. The cooperation relies on direct communication between the nodes, where individual nodes use available information of neighbouring devices to estimate their own position. Communication systems can benefit from location awareness at many communication protocol layers. For example as a general application of localization awareness, the channel database holding location-based channel quality metric can be used for resource allocation at different protocol layers [3]. In the physical layer, location information can be used to reduce interference, increase capacity gains and improve the resource allocation performance [3]. It can be used e.g. in combination with Gaussian processes to generate primary user power density maps that enable secondary users in the spectrum to select the most vacant channels for communication [4]. At the MAC layer, location information can help dealing with scalability, efficiency and latency challenges [3]. In [5], authors proposed a round-robin scheduling algorithm exploiting location information for fractional frequency reuse, achieving higher total throughput by allowing temporary sharing of resources between cell-center and cell-edge users. In [6], authors propose location-based multicast MAC protocol that increases the reliability of packet delivery. In [7] authors propose a location-aware power control and scheduling protocol for IEEE 802.15.3 ultra-wideband (UWB) technology, allowing the pairs of devices communicate in parallel within a piconet, successfully lowering latencies and increasing throughput compared to a traditional roundrobin scheduling. Further, location information can improve interference prediction and intercell interference coordination techniques in heterogeneous mobile networks consisting of combination of small cells and macro cells [3]. There are also applications of location-aware MAC protocols in vehicular networks. For example, authors in [8] propose a family of MAC protocols for efficiently broadcasting information only at special communication areas. Omitting the CTS and RTS signals in proposed MAC schemes lowers the message delivery time and improves the overall information flow when the flow rate of traffic increases. In [9] a decentralized location-based channel access protocol for intervehicle communication is defined, where unique channels are allocated to different geographic locations. Finally, authors in [10] propose a geocasting MAC protocol where multicast regions are defined by geographical regions and packets are sent to the nodes in the same geocasting group. At the network layer a location-aided handover mechanism can reduce number of handovers for 30% compared to the RSS-based methods [11]. Another application of location information at network layer is geographic routing in wireless ad hoc networks [12]. It can provide a scalable and efficient information delivery but is sensitive to localization errors [13]. Geographic routing can benefit from node mobility prediction schemes as in [14]. At higher network layers, location information supports navigation and location-based services [3]. First, there come location-aware information delivery [15] enabling location-based advertising, sending location-based notification, delivering to-do lists connected to the current location and many more. Location information can help also with multimedia streaming applications by capturing user mobility patterns and predicting future network planning events [16]. Regarding the intelligent transportation systems intervehicle communication protocols are being developed. The work of [17] provides a location-aware applicationlayer communication protocol supporting distributed ad hoc, best effort service infrastructure over vehicular ad hoc networks providing drivers time-sensitive information about traffic conditions and traffic related services on their route. Location information can also be beneficial for autonomous vehicles, tactile internet [18] and other cyber-physical systems as unmanned aerial vehicles and 36 robots. 2 Localization for assisted living Assisted living (AL) systems can substantially benefit from the accurate and reliable location information. Localization can help applications such as activity recognition, mobility pattern analysis and anomaly detection improve their reliability while supporting decisions of caregivers and automated systems helping the elderly in their home. AL can benefit the most by exploiting the ultrawideband (UWB) radio signals because of the high temporal resolution of the UWB communication equipment. High temporal resolution enables UWB communication systems to accurately timestamp the beginning of received and sent frames enabling the localization schemes based on time-of-flight (ToF) information. ToF localization systems with sub-nanosecond resolution can provide the localization accuracy in centimetre accuracy range. Other benefit of using UWB systems is also great multipath component (MPC) resolvability, which is a key enabler for a multipath assisted localization systems and propagation conditions analysis for reducing the impact of NLoS ranges on the localization accuracy [19]. IEEE 802.15.4-2011 standard defining low-rate personal area networks (LR-WPANs) for very low-cost, lowpower communications, introduces the UWB technology as an alternative physical layer (PHY) specification. UWB PHY implements communication interface based on short pulses with duration in range of 1 ns with bandwidths between 499.2 MHz and 1354.97 MHz all in frequency range between 3.1 to 10.6 GHz. FCC limits the power spectral density emission by 41.3 dBm/MHz for UWB transmitters in this frequency range. IEEE 802.15.4-2011 UWB standard supports the ranging functionality which enables the unsynchronized localization in low-power sensor networks. 2.1 Localization system For AL applications several localization system types can be used. For the range-based localization active systems are required but for passive systems several approaches based on fingerprinting [20] and radio tomographic imaging [21] are suitable. To deploy a localization system that is capable of both active and passive localization we defined the minimalistic UWB communication system that is presented in Figure 1. Master anchor device is connected to computer with GNU/Linux operating system, two slave anchor devices are connected to the master anchor device using UWB radio link and slave peripheral device is connected to anchor devices with UWB radio links. For a passive localization process, anchor devices are sending messages to all their neighbour anchor devices and measure channel impulse response (CIR) and RSS information for received packets. This information is used for scene analysis and thus passive localization process. First thing when the localization system is turned on is that the master anchor device periodically sends a bea- Figure 2: Localization MAC superframe structure. is depicted in Figure 2. Figure 1: UWB localization system scheme capable of active and passive localization in assisted living scenarios. con with device discovery request and builds the table of active devices. According to the table of active devices master anchor device then requests the ranging procedure for all pairs in the localization network. Based on the measured internode distances local coordinate system is defined where each anchor device gets its reference location. The reference location in the local coordinate system is crucial for locating the nodes or objects with unknown location. When the local coordinate system is defined master anchor device starts coordinating ranging process from the anchor devices to the device with the unknown location in a case of active localization and coordinates measurements of CIRs between anchor devices in case of passive localization. 2.2 Communication protocol Communication protocol takes care of communication between al the devices present in a localization network. Communication is organized in a superframe structure with three basic building blocks. First type of communication slot is network management slot (MGMT) where master anchor device requests response from all devices in the network. According to the response the master anchor device builds a device table that is later used to direct the communication between devices. Next slot type is ranging slot (RNG) where master anchor device master anchor device sends a ranging beacons containing the packet ID that represents the ranging request packet, destination and source addresses of the devices that should measure the range between them and duration of RNG slot in microseconds. The last slot type is channel sounding slot (SOUND), where CIR is measured for selected device pairs. Master anchor device at the beginning of SOUND slot sends beacon packet with sounding request. The sounding request contains the packet ID, source and destination of device pair involved in the sounding procedure and slot duration in microseconds. The structure of a superframe is dynamic and depends on the number of devices present in the localization network and desired mode of operation. The network can support three localization modes: active, passive and hybrid localization mode. The MAC superframe structure 37 2.3 Active localization system We estimate the location of a node with the unknown location using multilateration approach with least squares (LS) method. As in (1) distance between a node with an unknown location p and i-th anchor pi is defined by Euclidean distance. p di = kp − pi k = (xi − x)2 + (yi − y)2 , (1) By writing the equations for all anchors and corresponding ranges di we get a predefined system of equations that can be written in a matrix form b = Aθ (2, 3) by introducing a new variable R = x2 + y 2 where . θ = [x, y, R]T .   −2x1 −2y1 1  −2x2 −2y2 1   (2) A= . .. ..   .. . . −2xN −2yN 1  ˆ2  d1 − x21 − y12  dˆ2 − x2 − y 2  2 2   2 b= (3) , ..   . dˆ2 − x2 − y 2 N N N By introducing the variable R the system becomes a system of linear equations where location can be estimated by a linear matrix equation (4) in a normal form. θ̂ = (AT A)−1 AT b. (4) The system of linear equations (4) can be solved if the matrix A is not singular, which is the case when the anchors are not collinear. In the case of anchor collinearity, the rank of A is less than the number of anchors and therefore the matrix A cannot be inverted which is a crucial step in location estimation using LS method. LS-based localization method is computationally one of the simplest methods for location estimation. The drawback of this method is that it is stateless and thus it does not use any information of a previous state of the system. It also does not include any kind of kinematic system model as it is used with Kalman filters. Because of such method simplicity the method use less computational resources than more complex algorithms and can be thus easier to use on small embedded devices which are limited regarding computational resources. 3 Challenges and conclusions In this paper we presented a high-level overview of localization techniques based on location in the network where the location is being estimated. We also presented an overview of localization techniques based on the radio signal properties that are used for localization. We looked also into aspects of location awareness in the general communication systems. Communication technologies can benefit by using the location information at many communication protocol layers. Location information can be used to reduce interference, to improve the resource allocation, to increase throughput, reduce number of handovers, enable location-based services and to support navigation. We presented the UWB-based localization system for assisted living applications which supports both active and passive localization. UWB anchor nodes are wirelessly connected to the master anchor node using UWB technology while measuring range between the nodes and measure channel impulse responses between the nodes for passive localization algorithms. We presented an active localization scheme based on multilateration and least squares location estimation. Passive localization algorithms still represents a challenge for the future work where a combination of principles from fingerprinting techniques and radio tomographic imaging techniques will be used as a hybrid and easy to install passive localization system. Acknowledgement This work was partly funded by the Slovenian Research Agency (Grants no. P2-0016 and L2-7664) and the European Community under the SAAM (Grant no. 769661) project. References [1] J. A. del Peral-Rosado, R. Raulefs, J. A. LópezSalcedo, and G. Seco-Granados, “Survey of cellular mobile radio localization methods: From 1G to 5G,” IEEE Communications Surveys Tutorials, vol. 20, no. 2, pp. 1124–1148, Secondquarter 2018. [2] H. Wymeersch, J. Lien, and M. Z. Win, “Cooperative localization in wireless networks,” Proceedings of the IEEE, vol. 97, no. 2, pp. 427–450, Feb 2009. [3] R. Di Taranto, S. Muppirisetty, R. Raulefs, D. Slock, T. Svensson, and H. Wymeersch, “Location-aware communications for 5G networks: How location information can improve scalability, latency, and robustness of 5G,” IEEE Signal Processing Magazine, vol. 31, no. 6, pp. 102–112, Nov 2014. [4] I. Nevat, G. W. Peters, and I. B. Collings, “Location-aware cooperative spectrum sensing via gaussian processes,” in 2012 Australian Communications Theory Workshop (AusCTW), Jan 2012, pp. 19–24. [5] A. Dammann, G. Agapiou, J. Bastos, L. Brunelk, M. Garcia, J. Guillet, Y. Ma, J. Ma, J. J. Nielsen, L. Ping, R. Raulefs, J. Rodriguez, D. Slock, 38 D. Yang, and N. Yi, “Where2 location aided communications,” in European Wireless 2013; 19th European Wireless Conference, April 2013, pp. 1–8. [6] Min-Te Sun, Lifei Huang, A. Arora, and TenHwang Lai, “Reliable mac layer multicast in ieee 802.11 wireless networks,” in Proceedings International Conference on Parallel Processing, Aug 2002, pp. 527–536. [7] S. B. Kodeswaran and A. Joshi, “Using location information for scheduling in 802.15.3 mac,” 2nd International Conference on Broadband Networks, 2005., pp. 668–675 Vol. 1, 2005. [8] N. Wen and R. Berry, “Information propagation for location-based mac protocols in vehicular networks,” in 2006 40th Annual Conference on Information Sciences and Systems, March 2006, pp. 1242–1247. [9] S. Katragadda, C. N. S. Ganesh Murthy, M. S. Ranga Rao, S. Mohan Kumar, and R. Sachin, “A decentralized location-based channel access protocol for inter-vehicle communication,” in The 57th IEEE Semiannual Vehicular Technology Conference, 2003. VTC 2003-Spring., vol. 3, April 2003, pp. 1831–1835 vol.3. [10] Y. . Ko and N. H. Vaidya, “Geocasting in mobile ad hoc networks: location-based multicast algorithms,” in Proceedings WMCSA’99. Second IEEE Workshop on Mobile Computing Systems and Applications, Feb 1999, pp. 101–110. [11] H. Celebi and H. Arslan, “Utilization of location information in cognitive wireless networks,” IEEE Wireless Communications, vol. 14, no. 4, pp. 6–13, August 2007. [12] F. Cadger, K. Curran, J. Santos, and S. Moffett, “A survey of geographical routing in wireless ad-hoc networks,” IEEE Communications Surveys Tutorials, vol. 15, no. 2, pp. 621–653, Second 2013. [13] S. Kwon and N. B. Shroff, “Geographic routing in the presence of location errors,” in 2nd International Conference on Broadband Networks, 2005., Oct 2005, pp. 622–630 Vol. 1. [14] J. Li and S. M. Shatz, “Toward using node mobility to enhance greedy forwarding in geographic routing for mobile ad hoc networks,” in In the International Workshop on Mobile Device and Urban Sensing, 2008. [15] N. Marmasse and C. Schmandt, “Location-aware information delivery withcommotion,” in Handheld and Ubiquitous Computing, P. Thomas and H.-W. Gellersen, Eds. Berlin, Heidelberg: Springer Berlin Heidelberg, 2000, pp. 157–171. [16] Baochun Li and K. H. Wang, “Nonstop: continuous multimedia streaming in wireless ad hoc networks with node mobility,” IEEE Journal on Selected Areas in Communications, vol. 21, no. 10, pp. 1627– 1641, Dec 2003. [17] M. D. Dikaiakos, A. Florides, T. Nadeem, and L. Iftode, “Location-aware services over vehicular ad-hoc networks using car-to-car communication,” IEEE Journal on Selected Areas in Communications, vol. 25, no. 8, pp. 1590–1602, Oct 2007. [18] G. P. Fettweis, “The tactile internet: Applications and challenges,” IEEE Vehicular Technology Magazine, vol. 9, no. 1, pp. 64–70, March 2014. [19] K. Bregar and M. Mohorčič, “Improving indoor localization using convolutional neural networks on computationally restricted devices,” IEEE Access, vol. 6, pp. 17 429–17 441, 2018. [20] S. He and S. . G. Chan, “Wi-Fi Fingerprint-Based Indoor Positioning: Recent Advances and Comparisons,” IEEE Communications Surveys Tutorials, vol. 18, no. 1, pp. 466–490, Firstquarter 2016. [21] D. Romero, D. Lee, and G. B. Giannakis, “Blind Radio Tomography,” IEEE Transactions on Signal Processing, vol. 66, no. 8, pp. 2055–2069, April 2018. 39 Testing the interoperability of the joint scheduling and routing algorithm for IIoT applications Andrej Hrovat1, Gregor Cerar1, Gordana Gardašević2, Dragan Vasiljević2, Tomaž Javornik1 2 1 Jozef Stefan Institute, Jamova cesta 39, 1000 Ljubljana, Slovenia University of Banja Luka, Faculty of Electrical Engineering, Patre 5, 78000 Banja Luka, Bosnia and Herzegovina e-pošta: andrej.hrovat@ijs.si Abstract. The interoperability challenge is of crucial importance in the IoT. In the paper a novel joint routing and scheduling algorithm which solves the problem of large number of queued packets and improves the network performance is presented and two IoT platforms for the benchmarking are described. The algorithm uses modified RPL protocol for transferring of routing information through the network and for network formation. The 6top protocol, defined in 6TiSCH standard is used for transmission slot scheduling between nodes. The novel algorithm will be implemented and tested by two 6TiSCH implementations, namely within OpenWSN deployed on Faculty of Electrical Engineering and Contiki-NG protocol stacks on LOG-a-TEC [6] testbeds deployed at JSI. 1 Introduction Industrial Internet of Things (IIoT) is a fast-growing technology that increases productivity and efficiency by combining the IoT platform with an existing industrial environment. While traditional wireless sensor network (WSN) applications have been assumed as delaytolerant, real-time requirements and optimal scheduling are of utmost importance in industrial wireless networks. In addition, industrial applications assume large number of low-power wireless sensor devices spread in wide areas working in harsh multipath radio environment due to electromagnetic interference caused by surrounding machinery [1]. Therefore, the legacy wireless sensor communication technology standards must be adapted in order to mitigate time and frequency dependent interference and support delay sensitive applications. In this respect the Time-Slotted Channel Hopping (TSCH) standard has been developed for industrial automation and process control that uses time synchronization to achieve low-power operation and channel hopping to enable high reliability. Particularly, the 6TiSCH (IPv6 over the TSCH mode of IEEE 802.15.4e) mechanisms are crucial for further adoption of IPv6 in industrial environments [2]. However, the standard does not specify or propose the particular scheduling and routing algorithm, whose design is left to researchers and vendors. In WSN, high end-to-end communication delay is caused by the nonadaptive scheduling to traffic demand. As a ERK'2019, Portorož, 40-43 40 consequence, some nodes suffer from high number of queued packets which depends on routing topology and the number of scheduled transmission slots on particular node towards neighbouring nodes. In order to lower number of packets in the queue each node in 6TiSCH network can adaptively reserve additional transmission slots. Since the mechanism for triggering the reservation of additional transmission slots (scheduling) is not defined by 6TiSCH standard, we propose a novel algorithm that joins routing and scheduling processes in order to solve the problem of large number of queued packets and improve the overall network performance in terms of packet delay, packet loss and throughput. The algorithm uses the modified RPL (Routing over Low Power and Lossy Networks) protocol adapted for transfer of routing information through the network, as well as for network formation. The 6top protocol, defined in 6TiSCH standard, is used for scheduling of transmission slots between nodes. The algorithm is currently implemented within the OpenWSN [3] protocol stack by modifying the behaviour of RPL protocol which is considered the de facto routing protocol for the IoT. In the next step the proposed solution will be also validated within ContikiNG [4] protocol stack. Remaining of the paper is structured as follows. In the next section the IoT testbeds for implementation and testing of the proposed solutions are described. The third section gives the insight in the proposed joint scheduling and routing algorithm (JSRA). Finally concluding remarks with further work are given in last section. 2 IoT platforms Since the importance of the interoperability challenge in the IoT, which arises due to the availability of diverse operating systems (OSs), programming languages, data structures, architectures and access mechanisms for things and data, has been emphasized by both academia and industry, the algorithm is benchmarked by two 6TiSCH implementations, namely within OpenWSN [3] and Contiki-NG [4] protocol stacks deployed on Faculty of Electrical Engineering (FEE) testbed and LOG-aTEC [6] testbeds, respectively. 2.1 OpenMote-B IoT testbed The main objective of this testbed is to establish a functional experimental platform for performing the measurement campaign in order to get the better insight into IIoT network operation, as well as to investigate the coexistence of 6TiSCH and RPL [7]. The testbed is comprised of 25 OpenMote-B devices and is set up at the Faculty of Electrical Engineering, University of Banja Luka [8]. The host computer is running Ubuntu with OpenWSN OS (latest release 1.22.0) and OpenVisualizer (OV) installed, see Fig.1 [9]. The OpenWSN is the first open implementation of protocol stack based on TSCH and other standardized protocols. As such, it represents a reference protocol stack for advanced research in IoT area. Moreover, the OpenWSN is the reference protocol stack for IETF 6TiSCH working group. OV is a software tool developed as a part of OpenWSN project that resides on host computer and provides communication and visualization functionalities. This enables the insight into status of connected motes, network management functions, provides sending commands to the node, etc. A Mosquitto broker that supports MQTT version 3.1/3.1.1 is installed, as well as additional Python applications with necessary libraries. The OpenMote represents a new generation of open hardware platforms that is particularly adapted to the IIoT applications. Currently, a new board called OpenMote-B is being released, Fig.2. It provides a dualradio interface for short and longer range communications, combined on one board. OpenMote-B incorporates the new Atmel AT86RF215 radio transceiver, which can operate simultaneously in the Sub-GHz (868/915 MHz) and the 2.4 GHz ISM bands, and supports all physical layer modes of the IEEE 802.15.4g standard (i.e., MR-FSK, MR-OFDM, MR-OQPSK and OQPSK) with data rates ranging from 6 kbps to 2 Mbps. This is the first board that fully supports the IEEE 802.15.4g standard including MR-OFDM modulations for robust communications. Fig. 1: One realization of 6TiSCH network within OpenMote-B IoT Testbed [9]. 41 Fig. 2: OpenMote-B device [5]. 2.2 LOG-a-TEC testbed LOG-a-TEC [6] is comprised of several different radio technologies which enable dense and heterogeneous IoT, MTC and 5G experimentations. Specially developed embedded wireless sensor node can host four different wireless technologies and seven types of wireless transceivers. In order to enable different experiments in combined outdoor/indoor environment using heterogeneous wireless technologies the testbed is deployed inside the JSI premises as well as outside in the park and on the walls of the buildings. The outdoor part of the wireless testbed is located at and around the park at JSI and is comprised of 56 nodes which are located over the area of 55 m by 60 m. Nodes are placed on light poles in the park 3.5 meters above the ground and on the surrounding walls at heights from 2 to 9.3 meters. To enable experiments in indoor environment and also outdoor/indoor influence analyzes the testbed is extended also in indoor environment with additional 20 UWB (Ultra-Wwide Band) nodes and one UNB (UltraNarrow Band) node (LoRa) which are deployed in second and third floor of the building with the dimensions of 28.4 m by 16.6 m. The node locations with the available technologies per location are shown in Fig.3. On 26 possible locations 21 nodes with the TI CC1101 and AT86RF231 radios, 21 nodes with the TI CC2500 and AT86RF212 radios, 3 UNB LoRa nodes, 11 UWB nodes and 2 SNE – ESHTER (spectrum sensing) are deployed. The radio interfaces support experiments in frequency bands 860-1000MHz, 3.5 GHz to 6.5 GHz and 470-862 MHz [7]. LOG-a-TEC enables different experiments for studying the performance of the dense IoT and MTC (Machine-Type Communication) networks in the scope of the 5G networks. A wide range of radio interfaces supports experiments with heterogeneous MTC technologies by transmitting/receiving/sensing at the same time in the same location using beyond state of the art functionality like ultra-narrow band and ultra-wide band, packet based experimentation, clean slate protocol design, composable and modular protocol stacks, custom and advanced spectrum sensing and signal generating functions in sub-GHz spectrum. In order to test newly developed JSRA algorithm IIoT applications the Contiki-NG operating system is ported on the nodes with the AT86RF231 and AT86RF212 radios. Contiki-NG is an operating system for resource-constrained devices which contains an RFC-compliant, low-power IPv6 communication stack, enabling Internet connectivity. Current implementation of TSCH and 6TiSCH supports so-called "minimal configuration", which only defines a basic RPL+TSCH network [10]. 130 m TI CC1101 & AT86RF231 TI CC2500 & AT86RF212 UWB LoRa SNE-ESHTER 87 m indoor deployment Fig 3. Locations of available radio interfaces in outdoor environment 3 Joint scheduling and routing algorithm One approach to jointly consider the scheduling and routing operations is described in our paper [11]. In this paper, we have extended our research towards a novel framework for JSRA. The routing is imposed by topology at logical link-layer i.e. by scheduled transmission slots between neighbouring nodes, because routes can be established only over those nodes with scheduled transmission slots. On the other hand, finding the optimal route across the network requires the scheduling to be driven by routing protocol requirements. Since routing and scheduling are mutually dependent to achieve better network performance a cross-layer design approach can be used i.e. joining routing and scheduling mechanisms. The packet delay, packet loss and throughput are metrics that can be used to assess behaviour of JSRA algorithm. The major conclusions from previous research are that in 6TiSCH network is not possible to achieve high network performances in terms of low packet loss, low packet delay and high throughput simultaneously [12], and that current RPL rank calculation based on ETX (Expected Transmission Count), as proposed by 6TiSCH minimal configuration [13], does not create stable and optimal routing topology [14]. Sensor nodes can host different applications where each application can have different communication requirements in terms of reliability, throughput and data transmission delay. Considering conclusions from previous research, the idea of the algorithm is to classify application data traffic into classes according to application communication requirements and jointly calculate routing and scheduling for each class separately using different routing metric than ETX. In 42 that way we can achieve better network performance since routing and scheduling optimization per traffic class adapts the network to application requirements. The algorithm uses hop count, RSSI (Received Signal Strength Indication) or LQI (Link Quality Indication) indicators and scheduled resources (what throughput, packet delay and packet reliability the parent node can provide) as a routing metrics. The node calculates its rank using those metrics. The rank is not calculated as a single value but as a rank vector where each value in the vector represent rank for certain traffic class. The parent nodes are chosen per traffic class as well. That means that the node in the network can have several parent nodes where each parent node corresponds to one or several traffic classes it can provide. So, multiple routes to network coordinator node are possible with scheduling along each route optimized for certain traffic class or possibly several classes. The joint algorithm uses RPL protocol adapted for transfer of routing information through the network as a basis for routing as well as for network formation. RPL DIO (DODAG Information Object) packets will carry information to child nodes of hop count, parent rank vector and scheduled resources the parent node can additionally provide. Thus, additional fields in the DIO packet are defined and used. RPL protocol [15] in its data structures provides some fields which are not currently in use. Those fields are used for this purpose. For scheduling of transmission slots between nodes the 6top protocol [16], defined in 6TiSCH standard, is used. A node in the network can calculate its traffic requirements which is sum of traffic requirements of applications residing on that node and traffic requirements of its child nodes. Based on its traffic requirements and information about available scheduled resources received via DIO from parent nodes, the node can initiate the timeslot scheduling towards one or more parent nodes (depending on what each parent node can provide of scheduled resources) using 6top protocol. The scheduling continues upwards along the routes for traffic classes of interest all the way to the network coordinator. This represents a resource reservation process. This process ensures that available network resources are optimized for application traffic requirements which increases overall network performance. To support this process each application has to declare what traffic class it generates and what are its throughput requirements. The network establishment process starts when network coordinator node i.e. DAG (Directed Acyclic Graph) root starts broadcasting EB packets at MAC layer and DIO packets at routing layer. In DIO packets it offers entire slot frame as available resources for scheduling. The nodes in range of DAG root first synchronize to network by listening for EB according to 6TiSCH minimal configuration [12]. Once synchronized on MAC layer the nodes are then listening for DIO packets. After receiving DIO, the nodes initiate timeslot assignment i.e. scheduling with DAG root according to traffic requirements of applications residing on the nodes. When scheduling is finished DAG root will update information in DIO about available scheduled resources it can provide. Based on information from updated DIO and possibly resources that are not fully used by the applications residing on the newly joined nodes, they will calculate their rank vector and start broadcasting their own DIO with information about scheduled resources they can provide. In the same time, they will create routes to DAG root for the required traffic classes. The process continues until all nodes join the network. When some node joins the network and schedule resources to its parent nodes, the parent nodes will have to initiate resource scheduling upward along routes for traffic classes required by joined child node. The scheduling continues all the way to DAG root node whereby each node shell first tries to use what it already has scheduled and not fully used and then schedule new resources. If the parent node can not provide required resources to the child node, the child node will be able to join the network with only best effort traffic class available. The best effort traffic class is always available in the network. The exchange of DIO and DAO (Destination Advertisement Object) will be intensive during network establishment phase since each node that joins the network triggers resource scheduling and resource scheduling triggers node rank vector recalculation and updating of relevant information in DIO. Once the network is established the amount of DIO and DAO will be significantly smaller. 4 Conclusions In the paper the framework of the JSRA algorithm is described and the details of the two IoT platforms with the OS supporting 6TiSCH are given. In particular, the coexistence of the 6TiSCH and RPL will be investigated by OpenMote-B IoT testbed with the OpenWSN and LOG-a-TEC testbed with the Contigi-NG. Since routing and scheduling are mutually dependent, across-layer design approach is proposed to achieve better network performance, i.e. joining routing and scheduling mechanisms. In order to achieve low packet loss, low packet delay and high throughput simultaneously the algorithm classify application data traffic into classes according to application communication requirements and jointly calculate routing and scheduling for each class separately. Further work will incorporate the implementation of the JSRA algorithm on OpenWSN and Contigi-NG protocol stack for the benchmark and interoperability testing. Acknowledgment This work was funded by the Slovenian Research Agency under the grants no. BI-BA/19-20-045 and no. P2-0016. 43 References [1] C. G. Vehbi, G. P. Hancke, "Industrial wireless sensor networks: Challenges, design principles, and technical approaches." IEEE Transactions on industrial electronics 56.10 (2009): 4258-4265. [2] IETF, Using IEEE 802.15.4e Time-Slotted Channel Hopping (TSCH) in the Internet of Things (IoT): Problem Statement. https://tools.ietf.org/html/rfc7554. [3] OpenWSN project. http://www.openwsn.org/. [4] Contiki-NG. https://github.com/contiki-ng. [5] OpenMote, [online] Available: http://www.openmote.com/. [6] http://log-a-tec.eu/. [7] http://sensorlab.ijs.si/hardware.html. [8] http://www.communications.etfbl.net/en_labTEL.html [9] G. Gardašević, P. Plavšić, D. Vasiljević, "Experimental IoT Testbed for Testing the 6TiSCH and RPL Coexistence", IEEE INFOCOM 2019, CNERT Workshop, Paris, France, April 2019. [10] S. Duquennoy, A. Elsts, B. A. Nahas and G. Oikonomo, "TSCH and 6TiSCH for Contiki: Challenges, Design and Evaluation," 2017 13th International Conference on Distributed Computing in Sensor Systems (DCOSS), Ottawa, ON, 2017, pp. 11-18. [11] G. Gardašević, D. Vasiljević, C. Buratti, and R. Verdone, “Experimental Characterization of Joint Scheduling and Routing Algorithm Over 6TiSCH,” in 2018 European Conference on Networks and Communications (EuCNC), June 2018, pp. 424-428. [12] D. Vasiljević and G. Gardašević, "Performance evaluation of OpenWSN operating system on open mote platform for industrial IoT applications," 2016 International Symposium on Industrial Electronics (INDEL), Banja Luka, 2016, pp. 1-6. doi: 10.1109/INDEL.2016.7797791. [13] X. Vilajosana, K. Pister, and T. Watteyne, “Minimal IPv6 over the TSCH Mode of IEEE 802.15.4e (6TiSCH) Configuration,” BCP 210, RFC 8180, DOI 10.17487/RFC8180, May 2017, https://www.rfceditor.org/info/rfc8180. [14] R. T. Hermeto, A. Gallais, F. Theoleyre, “On the (over)Reactions and the Stability of a 6TiSCH Network in an Indoor Environment,” Proceedings of the 21st ACM International Conference on Modeling, Analysis and Simulation of Wireless and Mobile Systems, pp. 83 – 90, Montreal, QC, Canada — October 28 - November 02, 2018. [15] T. Winter, P. Thubert, A.Brandt, J.Hui, R. Kelsey, P. Levis, K. Pister, R. Struik, JP. Vasseur, and R. Alexander, “RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks,” RFC 6550, DOI 10.17487/RFC6550, March 2012, . [16] Q. Wang, X. Vilajosana, and T. Watteyne, “6TiSCH Operation Sublayer (6top) Protocol (6P),” RFC 8480, DOI 10.17487/RFC8480, November 2018, . Zakasnitve v modernih komunikacijah Tomi Mlinar1 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Katedra za informacijske in komunikacijske tehnologije, Laboratorij za sevanje in optiko, Tržaška cesta 25, 1000 Ljubljana tomi.mlinar@fe.uni-lj.si Latency in modern communications Abstract. This article briefly describes reasons for latencies in modern communications and gives short overview of required maximum latencies for selected services. There are several techniques in optical and radio communication systems that can lower total latencies below desired level. This article covers some of them, focusing on the fifth generation of mobile communications (5G). 1 Uvod Zakasnitve v modernih komunikacijah postajajo vedno večji izziv. Govorne komunikacije počasi izgubljajo primat. Prevzemajo ga druge oblike komunikacij med napravami, tudi če za njimi stoji človek. Poleg sluha in vida prihaja od čutil v ospredje tudi tip (t.i. haptični odziv). Če želimo, da možgani razumejo usklajenost vseh treh čutil pri neki aplikaciji, se morajo stvari dogajati skoraj v realnem času oz. z minimalno zakasnitvijo. Drugo področje, kjer morajo biti zakasnitve zelo majhne, je področje kritičnih komunikacij in komunikacij med napravami. Dobra primera sta področji avtomatizacije v industriji in samovozeča vozila. V tem prispevku se posvečamo vsem elementom komunikacijske verige, ki pri prenosu signala vnašajo določene zakasnitve. Hitrost v nekem mediju (npr. zrak, optično vlakno) je malo manjša od svetlobne in je odvisna od lomnega količnika medija, ki ga izračunamo po enačbi (2). 𝑚 𝑛 = 𝑐/𝑣 [ ], kjer je c hitrost svetlobe v vakuumu in v hitrost svetlobe v mediju. Steklo ima lomni količnik približno 1,5, kar pomeni, da se elektromagnetni val širi po steklu s hitrostjo približno 200.000 km/s, medtem ko ima zrak lomni količnik 1,0003 in je hitrost širjenja približno 299.700 km/s [1]. Svetovna telekomunikacijska zveza ITU je v dokumentu [2 zapisala največje priporočene skupne vrednosti zakasnitev (E2E, End-to-End) na posameznih segmentih omrežja (preglednica 1). Že leta 2003, ko je nastal ta dokument, je bila največja priporočena skupna enosmerna zakasnitev v omrežju 400 ms, ciljna 150 ms, medtem kot naj bi bila za interaktivne podatkovne komunikacije ta vrednost manj kot 100 ms. Preglednica 1. Zakasnitve prenosnih elementov po ITU Prenosni sistem/element Koaksialni kabel Optično vlakno Satelitski sistemi: -400 km (LEO1) -14.000 km (MEO2) -36.000 km (GEO3) Podmorski koaksialni kabelskski sistem Podmorski optični sistem: -oddajni terminal -sprejemni terminal Javni mobilni sistem Digitalna tranzitna centrala Digitalna lokalna centrala, DSL Predpomnilnik za kompenzacijo zakasnitev IP-paketov 2 Teoretična podlaga V slovenski terminologiji se uporablja izraz »zakasnitev« za dva angleška izraza: »latency«, kar bi lahko prevedli tudi kot latenca oz. reakcijski čas, in »delay«, kar bolj direktno pomeni zakasnitev ali zamudo. Po eni od definicij pomeni izraz »delay« čas, ki ga porabi prvi bit informacije, da prepotuje pot od oddajnika do sprejemnika, medtem ko izraz »latency« pomeni čas, ki ga porabi celotno sporočilo (vsi biti informacije), da opravi isto pot. Po danes splošno sprejeti fizikalni teoriji 1 se elektromagnetno valovanje v vakuumu širi s svetlobno hitrostjo 299.792.458 m/s ali prepotuje razdaljo enega metra v času 3,3 nanosekunde. Hitrost elektromagnetnega valovanja v vakuumu je določena z električno konstanto (dielektričnostjo) 0 in magnetno konstanto (permeabilnostjo) 0. Določi se jo po enačbi (1). 𝑐= 1 √𝜀0 .𝜇0 ERK'2019, Portorož, 44-47 𝑚 [ ] 𝑠 (1) 44 (2) 𝑠 Skupna zakasnitev (E2E) 4 s/km 5 s/km 12 ms 110 ms 260 ms 6 s/km 13 ms 10 ms 80-110 ms 0,45 ms 0,825 ms 25 ms Največji vir zakasnitev v IP-komunikacijah usmerjanja med oddajnikom in sprejemnikom. 1 so LEO (Low Earth Orbit)–nizka zemeljska orbita (160– 2000 km) 2 MEO (Medium Earth Orbit)–srednja zemeljska orbita (2000–35.000 km) 3 GEO (Geostationary Equatorial Orbit)–Geostacionarna zemeljska orbita (35.786 km) 3 Komunikacijski prenosni sistemi Slika 1. Komunikacijski prenosni sistem Vsak komunikacijski sistem (slika 1) je sestavljen iz aktivnih elementov na oddajni in sprejemni strani in prenosnega medija. Vsak od elementov vnaša določeno zakasnitev. Čas, ki ga porabi elektromagnetni val, da opravi pot od točke A do točke B, je odvisen od razdalje med točkama in od medija, po katerem se širi (preglednica 2). K podaljšanju časa prenosa dodajo še aktivni prenosni elementi, kot npr. elektro-optični pretvorniki, filtri in drugi. Preglednica 2. Prenosne hitrosti v prenosnih medijih Prenosni medij Vakuum Zrak Optično vlakno Debel koaksialni kabel Tanek koaksialni kabel Prepleten bakreni par % svetlobne hitrosti 100 % 99,7 % 67 % 77 % 65 % 59 % 3.2 Brezvrvični prenosni sistemi V enačbi (3) so zapisani segmenti brezvrvičnega omrežja, ki vnašajo zakasnitve. 𝑇 = 𝑇𝑅𝑎𝑑𝑖𝑜 + 𝑇𝑍𝑎𝑙𝑒𝑑𝑛𝑒 𝑝𝑜𝑣. + 𝑇𝐽𝑒𝑑𝑟𝑜 + 𝑇𝑇𝑟𝑛𝑎𝑠𝑝𝑜𝑟𝑡 (3) Seveda bi se vse spremenilo, če bi prenos informacije lahko pospešili nad svetlobno hitrost, kar posega na področje t.i. »super luminalnih« komunikacij [3], ki pa presegajo vsebino tega prispevka. Vsaka od tehnologij – električna ali optična – ima svoje prednosti [4]. Elektroni so s svojimi močnimi medsebojnimi interakcijami primerni za hitre preklope, kar je primerno za uporabo v logičnih vezjih in spominskih celicah. Fotoni, katerih interakcije so šibkejše, pa so primerni za prenos signalov na večje razdalje. 3.1 vlakno, optično-električna pretvorba in sestavljanje bitov v besede (deserializacija). Medtem ko aktivni elementi vnašajo fiksno zakasnitev, je zakasnitev medija (npr. optičnega vlakna) odvisna od njegove dolžine. Daljše kot je vlakno, večja je zakasnitev. Zakasnitev v običajnem optičnem vlaknu je 5 s na kilometer. Zakasnitve v optičnih komunikacijah lahko zmanjšamo na več načinov. Najosnovnejša sta uporaba vlakna z najnižjim lomnim količnikom za dano valovno dolžino in načrtuje najkrajše možne trase optičnega vlakna. Drugi tehnološki postopki, ki so podrobneje opisani v [5], pa so: uporaba votlega vlakna, kompenzacija disperzije in uporaba Ramanovega ojačevalnika. Današnje tehnologije [4] omogočajo prenosne hitrosti do 1 Tb/s po optičnih vlaknih v t.i. superkanalih. Zaradi nelinearne Shannonove meje pa je 12 Tb/s tudi vršna hitrost, ki jo lahko iztisnemo iz obstoječih optičnih vlaken, ki so bila v osnovi narejena za prenosne hitrosti do 10 Gb/s ali manj. Vrvični prenosni sistemi Iz preglednice 2 je razvidno, da je hitrost gibanja signala po debelem koaksialnem kablu za 10 % bliže svetlobni kot pri optičnem vlaknu, vendar ima optično vlakno druge pomembne prednosti, kot npr. manjše slabljenje na večji prenosni razdalji in precej večjo pasovno širino. Med najbolj zmogljive vrvične sisteme v modernih komunikacijah torej štejemo optična vlakna oziroma optične sisteme. Lomni količnik stekla v optičnem vlaknu je približno 1,5 pri valovni dolžini 1550 nm, kar pomeni širjenje signala po vlaknu s hitrostjo, ki je približno 33 % manjša od svetlobne. Lomni količnik se spreminja z valovno dolžino svetlobe in sestavo optičnega vlakna. K skupni zakasnitvi v optičnem sistemu pa prispevajo naslednji elementi [5]: postavljanje bitov informacije v vrsto (serializacija), elektro-optična pretvorba, optično 45 TR je zakasnitev pri prenosu podatkov med bazno postajo in terminalom in je odvisen predvsem od lastnosti fizičnega sloja komunikacije. Ta zakasnitev je vsota prenosnega časa, zakasnitve zaradi razširjanja signala, časa obdelave (ocene kanala, kodiranja in dekodiranja) in morebitne ponovne oddaje, zaradi izgube paketov. Po ITU mora biti ta zakasnitev manj kot 0,5 ms. TZaledne pov. je zakasnitev pri vzpostavljanju povezave med bazno postajo in jedrnim omrežjem. Odvisen je od lastnosti povezave, običajno je to optika. TJedro je zakasnitev, ki jo vnaša obdelava v jedrnem delu omrežja. TTransport je zakasnitev, ki jo vnesel komunikacija med jedrnim omrežjem in internetom/oblakom. Skupna zakasnitev (E2E) je zapisana z enačbo (4). 𝑇𝐸2𝐸 = 2 × 𝑇 (4) Generacije brezvrvičnih omrežij so glede zakasnitev napredovale, predvsem zaradi specifične zgradbe omrežja in razvoja tehnologije (preglednica 3). Preglednica 3. Zakasnitve v omrežjih 2G do 5G [7] Mobilno omrežje 2G 3G 4G 5G Zakasnitve (E2E) 500-1000 ms 200 ms 100 ms 1 ms Kmalu bodo aktualna omrežja pete generacije (5G), ki danes delujejo v testne namene, komercialno pa naj bi zaživela v letu 2020. Po krovni definiciji priporočil 3GPP [8, 9] naj bi bil sistem 5G zgrajen tako, da bi omogočal optimalno podporo različnim, predvsem interaktivnim storitvam, kjer so zakasnitve izjemnega pomena. ITU in druge organizacije so izoblikovale tri glavne skupine storitev, ki naj bi zaznamovale 5G. To so: izboljšane širokopasovne komunikacije (eMBB, Enhanced Mobile Broadband), masovne komunikacije med napravami (mMTC, Massive Machine Type Communications) in zelo zanesljive komunikacije z majhnimi zakasnitvami (URLLC, Ultra Reliable Low Latency Communications). Za tretjo skupino storitev (URLLC) je pomembno zmanjšanje skupnih zakasnitev na najmanjšo dopustno raven, za kar so potrebne izboljšave tako na fizičnem kot tudi na višjih slojih. Zakasnitve na posameznih segmentih omrežja 5G so zajete v preglednici 4. Preglednica 4. Zakasnitve v omrežju 5G [7, 8, 9] Zakasnitve v omrežju 5G Zakasnitev v kontrolni ravnini 10 ms Zakasnitev v uporabniški 0,5 ms za URLLC ravnini (UL ali DL): 4 ms za eMBB 50 ms RTT4 (LEO) 180 ms RTT (MEO) 600 ms RTT (GEO) Zakasnitve v fizični ravnini: -čas obdelave UE5 0,3 ms -čas obdelave eNB6 0,3 ms -minimalen TTI7 0,2 ms -časi za prenos ACK/NACK 0,06 ms (kratka razdalja) 0,25 ms (srednja razdalja) 0,50 ms (velika razdalja) 1,00 ms (ekstremno pokrivanje) 4 Storitve in želene zakasnitve 4.1 Pomen zakasnitev Izpolnjevanje določenih ključnih parametrov komunikacijskega sistema (predvsem zakasnitev) je predpogoj, da bo lahko ta zagotavljal prihodnje storitve, ki zahtevajo dober (hiter) haptičen odziv, kot npr. operacije na daljavo, aplikacije obogatene resničnosti (AR, Augmented Reality), navidezne resničnosti (VR, Virtual Reality), pa tudi druge, kot npr. nadzor zrakoplovov brez posadke (UAV, Unmanned Aerial Vehicle), komunikacijo med samovozečimi vozili, interaktivne spletne igre, avtomatizacijo in robotizacijo tovarn in podobno. Dobro poznan je primer borznega trgovanja. Borzniki se dobro zavedajo, da je hitrost njihovih sistemov in komunikacijskih povezav ključnega pomena za dobiček ali izgubo. Zato najemajo svoje prostore čim bliže prostorom borze oz. borznim računalnikom. Če so ti prostori v sosednjih stavbah ali celo bolj oddaljeni, 4 RTT (Round Trip Time)–obhodni čas UE (User Equipment)–uporabniška oprema 6 eNB (e Node B)–bazna postaja 5G 7 TTI (Transmission Time Interval)–prenosni čas 5 46 velikokrat uporabijo mikrovalovne zveze namesto optičnih vlaken, saj so te bistveno hitrejše (glej preglednico 2). 4.2 Zakasnitve po panogah Organizacija 3GPP je v različici 15 [8] predvidela največje zakasnitve, ki še omogočajo kakovostne storitve. V nadaljevanju so za posamezne panoge zajete nekatere storitve in priporočene zakasnitve. 1. Promet V prometu se velikostni razredi največjih dovoljenih zakasnitev razlikujejo od vrste operacije. Vse zakasnitve veljajo med končnima točkama (E2E): - srednje/dolgo-ročno modeliranje okolice (npr. dinamično osveževanje digitalne karte visoke razločljivosti): 100 ms; - kratkoročno modeliranje okolice (npr. senzorji): <20 ms; - sodelovanje (npr. koordiniran nadzor): < 3 ms (vožnja v konvoju), < 10 ms (sodelovalni manever), < 100 ms (običajna vožnja); - upravljanje vozila na daljavo: 10-30 ms. 2. Transport V transportu, logistiki in internetu stvari (npr. odčitavanje senzorjev in poročanje, sledenje blagu, nadzor, posredovanje informacij glede na vsebino … ) so priporočene naslednje največje zakasnitve (vse E2E): - množična povezljivost, kritično odčitavanje in posredovanje informacij: < 30 ms; - upravljanje dronov na daljavo in sodelovalno upravljanje skupine strojev: 10-30 ms; - upravljanje diskretnih avtomatiziranih procesov v realnem času: < 1 ms. 3. Pametna mesta in medicina Na področju pametnih mest in medicine, npr. posredovanje video posnetkov razločljivosti UHD za daljinsko zdravstveno oskrbo, pomoč pri operaciji, upravljanje medicinskih naprav v realnem času, nadzor in usmerjanje v mestih in podobno, veljajo naslednje največje zakasnitve (vse E2E): - teleprisotnost, obogatena resničnost, pomoč pri operacijah, nadzor in usmerjanje: 100 ms; - upravljanje medicinskih naprav v realnem času (pri operacijah): 10-100 ms; - pametne mreže: < 5 ms za prenosno omrežje/hrbtenično omrežje in < 50 ms za distribucijsko omrežje; - časovno kritično zaznavanje in poročanje v pametnih mestih: 30 ms. 4. Medijske in razvedrilne vsebine Dostopanje do medijskih in razvedrilnih vsebin na strežniku ali prenos vsebin med uporabniki, npr. sodelovanje v spletnih igrah, pretakanje informacij v živo ob večjih dogodki (vse E2E) zahteva največjo zakasnitev 20 ms. V preglednici 5 so zajete zakasnitve za nekatere časovno občutljive storitve [5, 7]. Preglednica 5. Zahtevane zakasnitve za nekatere storitve 5G Navidezna/obogatena resničnost Zakasnitev osveževanja slike 7-15 ms (ohrani se pri premiku glave prenosna hitrost 1 Gb/s) Zakasnitev osveževanja zvoka < 20 ms pri premiku glave Zakasnitev pri kodiranju 100 ms (enosmerno ustagovora uho) Sinhronizacija video-avdio - avdio zakasnjen 125-5 ms - avdio prehiteva 45-5 ms Inteligentni transportni sistemi Največja zakasnitev E2E 30 ms Razpoložljivost 99,9999 % komunikacijske storitve Lokalizacija Zakasnitev (razpoložljivost) Točnost lokacije horizontalna/vertikalna 1 s (95 %) 10/3 m 1 s (99 %) 3/3 m 1 s (99 %) 1/2 m 15 ms (99,9 %) 1/2 m 1 s (99 %) 0,3/2 m 10 ms (99,9 %) 0,3/2 m 1 s (99 %) 0,2/0,2 m Avtomatizacija procesov v tovarnah Zakasnitev 0,25-10 ms Stopnja izgubljenih paketov 10-9 Robotika in teleprisotnost Zakasnitve nekaj ms Medicinske aplikacije Zakasnitev obe smeri) 1 ms Resne igre (izobraževanje, trening…) Zakasnitev obe smeri) 1 ms Pametne mreže Zakasnitev (E2E) pri 100 ms preklopu med virom energije Zakasnitev (E2E) pri 1 ms sinhronizaciji virov enegije (generatorjev) Izobraževanje in kultura (otipljiv internet) Zakasnitev (obe smeri) za 5-10 ms vizualne, govorne in haptične interakcije 5 Sklep Prispevek obdeluje pomen zakasnitev v sodobnih komunikacijah. Mnoge storitve, kot npr. AR/VR, operacije na daljavo, samovozeča vozila in podobno, ki jih bomo predvidoma uporabljali v prihodnje, bodo zelo občutljive na zakasnitve. V sistem vnašajo zakasnitve predvsem prenosne poti in aktivni elementi med oddajno in sprejemno stranjo. V brezvrvičnem omrežju so to radijsko dostopovno omrežje, jedrno omrežje in povezave med njimi. Optično vlakno, ki se v sodobnih komunikacijah uporablja za transportne povezave, vnaša določene zakasnitve, ki pa se merijo v mikrosekundah. Večje 47 zakasnitve dodajo optični ojačevalniki in drugi elementi. Za zagotavljanje izjemno majhnih zakasnitev v 5G so potrebne drastične spremembe v arhitekturi omrežja, predvsem na fizični ravnini. V omrežje 5G se uvajajo tehnologije, kot so programsko nastavljivo omrežje, virtualizacija omrežnih funkcij in obdelava podatkov na mobilnem robu. Slednje pomeni, da se procesorska moč iz centralne lokacije prenese na rob omrežja (v bazno postajo), torej bliže uporabniku. Podobno velja za predpomnilniško zmogljivost na strani bazne postaje, kjer moramo imeti dobre algoritme za preslikavo pravih podatkov iz centralnih strežnikov na rob omrežja, ker za velike količine podatkov enostavno ni prostora. Zmanjšanje zakasnitev je mogoče, ker so programske nastavitve funkcionalnih delov omrežja dinamične in se prilagajajo trenutnim razmeram. Dodatno zmanjšanje zakasnitev bodo prinesle tehnologije, ki so še v razvojni fazi, kot npr. novi radijski vmesniki s kratkimi časovnimi prenosnimi intervali, majhnimi paketi, novimi valovnimi oblikami, novimi modulacijami in kodnimi shemami. Dodatna prednost zmanjšanja zakasnitev na radijskem vmesniku bo tudi manjša poraba energije in daljše trajanje baterij terminalnih naprav [7]. Literatura [1] Svetlobna hitrost in lomni količniki (Wikipedia), https://en.wikipedia.org/wiki/Speed_of_light [2] ITU-T G.114 (05/2003): SERIES G: TRANSMISSION SYSTEMS AND MEDIA, DIGITAL SYSTEMS AND NETWORKS, International telephone connections and circuits – General Recommendations on the transmission quality for an entire international telephone connection A Survey on Low Latency Towards 5G: RAN, Core Network and Caching Solutions [3] Komunikacije z nadsvetlobno hitrostjo (Wikipedia), https://en.wikipedia.org/wiki/Faster-thanlight_communication [4] Jeff Hecht: Is Keck’s Law Coming to an End?, https://spectrum.ieee.org/semiconductors/optoelectronics/ is-kecks-law-coming-to-an-end, 26 Jan 2016 [5] Latency in optical fiber systems, Compscope White Paper, 2017 [6] Vesna Eržen, Boštjan Batagelj: »Zakasnitev signala na fizični ravni optičnega omrežja«, Elektrotehniški vestnik, 2015, letn. 82, št. 3, str. 111-116, ilustr. http://ev.fe.unilj.si/3-2015/Erzen.pdf [7] Imtiaz Parvez, Ali Rahmati, Ismail Guvenc, Arif I. Sarwa, and Huaiyu Dai: »A Survey on Low Latency Towards 5G: RAN, Core Network and Caching Solutions«, IEEE Communications Surveys & Tutorials, August 2017 [8] 3GPP TR 38.913 V15.0.0 (2018-06), 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Study on Scenarios and Requirements for Next Generation Access Technologies; (Release 15) [9] 3GPP TS 22.261 V16.8.0 (2019-06): 3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Service requirements for the 5G system; Stage 1 (Release 16) Multimedija Multimedia Vpliv načina interakcije informacijsko-komunikacijskega sistema vozila na varnost vožnje Tomaž Čegovnik, Jaka Sodnik Univerza v Ljubljani, Fakulteta za elektrotehniko, Ljubljana, Slovenija E-pošta: tomaz.cegovnik@fe.uni-lj.si, jaka.sodnik@fe.uni-lj.si Influence of an in-vehicle infotainment system’s interaction design on driving satefy Abstract. We compared three different interaction designs in a user study to research their influence on driving safety. These interaction designs were a multifunctional button on the steering wheel, a touchscreen and freehand interaction. We chose the button as a traditional interaction design that proved useful in production vehicles; contrary touchscreen interfaces are very common in new vehicles and freehand interaction is promising for future use. The influence of those interface designs on driving safety were studied in different driving conditions and for different task difficulties. Safety related measures were headway time, standard deviation of lane position and eyes-off-road time. The results are showing a big influence of driving conditions and task difficulty on driving safety. However, touchscreen based interaction showed the worst safety related results because of long eye-off-road times. 1 Uvod Interakcija z informacijskimi in multimedijskimi sistemi v vozilu predstavlja zelo specifično vrsto interakcijo človek-stroj. Je voznikovo sekundarno opravilo in značilnost tovrstne komunikacije je prostorska omejenost v mobilnem okolju. Pri načrtovanju interakcije človek-stroj v vozilu je potrebno vedno upoštevati, da je vožnja opravilo z visoko prioriteto, je vizualno zahtevno in zahteva visoko stopnjo odgovornosti. Voznik ne sme nikoli izgubiti nadzora nad upravljanjem vozila v cestnem prometu, tudi med interakcijo z drugimi napravami [1]. Zato pri načrtovanju uporabniških vmesnikov upoštevamo voznikov prostor in njegovo omejeno zmožnost opravljanja več hkratnih opravil. Načini interakcije, ki so v vozilih največkrat uporabljeni, so taktilni in rotacijski gumbi ter ročice, tako na volanu kot na armaturni plošči. Tak način interakcije je sicer primeren za omejen nabor funkcionalnosti, vendar z povečevanjem kompleksnosti sistemov, dodajanjem novih funkcionalnosti in digitalnih zaslonov, se pojavljajo novi koncepti interakcije človek-stroj. Vozila dandanes ponujajo že alternativne načine interakcije, kot so zasloni na dotik, več-funkcijski rotacijski gumbi, prepoznavanje govora, ERK'2019, Portorož, 49-52 49 prepoznavanje kretenj, prostoročna interakcija ali sledilne ploščice [2], [3]. V predhodnih raziskavah smo že raziskali tako uporabnost, privlačnost in uporabniško izkušnje prostoročne interakcije [4], kot tudi uporabo prostoročne interakcije kot enega izmed več načinov interakcije v uporabniškem vmesniku [5]. Pri ocenjevanju uporabnosti in uporabniške izkušnje je bilo že ugotovljeno, da opravljanje nalog z uporabo prostoročne interakcije lahko povzroči polovico manj napak, potrebuje krajši čas za končanje naloge, in potrebuje krajše in manj pogledov z očmi v primerjavi z uporabo taktilnih ali vrtljivih gumbov [6], [7]. Po drugi strani pa je uporaba sistemov na dotik pokazala, da čeprav prostoročne kretnje po zraku kažejo varnejše sekundarno interakcijo, njihova uporaba vodi do daljših časov za končanje naloge in večje kognitivne obremenitve v primerjavi z vmesniki na neposreden dotik [6], [8]. Vendar pa so uporabniki ocenili prostoročno interakcijo kot bolj prijetno in so jo prepoznali kot manj motečo v primerjavi z uporabo zaslona na dotik [7], [8]. Čedalje bolj uporabljen vmesnik v novih vozilih je zaslon na dotik. Težave, ki jih pričakujemo pri uporabi le-tega je predvsem vizualna motnja, sej je potrebno za interakcijo umakniti pogled s ceste. To so ugotovili že v drugih študijah, npr. da se vizualna zahtevnost upravljana zaslona na dotik povečuje z zmanjševanjem gumbov [9]. Manjši kot je gumb, bolj se bo moral voznik vizualno truditi, da ga bo zadel. Drugi raziskovalci so ugotovili, da je pomembna tudi postavitev, saj oddaljenost lahko vpliva, ravno tako kot vplivajo pogoji na cesti [10]. Naše raziskovalno vprašanje pri uporabniški študiji je – kako vpliva izbira načina interakcije, pri različnih prometnih pogojih in za različne težavnosti nalog, na varno vožnjo? 2 Metodologija Na raziskovalno vprašanje smo odgovorili s pomočjo uporabniške študije v simulatorju vožnje. Študija je bila mešanega tipa z dvema faktorjema. Prvi je bil težavnost vožnje, drugi pa težavnost nalog. Težavnost vožnje je bila v dveh različnih variantah – lažja in težja. Oba načina vožnje sta potekala na avtocesti z dvema pasovoma v smer vožnje in dva nasproti, ločena z ograjo, kjer so udeleženci ves čas sledili vozilu pred sabo. Razlika v dveh nivojih težavnosti je bila v gostoti prometa. Težji način z gostejšim prometom je zahteval še spremljanje prometa poleg sprednjega vozila in je bil zato težji. Poleg vožnje so udeleženci opravljali še seznam nalog. Naloge so bile razdeljene v dve skupini – lažje in težje. Razlika težavnosti je predstavljalo različno število korakov za dokončanje naloge. Uporabnik je moral v vsakem sklopu opraviti tri naloge z določenim načinom interakcije. Vrstni red teh nalog je bil naključen. Vsak udeleženec je opravil štiri sklope nalog – za dva različna načina vožnje in dve različni zahtevnosti nalog. Vrstni red načinov vožnje in težavnosti nalog je bil pomešan. Tako smo odpravili dvom, da bi lahko učinek učenja vplival na rezultate. 2.1 Udeleženci V študiji je sodelovalo 28 udeležencev (19 moških in 9 žensk), starih od 19 do 37 let (M = 24,3 let, SD = 3,9 let). Vsi udeleženci so imeli veljavno vozniško dovoljenje in povprečno 6 let vozniških izkušenj. 2.2 Simulator vožnje Simulator vožnje poganja visoko zmogljiv računalnik s procesorjem i7-6700K in grafično kartico GeForce GTX 980Ti. Slikovni izhod je sestavljen iz treh ukrivljenih televizijskih zaslonov Samsung. Kot oprema za nadzor vozila sta bila uporabljena volan, stopalke in prestavna ročica znamke Fanatec. Uporabljena simulacijska programska oprema je OKTAL SCANeR Driver Training Studio, ki ponuja zelo realistično okolje za vožnjo in vključuje realne fizikalne lastnost vozil in ustrezne povratne informacije. 2.3 Uporabniški vmesniki Interaktivni sistem v simulatorju je sestavljen iz dveh izhodnih kanalov in treh vhodnih kanalov. Prvi izhodni kanal je vizualen in je bil prikazan kot zaslon na desni strani voznika – tako bi bil v pravem vozilu zaslon na sredini armaturne plošče. Drugi izhodni kanal je bil zvočni, ki je dajal povratno informacijo o izbiri. Vhodni kanali so: zaslon na dotik, ki hkrati tudi vizualno prikazuje meni, gumb na volanu in sistem prostoročne prepoznave kretenj. Zaslon na dotik. Zaslon je prikazoval hierarhičen meni, kjer je prvi nivo izbire ob strani na sivih gumbih, ki so bili ves čas vidni. Na osrednjem delu pa se je spreminjala vsebina glede na izbiro. Nekatere izbire so imele več nivojev izbire, npr. »Media –> Music –> Nina Pušlar -> To mi je všeč«, drugi pa manj, npr. »Radio –> Rock Radio«. Izbira je možna direktno preko zaslona preko virtualnih gumbov. Gumb na volanu. Ta način interakcije je imel štiri diskretne ukaze na večfukncijskem gumbu: premik gor/dol, potrditev in nazaj. Pomik gumba navzgor je pomenil ukaz »gor«, pomik navzdol ukaz »dol«, pomik desno »potrditev« in pomik levo »nazaj«. 50 Prostoročni vmesnik. Sistem za prepoznavanje prostoročnih kretenj je bil izveden s krmilnikom Leap Motion [11]. Sistem sprejema diskretne ukaze, zato da imamo konsistenten nabor ukazov z gumbom na volanu, tj. gor/dol, potrditev in nazaj. Ukaza gor/dol sta bila izvedena s kretnjo, pri kateri je udeleženec na široko iztegnil dva prsta in nato z roko narisal navidezno krožnico v vertikalni ravnini. Krožnica orisana v smeri urinega kazalca je pomenila ukaz »dol«, v obratni smeri pa ukaz »gor«. Podobno velja za ostala dva ukaza, pri katerih je udeleženec iztegnil vse prste in ponovno z roko narisal navidezno krožnico v vertikalni ravnini. Oris krožnice v smeri urinega kazal z vsemi iztegnjenimi prsti je pomenil »potrditev«, v obratni smeri pa »nazaj«. 2.4 Merjene spremenljivke Vijuganje. Definirano je kot odklon od sredine voznega pasu. Analizirana količina je standardni odklon prečnega položaja pri uporabi posameznega načina interakcije. V težjem scenariju bo seveda zaradi menjavanja vožnje med voznim in prehitevalnim pasom prišlo do povprečno višjih vrednosti, zato bomo primerjali odklon le glede na težavnost naloge. Varnostna razdalja. Ker ocenjujemo riziko slabe varnosti bomo računali kršitve varnostne razdalje oz. časovnega presledka med voziloma [12]. Časovni presledek med voziloma je definiram kot 𝑇(𝑡) = 𝑋(𝑡)/𝑣(𝑡), kjer 𝑋(𝑡) predstavlja trenutno razdaljo do naslednjega vozila, 𝑣(𝑡) pa trenutno hitrost. Kot varno varnostno razdaljo upoštevamo 2s, kar je kombinirana vrednost časom do morebitnega trka s sprednjim vozilom, reakcijskim časom in časom zaviranja. Merjena spremenljivka je torej (1) kjer je minimalna varnostna razdalja , vrednost S(t) pa predstavlja faktor kršitve pravila dveh sekund. Faktor S(t) ima torej vrednosti med 0 in 1, kjer 1 pomeni najhujšo kršitev varnostne razdalje - trk s prednjim vozilom. Kršitev varnostne razdalje bomo računali kot povprečje v izbranem intervalu. Pogled stran iz ceste. S sistemom sledilnika pogleda Tobii Glasses Pro 2 smo ves čas beležili smer pogleda voznika. Tu je bil analiziran delež časa v katerem je voznik usmeril pogled stran s ceste. 3 Rezultati 3.1 Varnostna razdalja Povprečne vrednosti kršitve varnostne razdalje so prikazane na slikah 1 in 2. Za ugotavljanje statistično pomembnih razlik smo uporabili trifaktorski test variance ANOVA, kjer je en faktor zahtevnost vožnje (enostavna in zahtevnejša), drugi faktor je zahtevnost naloge (enostavne in težje) in zadnji je način interakcije (prostoročno, gumb na volanu in zaslon na dotik). S statističnim testom smo preverili tudi morebitne učinke interakcije med faktorji na kršenje varnostne razdalje. Ugotovili smo, da so statistično signifikantni vplivi na varnostno razdaljo le s strani zahtevnosti vožnje in zahtevnosti nalog – načini interakcije in medsebojna interakcije faktorjev ne vpliva na varnostno razdaljo. zgoraj predvidevali, bo v načinu vožnje prišlo do večje vrednosti vijuganja zaradi prehitevanja, kar pomeni večje premikanje po posameznih voznih pasovih in zato ni smiselno opravljati statističnega testa. Slika 3. Povprečna vrednost vijuganja glede na zahtevnost naloge. 3.3 Pogled na cesto Najprej smo za vsakega udeleženca, pri vsakem opravljanju naloge, izračunali delež časa, v katerem udeleženec gleda na cesto in ne drugam. Povprečje vseh relativnih časov je prikazano na slikah 4 in 5. Za ugotavljanje statistično pomembnih razlik smo uporabili trifaktorski test variance ANOVA, kjer je en faktor zahtevnost vožnje (enostavna in zahtevnejša), drugi faktor je zahtevnost naloge (enostavne in težje) in način interakcije (prostoročno, gumb na volanu in zaslon na dotik). S statističnim testom smo preverili tudi morebitne učinke interakcije med faktorji na kršenje varnostne razdalje. Ugotovili smo, da so statistično signifikantni vplivi na čas gledanja na cesto s strani zahtevnosti vožnje in načina interakcija. Tako zahtevnost naloge kot tudi morebitni medsebojni vplivi med faktorji ne vplivajo na čas gledanja na cesto. Slika 1. Povprečna kršitev varnostne razdalje glede na zahtevnost naloge. Slika 2. Povprečna kršitev varnostne razdalje glede na zahtevnost vožnje. 3.2 Vijuganje Povprečne vrednosti standardnega odklona bočnega položaja vozila so prikazani na sliki 3. Za ugotavljanje statistično pomembnih razlik smo uporabili dvofaktorski test variance ANOVA, kjer je faktor zahtevnost naloge (enostavne in težje) in drugi način interakcije (prostoročno, gumb na volanu in zaslon na dotik). S statističnim testom smo preverili tudi morebitne učinke interakcije med faktorjema na vijuganje. Ugotovili smo, da so statistično signifikantni vplivi na vijuganje le s strani zahtevnosti nalog. Kot smo že 51 Slika 4. Relativni čas usmeritev pogleda na cesto glede na zahtevnost naloge. je premalo učinkovita in je potrebno še precej dodelati za resno uporabo v avtomobilskih vmesnikih. Zahvala Raziskava je bila podprta s strani ARRS. Literatura Slika 5. Relativni čas usmeritev pogleda na cesto glede na zahtevnost vožnje naloge. 4 Razprava V tej študiji smo ocenjevali večmodalni uporabniški vmesnik, ki kot vhodne naprave uporablja tri različne načine interakcije. Ocenjevali smo vpliv uporabe posameznega načina interakcije na varnost vožnje. Kot parametre varnosti smo upoštevali varnostno razdaljo, vijuganje in čas gledanja na cesto. Različni načini interakcije so vplivali le na čas gledanja na cesto, kjer so udeleženci relativno največ časa gledali na cesto pri prostoročni interakciji, nekoliko manj pri interakciji z gumbom na volanu in najmanj pri interakciji z zaslonom na dotik. Glede na povezane študije je bil ta rezultat predviden, saj interakcija z zaslonom na dotik potrebuje dejansko gledanje na zaslon za to, da uporabnik pravilno izbere določen element. Pri ostalih dveh načinih interakcije so se lahko uporabniki zanašali na slušno povratno informacijo. Razlike pri relativnem času gledanja na cesto smo zaznali predvsem pri zahtevnosti vožnje, saj so pri bolj zahtevni vožnji uporabniki dalj časa gledali na cesto. Ta ugotovitev je tudi pričakovana, saj je potrebno več pozornosti posvečati samemu prometu. Pri zahtevnejši vožnji se je ravno tako povečala varnosti razdalja. Le-ta se je povečala tudi pri zahtevnejših nalogah. Povečanje varnostne razdalje lahko pripišemo deljeni pozornosti voznika, saj je s povečano varnostno razdaljo nekako razbremenil potrebo po stalnem spremljanju prometa. Pričakovan rezultat je bil tudi ta, da so težje naloge povzročile več vijuganja po cesti. Zanimivo je tudi to, da noben način interakcije ni povzročil večjega vijuganja ali spremembe varnostne razdalje. Zaključimo z ugotovitvijo, da je najbolj smiselno uporabljati taktilni vmesnik s haptično/zvočno povratno informacijo, saj ne predstavlja dodatnega varnostnega tveganja. Zasloni na dotik precej povečajo vizualno motnjo in zato glede na druga dva načina interakcije predstavljata večje varnostno tveganje. Prostoročni je sicer zanimiva in obetavna zaradi zmanjšanja vizualne motnje, ampak trenutna implementacija tega vmesnika 52 [1] B. Pfleging, S. Schneegass, D. Kern, in A. Schmidt, „Vom Transportmittel zum rollenden Computer – Interaktion im Auto“, Informatik Spektrum, let. 37, št. 5, str. 418–422, okt. 2014. [2] C. Müller in G. Weinberg, „Multimodal Input in the Car, Today and Tomorrow“, IEEE Multimedia, let. 18, št. 1, str. 98–103, jan. 2011. [3] A. Riener in M. Rossbory, „Natural and intuitive hand gestures: a substitute for traditional vehicle control?“, Proceedings of the AutomotiveUI, let. 11, str. 2, 2011. [4] T. Čegovnik in J. Sodnik, „Free-hand human-machine interaction in vehicles“, predstavljeno na International Conference on Information Society and Technology, let. 2016, str. 251–256. [5] T. Čegovnik in J. Sodnik, „Primerjava uporabniške izkušnje različnih uporabniških vmesnikov v vozilu“, 2018, let. 2018, str. 112–115. [6] K. M. Bach, M. G. Jæger, M. B. Skov, in N. G. Thomassen, „You can touch, but you can’t look: interacting with in-vehicle systems“, v Proceeding of the twenty-sixth annual CHI conference on Human factors in computing systems - CHI ’08, Florence, Italy, 2008, str. 1139. [7] L. Graichen, M. Graichen, in J. F. Krems, „Evaluation of Gesture-Based In-Vehicle Interaction: User Experience and the Potential to Reduce Driver Distraction“, Human Factors: The Journal of the Human Factors and Ergonomics Society, str. 001872081882425, jan. 2019. [8] K. R. May, T. M. Gable, in B. N. Walker, „A Multimodal Air Gesture Interface for In Vehicle Menu Navigation“, v Proceedings of the 6th International Conference on Automotive User Interfaces and Interactive Vehicular Applications - AutomotiveUI ’14, Seattle, WA, USA, 2014, str. 1–6. [9] A. L. Eren, G. Burnett, in D. R. Large, „Can in-vehicle touchscreens be operated with zero visual demand? An exploratory driving simulator study“, v the 4th International Conference on Driver Distraction and Inattention, 2015, let. 15345. [10] B. I. Ahmad, P. M. Langdon, S. J. Godsill, R. Hardy, L. Skrypchuk, in R. Donkor, „Touchscreen Usability and Input Performance in Vehicles Under Different Road Conditions: An Evaluative Study“, v Proceedings of the 7th International Conference on Automotive User Interfaces and Interactive Vehicular Applications, New York, NY, USA, 2015, str. 47–54. [11] „Leap Motion“. [Na spletu]. Dostopno na: https://www.leapmotion.com/. [Pridobljeno: 26-mar2019]. [12] K. Trontelj, T. Čegovnik, E. Dovgan, in J. Sodnik, „Evaluating safe driving behavior in a driving simulator“, predstavljeno na International Conference on Information Society and Technology, let. 2017, str. 299– 302. Taktilno-vizualni uporabniški vmesnik za voznikov prevzem upravljanja vozila pri prekinitvi avtonomne vožnje Timotej Gruden, Matevž Hribernik, Erik Keš, Jaka Sodnik, Grega Jakus Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, Ljubljana, Slovenija E-pošta: timotej.gruden@fe.uni-lj.si Tactile-visual output user interface for driver take-over after autonomous driving Abstract. In this paper we present the development and evaluation procedure of a tactile-visual output user interface for take-over request during autonomous driving. A brief literature overview showed us the optimal position of tactile interface output (seat) and that the different output information level – notifications or patterns is not statistically significant. The tactile interface consists of an Arduino nano microcontroller and a 2x3 matrix of vibration motors, placed on the seat of driving simulator. The visual interface is implemented using an RGB LED strip placed at the bottom of the driving simulator’s middle screen and controlled with the same microcontroller as tactile output. A pilot study was conducted to compare the tactile-visual interface with a more common audiovisual output user interface. The results showed that the developed interface is less time demanding, more attractive and more perspicuitive, but requires more effort. 1 Uvod Razvoj avtonomne vožnje je interdisciplinaren izziv, ki vključuje razvoj zanesljive in varne strojne in programske opreme, algoritmov, komunikacijske infrastrukture, pa tudi pravne, etične in sociološke vidike. V članku se bomo osredotočili na interakcijo med voznikom in avtonomnim vozilom, ko se to znajde v okoliščinah, za katere ni usposobljeno, in zato prekine avtonomno vožnjo ter preda upravljanje vozila vozniku. Takšne okoliščine na primer vključujejo dogodke na cesti, obnašanje soudeležencev v prometu ali vremenske razmere. Učinkovita interakcija med vozilom in voznikom je v teh trenutkih zelo pomembna, saj mora voznik čim hitreje oceniti prometno situacijo in se ustrezno odzvati. Interakcija med napravo in njenim uporabnikom poteka preko medsebojnega stičnega področja, ki mu pravimo "uporabniški vmesnik". S pomočjo uporabniškega vmesnika naprava posreduje uporabniku informacije o svojem stanju, ta pa lahko na njihovi podlagi z napravo upravlja. Zasnovati smo želeli tak taktilno-vizualni uporabniški vmesnik, ki bi omogočil učinkovito in varno predajo upravljanja vozila vozniku. Raziskava različnih modalnosti uporabniških vmesnikov med avtonomno vožnjo je pokazala, da se vozniki na zahtevo za prevzem nadzora občutno hitreje odzovejo v primeru taktilnega ali zvočnega vmesnika ERK'2019, Portorož, 53-56 53 kot vizualnega, saj prva dva omogočata hipen odziv [1]. Obenem so izvajalci pokazali še, da vrsta sekundarne naloge (poleg vožnje) statistično ne vpliva na odzivne čase voznikov. V preteklih raziskavah so Borojeni idr. želeli s spreminjanjem oblik volana in dodatnimi vibracijskimi vzorci v volanu sprožiti učinkovitejši prevzem nadzora nad vozilom, saj so predpostavljali, da je človekov taktilni kanal med vožnjo manj obremenjen, kot vizualni ali zvočni [2]. Izkazalo se je, da taka informacija voznikom bolj podaja neko dodatno zaupanje v svojo odločitev, kot pa pripomore k sami odločitvi. Za pomoč pri odločitvi naj bi se bolje obnesli dražljaji direktno na voznikovem telesu. Znano je tudi, da multimodalni uporabniški vmesniki pri uporabnikih sprožijo hitrejši odziv kot enomodalni. Ker ima že praktično vsak avtomobil vsaj en zaslon, lahko predpostavljamo, da bo zahteva za prevzem nadzora nad vožnjo zagotovo posredovana tudi preko vizualnega kanala. Študije navajajo še, da se z nadzorovano spremembo ambienta lahko izboljšajo (skrajšajo) odzivni časi voznikov pri prevzemu nadzora [3]. V navedenem primeru navajajo tudi, da se uporaba različnih vzorcev (npr. statična in premikajoča rdeča svetloba) ne izkaže za statistično pomembno. Melcher idr. so poskusili podati zahtevo za prevzem nadzora preko taktilnega kanala tudi z nenadnim hipnim trzajem oziroma zaviranjem [4]. Pri tem so ugotovili, da v primeru, ko ima voznik na voljo dovolj časa za prevzem nadzora, način podajanja informacije nima vpliva na odzivni čas voznika. Nedavna raziskava vpliva različnih vibracijskih vzorcev [5] na čas do prevzema nadzora nad vozilom je pokazala, da je najučinkovitejši položaj taktilnih aktuatorjev v sedežu vozila in v spodnjem delu naslonjala (hrbet). Izmed različnih taktilnih vzorcev, posredovanih z vibracijskimi motorji, nameščenimi v mrežah 2x2 (levo - desno, spredaj - zadaj) v voznikovem sedežu in na naslonjalu, se je najbolje izkazal vzorec, ki dvakrat zaporedoma vibrira na naslonjalu in nato še dvakrat zaporedoma v sedežu. Z obzirom na navedeno, smo si postavili dve raziskovalni vprašanji: 1. Kako zasnovati taktilno-vizualni izhodni uporabniški vmesnik za učinkovito predajo nadzora nad avtonomnim vozilom? 2. Kako oceniti uporabnost in uporabniško izkušnjo zasnovanega vmesnika? V naslednjem poglavju so predstavljene uporabljene naprave tako za taktilni kot vizualni del uporabniškega vmesnika, sledeči dve poglavji predstavljata postopek načrtovanja taktilnega vmesnika (metodologijo) in možen način ocenjevanja uporabniške izkušnje (ovrednotenje). V 5. poglavju so na kratko povzeti rezultati zasnove in pilotnega ocenjevanja, v zadnjem poglavju pa smo na kratko povzeli delo in predstavili ključne ugotovitve, ki nas bodo vodile v nadaljnjem raziskovanju. 2 Uporabljene naprave Ker je potrebno taktilno-vizualni uporabniški vmesnik upravljati iz simulatorja vožnje, smo za njegovo krmiljenje uporabili krmilnik Arduino nano (s procesorjem ATmega328), ki ima vgrajen USB (Universal Serial Bus) priključek [6]. Signalne priključke taktilnega in vizualnega vmesnika smo priključili neposredne na krmilnikove večnamenske vhode in izhode (GPIO – General-Purpose Input/Output). 2.1 3 Integracija v simulator vožnje 3.1 Taktilni vmesnik Wan in Wu sta v svoji študiji pokazala, da je najboljši položaj za postavitev vibracijskih motorjev sedalo ali spodnji del naslonjala sedeža [5]. Tudi sami smo ugotovili, da taktilnih dražljajev v avtomobilskem sedežu na hrbtu skoraj ne čutimo. Verjetno je k temu botrovala tudi oblika naslonjala – v uporabljenem simulatorju je nameščen športni sedež, ki ima trše stranice, obrnjene naprej (Slika 2). Vibracijske motorje smo zato namestili le v sedalo, in sicer razporejene v dveh vrstah s po tremi motorji. Eno vrsto smo namestili ob levi, drugo pa ob desni strani sedala (Slika 3). Tako lahko z različnimi vzorci ločeno krmilimo vibratorje v levi ali desni vrsti oziroma vse hkrati. Taktilno-vizualni uporabniški vmesnik Za izvedbo taktilnega vmesnika smo uporabili šest enosmernih vibracijskih motorčkov (3 V / 70 mA) z 12000 obrati na minuto (RPM – Roots per Minute), ki so namenjeni za uporabo v mobilnih telefonih. Primer uporabljenega motorčka je prikazan na Sliki 1. Slika 1. Vibracijski motor v taktilnem vmesniku. Vizualni del uporabniškega vmesnika smo izvedli z LED trakom, dolžine cca. 35 cm, s 26 integriranimi svetlobnimi viri LED WS2812B. Vsak vir vključuje rdečo, modro in zeleno LED diodo in mu je mogoče nastavljati barvo in svetlost. 2.2 Simulator vožnje Uporabniški vmesnik smo integrirali v simulator vožnje NervtechTM [7] (Slika 2). Simulator sestoji iz treh ekranov, nastavljivega sedeža, volana in stopalk. Slika 3. Integracija taktilnega izhodnega uporabniškega vmesnika v sedalo simulatorja vožnje (traka piezoelektričnih aktuatorjev na levi in desni strani sedala). 3.2 Vizualni vmesnik Trak svetlečih diod za ambientalno svetlobo oz. informacijo o stanju avtonomnega vozila, smo namestili na spodnji rob sredinskega zaslona simulatorja (Slika 4). V vozilu je to tik pod armaturno ploščo, kamor je pogosto usmerjen voznikov pogled. Slika 4. Integracija vizualnega uporabniškega vmesnika v simulator vožnje (LED trak pod osrednjim zaslonom). Zelena svetloba nakazuje vključeno avtonomno vožnjo, rdeča svetloba pa zahtevo za prevzem nadzora. Slika 2. Simulator vožnje NervtechTM 54 Ugasnjene svetleče diode nakazujejo, da ima uporabnik nadzor nad vozilom. Zahteva za prevzem nadzora (rdeča svetloba) se podobno kot pri taktilnem vmesniku lahko pojavi na levem delu, desnem delu ali po celotnem LED traku. 3.3 Krmiljenje Oba vmesnika krmili isti krmilnik, ki je nameščen pod naslonjalom sedeža (Slika 5). Krmilnik je z računalnikom, na katerem se izvaja programska oprema simulacije, povezan preko vodila USB 2.0. Vibracijski motorji so na krmilnik priključeni neposredno kot vhodno/izhodne enote krmilnika, LED trak je povezan preko daljše sukane parice, napajanje svetlečih diod pa prek lastnega napajalnika. Slika 5. Krmilnik taktilno-vizualnega izhodnega uporabniškega vmesnika, nameščen pod naslonjalom sedeža. Stopnjo informacije dražljaja razdelimo v tri kategorije:  opozorilo: preprost enkraten dražljaj (npr. pisk), katerega učinek je zgolj pritegnitev pozornosti,  vzorec: zaporedje ali kombinacija več različnih preprostih dražljajev, ki skupaj poleg pritegnitve pozornosti lahko podajajo še preprosto informacijo,  opis: kompleksna oblika informacije, podana v obliki naravnega jezika, npr. besedila ali govora. Načrtovani uporabniški vmesnik omogoča tako posredovanje opozoril, kot tudi vzorcev. Z obliko in proženjem dražljajev upravlja programska oprema simulacije vožnje preko namensko razvitega modula. V njem smo implementirali protokol komunikacije programske opreme s krmilnikom preko zaporednega komunikacijskega vodila. 4 Ovrednotenje uporabniškega vmesnika Za prvi preizkus delovanja taktilno-vizualnega uporabniškega vmesnika smo izvedli pilotno študijo, v kateri smo sodelujoče povprašali po obremenitvi (NASA Task Load Index [8]) in uporabniški izkušnji (UEQ – User Experience Questionnaire [9]). Sodelovale so štiri osebe moškega spola, stare med 20 in 30 let. 4.1 Tehnična postavitev pilotne študije Pilotno študijo smo izvedli kot primerjavo med taktilnovizualnim in avdio-vizualnim izhodnim uporabniškim vmesnikom. Oba (taktilni in zvočni) kanala imata pri uporabniku možnost vzbuditi hipen odziv, zato ju lahko primerjamo med sabo. Zvočni dražljaj je predstavljal pisk iz levega, desnega ali obeh zvočnikov. 55 4.2 Naloge Vozilo je bilo avtonomno (nivo 3 po lestvici SAE [10]), a je med vožnjo naletelo na nekaj nepredvidenih situacij. Od polovice uporabnikov je zahtevalo prevzem nadzora s taktilno-vizualnim vmesnikom, od druge polovice pa z avdio-vizualnim vmesnikom. Voznikova primarna naloga je bila varna vožnja. V danem primeru je to pomenilo, da mora zagotovo prevzeti nadzor nad vozilom, ko vozilo to zahteva. Med avtonomno vožnjo so vozniki na mobilnem telefonu igrali igro tetris. Na ta način smo simulirali voznikovo nepozornost na dogajanje med avtonomno vožnjo. 4.3 Postopek Vsakemu udeležencu smo najprej obrazložili namen študije, nato je podpisal soglasje za sodelovanje. Prikazali smo mu delovanje simulatorja, avtonomne vožnje in načine, kako lahko prevzame nadzor nad vozilom. Vse omenjeno je lahko udeleženec tudi sam preizkusil. Nato smo mu pokazali še možna opozorila taktilno-vizualnega oz. avdio-vizualnega izhodnega uporabniškega vmesnika in pričeli s cca. 20 minutno vožnjo. 5 Rezultati Iz odgovorov udeležencev na vprašalnik o uporabniški izkušnji (Graf 1) lahko razberemo, da se jim je taktilnovizualni izhodni uporabniški vmesnik zdel bolj atraktiven in pregleden kot avdio-vizualni. Kljub temu so avdio-vizualnega ocenili za učinkovitejšega kot taktilno-vizualnega. Ostalih kategorij zaradi prevelikih odstopanj (premajhnega števila uporabnikov) ni mogoče primerjati. 4 3 2 1 0 -1 -2 -3 -4 Taktilno-vizualni Avdio-vizualni Graf 1. Rezultati vprašalnika o uporabniški izkušnji (UEQ) Odgovori na vprašalnik o obremenitvi med izvajanjem naloge (NASA TLX) so v dveh vrstah obremenitve očitno razdeljeni v dva pola, kjer en predstavlja uporabo taktilno-vizualnega, drugi pa avdiovizualnega vmesnika (Graf 2). Razberemo lahko, da se je uporabnikom taktilno-vizualni vmesnik zdel manj časovno zahteven kot avdio-vizualni, a so morali za prevzem nadzora očitno vložiti več truda kot uporabniki avdio-vizualnega vmesnika. Povprečna vrednost obremenitve po NASA TLX vprašalniku je bila za obe skupini uporabnikov enaka. 400 350 300 250 200 150 100 50 0 Zahvala Prispevek je nastal v okviru projekta »Razvoj uporabniškega vmesnika za voznikov prevzem upravljanja vozila pri prekinitvi avtonomne vožnje«. Projekt sta v okviru javnega razpisa »Projektno delo z gospodarstvom in negospodarstvom v lokalnem in regionalnem okolju – po kreativni poti do znanja 20172020« sofinancirala Republika Slovenija in Evropska unija iz Evropskega socialnega sklada. Literatura Taktilno-vizualni Avdio-vizualni Graf 2. Rezultati vprašalnika o obremenitvi med izvajanjem naloge (NASA TLX). 6 Razprava in zaključek Uspešno smo torej izdelali taktilno-vizualni uporabniški vmesnik. Eksperimentalno smo ugotovili, da je za položaj vibracijskih motorjev najboljši položaj sedalo. Stopnjo podane informacije smo tokrat omejili na opozorila, a smo pustili tudi možnost za uporabo vzorcev. Verjetno bi bilo smiselno preveriti še, kakšne so razlike v odzivnih časih med vzorci in opisom situacije, a predvidevamo, da je razumevanje opisa situacije (besedila oz. govora) pogojeno s časom, ki ga ima uporabnik na voljo. Če bi uporabnik vedel, da ima dovolj časa za prevzem upravljanja vozila, bi verjetno iz opisa razbral več informacij in bi se lahko bolj pravilno odločil. Vsekakor bi morali to najprej preveriti z obsežnejšo študijo. Iz testiranja uporabniškega vmesnika (odgovorov na vprašalnike) smo lahko razbrali, da se novi vmesnik uporabnikom zdi manj časovno obremenjujoč ter bolj atraktiven in pregleden kot avdio-vizualni vmesnik. Manjšo časovno obremenitev povezujemo predvsem z manjšo zasedenostjo taktilnega kanala pri uporabniku. Nekoliko več truda je bilo verjetno potrebno vložiti v obvladanje zaradi novosti oz. »nenavajenost« na tak vmesnik. Vsak uporabnik ima v vozilu ogromno zvočnih dražljajev, zato je nanje navajen in verjetno nanje lažje reagira, kot na zanj novi taktilni dražljaj. Tudi pripisovanje večje učinkovitosti avdio-vizualnem vmesniku je najverjetneje prav tako posledica nenavajenosti na taktilnega. Vsekakor smo s taktilnim vmesnikom dosegli ne samo večjo atraktivnost, ampak tudi večjo preglednost nad situacijo, kar je za obravnavani problem ključnega pomena. 56 [1] S. Petermeijer, F. Doubek, in J. de Winter, „Driver response times to auditory, visual, and tactile takeover requests: A simulator study with 101 participants“, v 2017 IEEE International Conference on Systems, Man, and Cybernetics (SMC), 2017, str. 1505–1510. [2] S. S. Borojeni, T. Wallbaum, W. Heuten, in S. Boll, „Comparing Shape-Changing and VibroTactile Steering Wheels for Take-Over Requests in Highly Automated Driving“, v Proceedings of the 9th International Conference on Automotive User Interfaces and Interactive Vehicular Applications, New York, NY, USA, 2017, str. 221–225. [3] S. S. Borojeni, L. Chuang, W. Heuten, in S. Boll, „Assisting Drivers with Ambient Take-Over Requests in Highly Automated Driving“, v Proceedings of the 8th International Conference on Automotive User Interfaces and Interactive Vehicular Applications, New York, NY, USA, 2016, str. 237–244. [4] V. Melcher, S. Rauh, F. Diederichs, H. Widlroither, in W. Bauer, „Take-Over Requests for Automated Driving“, Procedia Manuf., let. 3, str. 2867–2873, jan. 2015. [5] J. Wan in C. Wu, „The Effects of Vibration Patterns of Take-Over Request and Non-Driving Tasks on Taking-Over Control of Automated Vehicles“, Int. J. Human–Computer Interact., let. 34, št. 11, str. 987–998, nov. 2018. [6] „Arduino Nano“. [Na spletu]. Dostopno na: https://store.arduino.cc/arduino-nano. [Pridobljeno: 18-jul-2019]. [7] „Nervtech Simuation Technologies“, Nervtech. [Na spletu]. Dostopno na: https://www.nervtech.com. [Pridobljeno: 29-apr-2019]. [8] S. G. Hart in L. E. Staveland, „Development of NASA-TLX (Task Load Index)“, v Advances in Psychology, let. 52, P. A. Hancock in N. Meshkati, Ur. North-Holland, 1988, str. 139–183. [9] M. Schrepp, „User Experience Questionnaire Handbook“, sep. 2015. [10] „SAE International Releases Updated Visual Chart for Its “Levels of Driving Automation” Standard for Self-Driving Vehicles“. [Na spletu]. Dostopno na: https://www.sae.org/. [Pridobljeno: 19-jul2019]. Primerjava modalnosti interakcije v aplikaciji pametnega doma Luka Bezovšek Univerza v Ljubljani, Fakulteta za elektrotehniko E-pošta: lb4263@student.uni-lj.si Comparision between different interaction modalities in smart home application Abstract. Tangible user interfaces, unlike graphical user interfaces, nowadays present a more natural way of interaction in human-computer interaction. The main aim of this paper is to compare tangible and graphical interaction modalities in smart home context and to check, if tangible user interfaces can be used as standalone input-output units. Based on professional recommendations, multi modal smart home management prototype application is developed and evaluated in a simple user study. 1 Uvod Pametni dom je področje, ki se mu v zadnjem času z vidika razvoja in raziskav posveča veliko pozornosti [4]. Pod besedno zvezo pametni dom si danes predstavljamo bivanjsko okolje, ki preko komunikacijskega omrežja in krmilnikov združuje naprave, senzorje in storitve ter omogoča njihovo daljinsko upravljanje, spremljanje ali nadzor [1][2][3]. Namen storitev pametnega doma je zagotavljanje udobja in poenostavitev vsakdanjega življenja uporabnikov na eni ter varčevanje z energijo na drugi strani [4]. Če se je na začetku razvoj področja pametnih domov usmerjal predvsem v širok spekter pametnih naprav in vseprisotnega računanja (ang. ubiquitous computing) [5], pa se danes vse več pozornosti namenja raziskavam načinov modalnosti interakcije in uporabniški izkušnji. V predstavljenem delu smo želeli na podlagi praktične implementacije prototipa aplikacije za upravljanje pametnega doma preveriti razlike med različnimi modalnostmi interakcije za upravljanje hišne razsvetljave. Zanimalo nas je dejstvo, ali lahko oprijemljivi vmesniki predstavljajo enakovredno ali celo boljšo rešitev klasičnim uporabniškim vmesnikom. Na začetku si pogledamo postopke izbire modalnosti interakcije, ki jo podkrepimo s priporočili za implementacijo. Na kratko si pogledamo tudi tehnično implementacijo prototipa. Predstavimo postopek uporabniških testiranj in članek zaključimo z analizo rezultatov le-teh. 2 Izbira modalnosti interakcije V začetni fazi razvoja so način upravljanja pametnih naprav v domačem okolju predstavljali predvsem konvencionalni uporabniški vmesniki kot so daljinski upravljalniki, TV zasloni [5] in kasneje tudi zasloni na dotik, danes pa se v praksi pojavljajo tudi novi načini interakcije, kot so denimo upravljanje z gestami (npr. Microsoft Kinect) in glasom (npr. Amazon Alexa). ERK'2019, Portorož, 57-60 57 Slika 1: Upravljanje televizije s pomočjo gest na osnovi naprave Microsoft Kinect [12] Zaradi porasta raziskav na področju raznolikosti uporabniških vmesnikov ter relativno enostavni in lahko dostopni tehnologiji, pa je v zadnjem času vse bolj popularna uporaba t.i. oprijemljivih vmesnikov (ang. tangible interfaces) [10]. Za razliko od konvencionalnih grafičnih uporabniških vmesnikov, oprijemljivi vmesniki vključujejo uporabo resničnih fizičnih objektov v uporabnikovi okolici, ki so povezani z digitalnimi predstavitvami in procesi [10], hkrati pa uporabniku preko prijemanja (ang. grasping), predstavljajo bolj naraven način komunikacije. Tudi na področju tehnologij pametnega doma že obstajajo prototipi, ki za interakcijo uporabnika s sistemom implementirajo oprijemljive uporabniške vmesnike. Primer prototipa je projekt CUBE, ki s pomočjo kocke uporabniku omogoča upravljanje številnih naprav v domačem okolju [12]. Slika 2: Projekt CUBE - upravljanje pametnega doma s pomočjo kocke [12] Pri izbiri modalnosti interakcije našega prototipa smo si pomagali s strokovnim člankom, motiv za nastanek katerega po besedah avtorjev izhaja iz dejstva, da ima, kljub množični razširjenosti številnih komercialnih rešitev za upravljanje pametnega doma, veliko uporabnikov še vedno težave pri razumevanju delovanja in upravljanju tovrstnih sistemov [7]. Pri snovanju smernic za implementacijo vmesnika za upravljanje sistema pametnega doma, sta avtorja omenjenega članka v osrednjo vlogo postavila uporabnika, za kar sta uporabila izraz »pristop z osredotočanjem na prebivalce« (ang. inhabitantcentered approach) [7]. V eni izmed točk v priporočilih, ki je bila med drugim tudi ena izmed izhodiščnih smernic našega projekta, avtorja bralcem svetujeta uporabo tako grafičnih, kot tudi oprijemljivih vmesnikov kot modalnosti interakcije, saj s tem zagotovimo enostavnost uporabe sistema široki množici ljudi, ki imajo različne uporabniške preference in stopnje tehnološke pismenosti [7]. V našem primeru smo se odločili, da bomo implementirali upravljanje dveh različnih tipov luči v hišni razsvetljavi – prižiganje/ugašanje bele luči in spreminjanje barve ambientalne osvetlitve. Pri snovanju modalnosti interakcije in uporabniških vmesnikov smo se na eni strani skušali držati priporočil iz omenjenega članka, na drugi strani pa smo sledili tudi sodobnim smernicam za izgradnjo uporabniških vmesnikov. Pri implementaciji uporabniškega vmesnika smo želeli zagotoviti čim bolj jasno konsistentnost ter enostaven način upravljanja povezanih naprav. Če se zopet navežemo na zgoraj omenjeni članek in priporočila, ena izmed točk govori o implementaciji interakcije po korakih (ang. step-by-step mechanism) [7]. Implementacija kompleksnejših akcij naj bo razdeljena na več enostavnih korakov, kar zagotavlja minimalno obremenitev uporabnikovega spomina. Upravljanje razsvetljave smo logično razdelili na posamezne prostore, posamezna luč v prostoru pa je na vmesniku prikazana kot enostaven kvadrat z izpisano lokacijo in trenutnim statusom, ob kliku na katerega se na zaslonu prikaže dialog, preko katerega lahko upravljamo izbrano luč. Za upravljanje različnih tipov luči smo uporabili intuitivne grafične elemente, ki čim bolj posnemajo upravljanje luči v fizičnem svetu. Za prižiganje in ugašanje luči smo uporabili element, ki je po delovanju podoben stikalu (sprememba stanja ob kliku oz. potegu), za spreminjanje barve pa smo uporabili drsnik z barvnim krogom. kontekstu oprijemljivega vmesnika. Odločili smo se, da za upravljanje izbranih akcij, ki smo si jih zadali na začetku, izberemo kocko, saj ta zahteva minimalen poseg v uporabnikovo fizično okolje, hkrati pa zaradi svoje enostavnosti od uporabnika ne zahteva velikega napora v procesu učenja uporabe. Enako kot pri implementaciji grafičnega uporabniškega vmesnika, smo tudi tu izhajali iz priporočil. Postopke upravljanja smo razdelili na več enostavnejših korakov, hkrati pa smo skušali čimbolj posnemati naravne načine interakcije. Upravljanje različnih luči v prostoru smo razdelili na posamezne pare nasprotnih ploskev na kocki, glede na tip luči pa smo nato izbrali še najprimernejšo manipulacijo oz. premik, ki ga mora uporabnik izvesti s pomočjo kocke za realizacijo specifične akcije. Za prižiganje in ugašanje luči smo izbrali obračanje kocke na posamezno ploskev. Par nasproti ležečih ploskev predstavlja stikalo za specifično luč. Če kocko postavimo tako, da je ploskev, ki določa prižig luči, obrnjena navzgor, se bo luč prižgala in obratno. Podobno deluje tudi upravljanje barve ambientalne osvetlitve. Če je kocka obrnjena z ustrezno ploskvijo navzgor, lahko z vrtenjem kocke okoli navpične osi spreminjamo barvo osvetlitve, s čimer posnemamo pomikanje drsnika po barvnem krogu na grafičnem uporabniškem vmesniku. Slika 4: Način upravljanja razsvetljave s kocko kot oprijemljivim vmesnikom 3 Tehnična implementacija prototipov Slika 3: Izbira elementov grafičnega uporabniškega vmesnika Pri izbiri načina upravljanja s pomočjo oprijemljivega vmesnika smo izhajali iz definicije pojma ambientalne inteligence, ki pravi, da ta predstavlja element v okolju vseprisotnega računanja, ki s pomočjo vgrajenih in uporabniku neopaznih naprav omogoča interakcijo z vsakdanjim okoljem na naraven način [9]. Besedni zvezi »neopazne naprave« kot element transparentnosti ambientalne inteligence ter »interakcija na naraven način« sta bistveno vplivali na našo končno odločitev za izbiro modalnosti interakcije v 58 Implementirani sistem sestoji iz treh poglavitnih slojev, ki jih nato razdelimo na štiri funkcionalne sklope. Z opisovanjem arhitekture, ki je prikazana na sliki 5, bomo pričeli na strani uporabnika, saj se implementacija uporabniškega vmesnika vedno prične na tem mestu – torej pri uporabnikih. Skrajno levo na shemi se nahaja vhodno/izhodni sloj, ki skrbi za komunikacijo uporabnika z jedrnim delom aplikacije. Kontrolni sklop, ki je v shemi prikazan v spodnjem levem kvadratu, vsebuje tako elemente grafičnega (npr. gumbi na zaslonu) in oprijemljivega (npr. kocka) vmesnika. Uporabnik s spreminjanjem stanj in izvajanjem različnih akcij na obeh vmesnikih preko zalednega dela aplikacije upravlja z različnimi napravami v pametnem domu. Na sredini je prikazan jedrni sloj aplikacije, ki zagotavlja pravilno delovanje in medsebojno povezovanje vseh logičnih enot sistema, upravlja s podatkovnimi tokovi v aplikaciji in skrbi za procesiranje vhodnih in izhodnih podatkov. Celoten tok komunikacije med uporabnikom in zaledno infrastrukturo sistema smo implementirali s pomočjo protokola MQTT (ang. Message Queuing Telemetry Transport) [8]. Ker omenjeni protokol skrbi samo za pravilno posredovanje sporočil ustreznim naslovnikom, ne nudi pa možnosti trajnega shranjevanja stanja sistema, smo za primer hkratne uporabe aplikacije iz več različnih vstopnih točk poskrbeli tudi za ustrezno hrambo in posodabljanje podatkov v realnem času. Tovrstne naloge opravlja tretji sloj aplikacije, ki je neposredno povezan z zalednim podsklopom jedrnega sloja aplikacije, na shemi pa je prikazan v skrajno desnem kvadratu. 2. Uporabite kocko na mizi za prižiganje in ugašanje luči v sobi. 3. Spremenite barvo ambientalne osvetlitve v prostoru z uporabo aplikacije na zaslonu. 4. Prilagodite barvo ambientalne osvetlitve v prostoru – uporabite kocko na mizi. Ob koncu je vsak uporabnik podal še lasten komentar o obeh modalnostih interakcije in izpolnil kratek vprašalnik, v katerem je podal tri številčne ocene za oba preizkušena vmesnika: 1. Ocenite intuitivnost uporabniškega vmesnika (1 – najmanj, 5 – največ). 2. Ocenite zanesljivost delovanja vmesnika (1 – najmanj, 5 – največ). 3. Ocenite težavnost izvedbe s pomočjo vmesnika (1 – sploh ni težko, 5 – zelo težko). Slika 5: Dve različni modalnosti interakcije – upravljanje osvetlitve preko zaslona in s pomočjo kocke Slika 5: Arhitektura implementiranega sistema Pri implementaciji funkcionalnosti kocke smo si pomagali z žiroskopskimi podatki, ki smo jih na MQTT strežnik pošiljali z uporabo modula ESP8266. S pomočjo izračuna usmerjenosti osi koordinatnega sistema kocke smo lahko identificirali njeno vrhnjo ploskev. Z razlikovanjem med različnimi ploskvami smo nato lahko implementirali različne akcije. Še posebej je zanimiva implementacija spreminjanja barve osvetlitve s pomočjo rotacije kocke okoli navpične osi. Glede na spremembo kota med rotacijo okoli navpične osi, se s pomočjo barvnega modela HSL določi ustrezni barvni odtenek, ki ga nato pretvorimo v barvni model RGB in ustrezno prilagodimo barvo svetlobe. 4 Uporabniška testiranja in rezultati Po uspešnem načrtovanju in implementaciji obeh modalnosti interakcije smo želeli preveriti, kako se oba vmesnika obneseta v praksi. S tem namenom smo izvedli zelo enostavno uporabniško testiranje s štirimi sodelujočimi uporabniki. Vsakemu uporabniku smo zastavili štiri poglavitne naloge, pred začetkom opravljanja vsake pa smo oba vmesnika postavili v začetno stanje – grafični vmesnik na vstopni zaslon aplikacije, kocko pa smo postavili na naključno ploskev. Od uporabnika smo zahtevali izvedbo naslednjih akcij: 1. Prižgite in ugasnite luč v sobi z uporabo aplikacije na zaslonu. 59 Med opazovanjem uporabnikov pri uporabi sistema za nobenega izmed implementiranih vmesnikov nismo zaznali izrazitih težav. Uporabniki so pri obeh vmesnikih brez napak uspešno in hitro izvedli želene akcije, prav tako nikoli ni prišlo do primera, ko bi rezultat akcije odstopal od pričakovanega. Edina opazna razlika je bila malo hitrejša izvedba posameznih akcij s pomočjo grafičnega uporabniškega vmesnika, saj so letega uporabniki v vsakdanjem življenju bolj vajeni od oprijemljivih vmesnikov. Pred uporabo kocke so si morali uporabniki le-to nekoliko ogledati, da so ugotovili, kako deluje, kar pa tudi ni trajalo predolgo, saj smo ploskve kocke opremili z enostavnimi ikonami, ki so namigovale na posamezne akcije, ki jih omogoča kocka (npr. barvna paleta predstavlja spreminjanje barve osvetlitve). Intuitivnost Luč GUI 4,63 Luč TUI 4,75 Barva GUI 4,63 Barva TUI 3,63 Zanesljivost 5 5 4 4 Težavnost izvedbe 1 1 1,5 2 Tabela 1: Povprečni rezultati uporabniških ocen implementiranih vmesnikov Intuitivnost Luč GUI 0,41 Luč TUI 0,43 Barva GUI 0,41 Barva TUI 0,41 Zanesljivost 0 0 0 0 Težavnost izvedbe 0 0 0,35 0 Smart-Home-Technology-A-Review-IJASTvol15.pdf)[Dostopano: 10.07.2019] [3] Diane J. Cook, Aaron S. Crandall, Brian L. Thomas, and Narayanan C. Krishnan, CASAS: A Smart Home in a Box, Computer ( Volume: 46 , Issue: 7, July 2013 ), (https://ieeexplore.ieee.org/abstract/document/6313586) [Dostopano: 10.07.2019] Tabela 2: Standardni odklon podanih uporabniških ocen Kot lahko vidimo, izrazitega odstopanja med podanimi ocenami za različne vmesnike ni. Opazimo, da je uporabniški vmesnik na zaslonu nekoliko bolj intuitiven od oprijemljivega, kar verjetno izhaja iz dejstva, da se uporabniki z njim srečujejo vsakodnevno, zato tovrstna modalnost interakcije od njih zahteva nekoliko manj miselnega napora. Opazimo lahko, da ima z vidika intuitivnosti najslabšo oceno upravljanje barve ambientalne osvetlitve, kar so uporabniki podkrepili s komentarjem, da zaradi pomanjkanja vizualnega dela barvnega kroga, ne vedo natančno, v katero smer morajo zavrteti kocko. Na splošno so uporabniki oba vmesnika ocenili sorazmerno dobro, iz česar lahko sklepamo, da ob primerni izbiri modalnosti interakcije, ki sledi nekaterim zgledom iz fizičnega sveta, lahko uporabnikom omogočimo enostaven in učinkovit način interakcije s kompleksnim sistemom. 5 Zaključek V članku smo spoznali več različnih modalnosti interakcije, ki nam omogočajo manipulacijo z istimi funkcionalnostmi sistema. Videli smo, da so tudi oprijemljivi uporabniški vmesniki lahko primerni za upravljanje naprav v pametnem domu. Spoznali smo, da moramo za implementacijo uporabniku prijaznega in intuitivnega vmesnika, ki sistem dvigne na raven uporabnosti, dobro premisliti o izbiri modalnosti interakcije ter le-to preizkusiti tudi v praksi. Iz spoznanih dejstev lahko napravimo sklep, da bo v prihodnosti področje ambientalne inteligence z uporabo različnih modalnosti interakcije uporabniku omogočalo enostavno, hitro in učinkovito upravljanje z napravami v njegovi okolici. Literatura [1] Li Jiang ; Da-You Liu ; Bo Yang, Smart home research, Proceedings of 2004 International Conference on Machine Learning and Cybernetics, (https://ieeexplore.ieee.org/abstract/document/1382266) [Dostopano: 10.07.2019] [2] Rosslin John Robles, Tai-hoon Kim, Applications, Systems and Methods in Smart Home Technology: A Review, International Journal of Advanced Science and Technology Vol. 15, February, 2010, (https://www.researchgate.net/profile/Rosslin_Robles/publicat ion/311414476_Applications_Systems_and_Methods_in_Sma rt_Home_Technology_A_Review_IJAST_vol15/links/584501 a908aeda6968191832/Applications-Systems-and-Methods-in- 60 [4] Vincent Ricquebourg ; David Menga ; David Durand ; Bruno Marhic ; Laurent Delahoche ; Christophe Loge, The Smart Home Concept : our immediate future, 2006 1ST IEEE International Conference on E-Learning in Industrial Electronics, (https://ieeexplore.ieee.org/abstract/document/4152762) [Dostopano: 10.07.2019] [5] Tiiu Koskela, Kaisa Vaananen-Vainio-Mattila, Evolution towards smart home environments: empirical evaluation of three user interfaces, Personal and Ubiquitous Computing Volume 8 Issue 3-4, July 2004 Pages 234-240 , (https://dl.acm.org/citation.cfm?id=1012660) [Dostopano: 10.07.2019] [6] Oren Zuckerman, Ayelet Gal-Oz, To TUI or not to TUI: Evaluating performance and preference in tangible vs. graphical user interfaces, International Journal of HumanComputer Studies, Volume 71, Issues 7–8, 2013, Pages 803-820, ISSN 1071-5819, (https://doi.org/10.1016/j.ijhcs.2013.04.003.) [Dostopano: 15.05.2019] [7] Luigi De Russis and Fulvio Corno. 2015. HomeRules: A Tangible End-User Programming Interface for Smart Homes. In Proceedings of the 33rd Annual ACM Conference Extended Abstracts on Human Factors in Computing Systems (CHI EA '15). ACM, New York, NY, USA, 2109-2114. (https://doi.org/10.1145/2702613.2732795) [Dostopano: 15.05.2019] [8] MQTT – Wikipedia. Dosegljivo: https://en.wikipedia.org/wiki/MQTT. [Dostopano: 10.07.2019] [9] Ambient intelligence. Dosegljivo: https://searchenterpriseai.techtarget.com/definition/ambien t-intelligence-AmI [Dostopano: 15.05.2019] [10] Alissa Antle. 2012. Knowledge gaps in hands-on tangible interaction research. In Proceedings of the 14th ACM international conference on Multimodal interaction, October 2012, (https://www.researchgate.net/publication/262256818_Knowl edge_gaps_in_hands-on_tangible_interaction_research) [Dostopano: 10.07.2019] [11] Yanko design – THE SMART HOME, SIMPLIFIED (https://www.yankodesign.com/2015/05/28/the-smart-homesimplified/) [Dostopano: 10.07.2019] [12] Kinect-based gesture interface for Win7 (https://smarthome-blog.com/2011/04/08/kinect-based-gesture-interfacefor-win7/) [Dostopano: 10.07.2019] Uporaba Video over IP tehnologij in zaščita Žana Juvan1, Matevž Pogačnik1, Klemen Pečnik1 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Laboratorij za multimedijo, Tržaška cesta 25, 1000 Ljubljana E-pošta: zana.juvan@ltfe.org, matevz.pogacnik@ltfe.org, klemen.pecnik@ltfe.org Usage of Video over IP technologies and security Abstract. Rapid development of technology enables transferring video content through IP infrastructure. It is important to ensure proper protection of AV content, transmitted over IP networks in real time. This proves to be a challenge, since encryption should not introduce additional delays. The most commonly used encryption algorithm for protecting AV content is AES-128. This article presents environments and AV over IP technologies, as well as the possibilities for protecting the transmitted content and lastly the impact of encryption on processing time and performance and memory usage. zvok, podatki, sinhronizacija, nadzor,…) ter omogoča velikosti okvirjev vse do formata 32K. Standard SMPTE ST 2110 je sicer naslednik standarda SMPTE ST 2022, ki v osnovi zajema enkapsulacijo SDI signala v IP, ohranja glave SDI okvirjev in zatemnitvene intervale, kar pomeni, da je s stališča porabe zasedanja pasovne širine manj učinkovit, saj pri videu 4K60p zaseda 16,3% višji bitni pretok, pri 720p50 pa kar 39% višji bitni pretok. Oba standarda sta namenjena sicer prenosu in distribuciji visokokvalitetnih AV signalov brez kompresije ali pa z uporabo brez izgubne kompresije, kar pomeni visoke bitne hitrosti od 1,5 Gbit/s za 1080i50, 12 Gbit/s za 2160p60 HDR (ang. High Dinamic Range) ter še mnogo več za video ločljivosti 8k ali več [1]. 1 Uvod V videoprodukcijskih sistemih se vse pogosteje uveljavljajo sistemi, ki za prenos AV (Avdio Video) vsebin ne uporabljajo več namenskih vmesnikov in standardov kot npr. SDI (serijski digitalni vmesnik - ang. Serial Digital Interface), komponentnega, ali celo HDMI (ang. High-Definition Multimedia Interface), ampak IP (ang. Internet Protocol) arhitekturo in temu primerne IP standarde. Hiter razvoj IP tehnologij, standardov in protokolov omogoča uporabo IP infrastrukture za prenos profesionalnih AV vsebin. Pri tem se lahko uporabljajo popolnoma namenska omrežja brez povezave v javno omrežje, kot tudi obstoječa hibridna IP omrežja, kar zahteva različne prilagoditve in vse pogosteje tudi ustrezno zaščito vsebine. Zaščita AV vsebin v sistemih, kjer je zahtevana visoka zmogljivost in nizka zakasnitev (ang. low latency / zero latency), predstavlja velik izziv, saj enkripcija in dekripcija ne smeta vnašati dodatnih zakasnitev ter morata hkrati čim manj obremenjevati sistemske vire končnih naprav. 2 Tehnologije video preko IP Na področju AV produkcije in distribucije se v zadnjih letih namesto namenskih vmesnikov in standardov hitro uveljavljajo IP vmesniki in standardi oz. tehnologije. Zaradi hitrega razvoja naprav in počasnega potrjevanja in uveljavljanja standardov veliko proizvajalcev opreme razvija svoje tehnologije in pristope. Na področju radiodifuzne produkcije (ang. Broadcast) in pro AV je v fazi potrjevanja standard SMPTE ST 2110 (ang. Society of Motion Picture and Television Engineers), ki v celoti prevzema prenos vseh signalov v AV produkciji (slika, ERK'2019, Portorož, 61-64 61 Slika 1: Bitne hitrosti nekompresiranega videa glede na ločljivost [1] Rešitve, ki temeljijo na standardih SMPTE ST 2022 ali 2110, zahtevajo visokozmogljiva IP omrežja z visokimi bitnimi pretoki. Kot alternativni pristopi se zato razvijajo tudi standardi in tehnologije kot so npr. NDI in NDI HX (Newtek), NMI (Sony), NVX (CRESTRON), SDVoE (SDVoE Alliance), SVSi (AMX) in HDBase-TIP (HDBaseT Alliance), ki jih razvijajo različni proizvajalci opreme ali povezave, ter se relativno hitro uveljavljajo na različnih področjih. NDI (ang. Network Device Interface) omogoča prenos AV vsebin z bitnimi pretoki, ki so prilagojeni 1 Gbit/s infrastrukturi, saj pretok HD (ang. High Definition) vsebin, ob uporabi NDI izgubnega kodiranja, zaseda zgolj 100-130 Mbit/s, medtem ko pri uporabi NDI HX kodiranja (prilagojen H.264 kodek) prenos HD signala zaseda zgolj 8-20 Mbit/s. S stališča zasedanja virov in potrebah po visokozmogljivih omrežjih je uporaba NDI bistveno bolj primerna, predvsem v okoljih, kjer se že uporabljajo 1 Gbit/s dostopi in 10 Gbit/s vmesniki na hrbteničnem ali agregacijskem segmentu omrežja. Pri NDI je v uporabi namenski NDI video kodek, ki vnaša zakasnitev manjšo od enega okvirja, kodek je izguben samo ob prvem kodiranju in zagotavljata enako kvaliteto ne glede na število kodiranj/dekodiranj (ang. multi-generation stability). Pri NDI HX se uporablja prilagojen H.264 video kodek, ki vnaša zakasnitev med 3 in 4 okvirji [5]. Slika 2: NDI zasnova produkcijskega sistema [5] Tudi NMI (ang. Networked Media Interface) je protokol oz. postopek, ki je podoben NDI. Izdelalo ga je podjetje SONY, ki je tudi proizvajalec opreme, vendar so se odločili ustaviti razvoj NMI, saj so ga podpirale zgolj SONY naprave, medtem ko NDI vmesnik danes podpira skoraj 90 proizvajalcev strojne in programske opreme, poleg Newteka tudi Panasonic, Sony, JVC, EVS, OBS, Telestream in mnogi drugi. Za razliko od standardov oz. rešitev SMPTE, NDI in NMI, ki so namenjene uporabi v profesionalni in polprofesionalni video produkciji, so vse bolj razširjene tudi rešitve podjetij ali povezav, ki se ukvarjajo z avtomatizacijo pametnih zgradb, digitalnega oglaševanja ali zgolj prenosa AV vsebin preko IP omrežij (NVX, SDVoE (ang. Software-defined Video over Ethernet), SVSi in HDBaseT-IP). Zaradi specifičnih prilagoditev in predvidene uporabe v posebnih omrežjih ali namenskih rešitvah, so npr. NVX rešitve podjetja CRESTRON omejene predvsem na uporabo v namenskih sistemih za distribucijo multimedijskih vsebin, manj pa v samih produkcijskih omrežjih. Poleg ostalih omejitev so rešitve NVX, SDVoE, SVSi in HDBaseT-IP omejene tudi z vhodnimi signali in večinoma podpirajo le vmesnike kot so HDMI in tudi niso vgrajene v same naprave, ki se uporabljajo v AV produkciji [6][7]. Pri omenjenih rešitvah so v uporabi tudi namenski pretvorniki, ki klasične AV signale (HDMI, analogni avdio, serijski vmesnik za nadzor,… ) pretvarjajo v IP podatkovne tokove na oddajni strani ter obratno na sprejemni strani, kot je razvidno na Slika 3. Signali iz avdio, video virov ali računalnikov se s pomočjo SDVoE oddajnikov – pretvornikov (ang. SDVoE Transmitters) pretvorijo v IP podatkovne tokove. Vse SDVoE oddajniki se povezuje na IP stikalo (ang. IP switch), ki naj bi bilo po priporočilih 10 gigabitno in imelo vgrajeno tudi možnosti usmerjanja oz t.i. L3 (ang. Layer 3) zmogljivosti. Na drugi strani so nameščeni SDVoE sprejemniki (ang. SDVoE Receivers), ki skrbijo za pretvarjanje IP podatkovnih tokov v avdio, video in kontrolne signale. Nadzor in upravljanje oddajnikov, sprejemnikov, stikala in ostalih SDVoE podprtih naprav se lahko izvaja iz ene toče – SDVoE krmilnika (ang. SDVoE Controller). Pri tovrstnih arhitekturah jedro sistema postane IP stikalo zato je to tudi najpomembnejši del omrežja. 62 Slika 3: Primerjava SDI (zgoraj) in SDVoE (spodaj) arhitekture [9] 3 Video preko IP okolja Uporaba standardov SMPTE je predvidena predvsem v profesionalnih radiodifuznih sistemih (RTV okolja), kjer se v skladu z visokimi zahtevami po visoki kvaliteti in višji zmogljivosti omrežja predvideva gradnja zaprtih, ločenih omrežij in s tem tudi zagotavljanje varnosti predvsem na omrežnem nivoju. Tehnologije, kot so NDI, NMI, in NVX, pa razvijajo proizvajalci AV opreme z namenom uporabe obstoječih IP omrežij za potrebe AV produkcije in distribucije. Uporaba obstoječih omrežij omogoča dinamično gradnjo AV omrežja brez dodatnih višjih investicij v infrastrukturo. Združevanje in uporaba obstoječih omrežij pa po drugi strani predstavlja čedalje večja tveganja, zato se pojavljajo tudi potrebe po zaščiti AV vsebin in omejevanju dostopa do medijskih tokov tako v namenskih, kot tudi v obstoječih hibridnih omrežjih. Zaradi uporabe multicast načina prenosa vsebin so vsi prenosni tokovi dostopni vsem napravam, ki so priključene v isto broadcast domeno omrežja. Zato je zaradi visokih bitnih pretokov priporočljiva ustrezna segmentacija omrežja ter učinkovit nadzor nad usmerjanjem in dostopnostjo AV vsebin na omrežnih stikalih pri vseh sistemih, ki so namenjeni AV produkciji, kjer je zahteva po nizkih zakasnitvah in visoki kvalitetah izrazita in ključnega pomena. Na drugi strani pa sistemi, ki so primarno namenjeni distribuciji AV vsebin, stremijo k širši uporabnosti, razširljivosti, zakasnitve pa niso tako moteče kot pri produkcijskih sistemih. 802.1Qat (ang. MSRP – Multiple stream reservation protocol). 4 Možnosti zaščite pri posameznih tehnologijah Zaščito medijskih podatkovnih pretokov pri prenosu AV vsebin preko IP je mogoče zagotavljati na nivoju IP omrežij s pomočjo logičnega ločevanja omrežja (VLANi), omejevanja dostopa ali enkripcije podatkovnih tokov. Najvišjo stopnjo varnosti je mogoče zagotoviti s pomočjo kombinacije vseh treh, vendar vsaka izmed možnosti zahteva ustrezne posege in predstavlja omejitve, ki jih je potrebno upoštevati pri načrtovanju oziroma gradnji sistema. 4.1 4.2 Zagotavljanje varnosti v okviru AV standardov Standardi, ki so v uporabi za AV produkcijo v živo, zaradi zahtev po čim manjših zakasnitvah in prenosu v realnem času, nimajo vgrajenih mehanizmov za zagotavljanje varnosti (npr SMPTE standardi in NDI). NVX, SVSI in SDVoE pa za zaščito AV vsebin uporabljajo avtentikacijo in AES-128 (ang. Advanced Encryption Standard) enkripcijo. 5 Vpliv enkripcije na obremenitve / hitrosti Sistemsko zagotavljanje varnosti IP protokol v osnovi ne vsebuje splošnega mehanizma za zagotavljanje avetentičnosti in zasebnosti podatkov, ki se prenašajo preko IP omrežij. Zaščita vsebin se lahko v IP omrežjih poleg fizičnega omejevanja in ločevanja na virtualna logična podomrežja (VLAN-ov) zagotavlja s pomočjo uporabe protokolov kot npr. IPSec (ang. Internet Protocol Security), MACsec (ang. Media Access Control Security), VPN/SSL (ang. Virtual Private Network / Secure Sockets Layer) in SRTP (ang. Secure Real-time Transport Protocol) [2][1]. Profesionalni Video over IP sistemi za optimalno izrabo omrežja večinoma uporabljajo multicast način distribucije vsebin z uporabo IGMPv2 (ang. Internet Group Management Protocol version 2) ali celo IGMPv3 protokola, zato je za tovrstne sisteme potreben prilagojen način načrtovanja IP omrežja. Pri omrežno-sistemskemu omejevanju in zagotavljanju varnosti z uporabo ločenih VLAN-ov ali IPSec tunelov med posameznimi izvori/ponori je potreben poseg sistemskih inženirjev in v večini primerov statično nastavljanje omrežnih dostopov na fizičnem, podatkovnem ali omrežnem sloju ISO-OSI modela. Z razvojem programsko definiranega dostopa – SDA (ang. Software Defined Access) in dinamičnega upravljanja omrežja - DNA (ang. Digital Network Architecture) je sicer mogoče bistveno lažje upravljati in omejevati dostope do virov in storitev, saj je s pomočjo virtualnih omrežij, ki so definirani v programskem vmesniku omrežnega nadzornega sistema, mogoče neposredno upravljati dostop in usmerjanje podatkovnih tokov ne glede na lokacijo izvora ali ponora na področju celotnega omrežja. Hkrati je mogoče pri SDA rešitvah dinamično upravljati dostope do storitev ali virov na nivoju posameznega uporabnika ali celo naprave posameznega uporabnika ne glede na to v kateri točki se povezuje v omrežje, torej neodvisno od lokacije. Kljub veliki prilagodljivosti in razširljivosti omrežij je ključnega pomena učinkovito usmerjanje in nadzorovanje AV podatkovnih tokov, saj lahko zaradi velikosti podatkovnih tokov pride do zasičenja omrežja in s tem povečanje tveganja za nedelovanje AV produkcijskega sistema. Pri prenosu AV signalov preko IP omrežij je predvsem pri produkcijskih sistemih zakasnitev ključnega pomena, zato je pomembno tudi, da omrežne naprave poleg naštetih nastavitev omogočajo tudi IEEE 802.1AVB (ang. Avdio Video Bridging) standard [8] ter protokol za rezervacijo pasovne širine 63 Pri prenosu video tokov preko IP omrežij v realnem času je ključnega pomena, da šifriranje in dešifriranje video okvirjev ne vnaša prevelike dodatne zakasnitve oz da leta ne presega trajanja enega okvirja, kar pri 25 sličicah na sekundo predstavlja 40 ms. Uporaba protokola za upravljanje oz. izmenjavo ključev, kot je TLS (ang. Transport Layer Security), zagotavlja varnost in integriteto podatkov, prenesenih preko IP omrežij, za njihovo dostavo pa se uporablja RTP (ang. Real-time Transport Protocol). Protokol za varno upravljanje ključev je predpogoj za pravilno delovanje enkripcijskih algoritmov. Pri izbiri šifrirnega algoritma za zagotavljanje varnosti sta pomembni dve značilnosti: čas šifriranja ne sme biti previsok, velikost okvirjev pa mora biti še vedno dovolj majhna, da ne ovira prenosa v realnem času preko IP omrežja. Obstaja več različnih načinov za šifriranje video podatkovnih tokov, ti pa so odvisni od uporabljenega šifrirnega postopka (DES (ang. Data Encryption Standard), 3DES (ang. Tripple Data Encryption Standard), AES, Blowfish,… ), načina delovanja (ECB (ang. Electronic Codebook), CBC (ang. Cipher Block Chaining), CFB (ang. Cipher Feedback), OFB (ang. Output Feedback), CTR (ang. Counter), …) in zapolnjevalnega načina (ang. padding mode) (ISO10126, PKCS5 (ang. Public Key Cryptography Standards), brez zapolnjevanja). Glede na meritve in testiranja se je izkazalo, da je najboljša kombinacija za šifriranje videa uporaba šifrirnega algoritma AES v načinu CTR in PKCS5Padding (Slika 5). Izbira temelji na več vidikih, kot so čas obdelave, zmogljivost, varnost, dinamičnost sistema in vpliv širjenja napak [3]. Poleg tega je AES algoritem odporen na vse znane načine napadov, hkrati pa dosega najvišje hitrost enkripcije in dekripcije glede na ostale algoritme, kot je razvidno na Slika 4 [10]. Dodatno je mogoče varnost povečati z dinamičnim časovnim spreminjanjem ključev za šifriranje. Pri šifriranju se najpogosteje uporablja 128 bitne ključe, sam AES postopek sicer omogoča uporabo do 256-bitnih ključev. Ob primerni uporabi šifrirnih ključev in naključnih števil je sistem dinamičen, kar pomeni, da je težko napovedati oziroma razbrati šifrirano vsebino. Slika 4: Čas enkripcije in dekripcije za različne algoritme pri video pretočnih vsebinah [10] zakasnitve, ki bi nastale pri dodatni obdelavi vsebin, hkrati se pri teh sistemih zaradi optimizacije učinkovitosti in izrabe virov, načrtuje omrežja, ki so logično ali celo fizično izolirana od ostalih IKT sistemov z namenom izločanja kakršnihkoli dodatnih dejavnikov tveganja, ki bi lahko potencialno povzročili zakasnitve ali popačitve. Pri sistemih primarno namenjenih distribuciji AV vsebin in upravljanju multimedijskih sistemov pametnih zgradb in digitalnem oglaševanju se za zaščito AV podatkovnih tokov najpogosteje uporablja šifrirni postopek AES-128. Šifrirni postopek AES-128 se uporablja pri sistemih za zaščito digitalnih pravic (DRM – Digital Rights Management), kjer se uporablja standard HDCP (ang. High-bandwidth Digital Content Protection), kot tudi pri sodobnejših protokolih, ki se razvijajo za potrebe prenosa visokokakovostnih AV vsebin preko IP omrežij (kot npr. NVX in SDVoE). Literatura B. Yamamoto, „The Commercialization and Economic Sphere of Video Over IP Technology”, v Internet Infrastructure Review (IIR) Vol.37, December 19, 2017 [2] L. Sevcik, D. Uhrin, J. Frnda, M. Uhrina, Z. Chmelikova in M. Voznak, „The Impact of Encryption on Video Transmission in IP Network”, v 22nd Telecommunications forum TELFOR 2014, 2014, str. 123-126. [3] A. Mustafa in Hendrawan, „Calculation of Encryption Algorithm Combination for Video Encryption using Two Layers of AHP”, v 2016 10th International Conference on Telecommunication Systems Services and Applications (TSSA), 2016, str. 1-7. [4] N. Khalifa, H. Elmahdy, „The Impact of Frame Rate on Securing Real Time Transmission of Video over IP Networks”, v 2009 International Conference on Networking and Media Convergence, 2009, str. 57-63. [5] NewTek NDI, https://www.newtek.com/ndi/ [6] HDBseT-IP vs. SDVoE: A Smackdown of AV over IP Standards, https://www.commercialintegrator.com/av/hdbasetip-vs-sdvoe-av-over-ip/ [7] SDVoE Alliance, https://sdvoe.org/technology/ [8] C. Hill, S. Orr, „Innovations in Ethernet Encryption (802.1AE - MACsec) for Securing High Speed (1100GE) WAN Deployments” White Paper, https://www.cisco.com/c/dam/en/us/td/docs/solutions /Enterprise/Security/MACsec/WP-High-SpeedWAN-Encrypt-MACsec.pdf [9] K. Johnson, „AV over IP and SDVoE System Designs”, https://www.mapyourshow.com/mys_shared/infocom m18/handouts/1030_Johnson_IS078_ppt.pdf [10] N. Khalifa, „Securing Real-Time Video over Internet Protocol Transmission”, https://scholar.cu.edu.eg/nourmahmoud/files/ppprese ntation.pdf?fbclid=IwAR1gXXTo66hqZmSakyNgkI7HQhQCXAA0__sR0Bvxm7QU0_RCn6ck2q2OA [1] Slika 5: Učinkovitost algoritmov [3] Na kvaliteto, hitrost in učinkovitost zaščite pri prenosu videa preko IP omrežij vplivajo tudi število sličic na sekundo (ang. frame rate) in video kodirni postopki. Rezultati so pokazali, da je najugodnejša hitrost 22 sličic/sekundo, saj dosega manjše izgube okvirjev in paketov ter je hkrati najbližje mednarodnemu standardu 25 sličic/sekundo za prenos videa prek IP omrežij [4]. Prav tako so rezultati poskusov [2] pokazali, da v primerjavi s kodekom MPEG-2, kodek H.264 dosega boljše rezultate za šifriranje, a hkrati slabše za izgubo paketov. 6 Zaključek S prehodom na IP infrastrukturo se tudi pri sistemih za ustvarjanje in distribucijo AV vsebin vse pogosteje pojavljajo potrebe po zaščiti vsebin. Predvsem pri produkcijskih sistemih, kjer je zaželena minimalna zakasnitev, visoka kvaliteta in zanesljivost, se varnost zagotavlja predvsem sistemsko s fizičnim in sistemskim omejevanjem, šifrirnih postopkov pa se ne uporablja, čeprav je strojna oprema dovolj zmogljiva, šifrirni postopki pa dovolj hitri, da sama zaščita vsebin ne bi predstavljala dodatnih omejitev. Kljub izboljšanim postopkom in bolj učinkoviti strojni opremi se pri sistemih za video produkcijo izloča vse dodatne 64 Načrtovanje interaktivnega pametnega smetnjaka Gregor Burger, Marko Uhan, Jože Guna Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana, Slovenija E-pošta: gregor.burger@fe.uni-lj.si Design of an interactive smart trashcan Abstract. We present the design process of building an interactive smart trashcan. First, we provide the overview of the smart trashcan field for several domains. We made an overview of professional solutions for city operators as well as garbage collecting facilities. Then we examined home based solutions for personal use, which provide convenience for the people. Technological novelty and excellence has limited reach if people are not using the product or system. Therefore, we studied the user interactions and principles, like gamification, for increased adoption of using the smart trashcan systems and averseness of the environmental and waste recycling topics. Although smart trashcan systems provide value for the people, they can pose a risk for their privacy or present inconvenience for them. At the end, we present our own prototype solution of smart trashcan. In our design, we tried to incorporate the best practices identified in field overview from the technological side and the user interactions with the trashcan. The prototype solution should be easy to use, has god interaction with people and motivates people to increase care for the environment. 1 Uvod Dandanes živimo v hitro spreminjajočem se svetu, ko spremembe postajajo edina stalnica našega vsakdana. Nezadržno se spreminja tudi naše urbano okolje, saj vedno večji delež prebivalstva živi v mestih, trendi razvoja mest pa nakazujejo višanje koncentracije prebivalstva v mestih. Spreminjajo se tudi sama mesta, pogosto govorimo o tajnostnem razvoju mest in pametnih mestih [1][2]. Ob tem se pojavljajo vedno večji okoljevarstveni izzivi in skrb za okolje. Še posebej problematično postaja vprašanje ravnanja z odpadki in njihovim deponiranjem [3]. Pogosto se za znižanje stroškov, boljšega upravljanja z viri in časom uporablja naraščajoča količina tehnologije, kjer prevladujejo komunikacijsko povezane pametne naprave in rešitve interneta stvari (angl. Internet of Things, IoT) [4]. Zapostaviti pa ne smemo še vidika motiviranja ljudi k vestnemu ravnanju z odpadki in ohranjanjem čistega okolja, saj še tako dobro zasnovan sistem ne deluje, če ga nihče ne uporablja. Prihajajočim spremembam in trendom se ne moremo izogniti, se pa nanje lahko pripravimo. Ena izmed aktivnosti iskanja rešitev za upravljanje z odpadki v gospodinjstvih je ARRS projekt Nevidno življenje odpadkov: Razvoj etnografsko utemeljene rešitve za ERK'2019, Portorož, 65-68 65 upravljanje z odpadki v gospodinjstvih [5]. Cilj projekta je razvoj tehnološke rešitve, s katero bo ljudem omogočeno spremljanje in vizualizacija podatkov o nastanku odpadkov v gospodinjstvih in vzpodbuda za zmanjšanje njihove količine. Pri razvoju rešitve bodo uporabljeni pristopi k ljudem usmerjenega načrtovanja. Projektna raziskava bo potekala v šestih mestih: Ljubljana (Slovenija), Gradec (Avstrija), Trst (Italija), Zagreb (Hrvaška), Oslo (Norveška) in Dubaj (ZAE). Projekt Nevidno življenje odpadkov je multidisciplinaren projekt v katerem sodelujejo humanisti, predvsem antropologi, in naravoslovci, natančneje elektrotehniki. V sledečih poglavjih predstavljamo pregled obstoječih rešitev pametnih smetnjakov z vidika tehnologije, kot tudi etnološko-socioloških vidikov, sledi predstavitev razvoja prototipne rešitve pametnega smetnjaka in diskusija rezultatov ter zaključek. 2 Pregled rešitev 2.1 Profesionalni sistemi Profesionalni sistem so sistemi namenjeni upravljalcem mest in njihovim izvajalcem odvoza odpadkov in predelave. Običajno sistemi obsegajo namenske smetnjake opremljene s senzorji za sporočanje napolnjenosti, podporne mobilne aplikacije za obveščanje, nadzorne plošče za analitiko in podrobne infrastrukture za sam odvoz smeti. 2.1.1 Sensoneo Sensoneo [6] je evropski proizvajalec rešitve pametnega upravljanja s smetmi. Sistem omogoča monitoring, upravljanje in konfiguracijo upravljanja z odpadki. Z napredno analitiko podatkov sistem načrtuje optimalne poti odvoza odpadkov, pravočasno praznjenje košev in smetnjakov ter optimalno lokacijo smetnjakov v mestu za večjo učinkovitost odvoza smeti. Naštete funkcionalnosti so del napredne nadzorne plošče, namenjene izvajalcem storitev. Proizvajalec uporablja dva samostojno razvita senzorja, ki sta prilagojena različnim prostorninam smetnjakov. Merjenje polnosti smetnjakov se izvaja z ultrazvočnimi snopi, v najbolj komunikacijski podprti izvedbi senzorja so upravljalcem storitev na voljo brezžične komunikacije tehnologije Sigfox, LoRaWAN, GSM in NB-IoT. Sistem vključuje tudi mobilno aplikacijo, ki uporabnike obvešča o najbližjih praznih smetnjakih, predlaga izbiro primernega smetnjaka glede na vrsto odpadkov, uporabniki pa v sistem sporočajo prekomerno polne smetnjake ali okvare in poškodbe smetnjakov. 2.2 Sistemi za osebno uporabo Sistemi za osebno rabo so namenjeni predvsem uporabi v zaprtih bivalnih prostorih, izpraznitev košev pa je še vedno prepuščena samemu uporabniku. 2.2.1 Xiaomi Townew T1 Podjetje Xiaomi je na svoji platformi za zbiranje sredstev Youpin predstavilo pameten smetnjak Townew T1 [7]. Smetnjak je visok 40 cm in ima prostornino 15.5 l. Na sprednji strani smetnjaka se nahajata gumb in detektor za zaznavanje bližine uporabnika. Ob zaznavanju uporabnika, na razdalji do 35 cm, se koš samodejno odpre in uporabnik nemoteno odloži odpadke v smetnjak. Smetnjak se prav tako odpre s kratkim pritiskom na gumb, ob 3 sekundnem pritisku pa smetnjak samodejno zatesni polno vrečo z odpadki in namesti novo vrečo za odpadke. Posebnost smetnjaka je še dobro tesnjenje pokrova, kar preprečuje širjenje neprijetnih vonjev po prostoru. Slabost smetnjaka je nakup posebnih vrečk, ki jih smetnjak potrebuje za svoje delovanje, prav tako pa je cena smetnjaka razmeroma visoka, tudi do $100. 2.2.2 Garbi Can Garbi Can [8] je smetnjak z vgrajeno enoto za računalniški vid. Smetnjak je mogoče kupiti v različnih velikostih in izvedbah števila košev ali pa kot samostojno enoto, ki se namesti na že obstoječi smetnjak. Cena smetnjaka je $199. Smetnjak je preko omrežja b/g/n Wi-Fi povezan s spletom. Uporabnik pred enoto zadrži odpadek za približno 3 sekunde, kamera vgrajena v napravi s pomočjo algoritmov računalniškega vida (angl. Computer vision) prepozna izdelek in ga uvrsti na nakupovalni seznam v mobilni aplikaciji. Sistem ne deluje na prepoznavi bar kode izdelka. Prepoznava izdelkov ter tudi sadja in zelenjave, po trditvah proizvajalca, deluje zanesljivo v 90% primerov, v primeru neprepoznanega izdelka pa sistem prosi uporabnika za dodatna pojasnila. Nakupovalni seznam v mobilni aplikaciji je prilagodljiv, uporabnik doda in odvzame izdelke s seznama nato pa se sam odpravi v trgovino ali pa izdelke naroči preko spletne trgovine z dostavo na dom. principi ter sistemi, ki uporabnika pritegnejo k bolj vestnemu ravnanju z odpadki, recikliranju in skrbi za okolje. Pogosto uporabljen princip je poigritev (angl. Gamification), principi, na podlagi katerih delujejo igre. 2.4.1 Trash Rage Trash Rage [10] je igra navidezne resničnosti (angl. Virtual reality) namenjena izobraževanju in osveščanju o vprašanjih čistega okolja. Igralec je postavljen v leto 2049, ko smo bili ljudje primorani zapustiti z odpadki zapolnjen planet Zemljo, katero varujejo sovražni roboti. Umetna inteligenca (angl. Artificial Inteligence, AI) pa se je odločila, da si ljudje ne zaslužijo bivati na Zemlji in je pričela proces eliminacije ljudi. Ljudje so se bili primorani umakniti na planet Mars in sedaj skušajo popraviti nastalo škodo. Igra izobražuje igralca o postopkih recikliranja in prikazuje kako plastični odpadki uničujejo naše oceane, gore in gozdove. Igralec, ob spremstvu dve robotov, skuša pravilno reciklirati največjo možno količino odpadkov. 2.4.2 Trash robot Trash robot [11] je bila leta 2018 kampanja na platformi za množično financiranje Kickstarter, zasnovana z namenom združitve tehnologije in principov poigritve za očiščenje reke Chicago. Na reki so namestili posebnega robota z video kamero, katerega ljudje upravljajo preko spletnega brskalnika in skušajo odstraniti največjo možno količino smeti iz vode. Za odstranjene smeti so nagrajeni s točkami kot v igrah. 2.4.3 Tetrabin Tetrabin [12] je raziskovalni projekt z namenom spodbujanja pozitivnih vedenjskih sprememb v mestih. Projekt uporablja principe poigritve za pretvorbo vsakdanjih opravil, kot je odlaganje smeti v smetnjak, v zanimiv dogodek. Smetnjake so zato opremili z led zasloni, vizualni izgled pa spominja na grafično podobo starih 8 bitnih igric. Vsaka na novo odvržena smet povzroči spremembo na zaslonu; s smetmi se lahko igra igrico tetris, zaslon zasveti v živih barvah, hrani živali ali pa celo pridobi kodo za simbolično nagrado na spletni strani sistema Tetrabin. 2.5 Slabosti sistemov pametnih smeti 2.3 Blokovne verige in smeti Tudi tehnologije blokovnih verig se niso izognile področju pametnih smeti. Podjetje Emrals je razvilo pametni smetnjak imenovan eCan [9] na osnovi tehnologije blokovnih verig in žetonov Emrals. Uporabnik prejme omejeno število žetonov za odložene smeti, ki jih smetnjak eCan razvrsti po njihovem tipu za nadaljnje sortiranje in bolj učinkovito odlaganje odpadkov. Prejete žetone uporabnik pretvori v denar ali pa jih nameni kot donacijo za čisto okolje. Smetnjak sprejema tudi samostojne donacije za čisto okolje. 2.4 Poigritev Niso pa pomembne samo tehnološke rešitve, velik pomen imajo tudi sociološko-antropološki dejavniki in 66 Vsi sistemi, proizvodi in storitve pa nimajo vedno samo pozitivnega predznaka. Občasno, velikokrat tudi nenamerno, izpadejo negativno, moteče oz. preveč posegajo v zasebnost ljudi. 2.5.1 Pametne žarnice Pametne žarnice[13] so koristen in priročen izdelek, ki ljudem velikokrat izboljšajo kakovost bivanja. A pametne žarnice so povezane s svetovnim spletom, hranijo podatke za dostope do domačih WiFi omrežij, podatke shranjujejo v spletne oblačne storitve in podobno. Ob koncu njihove življenjske dobe jih ljudje preprosto zavržejo, a v veliko primerov podatki o dostopih do omrežij WiFi, oblačnih storitev za shrambo podatkov in podobno ostanejo shranjeni v samih napravah. Nepridipravi sicer potrebujejo fizičen dostop do zavržene pametne žarnice, a pridobitev podatkov je pogosto razmeroma preprosto opravilo, saj podatki niso zaščiteni z varnostnim kodiranjem in kodirnim ključem. S tem pa je ogrožena informacijska varnost uporabnika. 2.5.2 Kitajska aplikacija za smeti Kitajsko mesto Shanghai je pričelo obvezen sistem sortiranja smeti [14]. Gospodinjstva v mestu morajo smeti razvrščati v štiri kategorije, smeti pa odlagati na določenih zbirnih mestih ob predpisanem urniku. Nespoštovanje pravil posledično omogoča znižanje osebnega kreditnega rezultata. Vrečke s smetmi oz. odpadki imajo unikatno QR kodo preko katere je mogoče prepoznati slehernega uporabnika oz. organizacijo. A sistem ni idealen in ima svoje pomanjkljivosti. Nejasno so izbrana poimenovanja skupin odpadkov za sortiranje, zato imajo prebivalci velike probleme s pravilnim razvrščanjem odpadkov. Rešitev ponujajo kitajske aplikacije za komunikacijo, tipa WeChat, ki vsebujejo nove funkcionalnosti za pomoč pri razvrščanju odpadkov. Uporabnik v aplikacijo vnese vrsto odpadka, ta pa mu pove kategorijo v katero odpadek sodi. Razvijajo pa tudi sistem, ko je za prepoznavo odpadkov dovolj že njihova slika. Preko aplikacij pa je mogoče naročiti tudi posebno storitev odvoza smeti. 3 Prototipna rešitev Na podlagi pregleda obstoječih rešitev, pobud in idej smo zasnovali svojo rešitev pametnega smetnjaka za notranjo uporabo. Pri zasnovi prototipne rešitve, še posebej dela v interakciji med uporabnikom in smetnjakom, smo sledili principom k uporabniku usmerjenega načrtovanja. Naša zahteva je bila, dobra in prijetna uporabniška izkušnja pri rokovanju uporabnika s smetnjakom. 67 3.1 Tehnološka zasnova prototipne rešitve Osnova pametnega smetnjaka je procesnokomunikacijska enota Raspberry Pi oz. Arduino na katero se povezujejo senzorji, elementi avtomatike, modul za komunikacijo ter avdio in video vizualni elementi. Uporabljeni senzorji so sledeči: ultrazvočni senzor in infrardeči senzor za zaznavanje bližine uporabnika, Adafruit PN532 RFID/NFC modul namenjen identifikaciji uporabnika, na komunikacijo enoto je povezan z vodil SPI/I2C, čitalnik bar kod z USB povezavo za branje bar kod izdelkov in senzor teže ter končno stikalo za merjenje prostornine in teže odloženih odpadkov, samodejno odpiranje smetnjaka je realizirano s koračnim motorjem, avdio-vizualni elementi so LED matrični zaslon WS2812B, krmiljen preko GPIO vhodno-izhodnega signala, zvočnik, LED RGB ambientni trak WS2811 krmiljen preko SPI serijskega vmesnika in tipka za upravljanje in potrjevanje interakcij s smetnjakom, rešitev vsebuje še ustrezno napajanje. Zasnova celotnega sistema je prikazana na sliki 1. 3.2 Interakcija uporabnika s pametnim smetnjakom Uporabnik se približa pametnemu smetnjaku, ker želi odložiti nek odpadek. Senzor bližine zazna prisotnost uporabnika, aktivira smetnjak v primeru mirovanja sistema, in pozdravi uporabnika z začetno animacijo in zvokom. Nato odpre pokrov smetnjaka in zaznava spremembo v teži in volumnu odloženih smeti. Po zaznavi odloženih smeti smetnjak zapre pokrov in uporabniku pokaže eno izmed pripravljenih animacij. Animacija je preprosta igra, ki jo uporabnik upravlja s pomočjo gumba na smetnjaku, zaslon se obarva zaporedju različnih barv ali pa nakaže svoje dobro razpoloženje in pohvali uporabnika za vestno odlaganje smeti. 4 Diskusija Izpostavljene rešitve orisujejo reprezentativne primere sistemov, storitev in načinov interakcij področja pametnih smeti. Sistemi za upravljalce z odpadki in mestne upravljalce prikazujejo zrelost obstoječih rešitev na trgu. Uporabljene tehnološke rešitve so v osnovi podobne. Na smetnjakih je nameščen en ali večje število senzorjev za beleženje polnosti smetnjaka, opcijsko za razpoznavanje uporabnikov tudi RFID značke, in komunikacijski moduli za prenos podatkov. V zaledju pa poslovna analitika in orodja za optimizacijo poti in časa odvoza odpadkov prinašajo prihranke in izboljšujejo kakovost življena v mestih. Upravljavske nadzorne plošče preprosto identificirajo najbolj obremenjene smetnjake in prilagodijo urnik odvoza odpadkov. Izdelki za domačo uporabo uporabnikom oz. ljudem omogočajo neko ugodnost in lažji nadzor nad odpadki v gospodinjstvu. Najbolj pogosti funkcionalnosti sta obveščanje na polnost smetnjaka in prepoznava izdelkov odvrženih v smetnjak, ki jih sistem doda na uporabnikov nakupovalni spisek. Med obe skupini, za dom in upravljalce s smetmi, se uvrščajo še razni sistemi za sortiranje odpadkov, postavljeni na javnih lokacijah, ki pa jih lahko označimo kot nekakšen presek med predhodno opisanima sistemoma. Ni pa pomembna samo tehnična plat pametnih smetnjakov. Zelo pomemben je odnos ljudi in motivacija za vestno odlaganje odpadkov v koše in skrb za čisto okolje. Pogosto se uporabijo principi poigritve, torej principi na podlagi katerih delujejo igre. Z njihovo uporabo se skuša odlaganje odpadkov narediti zanimivo in pozitivno izkušnjo za uporabnika. Na podlagi principov poigritve in k uporabniku usmerjenega načrtovanja smo zasnovali svojo prototipno rešitev pametnega smetnjaka po vzoru obstoječih rešitev na trgu. Smetnjak bo zmogel zaznati prisotnost uporabnika in odlaganje odpadkov, za kar bo uporabnik nagrajen z interaktivnim odzivom smetnjaka. Z RFID značkami je mogoče uporabnike ločevati med seboj in njim osebno prilagoditi uporabniško izkušnjo ter odzive smetnjaka. Smetnjak bo tako prikazal uporabnikovemu profilu prilagojeno igro, interakcijo, uporabnik pa bo s svojo potrditvijo oz. odločitvijo določil nadaljnji potek igre. Vizualna elementa v obliki LED zaslona in LED traku bosta služila za izpis iz izris sporočil in grafik. Po potrebi pa bodo dodani še zvočni signali. 5 Zaključek Predstavili smo stanje področja pametnih smeti oz. odpadkov in izpostavili različne spektre področja. Naj si bodo to profesionalni sistemi za upravljalce smeti na ravni mesta, dostopne rešitve za domačo uporabo, prototipne rešitve za tehnološke zanesenjake ter interakcije s smetnjaki, ki uporabnike spodbujajo in motivirajo k skrbnemu in preudarnemu ravnanju z 68 odpadki. Predstavili smo svojo prototipno rešitev, ki temelji na primerih dobrih praks in rešitev identificiranih v pregledu področja. Še posebej pa smo pozornost namenili interakciji med človekom in smetnjakom, ki predstavlja zanimivo in pozitivno izkušnjo. Projekt Nevidno življenje odpadkov: Razvoj etnografsko utemeljene rešitve za upravljanje z odpadki v gospodinjstvih (L6-9364) je sofinancirala Javna agencija za raziskovalno dejavnost Republike Slovenije iz državnega proračuna. Literatura [1] A. FOUNOUN and A. HAYAR, "Evaluation of the concept of the smart city through local regulation and the importance of local initiative," 2018 IEEE International Smart Cities Conference (ISC2), Kansas City, MO, USA, 2018, pp. 1-6. doi: 10.1109/ISC2.2018.8656933 [2] Vito Albino, Umberto Berardi & Rosa Maria Dangelico (2015) Smart Cities: Definitions, Dimensions, Performance, and Initiatives, Journal of Urban Technology, 22:1, 3-21, DOI: 10.1080/10630732.2014.942092 [3] B. Chowdhury and M. U. Chowdhury, “RFID-based Real-time Smart Waste Management System,” in Australasian Telecommunication Networks and Applications Conference, 2007, December, pp. 175–180. [4] S. P. Muquit, D. Yadav, L. Bhaskar and W. F. Ahmed, "IoT based Smart Trash Bin for Waste Management System with Data Analytics," 2018 International Conference on Communication, Computing and Internet of Things (IC3IoT), Chennai, India, 2018, pp. 137-142. doi: 10.1109/IC3IoT.2018.8668113 [5] Projekt Nevidno življenje odpadkov https://zivljenjeodpadkov.si/vsebina/ (Prvi dostop: 10.5.2019) [6] Sensoneo https://sensoneo.com/ (Prvi dostop: 4.4.2019) [7] Xiaomi Townew T1 https://www.wovow.org/xiaomitownew-t1-review-smart-trash-can/ (Prvi dostop: 4.4.2019) [8] Garbi Can https://garbican.com/ (Prvi dostop: 4.4.2019) [9] Emrals eCan https://www.emrals.com/ecan/ (Prvi dostop: 4.4.2019) [10] Igra Trash Rage https://trashrage.com/en/home-page/ (Prvi dostop: 3.4.2019) [11] https://newatlas.com/chicago-river-trashrobot/53864/?utm_source=Gizmag+Subscribers&utm_ca mpaign=84de3604e7-UA-22353604&utm_medium=email&utm_term=0_65b67362bd84de3604e7-92835585 (Prvi dostop: 3.4.2019) [12] Terabin http://tetrabin.com/ (Prvi dostop: 3.4.2019) [13] Terabin https://techcrunch.com/2019/07/05/chinagarbage-recycle/ (Prvi dostop: 10.7.2019) [14]IoT naprave https://techcrunch.com/2019/01/30/cheapinternet-of-things-gadgets-betray-you-even-after-youtoss-them-in-the-trash/ (Prvi dostop: 3.4.2019) [15]User-Centered Design https://www.usability.gov/what-and-why/user-centereddesign.html Avtomatika in robotika Automatic Control and Robotics Optimal velocity profile planning considering velocity, acceleration and jerk constraints Martina Loknar, Gregor Klančar, Sašo Blažič Faculty of Electrical Engineering, Tržaška cesta 25, SI-1000 Ljubljana, Slovenia E-mail: martina.loknar@fe.uni-lj.si Abstract The aim of this study is to determine time-minimal velocity profile for a wheeled mobile robot whose movement complies with velocity, acceleration and jerk constraints and is restricted to an arbitrary predefined path. The proposed two-step algorithm first enables the determination of the velocity profile that respects the speed and acceleration constraints and in the second step additionally applies the limitation of the jerk. 1 Introduction Optimal control theory describes the application of forces to a system for the purpose of maximizing some measure of performance or minimizing a cost function [1]. It is an extension of the calculus of variations and this mathematical optimization method is largely due to the work of [2]. Using Pontryagin’s maximum principle, in [3] the authors demonstrated that all time-optimal motions of the mobile platform with two independently driven wheels occur for controls that are at each instant on the upper or lower limit. Mechanical systems, including biological systems, have maximum allowances related to various dynamic variables, above which the components of the system may begin to fail. Excess of jerk thresholds is associated with mechanical wear, tool life repercussion and adverse effect on the actuator performance, degradation of machine junctions, and in biological systems tear of ligaments and muscles or breakage of bones [4], [5]. Minimizing jerk is therefore beneficial in reducing stress and wear of the mechanical components, extending machine or tool life, reducing position tracking errors, minimizing the excitation of vibrations in general, enabling better quality finishes in machining tasks and ensuring that the motor is able to provide the requested current fast enough. Mechanical and robotics engineers have recognized the benefits of jerk minimization and therefore prefer to design jerk-limited profiles [6]. Authors in [7] investigated time optimal two-stage path planing under kinematic and dynamic constraints and obtained the shortest path and a time optimal velocity profile. A path planning technique to minimise the time of reaching the end point in desired direction and with desired velocity is presented in [8]. In [9] the authors suggested a methodology to generate minimum time optimal ERK'2019, Portorož, 70-73 70 velocity profiles for a vehicle with prescribed acceleration limits along a specified path. Similarly, a method for minimum-time velocity planning with velocity, acceleration and jerk constraints was proposed, based on a sequence of linear programming feasibility checks, depending on motion constraints and generic boundary conditions [10]. This paper outlines a new approach of determining time-minimal optimal velocity profile for a wheeled mobile robot on a predefined path. We believe that we have found an innovative solution that is easy to implement and computationally undemanding with coherent course of calculation that relies heavily on analytical expressions of given physical quantities. The first step of the algorithm ensures that the resulting velocity profile complies with speed and acceleration constraints. The additional jerk constraints are considered in the second step of the algorithm, where the acceleration discontinuities are eliminated by smoothing the velocity profile from the first step. 2 Problem formulation Let the motion of a particle along a three times continuously differentiable plane curve C be described as a function of time t ∈ [0, tf ] by the position vector r(t) measured from a given fixed origin. Velocity v(t), acceleration a(t) and jerk j(t) vectors can be expressed in the tangential-normal form as: v(t) = v(t) · T̂ (1a) a(t) = aT (t) · T̂ + aR (t) · N̂ (1b) j(t) = jT (t) · T̂ + jR (t) · N̂, (1c) where T̂ and N̂ are the unit tangent vector and the unit normal vector, respectively: T̂(t) = v(t) , kv(t)k N̂(t) = ˙ T̂(t) . ˙ kT̂(t)k (2) Given a feasible path from initial to final point, the optimization problem is to find the velocity profile v(t) that reaches the end of the path in minimum time in a way that none of the velocity, acceleration or jerk constraints from Eqs. (3a, 3b, 3c) are violated: ≤ 0 a2T (t) a2TM AX jT2 (t) jT2M AX + + kv(t)k a2R (t) a2RM AX 2 jR (t) 2 jRM AX ≤ vM AX ; ∀t ∈ [0, tf ] , (3a) ≤ 1; ∀t ∈ [0, tf ] , (3b) ≤ 1; ∀t ∈ [0, tf ] . (3c) We defined the acceleration and jerk constraints in a similar way as [8]. 3 Optimal velocity profile algorithm The predefined path C in the two-dimensional space is T given as sp (u) = [xp (u), yp (u)] with parameter u ∈ [u0 , uf ]. The parametrized velocity is: T dsp (u)  0 vp (u) = = xp (u), yp0 (u) du with the magnitude: q vp (u) = kvp (u)k= (x0p (u))2 + (yp0 (u))2 . (4) (6) from which follows the expression for the magnitude of parametrized angular velocity: x0p (u) · yp00 (u) − x00p (u) · yp0 (u) dφp (u) ωp (u) = = . 02 du x02 p (u) + yp (u) (7) The curvature κp (u) is: dφp (u) dφp (u) du = · = dl du dl x0p (u) · yp00 (u) − yp0 (u) · x00p (u) = , (x0p (u)2 + yp0 (u)2 )3/2 κp (u) = (8) where l is the arc length parameter of a curve. 3.1 Step 1: Complying with velocity and acceleration constraints In order to apply actual velocity and acceleration restrictions, the two operating physical quantities ought to be expressed as functions of time. The robot’s movement on a path can be described by monotonously increasing parameter u of the curve or by time t; the former measuring the position on a trajectory and the latter the time at which a certain position on a path is reached. We present the dependence of u on t by schedule u(t) and as a result the parametrized functions vp , ωp , κp defined in Eq. (5, 7, 8) become composite functions vp (u(t)), ωp (u(t)) and κp (u(t)). Applying the chain rule allows us to calculate the magnitudes v(t) and ω(t): dsp (u(t)) du · du dt dφp (u(t)) du ω(t) = · du dt v(t) = Acceleration vector is the derivative of velocity vector from Eq. (1a): a(t) = = vp (u(t)) · u̇(t), (9a) = ωp (u(t)) · u̇(t). (9b) 71 dv(t) ˙ = v̇(t) · T̂ + v(t) · T̂. dt (11) The time derivatives of unit tangential and unit normal vector can be expressed from the Frenet–Serret formulas: ˙ T̂(t) = κ(t) · v(t) · N̂(t), ˙ N̂(t) = −κ(t) · v(t) · T̂. (5) The orientation equals the four-quadrant inverse tangent of the quotient of Cartesian components of the translational velocity: φp (u) = atan2(yp0 (u), x0p (u)), Expressing the velocity and angular velocity solely as functions of time reveals that the time dependant velocities differ from the corresponding parametrized ones by a factor of u̇(t). Obtaining the desired velocity profile thus requires calculating the schedule u = u(t) and its time derivative u̇(t). The curvature, unlike the velocity or angular velocity, does not depend on the parametrization of the curve: κ(t) = κp (u(t)). (10) (12a) (12b) Using the equality from Eq. (12a) we find that: a(t) = v̇(t) · T̂(t) + κ(t) · v 2 (t) · N̂(t). (13) The expressions for the normal and tangential components with respect to time follow from Eqs. (1a, 9a, 13): aT (t) = vp0 (u(t)) · u̇(t) + vp (u(t)) · ü(t), aR (t) = κp (u(t)) · vp2 (u(t)) 2 · u̇ (t). (14a) (14b) The proposed method of incorporating speed and acceleration constraints in the calculation of velocity profile, indirectly determined by schedules u(t) and u̇(t), begins with the identification of N points on the curve, the socalled turning points, where the curvature reaches the local maximum. The value of parameter u in the i−th turning point (i ={1, . . . , N }) is denoted as uT Pi . The speed in these points reaches local minimum, the tangential acceleration aT (t) is therefore zero and radial acceleration aR (t) is maximal. From Eq. (14b) it follows: r aRM AX u̇T P i = . (15) vp2 (uT P i ) · κp (uT P i ) It is also possible to implement the initial and final speed requirements by treating the initial and final point of the trajectory similarly as the turning points and using Eq. (9a). For values of u̇ we get: u̇T P0 = v|t=0 , vp (uT P0 ) u̇T PN +1 = v|t=tf , (16) vp (uT PN +1 ) where the initial and the final point are denoted as T P0 and T PN +1 , respectively. To get the complete velocity profile v(t) of the mobile robot, the values of u and u̇ have to be determined also in between the turning points. Our realization of the proposed method for this calculation stems from knowing the fixed values of uT Pi and uT˙Pi for i ∈ {0, 1, . . . , N + 1} and the analytical formula for ü as a function of u and u̇ that follows from Eqs. (14a, 14b, 3b, 5): s ü(t) = ± aTM AX − x0p x00p xp02 02 2 (x02 1 p + yp )κp 4 − u̇ (t) 2 02 02 xp + yp aRM AX + yp0 yp00 2 u̇ (t), + yp02 From Eqs. (9a, 19) we get the following expressions for the tangential component of the jerk: jT (t) = vp00 (u(t)) · u̇3 (t) + 3vp0 u̇(t) · ü(t) − vp3 (u(t)) · u̇3 (t) · κ2p (u(t)) ... + vp (u(t)) · u(t), (17) and its radial component: where all the quantities with the index p depend directly on u. The basic idea of the algorithm that returns schedules u(t) and u̇(t) is to find the solution to the initial value problem by applying a numerical method of solving ordinary differential equations; or more specifically: to integrate backward and forward in time around each turning point where the initial conditions uT Pi and u̇T Pi are set in order to determine the discrete values of t, u and u̇. According to Euler’s method (the simplest explicit iterative method) the values uk+1 and u̇k+1 in the (k + 1)-th step of the calculation are: u̇k+1 = u̇k ± ük · Ts , (18a) uk+1 = uk ± u̇k · Ts , (18b) where Ts is the sampling time and uk , u̇k , ük the values calculated in the k-th step and perform as the current initial values and/or slopes with negative or positive sign (backward/forward integration). The sought-after schedule u̇(u(t)) is defined by the minimum of the separate profiles around the turning points as shown in Figure (1). jR (t) = 3vp0 (u(t)) · vp (u(t)) · u̇3 (t) · κp (u(t))+ + 3vp2 (u(t)) · κp (u(t)) · u̇(t) · ü(t)+ + vp2 (u(t)) 3 · u̇ (t) · Figure 1: Resulting u̇(u(t)) profile (bold line) on a path sp (u) = (cos(u), sin(2u)), u ∈ [0, 2π] is determined by the separate profiles u̇(u(t)) around the T Pi (thin lines). 3.2 Step 2: Complying with jerk constraints The resulting velocity profile of the first step of the calculation is infeasible for an actual implementation on a robot due to the sudden changes of acceleration. To apply jerk constraints to the existing velocity profile the expression from Eq. (1c) can be written more specifically by differentiating acceleration vector in Eq. (13) using Eqs. (12a, 12b):  da(t) = v̈(t) − v 3 (t) · κ2 (t) T̂(t) dt   1 d 3 + · v (t) · κ(t) N̂(t). v(t) dt (21) κ0p (u(t)). The third time derivative of parameter u(t) with implemented jerk constraints follows from Eq. (20):  1 ... u= · jT (t) − vp00 u̇3 − 3vp0 u̇ü + vp3 u̇3 κ2p . (22) vp Using Eq. (22) and Eq. (3c) to determine the value of jT (t), the aim of the second step of calculation is to smooth the intervals in the original velocity profile that contain points with abrupt changes of acceleration. Similarly as in the Eq. (18a, 18b), forward Euler integration is applied, yet with an additional calculation in the (k + 1)th step: ... ük+1 = ük + u k · Ts . (23) To determine the adequate initial value of Euler method, let us first introduce uCP` and its corresponding time derivative u̇CP` , ` ∈ {1, . . . , M }, as the value of u and u̇ in the critical points on the curve, where the acceleration is discontinuous. Two guesses for the initial value of u for each critical point CP` , uL` and uH` , are then selected according to the following restriction: uCP`−1 < uL` < uH` < uCP` . j(t) = (20) (24) Euler integration from either uH` and uL` onward produces a smooth extension to the original profile u̇(u); in the former case the extension forms an obtuse angle at point of intersection with the original profile (Figure (2), left) and in the latter case the extension never reconnects back onto the original profile (Figure (2), middle). The correct initial value for the forward Euler method is found by bisecting the interval [uL` , uH` ]. The solution is a range of values of u and u̇ that does not introduce additional discontinuities when inserted into the existing u̇(u) profile (Figure 2, right). (19) Figure 2: A display of iteration steps of bisection for determination of a smooth u̇(u(t)) profile that eliminates acceleration discontinuities. 72 4 Results robot that moves on an arbitrary path as in every point in time of the movement the robot has either maximum In order to demonstrate our proposed method, the proballowed speed, acceleration or jerk. lem is defined as follows: Compute the optimal velocThe present study has only investigated and limited ity profile that will result in the shortest travelling time jerk at the switch-overs from the intervals of restricted for a path xp (u) = cos(u), yp (u) = sin(2u) where u ∈ speed movement to the intervals of restricted accelera[0, 2π] with the following restrictions: vM AX = 1.5 m/s, tion movement and vice versa, where the infinite delta aTM AX = 2 m/s2 , aRM AX = 4 m/s2 , jTM AX = 10 m/s3 impulses of the jerk were expected. Generally speaking, and jRM AX = 10 m/s3 . the non-compliance to the jerk limitations could also apFigure (3) shows u̇(u) dependence after the first (u̇I (u)) pear in other points or intervals of the path if only jTM AX and the second step (u̇II (u)) of the calculation of the opand jRM AX were set low enough. We are now in the timal velocity profile. The velocity profile vI (t) in Figure process of investigating this problem with significantly (4) respects speed and acceleration restrictions, but the greater complexity. final velocity profile vII (t) complies also with the jerk constraints. Figure (5) shows the temporal dependence of Acknowledgements normalized values of speed, acceleration and jerk restrictions and proves optimality because at any given moment The authors acknowledge the financial support from the on the curve one of these dynamical quantities reaches its Slovenian Research Agency (research core funding No. P2-0219). maximum. References [1] R. F. Stengel, Stochastic Optimal Control:Theory and Application. John Wiley & Sons, Inc., 1986. [2] L. S. Pontryagin, Mathematical Theory of Optimal Processes. 1st ed., 1987. [3] D. B. Reister and F. G. Pin, “Time-Optimal Trajectories for Mobile Robots With Two Independently Driven Wheels,” The International Journal of Robotics Research, vol. 13, no. 1, pp. 38–54, 1994. Figure 3: u̇I (u) and u̇II (u) with identified T Pi and CPi . The hatched areas represent speed restriction intervals, shaded areas jerk restriction intervals and areas with the white background acceleration restriction intervals. [4] J. R. Rivera-Guillen, R. J. Romero-Troncoso, R. A. Osornio-Rios, A. Garcia-Perez, and I. Torres-Pacheco, “Extending tool-life through jerk-limited motion dynamics in machining processes: An experimental study,” Journal of Scientific and Industrial Research, vol. 69, no. 12, pp. 919–925, 2010. [5] Z. Rymansaib, P. Iravani, and M. N. Sahinkaya, “Exponential trajectory generation for point to point motions,” 2013 IEEE/ASME International Conference on Advanced Intelligent Mechatronics: Mechatronics for Human Wellbeing, AIM 2013, no. 2, pp. 906–911, 2013. [6] M. Yazdani, G. Gamble, G. Henderson, and R. HechtNielsen, “A simple control policy for achieving minimum jerk trajectories,” Neural Networks, vol. 27, pp. 74–80, 2012. Figure 4: vI (t) and vII (t) profiles. [7] W. Wu, H. Chen, and P. Y. Woo, “Time optimal path planning for a wheeled mobile robot,” Journal of Robotic Systems, vol. 17, no. 11, pp. 585–591, 2000. [8] M. Lepetič, G. Klančar, I. Škrjanc, D. Matko, and B. Potočnik, “Time optimal path planning considering acceleration limits,” Robotics and Autonomous Systems, vol. 45, no. 3-4, pp. 199–210, 2003. [9] E. Velenis and P. Tsiotras, “Minimum-time travel for a vehicle with acceleration limits: Theoretical analysis and receding-horizon implementation,” Journal of Optimization Theory and Applications, vol. 138, no. 2, pp. 275– 296, 2008. Figure 5: Normalized dynamical restrictions over time. 5 Conclusion The results of this study support the proposed idea of generating an optimal velocity profile for a wheeled mobile 73 [10] G. Lini, L. Consolini, and A. Piazzi, “Minimum-time constrained velocity planning,” 2009 17th Mediterranean Conference on Control and Automation, no. 5, pp. 748– 753, 2009. Lokalizacija kolesnega mobilnega sistema na osnovi zaznavanja posebnih značk s stereo kamero Martin Anton Škoberne1 , as. dr. Andrej Zdešar1 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana E-pošta: ms1843@student.uni-lj.si, andrej.zdesar@fe.uni-lj.si Localisation of the wheeled mobile system based on detection of special markers with a stereo camera The purpose of the work described in this article is localization of the wheeled mobile system. The robot is equipped with a stereo camera that enables detection of special markers. The global positions of the markers are known. The robot measures the distance vector from the stereo camera to the visible marker. To determine the position of the robot, it must detect at least two markers at the same time. Based on the measured data and the odometry, the estimate of the robot pose can be calculated. We implement this with a localization algorithm. In the presented article two localization algorithms are implemented, namely: Extended Kalman Filter (EKF) and Particle Filter (PF). The solution was developed in the Robot Operating System (ROS) environment. 1 Uvod Avtonomni mobilni sistemi imajo mnogo področij uporabe. Zmožni so samostojnega premikanja v okolju, kjer je poudarek na samostojnih odločitvah ter izvajanju akcij. Za to morajo biti opremljeni s primernimi senzorji. Kamera predstavlja vse bolj popularen senzor za zaznavanje oziroma prepoznavanje objektov. Razširjena je uporaba stereo kamere, saj se lahko s primernimi algoritmi oceni tudi globina objektov. Na tem področju obstaja že mnogo rešitev. V [1], so avtorji implementirali algoritme, ki temeljijo na strojnem vidu, za detekcijo, prostorsko sledenje in ocenjevanje 3D-položaja poznanih tarč (značke Aruco) s stereo kamero na enoti za zasuk in nagib. Da se lahko avtonomni mobilni sistemi avtonomno premikajo po želenih poteh, morajo poznati svojo lego v prostoru. Tu nastopijo algoritmi za lokalizacijo, zaradi katerih je mogoče avtonomno delovanje mobilnih sistemov. Po prostoru je možno razporediti posebne značke, avtonomni mobilni sistem pa se lahko glede na le-te orientira. Značke zaznava s stereo kamero in glede na lokalni koordinatni sistem oceni razdaljo in kot do njih. Z združevanjem informacij iz odometrije s predhodnimi ocenami lege in meritvami (izračun lege glede na položaje značk) je možno izboljšati oceno lege robota v globalnem koordinatnem sistemu. Za ta namen se običajno uporabljajo pristopi lokalizacije, ki temeljijo na uporabi ene ERK'2019, Portorož, 74-77 74 izmed različic Bayesovega filtra. V tem članku sta predstavljeni dve različici, ki smo ju implementirali v simulaciji, to sta razširjeni Kalmanov filter (EKF) in filter delcev (PF). V poglavju 2 je predstavljen kolesni mobilnega sistema in njegov model. V poglavju 3 je predstavljena meritev lege robota na podlagi meritev 3D-položaja značk. Lokalizacija je predstavljena v poglavju 4, kjer sta opisana algoritma EKF in PF. Rezultati simulacije in validacije algoritmov so predstavljeni v poglavju 5. 2 Model kolesnega mobilnega sistema in kamere 2.1 Položaj kamere glede na robota Kolesni mobilni sitem, ki smo ga uporabili za implementacijo tega dela, je štirikolesni mobilni robot Pioneer 3AT. Na robota je nameščena stereo kamera. Predpostavili smo, da lahko jemljemo stereo kamero kot senzor, ki meri 3D-položaj poznanih tarč. Zato definiramo le en koordinatni sistem za stereo kamero, katerega namen je preslikava meritev. Definiramo statično preslikavo med koordinatnim sistemom robota R in koordinatnim sistemom kamere C z rotacijsko in translacijsko matriko   0 0 1 π π  0 0 RR C = Rotz (− )Rotx (− ) = −1 2 2 (1) 0 −1 0   T tR . C = 0,4 0 0,6 Transformacija (1) je prikazna na sliki 2, kjer je v simulacijskem orodju Rviz prikazana lega koordinatnega sistema kamere glede na koordinatni sistem robota (poglavje 5). 2.2 Model robota Za modeliranje gibanja robota smo uporabili model diferencialnega pogona. Izpeljava in dodatna razlaga razvoja modela z diferencialnim pogojem je podana v [3]. Zunanja kinematika v diskretni obliki je v globalnih koordinatah za model z diferencialnim pogonom podana kot x(k + 1) = x(k) + ∆d(k) cos ϕ(k) ∆d(k) = Ts v(k) y(k + 1) = y(k) + ∆d(k) sin ϕ(k) , ∆ϕ(k) = Ts ω(k) ϕ(k + 1) = ϕ(k) + ∆ϕ(k) (2) Vektor x = (x, y, ϕ) označuje stanje sistema – to je lega robota v globalnem koordinatnem sistemu. Koordi- nati x in y označujeta pozicijo v globalnem koordinatnem sistemu, ϕ pa zasuk. Vhodni veličini v sistem sta translatorna hitrost robota v v smeri x-osi robota in kotna hitrost ω okoli z-osi robota. Z oznako k označimo diskretni trenutek, kjer je čas vzorčenja označen z oznako Ts . Oznaki ∆d in ∆ϕ sta spremembi premika v smeri osi x in orientacije okoli osi z. Lego robota v kateremkoli časovnem trenutku dobimo z integracijo kinematičnega modela (2), kar imenujemo odometrija. Pri realnemu kolesnemu mobilnemu sistemu prihaja do napak pri izračunu odometrije, zato smo v simulacijo vključili šum. Za model šuma smo uporabili Gaussov šum, ki ga označimo z N (µ, σ 2 ), kjer je µ srednja vrednost in σ 2 varianca. Pri izračunu odometrije smo šum vključili tako, da smo ∆d in ∆ϕ pomnožili z Gaussovim šumom ∆dN (k) = ∆d(k)N (0, 0.002) (3) ∆ϕN (k) = ∆ϕ(k)N (0, 0.01) . 2.3 Sistem za zaznavanje lege posebnih značk Modelu robota je sledila izvedba sistema za zaznavanje lege posebnih značk. To je simulacija delovanja stereo kamere za ocenjevanje 3D-položaja poznanih tarč glede na koordinatni sistem stereo kamere. Za pravilno delovanje simulacije smo meritvam prišteli šum, ki narašča z oddaljenostjo od značke. Šum smo modelirali kot Gaussov šum, kjer je standardna deviacija premo sorazmerna z absolutno vrednostjo razdalje v smeri z-osi kamere. Meritev zc modeliramo     kot N (0, 0.001) xc (4) zc =  yc  + |zc | N (0, 0.001) zc N (0, 0.005) kjer je vektor (xc , yc , zc ) pravilni 3D-položaj značke glede na koordinatni sistem stereo kamere. Za določevanje položaja značk glede na robota, smo morali meritev preslikati iz koordinatnega sistema kamere v koordinatni sistem robota. To je statična transformacija, ki je definirana z rotacijsko in transformacijsko matriko (1). Pri robotu velja tudi posebna omejitev, to je zorni kot. Torej s kamero ne moremo zaznati značk, ki se jih ne vidi. 3 Meritev lege Za meritev lege je potrebno izračunati oceno lege robota glede na lege posebnih značk, ki jih robot lahko zazna. Lego definira vektor (x, y, ϕ). Koordinato z lahko zanemarimo, saj se robot giblje po tleh. Najprej je treba vektorje razdalj tranformirati iz koordinatnega sistema kamere v koordinatni sistem robota. Transformiramo jih s pomočjo rotacijskega in translatornega premika (1). Tako dobimo vektorje razdalj od koordinatnega sistema robota do značk. Vsaka značka je unikatna, tako da jih lahko ločimo med sabo. Za izračun lege sta potrebni vsaj dve vidni znački. Lege značk v globalnem koordinatnem sistemu so znane. Torej imamo na razpolago: pozicije značk v globalnem koordinatnem sistemu in vektorje razdalj, ki ocenjujejo pozicije značk glede na koordinatni sistem robota. Z informacijo o poziciji značk v globalnem koor- 75 dinatnem sistemu in absolutni razdalji med robotom in značkami izračunamo presek dveh krožnic (slika 1). Za posamezno krožnico si lahko predstavljamo, da je njen center v koordinatah značke, radij krožnice je pa enak absolutni razdalji robota do značke. Tako dobimo dve presečišči – to sta dve možni legi. Slika 1: Meritev lege robota. Za izbiro pravilne lege si pomagamo z vektorji razdalj od robota do značk. To storimo tako, da si pri obeh potencialnih legah izberemo enega od vektorjev razdalj do značke in preverimo ujemanje drugega. Izračunamo absolutno razliko med dejansko lego izbrane značke in obema izračunanima legama za to značko. Pri tisti potencialni legi, kjer je absolutna razlika manjša, pomeni, da je le-ta prava lega. Če ne bi imeli unikatnih značk, ki jih kamera razpoznava oz. bi izmerili lahko le absolutno razdaljo do značk, bi za pravilno določitev lege potrebovali meritve razdalj vsaj treh značk namesto dveh. 4 Lokalizacija Da se lahko avtonomni mobilni sistemi avtonomno gibljejo po želenih poteh, morajo poznati svojo lego v prostoru. V našem primeru si lahko za ocenitev lege pomagamo z naslednjimi podatki: odometrija na osnovi računanja poti robota glede na njegov premik in meritve na osnovi zaznavanja značk. Sama odometrija nam ne daje dovolj dobre ocene lege, saj ne moremo zagotoviti lege robota v neznanem okolju. Poleg tega je odometrija zaradi integracije podvržena lezenju. Meritve na osnovi zaznavanja značk pa niso tako pogoste, kot na primer podatki odometrije. Poleg tega tudi niso vedno na voljo – robot jih ne zazna, če so izven dosega. Meritve opravljene s kamero moramo v postopku lokalizacije primerno združiti s predhodnimi podatki o legi mobilnega sistema. Tukaj uporabimo algoritme, ki temeljijo na uporabi ene izmed različic Bayesovega filtra. V tem delu smo se osredotočili na razširjeni Kalmanov filter (EKF) in filter delcev (PF), ki so opisani v [3, 4, 5]. 4.1 Razširjeni Kalmanov filter Kalmanov filter je razvit za linearne sisteme, vsi šumi morajo biti izraženi z normalno porazdelitvijo. Naš model je nelinearen, zato uporabimo razširjeni Kalmanov filter (EKF), kjer se nelinearnost aproksimira z linearnim modelom. Z linearizacijo dobimo občutljivostne matrike za trenutne vrednosti ocenjenih stanj in meritev. Splošen nelinearni model sistema, kjer modeliramo tudi šum, je podan kot xk = f (xk−1 , uk−1 , wk−1 ) (5) zk = h(xk + vk ) . Stanje sistema xk je podano kot funkcija f , ki je odvisna od prejšnjega stanja xk−1 , vhoda uk−1 in šuma wk−1 , ki lahko nastopa na vhodu sistema ali pa vpliva direktno na stanja sistema. V našem primeru je stanje sistema lega robota, vhod sta translatorna in kotna hitrost, šum je pa posledica napake zaznavanja pravega premika robota zaradi netočnosti enkoderjev, trenja in zdrsa koles ali drugih pojavov. Model meritve zk je podan kot funkcija h, ki modelira senzor. V našem primeru je ta model opisan v poglavju 3, kjer je razloženo kako pridemo do izmerjene lege robota glede na zaznane značke. Tudi pri modelu meritve je potrebno določiti šum vk , ki se prišteje h končni oceni meritve. EKF je podan s predikcijskim korakom x̂k|k−1 = f (x̂k−1|k−1 , uk−1 ) (6) Pk|k−1 = APk−1|k−1 AT + FQk−1 FT in korekcijskim korakom Kk = Pk|k−1 CT (CPk|k−1 CT + Rk )−1 (7) x̂k|k = x̂k|k−1 + Kk (zk − x̂k ) Pk|k = Pk|k−1 − Kk CPk|k−1 . V predikcijskem koraku uporabimo nelinearni model za oceno predikcije stanj. Korekcijo pa izvedemo, ko prejmemo novo meritev in s tem popravimo oceno predikcije. Nelinearni model mora biti lineariziran okoli trenutno ocenjenega stanja. Nelinearni model za kolesni mobilni sistem, kjer nastopa tudi  šum, predpostavimo, da je  xk−1 + (∆dk−1 + w∆d ) cos ϕk−1 (8) xk =  yk−1 + (∆dk−1 + w∆d ) sin ϕk−1  , ϕk−1 + (∆ϕk−1 + w∆ϕ ) kovariančni matriki šumov Q in R sta podani kot Q = E[wwT ] R = E[vvT ]     w∆d N (0, 0.002) w= = w∆ϕ N (0, 0.01) (9)     vx N (0, 0.001) v = vy  = N (0, 0.001) , vz N (0, 0.005) kjer vektor w modelira šum ob premiku robota, vektor v pa šum meritve. Obe kovariančni matriki sta diagonalni, saj smo predpostavili, da šumi niso med seboj korelirani. Načeloma sta modela šumov odvisna tudi od hitrosti gibanja robota in od oddaljenosti izmerjenih razdalj do značk, vendar smo v simulaciji dosegli dobre rezultate s statičnimi vrednostmi kovariančnih matrik. Definiramo Jacobijevo matriko A za prehajanje šuma iz prejšnjih vrednosti stanj   1 0 −∆dk−1 sin ϕk−1 A = 0 1 ∆dk−1 cos ϕk−1  (10) 0 0 1 in matriko F za vpliv šuma iz vhodovna stanja  cos ϕk−1 0 F =  sin ϕk−1 0 . (11) 0 1 Matrika C opisuje vpliv šuma iz stanj na meritve. V našem primeru je meritev v takšni obliki kot stanje sistema, zato je C = I3×3 . 76 4.2 Filter delcev Pri Kalmanovemu filtru je potrebno predpostaviti Gaussove porazdelitve verjetnosti in linearnost sistema. V primeru nelinearnih sistemov pa lahko nelinearnost modela lineariziramo, kar nas privede do EKF. Filter delcev je bolj splošen pristop, kjer ne zahtevamo Gaussove porazdelitve in linearnosti sistema. Osnovna ideja je, da trenutno oceno porazdelitve verjetnosti po opravljeni meritvi aproksimiramo z množico delcev. Tako vsak delec predstavlja svojo oceno o dejanskem stanju sistema. Opis porazdelitve verjetnosti s pomočjo naključno generiranih delcev predstavlja neparametričen opis porazdelitve verjetnosti, ki ni omejena le na Gaussovo porazdelitev. Nadalje omogoča tudi modeliranje nelinearnih transformacij šuma. Algoritem filtra delcev (PF) opisujejo naslednji koraki. Najprej se izvede inicializacija z množico N delcev xik , ki se jih postavi na naključne začetne vrednosti glede na porazdelitev p(x0 ). Določimo naključno normalno porazdelitev, ki jo prištejemo začetnim stanjem delcev. Pri inicializaciji še ne moremo oceniti pomembnosti delcev, zato imajo vsi delci enako utež. Sledi predikcija, kjer za vsak delec izvedemo premik z modelom premika in znanim vhodom, kateremu dodamo naključno vrednost glede na šumne lastnosti. Za vsak delec xik izračunamo oceno novega   i stanja i xk−1 + (∆dk−1 + w∆d ) cos ϕik−1 i i + (∆dk−1 + w∆d ) sin ϕik−1  , (12) x̂ik =  yk−1 i i ϕk−1 + (∆ϕk−1 + w∆ϕ ) kjer šum modeliramo kakor v (9). Ko prejmemo novo meritev, izvedemo korekcijo. Pri korekciji za vsak delec ocenimo vrednost meritve, ki bi jo sistem izmeril, če bi njegovo stanje ustrezalo stanju delca. Glede na dejansko izmerjeno meritev in primerjavo z ocenjenimi meritvami delcev ovrednotimo pomembnost delcev. Odstopanje dejanske in ocenjene meritve imenujemo inovacija innovki = zik − ẑik , (13) kjer imajo bolj verjetni delci manjše odstopanje. Za vsak delec ocenimo njegovo pomembnost oziroma uteži wki , ki jih določimo z Gaussovo porazdelitvijo verjetnosti i T −1 i 1 1 wki = det(2πR)− 2 e− 2 (innovk ) R (innovk ) . (14) Nov nabor delcev se določi glede na njihovo pomembnost. Iz nabora delcev se naključno izbere delce z verjetnostjo proporcionalno njihovi pomembnosti. Tako so bolj pomembni delci izbrani večkrat, manj pomembni delci pa manjkrat. Postopek izbora nove generacije delcev izvedemo tako, da uteži delcev normiramo z vsoto uteži ter jih kumulativno seštejemo. Delci z večjo verjetnostjo zavzemajo na intervalu od 0 do 1 večje področje kot manj verjetni. Naključno izberemo N števil od 0 do 1 in pogledamo katerim delcem se prilegajo, izbrane delce uporabimo v korekcijskemu koraku. Ocena stanja filtra je nato enaka povprečni vrednosti stanj delcev, za kot zasuka ϕ smo izbrali vrednost delca z največjo verjetnostjo. Te korake izvajamo v vsakem časovnem trenutku s trenutnimi vhodi in meritvami ter predhodno oceno stanja. 5 Rezultati 6 Vso delo, predstavljeno v tem članku, smo izvedli v robotskem operacijskem sistemu ROS (angl. Robot Operating System) [2]. Za izvedbo simulacije smo v okolju ROS napisali Python skripte za simulacijo in uporabili orodje Rviz za vizualizacijo (slika 2). Določili smo model robota in sistem za zaznavanje značk, ki modelira meritev 3D položaja značk glede na kamero robota. Te meritve smo preslikali v koordinatni sistem robota in jih vključili v algoritem za lokalizacijo. Robota smo upravljali sami, kjer smo kot vhod podali translatorno hitrost v smeri x-osi in kotno hitrost okoli z-osi robota. Robota smo poljubno peljali po prostoru tako, da je nekaj časa lahko zaznaval značke, nekaj časa jih pa ni videl. Slika 2: Primer simulacije v Rviz - prikaz robota s kamero, značk in oceno lege, ki jo pridobimo z algoritmom lokalizacije. Rezultati simulacije so ponazorjeni na slikah 3 in 4, kjer lahko na levi strani vidimo potek stanj v odvisnosti od časa, na desni strani pa pot v xy-ravnini, ki jo je robot opravil, označeni sta tudi znački. Vsi grafi imajo za primerjavo podano še pravo pot robota, kjer lahko primerjamo odstopanje izračunane poti, ki smo jo dobili z algoritmom lokalizacije. S križci je označeno, kdaj je bila na voljo meritev in tako opravljena korekcija. Opazimo, da se napaka povečuje, če opravljamo samo predikcijo brez korekcije. Slika 3: Rezultat lokalizacije z uporabo EKF-algoritma. Zaključek V tem članku smo se spoznali z algoritmi lokalizacije za kolesni mobilni sistem. Najprej smo morali ustvariti model robota in simulacijsko okolje, da smo lahko implementirali algoritme za lokalizacijo. Za to smo uporabili ROS-okolje, skripte smo pisali v programskem jeziku Python. Za lokalizacijo smo implementirali in primerjali dva algoritma, to sta EKF in PF. Pri obeh smo združevali podatke prejšnjega stanja modela z odometrijo in meritvijo lege robota. Oba algoritma temeljita na dveh korakih, to sta predikcija in korekcija. Predikcija se izvede ob vsaki spremembi stanj modela, korekcija pa le, ko je na voljo nova meritev. EKF je računsko učinkovit algoritem zaradi linearizacije nelinearnih modelov ter aproksimacije šumov, ki nimajo Gaussove porazdelitve. Zato je pogosto uporabljen v praksi. Točnost, ki jo z linearno aproksimacijo dosežemo, je odvisna od velikosti variance šuma, ter od stopnje nelinearnosti. Zavedati se moramo, da lahko zaradi napake linearizacije filter slabše konvergira k pravi rešitvi. EKF bi bil verjetno bolj primeren za računanje v realnem času. PF je računsko bolj zahteven algoritem, sploh če uporabljamo veliko število delcev za aproksimacijo modela in kjer imamo opravka z večjimi dimenzijami. PF omogoča opis nelinearnih sistemov in poljubne porazdelitve šuma. Prednosti so robustnost in zmožnost rešitve problema globalne lokalizacije in problema ugrabljenega robota. V našem primeru kažejo rezultati v prid implementaciji EKF-algoritma. To je mogoče tudi zato, ker dobro poznamo model robota in lahko izračunamo prehodne matrike. Če temu ne bi bilo tako, bi mogoče PF prišel bolj prav. Oba algoritma sta dosegla dobre rezultate. Veliko boljše rezultate bi dosegli, če bi v vsakem koraku s predikcijo lahko izvedli tudi korekcijo – tako so bili tudi zasnovani ti algoritmi. Tako se pa nedoločenost ob vsakemu koraku predikcije veča, kar se nekoliko bolj pozna pri PF. Delo bi lahko nadaljevali tako, da bi implementirane algoritme testirali na realnem robotu. ROS daje dobro podporo za komuniciranje med napravami in ponovno uporabo že spisanih funkcij. Boljše rezultate bi lahko tudi dosegli, če bi v prostor postavili več značk in tako dosegli natančnejše meritve. Literatura [1] T. Belcijan, M. Vačovnik in A. Zdešar, Sledenje in ocenjevanje 3D položaja tarč s stereo kamero na enoti za zasuk in nagib. Zbornik desete konference Avtomatizacija v industriji in gospodarstvu, 6. in 7. april 2017, Maribor, Slovenija [2] ROS. http://wiki.ros.org/ Slika 4: Rezultat lokalizacije z uporabo PF-algoritma. Že iz grafov se vidi, da smo dosegli nekoliko boljše rezultate z algoritmom EKF. To potrdimo tudi z izračunano povprečno srednjo napako (MSE). Pri poskusu prikazanem na sliki je vrednost MSE za algoritem EKF enaka 0,0071 in za algoritem PF je enaka 0,1172. Opazimo, da EKF dosega dosti boljši rezultat, vendar sta kljub temu oba rezultata zelo dobra. 77 [3] G. Klančar, A. Zdešar, S. Blažič in I. Škrjanc, Wheeled mobile robotics: from fundamentals towards autonomous systems. Elsevier, Butterworth-Heinemann, 2017 [4] P. Corke, Robotics, vision and control, Fundamental algorithms in MATLAB. Berlin Heidelberg: Springer, 2011 [5] S. Thrun, W. Burgard in D. Fox, Probabilistic robotics. 4, illustr. MIT Press, 2005 Vibracijski mikrofluidni rotacijski motor na osnovi stebrička Suzana Uran, Matjaž Malok, Riko Šafarič Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko, Koroška cesta 46, 2000 Maribor E-pošta: suzana.uran@.um.si, riko.šafarič@um.si Vibrational microfluidic rotational motor based on pillar Abstract. The paper presents the development and testing of a controller for vibrational device of microfluidic motor based on a pillar with diameter lower than 1 mm. It presents the principle of construction of a mechanical amplifier driven by a piezoelectric actuator, a signal generator for AC voltage controlling the piezoelectric actuator and construction of a vibrational microfluidic rotational motor. The microfluidic motor can be driven in both rotational direction and rotational speed can be controlled between -1 rev/s to +4 rev/s. smo trikrat prerezali in najširši sredinski del toplotno deformirali (sploščili) z dvema kovinskima ploskvama segretima na cca. 70 °C (trajanje nekaj sekund). Nato smo v sredini diska z mehanskim ostrim točkalom naredili luknjico premera cca. 200 µm. Disk smo nataknili na stebriček, ki na vrhu gleda iz kapljice. Disk nataknjen na stebriček prosto plava na vrhu kapljice in le nekoliko splošči vrh kapljice. Zgrajen mikrofluidni motor je prikazan na sliki 2. 1 Uvod Miniatuarizacija mehatronskih naprav je že več kot dve desetletji v ospredju raziskovalnih naporov znanstvenikov, ki neumorno razvijajo mikroelektromehanske sisteme (MEMS). Članek prikazuje gradnjo in krmiljenje vibracijskega mikrofluidnega motorja na osnovi stebrička s premerom rotorja manjšim od 1 mm. Sam vibracijski mikrofluidni rotacijski motor je razmeroma preprosta naprava sestavljena iz stebrička v kapljici vode (tekočine). V kapljici vode se zaradi krožnih vibracij ustvari krožni vodni tok okoli stebrička, ki poganja rotor mikrofluidnega motorja. Za poganjanje krožnega toka vode okoli stebrička je potrebno razviti kvalitetno vibracijsko napravo. Pričujoči članek prikazuje princip delovanja in testiranje krmiljenja podsistemov nujnih za kvalitetno in zanesljivo delovanje samega vibracijskega mikrofluidnega rotacijskega motorja na osnovi stebrička. Slika 1: Skica mikrofluidnega motorja na osnovi stebrička Stebriček z diskom kapljica vode Steklena podlaga 2 Mikrofluidni motor na osnovi stebrička Zgradbo vibracijskega mikrofluidnega motorja na osnovi stebrička prikazuje slika 1. Mikrofluidni motor smo izdelali tako, da smo na čisto in osušeno mikroskopsko steklo namazali tekočino vodnega repelenta in nato namazano površino spolirali. Na ta način je postala površina stekla hidrofobna in je odbijala kapljico vode. Zaradi tega ima kapljica vode, ki se nahaja okoli osi motorja – stebrička, na vrhu izrazito in stabilno okroglino. Stebriček (os motorja) je bil izdelan iz tanke bakrene žičke premera 100 μm in dolžine 4 mm ter je bil prilepljen pravokotno na stekleno podlago z UV lepilom. Rotor mikrofluidnega motorja je disk, ki je lažji od vode, in ima v sredini luknjico premera cca. 200 μm. Disk smo izdelali iz kroglice polystyrena (cca. 1 mm premera). Kroglico ERK'2019, Portorož, 78-81 78 Slika 2: Zgrajen mikrofluidni motor Disk na kapljici vode s stebričkom v sredini Vrtenje diska (rotorja) mikrofluidnega motorja povzročimo tako, da z vibracijami steklene podlage poženemo mikrofluidni krožni tok vode (tekočine) v kapljici. Nastanek mikrofluidnega krožnega toka je podrobno opisan v [5] in [6]. Vibracije steklene podlage, na kateri je zgrajen mikrofluidni motor, izvajamo s pomočjo piezoelektričnih aktuatorjev. Piezoelektrični aktuatorji se pogosto uporabljajo v mikro/nano aplikacijah, saj omogočajo zelo precizne premike in razvijajo dokaj velike sile. Vendar je celo območje premika piezoelektričnih aktuatorjev majhno, saj znaša okoli 0.1% dolžine piezoaktuatorjev. Zato se piezo aktuatorji pogosto uporabljajo skupaj z različnimi mehanizmi, ki ojačujejo premike piezo aktuatorjev. Da bi zagotovili večje hitrosti vrtenja in s tem boljše krmiljenje mikrofluidnega motorja smo vibracijsko napravo za mikrofluidni motor na osnovi stebrička zasnovali na osnovi mehanskega mostičnega mehanizma, ki ojačuje premike piezo aktuatorja [1,2]. 3 Vibracijska naprava Vibracijska naprava je sestavljena iz mehanizma vibracijske naprave (slika 3) in iz generatorja signala vibracijske naprave. Y premik stekla Premik piezo akt. okvir Slika 3: Mehanizem vibracijske naprave Vibracijska naprava na sliki 3 je vpeta v mikroskop. Vpetje v mikroskop je bilo potrebno, saj je velikost razvitih motorjev v sub milimetrskem področju (velikost rotorja je bila med 300 in 1000 μm). Sama vibracijska naprava je sestavljena iz okvirja, ki je bil pritrjen na mikroskop, ter je omogočal premikanje levo/desno in gor/dol v fokusu leče mikroskopa. Na okvir sta bila pritrjena dva mehanska ojačevalnika vibracij (na sliki 3 levo za premik stekla po X-osi in spredaj za premik stekla po Y-osi). Zaradi mehanskega ojačevalnika je med premikanjem piezo aktuatorja in premikanjem stekla kot 90 stopinj. Okvir vibracijske naprave in oba mehanska ojačevalnika smo izdelali s tehniko 3D tiskanja iz ABS plastike. Med obema mehanskima ojačevalnikoma je bilo na mehkih elastičnih povezavah prilepljeno mikroskopsko steklo dimenzije 20 x 20 mm, saj je bila osvetlitev žariščne točke mikroskopa izvedena od spodaj. Mehanski mostični ojačevalnik je ojačal amplitudo piezoelektričnega aktuatorja za cca. 3 krat, odvisno od frekvence, pri resonančni frekvenci mehanskega ojačevalnika pa celo za 26 krat. Z mehkimi, elastičnimi in tankimi povezavami smo precej zmanjšali mehansko sklopljenost med obema mehanskima ojačevalnikoma. Vsak od mehanskih ojačevalnikov [1], [2] je vzbujan s svojim piezoelektričnim aktuatorjem MPO Piezo Stacks MPO-050015 [3] podjetja Nanofaktur iz 79 Nemčije. Piezoelektrični aktuator (dimenzije 5 x 5 x 10 mm) je nameščen na sredini mehanskega ojačevalnika (slika 3) in je napajan z izmenično napetostjo v območju od -10 V do +115 V. To območje napetosti omogoča mehanske premike piezo aktuatorja z amplitudo cca. 10 μm. Resonančna frekvenca piezo aktuatorja je 105 kHz. Piezoelektrične aktuatorje krmilimo z napetostjo z visokonapetostnim operacijskim ojačevalnikom Apex Microtechnology PA87 [4]. Ojačevalniki PA87 so namenjeni za krmiljenje piezo aktuatorjev, lahko jih napajamo z napetostjo od -15V do 335V, na izhodu dajejo 150 mA trajnega toka (200 mA kratkotrajno) in imajo frekvenčno območje višje od 200 kHz. Dva krmilna signala (sinusno napetost za prvi piezoelektrični aktuator in kosinusno napetost za drugega) pa smo generirali z mikrokrmilnikom dsPIC33FJ64MC802. Programska oprema generatorjev signala sinusa in kosinusa, lastne izdelave je omogočala spremembo frekvence med 1 Hz in 10 kHz s korakom 1 Hz, nižanje izhodne napetosti elektronskega dela vibracijske naprave je bilo možno s korakom 10% med 0 do 115 V izhodne amplitude. Programska oprema generatorja signala vibracijske naprave je omogočala tudi nastavljiv fazni zamik +/90 ° med sinusno in kosinusno izhodno napetostjo. Električno lahko piezo aktuator modeliramo s kondenzatorjem, katerega impedanca je obratno sorazmerna s frekvenco (1/jωC). Podana kapacitivnost uporabljenega piezo aktuatorja je 1.1 μF. Tokovne zahteve piezo aktuatorjev z višanjem frekvence premikanja naraščajo. Za želeni sinusni potek napetosti u(t)=Asin(ω.t) je potreben tok i = ω.C.A.cos(ω.t). Z osciloskopom smo izmerili časovne poteke izhodne napetosti ojačevalnika PA87 brez (slika 4 zgoraj) in s priključenim (slika 4 spodaj) piezo aktuatorjem pri frekvenci 100 Hz sinusnega signala. Slika 4: Izhodna (sin/cos) signala PA87 pri 100 Hz brez in s priključenim piezo aktuatorjem (modra barva – X-os, rumena barva – Y-os) Pravilne krožne gibe mikroskopskega stekla smo dobili do frekvence 40 Hz, saj so bile izmerjene napetosti na piezo aktuatorjih do te frekvence precej pravilne sinusne oblike. Pri višjih frekvencah pa so bile izmerjene napetosti bolj popačene, npr. kot na sliki 4 spodaj. Premikanje stekla sta močno popačila mehanska ojačevalnika skupaj z napajalno elektroniko. Namesto lepega krožnega gibanja stekla smo dobili pri resonančnih frekvencah bolj elipsoidno obliko gibanja stekla, kar je posledica povečanja amplitude premikanja zaradi resonance enega ali obeh mehanskih ojačevalnikov. Resonančne frekvence vibracijske naprave so se pojavljale v območju od 48 Hz do 900 Hz. Izrazitejše resonančne frekvence (velikost amplitude do 70 μm) smo dosegli v frekvenčnem pasu od 70 do 350 Hz z zelo ozkimi resonančnimi vrhovi, ki so bili široki zgolj 10-15 Hz. Največjo amplitudo 130 μm smo dobili pri resonančni frekvenci okoli 500 Hz, zato smo pri tej frekvenci dobili največjo hitrost vrtenja motorja (slika 7). Pri frekvencah višjih od 600 Hz se je amplituda zmanjševala in je pri 1000 Hz dosegla zgolj 1 μm. Razen tega se je mikroskopsko steklo pri različnih resonančnih frekvencah gibalo enkrat v smeri urnega kazalca drugič pa v proti urni smeri. To lastnost smo izkoristili za to, da smo lahko disk rotacijskega motorja vrteli enkrat v eno, drugič v drugo smer. Krmiljenje smeri vrtenja vibracijskega mikrofluidnega motorja lahko dosežemo na dva načina. Pri prvem načinu dosežemo spremembo smeri vrtenja mikrofluidnega motorčka s spremembo faznega zamika med krmilnima signaloma iz 90° na 270°, pri drugem pa moramo poiskati dve različni resonančni frekvenci, pri katerih imamo vrtenje vode v nasprotnih smereh. Drugi način se je pokazal kot bolj zanesljiv in ponovljiv. Zaradi popačenj signalov nimamo enega lepega vrtinca, ampak imamo običajno dva vrtinca, ki se vrtita v nasprotnih smereh, kar je posledica vibriranja steklene podlage. Pri vrtenju motorčka v eno smer je prevladujoč velik vrtinec, medtem ko je drugi vrtinec manjši, in ne vpliva na kroženje. Ko pa spremenimo frekvenco pa se spremeni kroženje vode tako, da prej glavni vrtinec postane manjši, prej manjši vrtinec pa postane glavni vrtinec, in tako vrtimo disk v nasprotno smer (Slika 5). Slika 5: Dve obliki prevladujočega vrtinca vode v kapljici 100 µm z nekoliko svetlejšim kolobarjem okoli stebra, ki predstavlja režo med stebričkom in diskom. Na sliki 6 a) vidimo izboklino diska desno spodaj, medtem, ko je izboklina diska na sliki 6 b) levo zgoraj. Hitrosti rotacije diska, ki smo jih dosegali, so bile med -1 obr/s in +4 obr/s, odvisno od vzbujalne frekvence napajalne napetosti iz signalnega generatorja, kar prikazuje slika 7. Zanesljivost in ponovljivost delovanja takšnega motorja je bila visoka. Teste smo izvajali 3 zaporedne delovne dni in niti enkrat se ni zgodilo, da naprava ne bi delovala. Nekoliko je nihala zgolj izmerjena rotacijska hitrost iz dneva v dan (za cca. 20%), kar je bila posledica izhlapevanja kapljice vode. Ko se je volumen kapljice zmanjšal za približno polovico, se je hitrost vrtenja diska opazno zmanjšala. Ko smo manjkajočo vodo dolili, je bilo vrtenje vode ponovno zanesljivo in konstantno. Tudi, ko smo motor razstavili, in ga ponovno sestavili po postopku opisanem na začetku 1. poglavja se ni nič bistveno spremenilo. Opazili pa smo, da so se resonančne frekvence iz slike 7 spremenile (zvišale ali znižale) za nekaj 10 Hz, če točka, kjer je bilo mikroskopsko steklo prilepljeno na mehko elastično spojko mehanskega ojačevalnika, ni bila točno na sredini ustrezne (X, oz. Y) stranice stekla. Prav tako smo ugotovili, da kvaliteta 3D tiskanja mehanskih ojačevalnikov bistveno vpliva na položaj resonančnih frekvenc v sliki 7. a) b) Slika 6: Prikaz vrtenja diska nataknjenega na stebriček na kapljici vode skozi mikroskop 4 Testiranje mikrofluidnega motorja Slika 6 prikazuje dva trenutka vrtenja diska na stebričku pri pogledu skozi mikroskop. Premer diska je cca. 500 µm, v sredini pa se sicer nejasno vidi steber premera 80 Dejansko je imel vsak od 3 parov 3D tiskanih mehanskih ojačevalnikov, ki smo jih testirali drugačne resonančne frekvence. Zato smo morali pri zamenjavi mehanskih ojačevalnikov vedno ponovno umeriti resonančne frekvence pri katerih se je disk mikrofluidnega motorja vrtel v eno ali drugo smer. Tudi pri spremembi premera diska in luknjice v disku je bilo potrebno ponovno umerjanje. Slika 8 prikazuje podrobneje frekvenčno območje od 520 do 570 Hz iz slike 7. Vidimo, da lahko hitrost vrtenja diska spreminjamo s povečevanjem frekvence preko resonančnega vrha. Drugi način spreminjanja vrtilne hitrosti diska omogoča, da obdržimo frekvenco pri 520 Hz (resonančna frekvenca), nato pa znižujemo amplitudo sinusnega in kosinusnega izhodnega napetostnega signala iz generatorja signala (slika 9). Slika 7: Vrtilne hitrosti diska motorja v odvisnosti od vzbujevalnih frekvenc signalnega generatorja Slika 8: Hitrosti vrtenja diska okoli frekvence 545 Hz 5 Zaključek V prispevku je predstavljen razvoj mikrofluidnega motorja na osnovi stebrička, kjer smo zgradili mehanizem vibracijske naprave in generator vibracijskega signala na osnovi piezoelektričnega aktuatorja. Uporabili smo učinek tvorjenja mikrofluidnega krožnega toka okoli stebrička v kapljici vode, ko vzbujamo stebriček s krožnimi vibracijami. Krožni tok je bil dovolj močan, da smo vrteli majhen disk s polmerom manjšim od 1 mm s hitrostmi do 4 obr/s v obe smeri, pri čemer smo lahko krmilili tudi hitrost vrtenja. Menimo, da bi lahko predstavljeni motor še zmanjšali, tako da bi bil premer motorja manjši od 300 µm in ga uporabili za izgradnjo mikro motorja za poganjanje mikroelektromehanskih sistemov (MEMS). Slabost predstavljene metode je izhlapevanje vode iz proste kapljice, kar bi najlažje zmanjšali s pomočjo druge manj hlapne tekočine (npr. tekoča kovinska zlitina galinstan). Ali pa bi površino podlage motorja ohlajali pod temperaturo rosišča in s tem izhlapevajočo vodo nadomeščali s kondenzirano vodo iz zraka, za kar bi bilo potrebno zgraditi poseben regulacijski sistem in je zahtevnejše za izvedbo. Literatura [1] C. Lin, Z. Shen, J. Yu, P. Li, D. Huo, Modelling and Characteristic Analysis of a 3 Piezoelectric-actuated Micro-/nano Compliant 4 Platform using Bond Graph Approach, Micromachines, 2018 [2] H. Wei, B. Shirinzadeh, W. Li, L. Clark, J. Pinskier, Y. Wang, Development of Piezo-Driven Compliant Bridge Mechanisms: General Analytical Equations and Optimization of Displacement Amplification, Micromachines, Avgust 2017 [3] MPO Piezo Stacks, http://www.nanofaktur.com/piezoactuators/mpo-piezo-stacks, [Pridobljeno 23. 6. 2019] [4] J. Čas, Položajno vodenje robotskega mehanizma s piezoelektričnimi aktuatorji, doktorska disertacija, Maribor, april 2011. [5] B. Bratina, A. B. Garcia, M. Petek, S. Uran, R. Šafarič, Razvoj vibracijskega rotacijskega mikromotorja v tekočini, Zbornik 27. mednarodne Elektrotehniške in računalniške konference ERK 2018, 17. - 18. September 2018, Portorož, Slovenija [6] T. Hayakawa, S. Skuma, F. Arai: On-chip 3D rotation of oocyte based on a vibration-induced local whirling flow, Microsystems & Nanoengineering, Maj 2018 Zahvala Slika 9: Hitrosti vrtenja diska v odvisnosti od amplitude signalnega generatorja 81 Zahvaljujemo se sodelavcem Laboratorija za kognitivne sisteme v mehatroniki na FERI, Univerze v Mariboru za njihov doprinos pri razvoju in testiranju vibracijskega mikrofluidnega motorja, še posebej Domnu Potočniku in Mikel-u Pildain Leria. Razvoj in integracija sistema za regulacijo osvetljenosti prostora v okolju Interneta stvari Gregor Jeromel1, Grega Močnik1, dr. Marjan Golob1 Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko, Koroška cesta 46, 2000 Maribor E-pošta: gregor.jeromel@student.um.si, {grega.mocnik, marjan.golob}@um.si 1 Development and integration of a room illumination regulation system in Internet of Things environment This article describes the development and integration of an IoT system for regulation illumination in the workplace. It consists of a central device that connects to the Internet and controls the motors for blinds. The actuator for movement of the outer blinds is a stepping motor with a transmission and clutch. The system allows integration into any room in which external blinds are used. The main requirement for development was that the system operates independently. 1 Uvod Zaradi boljše dostopnosti elektronskih sklopov in napredka tehnologij na vseh nivojih, se vlaga vedno več razvoja tudi v avtomatizacijo bivalnih in delovnih prostorov. V prostore se vključujejo sistemi IoT, ki omogočajo vedno bolj prijazno in naravno interakcijo med uporabniki. Uporabniki v IoT okolju upravljajo s storitvami preko pametne naprave, ki je povezana v brezžično ali mobilno omrežje. IoT naprave s katerimi lahko uporabniki upravljajo, praviloma delujejo po vnaprej izdelanih režimih obratovanja, pri čemer je mogoče tudi spreminjanje parametrov in povratnih informacij. Povezava naprav z internetom omogoča tudi vključevanje umetne inteligence v storitev. Osvetljenost je poleg temperature in vlažnosti prostora ter svežega zraka ena od ključnih lastnosti za dobro počutje človeka, ki ustvarja. Ker v tem primeru ne velja, da je več bolje, je potrebno osvetljenost pravilno omejiti saj je lahko premočna ali preveč usmerjena svetloba moteča. Eden izmed načinov osvetlitve prostora je s pomočjo notranje razsvetljave s katero lahko osvetljujemo prostor ne glede na zunanjo naravno svetlobo. Drugi način je osvetljevanje prostorja s pomočjo dnevne svetlobe. Dnevna svetloba je za osvetlitev prostora varčna, saj ne uporablja električne energije. Hkrati je tudi okolje, ki ja na ta način osvetljeno, prijetnejše. Dnevna svetloba pa skozi čas nima enakomerne moči, kar nam daje razlog za razvoj sistema za regulacijo osvetljenosti prostora. 1.1 Opis problema Za zastiranje zunanje svetlobe se uporabljajo različni načini. Svetlobo lahko zastiramo s pomočjo zaves, rolet, notranjih ali zunanjih žaluzij. Zavese so na notranji strani oken in lahko delno prepuščajo svetlobo ali jo popolnoma zastrejo. Nimajo možnosti reguliranega ERK'2019, Portorož, 82-85 82 zastiranja po celotni površini, pomik pa je prečen glede na okno. Notranje žaluzije so sestavljene iz večjega števila segmentov, katerih kot se lahko spremeni. Vsi segmenti se lahko premikajo v vertikalni smeri okna, kar omogoči hitro spremembo osvetljenosti prostora. Rolete so nameščene na zunanji strani okna, njihov pomik je v vertikalni smeri okna. Ker nimajo rotirajočih segmentov kot žaluzije nimamo možnosti delnega zastiranja. Zunanje žaluzije so nameščene na zunanji strani oken in delujejo po enakem principu kot notranje, vendar so robustnejše zaradi zunanjih vremenskih vplivov. Cilj razvoja sistema je narediti motorsko krmiljene zunanjih žaluzij na treh oknih velikosti 6 m2 in regulirati osvetljenost v 35 m2 velikem prostoru z višino okrog 3,5 m. Namembnost prostora je laboratorij v katerem so 4 večja in 4 manjša delovna mesta. Direktiva narekuje, da mora biti na delovni površini v laboratoriju osvetljenost najmanj 500 lx [1]. Polna dnevna svetloba brez neposredne sončne osvetlitve znaša od 10000 in 25000 lx [1, 2]. Ker gre za avtomatizacijo procesa, se žaluzije premikajo s pomočjo aktuatorja, ki je v tem primeru koračni motor s prenosom. Prenos zagotavlja ustrezen navor za njihovo dvigovanje in spuščanje. Za merjenje osvetljenosti se uporablja fotoupor. Odvisnost upornosti na svetlobo je vhodni podatek v regulacijski sistem. Položaj senzorja v prostoru je določen na empiričen način in sicer z iskanjem povprečnega svetlobnega toka, kar nam omogoči enakomerno osvetljenost posameznega delovnega mesta. 1.2 Pregled in uporaba tehnologij Izraz Internet stvari (angl. Internet of Things - IoT) predstavlja koncept za povezovanje naprav med seboj in v internet s ciljem lažjega upravljanja z napravami in izboljšanja kakovosti bivanja [3]. Koncept IoT je torej namenjen povezovanju velikega števila naprav, ki med seboj komunicirajo preko interneta. Naprave se povezujejo v omrežje internet kot samostojne komponente, vendar pošiljajo oziroma prejemajo informacije iz skupnega naslova kamor so prijavljene. Naprave se lahko povezujejo v omrežje internet preko različnih brezžičnih ali žičnih protokolov. Če se naprave niso sposobne povezati neposredno na splet se najprej povežejo na komunikacijske prehode med uporabljenim fizičnim slojem IoT in interneta [4]. Internet predstavlja v konceptu IoT orodje, ki nam omogoča dostopnost naprav na globalnem nivoju. Informacije vseh naprav se lahko stekajo na eno ali več zbirnih strežnikov, ki so lahko na poljubnih geografskih lokacijah. Med množico tipično uporabljenih protokolov za sisteme IoT kot so, CoaP, MQTT, BLE, smo izbrali MQTT [5], zaradi enostavne implementacije in uporabe. Za zbiranje podatkov se uporabi strežnik MQTT, na katerega naprave objavljajo podatke in se naročajo. Naprave podatke objavljajo na določene teme, vse prijavljene naprave lahko pridobijo podatke iz tem na katere so prijavljene [6]. Pogosto strežnik MQTT nastopa kot del oblačne platforme znotraj katere so še realno časovna podatkovna zbirka in ostali mehanizmi, ki so aplikativno odvisni. Pri razvoju strojne programske opreme si lahko pomagamo z uporabo operacijskih sistemov za vgrajene sisteme. Operacijski sistem ponuja že implementirane komunikacijske sklade, s tem omogoči hitrejši razvoj strojne programske opreme za vgrajene sisteme. Eden izmed znanih je mbedOS [7]. Delno odprtokodni operacijski sistem za vgrajene sisteme je namenjen za razvoj naprav v konceptu IoT. Operacijski sistem je plod razvoj podjetja ARM MBED [7]. Glavne značilnosti so povezovanje preko protokola IP, RTOS in gonilniki za strojno periferijo. Naprave, ki so del okolja IoT se med seboj lahko povezujejo na različne načine. Najpogostejši način povezovanja naprav je Bluetooth [8], saj ga je v letu 2018 uporabljalo kar 4 milijarde naprav [9]. V praksi se vse pogosteje uporablja Bluetooth Low Energy ali energijsko varčen Bluetooth, ki je osebna brezžična povezava [9]. Bluetooth Low energy je namenjen je predvsem za sisteme, ki so baterijsko napajani. Zelo znane so tudi tehnologije povezovanja v pod gigaherčnem pasu, saj z izbiro nizke frekvence omogočajo manjšo porabo energije [10, 11]. Eden izmed načinov je WiFi [8] in je najbolj razširjen brezžični protokol, ki se uporablja za povezovanje naprav v omrežje. Ker bo naprava na stalnem napajanju, visoka porabe energije v primerjavi z IoT protokoli ni ključnega pomena. WiFi deluje na frekvenčnem pasu 2,4 GHz, vedno bolj razširjen je tudi na 5 GHz frekvenčnem pasu [8]. Izbira slednjega sicer omogoča večji prenos podatkov vendar ima manjši doseg [8]. Za povezavo sistema za regulacijo osvetljenosti in pošiljanje podatkov na strežnik MQTT je bil izbran WiFi, ki ni ravno energijsko varčen, vendar smo ga izbrali zaradi že implementiranega omrežja v izbranem prostoru. Prav tako sistem ni baterijsko napajan, kar pomeni, da ni potrebno varčevanje z energijo. V tem primeru komunikacijski prehod ni potreben. Omejitev uporabe sistema predstavlja le dostopnost brezžičnega omrežja WiFi in zunanje žaluzije na oknih v prostoru. 2 Razvoj strojne opreme sistema Razvoj strojne opreme je potekal po sklopih, ki so pokrivali zahteve sistema za regulacijo osvetljenosti prostora. Za sistem sta bistvena dva sklopa, regulacijski in povezljivostni sklop. Regulacijski sklop omogoča regulacijo osvetljenosti na podlagi vhodnih parametrov. Povezljivostni sklop je namenjen za povezovanje sistema v internet. Podrobna zgradba strojne opreme je vidna na 83 sliki 1. Strojna oprema se je načrtovala v programskem okolju AltiumDesigner 17.0 [12]. Slika 1. Zgradba strojne opreme sistema za regulacijo osvetljenosti Na sliki 1 so s številkami predstavljeni tudi strojni vmesniki, to so fizične povezave med sklopi, po katerih poteka komunikacija ali napajanje. Slika 2. Strojni elementi: a) sklopka, b) nosilec motorja, c) ohišje za elektronsko vezje V sklopu strojne opreme je bilo potrebno razviti tudi strojne elemente (slika 2), ki so omogočali namestitev sistema za regulacijo osvetljenosti. Strojni elementi, ki so bili razviti so bili sklopka (slika 2a), preko katere je motor vrtel os ročice za žaluzije, nosilec motorja (slika 2b) in ohišje za elektronsko vezje (slika 2c). Strojni elementi so bili razviti v programskem okolju SolidWorks 2018 [13]. Izdelavo strojnih elementov nam je omogočil 3D tiskalnik. Izdelano tiskano vezje je razvidno na sliki 3. Na sliki 3 so vidni tudi posamezni sklopi, ki so bili integrirani na tiskano vezje. 2.1 Napajalni sklop Sistem ima dva napajalna dela in sicer za krmilni del in dela za motorje. Krmilniški del se napaja preko mini USB priključka ali napajalne letve. Na sliki 1 to predstavlja oznaka 2a. Za napajanje krmilnega dela na vezju je dodan napetostni stabilizator, ki zniža in stabilizira napajalno napetost na 3,3 V (na sliki 1 oznaka 2b). Napajalni del za motorje ima priključek, nanj se lahko priključi zunanji napetostni vir (na sliki 1 oznaka 8) z nazivno napetostjo in tokom 24 V/6 A. 2.2 Krmilniški sklop V krmilniškem sklopu je mikrokrmilnik STM32L152RE [14], ki se uporablja predvsem v aplikacijah, ki so baterijsko napajane. Izbran tip je arhitekture ARM Cortex M0+. Mikrokrmilnik se programira preko mini USB konektorja v načinu DFU [15], za kar poskrbi vmesnik z oznako 1 na sliki 1. V ta del spada tudi stikalo s katerim izbiramo dva načina delovanja krmilnika, programiranje ali normalno obratovanje. Dodani so tudi priključki za JTAG in I2C. Priključki JTAG omogočajo programiranje strojne programske opreme, ko način DFU ni mogoč [16]. Priključek za I2C je namenjen dodajanju naprav, ki delujejo na istoimenskem vodilu. 2.3 Sklop za brezžično komunikacijo WiFi V sklopu za brezžično komunikacijo je sistem na čipu SoC (angl. System-on-Chip), ESP WROOM 02 [17], ki je sestavljen iz procesorja ESP8266EX in radiofrekvenčnega dela, ki je namenjen za povezavo v brezžično omrežje WiFi. Sklop za brezžično komunikacijo WiFi s krmilniškim sklopom komunicira preko serijskega protokola UART [17], strojni vmesnik 3 na sliki 1. 2.4 Senzorski sklop motorja. Izračunana vrednost 0,913 V se nastavi z spremenljivim uporom. Z manjšanjem največjega toka skozi tuljavo manjšamo navor motorja. 2.7 Koračni motor s prenosom Koračni motor 42STH38 [21] ima bipolarno vezavo navitij. Poln zasuk osi motorja je 200 korakov, en korak pa je enak 1,8° zasuka osi. Naziven tok znaša 1,68 A. Navor, ki ga proizvede je 0,36 Nm, kar je premalo za dviganje in spuščanje zunanjih žaluzij. Za povečanje navora je dodan planetarni prenos, ki ima prestavno razmerje 1:14, s tem se tudi zmanjša kot zasuka osi na 0,13°, navor pa se poveča 3,3 Nm. Navor koračnega motorja se na izhodu prenosa poveča za faktor 9 in ne za 14, kar pripisujemo posledici notranjih izgub prenosa, ki se pojavijo zaradi trenja med zobniki in zobniško osjo. Z izbiro prestavnega razmerja se zmanjša kotna hitrost na osi prenosa. Senzorski sklop zagotavlja spremljanje okoliških parametrov kot sta temperatura in vlaga ter osvetljenost. Sklop ima dva senzorja. Senzor HTS221 [18] meri temperaturo in relativno vlago. Za merjenje osvetljenosti je uporabljen svetlobno občutljiv upor LDR [19], kateri je vezan kot delilnik napetosti z uporom enake vrednosti. Senzorski sklop komunicira s krmilniškim sklopom na dva načina preko I2C vodila (9 vmesnik na sliki 1) in z merjenjem analogne napetosti (11 vmesnik na sliki 1) na svetlobno občutljivim uporom. 2.5 Sklop za interakcijo z uporabnikom in končna stikala Sklop ima tri tipke in tri LED, ki se lahko uporabijo za uporabniško interakcijo. V tem sklopu je tudi 6 končnih stikal s katerimi omejujemo delovanje motorja. Krmiljenje LED, detekcija tipk in končnih stikal poteka preko digitalnih izhodov in vhodov krmilnega sklopa, vmesnika 4 in 5 na sliki 1. 2.6 Gonilniki motorjev Sklop za gonilnike motorjev vsebuje tri gonilnike A4988 [20], ki se uporabljajo za krmiljenje bipolarnih koračnih motorjev. Napajanje motorjev je od 8 do 35 V. Največji dovoljeni trajni tok, ki lahko teče skozi gonilnik je 2 A. Gonilniki prenesejo tokovni sunek do 4 A. Nastavitev največjega še dovoljenega toka skozi tuljavo koračnega motorja se nastavi preko spremenljivega upora. Gonilnik vzdržuje nastavljen tok ne glede na hitrost vrtenja zaradi tega dobimo časovno konstanten navor. Gonilniki motorjev komunicirajo preko digitalnih izhodov s krmilniškim sklopom (vmesnik 6 na sliki 1). Tok, ki ga gonilnik zagotavlja omejimo glede na nazivne vrednosti izbranega motorja (1,68 A). Tok nastavljamo posredno preko referenčne napetosti na spremenljivem uporu. Enačba (1) opisuje izračun referenčne napetosti s katero omejimo tudi tok. 𝑉𝑟𝑒𝑓 = 8 ∙ 𝐼𝑚𝑎𝑥 ∙ 𝑅𝑐𝑠 (1) 𝑉𝑟𝑒𝑓 je referenčna napetost, ki se nastavi na potenciometru. 𝐼𝑚𝑎𝑥 je največji dovoljen tok, ki ga gonilnik mora zagotavljati za krmiljenje motorja, vrednost je enaka nazivni vrednosti tok koračnega 84 Slika 3. Izdelano tiskano vezje sistema za regulacijo osvetljenosti, 1: Krmilniški sklop, 2: svetlobno spremenljiv upor, 3: Povezljivostni sklop (ESP), 4: Senzor za temperaturo in vlago, 5: Diode LED, 6: Gonilniki koračnih motorjev, 7: Priključek za napajanje koračnih motorjev, 8: Priključki za koračne motorje, 9: Priključki za končna stikala 2.8 Postopek meritve in izračun potrebnega navora za premikanje žaluzij Postopek meritve navora je bil izveden tako, da se je na rotacijsko os žaluzij pritrdila potezna tehtnica s katero se je merila sila potrebna za premik četrtine kotnega zasuka osi žaluzije. Os žaluzij je bila postavljena pravokotno glede na silo potrebno za zasuk. Dolžina osi je 25 cm. Sila s katero se je os žaluzij premaknila za polni obrat je okrog 5 N. Potreben navor je bil izračun z enačbo (2). 𝐹 ∙𝑙 𝐹𝑁 = 𝑅 𝑅 (2) 1 V enačbi (2) predstavlja 𝐹𝑅 , silo za premik ročice, 𝑙𝑅 , dolžino ročice. Izračunan navor za zasuk ročice je 1,25 Nm, kar nam daje potrditev o ustrezni izbiri koračnega motorja (3,3 Nm). 3 Razvoj programske opreme sistema Strojna programska oprema se je razvijala po sklopih, s katerimi je bilo mogoče zagotoviti delovanje posameznega strojnega sklopa. Strojna programska oprema se deli na tri dele, povezljivostni, regulacijski in glavni proces. Na sliki 3 je prikazana blokovna shema strojne programske opreme, iz katerega so vidni glavni, ter znotraj le teh pomožni procesi. tako, da mu lahko nastavljamo parametre za regulacijo, ki so urnik našega delovnega časa in jakost željene osvetljenosti. S povezavo sistema z urnikom dosežemo, da nas čaka že primerno osvetljen prostor, ko vstopimo vanj. V prvi verziji sistema je bila uporabljena histerezna regulacija. Tovrsten sistem omogoča integracijo ostalih načinov regulacijo kot je mehka regulacija ali PID. Uporaba tovrstnih regulacij bi omogočila bolj zvezen prehod med stanji, kar naredi boljšo uporabniško izkušnjo. Izdelan sistem nam daje tudi možnosti nadgradnje s sistemom za odpiranje oken. Literatura Slika 3. Blokovna zgradba strojne programske opreme 3.1 Povezljivostni proces Povezljivostni proces vsebuje programske vmesnike za povezavo sistema v internetno omrežje preko WiFi. Z mrežnim protokolom TCP vzpostavimo zanesljivo povezavo s strežnikom MQTT. V našem primeru je najprimernejši MQTT protokol. Kjer se podatki pošiljajo na strežnik-posrednik (angl. broker) na način prijavi-objavi. Gre za organizirano pošiljanje podatkov na strežnik, kjer ima vsak poslan podatek pripono h kateri temi na strežniku pripada. Pri poizvedovanju za podatek iz strežnika se moramo na temo prijaviti. Znotraj povezljivostnega procesa je sklop vmesnik med slojem TCP in MQTT. Ta podsklop prenaša podatke do sklopa za brezžično komunikacijo WiFi znotraj katerega je ESP modul. Ta sklop zagotavlja podpora komunikacijskim protokolom od transportnega do fizičnega sloja [22]. 3.2 Regulacijski proces Proces vsebuje vmesnike, ki upravlja z digitalnimi vhodi in izhodi mikrokrmilnika. Vsebuje gonilnike za I2C komunikacijsko vodilo s katerim komuniciramo s senzorjem temperature in vlage HTS221, gonilnike za ADC pretvorbo in gonilnike za 1-Wire protokol. V regulacijskem procesu je tudi regulacijska zanka, ki ima vhodne parametre, odločitveni model ter povratno zanko. 3.3 Glavni proces Povezuje regulacijski in povezljivostni proces s pretočnostjo podatkov v obe smeri. Tu se podatki dobljeni iz obeh procesov obdelajo in pripravijo za izmenjevanje med ostalima procesoma. 4 Zaključek Z regulacijo osvetljenosti s pomočjo premika žaluzij smo dosegli, da je delovna površina v prostoru ves čas enakomerno osvetljena. Sistem smo v okolje integrirali 85 [1] SIST EN 12464 ‐ Razsvetljava na delovnem mestu. [2] Paul Schlyter, Radiometry and photometry in astronomy FAQ (2006) [3] Wigmore, I. . Internet of Things (IoT). TechTarget. [4] Want, Roy; Bill N. Schilit, Scott Jenson (2015). Enabling the Internet of Things. pp. 28–35. [5] Pal, Arpan (May – June 2015). Internet of Things: Making the Hype a Reality. IT Pro. [6] ISO/IEC 20922:2016 Message Queuing Telemetry Transport (MQTT) v3.1.1. June 15, 2016. [7] https://www.mbed.com/, Dostopno: 15.7.2019 [8] Bluetooth Range, bluair.pl. Dostopno: 15.7.2019 [9] https://www.bluetooth.com. Dostopno: 15.7.2019 [10] Johnson, Richard (1984). Antenna Engineering Handbook (2nd ed.). McGraw-Hill. [11] Friis, H.T. (May 1946). A Note on a Simple Transmission Formula. IRE Proc.: 254–256. [12] https://www.altium.com/, Dostopno: 15.7.2019. [13] https://www.solidworld.si/, Dostopno: 15.7.2019. [14] https://www.st.com/resource/en/datasheet/stm32l15 1qe.pdf, Dostopno:15.7.2019. [15] STM AN3156-Application note USB DFU protocol used in the STM32 bootloader [16] https://www.xjtag.com/about-jtag/what-is-jtag/outjtag/what-is-jtag/, Dostopno: 15.7.2019. [17] https://www.espressif.com/sites/default/files/docum entation/0c-esp-wroom-02_datasheet_en.pdf, Dostopno: 15.7.2019 [18] https://www.st.com/resource/en/datasheet/hts221.pd f, Dostopno: 15.7.2019. [19] https://www.kitronik.co.uk/blog/how-an-ldr-lightdependent-resistor-works/, Dostopno: 15.7.2019. [20] https://www.pololu.com/product/1182, Dostopno: 15.7.2019. [21] http://www.electronica60norte.com/mwfls/pdf/MOT ORES_PASOA_PASO.pdf, Dostopno: 15.7.2019. [22] https://www.electronicdesign.com/what-sdifference-between/what-s-difference-between-osiseven-layer-network-model-and-tcpip, Dostopno: 15.7.2019. Dogodkovno proženje regulatorja drsnega režima pozicionirnega sistema Andrej Sarjaš1, Dušan Gleich1 1 University of Maribor, Faculty of Electrical Engineering and Computer Science, Smetanova 17, 2000 Maribor, Slovenia E-pošta: andrej.sarjas@um.si Abstract. The paper describes an event-triggering control-ETC approach using Sliding mode controllerSMC for the positioning system. An event-triggering scheme with SMC ensures that the sliding variable remains bounded in the prescribed region, despite the presence of extern disturbance. Furthermore, the sliding variable in the sliding phase remains confined in the vicinity of the sliding manifold. The prescribed region of the sliding variable depends on the selection of the triggering condition and tracking accuracy of the positioning system. The relation with triggering bound and minimal inter-event time is given. The efficiency of the proposed method ETC-SMC is confirmed with the results on the real positioning system. 1 Uvod Vodenje po načinu drsnega režima (Sliding mode control-SMC) je učinkovit pristop, ki zagotavlja predpisane performance zaprto-zančnega sistema, kljub prisotnosti zunanjih motenj ali odstopanje sistema [1]. Glede na strukturo vodenja, je regulator drsnega režima preprost za implementacijo in ne zahteva veliko računskega časa. V sistemih realnega časa, so vsi regulatorji implementirani v diskretni obliki, ki rezultira hibridni sistem, kjer sta zvezni in diskretni sistem med seboj povezana. Najpogosteje uporabljena tehnika implementacije regulatorja je način časovnega proženje. Časovno proženje pomeni, da se izhod regulatorja posodablja v ekvidistančnih časovnih intervali, kjer ta čas imenujemo čas tipanja. Takšen zaprto-zančni sistem je preprosteje načrtati ter analizirati, iz drugega vidika je manj ekonomičen in zahteva konstanten računski vir [2]. Dogodkovno proženje (Event-Triggering-ET) zaprtozančnega sistema ponuja alternativo zgoraj opisanemu pristopu. Glede na časovno proženje sistema, se zaprtozančni sistem posodablja le takrat, ko je to potrebno ter predpisano s pravilom proženja. Z drugimi besedami, se regulator posodablja le takrat, ko so stanja sistema izven predpisanega področja, kar pomeni, da se regulator več ne posodablja s konstantnim časom tipanja. Takšna implementacija zaprto-zančnega vodenja je učinkovitejša, napram klasični implementaciji ter zahteva manj računskih operacij krmilnega sistema. V tem primeru lahko krmilni sistem izvaja več operacij hkrati. Dogodkovno proženje je prav tako uporaben pristop zaprto-zančnega vodenja preko omrežja (Networked control system-NCS), kjer s prožilnim mehanizmom znižamo uporabo omrežje in tako ERK'2019, Portorož, 86-89 86 zmanjšamo pošiljanje podatkov, ki so potrebni za zanesljivo delovanje zaprto-zančnega sistema [3]-[6]. ET pristop lahko tudi uporabimo kot način, kako implementirati vodenja na sistem, kjer so zmogljivosti sistema omejene. V predstavljenem prispevku bomo predstavili sintezo regulatorja po metodi drsnega načina, kjer bomo vpeljali tehnike ET-ja. Vpeljava ET-ja zahteva dodatno analizo stabilnosti drsne spremenljivke v času med proženjem ter stabilnost celotnega zaprto-zančnega sistema, glede na prag proženja [7]-[8]. Predstavljen pristop vpeljuje izbiro praga proženja ter posledično natančnost zaprtozančnega sistema. Sinteza regulatorja je razdeljena na dva koraka. V prvem koraku načrtamo regulator po metodi drsnega režima, v drugem koraku vpeljemo tehniko ET-ja s pragom proženja, napako vodenja ter minimalnim operativnim časom med dvema proženjema. Minimalni operativni čas predstavlja najkrajši čas, ki je potrebne za posodobitev regulatorja. Rezultati vodenja so predstavljeni na realnem pozicionirnem sistemu z PMDC motorjem. 2 Regulator drsnega režima Za sintezo regulatorja drsnega režima uporabimo model pozicionirnega sistem, x1 = x2 (1) x2 = −bx2 + gv + d , kjer je x1 - pozicija, x2 - hitrost, v - vhod in d - motnja in negotovost sistema. Koeficienta modela b, g izpolnjujeta pogoj 0  b, g   . Za namene sledenja referenčnih vrednosti, model (1) preoblikujemo na način, da uvedemo nove spremenljivke; 1 = xd − x1 , 2 = xd − x2 .Spremenljivka xd predstavlja želeno vrednost, xd pa njen odvod. Preoblikovan model, 1 =  2  2 = −b 2 − gv − d + xd + bxd , (2) kjer je  = 1 , 2  . Za načrtovanje SMC vodenja T izberemo −d (t ) + xd (t ) + bxd (t ) = d (t ) , kjer velja, da je sup t 0 d ( t )   d  . Izberemo spremenljivko drsnega režima, s = c , s = c11 + 2 , (3) kjer je c = c1 1 , c1  0 . Odvod drsne spremenljivka (3) je, s = 2 + c11 = (4) = ( c1 − b ) 2 − gv + d  0. v=g (( c 1 1 2 stabilnosti izberemo Ljapunovo funkcijo V = s 2 ,za interval t tn , tn+1 ) , kjer je n  Ob upoštevanju (4) in d   , določimo regulator drsnega režima, −1 Dokaz: Preden začnemo, vpeljemo nove spremenljivke e1 (t ) = 1 (t ) − 1 (tn ) , e2 (t ) = 2 (t ) − 2 (tn ) in e(t ) =  (t ) −  (tn ) . Za test − b) 2 +  sign ( s )) , 0 .Odvod Ljapunove funkcije je, ( ) V = ss = s ( c1 − b ) 2 − gv + d . (10) (5) Vstavimo regulacijsko pravilo (7) in dobimo, kjer je   d . Po načrtanem regulatorju drsnega režima vpeljemo ET-pristop, kjer upoštevamo zaprtozančno strukturo podano (4),(5). Ker regulacijsko pravilo vsebuje nelinearni člen, je potrebno rešitev diferencialne enačbe (zaprto-zančni sistem) vrednotiti po načinu Filippov-a [1]-[2]. ( ( c − b )  ( t ) − gv (t ) + d (t ) ) = s ( ( c − b )  ( t ) − ( c − b )  ( t ) −  sign ( s ( t ) ) + d ( t ) ) = s ( ( c − b ) ( ( t ) −  ( t ) ) −  sign ( s ( t ) ) + d ( t ) ) V =s 1 1 1 2 n 2 1 2 2 2 n n n n  s ( c1 − b ) ( 2 ( t ) −  2 ( tn ) ) − s  + s  d e2 (t)  s ( c1 − b ) e2 ( t ) − s  + s  d 3 Dogodkovno proženje regulatorja drsnega režima  s  − s  + s d  − s (  −  − d ) V tem poglavju bomo predstavili dogodkovno proženje regulatorja drsnega režima. Potrebno je omeniti, da diskretna implementacija SMC-ja ne more popolnoma doseči drsnega režima s = 0 in tudi ostati v drsni ravnini. Vzrok, da sistem ne doseže s = 0 , je posodobitev regulatorja, kot posledica, kadar se drsna spremenljivka odmika drsni ravnini v drsnem režimu. Kot rezultat temu, dobimo kvazi-drsni režim pri čemer je drsna spremenljivka omejena s  ,   +  , kjer je  funkcija časa tipanja in motnje  d . Nadalje se bomo omejili na dogodkovno proženje, kjer bo pas  predhodno določen, kot prožilni mehanizem in čas posodobitve regulatorja ne bo fiksno določen. Dogodkovni SMC regulator med dvema zaporednima posodobitvami določimo kot, v ( t ) = g −1 (( c 1 ) − b ) 2 ( tn ) +  sign ( s (tn ) ) , (7)  − s . Kjer je   0 . Ob upoštevanju pogoja (9) ter sign ( s(tn ) ) = sign ( s (t ) ) , lahko predpostavki, da je sklepamo, da se drsna spremenljivka bliža s = 0 . Zgoraj navedeno drži, če je v trenutku proženja e2 ( tn ) = e2 ( t ) = 0 . Drsna spremenljivka je omejena s pasom  , ki ga določimo kot, s ( t ) − s ( tn ) = c ( t ) − c ( t n ) = c e  c k e2 k c ( c1 − b ) Upoštevamo, da je (10)  = k. e2  e , kjer velja k e2 = e . ( c1 − b )  2 2 kjer je tn čas zadnje posodobitve in t trenuten čas, pri Parameter k je definiran kot, k = 1 + čemer velja t tn , tn+1 ) . je parameter  definirana, kot supt  0 Teorem 1: Uporabimo model (2) ter spremenljivko drsnega režima (3). Izberemo   ( 0,  ) tako, da velja proženja je določeno s pogojem (8), pogoj (8) za t  0 , ( c1 − b ) e2 ( t )   . −1 Kvazi-drsni režim je dosežen, če je ojačenje regulatorja izpolnjuje pogoj,    + d . drsne spremenljive je;  =   , s = c  k   . Pravilo e2 (t )   ( c1 − b) . (8) (9) 87 , kjer 2 e1 (t )     . Pas (11) Po dokazu stabilnosti drsne spremenljivke je potrebno dokazati tudi stabilnost celotnega zaprto-zančnega sistema, glede na drsno spremenljivko s . Upoštevamo povezavo  2 = s − c11 ter vstavim v (2). 1 = s − c11 (12) 1 2 Določimo funkcijo Ljapunova V = 12 , kjer je odvod d e ( t )  Ac ( t ) − Bc  sign ( s ( t n ) ) + Bd d ( t ) dt = Ac ( e ( t ) +  ( tn ) ) − Bc  sign ( s ( tn ) ) + Bd d ( t ) V enak,  Ac e ( t ) + Ac  ( tn ) + Bc  + Bd  d . V = 11 = 1 ( s − c11 ) Rešitev diferencialne enačbe z začetnim pogojem e ( 0 ) = 0 je enaka,  1  = −c1 1  1 − s  . c 1   Ob upoštevanju pogoja (8), sistem je stabilen glede na spremenljivko 1 , če je izpolnjeno 1 − c1−1 s  0 . To pomeni, da je spremenljivka 1 omejena s pogojem, 1  k c c1 ( c1 − b ) . (13) e (t )  Določitev dopustnih parametrov se nanaša na določitev vrednosti, ki so primerne za implementacijo dogodkovno proženega sistema. Iz prej navedenega, je smiselno upoštevati natančnost vodenja, ki je podana s pogojem (13). Iz pogoja (13) je razvidno, da natančnost zaprto-zančnega sistema povečujemo z izbiro višje dinamike drsne spremenljivke, kar pomeni, da povečujemo koeficient c1 . Na drugi strani z določitvijo pasa proženja  znižujemo natančnost vodenja. Smiselno je določiti najkrajši čas proženja, ki ga sistem potrebuje za posodobitev regulacijskega pravila. Dogodkovno proženje namreč ni odvisno od časa tipanja, ampak od določenega praga proženja (8). Za določitev minimalnega časa proženja, bomo analizirali napako spremenljivk trenutne vrednosti ter vrednosti zadnjega časa proženja. d d d  1 (t ) − 1 (tn )  d  1 (t )  e (t )  e (t ) =  (t ) −  (t )  =   dt dt dt  2 dt  2 (t )  2 n  (14) V izrazu (14) upoštevamo, da je sprememba prejšnjega proženja  (tn ) = 0 . V izraz (14) vstavimo (2) in (7). 0 1  0 0 0 d e (t )     ( t ) + 0 1  d ( t ) −  g  v ( tn ) 0 − b dt       0 1  0 0  0 −b   ( t ) + 0 1  d ( t )     =  0  −1 −   g ( c1 − b )  2 ( tn ) +  sign ( s ( tn ) ) g ( Ac (e Ac ( t − tn ) ) −1 . (15) Iz pogoja je tako možno izraziti minimalni čas med dvema zaporednima posodobitvama regulatorja, kjer upoštevamo da je t − tn =  . Minimalni čas posodobitve je,  min  4 Določitev dopustih parametrov Ac  ( tn ) + Bc  + Bd  d  1 ln  Ac  ( c1 − b )  (A c k  Ac  ( tn ) + Bc  + Bd  d )  + 1 .   Iz izraza (16) je razvidno, da je minimalni čas odvisen od izbire praga proženja  , maksimalne vrednosti odstopanja stanja 1 → e1 podan s koeficientom  ter izbiro parametrov c1 in  . Pri določitvi parametra c1 je potrebno upoštevati pogoj c1  b . 5 Rezultati Za vodenje smo uporabili naslednje parameter modela ter regulatorja. Tabel 1. Parametri modela ter regulatorja. parametri vrednost b 3.3 g 0.897 d 7.7 c1 12.4  22.5  20  11.5 Preizkus vodenja smo izvedli na mikro-krmilniku družine STM ARM32F429 in motorju z napajalno napetostjo 12V ter maksimalnim tokom 3.5A. Preverjanje pogoja (8), se je izvajal v ciklu 1ms. Rezultati vodenja so prikazani na naslednjih slikah. ) 0 1  0 0 0 =    ( t ) + 0 1  d ( t ) − 1   sign ( s ( tn ) ) . 0 − c      1 Ac Bd Bc Diferencialna enačba je, Slika 1: Vodenje pozicije v ET-SCM načinu. 88 (16) Slika 2: Drsna in prožilna spremenljivka v ET-SCM načinu. Slika 7: Izhod regulatorja s SMC regulatorjem. Slika 3: Izhod regulatorja v ET-SCM načinu. Slika 8: Čas tipanja. 6 Zaključek Slika 4: Čas posodabljanja regulatorja v ET-SCM načinu. Primerjava SMC vodenja v klasičnem načinu s časom tipanja 1ms. V prispevku smo predstavili dogodkovno proženje regulatorja drsnega režim. Iz rezultatov je razvidno, da ET način potrebuje bistveno manj računskih kapacitet, kot klasična implementacija SMC vodenja, slika 4 in slika 8. Poudariti je potrebno, da sta odziva skoraj identična, vendar napaka vodenja je višja v ET načinu. Glede na predhodno določeno napako vodenja je možno izbrati pogoj proženja. Prav tako je možno določiti minimalni čas posodabljanj regulatorja (16) in na osnovi tega določiti prag proženja in ojačenje regulatorja. Literatura [1] Utkin, V. I.:Sliding modes in control and optimization. New York: Springer-Verlag, 1992 [2] Aström K. J.,Event based control. In A. Astolfi and L. Marconi (Eds.), Analysis and design of nonlinear control systems (pp. 127–147). Berlin, Heidelberg: Springer, 2006 Slika 5: Vodenje pozicije s klasičnim SMC regulatorjem. [3] Heemels, W. P. M. H., Sandee, J. H., & Van Den Bosch, P. P. J., Analysis of event-driven controllers for linear systems. International Journal of Control, 81(4), 571–590. doi: 10.1080/00207170701506919, 2008 [4] Behera, A. K., Bandyopadhyay, B.;Event-triggered sliding mode control for a class of nonlinear systems. International Journal of Control, 89(9), 1916–1931. doi: 10.1080/00207179.2016.1142617, 2016 [5] Cucuzzella, M., Ferrara, A., Event-triggered second order sliding mode control of nonlinear uncertain systems. Proceedings of European control conference (pp. 295–300), Aalborg, Denmark, 2016 Slika 6: Drsna spremenljivka s klasičnim SMC regulatorjem. [6] Cucuzzella, M., Ferrara, A.: Practical second order sliding modes in single-loop networked control of nonlinear systems. Automatica, 89, 235–240. doi: 10.1016/j.automatica.2017.11.034, 2018 [7] M. Cucuzzella, G. P. Incremona, A. Ferrara: Event-triggered variable structure control, International Journal of Control, https://doi.org/10.1080/00207179.2019.15759772019, 2019 [8] Furtat, I., Orlov, Y., Fradkov, A.: Finite-time sliding mode stabilization using dirty differentiation and disturbance compensation. International Journal of Robust and Nonlinear Control, 29(3), 793–809. doi: 10.1002/rnc.4273, 2019 89 Learning-based local navigation in dynamic environments Matej Dobrevski, Danijel Skočaj Fakulteta za računalništvo in informatiko Univerza v Ljubljani, Večna pot 113, 1000 Ljubljana E-pošta: matej.dobrevski@fri.uni-lj.com Abstract Safe navigation is a crucial capability of mobile robots. Unstructured environments with moving obstacles are especially difficult to navigate in. In this paper we train a neural-network-based reinforcement-learning model to perform local navigation and planning in environments containing moving pedestrians. We evaluate our approach against the standard Dynamic Window Approach (DWA) and show that we can outperform it in presence of dynamic obstacles. 1 Introduction Mobile robot navigation is an enabling technology for the development of machines that can operate autonomously in unstructured environments. As such, it has received a substantial amount of interest in the research community [6, 4, 18, 12]. Systems for planning the movement of robots in complex environments are usually organized in two stages: a global planner and a local planner. The global planner has access to a map of the whole environment and plans efficient paths to the goal location. The local planner has access to the on-board sensors and insures that the robot follows the global path while reacting to any changes in the environment, such as new obstacles. The local planner can also serve as a control algorithm, directly generating motor movement commands. Local planning is especially significant since for some environments maintaining an accurate map can be impractical or impossible, because of frequent changes or lack of identifiable features. In such cases we can obtain the position of the robot and the goal in the environment with the use of an external localization system, such as GPS, indoor localization beacons, marker detection or another method. In those kinds of environments it is possible to navigate using a local planner. For local planners one of the most difficult tasks is to plan movement in the presence of dynamic obstacles. While there has been a significant amount of research on this topic, most approaches assume the knowledge of the position and velocity of all the dynamic obstacles in the environment [5, 18, 2], which requires an additional step of perception in the navigation method. In this research we model the problem of navigation as a Markov Decision Process (MDP) and train a neu- ERK'2019, Portorož, 90-93 90 ral network to perform local navigation/planning in environments densely populated with humans, directly from sensor inputs, joining the steps of perception and navigation in a single network. The network is trained in a reinforcement learning (RL) setting using the state of the art Proximal Policy Optimization (PPO) [16] algorithm. The learning is performed in a simulator with different stages which contain realistically simulated human crowds. We evaluate our method against the established Dynamic Window Approach (DWA) to local planning [6] and show that in the presence of dynamic obstacles it achieves superior results. 2 Related work Local navigation has been a long studied field in robotics. Among the most significant approaches to local navigation are the DWA [6], the potential field methods [4] and Velocity obstacles [5] which have spawned numerous extensions and modifications such as the Global Dynamic Window Approach [3], Convergent Dynamic Window Approach [12], Harmonic Potential Functions [8], Reciprocal Velocity Obstacles [18] and many more. The approaches which consider dynamic obstacles assume the knowledge of the position and velocity of all the moving obstacles in the scene, while we assume only the access to the range scanner of the robot and its global position relative to the goal. In recent years learning based approaches have become popular. In [13] the authors trained a neural network to map laser range measurements and the relative goal position to control commands. However, they use expert demonstrations for training the network in a supervised manner, which can be impractical. Furthermore, they do not address dynamic obstacles. Reinforcement learning has been extensively applied to the problem of navigation. Until recently these approaches [1, 9, 19] have mainly relied on severe discretizations of the environment which can severely limit the accuracy and precision of the navigation. Recently, following the improvement of the techniques for training neural networks in a reinforcement learning setting [11, 10, 15, 16], several approaches have been proposed, which perform robot navigation directly from sensor readings. In [14] a variant of Q-learning was used to generate safe commands on the basis of a single image. An obsta- cle avoidance network was trained using the dueling and double-Q learning techniques in [20]. In [21] the authors developed a visual navigation method for known scenes. The work done in [17] is most closely related to our approach, however in their work they do not consider dynamic obstacles in the environment. 3 to the Generelized Advantage Estimation (GAE) algorithm shares the same design, with the difference being in the output layer, where there is only one linear output. Learning a navigation policy 3.1 Navigation as a RL problem We model the problem of navigation in dynamic environments as an MDP defined with (S, A, R, T, γ), where: • S defines the set of all possible observations. In our case an observation s ∈ S consists of three consecutive laser-scans of the environment (64 measurements in a 240◦ angle) together with the distance and angle to the goal location as well as the current velocity of the robot. • A defines the set of all possible actions. For out differential drive robot A = {(v, w)|v ∈ [0, 0.5], w ∈ [−2, 2]}, where v is the transnational and w is the angular speed of the robot. • The reward function R : S → R is constructed such that the robot receives a reward of −0.1 for each time-step, a reward of −120 for a collision with an agent or the environment, and a reward of 100 for reaching the goal. • The transition function T : S×A → S defines how the states evolve, and is implicitly defined by the simulator we use for learning, the robot dynamics and the sensor readings. • The discount factor γ is set to γ = 0.99. Figure 1: The design of the policy network. Three convolutional layers followed by 5 fully connected ones. The input are three consecutive laser scans, the angle and distance to the goal as well as the current translational and rotational speeds, which are joined with the 2nd fully connected layer. 3.3 Training In order to learn the navigation policy we perform a curriculum learning procedure in two phases. In the first phase the robot is put in a polygon without any obstacles besides the walls of the room (Figure 2 left). The goal location is generated randomly [0, 3]m away from its location. We train the policy for 100K steps in this environment. In the second phase (represented in Figure 2 right) we add static obstacles as well as dynamic obstacles which are simulated humans with their movement modeled by the Social Forces Model [7]. In the second phase the goal location is generated randomly [2, 11]m away from the robot. We train the robot in this environment for further 250K steps. For optimization we use the state-of-the-art PPO algorithm which is a more efficient variant of the Trust Region Policy Optimization (TRPO) [15] algorithm. Both algorithms are policy gradient algorithms which directly optimize the policy network. The main difference from vanilla policy gradient methods is that both PPO and TRPO limit the gradient updates to the network coefficients so that the KL divergence of the old and new policies does not surpass a predetermined limit. As a policy gradient method PPO is also an on-policy learning method, which means that in updating we can only use transitions that Figure 2: The two environments representing phase 1 and phase have been generated by the policy we are updating. 2 during learning. 3.2 Network The policy network is represented in Figure 1. The three last laser observations are fed through three convolutional layers and two fully connected (dense) layers. The output of the dense layers is joined with the distance and angle to the goal, as well as the current velocity of the robot. Further 4 dense layers process the joined representation before the last layer, where we generate the translational and rotational speeds which have a tanh activation. The value network, which is used during the optimization for calculating the action advantage according 91 We find that this type of training is necessary because in the beginning the robot acts randomly and if the goal is far away, and the environment is cluttered with obstacles, it fails to reach the goal and experience a reward, thus failing to learn to progress in learning. Another possibility would be to augment the reward so that the robot receives a small reward for getting closer to the goal, however this type of fine tuning the reward function can lead to unexpected behaviours and interfere with the main objective of learning. The robot and the environment are simulated in our extension of the pedsim ros 1 library and controlled through the exposed ROS 2 topics. The learning algorithm is implemented in Python and Tensorflow. 4 Evaluation 4.1 Evaluation procedure We evaluate our learned policy vs. the performance of the DWA on the four stages represented in Figure 3. We evaluate the DWA approach because it is a very popular approach to local navigation and because it is the default navigation method implemented in the navigation stack of our Turtlebot robot. In each stage we generate 100 starting locations and goals, and then evaluate the performance of both approaches. The performance is evaluated in terms of how many times the goal is reached successfully, with the length of the successful trajectories and with the duration of the successful episodes. The four stages are: • Stage 1: An empty room with size 10m × 5m. The starting and goal points are generated randomly. • Stage 2: A room with size 10m × 5m with humans entering and exiting in different directions. The starting and goal locations are the same as in Stage 1. • Stage 3: A large hall with size 20 × 10m with randomly generated convex obstacles scattered. The starting location is generated randomly (so that it is not in collision) and the goal location is generated at a distance ∈ [3, 6]m from the robot. • Stage 4: The same hall as in Stage 3 but with humans entering and exiting in different directions. The starting and goal locations are at a distance of ∈ [1, 4]m from the robot. Figure 3: Four stages used for evaluation. Stages 1 and 3 contain only static obstacles, while stages 2 and 4 contain both static and dynamic obstacles (humans). 1 https://github.com/srl-freiburg/pedsim_ros 2 https://www.ros.org/ 92 4.2 Results As can be seen in Table 1 in the first stage both algorithms navigated successfully to all of 100 given goals. The distance traveled as well as the time to reach the goal are longer for our policy. In the second stage, when the moving humans are added to the scene, the number of goals that are reached drops dramatically for both navigation methods, however the proposed method reaches 6 more goals than the baseline. It should be noted that perfect score in the stages containing humans is virtually impossible, since the humans move with a greater speed than the robot and do not care if they collide with it. Table 1: Quantitative results of the navigation evaluation. Shown are the number of goals that were reached, the average distance per goal and the average time per goal. goals avg. Stage DWA Ours DWA 1 100 100 2.70 71 77 2.55 2 3 82 94 6.48 4 65 75 3.37 dist. avg. time Ours DWA Ours 2.84 5.86 7.51 2.68 5.59 7.77 7.60 14.24 21.15 3.56 7.87 10.26 In the third stage when the static convex obstacles are introduced again the number of goals that are reached drops compared to Stage 1. In evaluating the trajectories we found that DWA fails when the robot tries to pass through tight openings, in avoiding the first obstacle it makes a sharp turn and can not stop before it hits the second obstacle which can be out of the sight of the 240 degree laser. For our policy the collisions occur when the robot is approaching straight on a sharp obstacle. We suspect that because of the reduction of the laser to 64 readings a sharp obstacle can interchangeably appear in the two frontal readings of the laser and an oscillatory behaviour occurs. The fourth stage is the most demanding of all the stages. Perfect performance in this stage is not possible, because of the moving agents. As can be seen in Table 1 our policy manages to reach 10 more goals than the baseline. The length of the trajectories is slightly longer for the RL-Policy and the time taken is somewhat longer. In Figure 4 we visualize three executed trajectories for the same starting and goal locations. We can see that the trajectories generated by the baseline are generally smoother, while our RL-Policy sometimes generates more choppy trajectories. In evaluating our policy among moving obstacles we can see that it learned a few different evasion maneuvers in the presence of moving obstacles: in the presence of a fast moving human, it generally stops until the human has passed, or turns and reduces its speed until the obstacle is gone. In the presence of a slow moving obstacle, it will try to increase its speed and overtake the human. Some of these maneuvers are depicted in Figure 5 where we drive the robot to the same goal location in a 3m wide corridor with humans moving in different directions. [4] Dudek, G., Jenkin, M.: Computational principles of mobile robotics, Computational principles of mobile robotics, Cambridge University Press, Cambridge (2000) [5] Fiorini, P., Shiller, Z.: Motion Planning in Dynamic Environments Using Velocity Obstacles. IJRR (1998) [6] Fox, D., Burgard, W., Thrun, S.: The dynamic window approach to collision avoidance. IEEE Robotics & Automation Magazine 4(1), 23–33 (1997) [7] Helbing, D., Molnár, P.: Social force model for pedestrian dynamics. Phys. Rev. E 51, 4282–4286 (1995) Figure 4: Visualizations of some of the performed trajectories during evaluation. Blue is RL-Policy and red is DWA policy. [8] Kim, J.., Khosla, P.K.: Real-time obstacle avoidance using harmonic potential functions. IEEE Transactions on Robotics and Automation 8(3), 338–349 (1992) [9] Konar, A., Chakraborty, I.G., Singh, S.J., Jain, L.C., Nagar, A.K.: A Deterministic Improved Q-Learning for Path Planning of a Mobile Robot. IEEE Transactions on Systems, Man, and Cybernetics: Systems 43(5), 1141–1153 (2013) [10] Mnih, V., Badia, A.P., Mirza, M., Graves, A., Lillicrap, T.P., Harley, T., Silver, D., Kavukcuoglu, K.: Asynchronous Methods for Deep Reinforcement Learning. arXiv 48, 1–28 (2016), http://arxiv.org/abs/ 1602.01783 [11] Mnih, V., et al.: Human-level control through deep reinforcement learning. Nature (2015) Figure 5: Visualizations of some of the learned collision avoidance techniques. Blue is RL-Policy and red are movements of humans. Saturation representes the passage of time. 5 [12] Ogren, P., Leonard, N.E.: A convergent dynamic window approach to obstacle avoidance. IEEE Transactions on Robotics (2005) [13] Pfeiffer, M., Schaeuble, M., Nieto, J., Siegwart, R., Cadena, C.: From perception to decision: A data-driven approach to end-to-end motion planning for autonomous ground robots. In: IEEE ICRA (2017) Conclusion In this paper we introduced a new way of performing local navigation in dynamic environments. Our approach is to train a neural network to perform this navigation on the basis of only the reading of a range scanner, current velocity of the robot and the distance and angle to the goal. Our approach does not depend on the knowledge of the position and velocity of the moving objects in the scene. To train this policy we use a reinforcement learning method, and construct our simulator, develop a reward function and a two-stage training procedure. Our evaluation shows that our navigation method can outperform the established DWA approach in the presence of dynamic humans. References [14] Sadeghi, F., Levine, S.: (CAD)2 RL: Real Single-Image Flight without a Single Real Image. arXiv:1611.04201 (2016), http://arxiv.org/abs/1611.04201 [15] Schulman, J., Levine, S., Jordan, M., Abbeel, P.: Trust Region Policy Optimization. ICML (2015) [16] Schulman, J., Wolski, F., Dhariwal, P., Radford, A., Klimov, O.: Proximal policy optimization algorithms. CoRR abs/1707.06347 (2017) [17] Tai, L., Paolo, G., Liu, M.: Virtual-to-real deep reinforcement learning: Continuous control of mobile robots for mapless navigation. IROS (2017) [18] van den Berg, J., Ming Lin, Manocha, D.: Reciprocal velocity obstacles for real-time multi-agent navigation. In: IEEE ICRA. pp. 1928–1935 (2008) [1] Abdel, M., Jaradat, K., Al-rousan, M., Quadan, L.: Reinforcement based mobile robot navigation in dynamic environment. Robotics and Computer Integrated Manufacturing (1) (2011) [19] Wen, S., Chen, X., Ma, C., Lam, H.K., Hua, S.: The Q-learning obstacle avoidance algorithm based on EKFSLAM for NAO autonomous walking under unknown environments. RAS (2015) [2] van den Berg, J., Guy, S.J., Lin, M., Manocha, D.: Reciprocal n-body collision avoidance. In: Pradalier, C., Siegwart, R., Hirzinger, G. (eds.) Robotics Research. pp. 3–19. Springer Berlin Heidelberg, Berlin, Heidelberg (2011) [20] Xie, L., Wang, S., Markham, A., Trigoni, N.: Towards monocular vision based obstacle avoidance through deep reinforcement learning. In: RSS 2017 workshop on New Frontiers for Deep Learning in Robotics (2017) [3] Brock, O., Khatib, O.: High-speed navigation using the global dynamic window approach. In: Proceedings 1999 IEEE ICRA) (1999) [21] Zhu, Y., Mottaghi, R., Kolve, E., Lim, J.J., Gupta, A., Fei-Fei, L., Farhadi, A.: Target-driven visual navigation in indoor scenes using deep reinforcement learning. In: IEEE ICRA) (2017) 93 Dvoročni vadbeni sistem z robotom HapticMaster Janez Podobnik, Anže Stražar, Marko Munih, Matjaž Mihelj Fakulteta za elektrotehniko, Univerza v Ljubljani E-pošta: janez.podobnik@fe.uni-lj.si Abstract 2 This paper describes the development of a bilateral training device based on a HapticMaster robotic system. The system was evaluated with a study which involved fifteen healthy people and nine chronic stroke subjects whose movement were measured and analyzed. Paper presents the hardware and software used to implement and analyze the concept of bilateral training on a robotic system. Moreover, it explains the control of the robotic system and the tasks designed for bilateral robotic training and their connection to the virtual environment. Bilateral training with the presented system is intuitive, simple and suitable for persons with different types of nervous system disorders. The presented robotic training system allows an objective evaluation of the training of the motor abilities of the patient’s affected limb based on the measured parameters. 1 Uvod Možganska kap vsako leto v Sloveniji prizadene 4500 ljudi, na svetu pa kar 15 milijonov [1]. V povprečju na svetu letno beležimo okoli 5 milijonov smrtnih izidov, okoli 5 milijonov pa utrpi trajne posledice. Možganska kap se uvršča na drugo mesto med vzroki za smrt ter je pogost vzrok za zmanjšanje gibalnih zmožnosti med ljudmi. Osebe po kapi imajo zmanjšane motorične sposobnosti prizadete strani telesa, kar osebam po kapi omejuje zmožnosti opravljanja vsakodnevnih opravil. Mnoge od teh vsakodnevnih opravil zahtevajo koordinirano uporabo obeh zgornjih udov [2]. Z vadbo se izboljša tako koordinacija med udoma, kakor tudi moč prijema, spretnost, in funkcionalna sposobnost prizadetega uda [3, 4]. Poleg tradicionalne rehabilitacije, ki jo izvajajo terapevti, je napredek v robotiki omogočil vključitev robotov v programe rehabilitacije. V večji meri robotski rehabilitacijski sistem pri tem služi kot dodatek k rehabilitaciji, terapevtov pa popolnoma ne more nadomestiti [5]. V tem prispevku je predstavljen dvoročni vadbeni sistem z robotom HapticMaster. Sistem je bil razvit v Laboratoriju za robotiko Fakultete za elektrotehniko Univerze v Ljubljani. Sistem je bil validiran na skupini zdravih oseb ter skupini oseb po kapi v kronični fazi. ERK'2019, Portorož, 94-97 94 Robotski sistem za dvoročno vadbo Rehabilitacijski roboti se uporabljajo kot vadbeni pripomočki, s katerimi lahko pacientu pomagamo hitreje doseči cilj fizikalne terapije. Robotski sistem za dvoročno vadbo je zgrajen na osnovi haptičnega robota HapticMaster. Robot HapticMaster je admitančno voden robot, delovni prostor je primeren za vadbo gibanja zgornjih udov. V osnovni konfiguraciji robota HapticMaster je na vrhu robota nameščen 3-osni senzor sil, ki je namenjen za admitančno vodenje in merjenje sil interakcije med robotom in uporabnikom. Robot je bil nadgrajen z aktivnim mehanizmom z dvema rotacijskima prostostnima stopnjama za dvoročno vadbo, ki je prikazan na slikah 1 do 3. Na mehanizmu za dvoročno vadbo se nahajata dva 6-osna senzorja sil in navorov, ki merita sile in navore vsake od rok. Namesto prvotnega senzorja sil za vodenje robota se uporablja sila, ki je izračunana iz sil levega in desnega senzorja. To omogoča načrtanje poljubnega sistema vodenja, ki upošteva različno utežbo sil iz levega in desnega senzorja, ki jih izvajata levi in desni ud uporabnika. Na ta način lahko za vodenje robota bolj upoštevamo sile, ki jih izvaja prizadeti zgornji ud. S tem umetno zmanjšamo vpliv zdravega uda in povečamo vpliv prizadetega uda, kar je pomembno za vadbo prizadetega uda. Slika 1: Dvoročni mehanizem pritrjen na vrh robota HapticMaster. Držalo omogoča protifazno (roki se premikata v nasprotni smeri) in sofazno (roki se premikata v isti smeri) premikanje zgornjih udov (glej sliko 2). Senzorja, nameščena na dvoročnem držalu, merita sile in navore v vseh treh koordinatnih smereh. Uporabniki s prizadeto roko imajo težave pri držanju dvoročnega držala. V ta namen je bila razvita ročka z opornico, ki osebam po kapi omogoča dvoročno vadbo. Ročka ima zadosten premer z naslonom za roko in opornico. Opornica preprečuje zdrs prizadete roke. Omogoča hitro namestitev in odstranitev. Zasnova opornice je taka, določena s koeficientom dušenja b pomnoženim s hitrostjo premikanja v, Fb = −bv. Enačbo za izračun sile dušenja vključimo v izračun za pospešek a: 1 (Fm + Fb ) . (4) m Tako izračunan pospešek nadalje integriramo v hitrost, ki je uporabljena kot referenčna hitrost za vodenje robota HapticMaster. Z vref = a dt. (5) a= Slika 2: Protifazna in sofazna konfiguracija dvoročnega mehanizma. [6]. Slika 4 prikazuje shemo admitančnega vodenja robota. da ima čim manjši vpliv na izvedbo vaje. Ročka z opornico je prikazana na sliki 3. ϑ Izračun pozicij x,v in hitrosti v zunanjem K.S. Izhodni gonilniki Model navideznega okolja Fb= -bv Fm Admitančni vref Vhodni model gonilniki Fm+ Fb= m a Slika 4: Poenostavljena shema modela admitančnega vodenja robota. Slika 3: Prikaz namestitve okvarjene roke v opornico. Koordinatni sistemi vrha robota ter senzorjev so različni, kar je vidno tudi na sliki 2. Za admitančno vodenje [7] je potrebno sile iz lokalnega koordinatnega sistema senzorja pretvoriti v koordinatni sistem robota. Fl = Rh Rvl Rrsl Fsl l , (1) Fd = Rh Rvd Rrsd Fsdd , = 21 (Fl + Fd ) . (2) Fm Vodenje robota se izvaja v realnem času z 2500 Hz na krmilnem računalniku na katerem je naložen xPC Target operacijski sistem, ki je namenjen za izvajanje Simulink modelov v realnem času. Simulink model vsebuje vhodne in izhodne bloke za strojno opremo robota, haptično navidezno okolje, admitančno vodenje ter bloka za komunikacijo z okoljem za grafično prikazovanje navidezne naloge. Grafično prikazovanje naloge je zasnovano s pomočjo programa Unity3D. Podatki z robota in senzorjev sil se shranjujejo v Matlab okolju. Slika 5 prikazuje celoten vadbeni in merilni sistem. Sestavljen je iz haptičnega robota HapticMaster, mehanizma za dvoročno vadbo, projekcijskega platna za prikazovanja naloge v navidezni resničnosti. (3) Sila Fsl l je izmerjena sila na levem senzorju podana v lokalnem koordinatnem sistemu levega senzorja, sila Fsdd je izmerjena sila na desnem senzorju podana v lokalnem koordinatnem sistemu desnega senzorja. Sili Fl in Fd sta sili pretvorjeni v koordinatni sistem robota. Rotacijska matrika Rh podaja rotacijo prve rotacijske prostostne stopnje mehanizma v frontalni ravnini, rotacijski matriki Rvl in Rvd pa podajata rotacijski matriki za levo in desno ročko okoli vertikalne osi (2 prostostna stopnja mehanizma). Rotacijski matriki Rsd in Rsd podajata pretvorbo iz koordinatnega sistema senzorja v lokalni koordinatni sistem ročke. Sila Fm je izračunana iz sil Fl in Fd in predstavlja skupno silo interakcije med robotom in uporabnikom, ki je vhod v admitančno vodenje robota. Iz sile izračunamo želen premik robota. Ob poznani sili in masi določimo pospešek, ki ga integriramo da dobimo želeno hitrost. Dodano je tudi dušenje, ki v prikazovanje haptičnega okolja doda parameter dušenja prostora, v katerem se premikamo. Sila, ki jo povzroča dušenje je 95 Projekcijsko platno Uporabniški računalnik Haptični vmesnik Dvoročno držalo Senzorja sil Slika 5: Sistem za dvoročno robotsko vadbo sestavljajo: haptični robot HapticMaster, dvoročno držalo, senzorja sil, računalnik za zajem podatkov in izrisovanje grafičnega okolja, projekcijsko platno. 3 Zasnova naloge v navideznem okolju Začetek Na robotskem sistemu z dvoročnim držalom smo razvili nalogo za koordinirano gibanje obeh rok pri gibanju v prostoru. Naloga omogoča ponovljivost in primerljivost med posameznimi gibi. Vadba je zasnovana tako, da meri gibanje v 4 prostostnih stopnjah: translacijo v 3 smereh, ter rotacijo v frontalni projekcijski ravnini. Translacija v vertikalni in horizontalni smeri premika objekt v projekcijski ravnini, tretja translacija naprej-nazaj je prikazana s spreminjanjem velikosti objekta, rotacijska prostostna stopnja pa rotira objekt. Slika 6 prikazuje potek primera naloge za 6 objektov. Cilj naloge je s sledilnim objektom doseči referenčni objekt. Referenčni objekt je dosežen, ko ga sledilni objekt primerno pokrije. Stopnja pokritosti je določena z napaka pozicije in napaka rotacije. Ko vse napake padejo pod vnaprej določene pragove, je objekt dosežen. Ko je objekt dosežen 3 sekunde, dosežen objekt izgine in prikaže se naslednji objekt. Vsak trenutek je na zaslonu prikazan samo en objekt. Slika 6.1 prikazuje premik iz naključne lege v začetno stanje od koder se začne izvajati naloga. Sledijo si objekti za gib v desno (slika 6.2), gib navzgor (slika 6.3), gib v levo s spremembo velikosti in rotacijo 45◦ (slika 6.4), gib v desno navzdol s spremembo rotacije in odmikom objekta (slika 6.5) ter zadnji gib v desno navzgor s spremembo rotacije (slika 6.6). Celotna naloga se nato ponovi, ko se merjena oseba premakne v objekt na sliki 6.1. Na sliki 7 je prikazan diagram prehajanja stanj, ki podrobneje podaja logično zgradbo in potek izvajanja virtualnega simulatorja ciljanja tarč. Seznam objektov Število objektov T Število ponovitev N Tip naloge Dovoljeno odstopnje Stanje = 2 Objekt = ++ Barva = bela Stanje = -1 Ponovitev = 0 Objekt = 0 Barva = bela Ponovitev = ++ Ponovitev >N Stanje = -1 Barva = bela NE Konec NE Pravilna oddaljenost Stanje = -1 DA Barva = rumena DA Objekt je dosežen DA Stanje = 1 Barva = zelena Objekt je dosežen 3s NE NE Slika 7: Diagram prehajanja stanj virtualnega simulatorja pokrivanja objektov. pot. Signale smo razdelili na intervale med tarčami. Pridobili smo enako dolge vektorje, ki omogočajo enostavno primerjavo med različnimi ponovitvami in preiskovanci. Sliki 8 in 9 prikazujeta signala hitrosti in spremembe orientacije v odvisnosti od normalizirane poti. 0,35 Hitrost (m/s) 2 DA Objekt > T NE Sprememba hitrosti gibanja Ponovitev 1 Ponovitev 2 Ponovitev 3 Ponovitev 4 0,3 1 DA Ponovitev 5 srednja vrednost +/- std področje 0,25 0,2 0,15 0,1 3 4 0,05 0 Objekt 1 5 Slika 6: Potek naloge v navideznem okolju. Črni objekt je objekt, ki ga premika uporabnik, beli objekt pa objekt do katerega je potrebno premakniti črno tarčo. 4 Objekt 2 Objekt 3 Objekt 4 Objekt 5 Objekt 6 Številka objekta 6 Rezultati V raziskavi sta sodelovali dve skupini udeležencev: kontrolna skupina 15 zdravih in skupina 7 pacientov s hemiparezo na desni strani v kroničnem obdobju po možganski kapi. Študija je bila izvedena z nalogo opisano v prejšnjem podpoglavju pri različnih stopnjah dušenja: dušenje pri 10 Ns/m, 20 Ns/m in 30 Ns/m. Preiskovanci so izvajali 3 bloke meritev z eno stopnjo dušenja v vsakem bloku. Vsak blok meritev je vseboval 5 ponovitev. Da smo signale različnih ponovitev in preiskovancev lahko primerjali, smo zajete signale transformirali v nečasovni prostor, kjer je neodvisni parameter namesto časa normalizirana 96 Slika 8: Velikost hitrosti premikanja robota v odvisnosti od normalizirane poti. Nalogo je izvedla zdrava oseba pri stopnji dušenja 10 Ns/m. Prikazanih je pet različnih gibov s srednjo vrednostjo in standardno deviacijo. Dosežena je dobra primerljivost različnih ponovitev naloge. Slika 10 prikazuje relativno moč za posamezne gibe za celotno nalogo za 7 pacientov. V statistično analizo je za vsako stopnjo dušenja vključenih 35 meritev pacientov s prizadeto desno roko. Razviden je prispevek leve oziroma desne roke za posamezni gib za paciente s prizadeto desno roko. Slika 11 predstavlja rezultate pri zdravih osebah za isto nalogo. S parametrom relativna moč je izračunan prispevek vsake roke pri posameznem gibu. Pri zdravih osebah pri vodenju giba prevladuje roka, v smeri katere je izveden gib. Pri gibu v desno je relativna moč večja pri desni roki in obratno. Značilno je tudi koordinirano gibanje v drugem gibu naloge, ki od preiskovanca i) Sprememba orientacije držala 60 Ponovitev 5 srednja vrednost +/- std področje Ponovitev 1 Ponovitev 2 Ponovitev 3 Ponovitev 4 50 40 ∗ Kot (°) ∗ ∗ ∗ ∗ iv) ∗ ∗ v) ∗ ∗ ∗ ∗ 2 Relativna moč 20 10 0 -10 1,5 1 0,5 0 -20 -0,5 -30 -1 -40 HL10 HD10 HL20 HD20 HL30 HD30 HL10 HD10 HL20 HD20 HL30 HD30 HL10 HD10 HL20 HD20 HL30 HD30 HL10 HD10 HL20 HD20 HL30 HD30 HL10 HD10 HL20 HD20 HL30 HD30 Objekt 1 Objekt 2 Objekt 3 Objekt 4 Objekt 5 Objekt 6 Številka objekta Slika 9: Prikaz spremembe orientacije držala med izvajanje naloge v odvisnosti od normalizirane poti. Nalogo je izvedla zdrava oseba pri stopnji dušenja 10 Ns/m. zahteva gib navzgor. Pri skupini pacientov s prizadeto desno roko ugotovimo, da prizadeta desna roka le sledi gibanju zdrave leve roke. i) ∗ ii) ∗ ∗ ∗ iii) ∗ iv) ∗ ∗ v) ∗ ∗ ∗ ∗ 2,5 2 Relativna moč ∗ iii) 2,5 30 ∗ ∗ ii) Slika 11: Relativna moč za posamezne gibe za celotno nalogo. H predstavlja skupino zdravih. sledi ali celo zavira gibanje. S povečevanjem dušenja se poveča sodelovanje prizadete roke in gibanje postane bolj koordinirano. Predstavljena navidezna naloga uspešno skrbi za povečanja motivacije oseb med izvajanjem meritev. Preiskovanci so se počutili vključene v nalogo, pri čemer osredotočenost s časoma ni upadla. Pacienti so hkrati v večini opazili, da se njihova prizadeta roka med izvajanjem vaje aktivno vključuje. Zahvala Študija je bila opravljena v sklopu raziskovalnega programa št. P2-0228, ki ga je sofinancirala Javna agencija za raziskovalno dejavnost Republike Slovenije iz državnega proračuna. 1,5 1 0,5 0 -0,5 Literatura PL10 PD10 PL20 PD20 PL30 PD30 PL10 PD10 PL20 PD20 PL30 PD30 PL10 PD10 PL20 PD20 PL30 PD30 PL10 PD10 PL20 PD20 PL30 PD30 PL10 PD10 PL20 PD20 PL30 PD30 -1 Slika 10: Relativna moč za posamezne gibe za celotno nalogo. P – skupina pacientov, L - leva roka, D - desna roka. Ob okrajšavi skupine je podana stopnja dušenja. Od leve proti desni si sledi pet gibov, od i) do v), ki so prikazani na slikah 6.2 do 6.6. Za vsak gib so podane tri stopnje dušenja. Povezave nad škatličnimi diagrami ponazarjajo izbrane skupine med katerimi smo računali statistične značilnosti. Statistično pomembna značilnost je označena z * za p < 0,05. 5 Zaključek Razvit je bil celovit sistem za dvoročno vadbo oseb z različnimi vrstami okvar živčno-mišičnega sistema. Vadba s pripravljenim sistemom je intuitivna in preprosta. Sistem temelji na haptičnem robotu HapticMaster, ki je bil nadgrajen z dvoročnim aktivnim mehanizmom z dvema senzorjema sile s katerima je mogoče vrednotenje vadbe za vsako od rok. S sistemom smo izvedli različne meritve, pri čemer smo želeli preveriti različne vidike dvoročne vadbe. Zanimala nas je predvsem koordinacija rok med dvoročno vadbo. Posamezni preiskovanec je nalogo izvedel večkrat ob različnih stopnjah dušenja. Vadbo smo ovrednotili z različnimi parametri, ki podajajo informacijo o kinematiki gibanja. Pri parametru relativne moči smo ugotovili, da pri zdravih osebah prevladuje roka, v kateri smeri se izvaja gib. Pri skupini pacientov smo opazili, da gib vodi neprizadeta roka. Prizadeta roka le 97 [1] C. Cruz-Cruz, J. Kravzov-Jinich, J. M. Martı́nez-Núñez, C Rı́os-Castañeda, M. E. Perez in M. Altagracia-Martı́nez, “Cost–utility analysis in acute ischemic stroke survivors treated with dapsone in a public hospital in Mexico City,”Journal of Pharmaceutical Health Services Research, vol. 5, št. 2, str. 95-102, 2014. [2] M. Trlep, M. Mihelj, U. Puh in M. Munih, “Rehabilitation robot with patient cooperative control for bimanual training of hemiparetic subjects,” Advanced Robotics, vol. 25, št. 15, str. 1949–1968, 2011. [3] J. Summers, F. Kagerer, M. Garry, C. Hiraga, A. Loftus, J. Cauraugh, “Bilateral and unilateral movement training on upper limb function in chronic stroke patients: a TMS study,” Journal of the neurological sciences, vol. 252, št. 1, str. 76–82, 2007. [4] J. Whitall, S. Waller, K. Silver, in R. Macko, “Repetitive bilateral arm training with rhythmic auditory cueing improves motor function in chronic hemiparetic stroke,” Stroke, vol. 31, št. 10, str. 2390–2395, 2000. [5] P. Lum, D. Reinkensmeyer, R. Mahoney, W. Rymer, C. Burgar, ”Robotic devices for movement therapy after stroke: current status and challenges to clinical acceptance,”Topics in stroke rehabilitation, vol. 8, no. 4, str. 4053, 2002. [6] S. Lokar, “Rehabilitacijski robot za dvoročno vadbo,” Diplomsko delo, Ljubljana: Univerza v Ljubljani, Fakulteta za elektrotehniko, 2016. [7] M. Mihelj, “Haptični roboti,” Založba FE in FRI, Ljubljana, 2007. Kalibracija nizkocenovnega robotskega manipulatorja Luka Čehovin Zajc, Anže Rezelj, Danijel Skočaj Univeza v Ljubljani, Fakulteta za računalništvo in iformatiko, Večna pot 113, 1000 Ljubljana, Slovenija E-pošta:{luka.cehovin,anze.rezelj,danijel.skocaj}@fri.uni-lj.si Calibration of a low-cost robotic manipulator We present a method for an efficient calibration of a geometric model of a robotic manipulator using a camera. The method is applied to a low-cost manipulator platform that we have built for educational purposes. Our experiments demonstrate that the proposed calibration method indeed improves the accuracy of the manipulators in tasks such as grasping of simple objects. 1 Uvod Z razvojem robotike in sorodnih inženirskih disciplin se veča zahteva po večji dostopnosti robotskih platform, ki bi omogočala širšo uporabo in bolj dosegljivo izobraževanje na tem področju. Na žalost pa so industrijski roboti ter roboti primerljive kvalitete še vedno zelo dragi in kot taki večini nedostopni, kar otežuje množično uporabo in poučevanje te tehnologije. V izogib uporabi simuliranih okoljih [1], ki ne omogočajo prave izkušnje in interakcije, so raziskovalci in robotski zanesenjaki poizkusili razviti dostopnejše rešitve [2, 3, 4, 5, 6, 7]. Se pa s padajočo ceno tako izdelanih robotskih manipulatorjev praviloma niža tudi njihova kvaliteta. Industrijski robotski manipulatorji so zgrajeni iz veliko bolj kvalitetnih sestavnih delov, poleg tega so tudi namensko umerjeni z drago temu namenjeno opremo [8, 9, 10, 11, 12]. Nizkocenovni manipulatorji pa so običajno zasnovani tako, da je proces izdelave dostopen in enostaven, kar omogoča širši množici ljudi sestavo takšnih robotov. To pa seveda izključuje uporabo dragih sestavnih delov in zapletenega procesa izdelave, vključno s kompleksnim umerjanjem robota, ki zahteva namensko kalibracijsko opremo. V tem delu bomo predstavili pristop za avtomatsko kalibracijo nizkocenovnega robotskega manipulatorja, ki ne zahteva drage namenske kalibracijske opreme. Zahtevani kalibracijski vzorec, ki ga namestimo na vrh robota, lahko natisnemo kar s 3D tiskalnikom. Predlagani postopek predpostavlja, da je robotski manipulator umeščen v okolje označeno z vizualnimi oznakami, ki jih sistem detektira s kamero. Na ta način lahko s pomočjo kamere izmeri lego kalibracijske predloge v delovnem prostoru. Za razliko od nekaterih pristopov, ki za kalibracijo zahtevajo namestitev kamere na robota [13, 14], je predlagan pristop bolj primeren za uporabo na nizkocenovnih lahkih ERK'2019, Portorož, 98-101 98 manipulatorjih, kjer bi bila takšna namestitev nerodna ali nemogoča. Predlagan postopek nato z minimizacijo odstopanj pozicije kalibracijskega vzorca od pozicije izračunane z upoštevanjem geometrijskega modela robota in rotacij sklepov robota izračuna optimalne parametre robota. Na ta način lahko brez dodatne opreme na preprost in avtomatski način umerimo robota in povečamo natančnost sistema. V nadaljevanju bomo v poglavju 2 najprej predstavili uporabljeno robotsko-senzorsko platformo, ki smo jo razvili za namene poučevanja robotike in računalniškega zaznavanja in na kateri smo ovrednotili predstavljeno kalibracijo. Sam postopek kalibracije je opisan v poglavju 3. Rezultati evalvacije so predstavljeni v poglavju 4, članek pa bomo zaključili s sklepnimi ugotovitvami ter smernicami za nadaljnje delo. 2 Robotsko-senzorska platforma Nizko-cenovna robotska platforma [15] je sestavljena iz robotskega manipulatorja, kamere in računalnika na osnovi sistema Raspberry Pi, ki služi kot centralna točka med manipulatorjem, kamero in uporabnikom platforme. Shema platforme je prikazana na Sliki 1. Slika 1: Robotsko-senzorska platforma. 2.1 Robotski manipulator Naši cilji pri izdelavi robotskega manipulatorja so bile naslednje lastnosti: enostavnost izdelave, cenovna dostopnost, enostavnost in varnost uporabe ter dovoljšna robustnost. Izdelava je bolj podrobno opisana v [16]. V osnovi gre za antropomorfni manipulator s petimi prostostnimi stopnjami. Sklepi so realizirani s servo motorji z namenskim krmilnim vezjem. Segmenti so natisnjeni s 3D tiskalnikom. Cena komponent takega manipulatorja je okrog 250 e. DH parametre, ki so specifični za posamezni manipulator, kar bomo v naslednjem poglavju označili z ∆DH. 2.2 Geometrijski model Da lahko robotski manipulator uporabimo v naprednih načinih krmiljenja z inverzno kinematiko, je potrebno definirati njegov geometrijski model, ki nam pove, kje v prostoru se nahaja določen sklep ob podanem stanju posameznih sklepov. Klasičen pristop pri opisu geometrijskega modela je uporaba Denavih-Hartenbergerjevih (DH) parametrov [17]. Za posamezni sklep i so DH parametri 3 dhi = (ai , di , αi , θi ), Pri zasnovi kalibracijskega postopka smo želeli, da je celoten proces čim bolj samodejen. Obenem postopek ne sme zahtevati posebne dodatne strojne opreme in se mora izvajati na računalniku, ki se uporablja za krmiljenje platforme. Postopek je razdeljen na samodejni zajem meritev lege vrha manipulatorja ter minimizacijo funkcije napake. (1) 3.1 Samodejen zajem meritev V prvem koraku zajamemo več meritev lege vrha manipulatorja, ki jo določimo preko kamere z detekcijo kalibracijske predloge pritrjene na manipulator. Kalibracijska predloga je natisnena s 3D tiskalnikom, na njej pa so z barvo pobarvane krogle s poznanim relativnim odmikom. Take krogle zaznamo z algoritmom računalniškega vida ter njihove centre v sliki uporabimo pri izračunu lege predloge v prostoru. Prilagojen manipulator za zajem meritev je prikazan na Sliki 3. kjer ai in di definirata odmika po oseh xi in zi−1 , αi in θi pa definirata rotacijo okoli osi xi in zi−1 . Celoten geometrijski model je potem množica DH parametrov za posamezne sklepe, za naš manipulator je model torej DH = ∪5i=1 dhi . Ker je eden od parametrov posameznega sklepa spremenljiv, bomo stanje DH parametrov definirali z oznako DH(q), kjer q označuje vektor spremenjivih parametrov. Shematično je geometrijski model na podlagi DH parametrov prikazan na Sliki 2. Transformacijo lege vrha manipulatorja lahko določimo kot produkt transformacij posameznih sklepov, ki so odvisne od DH parametrov A05 (DH(q)) = 5 Y Ai−1 (dhi (qi )), i Metodologija kalibracije (2) i=1 Ai−1 (dhi (qi )) = Tzi−1 (di )·Rzi−1 (θi )·Txi (ai )·Rxi (αi ), i kjer To (t) označuje homogeno transformacijo translacije vzdolž osi o za razdaljo t, Ro (r) pa rotacijo okrog osi o za kot r. Slika 3: Zajem meritev s kalibracijsko predlogo. Teoretična lega vrha manipulatorja (1) je izračunana na podlagi geometrijskega modela robota. Oranžne krogle so zaznane s kamero, na podlagi njihovega položaja v sliki in znane relativne lege je izračunana lega vrha manipulatorja v prostoru (2). S kalibracijsko predlogo lahko določimo relativno lego predloge glede na kamero, ker pa sistem s pomočjo oznak na delovni površini pozna tudi lego kamere glede na izhodišče robota, lahko izmerjeno lego vrha manipulatorja v njegovem delovnem prostoru (koordinatnem sistemu robota) dobimo kot Slika 2: Shematičen prikaz geometrijskega modela robota. Natančen geometrijski model je pomemben za planiranje premikov z inverzno kinematiko, predvsem za operacije, ki zahtevajo natančnost. V našem sistemu je predvsem pomembna povezava s podatki iz kamere, na primer z lokacijo zaznanih predmetov, ki jih mora manipulator prijeti. Zaradi nizke cene materialov in s tem omejene natančnosti pri konstrukciji se pri našem manipulatorju pojavljajo določena odstopanja od geometrijskega modela, ki v praksi privedejo do slabe natančnosti. Ta odstopanja se lahko tudi razlikujejo od manipulatorja do manipulatorja. Cilj naše kalibracije je torej določiti popravke za 99 M = W−1 · G, (3) kjer W označuje transformacijo iz koordinatnega sistema kamere v koordinatni sistem robota, G pa transformacijo iz koordinatnega sistema kamere v koordinatni sistem kalibracijske predloge. Celoten postopek zajema poteka tako, da se manipulator premika v različna stanja v katerih se poskusi določiti lego njegovega vrha. To zaradi omejenega vidnega polja kamere in narave kalibracijske predloge ne bo mogoče v vseh primerih ali pa meritev ne bo dovolj zanesljiva, zato take slike zavržemo. Še vedno je postopek dovolj hiter, da dobimo približno 10 meritev na minuto. 3.2 Postopek optimizacije Naš poglavitni cilj je izboljšava pozicije vrha manipulatorja, zato je glavni člen v funkciji napake razdalja med napovedjo geometrijskega modela in izmerjeno pozicijo vrha robota. Zaradi izenačevalnega vpliva določenih DH parametrov moramo v napako dodati tudi regularizacijski člen. Končna funkcija napake je torej L(∆DH|DH, Q, M) = N X 1 X l(∆DH|DH, qj , Mj ) + λ kdk, (4) N j=1 d∈∆DH kjer Q in M označujeta množici parov stanj manipulatorja qj in izmerjenih leg vrha manipulatorja Mj , λ pa vpliv regularizacije. Razdalja za posamezno meritev j je definirana kot Evklidska razdalja med točko vrha manipulatorja glede na geometrijski model in meritvijo pozicije vrha robota glede na kamero je razvidno, da se povprečna napaka za vse manipulatorje zmanjša z več kot okoli 20mm na manj kot 6mm. Standardni odklon se po kalibraciji ne zmanjša opazno, a si ga lahko razložimo kot mešanico interne ponovljivosti manipulatorja, ki je bila v [16] ocenjena na ±3mm in majhnega dela napačnih optičnih meritev lege vrha manipulatorja. Eksperimentalna analiza V eksperimentih smo uspešnost postopka kalibracije ovrednotili na dva načina. Najprej smo ovrednotili sam postopek optimizacije z zajemom novih testnih meritev z istim postopkom. V drugi fazi smo izboljšan geometrijski model preizkusili še v praksi v scenariju premikanja kock. V analizi smo uporabili štiri manipulatorje, vsakega s svojo kamero (uporabili smo navadne spletne kamere). Vse kamere smo pred začetkom skalibrirali s standardnim postopkom kalibracije. 4.1 Analiza kalibracije Za boljšo analizo postopka minimizacije funkcije napake smo za vsak manipulator zajeli dve množici s 500 meritvami lege vrha manipulatorja. Prva množica je učna, na podlagi nje smo izvedli optimizacijo. Druga množica je testna, uporabili smo jo za preverjanje smiselnosti izbranih popravkov DH parametrov. Na Sliki 4 je prikazana vrednost povprečne razdalje med meritvami in geometrijskim modelom za vse manipulatorje na učni in testni množici med optimizacijskim postopkom. Vidimo lahko, da napaka zelo hitro pade, prav tako vidimo, da napake padejo s podobno hitrostjo za učno in testno množico. Vse to nakazuje, da je model popravkov DH parametrov dovolj kompleksen, obenem pa se verjetno ni pretirano prilagodil na učno množico in je uporaben v praksi. Natančnost na obeh množicah za vse manipulatorje je povzeta v Tabeli 1, v njej 100 U enje #1 Test #1 U enje #2 Test #2 U enje #3 Test #3 U enje #4 Test #4 20.0 Povpre na razdalja (mm) kA05 (DH(qj ) + ∆DH)u − Mj uk, (5) 4 Kalibriran učna testna 4.3 ± 3.7 5.3 ± 3.9 3.5 ± 2.8 4.7 ± 3.6 4.4 ± 4.7 3.6 ± 4.0 4.4 ± 4.2 5.3 ± 5.3 Tabela 1: Povprečna razdalja (v mm) med modelom in meritvijo s standardnim odklonom. Prikazane so vrednosti za nekalibrirane in kalibrirane modele manipulatorjev na učni in testni množici. l(∆DH|DH, qj , Mj ) = kjer u označuje vektor izhodiča [0, 0, 0, 1]. Optimizacijo smo implementirali z uporabo knjižnice za strojno učenje Tensorflow [18], ki je znana predvsem kot osnova za implementacijo umetnih nevronskih mrež, vendar lahko v njej rešujemo tudi druge optimizacijske probleme. Uporabili smo iterativni algoritem gradientnega spusta s stopnjo učenja 0.1. Parameter vpliva regularizacije je bil nastavljen na λ = 0.05. Nekalibriran učna testna 24.1 ± 5.1 23.0 ± 4.9 18.5 ± 3.7 20.5 ± 4.9 22.1 ± 4.7 22.5 ± 3.9 24.9 ± 5.6 24.0 ± 6.2 ID 1 2 3 4 17.5 15.0 12.5 10.0 7.5 5.0 2.5 101 100 102 Iteracija Slika 4: Prikaz postopka optimizacije za vse štiri manipulatorje na učni in testni množici za prvih 200 korakov. Vpliv kalibracije na napako si lahko prikažemo tudi individualno glede na posamezno meritev. Na Sliki 5 je razvidno, da so napake pred kalibracijo še zelo velike, po kalibraciji pa se napake opazno zmanjšajo. Nekalibriran Kalibriran 250 200 Z 150 100 50 100 150 200 250 X 300 150 100 50 0 50 Y 100 0 10 150 250 200 Z 150 100 50 100 20 30 150 200 250 X 300 150 100 50 0 50 Y 100 150 Slika 5: Vizualizacija napak (v mm) pred in po kalibraciji na testni množici meritev za manipulator 3. 4.2 Uspešnost prijemanja V drugem eksperimentu smo preverili praktično uporabnost kalibracije. Implementirali smo postopek v katerem je vsak manipulator poskusil 100-krat premakniti plastično kvadratno kocko črne barve z velikostjo stranice 20mm. Kocka je bila zaznana z uporabo algoritma računalniškega vida, kar je pogost scenarij v naših primerih uporabe v pedagoške namene. Eksperiment je potekal v delno-samodejnem ID 1 2 3 4 Nekalibriran 69 97 18 27 Kalibriran 99 100 88 99 [3] S. O. Adebola, O. A. Odejobi, and O. A. Koya. Design and implementation of a locally-sourced robotic arm. 2013 AFRICON, 2013. Tabela 2: Rezultati eksperimenta uspešnosti prijemanja kocke. Za vsak maniupulator je navedeno število uspešnih premikov. načinu; vsi manipulatorji so začeli s kocko na istem mestu in so jo potem premikali po vnaprej določenih lokacijah na delovni površini robota. Posredovanje operaterja je bilo potrebno samo, če je manipulator kocko izrinil iz delovnega območja ali pa jo je neuspešno poskusil prijeti 10-krat zapored. Rezultati eksperimenta so predstavljeni v Tabeli 2. Vidimo, da so imeli nekalibrirani manipulatorji zelo različno uspešnost pri izvrševanju naloge, kar nakazuje na raznolikost izgradnje. Po zajemu meritev, kalibraciji in uporabi spremenjenih parametrov se je uspešnost manipulatorjev bistveno izboljšala. Edina izjema je manipulator 2, ki je imel tudi nekalibriran dobro uspešnost. Dejstvo, da tudi po kalibraciji manipulatorji večinoma niso popolnoma uspešni pa lahko pripišemo še drugim faktorjem kot so slaba strategija planiranja premikov (uporabljamo delno stohastični pristop) ter problemi s prijemali na določenih manipulatorjih. 5 Zaključek [4] B Pronadeep and N Vishwajit. Low cost shadow function based articulated robotic arm. 2015 International Conference on Energy, Power and Environment: Towards Sustainable Growth (ICEPE), 2015. [5] Mr. Rahul S Pol, Mr. Sagar Giri, Mr. Aditya Ravishankar, and Ms. Varsha Ghode. LabVIEW based four DoF robotic ARM. 2016 International Conference on Advances in Computing, Communications and Informatics (ICACCI), pages pp. 1791 – 1798, 2016. [6] Subrata Karmoker, Md. Mobarak Hossain Polash, and K M Zakir Hossan. Design of a low cost PC interface Six DOF robotic arm utilizing recycled materials. 2014 International Conference on Electrical Engineering and Information and Communication Technology, 2014. [7] José Alberto Naves Cocota, Hideo Silva Fujita, and Itamar Jorge da Silva. A low-cost robot manipulator for education. 2012 Technologies Applied to Electronics Teaching (TAEE), 2012. [8] Y. Zhang and F. Gao. A calibration test of stewart platform. In 2007 IEEE International Conference on Networking, Sensing and Control, pages 297–301, April 2007. [9] Albert Nubiola and Ilian A. Bonev. Absolute calibration of an abb irb 1600 robot using a laser tracker. Robot. Comput.-Integr. Manuf., 29(1):236–245, February 2013. [10] Hoai-Nhan Nguyen, Jian Zhou, and Hee-Jun Kang. A new full pose measurement method for robot calibration. Sensors, 13(7):9132–9147, Jul 2013. Predstavili smo učinkovit postopek za samodejno kalibracijo nizkocenovnih robotskih manipulatorjev. Sam algoritem temelji na računalniškem vidu za zajem meritev, ki se nato uporabijo v postopku optimizacije geometrijskega modela robota. Prednost samega pristopa je, da je poceni in ne zahteva nove namenske strojne opreme. Pristop smo preizkusili na naši robotsko-senzorski platformi, ki je zaradi načina izdelave in omejitev poceni materiala zelo dovzetna za odstopanja od teoretičnega modela. Pokazali smo, da lahko tudi taki manipulatorji s postopkom samodejne kalibracije, ki traja manj kot eno uro, dosežejo dovolj dobro natančnost za preproste scenarije prijemanja, kar je bil tudi naš cilj. V nadaljnem delu bomo metodo razširili na več manipulatorjev in preučili tudi možnost uporabe bolj zapletenega kalibracijskega modela, ki bi vključeval tudi globalno lego manipulatorja v prostoru in odvisnosti med posameznimi DH parametri. [11] Albert Nubiola, Mohamed Slamani, Ahmed Joubair, and Ilian A. Bonev. Comparison of two calibration methods for a small industrial robot based on an optical cmm and a laser tracker. Robotica, 32(3):447–466, 2014. Literatura [15] Luka Čehovin Zajc, Anže Rezelj, and Danijel Skočaj. Open-source robotic manipulator and sensory platform. In International Conference on Robotics and Education RiE 2017, pages 250–256. Springer, 2017. [1] Mohammed Abu Qassem, Iyad Abuhadrous, and Hatem Elaydi. Modeling and simulation of 5 dof educational robot arm. In Advanced Computer Control (ICACC), 2010 2nd International Conference on, volume 5, pages 569– 574. IEEE, 2010. [2] Morgan Quigley, Alan Asbeck, and Andrew Ng. A Lowcost Compliant 7-DOF Robotic Manipulator. 2011 IEEE International Conference on Robotics and Automation, pages pp. 6051 – 6058, 2011. 101 [12] Gang Zhao, Pengfei Zhang, Guocai Ma, and Wenlei Xiao. System identification of the nonlinear residual errors of an industrial robot using massive measurements. Robotics and Computer-Integrated Manufacturing, 59:104 – 114, 2019. [13] G. Dick van Albada, Jose M. Lagerberg, Arnoud Visser, and Louis O. Hertzberger. A low-cost pose-measuring system for robot calibration. Robotics and Autonomous Systems, 15:207–227, 1995. [14] Jose Mauricio S.T. Motta, Guilherme C. de Carvalho, and R.S. McMaster. Robot calibration using a 3d visionbased measurement system with a single camera. Robotics and Computer-Integrated Manufacturing, 17(6):487 – 497, 2001. [16] Anže Rezelj. Izdelava nizkocenovnega lahkega robotskega manipulatorja. Master’s thesis, Univerza v Ljubljani, Ljubljana, Slovenija, 2017. [17] J. Denavit and R. S. Hartenberg. A kinematic notation for lower-pair mechanisms based on matrices. Trans. ASME E, Journal of Applied Mechanics, 22:215–221, June 1955. [18] Martín Abadi et al. TensorFlow: Large-scale machine learning on heterogeneous systems, 2015. Software available from tensorflow.org. Vijačenje s sodelujočim robotom Simon Erjavec1, Sebastjan Šlajpah2, Primož Vidmar3, Marko Munih4, Matjaž Mihelj5 Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška cesta 25, 1000 Ljubljana E-pošta: simon.erjavec@robo.fe.uni-lj.si Screwing with a collaborative robot 2 Metodologija Abstract. A collaboration between a robot and an operator has numerous advantages. It ensures safety, enables lower costs, occupies less space and allows a robot and a human to jointly execute complex tasks. A safe human-robot collaborative application requires safe robot, tool, and working environment. With noncollaborative tools it is typically more difficult to ensure safety and enable collaboration. An example of such application is automatic screwing with the sharp tool and screws. The screwdriver torque required for screwing also generates a safety concern. The proposed solution to the problem of automatic robot-based screwing is based on mechanical safety protection. Protection covers the screwdriver and the screw and prevents the operator to come into contact with dangerous parts of the screwdriver. Protective mechanism is passively retractable. It is constructed such that it stacks under external force. In addition to mechanical protection, an additional level of safety is guaranteed by the programmed logic onto the Siemens PLC controller that works as a supervisory system. Based on the completed tests of the system we can conclude that the solution is safe and appropriate for the collaboration application. 1 Uvod 2.1 Uporabljene naprave Celoten sistem za sodelujoče vijačenje prikazuje slika 1. Za izvedbo vijačenja smo izbrali sodelujočega robota Fanuc CR-7iA. Robot omogoča zaznavo trka z okolico na podlagi senzorja sile, ki je nameščen v bazi robota. Maksimalna nosilnost robota je 7 kg. Sodelovalna hitrost, katero lahko doseže, je 500 mm/s [3]. Ker smo želeli imeti prilagodljiv sistem, kjer bi lahko vijačili različne vijake, smo za vijačenje uporabili vijačnik s krmilnikom. Prav tako smo izbrali tudi Kolverjev prilagodljiv sistem za podajanje vijakov. Podajalnik omogoča podajane vijakov M1-M5 različnih dolžin z različnimi glavami. 1 2 5 Problematika avtomatiziranega vijačenja s sodelujočim robotom je, da imamo na varnem robotu nevarno orodje. Posledično to pomeni, da mora biti robot ograjen, saj aplikacija ni dovolj varna za sodelovanje s človekom. Glavni nevarnosti sta konica orodja ali vijaka in navor, ki je potreben za vijačenje. V industriji je vedno več povpraševanja po avtomatiziranih opravilih, pri katerih bi lahko sodeloval tudi operater, vendar so ta zaradi nevarnih orodij težje izvedljiva. Zelo veliko zanimanje je tudi za varno vijačenje s sodelujočim robotom. Želja je, da bi si lahko robot in operater pri izvedbi naloge delila delovni prostor in po potrebi tudi sodelovala [1, 2]. Cilj je izvedba dodatnega varnostnega sistema, ki bi omogočal varno vijačenje in sodelovanje operaterja z robotom. Predpostavljamo, da je za izvedbo sodelujoče aplikacije treba operaterju fizično omejiti dostop do nevarnih delov, ki so prisotni pri vijačenju. Hkrati domnevamo, da mora biti zaščita tudi senzorično podprta, da se v primeru kontakta z operaterjem lahko izvede ustavitev sistema. ERK'2019, Portorož, 102-105 V sistem za vijačenje je vključeno veliko različnih naprav, ki skupaj z različnimi tehnikami in varnostnimi pristopi sestavljajo sodelujočo aplikacijo. 102 3 4 7 1 6 Slika 1: Prikaz uporabljenih naprav: 1 - robot Fanuc CR-7iA, 2 - vijačnik Pluto, 3 - krmilnik vijačnika Kolver, 4 - podajalnik vijakov Kolver, 5 - varnostni mehanizem, 6 - podajalnik orodja, 7 - obdelovanec. Za dodatno varnost smo razvili varnostni mehanizem vijačnika in v sistem vključili nadzorni PLC krmilnik Siemens. Nadzorni sistem se uporablja za vodenje varnostnega mehanizma in za nadzor delovanja robota ter krmilnika vijačnika. Zaradi vijačenja z različnimi nastavki smo v aplikacijo vključili tudi podajalnik orodja, ki smo ga skonstruirali sami. 2.2 Opis uporabljenih metod in tehnik 1 3 2 K vijačenju s sodelujočim robotom smo pristopili z naslednjimi metodami in tehnikami: - metoda za zagotovitev dodatne varnosti, tehnika menjave orodja, tehnika pobiranja vijakov, tehnika vijačenja vijakov. Metoda za zagotovitev dodatne varnosti Ker vijačnik z vijakom predstavlja nevarno orodje, smo razvili varnostni mehanizem, ki onemogoča, da bi med izvajanjem naloge operater lahko prišel v stik z vijakom. Varnostni mehanizem vijačnika je prikazan na sliki 2. Sestavljen je iz dveh tulcev, ki v iztegnjenem stanju prekrijeta vijak. 1 2 5 4 3 Slika 2. Prikaz varnostnega mehanizma vijačnika: 1 - zgornji tulec, 2 - spodnji tulec, 3 - kontakti na notranji strani tulca, 4 - prevodni obroč za povezavo kontaktov, 5 - sestav. Slika 3. Prikaz končnega izgleda varnostnega mehanizma: 1 - vključen varnostni mehanizem (zelena barva) 2 - v kontaktu z operaterjem (modra barva). 3 - izklopljen varnostni mehanizem med vijačenjem (rdeča barva). Logika delovanja varnostnega mehanizma je podrobneje prikazana na sliki 4. Na levi strani slike lahko vidimo, da se preverja, če so vsi kontakti na tulcu sklenjeni. Z leve strani slike je razvidno tudi, da imamo signal za izklop delovanja varnostnega mehanizma, katerega namenoma prožimo ob primernem času, ko je zagotovljena varnost in operater ne more priti v stik z orodjem. Tipično se to izvede pri vijačenju, ko je treba ignorirati kontakt varnostnega mehanizma s površino, v katero vijačimo. IZKLOP OR Iz zgornje slike je razvidno, da ima zgornji tulec v spodnjem delu integrirane tri kontakte. Prav tako je razvidno, da ima spodnji tulec na zgornjem delu nameščen prevodni obroč. Ko sta tulca v iztegnjenem stanju, se trije kontakti sklenejo. PLC krmilnik Siemens prebere stanje treh kontaktov. Delovanje robota je omogočeno, ko je na vseh kontaktih visoko stanje. S tem je zagotovljena varnost tudi ob morebitnih deformacijah varnostnega mehanizma ali ob prekinitvi napajanja. Sistem je zaradi treh kontaktov občutljiv tudi na dotik s strani. Slika 3 prikazuje končni videz varnostnega mehanizma na vijačniku. Z integrirano barvno osvetlitvijo, ki prikazuje trenutna stanja. Z barvno osvetlitvijo operaterju med izvajanjem naloge sporočimo, kakšno je stanje varnostnega mehanizma in ga s tem tudi dodatno opozarjamo, kdaj ni primerno biti v stiku z robotom. S tem je zagotovljena dodatna varnost. 103 U STAVITEV K2 K1 24 V AND AND ZELEN A N OR MOD R A K3 R D EČ A Slika 4. Prikaz logike varnostnega mehanizma. Logika varnostnega mehanizma je takšna, da ko je varnostni mehanizem vključen in ko so kontakti sklenjeni, sveti zeleno. V primeru, da je varnostni mehanizem vključen in v kontaktu z operaterjem, sveti modro. Če varnostni mehanizem izklopimo, sveti rdeče. Tehnika menjave orodja Ker je bila želja vijačiti različne vijake, smo poskrbeli, da lahko preprosto menjujemo tudi orodje na vijačniku. Podajalnik orodja smo izdelali sami. Zgradba podajalnika je podrobneje razvidna iz slike 5. 1 pristopa je bil, da se je vijak prilagodil legi orodja. Zanesljivost pobiranja vijakov smo ocenili na podlagi 1000 ponovitev. V času testiranja se je pobiranje izkazalo za zelo zanesljivo, saj je bila uspešnost 100-odstotna. Na podlagi rezultatov smo ocenili, da je takšen pristop manj občutljiv na lego vijaka. 2 5 3 4 Slika 5. Prikaz podajalnika orodja: 1 - orodje za vijačenje, 2 - tulec, 3 - stojalo za orodje, 4 - pnevmatsko prijemalo, 5 - prsti prijemala za zaklep tulcev. K menjavi orodja smo pristopili tako, da smo orodje obdali s primerno oblikovanimi tulci z utori za lažji prijem. Za prijem orodij smo izbrali pnevmatsko prijemalo, ki je skupaj s prsti vgrajeno v podajalno mizo. Prsti so primerno oblikovani, da zagotovijo zanesljiv prijem tulcev. Menjava orodja poteka tako, da se z vijačnikom pri nizkih vrtljajih približujemo k orodju. Ko se po obliki orodje ujame z magnetnim podaljškom na vijačniku, prijemalo popusti in orodje se fiksira v podaljšek. Robot se nato z vijačnikom umakne in varnostni mehanizem pokrije orodje. Tehnika pobiranja vijakov Glavna težava pri pobiranju vijakov je predvsem nezanesljiva lega in orientacija vijaka. Težava pa se pojavi tudi pri pobiranju vijakov z varnostnim mehanizmom, ki prekriva orodje. Težavo z varnostnim mehanizmom smo rešili tako, da ga z distančnikom, ki je razviden iz slike 6, odmaknemo. Distančnik je primerno oblikovan, da omogoča pobiranje vijaka pod različnimi nakloni vijačnika. Tehnika vijačenja vijakov Pri vijačenju vijakov s sodelujočim robotom se je pojavila težava kako zagotoviti dovolj veliko silo, ki onemogoča zdrs nastavka na glavi vijaka in hkrati dovolj majhno silo, da se robot ne ustavi. Ko robot pobere vijak, se z vijačnikom postavi nad navojno izvrtino, v katero bo vijačil. Ko je vijačnik dovolj blizu, da operater ne more poseči med varnostni mehanizem in površino (D = 5 mm), v katero vijačimo, se varnostni sistem vijačnika izklopi. V tem trenutku varnostni sistem sveti rdeče. Zažene se vijačnik in se s primerno hitrostjo linearno približuje izvrtini. Tik preden je vijak v celoti privijačen, izklopimo sodelujoči način robota, da lahko na vijak delujemo z večjo silo. Takoj, ko se vijačenje uspešno izvede, se sodelujoč način ponovno vključi. Vijačnik se umakne od točke vijačenja, nato pa se vključi tudi varnostni sistem vijačnika. Poudariti je treba, da je kljub izklopu sodelujočega načina programsko urejeno, da se robot ustavi, ko prekorači vnaprej določeno silo. V našem primeru je ta sila 60 N. S tem preprečujemo, da bi lahko prišlo do mehanskih okvar v primeru, da se vijačenje ne bi uspešno izvedlo. 3 Integracija sistema Princip delovanja sistema je prikazan na sliki 7. Za pravilno delovanje celotnega sistema skrbi krmilnik PLC, ki deluje kot nadzorni sistem. Robot Fanuc je na krmilnik PLC povezan preko komunikacije Ethernet IP in preko digitalne varnostne vhodno-izhodne linije. Preko varnostne linije je omogočen popoln nadzor nad delovanjem robota. Robot je povezan tudi na podajalnik orodja, in sicer preko digitalnega izhoda. 3 vijačnik 1 varnostni mehanizem krmilnik vijačnika Kolver 2 Siemens krmilnik Slika 6. Prikaz podajalnika vijakov: 1 - distančnik, 2 - glava vijaka, 3 - varnostni mehanizem vijačnika. Vijake smo pobirali z magnetnimi nastavki pod naklonom 80°. Pristop je bil takšen, da smo v neposredni bližini glave vijaka pri velikih hitrostih vrtenja vijačnika počasi spuščali orodje. Rezultat 104 robotska roka krmilnik Fanuc podajalnik orodja Slika 7. Prikaz vezave celotnega sistema. Varnostni mehanizem je povezan s krmilnikom PLC preko digitalne vhodno izhodne linije. Logika delovanja varnostnega mehanizma je na krmilniku PLC. To vključuje barvno osvetlitev in nadzor nad stanjem kontaktov v varnostnem mehanizmu. Vijačenje se izvaja z vijačnikom Pluto 6, katerega krmilimo preko krmilnika Kolver. Na krmilniku se vnaprej določijo zahteve za vijačenje posameznega vijaka. Nato se proži program, ki ga potrebujemo. Krmilnik vijačnika je prav tako povezan na nadzorni sistem preko digitalnih vhodno/izhodnih linij. Takšna vezava je smiselna zaradi varnosti pri vijačenju, saj je v nekaterih primerih ob ustavitvi robota treba zagotoviti, da se ustavi tudi vijačnik. Ob ponovnem zagonu pa je zaželeno, da se tudi vijačnik zažene nemoteno. S tem dosežemo, da je vijačenje zanesljivo, tudi če pridemo v kontakt z robotom med samim vijačenjem. 4 Razprava Cilj, ki smo si ga zadali, je izvedba aplikacije vijačenja, v kateri si robot in operater delita delovni prostor (slika 8). Glavna težava je bila predvsem zagotoviti zanesljiv varnostni sistem, ki bi omogočal, da je operater pri vijačenju lahko prisoten, kljub temu da gre za nevarno orodje in nevarno nalogo. Pristop, ki smo ga izvedli se je izkazal za uspešnega, saj varnostni mehanizem kljub svoji enostavnosti, predstavlja zelo varen sistem. Operaterju je namreč fizično onemogočeno, da bi lahko prišel v kontakt z orodjem ali vijakom, hkrati pa se ob dotiku varnostnega mehanizma ustavi delovanje celotne aplikacije. K varnosti pripomore tudi krmilnik PLC Siemens, ki v aplikaciji deluje kot nadzorni sistem, preko katerega teče komunikacija med napravami. Implementiran sistem se je izkazal za varnega in primernega za sodelujočo aplikacijo. 5 Zaključek V okviru projekta smo izvedli sodelovalno aplikacijo, v kateri robot in operater sodelujeta pri vijačenju in si pri tem tudi delita delovni prostor. Spoznali smo, da je za zagotovitev varnosti pri vijačenju nujno potreben dodaten varnostni sistem, ki preverja, ali je v območju nevarnega orodja prisoten operater. Spoznali smo tudi, da je za varnostno logiko najbolj primerno zunanje krmiljenje, ki nadzoruje delovanje vseh naprav v sistemu. Kljub uspešni izvedbi vijačenja, so možnosti tudi za nadgradnjo. Celotno aplikacijo bi bilo v nadaljnje smiselno nadgraditi s samodejno zaznavo obdelovanca s pomočjo strojnega vida. Za bolj natančno in zanesljivo delovanje bi bilo smiselno nekatere naprave, ki so prisotne v aplikaciji, izdelati iz primernejših materialov. Varnostni mehanizem bi bilo smiselno preoblikovati tako, da bi omogočal podajnost vijačnika pri vijačenju. S tem bi zagotovili, da vijačnik na vijak deluje vedno s primerno silo, ki bi bila ponovljiva, hkrati pa bi bilo s tem tudi samodejno poskrbljeno za sinhron pomik vijačnika glede na hitrost vijačenja. Prednost podajnosti vijačnika je tudi v tem, da pri morebitnih trkih zaradi umika vijačnika ne pride do poškodbe naprav. Literatura [1] Kruger J, Lien TK, Verl A. Cooperation of human and machines in assembly lines. CIRP Annals Manufacturing Technology 58:628–646; 2009. [2] Heyer C. Human-Robot Interaction and Future Industrial Robotics Applications. IEEE/RSJ International Conference on Intelligent Robots and Systems 2010;4749–54. “doi:10.1109/IROS.2010.5651294.” [3] Robot Fanuc CR-7iA, www.fanuc.eu/si/sl/roboti/stran-sfiltrom-robotov/kooperativni-roboti/collaborative-cr7ial, [Dostopno: 17. 07. 19]. Zahvala Raziskovalni program št. P2-0228 je sofinancirala javna agencija za raziskovalno dejavnost Republike Slovenije iz državnega proračuna. Gradniki, orodja in sistemi za tovarne prihodnosti / GOSTOP, OP20.00361, Št. pogodbe C3330-16-529000, 2016-20, naložbo sofinancirata Evropska unija iz Evropskega sklada za regionalni razvoj in Republika Slovenija. Slika 8. Prikaz sodelovanja. 105 Daljinsko vodenje robota z inercijskimi merilnimi enotami Gaja Žumer1 , Jernej Puc2 , Janez Podobnik1 , Marko Munih1 1 Laboratorij za robotiko, Fakulteta za elektrotehniko, Univerza v Ljubljani 2 Fakulteta za matematiko in fiziko, Univerza v Ljubljani {1 Tržaška 25, 2 Jadranska 19}, 1000 Ljubljana E-pošta: {jp4745, gz1671}@student.uni-lj.si, {janezp, marko}@robo.fe.uni-lj.si Abstract 2 We describe a generally applicable approach for intuitive and remote robot control, which relies on estimating the orientation of inertial measurement units that are placed on the upper and lower part of the user’s arm. The Unscented Kalman filter, a key component in this estimation, is briefly discussed. Practical counter-measures to typical problems are considered, as well as suggestions for extending the application. The described approach is evaluated on a practical case, comparing the estimated trajectory to that of the robot and of Optotrak Certus’ reference. 1 Uvod Odkar se je sledenje človeškega gibanja pojavilo na raziskovalnem področju robotike, se je uveljavilo kot zmogljivo orodje pri vodenju robotskih sistemov; primeri uporabe se vrstijo od daljinskega upravljanja [1] do enostavnega učenja trajektorij [2]. Pri teh je dejanska uporabnost navadno pogojena s sistemom za sledenje (npr. optični ali mehanski), ki uporabnika omejuje z zahtevami po prostoru, neprekinjeni vidnosti sledenega objekta ali drugimi fizičnimi omejitvami, poleg tega pa so lahko natančne konfiguracije cenovno nerazpoložljive [3]. Iz teh razlogov so dostopne, majhne in lahke naprave (ang. microelectromechanical systems - MEMS) postale pomemben merilni sistem na področju kinematike in gibanja [4, 5]. Z uporabo naprav, kot so inercijske merilne enote (IME oziroma ang. IMU - inertial measurement unit), lahko omejitve sistemov za sledenje gibanja poljubno omilimo glede na robustnost brezžične komunikacije. V prispevku je privzeta uporaba IME, ki vsebujejo triosni žiroskop, pospeškometer in magnetometer, saj je na podlagi kotne hitrosti, pospeška in gostote magnetnega polja lahko z metodami za senzorno fuzijo (kot je npr. Kalmanov filter) ocenjena orientacija objekta. Osrednja ideja aplikacije je povezava lege vrha robota v baznem koordinatnem sistemu z lego dlani v koordinatnem sistemu rame. V nadaljevanju je opisan in ovrednoten postopek vodenja robota, ki realnočasno sledi poziciji dlani, izračunani iz orientacij IME. Postopek omogoča zmogljivost ročnega vodenja (hand-guiding) z dodano možnostjo vodenja na daljavo. ERK'2019, Portorož, 106-109 106 Metodologija Da bi lahko sklepali o primernosti vodenja robota z uporabo IME, primerjamo tri različne meritve pozicij: • meritve referenčnih pozicij dlani, ki jih dobimo z uporabo Optotrak Certus sistema, • s pomočjo Kalmanovega filtra izračunane želene pozicije robota iz meritev IME in • prebrane (dejanske) pozicije robota. Slika 1 prikazuje vse potrebne elemente merilnega sistema in povezave med njimi. Najpomembnejši je program napisan v programskem jeziku Python, ki skrbi za uspešno in usklajeno komunikacijo med ostalimi elementi ter istočasnim računanjem želenih pozicij z uporabo Kalmanovega filtra. Slika 1: Diagram komponent potrebnih za opravljanje meritve in vrste povezav med njimi. 2.1 Kinematika Položaj rame prama definiramo kot koordinatno izhodišče [0, 0, 0]T globalnega koordinatnega sistema, ki je poravnan s koordinatnim sistemom robota. Če poznamo dolžini nadlahti `nad in podlahti `pod ter njuni orientaciji Rnad in Rpod , pdlan izračunamo kot: pkomolec = prama + Rnad · vnad , pdlan = pkomolec + Rpod · vpod , pri čemer sta vektorja nadlahti vnad in podlahti vpod definirana kot [`nad , 0, 0]T in [`pod , 0, 0]T za konfiguracijo na Sliki 2. polja je dokaj splošna, zato za normirani primer zadošča, da gledamo le z-komponento projekcije, medtem ko je vektor referenčnega (Zemljinega) magnetnega polja težje definirati za vsako lokacijo posebej. Poleg tega je z njim določena usmeritev globalnega koordinatnega sistema, zato bi želeli, da je definirano v skladu s specifično aplikacijo (npr. poravnano s koordinatnimi osmi upravljanega robota). V ta namen preko enačbe href = RT h Slika 2: Razporeditev IME po roki uporabnika s pripadajočo vektorsko obliko, ki določa kinematične lastnosti sistema. 2.2 UKF (Unscented Kalman filter) Med algoritmi za senzorno fuzijo je Kalmanov filter med najbolj uveljavljenimi. Slednji v vsakem trenutku oceni verjetnostno porazdelitev spremenljivk dinamičnega sistema glede na zaporedje meritev z znano statistično napako. V obravnavanem primeru se z integracijo kotne hitrosti po času oceni orientacijo v danem trenutku (prediction), nato pa na podlagi meritev pospeška in magnetnega polja oceno dopolni glede na ujemanje z referenčnimi polji (update). Orientacija je interno obravnavana v kvaternionski obliki; kvaternioni, ki predstavljajo razširitev kompleksnega prostora na štiri dimenzije, se v splošnem uporabljajo zaradi prednostnih matematičnih lastnosti [6, 7]. Za nelinearne probleme, kot je ocenjevanje orientacije, predpostavke osnovnega filtra niso izpolnjene, zato je v ta namen uporabljena njegova razširitev, t.i. Unscented Kalman filter (UKF), ki jih zadovoljivo aproksimira. Ker je teoretično ozadje filtra preobširno za podrobno obravnavo v tem prispevku, je bralec napoten k uporabljenem viru [8]. Medtem ko lahko `nad in `pod enostavno izmerimo za vsakega uporabnika pred inicializacijo, se Rnad in Rpod dinamično posodabljata glede na ocenjeni orientaciji IME. Orientacijo v diskretnem času n predstavimo z enotskim kvaternionom qm,n = [qr qi qj qk ], ki se posodablja glede na merjeno kotno hitrost ω m,n , kot jo meri m-ti IME, po znani enačbi 1 [6]: Z qm,n+1 = qm,n + q̇m,n dt, Z 1 q̇m,n dt = qm,n ⊗ [0 ω m,n ]T ∆t, 2 (1) kjer je ⊗ oznaka za kvaternionski oz. Hamiltonov produkt. Oboje je kompenzirano s korakom korekcije ob posodobitvi ocene Kalmanovega filtra. Da oceno popravimo, projiciramo orientacijski kvaternion v meritveni prostor, tj. rotiramo referenčna vektorja polj (težnostno in magnetno), nakar je ocena primerljiva z rezultati meritev. Definicija vektorja težnostnega 107 inverzno rotiramo merjeno magnetno polje h nazaj v referenčno href ter ga po preureditvi proglasimo za novo referenco ĥ [7]. Najbolj smiselno je, da določimo velikost (normo) horizontalne komponente in jo razdelimo med x, y-osi glede na želeno deklinacijo (kot φ z-rotacije med referenčnim poljem in baznim koordinatnim sistemom); ta mora biti eksperimentalno določena (preverjena) pred vsako inicializacijo: hhor = k[href x , href y ]k, ĥx = hhor cos φ, ĥy = hhor sin φ. Vertikalna komponenta ĥz v tem primeru ostaja enaka kot pri href . Ko imamo referenco znano, je projekcija v meritveni prostor ponovna rotacija referenčnega polja: h = R ĥ. Matematični modeli, ki opisujejo stanje in prehodno delovanje Kalmanovega filtra, so lahko poljubno kompleksni (in računsko zahtevni). Za obravnavani primer je najpreprosteje, da se orientaciji IME na nadlahti in podlahti ocenjujeta sočasno s svojim filtrom, za stanje posameznega filtra pa se vzame pripadajoči orientacijski kvaternion. 2.3 Vodenje robota in komunikacija Uporabljen je 6-osni robot Epson PS3-AS00 s krmilnikom RC170. Na strani robota se izvaja program, napisan v programskem jeziku SPEL, ki skrbi za komunikacijo in vodenje robota. Z računalnikom komunicira po Ethernet protokolu (TCP/IP), pri čemer se na robota pošilja trenutno izračunano pozicijo dlani. Ukazu za linearni premik, ki se izvaja v zanki, je dodan način CP (ang. continuous path control), ki zagotavlja zvezno gibanje vrha robota. 2.4 Optotrak Certus Z Optotrak kamero so bile izmerjene referenčne pozicije dlani in rame. Vzpostavljena je bila UDP komunikacija s Simulink shemo na računalniku, ki je bila namenjena shranjevanju meritev. Da so izmerjene pozicije dlani podane relativno glede na globalni koordinatni sistem (in ne koordinatni sistem merilne naprave - sistema Optotrak Certus), se od njih odšteje pozicijo rame prama , ki v opisani aplikaciji služi kot izhodišče globalnega koordinatnega sistema. 3 Rezultati Sledeči rezultati so bili pridobljeni s krožnim gibanjem dlani v ravnini x-y glede na globalni koordinatni sistem (gl. sliko 2). Na sliki 3 so za vsako koordinatno os prikazani grafi referenčnih pozicij dlani (Opto), želenih pozicij vrha robota (IME) in prebranih pozicij vrha robota (Robo) v odvisnosti od časa. Slika 4: Škatlični diagram za tri različne reprezentacije napak med želenimi pozicijami in dejanskimi pozicijami robota (IMERobo), referenčnimi pozicijami dlani ter želenimi pozicijami robota (Optotrak-IME) in med referenčnimi pozicijami dlani in dejanskimi pozicijami robota (Optotrak-robot). Slika 3: Grafi referenčnih pozicij dlani merjenih z Optotrakom (Opto), želenih pozicij vrha robota (IME) in dejanskih pozicij vrha robota (Robo) v odvisnosti od časa. Zavoljo preglednosti ordinate grafov niso v istem merilu. Napake po oseh - povprečne vrednosti absolutnih razlik med referenčnimi pozicijami dlani (Opto) in dejanskimi pozicijami robota (Robo) - so primerljive in znašajo 9.5 mm, 13.3 mm, in 8.9 mm z ozirom na osi x, y in z. Iz primerjave želenih pozicij robota (IME) z njegovimi dejanskimi pozicijami (Robo) je razviden časovni zamik, ki nastane zaradi komunikacije med računalnikom in robotom ter premika robota. Pri primerjavi poteka referenčnih (Opto) in izračunanih pozicij dlani (IME) je iz grafov vidna razlika, ki nakazuje na pomanjkljivosti računske metode in kinematičnega modela roke, slabe kalibracije IME, neugodne vplive iz okolja (npr. vpliv bližine kovinskih objektov na meritve magnetometra), itd. Največje odstopanje se kaže med referenčnimi pozicijami dlani (Opto) in pozicijami robota (Robo), kar je posledica prej omenjenih pomanjkljivosti. V tabeli so podane izračunane povprečne vrednosti omenjenih napak in pripadajoči standardni odkloni. Osnovna statistična analiza napak je grafično prikazana na sliki 4. Tabela 1: Povprečne vrednosti in standardni odkloni napak (norm razlik) med izračunanimi pozicijami (IME), izmerjenimi pozicijami robota (Robo) in izmerjenimi pozicijami dlani (Opto). Kakovost vodenja je odvisna od večjega števila spremenljivk in dejavnikov, začenši s fizičnimi omejitvami izbranega robota (konfiguracija sklepov, število osi, delovni prostor, maksimalne hitrosti in pospeški, itd.). Med izvajanjem meritev je bila nastavljena minimalna hitrost premika robota na 900 mm/s. Določena je bila eksperimentalno z namenom, da pri tej robot ni preveč zaostajal za premiki dlani, saj je potrebno upoštevati časovni zamik pri komunikaciji. Smiselno bi bilo dinamično prilagajanje hitrosti robota glede na izmerjene kotne hitrosti premikanja dlani, vendar v primerjavi z zagotovljeno minimalno vrednostjo ne bi prišlo do izraza. Mirovanje predstavlja dodaten problem. Zaradi tresenja roke robot sledi šumni trajektoriji, čeprav bi želeli, da miruje na mestu. V tem primeru bi dinamično prilagajanje hitrosti prav tako prišlo v poštev. Za kompenzacijo tresljajev bi lahko ponovno uporabili Kalmanov filter, ki bi se v svojih fazah zanašal na različne pristope, od določenega dinamičnega modela do izračuna na podlagi orientacij IME, ali celo razširil koncept senzorne fuzije in uporabljal podatke kamere ali Optotraka. V vsakem primeru v sistem vnesemo nekaj zamika, hkrati pa dodaten UKF prinaša več zapletov in naredi model precej zahtevnejši. Druga ideja za kompenzacijo tresljajev temelji na predpostavki, da se slednji najbolj izrazijo v času mirovanja, medtem ko so med gibanjem manj problematični. Predlagana rešitev je uporaba sigmoidne funkcije S(x) = ki je razširjena s parametri za natančnejše nastavljanje v S(x) = Primerjane pozicije IME-Robo Opto-IME Opto-Robo povp. vrednost [mm] 8.7 13.6 20.5 std [mm] 5.6 6.3 7.3 108 1 , 1 + e−x Smax ; 1 + e−s (x−x0 ) S(x) ∈ (0, 1), katere namen je zagotoviti zvezen prehod med konstantno preslikavo f (x) = 0 in linearno funkcijo g(x) = x: x f (x) + S(x) (g(x) − f (x)) = . 1 + e−s (x−x0 ) Tako bo glede na velikost premika ta bolj ali manj zadušen. Uvedemo prag blaženja d, od katerega naprej želimo, da je premik zaznan v celoti. Nastavimo x0 = d2 ter strmino prehoda s kot s = 2 log 1 Emax −1 . d S tem dosežemo, da bo nezveznost na pragu enaka Emax = S(0) = 1 − S(1). Odločamo torej med gladkostjo prehodne funkcije in napako nezveznosti. Tako izpeljemo enačbo, s katero zagotovimo stabilizacijo v času mirovanja in glajenje tekom izvajanja premika: ∆p . p2 = p1 + d e−s(k∆pk− 2 ) + 1 Primer take prenosne funkcije je funkcija s predpisom f (x) = x ; x ∈ (0, ∞), 1 + e−200(x−0.05) katere potek je prikazan na sliki 5. trajektoriji, ki jo opisuje dlan upravljalca. Vodenje je realnočasno in intuitivno, a hkrati nenatančno v primerjavi z diskretnimi alternativami. Omejitve opisanega postopka so povezane z zmogljivostjo robota (hitrost in način komunikacije, hitrost premikanja, konfiguracija sklepov), natančnostjo kalibracije IME, napakami zaradi tresljajev rok in šuma v meritvah uporabljenih senzorjev, itd. V primerih, kjer je natančnost kritičnega pomena, je torej še vedno zaželena in potrebna natančnost eksplicitnega vnosa. Uporabnost metode je tako odvisna od aplikacije; primer bi bilo hitro učenje trajektorij, ki se v naknadnih procesih zgladijo in uredijo, kot sestavni del hibridnega vodenja ali zahtevnejše realnočasno upravljanje na daljavo [1]. Pristop je zlahka razširljiv in nosi potencial za različne aplikacije. Med predlogi za nadaljnji razvoj je hkratna uporaba obeh dlani za boljši nadzor nad položajem in rotacijo robotskega vrha. Alternativno bi druga dlan oblikovala kretnje naučenih ukazov, prepoznavne npr. z Dynamic time warping ali kompleksnejšimi algoritmi. Zahvala Študija je bila opravljena v sklopu raziskovalnega programa št. P2-0228, ki ga je sofinancirala Javna agencija za raziskovalno dejavnost Republike Slovenije iz državnega proračuna. Literatura [1] D. Whitney, E. Rosen, D. Ullman, E. Phillips, S. Tellex. ROS reality: a virtual reality framework using consumergrade hardware for ROS-enabled robots. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2018. Slika 5: Graf funkcije f(x). Med pomembnimi lastnostmi robota je tudi način in hitrost komunikacije, ki sta lahko večja povzročitelja napak. Za zagotavljanje zveznega gibanja je namreč ključnega pomena visoka frekvenca izmenjave podatkov. Za obravnavano konfiguracijo se je izkazalo, da se hitrost komunikacije občutno zmanjša, ko med vodenjem poteka tudi branje pozicije vrha robota. Na podlagi pridobljenih meritev je bil izračunan približen čas, ki preteče med pošiljanjem želene pozicije, izvedbo premika ter branjem in posredovanjem nove pozicije robota na računalnik. Večino časa, ki znaša 0.45 s, se porabi za dejanski premik in branje nove pozicije vrha robota. Pri izračunu je bila uporabljena križna korelacija med želeno in dejansko trajektorijo robota, ki ju je bilo potrebno predhodno interpolirati, saj posamezne meritve niso bile enakomerno časovno vzorčene. Robot UR5 bi bil s stališča hitrosti komunikacije primernejši (Ethernet (TCP/IP) komunikacija s pričakovano hitrostjo 500 Hz), vendar predstavlja druge omejitve pri vodenju, ki otežujejo aplikacijo. 4 Zaključek Predstavljena metoda omogoča daljinsko vodenje robota z inercijskimi merilnimi enotami prek sledenja vodilni 109 [2] M. Ortiz-Salazar, A. Rodriguez-Linan, L. M. TorresTrevino, I. Lopez-Juarez. IMU-based trajectory generation and modelling of 6-DOF robot manipulators. International Conference of Mechatronics, Electronics and Automotive Engineering, 2015. [3] N. Miller, O. C. Jenkins, M. Kallmann, and M. J. Matric. Motion capture from inertial sensing for untethered humanoid teleoperation, International Conference of Humanoid Robotics, pp. 547–565, 2004. [4] O. J. Woodman. An introduction to inertial navigation. University of Cambridge, Computer Laboratory, Technical Report UCAM-CL-TR-696. Avgust, 2007. [5] H. Qiang, S.Zhang. Applications of IMU in Humanoid Robot. Humanoid Robotics: A Reference. Springer Netherlands, 2019. [6] K. Feng, J. Li, X. Zhang, C. Shen, Y. Bi, T. Zheng, J. Liu. A New Quaternion-Based Kalman Filter for Real-Time Attitude Estimation Using the Two-Step GeometricallyIntuitive Correction Algorithm. Sensors (Basel). September, 2017. [7] S. O. H. Madgwick, A. J. L. Harrison, R. Vaidyanathan. Estimation of IMU and MARG orientation using a gradient descent algorithm. IEEE International Conference on Rehabilitation Robotics. Švica, 29. junij - 1. julij, 2011. [8] R. R. Labbe Jr. Kalman and Bayesian Filters in Python. Maj, 2018. Combining Foot Placement Prediction with Obstacle Detection to Detect Tripping Urban Bobek1 , Elmar Rueckert3 , Marko Jamšek1,2 , Saša Barišić4 , Jan Babič1 1 Laboratory for Neuromechanics and Biorobotics, Department of Automation, Biocybernetics and Robotics 2 Jozef Stefan International Postgraduate School, Jamova cesta 39, 1000 Ljubljana, Slovenia 3 Institute for Robotics and Cognitive Systems, University of Luebeck, Ratzeburger Allee 160, 23562 Luebeck, Germany 4 Bjelovar University of Applied Sciences,Trg Eugena Kvaternika 4, 43000 Bjelovar, Croatia E-pošta: bobek.urban@gmail.com Abstract Tripping is a major cause of fall related injuries, especialy among the elderly population. Some reaserch has been done on the mechanics of tripping and strategies to gain balance afterwards. But what if you could detect a potential trip in advance and possibly prevent it? We propose a system that involves detecting obstacles infront of the user and a method to predict whether they will hit it. 1 Introduction Falls and fall related injuries are very common among people, especially in the elderly population [1]. This is becoming an ever increasing problem, because the amount of elderly people is getting larger with every year [2]. The mechanism of tripping have been explored in the past [3, 4], but here we are interested in preventing tripping from even occuring. For this we would need a way to predict the future placement of the subjects feet and a prediction system of obstacles. Some research has already been done on predicting foot placement. In [5] they predicted foot placement in the mediolater direction based on the position and velocity of the subjects center of mass. Similarly, [6] predicted recovery foot placement when pertubating a subject in the sagital plane. A method, where the next contact location of the subjects foot gets predicted needed to be made. The prediction method we implemented takes advantage of the properties of probabilistic motion primitives (ProMPs) [7], that allow operations from probability theory. ProMPs have been used in many different robotic applications [8, 9] and also postural studies [10] to encode and predict movements. We combined this method with an obstacle detection system mounted on the subject. In this article we present a system that can both detect potential obstacles infront of the wearer and also predict if there is a chance of tripping. 2 Equipment and setup The entire system consist of two major parts, the foot placement prediction and the obstacle detection. The latter was achieved with the combination of a depth camera (RealSense Depth Camera D435, Intel, Santa Clara, USA) and 3D motion capture system (3D Investigator, ERK'2019, Portorož, 110-113 110 NDI, Waterloo, Canada). For the foot placement prediction, an Xsens motion capture suite (MTw Awinda, Xsens, Enschede, Netherlands) was used to capture subjects walking gait. Using this data we could then online predict where the subject is going to step using methods described in Section 3. A block diagram of the whole setup is depicted in Figure 1). The main computer receives the foot placement predictions from the Xsens computer, the data from the RealSense camera and the 3D motion capture system. It then combines this data to calculate if the subject is in danger of tripping. Xsens motion capture suit Motion capture data XSens computer Foot placement prediction RealSense depth camera 3D Investigator Motion Capture Video and point cloud Main computer Position of camera markers Figure 1: Block diagram of the setup used in the experiment. 2.1 Motion Capture In the setup we used two diffent motion capture (MC) systems. The first one is the Awinda human motion capture system (MTw Awinda, Xsens, Enschede, Netherlands) that uses IMUs placed on certain parts of the body. Using a complex kinematic model it then returns the whole body kinematics of the wearer. Using the proprietary software we could stream the data at 60Hz to a local Simulink (Mathworks, Nat- ick, MA, United States) scheme. For this specific experiment, we were only interested in the position and velocity of the left and right ankle. The Simulink scheme then calculated the most probable foot placement of the subject and sent it foward to the main computer. The other MC system used was the 3D Investigator Motion Capture system (3D Investigator, NDI, Waterloo, Canada) that can track special markers in 3D space with an accuracy of 0.4 mm. We used the RealSense depth camera to detect obstacles infront of the subject. Point cloud data captured by the camera is relative to its own coordinate frame, so we needed a way to know the cameras position and orientation in the global coordinate frame. The camera was attached to the subjects front and on it we placed 3 markers. Using the position of these markers we could then transform the depth camera data to the global frame. Both the depth camera and the motion tracking system streamed their data to the main computer, where all of the calculation necesarry was done. 2.2 Depth Camera for Obstacle Detection The RealSense depth camera was used for object detection. We used both the RGB video and the point cloud output of the camera to help represent the results on the main computer. The camera was slanted at an angle (approx. 40 ◦ ), so that the floor infront of the subject was visible. 3 φt ∈ R1×J denote a basis function vector containing values of J basis functions at time t. Variable w ∈ RJ×1 represents a J-dimensional feature vector that encodes weights for each of the J basis functions. With w and φt defined, a point at time t can be approximated as  at = φt w = φ1,t 0 3.1 Probabilstic Model of Trajectories Before any predictions could be made, we first needed a model of how the subjects gait looks like. Several repetitions of the subjects gait had to be recorded in order to obtain this model. We had the subject wear the Xsens MC suite and walk on a treadmill at a constant velocity (0.8 m/s). After 20 steps we could than process the data and learn the model. 3.1.1 Data aqusition The human gait is a periodic movement that consist of two main phases, the stance and the swing phase [11]. We focused on the latter, because only in this one the leg moves in space. This means that we had to seperate the recorded gait cycle into this two phases. Because the foot only moves during the swing phase we observed when the velocity of the foot in the sagital plane became positive. This moment indicated the end of the stance and the begining of the swing phase. The exact threshold was set empiricaly so that the small variations in velocity and the noise did not have an effect. During the learning of the model all three dimension and the time were recorded while the subject walked on a treadmill. After we processed the recorded data to extract the trajectories of the swing phases of all the gait cycles. Using these trajectories we could then train the probabilistic model. 3.1.2 Encoding recorded trajectories To keep the amount of parameters needed to represent trajectories as low as possible, ProMPs uses a basis function representation approach. To better understand the formulation, let us take a look at a simple example where we describe a point in time at using this method. Let 111 φJ,t  w1 ··· wJ T . This concept can be applied to multi-dimensional states by using block diagonal matrices. Let‘s assume that our  T variable at now has D dimensions at = a1,t · · · aD,t . In this case the basis function vector becomes a block diagonal matrix Φt ∈ RD×JD and the weight vector w becomes a concatenation of the weight vectors of each dimension w ∈ RJD×1 . Variable at is now approximated as   φt · · · 0  ..  w · · · w · · · w T , .. at = Φt w =  ... i D . . 1 Methods In this section we will describe the general theory of how the foot placement was predicted using probabilistic motion primivitives (ProMP) and the approach we used to detect obstacles. ··· ··· φt where  φt = φ1,t ··· φ2,t φJ,t  and  wi = w1,i w2,i ··· wJ,i T . Using the same idea we can approximate a sequence of T states denoted by τ = y1:T where τ = Φ1:T w (1) with  Φ1:T = Φ1 ··· Φt ··· ΦT T ∈ RT D×JD , where the vector w and the matrix Φt are the same as before. In Figure 2), you can see 1 dimension of a trajectory and its approximation using the described method. In our application we used Gaussian basis functions which are often used for point to point movements. To approximate the trajectories in the previously described manner, the weights for each trajectory need to be calculated. For the i-th trajectory τi the corresponding weight vector wi can be estimated using a simple least squares estimate. In our application the ordinary least square (OLS) method was used  −1 wi = ΦT1:T Φ1:T + λI ΦT1:t τi , (2) where λ represents a regularization parameter used to avoid numerical singularities. Its value should be small, in our case we used λ = 10−6 . 3.1.3 Creating the probabilistic model When the weight vectors of all trajectories are calculated, we assume their values to be normally distributed, i.e., p(w) = N (w|µw , Σw ). The mean µw and the covariance matrix Σw can be estimated with sample mean and sample covariance of the wi vectors. basis functions weights x 0 movement phase 1 data approximation = 00 0 movement phase 1 Figure 2: Approximating a sequence of states using 5 basis functions and their coresponding weights. With the function approximation (1) and the weight vectors wi defined, we can define a probabilistic model for trajectories as p(τ |w) = T Y N (yt |Φt w, Σy ) = N (y1:t |Φ1:T w, Σy ). t=1 This model describes the probability of observing trajectory τ , given the weight vector w that is given as a linear basis function y1:t = Φ1:T w + y,1:T . The parameter Σy represents independent and identically distributed (i.i.d.) Gaussian noise in the trajectories yt = Φt w + y , where y ∼ N (y |0, Σy ). On the top pane of Figure 3) you can see 1 dimension of several recordings of the leg swing trajectory. The bottom pane shows the model that we calculated from these recordings. The thick line represents the mean of the model and the shaded area the 1-σ standard deviation. The movement phase denotes the normalized time. 3.2 Computing Predictions from Observations Statistical theory tells us that we can model predictions as computing the conditional probability. First we need to define the probability distribution over the trajectories τ , which can be computed by marginalizing out the weight vector w. In the case of Gaussian distribution the marginal can be computed in closed form as Z p(τ ) = p(τ |w)p(w)dw Z = N (y1:T |Φ1:T w, Σy )N (w|µw , Σw )dw = N (y1:t |Φ1:T w, Φ1:T Σw ΦT1:T + Σy ). (3) What we get is a multivariate Gaussian distribution, the conditional probability of which we can compute in closed form. 112 movement phase 11 Figure 3: Trajectory distribution model calculated from several different trajectories. This model represents only one degree of freedom. When we receive a previously unseen point a∗ , we can predict the most likely path of the foot (parametrized through µ∗ and Σ∗ ) by conditioning the observed state over the weight vectors. Say that we observed a sequence of states yt1 to ytM at m=1, 2,..., M-different time points. We declare ν as a concatenation of the observed states ytm and Φν as the concatenation of the basis function matrices for the observed time points. With the observed trajectories encoded as previously described, we can obtain a conditioned distribution p(wν |ν) over the weight vectors w as p(wν |ν) ∝ N (ν|Φν wν , Σ0 )p(w) := N (wν |µw|ν , Σw|ν ). We can compute the mean µw|ν and the covariance matrix Σw|ν as µw|ν = µw + Σw ΦTν L(ν − Φν µw ) and Σw|ν = Σw − Σw ΦTν LΦν Σw where  −1 L = Σ0 + Φν Σw ΦTν . With the feature mean µw|ν and covariance matrix Σw|ν obtained, we can now use this conditional distribution to calculate the distribution over the trajectories p(τ ) using (3) p(τ ) = N (ỹ1:T |Φ1:T µw|ν , Φ1:T Σw|ν ΦT1:T + Σy ), where the predicted sequence of states ỹ1:T is represented by the product Φ1:T µw|ν . In Figure 4) a prediction is calculated through conditioning with one and two observed states. 3.3 Obstacle Detection For detecting obstacles the Intel RealSense D435 depth camera was used. Alongside RGB video it returns a point help the user avoid tripping by extending or shortening their step. The prediction process does not only return the final position of the foot, but also the whole path. This is why it could be used by itself for example in a gait analysis study, where certain events could be triggered in advance based on the calculated prediction. The downside of the system is that because the prediction model is based on the previous recordings of the subjects gait, the system will only work accurately for this specific movement. Changing the subject or even the velocity of the treadmill will result in much worse predictions. Implementing a phase estimation like in [9] could help with the changes in velocity. 5 movement phase Figure 4: A demonstration of predicting a path through conditioning on observed states. On the top pane only one point was observed, so the predicted path is very similar to the model mean. The dark blue area represents a 1 − σ deviation from the predicted path. On the bottom pane, two points were observed so the quality of the prediction increases. cloud - a matrix of distances from the camera to the objects infront. To simplify the object detection we splited the visible 3D space of the camera in small cubes, i.e. voxels. We then used the point cloud to fill in the corresponding voxels. Using the data from the three markers above the camera, this output gets transformed to the world coordinate system. This approach also gives us a simpler and computationaly less demanding visualization of the world. Because the location of the treadmill was known, we knew which voxels represent it. This way, when voxels above the treadmill were observed, we knew there was an obstacle in the way. This computation is all done on the main computer to which also the Xsens computer streams its foot placement prediction alongside the current position of the subjects feet. This data is already in the world coordinate frame. With each iteration we checked if the predicted foot placement coincides with any of the obstacle voxels and if they did, we identified this as a potential collision. 4 Aknowledgements This work was supported by the European Union’s Horizon 2020 through the SPEXOR project (contract no. 687662); AnDy project (contract nr. 731540); and by the Slovenian Research Agency (research core funding no.P20076). References [1] W. R. Berg, H. M. Alessio, E. M. Mills, and T. O. N. G. Chen, “Circumstances and consequences of falls in independent community- dwelling older adults,” pp. 261–268, 1997. [2] U. N. P. F. U. Internationa, , and HelpAge, Ageing in the Twenty-First Century: A Celebration and A Challenge, 2012. [3] A. M. Schillings, J. Duysens, and S. Maartenskliniek, “Muscular Responses and Movement Strategies During Stumbling Over Obstacles,” pp. 2093–2102, 2000. [4] B. M. H. V. Wezel and J. Duysens, “Mechanically induced stumbling during human treadmill walking,” vol. 67, 1996. [5] M. Arvin, M. J. Hoozemans, M. Pijnappels, J. Duysens, S. M. Verschueren, and J. H. van Dieën, “Where to step? Contributions of stance leg muscle spindle afference to planning of mediolateral foot placement for balance control in young and old adults,” 2018. [6] C. F. Lei Zhang, “Predicting foot placement for balance through a simple model with swing leg dynamics, 2018.” [7] A. Paraschos, C. Daniel, J. Peters, and G. Neumann, “Probabilistic Movement Primitives,” Advances in Neural Information Processing Systems 26, pp. 2616–2624, 2013. [Online]. Available: http://papers.nips.cc/paper/5177probabilistic-movement-primitives.pdf [8] ——, “Using probabilistic movement primitives in robotics,” pp. 529–551, 2018. Discussion The presented system was able to predict the foot placement of both left and right foot of a subject walking on a treadmill. When an obstacle was presented, the system accurately detected it and sent a warning if the predicted foot placement was coinciding with it. The main computer returned a visual feedback where the output of the camera, the current foot positions and the predicted foot placements were visible. A system like this could eventualy be implemented in a assistive exoskeleton, that would 113 [9] G. Maeda, M. Ewerton, G. Neumann, R. Lioutikov, and J. Peters, “Phase estimation for fast action recognition and trajectory generation in human–robot collaboration,” pp. 1579–1594, 2017. [10] E. Rueckert, J. Camernik, J. Peters, and J. Babic, “Probabilistic Movement Models Show that Postural Control Precedes and Predicts Volitional Motor Control,” Scientific Reports, vol. 6, no. February, pp. 1–12, 2016. [11] A. Alvarez-alvarez, “Linguistic Description of the Human Gait Quality,” vol. 26, no. 1, pp. 13–23, 2013. Simulacije in modeliranje Simulations and Modeling Numerična analiza vpliva temperature zraka v izdelovalnem prostoru na temperaturo površine kalupne votline pri brizganju plastike 1 Kristjan Krebelj, 2Dragan Kusić, 3Dejan Antolovič, 1Anton Krebelj in 2Aleš Hančič 1 Tehnoplast s.p., Neverke 30, 6256 Košana, Raziskovalno razvojna skupina TECOS, Razvojni center orodjarstva Slovenije, Kidričeva 25, 3000 Celje 3 KOLEKTOR ORODJARNA d.o.o. - PE Postojna, Industrijska cesta 2, 6230 Postojna E-pošta: kristjan.krebelj@tehnoplast.si 2 Numerical analysis of the production room air temperature effect on the mold cavity surface temperature in plastics injection molding Abstract. The effect of the temperature of the air in the production room was analyzed with respect to the temperature of the injection mold cavity. The cyclic heat addition due to material injection was modeled as a constant heat flux into the mold through the mold cavity surface. With a non-stationary numerical thermal analysis the time of mold temperature reaching a steady state was assessed. This allowed confirming that the surrounding air indeed has the potential to disturb the production process stability by shifting the mean mold cavity temperature in the order of 1 K should the room temperature shit for 10 K, as day/night or winter/summer changes might impose. 1 Uvod Zasnovan je bil postopek termične analize orodja za brizganje plastike z vidika vplivnosti zraka v izdelovalnem prostoru. Namen je bil analizirati vpliv temperature zraka v prostoru izdelave na temperaturo površine gnezda orodja. Ta je pomembna za proces izdelave in želja jo je ohraniti neodvisno od motenj. 1.1 Motivacija V procesu brizganja plastike je temperatura površine gnezda orodja pomemben dejavnik za razvoj termomehanskih razmer med izdelavo, ki vodijo do različnih lastnosti oz. kvalitete izdelka [1]. Za zagotavljanje kvalitete izdelka je zato pomembno, da je temperatura površine gnezda orodja nadzorovana. Z izboljšanjem razumevanja tega vpliva se obeta izboljšanje stabilnosti proizvodnega procesa, kar pomeni dvig ekonomičnosti preko zmanjšanja količine izmeta ali pa višjo kvaliteto izdelkov. 1.2 Prenos toplote pri brizganju plastike Proizvodnja brizganja plastike je cikličen proces. V gnezdo orodja se periodično dovaja raztaljen polimer, ki prinaša toploto. Ta se preko površine gnezda prevaja po orodju do hladilnih kanalov po katerih teče hladilno sredstvo – navadno voda. Del toplote, ki jo vnaša polimer, se lahko odvaja v ozračje preko zunanje površine orodja. Večji kot je ta delež, večja je verjetnost, da bo sprememba temperature zraka v ERK'2019, Portorož, 115-118 115 prostoru vplivala na temperaturo površine gnezda orodja. 1.3 Učinkovitost hladilnega sistema Hassan et al. [2] so numerično raziskali vpliv oblike preseka hladilnih kanalov in njihove bližine izdelku. Ugotovili so, da bližanje kanalov izdelku sicer pospeši odvod toplote a po drugi strani poveča neenakomernost temperaturnega polja na površini gnezda. Učinkovitost oblikovno prilagojenih hladilnih kanalov je bila pogosto primerjana z učinkovitostjo konvencionalnih hladilnih kanalov [4], [5], pri čemer je bila ugotovljena izboljšava tako hitrosti odvoda toplote kot enakomernosti temperaturnega polja. Zink in Kovács [3] sta ugotovila znaten upad učinkovitosti hladilnega sistema zaradi odlaganja vodnega kamna v hladilnih kanalih. Analize vpliva temperature zraka v izdelovalnem prostoru na temperaturo kalupne votline v literaturi ni bilo zaslediti. 2 Metodologija V okviru tega dela je bila iskana razlika v povprečni temperaturi površine gnezda orodja, ki je posledica spremembe temperature zraka v prostoru izdelave. S tem je bil analiziran vpliv, ki ga tipično vnaša sprememba letnega časa na stabilnost proizvodnje. Raziskani so bili tudi nekateri dejavniki, ki bi lahko bili pri tem pomembni. 2.1 Vrsta analize Analiza je bila narejena v neustaljenih razmerah. S tem je bilo zasledovano, po kolikšnem času od začetka zagona je pričakovati, da se bo izdelovalni proces stabiliziral. V okviru te analize je odveč zasledovati časovni razvoj temperature na površini gnezda za različne trenutke brizgalnega cikla. Namesto tega je bila toplota, ki jo dovaja polimer v ciklih, upoštevana kot časovno konstanten toplotni tok, ki dovede enako toplote, kot jo odda izdelek v času brizgalnega cikla. 2.2 Izdelek in izdelovalni proces Analiziran je bil proces izdelave izdelka iz materiala ABS Terluran GP-22. Izdelek je velikosti približno 200 × 100 mm in debeline 1,6 mm, kakor je prikazano na sliki 1. Njegov volumen je 41 cm3. Orodje je jekleno, in njegove zunanje dimenzije so približno 400 × 350 × 360 mm. Zunanja površina je poenostavljena na skupek kvadrov, od notranjih detajlov pa sta upoštevana oblika votline in oblika hladilnih kanalov. Slika 1: Geometrijski model obravnavanega izdelka. Za potrebe tega dela so privzete tipične izdelovalne nastavitve. Izdelovalni cikel traja pol minute. Temperatura taline se nastavi na 220 °C, temperatura hladilnega sredstva pa na 40 °C. 2.3 Numerični model Izvedena je termična analiza oz. modeliranje difuzije toplote. Materialni parametri so izbrani kot temperaturno neodvisni. Upoštevana je simetrija orodja za prihranek računskega časa, kar bo pojasnjeno skupaj z ostalimi robnimi pogoji, pri čemer je z analizo izdelka ugotovljen toplotni tok, ki ga vnaša dovod materiala v kalupno votlino. 2.3.1 Prenos toplote Prenos toplote je modeliran po Fourierovem zakonu, po katerem je toplotni tok q proporcionalen toplotni prevodnosti k in temperaturnemu gradientu ∇𝑇: (1) 𝒒 = −𝑘 ∇𝑇 Rešuje se parcialna diferencialna enačba nestacionarnega prenosa toplote: 𝜕𝑇 𝑘 2 (2) = ∇ 𝑇 𝜕𝑡 𝑐 𝑝 𝜌 kjer je 𝑡 čas, 𝑐 𝑝 specifična toplota in 𝜌 gostota. Enačba je diskretizirana po metodi končnih volumnov z uporabo programske kode OpenFOAM v6.0. 2.3.2 Materialne lastnosti Po navedbah proizvajalca je material izdelka gostote 1040 kg/m3 (ISO 1183) in njegova toplotna prevodnost znaša 0,17 W/(m K) (DIN 52612-1). Specifična toplota je za potrebe te analize predpostavljena kot 2200 J/(kg K). Za jeklo so privzete termične lastnosti: gostota 7900 kg/m3, toplotna prevodnost 17 W/(m K) in specifična toplota 500 J/(kg K). 2.3.3 Oblika in robni pogoji Izdelek je simetričen, orodje pa od simetrije ne odstopa bistveno. S tem je tudi rešitev simetrična, kar omogoča zmanjšati obseg računskega dela z uvedbo polovičnega modela (slika 2). 116 Slika 2: Površine numeričnega modela.      2.3.4 Za zunanjo površino orodja je bilo predpostavljeno, da ima enako temperaturo kot zrak (20 ali 30 °C). Temperatura površine hladilnih kanalov je bila izbrana kot enaka temperaturi hladilne vode (40 °C oz. 20 °C). Ustrezen robni pogoj na simetrijski ravnini je, da se toplota preko nje ne more prevajati oz. da je komponenta temperaturnega gradienta v smeri normale na simetrijsko ravnino enaka 0. Temperatura gnezda orodja je bila neznana in odvisna od razvoja termičnih razmer. Na površini gnezda je bil predpisan toplotni tok 300 W (pol od 600 W zaradi simetrije), ki izhaja iz mase izdelka, trajanja cikla in temperaturne razlike, ki jo izdelek razvije. Začetna temperatura je enaka temperaturi zraka, razen na površini hladilnih kanalov, kjer je predpisan robni pogoj 40 °C. Toplotni tok preko površine gnezda Izvedena je bila termična analiza ohlajanja izdelka, s čimer je bil ocenjen toplotni tok, ki se ga predpiše na površino gnezda orodja. Upoštevana je bila simetrija izdelka. Začetno temperaturno polje izdelka je bilo izbrano kot temperatura taline v procesu izdelave, to je kot 220 °C. Na simetrijski ravnini je bil izbran robni pogoj, da toplota površine ne prehaja. Za ostali del površine izdelka je bil predpisan stik s površino gnezda, za katero je bila predpostavljena temperatura 40 °C. Upoštevana je bila upornost termičnega stika s površino gnezda orodja s prestopnostnim koeficientom 600 W/(K m2). Rezultati izračuna pri 5 s ohlajanja so prikazani na sliki 3. Notranjost izdelka je bila po 5 s še vedno segreta do približno 160 °C, njegova površina pa se je približala temperaturi orodja. Razvidno je, da so se rebra hitreje ohlajala kot masivnejši deli oblike, kar je v skladu s pričakovanji. 3.2 Vpliv temperature zraka Na sliki 6 je prikazan razvoj povprečne temperature gnezda za oba primera, ko je temperatura zraka v prostoru 20 °C in ko je temperatura zraka 30 °C. Vrednost se je v pol ure ustalila nad 60 °C. Slika 3: Temperaturno polje po 5 s ohlajanja. Povprečna temperatura izdelka po 30 s je bila 41,2 °C, kar pomeni, da je izdelek prešel praktično na temperaturo površine gnezda. S tem je oddal razpoložljivo toploto, to je 8400 J za polovični model (slika 4). Ocenjeni toplotni tok na orodje je tako 𝑄˙ = 2 × 8400⁄30 ≈ 600 [W]. (3) Slika 6: : Razvoj povprečne temperature gnezda. Slika 7 prikazuje razliko povprečne temperature gnezda orodja za oba primera. Iz začetne razlike 10 °C se je vrednost ustalila na 1,35 °C. Slika 4: Toplota, ki jo je oddala polovica izdelka. 3 Rezultati in diskusija Ugotovljeno je bilo stacionarno temperaturno polje po pol ure delovanja in pripadajoča povprečna temperatura gnezda orodja. Preverjen je bil tudi delež toplote, ki se je odvajal iz izdelka na zunanjo površino orodja in v zrak. 3.1 Osnovna analiza Ugotovljen je bil vpliv temperature zraka na osnovnem primeru in preverjena je bila učinkovitost hladilnega sistema pri odvajanju toplote iz gnezda orodja. Na sliki 5 je prikazano temperaturno polje orodja po pol ure. Temperatura gnezda je povišana, ker se tam vnaša toplotni tok. Temperatura zunanje površine je 20 °C. Temperatura površine hladilnih kanalov je 40 °C. Slika 5: Temperaturno polje orodja po pol ure [°C]. 117 Slika 7: Razlika v povprečni temperaturi gnezda. 3.3 Učinkovitost hladilnega sistema Učinkovitost hladilnega sistema ja bila raziskana tako, da je bila temperatura hladilnega sredstva v modelu nastavljena na temperaturo zraka, to je 20 °C, zato da med hladilnim sredstvom in zrakom toplotni tok ni tekel. Vsa toplota iz gnezda je tako prehajala bodisi na hladilne kanale bodisi v okolico. Na sliki 8 Napaka! Vira sklicevanja ni bilo mogoče najti.so prikazani toplotni tokovi (podvojeni zaradi simetrijskega modela). V pol ure je neravnovesje padlo proti nič, kar pomeni, da je bilo doseženo stacionarno stanje. Na zunanjo površino orodja se je odvajalo 13 % toplotnega toka iz gnezda. Zaradi tega toka se je temperatura zraka odrazila na temperaturi gnezda. Slika 8: Toplotni tokovi pri analizi učinkovitosti hladilnega sistema. 3.4 Analiza sekundarnih vplivov Napravljene so bile še geometrijske variacije za pridobitev zaupanja v odgovore iz osnovne analize. Preverjeno je bilo, koliko vpliva na rešitev velikost toplotnega toka, ki ga vnaša material. Spremenjeni sta bili oblika votline in zunanja oblika orodja. Izvedena je bila analiza vpliva termičnega stika s strojem, kjer je bil preverjen primer termične izolacije proti stroju in primer idealnega termičnega stika s strojem. Rezultati teh analiz so tu izpuščeni, ker se je izkazalo, da vplivi niso izraziti. S tem je bila osnovna ugotovitev o vplivu temperature zraka dodatno podkrepljena. 3.5 Sklep Modeliranje je omogočilo vpogled v termične razmere orodja za brizganje plastike. Izračunana je bila vrednost 1,35 °C spremembe temperature gnezda za 10 °C spremembe temperature zraka oz. upoštevajoč, da v modelu nastopajo poenostavitve se lahko rezultat zaokroži in postavi sklep, da je veljala zveza 0,1 °C/°C. Toplota, ki jo vnaša material, je uhajala v 15% v ozračje, kar je bilo ugotovljeno s primerjavo toplotnih tokov, ko je bila temperatura hladilne vode enaka temperaturi zraka. Vrednost je v skladu z ugotovitvijo vplivnosti temperature zraka 0,1 °C/°C. Če bi uhajala vsa toplota v zrak (če ne bi bilo temperiranja), bi bila sprememba temperature votline v modelu enaka spremembi temperature zraka (1 °C/°C), če pa toplota v zrak ne bi uhajala, bi bila temperatura votline neodvisna od temperature zraka oz. razmerje bi bilo 0 °C/°C. Preverjeni so bili sekundarni vplivi, ki bi lahko znatno vplivali na rezultat. V grobem je možno trditi, da sekundarni vplivi niso imeli praktičnega pomena in da je njihova analiza dodatno podkrepila osnovno ugotovitev. Podrobnejši pregled sekundarnih vplivov nudi namig, da je v primeru težav s stabilnostjo temperature površine gnezda smiselno poskusiti izolirati orodje, kar zmanjša vpliv zraka. Ta ugotovitev je v skladu s prakso, kjer se pogosto poskuša doseči stabilnost temperature gnezda z izolativnimi ploščami v stiku z zapiralno enoto stroja. 4 Zaključek Oblikovan je bil postopek termične analize orodja za brizganje plastike z vidika učinkovitosti hladilnega 118 sistema glede na temperaturo zraka v izdelovalnem prostoru. Potrjeno je bilo, da temperatura zraka v prostoru lahko vpliva na temperaturo površine gnezda kot motilni dejavnik. Za konkretno orodje je pričakovati dobro stopinjo razlike v votlini orodja, če se izdelek izdeluje v zimskem ali poletnem času. Na tej osnovi sledi tudi sklep, da je vpliv temperature zraka v izdelovalni hali smiselno upoštevati za občutljiv izdelovalni proces, kjer je temperatura v votlini orodja izrazit vpliv na kvaliteto izdelka. Hladilni sistem se v splošnem od orodja do orodja razlikuje, zato je smiselno izvesti tovrstno termično analizo za primer izdelka, pri katerem se zahteva visoka stabilnost temperature površine gnezda orodja. V trenutnem modelu je bila temperatura površine kanalov idealizirana kot temperatura hladilnega sredstva. Model je bil s tem poenostavljen, poraja pa se vprašanje, kakšen vpliv imajo tokovne razmere v hladilnih kanalih na učinkovitost odvoda toplote iz orodja, zato se za bodoče delo predvideva analizo tokovnih razmer v hladilnih kanalih in morebitno nadgraditev modela, pri čemer bi bilo z uporabo kode OpenFOAM v6.0 mogoče analizirati tudi sklopljeni sistem prenosa toplote, pri čemer nastopa v hladilnih kanalih turbulentni fluid. Zahvala Delo sta sofinancirala Ministrstvo za izobraževanje, znanost in šport Republike Slovenije ter Evropski sklad za regionalni razvoj v okviru operacije Povezovanje simulacij, strojev in orodij za optimizacijo procesa proizvodnje polimernih izdelkov – CoSiMa (šifra operacije OP20.03539). Literatura [1] H. Hamdy, R. Nicolas, A. Eric, and D. Guy, “Effect of cooling channels position on the shrinkage of plastic material during injection molding,” 2011. [2] H. Hassan, N. Regnier, C. Le Bot, and G. Defaye, “3D study of cooling system effect on the heat transfer during polymer injection molding,” Int. J. Therm. Sci., vol. 49, no. 1, pp. 161–169, Jan. 2010. [3] B. Zink and J. G. Kovács, “The effect of limescale on heat transfer in injection molding,” Int. Commun. Heat Mass Transf., vol. 86, pp. 101–107, Aug. 2017. [4] S. Jahan and H. El-Mounayri, “A Thermomechanical Analysis of Conformal Cooling Channels in 3D Printed Plastic Injection Molds,” Appl. Sci., vol. 8, no. 12, p. 2567, Dec. 2018. [5] S. Z. A. Rahim, S. Sharif, A. M. Zain, S. M. Nasir, and R. Mohd Saad, “Improving the Quality and Productivity of Molded Parts with a New Design of Conformal Cooling Channels for the Injection Molding Process,” Adv. Polym. Technol., vol. 35, no. 1, Mar. 2016. Povečanje konkurenčnosti proizvodnje električne energije s soobratovanjem fotonapetostne in konvencionalne elektrarne Grega Redek Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana, Slovenija E-pošta: Grega.Redek@gmail.com “Increasing the competitiveness of production by co-operating photovoltaic plant with convetional power plant” Abstract. With introduction of the electricity market, supplying electricity has become a market activity. With companies trying to maximize their profits, the production of electricity is being moved to hours with the highest prices. The aim of this article is to present the optimization model for co-operating solar power plants (SPP) and hydro power plants (HPP) in order to increase the competitiveness of the production portfolio and maximizing the profit. We compare previously mentioned model with one where SPP and HPP are working separately. The model’s objective function is set to maximize profit in a market environment that is sensitive to the power offered on an hourly level. This is achieved by exploiting the flexibility of the hydro accumulation when market prices are low and the SPP production is high. 1 Uvod Z uvedbo trga električne energije (EE) v Sloveniji je dobava EE postala tržna dejavnost. Trgovanje z EE poteka na dva načina. Prvi predstavlja prodajo EE preko dvostranskih pogodb, drugi pa prodajo na organiziranih trgih. Na odjemalce, ki predstavljajo povpraševanje na trgu z EE, vplivajo klimatske spremembe, ekonomski trendi in razvoj, medtem ko pri ponudnikih, proizvajalcih EE, na ceno najbolj vpliva cena primarnega energenta, ki ga proizvajalec uporablja ter strošek amortizacije elektrarne, če je le-ta še prisoten, [1]. Vsako proizvodno podjetje z EE skuša za proizvedeno EE iztržiti največ, zato proizvodnjo razporeja v ure, ko so cene najvišje. Na način razporejanja oz. planiranja proizvodnje vpliva vrsta elektrarne in omejitve, ki jih mora upravljalec elektrarn upoštevati. Planiranje obratovanja sončnih (SE) oz. fotonapetostnih elektrarn je v primerjavi s hidroelektrarnami (HE) enostavnejše, saj primarnega energenta ne moremo hraniti, po drugi strani pa prinaša več negotovosti. Proizvodnjo SE se napoveduje za dan vnaprej, na podlagi napovedi sončnega obsevanja. Razlika med planirano in realizirano proizvodnjo povzroči odstopanja, ki jih je treba izravnati. To nalogo izvaja sistemski operater (SO) preko enot, s katerimi ima sklenjen dogovor o zagotavljanju te storitve. Strošek EE, ki nastane pri izravnavi odstopanj, se preko bilančnih obračunov prenese na upravitelje bilančnih skupin, ki so ERK'2019, Portorož, 119-122 119 povzročile odstopanja, zato je natančna napoved in čim manjši oz. ničen odmik realizacije od napovedi za upravitelje bilančnih skupin pomemben. Za napovedovanje proizvodnje EE iz SE je potrebno poznavanje sončne poti, stanje atmosfere, disperzije svetlobe ter karakteristike SE, od katerih je odvisna količina proizvedene EE. Uporabljajo se različne metode, kot npr. fizična metoda, statistična metoda, hibridna metoda, [2]. Danes prevladuje uporaba hibridne metode, ki zajema hkratno uporabo dveh ali več metod, zaradi katerih je natančnost napovedi višja, [2]. Kljub novim, natančnejšim metodam je zaradi nestanovitnosti vremena doseganje visoke natančnosti modelov težavno. Analize so pokazale, da so napake napovedi manjše, če delamo napovedi za večje površine. Izkazalo se je, da napovedi za 1 uro naprej pokažejo večje vrednosti od realnega stanja, medtem ko napoved za dan naprej v večini prikaže manjše vrednosti v poletnem času, [3]. Glede na to, da je proizvodnjo SE težko natančno napovedati, je potrebno razliko med planirano in realizirano proizvodnjo ustrezno nadomestiti, če se le da znotraj bilančne skupine, zato, da se bilančna skupina izogne strošku odstopanj. Ko ima nek proizvajalec v svojem portfelju tako HE kot SE, je smiselno, da poskuša izravnavo odstopanj, ki nastanejo zaradi razlike med planirano in dejansko proizvodnjo EE, izvesti znotraj portfelja, saj se izogne stroškom izravnave odstopanj od napovedanega voznega reda in viške proizvedene energije iz SE shrani v obliki prihranka primarnega energenta, v predstavljenem primeru vode, ki jo lahko izkoristi v urah, ko je to ekonomično bolj smiselno. V primeru manjše realizirane proizvodnje od planirane, pa lahko upravitelj portfelja, manjkajočo EE kompenzira z večjo porabo vode, hkrati pa na veleprodajnem trgu odkupi manjkajočo EE v urah, ko je to najbolj ugodno. Cilj članka je predstavitev optimizacijskega modela za soobratovanje SE in HE z namenom povečanja konkurenčnosti proizvodnega portfelja z upoštevanjem cenovne občutljivosti trga EE. V modelu uporabljamo enoagregatni model HE ter izkoriščamo prožnost in dnevno zmogljivost akumulacije HE z namenom zmanjševanja stroškov odstopanj, ki jih ima upravitelj portfelja HE in SE elektrarn zaradi nestanovitnosti proizvodnje SE ter zamika proizvodnje EE iz SE v ure, kjer so cene EE najvišje z namenom povečevanja prihodka. Model smo preizkusili na hipotetičnem primeru hidro verige v kooptimizaciji s SE relevantne velikosti, kjer smo za izhodišče urne dinamike, vzeli urno meritev proizvodnje HE in SE Dravskih elektrarn Maribor (DEM). Enoagregatni model je izbran zaradi poenostavitve prikaza soobratovanja, kjer je v ospredju soobratovanje dveh različnih tipov elektrarn in ne natančen opis delovanja portfelja. uporabo cenovnih območji ugotovimo napovedane urne cene (𝐶𝑛,ℎ ) . Potrebne je določitev naslednjih omejitev: 2 Optimizacijski model soobratovanja HE in SE 1. Predpostavimo, da upravitelj nima vnaprej prodane EE z dolgoročnimi pogodbami in da vso EE prodaja na trgu za dan vnaprej. Upravitelj proizvodnega portfelja, ki ga sestavljata HE in SE, lahko planira proizvodnjo iz elektrarn po različnih strategijah. Omenjeni strategiji planiranja obratovanja predstavljajo različno doseganje prihodka od prodane EE na trgu. Stroški, ki vplivajo na prihodek in nastanejo pri omenjenih strategijah obratovanja so podobni, saj je v vsakem primeru potrebno napovedati ceno EE ter proizvodnjo EE iz HE in SE. Pri obeh strategijah smo opravili optimizacijo na podlagi kriterijske funkcije, katere cilj je maksimiranje prihodka na podlagi napovedane cene EE na trgu za dan vnaprej, z upoštevanjem cenovne občutljivosti trga. V strategiji A nastopata SE in HE na trgu ločeno, vsak za sebe, v strategiji B pa nastopata SE in HE na trgu skupaj. 2.1 Omejimo izbiro cenovnega območja tako, da lahko proizvedeno EE prodamo le v eno cenovno območje na uro. ∑ 𝑏𝑛,ℎ ≤ 1 (1) 𝑛 𝑏𝑛,ℎ predstavlja binarno spremenljivko določenega cenovnega območja ob določeni uri, n predstavlja cenovno območje, h predstavlja uro v dnevu. A. Napovedano proizvodnjo iz HE optimiziramo s ciljem povečanja prihodka na podlagi napovedane cene EE na trgu za dan vnaprej, SE pa pustimo, da proizvaja EE po principu prednostne proizvodnje, kar pomeni, da SE proizvaja EE tako, kot je na razpolago primarni energent, to je sončno obsevanje, in na proizvodnjo ne vplivamo. Za odstopanja, ki nastanejo zaradi razlike med napovedano in dejansko proizvodnjo EE iz SE, SO izstavi račun organizatorju trga, ta pa pošlje račun odgovorni bilančni skupini. B. Napovedano proizvodnjo iz HE in SE optimiziramo s ciljem povečanja prihodka po principu soobratovanja, ko prožnost HE izkoriščamo ne samo za maksimiranje prihodka glede na napovedano tržno ceno, ampak tudi kot hranilnik SE. Odstopanja, ki nastanejo zaradi razlike med napovedano in realizirano proizvodnjo v SE zmanjšamo, saj pri soobratovanju ne zajamemo le načina planiranja obratovanja elektrarn, ampak tudi obratovanje na način, da merilnik proizvodnje EE iz SE vpliva na proizvodnjo EE iz HE tako, da jo ta zmanjša za količino proizvedene energije SE. višino 2. Določimo maksimalno količino EE, ki jo v cenovnem območju lahko prodamo. 𝑇𝑛,ℎ ≤ 𝑏𝑛,ℎ ∗ 𝑃𝑛,ℎ (2) V modelu uporabljamo enourni korak, zato so moči enake energiji. 𝑇𝑛,ℎ predstavlja moč, ki jo prodamo določenemu cenovnemu območju ob določeni uri, 𝑃𝑛,ℎ predstavlja največjo moč EE, ki jo lahko prodamo na trgu za določeno uro dobave. Predstavljene omejitve cenovnih območij smo uporabili za določitev dosežene urne cene EE, tako v primeru strategije A, kot tudi v primeru strategije B, ki jih podrobneje predstavljamo v nadaljevanju. 2.2 Model za strategijo A V primeru strategije A optimiziramo proizvodnjo EE za vsak posamezen dan posebej, s ciljem največjega prihodka. Kriterijska funkcija je predstavljena z (3). 𝑃𝐻𝐸,ℎ predstavlja povprečno moč urne proizvodnje HE. EE proizvedena iz SE ni predmet optimizacije, saj SE obratuje samostojno glede na razpoložljivost primarnega vira, proizvedeno EE pa upravitelj ponudi neposredno na trg, ločeno od režima obratovanja HE. 𝑚𝑎𝑥 { 𝐽𝐴 = ∑ 𝑃𝐻𝐸,ℎ ℎ (3) + ∑ 𝑇𝑛,ℎ ∗ 𝑏𝑛,ℎ ∗ 𝐶𝑛,ℎ } 𝑛 Občutljivost cen EE S količino ponujene EE na trgu, vplivamo na njeno ceno. Za uporabo modela je najprej potrebna analiza občutljivosti cen. Cenovna občutljivost ima nelinearen značaj, ki ga je potrebno zaradi uporabe linearne optimizacije linearizirati. Zato cenovno občutljivost modeliramo z različnimi linearnimi intervali, ki jih predstavimo kot različna cenovna območja. Cenovno območje tako predstavlja količino EE za katero se cena EE ne spremeni. Glede na proizvedeno EE, lahko z 120 𝐽𝐴 predstavlja kriterijsko funkcijo za maksimiranje prihodka pri strategiji A, 𝐶𝑛,ℎ predstavlja urno ceno EE v določenem cenovnem območju n. Stroški v kriterijski funkciji niso zajeti, saj predpostavljamo, da so v obeh načinih obratovanja enaki. Maksimiranje kriterijske funkcije računamo ob naslednjih pogojih: 1. Zaradi tehničnih omejitev HE, 𝑃𝐻𝐸,ℎ ne sme v nobeni uri presegati največje in najmanjše dovoljene moči 𝑃𝐻𝐸𝑚𝑖𝑛 in 𝑃𝐻𝐸𝑚𝑎𝑥 . V času, ko SE proizvajajo EE, se za enako količino energije zmanjša proizvodnja HE, s čimer akumuliramo vodo, ki jo model lahko uporabi v urah, ko so napovedane cene EE visoke. 𝑃𝐻𝐸𝑚𝑖𝑛 ≤ 𝑃𝐻𝐸,ℎ ≤ 𝑃𝐻𝐸𝑚𝑎𝑥 (4) 2. Vsota moči proizvedene EE (𝑃𝐻𝐸,ℎ ), optimizacije za posamezen dan, ne sme preseči vsote planirane dnevne proizvodnje EE iz HE (𝑃𝐻𝐸 ), saj bi v nasprotnem primeru planirali več proizvodnje HE, kot je bila napovedana razpoložljivost vode. ∑ 𝑃𝐻𝐸,ℎ = 𝑃𝐻𝐸 (5) 3. Gradient naraščanja in padanja moči agregata določa minimalna in maksimalna razlika med dvema urama. (6) kjer 𝑃∆𝑚𝑎𝑥 in 𝑃∆𝑚𝑖𝑛 predstavljata maksimalno in minimalno vrednost spremembe moči v izbranem dnevu. Po opravljeni optimizaciji, optimizirani urni proizvodnji HE (𝑃𝑂𝑝𝑡𝐻𝐸,ℎ ) prištejemo napovedano urno proizvodnjo SE (𝑃𝑆𝐸,ℎ ). Njuno vsoto prodamo na trg po ceni, ki jo določa cenovno območje, glede na količino urne proizvodnje EE. 𝑃𝑂𝑝𝑡𝐻𝐸,ℎ + 𝑃𝑆𝐸,ℎ − (∑ 𝑇𝑛,ℎ ∗ 𝑏𝑛,ℎ ) = 0 𝑃𝐻𝐸𝑚𝑖𝑛 ≤ 𝑃𝐻𝐸,ℎ ≤ 𝑃𝐻𝐸𝑚𝑎𝑥 (7) 𝑛 𝐷𝐴 predstavlja prihodek strategije A. 2. Vsota moči proizvedene EE (𝑃𝐻𝐸,ℎ ), optimizacije za posamezen dan, ne sme preseči vsote planirane dnevne proizvodnje EE iz HE (𝑃𝐻𝐸 ), saj bi v nasprotnem primeru planirali več proizvodnje HE, kot je bila napovedana razpoložljivost vode. ∑ 𝑃𝐻𝐸,ℎ = 𝑃𝐻𝐸 ℎ 2.3 (11) 3. Gradient naraščanja in padanja moči agregata določa minimalna in maksimalna razlika med dvema urama, 𝑃∆𝐻𝐸𝑚𝑖𝑛 ≤ 𝑃𝐻𝐸,ℎ+1 − 𝑃𝐻𝐸,ℎ ≤ 𝑃∆𝐻𝐸𝑚𝑎𝑥 (12) kjer 𝑃∆𝐻𝐸𝑚𝑎𝑥 in 𝑃∆𝐻𝐸𝑚𝑖𝑛 predstavljata maksimalno in minimalno vrednost spremembe moči v dnevu. 4. Omejitev, s katero prodamo vso proizvedeno EE na trg. 𝑃𝐻𝐸,ℎ + 𝑃𝑆𝐸,ℎ − (∑ 𝑇𝑛,ℎ ∗ 𝑏𝑛 ) = 0 (13) 𝑛 Strategija B, se od strategije A razlikuje v tem, da so SE predmet optimizacije, s čimer povežemo delovanje HE in SE, medtem ko pri strategiji A, optimiziramo proizvodnjo HE neodvisno od proizvodnje SE nato prištejemo proizvedeno EE s strani SE in skupaj prodamo na trg. Prihodek 𝐷𝐵 v strategiji B predstavlja kriterijska funkcija 𝐽𝐵 . 𝐷𝐵 = 𝐽𝐵 𝐷𝐴 = ∑ ∑ 𝑇𝑛,ℎ ∗ 𝑏𝑛,ℎ ∗ 𝐶𝑛,ℎ (10) ℎ ℎ 𝑃∆𝑚𝑖𝑛 ≤ 𝑃𝐻𝐸,ℎ+1 − 𝑃𝐻𝐸,ℎ ≤ 𝑃∆𝑚𝑎𝑥 s čimer akumuliramo vodo, ki jo model lahko uporabi v urah, ko so napovedane cene EE visoke. (14) (8) 3 Rezultati 𝑛 Model za strategijo B Model B je deloma podoben Modelu A, ki smo ga opisali v predhodnem poglavju. Tudi tukaj maksimiramo prihodek po kriterijski funkciji, ki jo predstavlja (9) na podlagi napovedanih cen EE in napovedane urne proizvodnje SE (𝑃𝑆𝐸,ℎ ) . 𝑚𝑎𝑥 { 𝐽𝐵 = ∑(𝑃𝐻𝐸,ℎ + 𝑃𝑆𝐸,ℎ ) ℎ (9) + ∑ 𝑇𝑛,ℎ ∗ 𝑏𝑛,ℎ ∗ 𝐶𝑛,ℎ } 𝑛 1. Zaradi tehničnih omejitev HE ne sme 𝑃𝐻𝐸,ℎ v nobeni uri presegati največje in najmanjše dovoljene moči 𝑃𝐻𝐸𝑚𝑖𝑛 in 𝑃𝐻𝐸𝑚𝑎𝑥 . V času, ko SE proizvajajo EE, se za enako količino energije zmanjša proizvodnja HE, 121 Analizo smo opravili po principu testiranja za nazaj (angl. back testing). Namesto napovedanih dnevnih količin razpoložljive hidrologije, smo uporabili podatek o dnevni proizvedeni EE iz verige DEM. Pri omejitvah proizvodnje iz HE smo tehnične omejitve določili z analizo realiziranega obratovanja. Kot omejitve bazenov smo privzeli dnevno proizvedeno energijo, za omejitve spremembe moči in posledično gradientov, pa smo uporabili najmanjšo oz. največjo izračunano spremembo moči v posameznem dnevu. Podobno smo naredili tudi za SE, kjer smo namesto napovedi uporabili realizirano dnevno količino proizvodnje iz SE. Namesto napovedi cen smo uporabili realizirane cene na slovenski borzi z EE za dan vnaprej, BSP SouthPool, v katerih smo upoštevali analizo občutljivosti cen. Pri dejanski izdelavi napovedi se upoštevajo ostale omejitve, ki smo jih v modelu zanemarili, te so: meddržavne obveznosti o zagotavljanju rečnih pretokov, zahteve po biološkem minimumu ter zahteve po rezervaciji moči za izvajanje storitev izravnave. Zanemarili smo tudi stroške, ki nastanejo ob izvajanju storitev izravnave. S tem, ko smo omenjene zahteve zanemarili smo skušali model narediti splošen, dodatne omejitve pa lahko planerji dodajo glede na lastnosti posameznih elektrarn. Analiza kaže, da smo z uporabo strategije B povečali prihodek v povprečju za 0,34 % na dan glede na prihodek strategije A. Za uporabljene podatke rezultat predstavlja velik dodatni prihodek. Na uspešnost strategije B, poleg omenjene zmogljivosti hranilnika in prožnosti konvencionalne elektrarne, vplivata še urna razporeditev cen v dnevu, saj v primeru, ko so cene sredi dneve najvišje, zamik proizvodnje ni smiseln in občutljivost oz. globina trga, saj če v urah dobave z najvišjo ceno, ta hitro pada, potem ni cenovno učinkovito prodajati velike količine energije v tistih urah, saj s tem nižamo ceno. Tabela 1: Rezultati analize Strategija B Rast prihodka [%] 0,34 Graf 1 prikazuje potek vsote proizvodnje HE in SE. V dnevih, ko je proizvodnja SE večja, je potreba, da se urna ponudba moči optimizira glede na občutljivost na trgu večja, zato se ob takih dnevih bolje izkoristi prožnost HE. HE ima enako količino proizvodnje ne glede na proizvodnjo SE. Graf 2: Potek vsote moči HE in SE, ko imamo malo sončne energije. Strategija B se lahko uporabi v kombinaciji s katerokoli elektrarno, ki je sposobna zamika uporabe primarnega energenta ali s hranilnikom energije, kot so npr. baterije ali črpalne hidroelektrarne. Strategija bi v primeru dodajanja hranilnikov EE prikazala večje prihodke, saj bi tako imeli večje možnosti shranjevanja energije, kjer bi EE proizvedeno s strani SE, lahko shranili in uporabili v urah, ko je cena visoka. 4 Zaključek V članku smo predstavili model (strategija B), s katerim lahko povečamo tržno vrednost proizvedene EE na račun prožnosti HE. Analiza je pokazala, da lahko s strategijo B povečamo prihodek od prodaje EE v primerjavi s strategijo A. Na podlagi rezultatov je smiselno, da v primeru, ko je v proizvodnem portfelju poleg konvencionalnih elektrarn tudi ena ali več SE, planirati obratovanje na način, da se skuša v urah, ko SE proizvaja EE, to EE shranjevati na način shranjevanja primarnega energenta konvencionalne elektrarne, npr. HE. Tak način napovedi obratovanja potrebuje natančna orodja za napovedovanje vremenskih razmer, hidrologije in cen EE za natančno planiranje voznih redov HE. 5 Zahvala Graf 1: Potek proizvodnje vsote HE in SE, ko imamo veliko sončne energije. Ob dnevih, ko je proizvodnja SE majhna, se strategiji med seboj ne razlikujeta veliko, saj HE nima dodatne energije, katero bi lahko shranile in uporabile v urah, ko je to bolj ugodno oz. količina EE proizvedene iz SE ni dovolj velika, da bi vplivala na tržno ceno v posamezni uri. Potek planirane proizvodnje opisanega dne predstavlja Graf 2. Z večjo količino SE in majhnimi akumulacijami, so lahko presežki EE v urah, ko imamo veliko sonca takšni, da močno znižajo ceno EE. S predlaganim načinom delovanja, bi se izognili nižanju cen EE, saj z dodatno prožnostjo elektrarn, ki niso tipični hranilniki, uporabimo za premik proizvedene EE iz SE v ure, ko je napovedana cena EE višja. 122 Rad bi se zahvalil skupini HSE za omogočanje dostopa do podatkov, ki smo jih uporabili za testiranje modela. Zahvalil bi se tudi Miranu Kavrečiču in Matjažu Večerniku za podporo in pomoč pri izdelavi članka. Literatura [1] Nikola Stepanovski, »Analiza dejavnikov vpliva na borzno ceno električne energije na primeru Phelix indeksa«, Ekonomska fakulteta: Ljubljana, Slovenija, junij 2015. [2] D. K. Chaturvedi, Isha, "Solar power forecasting: A review", International Journal of Computer Application, vol. 145, no. 6, 2016. [3] Banunarayanan, V., Hamann, H. F. Hodge, B. M., Lu, S., Florita, A., Zhang, J., (2013). Metrics for Evaluating the Accuracy of Solar Power Forecasting. Zaznavanje manevrov pri voznikih Miloš Antić, Goran Andonovski Univerza v Ljubljani, fakulteta za elektrotehniko, Tržaška cesta 25 E-pošta: ma4852@student.uni-lj.si, goran.andonovski@fe.uni-lj.si Detection of driver maneuvers Abstract. The main objective of the paper is to evaluate the performance of certain maneuvers of drivers and to compare them with known or correct maneuvers. In this way, we can create an expert system that can assess how well a driver performs a certain maneuver, such as a three-point turn, U-turn, etc. When creating the system, we will focus on methods for selecting the most influential components such as PCA and manually selecting components and comparing them. The quality of maneuvers will be evaluated using the KNN method, which means sorting with the k-nearest neighbors. The second step of the task is based on the learned/known models to detect which maneuver was performed. We will evaluate drivers' drive on the data we have collected on the simulator in Madrid. Uspešnost razvrščevalnika bomo prikazali tudi grafično v obliki stolpčnih diagramov, s posebno vrsto kontigenčne matrike (angl. confusion matrix). 2 Podatki Na razpolago imamo podatke o vožnji za pet voznikov, ki smo jih pridobili na simulatorju vožnje [3]. Vsak voznik je opravil trikoračni in U-obrat. Merili smo 16 atributov oz. signalov, npr. kot volana, število obratov na minuto, hitrost, prestava, pojemek, pospešek, itn. Pri uporabi PCA analize je priporočljivo da so podatki normirani in osrediščeni. Na sliki 1 je prikazan graf zaviranja (pri izvajanju trikoračnega manevra), ki vsebuje normirane vrednosti, medtem ko na sliki 2 in 3 vidimo, da hitrost avtomobila in število obratov na minuto, v setu podatkov, niso normirani. 1 Uvod U-obrat in trikoračni obrat sta ena izmed mnogih manevrov, ki se jih vozniki poslužujemo v določenih okoliščinah. Trikoračni obrat je metoda obračanja vozila v nasprotno smer v omejenem, ozkem prostoru z manevriranjem naprej in nazaj. Sam proces trikoračnega obrata se začne z vožnjo čez cesto, kjer smo obrnjeni proti robu ceste nasprotnega pasu, nato zapeljemo vzvratno in obračamo zadek avtomobila proti izhodiščnemu zunanjemu robu ceste, nadaljujemo z vožnjo naprej v željeno smer, tj. smer nasprotna izhodiščni smeri. Drug princip obračanja vozila, tj. manever U-obrat, najpogosteje uporabljamo v križiščih, kjer imamo dovolj prostora za izvedbo manevra. Gre za obračanje vozila za 180 stopinj v smer, ki je nasprotna izhodiščni smeri potovanja. Tak manever se izvaja v obliki črke U, zato tudi takšno poimenovanje. V tem članku bomo predstavili ekspertni sistem, ki bo voznikom pomagal pri učenju, in sicer tako, da bo ocenjeval njihovo vožnjo. Model bomo uporabili za napovedovanje manevrov oz. določanje, kateri manever se izvaja oz. se je izvedel. Da bi z modelom čim bolj pravilno napovedovali oz. ocenjevali manevre, je potrebno podatke o vožnji predhodno analizirati. V ta namen bomo vpeljali metodo PCA (angl. principal component analyis) oz. analizo glavnih komponent, da se znebimo redundantnosti podatkov in izločimo tiste podatke, ki ne vsebujejo veliko informacij o zadanem problemu. To pomeni, da imamo določene kolinearne komponente, kar pomeni, da za opis celotne informacije ne potrebujemo vseh komponent oz. spremenljivk [2]. Z izbranimi komponentami bomo z metodo k najbližjih sosedov vrednotili manevre voznikov [1]. ERK'2019, Portorož, 123-126 123 Slika 1. Graf zaviranja Slika 2. Graf hitrosti komponent, s fiksnim številom izbranih komponent (PCA) in z izbiro komponent z varianco večjo, kot je določena meja. Analizirali smo tudi vpliv parametra k na delovanje razvrščevalnika. 3.1 Ročna izbira komponent Pri ročni izbiri smo smiselno izbrali komponente, ki imajo normirane vrednosti in ki vsebujejo velik delež informacij o manevru. Uporaba metode ročne izbire je smiselna zato, ker nam je problem vožnje dobro znan in znamo iz izkušenj oceniti pomembne aspekte vožnje avtomobila. V tabeli 1 so prikazane uspešnosti izvajanja manevrov voznikov, ki smo jih vrednotili z učnim modelom voznika ena. Tabela 1. Uspešnost voznikov-ročna izbira Slika 3. Graf obratov na minuto Število zajetih vzorcev merjenih atributov je od 5000 pa do 12000. Večje število vzorcev so naredili vozniki s trikoračnim obratom. V setu podatkov imamo tudi dve vrednosti markerja, nič in ena. Marker ponazarja izvajanje določenega manevra, npr. U-obrat, trikoračni obrat itn. Marker z vrednostjo ena predstavlja trenutek, ko se manever izvaja, medtem ko marker z vrednostjo nič pa ko vozimo naravnost. Na sliki 3 je prikazan potek markerja za prvega in druga voznika, ko sta opravila U obrat. Z modro je označen potek za prvega voznika, z rdečo pa za drugega. U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3-koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3-koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 Slika 4. Graf markerja Najboljšega izmed voznikov, tj. prvi voznik po dogovoru, bomo izbrali za učno množico pri učenju razvrščevalnika, ki temelji na metodi k-najbližjih sosedov. S podatki preostalih voznikov pa bomo vršili validacijo izvajanja manevrov. 3 Analiza in rezultati Preizkušali smo tri načine določitve najvplivnejših komponent, in sicer z ročno izbiro vhodnih signalov oz. 124 Število komponent 2 3 Uspešnost voznika v % 62,16 74,64 41,60 60,89 69,56 41,58 66,63 70,44 50,13 66,77 75,11 40,22 1 82,68 79,42 83,72 88,20 81,39 61,00 78,13 64,85 82,07 63,24 87,94 62,10 Število komponent 4 5 7 Uspešnost voznika v % 46,71 67,62 91,55 51,93 66,01 89,66 49,65 70,77 78,69 39,85 77,09 78,84 50,74 53,35 55,56 53,24 75,07 71,05 76,68 74,60 88,88 87,89 86,70 93,90 Opazimo, da v nekaterih primerih z večanjem števila komponent upada uspešnost voznikov (vsi vozniki pri U in 3-koračnem obratu). S tem želimo pokazati, da pri napačni oz. nesmiselni izbiri komponent izgubimo veliko pomembnih informacij. V vseh šestih primerih smo za parameter k vzeli vrednost pet pri razvrščanju s KNN. 3.2 Fiksno število izbranih komponent Izbiro najvplivnejših komponent smo v tem primeru prepustili metodi PCA in smo ji kot parameter vnesli željeno število vplivnih komponet, ki jih želimo poiskati. V tabeli 2 vidimo, da se z večanjem števila komponent uspešnost voznikov povečuje. Opazimo, da se pri sedmih komponentah odstotek uspešnosti ustali in da z večanjem št. komponent ne vnašamo novih informacij. Za razvrščanje smo zopet uporabili pet najbližjih sosedov. U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3-koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3.3 U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3-koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 Število komponent 1 2 3 Uspešnost voznika v % 78,62 77,15 86,96 80,66 80,19 86,42 74,70 77,57 81,90 70,70 75,97 81,82 81,23 82,10 80,22 84,49 85,05 88,61 84,96 87,02 81,67 82,05 89,80 93,96 Število komponent 4 5 7 Uspešnost voznika v % 90,13 90,53 91,55 87,64 88,53 89,66 77,22 79,13 78,69 74,52 77,86 78,84 88,09 86,83 82,71 93,50 89,05 87,90 85,82 94,34 Tabela 3. Uspešnost voznikov-delež informacij Delež informacij 0,85 0,89 Uspešnost voznika v % 73,76 73,76 73,76 73,72 73,72 73,72 68,17 68,17 68,17 58,96 58,96 58,96 0,80 Tabela 2. Uspešnost voznikov-fiksno število U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3-koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 Marker 0 je napovedan napačno v 155-ih (oz. 2,8%) primerih, marker 1 pa v 310-ih (oz. 5,6%). U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3-koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 88,88 87,89 86,70 93,90 61,05 63,40 61,83 64,68 61,05 61,05 63,40 63,40 61,83 61,83 64,68 64,68 Delež informacij 0,92 0,95 0,97 Uspešnost voznika v % 73,76 73,76 73,76 73,72 73,72 73,72 68,17 68,17 68,17 58,96 58,96 58,96 61,05 63,40 61,83 64,68 61,05 63,40 61,83 64,68 61,05 63,40 61,83 64,68 Izbira glede na delež informacij Delež informacij je meja, ki določa število komponent, ki imajo varianco večjo od meje. Vrednosti meje smo izbirali v intervalu od 0,80 do 0,99. Zopet smo pri razvrščanju uporabili za parameter k vrednost pet. V tabeli 3 so podani rezultati vrednotenja. Rezultati vrednotenja se bistveno ne spreminjajo glede na delež informacij. 3.4 Analiza vpliva parametra k V tabeli 4 vidimo, da se rezultati z večanjem k-ja bistveno ne spreminjajo. Najprej smo z metodo PCA izbrali sedem najvplivnejših komponent, nato pa analizirali KNN razvrščevalnik oz. parameter k. Za potrebe razvrščanja je za dane podatke zadosti, če uporabimo uporabimo k=1. Za mero podobnosti pri razvrščanju uporabljamo evklidsko razdaljo. Na sliki 4 je prikazana matrika zamenjav, ki prikazuje rezultate za vrednotenje manevriranja drugega voznika glede na prvega voznika, pri izvedbi U-obrata (sedem komponent, k=1). Target Class predstavlja vrednosti markerja dejanskega poteka manevrov prvega voznika, Output Class pa predikcije oz. razvrščene vzorce voznika 2. Marker 0 smo napovedali pavilno v 2776-ih primerih, tj. 50,5 %, marker 1 pa v 2259-ih oz. 41,1 %. 125 Slika 5. Matrika zamenjav 3.5 Metoda in parametri Glede na analizo in rezultate smo izbrali metodo ročne izbire vplivnih komponent. Izbrano število komponent je sedem. Do ugotovitve smo hitro prišli tudi zato, ker smo dobro seznanjeni s problemom vožnje. Izbrane komponente od šestnajstih so: • kot volana, • pospeševanje, • zaviranje, • pritisk sklopke, • hitrost, • število obratov na minuto, • prestava. Za parameter k pri metodi razvrščanja s k-najbližjimi sosedi smo izbrali vrednost ena. Izbrano metodo in parametre bomo upoštevali pri tvorbi modela za trikoračni in U-obrat. Tabela 4. Analiza vpliva parametra k 1 U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3-koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 91,60 89,24 78,84 78,36 89,45 87,65 86,62 93,89 88,88 87,89 86,70 93,90 89,09 87,59 86,77 93,96 Uspešnost napovedovanja v % 0,8782 0,8653 0,8466 0,8737 0,9041 0,8942 0,8766 0,8895 0,9504 5 Zaključek 4 Model trikoračnega in U-obrata Z modeloma obeh obratov želimo razpoznavati, kateri od njiju se izvaja ali se je izvedel v določenem trenutku. Modela smo naredili tako, da smo ju učili na podatkih prvega voznika. Z modeloma napovedujemo potek markerja na podatkih ostalih voznikov in tako lahko preverjamo uspešnost napovedovanja obeh modelov glede na dejanske poteke markerjev preostalih voznikov. Za razvrščevalni algoritem smo zopet izbrali metodo KNN, kjer je paramerer k=1 in mera podobnosti evklidska razdalja. Pri razvrščanju smo ponovno upoštevali sedem najvplivnejših komponent, omenjene v podpoglavju 4.5. V tabeli 5 imamo podane uspešnosti napovedovanja z modelom U-obrata. Tabela 5. Napovedovanje z modelom U-obrata Uspešnost napovedovanja v % U-obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 3- koračen obrat Voznik 1 Voznik 2 Voznik 3 Voznik 4 Voznik 5 Tabela 6. Napovedovanje z modelom trikoračnega obrata U-obrat Voznik 1 Voznik 2 Voznik 3 Voznik 4 Voznik 5 3- koračen obrat Voznik 2 Voznik 3 Voznik 4 Voznik 5 Parameter k 3 5 7 Uspešnost voznika v % 91,76 91,55 91,60 89,31 89,66 89,75 78,89 78,69 78,41 78,59 78,84 78,93 88,99 87,63 86,69 94,05 Vidimo, da lahko, glede na odstotek uspešnosti, brez problema razlikujemo med obratoma. Glede na odstotek uspešnosti napovedovanja (glej tabelo 6) z modelom za trikoračni obrat vidimo, da bi lahko prav tako razpoznavali kateri obrat se je izvedel, ker imamo v vseh primerih za izvedeni trikoračni obrat višji odstotek napovedi. 0,9189 0,8966 0,8011 0,7928 0,6066 0,6341 0,6574 0,6074 0,6045 126 Tekom analize komponent smo ugotovili, da lahko z metodo ročne izbire hitro določimo najvplivnejše komoponente, kar nam omogoča predvsem dobro poznavanje problema vožnje avtomobila. Na drugi strani imamo metodo PCA, ki nam omogoča podrobnejšo analizo komponent. Rezultat obeh analiz je izbranih sedem komponent in vrednost parametra k za metodo k-najbližjih sosedov. Za izboljšanje rezultatov in razpoznavanje določenih manevrov z modeli bi morali analizirati dogajanje znotraj posameznega intervala manevriranja, ki ga določa marker. To je pomembno zaradi tega, ker so lahko zaporedja manevrov znotraj intervala različna. Literatura [1] "k-nearest neighbors algorithm", Dostopno na: https://en.wikipedia.org/wiki/Knearest_neighbors_algorithm, 30.1.2019 [Citirano: 14.2.2019] [2] I. Škrjanc: Inteligentni sistemi za podporo odločanju, Založba FE in FRI, Univerza v Ljubljani, Fakulteta za elektrotehniko, 2016. [3] Systems Technology. (2016). Car driving simulator & simulation software. Retrieved September 14, 2016, from http://www.stisimdrive.com/products/simulationsystems/m100-series Modeliranje estimacije kvalitativnih lastnosti vožnje Gregor Felzer, Uroš Sadek, Amor Chowdhury, Dalibor Igrec MARGENTO R&D d.o.o., Turnerjeva ulica 17, 2000 Maribor, Slovenija E-pošta: gregor.felzer@margento.com Estimation modeling of qualitative driving characteristics Abstract. An estimation modeling of qualitative driving characteristics, also a driving behavior evaluation, is basically a mandatory requirement in today’s fleet management systems in a cargo and a passenger transportation. With proper driving behavior evaluation, informing and educating drivers, operators can save on fuel, on servicing and on other operating expenses. Streaming to active fleet optimization reduces accidents, makes fleet greener and increases the quality of transportation service in the specific segment. Presented paper is a continuation of a paper [1] where we tried to evaluate a driving behavior using MEMS accelerometer signal analysis in time, frequency and power spectral domain. Besides promising results in early stages of testing, an analysis on a larger vehicle fleet with different styles of driving and different terrain configurations showed that we need a different approach. New approach is presented in the following chapters. 1 Uvod V sistemih za upravljanje voznega parka je modeliranje estimacije kvalitativnih lastnosti vožnje oz. ocene kvalitete vožnje danes že več ali manj zahteva s strani upravljalcev. Z ustreznim ocenjevanjem voženj in informiranjem ter izobraževanjem voznikov v tovornem in potniškem prometu, upravljalci ustvarijo prihranke pri gorivu, servisiranju in ostalih stroških. Aktivno izvajanje optimizacije flote omogoča zmanjšanje možnosti nesreč, zmanjšanje emisij flote in povečanje kvalitete izvajanja storitve prevozov v svojem segmentu. Prispevek je nadaljevanje prispevka [1], kjer smo skušali pridobiti oceno vožnje s pomočjo MEMS pospeškometra z analizami v časovnem prostoru, frekvenčnem spektru in s pomočjo spektralne močnostne gostote. Kljub začetnim zadovoljivim rezultatom se je v času testiranja izkazalo, da je na večji floti vozil, z različnimi stili voženj, po različnih konfiguracijah terena, potreben drugačen pristop. Ta je podrobneje predstavljen v tem prispevku. 2 Mobilna enota V vozilih je instalirana mobilna enota [2], ki je preko mobilnega omrežja stalno povezana v zaledni sistem podatkovnega strežnika [3]. Arhitektura mobilne enote je prikazana na sliki 1. To sestavlja mobilni ERK'2019, Portorož, 127-130 127 računalnik in komponente združene v ohišje z LCD zaslonom občutljivim na dotik. Ostale komponente zajemajo GPRS in GPS vmesnik, pospeškometer, digitalne vhode in komunikacijske vmesnike (RS232, RS485 in USB). Za oceno kvalitete vožnje je uporabljen 3-osni MEMS pospeškometer ADXL345 [4] proizvajalca Analog devices. Procesno enoto predstavlja Raspberry Pi Compute Module [5] prve generacije. Kot je razvidno iz slike 1, se uporabljena verzija Raspberry Pi razlikuje od klasične verzije, saj le-ta za priključitev v »zunanji svet« potrebuje gostitelja s katerim je povezana preko SO-DIMM konektorja. Vlogo gostitelja opravlja ločena tiskanina, ki zaprta v ohišje z ostalimi komponentami predstavlja končni produkt - mobilno enoto. Pospeškometer je s procesno enoto povezan preko SPI vodila. Na nivoju sistema je implementiran gonilnik, ki vsako sekundo izvede 100 meritev za vsako od 3-osi posebej. Sledi izračun ocene vožnje, ki je podrobneje opisan v 3. poglavju. Po obdelavi obdelane histograme posreduje glavni aplikaciji v nadaljnjo uporabo (prikaz na zaslonu in posredovanje v zaledni sistem). Ker so instalacije enot v posameznih vozilih postavljene na različne nosilce pod različnim kotom, ne moremo zagotoviti ustrezne horizontalne in vertikalne usmerjenosti pospeškometra za enostavno ugotavljanje pospeškov zaviranj, pospeševanja, zavijanja, konfiguracije terena in tresljaje s strani vozišča. GPRS modul LCD na dotik občutljiv zaslon GPS modul ZigBee modul Digitalni vhodi Zvočnik FMS vmesnik 3-osni pospeškometer 6x RS232/RS485 vmesnik Slika 1: Arhitektura mobilne enote Zaradi omenjenih razlogov smo v jedro funkcionalnosti vključili programsko rešitev, ki pred izračunom ocene zagotavlja tudi ustrezno korekcijo naklona osi pospeškometra in s tem enotno oceno kvalitete vožnje neglede na tip vozila in tip vozišča. 3 Izračun estimacije kvalitativnih lastnosti Ocena kvalitete vožnje temelji na analizi pospeškov vozila, ki se po amplitudi razvrščajo v normiran histogram. Takšen histogram predstavlja relativno oceno kvalitete vožnje, ki jo je moč primerjati z drugimi vožnjami. Absolutna ocena kvalitete vožnje je odvisna od posameznikovega dojemanja kvalitete vožnje (med posamezniki se razlikujejo prioritete karakteristik vožnje, kakor tudi meje pospeškov nelagodne vožnje) in je v splošnem ni moč določiti. Ocena kvalitete vožnje je sestavljena iz več segmentov: - meritev pospeškov 3-dimenzionalnega prostora, - nizko-pasovno filtriranje, - korekcija koordinatnega sistema (korekcija naklona), - zaznavanje dogodkov pospeška, - razvrščanje dogodkov pospeška, - normiranje dogodkov. Ker analiza kvalitete temelji na pospeških horizontalne ravnine (pospeševanje/zaviranje vozila, zavoj levo/desno), se v drugem segmentu obdelave podatkov izvede korekcija naklona horizontalnih osi in gravitacijskega pospeška. V praksi se izkaže, da vrednosti vertikalnih pospeškov vozila (vdolbine, ovire za zmanjševanje hitrosti) presegajo vrednosti horizontalnih pospeškov. S korekcijo naklona horizontalnih osi poravnamo vertikalno os (z-os) koordinatnega sistema merilnega sistema z gravitacijskim pospeškom (koordinatni sistem zemlje) in s tem izločimo vpliv vertikalnih pospeškov vozila v horizontalni ravnini (XY osi) merilnega sistema. Korekcija naklona se opravi z rotacijo koordinatnega sistema, na osnovi rotacijske matrike (4), določene v postopku kalibracije merilnega sistema. Kalibracija merilnega sistema se izvede ob zagonu, ko je vozilo še v mirovanju, in je nujno potrebna zaradi morebitnih nastavitev nosilca enote v vozilu. Rxyz = Rx ( ) Ry ( ) Rz ( ) cos  cos − cos  sin   =  cos  sin + cos sin  sin  cos  cos − sin  sin  sin  sin  sin − cos  cos sin  cos sin  + cos  sin  sin  Slika 2: Shema sistema za detekcijo in prikaz ocene kvalitete vožnje Meritev pospeškov vožnje je izvedena s 3-osnim pospeškometrom, ki meri trenutne vrednosti pospeška v treh neodvisnih dimenzijah 3-dimenzionalnega prostora. Za pridobitev koristnega signala pospeškov posamezne osi pospeška so uporabljeni nizko-prepustni FIR filtri. S filtri odpravimo visokofrekvenčne komponente pospeška, ki so posledica vibracij vozila in so po amplitudi primerljive koristnemu signalu. FIR filter v splošni obliki zapišemo kot F ( z) = B( z ) b(1) + b(2) z −1 + = A( z ) a(1) + a(2) z −1 + + b(n + 1) z − n + a(n + 1) z − n (1) kjer sta B( z ) polinom števca in A( z ) polinom imenovalca diskretne prenosne funkcije. Pri filtriranju pospeškov smo se omejili na FIR filter 2. reda F2 ( z) = B( z ) b(1) + b(2) z −1 + b(3) z −2 = A( z ) a(1) + a(2) z −1 + a(3) z −2 (2) Načrtovanje koeficientov filtra smo izvedli v Matlab okolju, kjer smo upoštevali mejno frekvenco filtra (cut off frequency) 3 Hz in frekvenco tipanja 100 Hz. Koeficienti polinomov uporabljenega filtra so F2 ( z ) = 0.007820 + 0.015640z −1 + 0.007820z −2 1 − 1.734726 z −1 + 0.766007z −2 (3) 128 sin    − cos  sin   cos  cos   (4) S postopkom kalibracije določimo kota  in  iz rotacijske matrike (4). Pri tem predpostavimo gravitacijski vektor 1g v smeri z-osi. Tako sledi sin  0   G     = Rxyz  0  =  − cos  sin   G  1   cos  cos       (5)  Gx  kjer je G = G y  in zajema vrednosti izmerjenega  Gz  pospeška posamezne osi merilnega sistema. G je absolutna vrednost pospeška v tri dimenzionalnem prostoru in je potrebna za normalizacijo pospeškov posamezne osi. Na osnovi enačbe (5) lahko zapišemo izračun kotov  Gy    Gz   Gx = arctan   G2 + G2 y z  xyz = arctan  −  xyz kjer indeks xyz     (6) označuje kota, ki pripadata rotacijski matriki zaporedja rotacij Rx ( ) Ry ( ) Rz ( ) . Na osnovi naklona horizontalne ravnine xy (6), ob predpostavki  = 0 , določimo korekcijsko rotacijsko matriko Rxyz  cos  xyz  =  sin  xyz sin xyz  − cos  sin  xyz xyz  0 cos xyz sin xyz  sin  xyz  − cos  xyz sin xyz  (7) cos  xyz cos xyz  naslednjega prehoda nad prag. Po detekciji dogodka se določijo naslednje karakteristike: - Čas trajanja dogodka, - Maksimalni pospešek dogodka, - Povprečni pospešek dogodka (brez pospeška morebitne luknje). kjer je Gkor vektor pospeškov posamezne osi novega koordinatnega sistema, kjer sta gravitacijski vektor in vertikalna z-os vzporedna. Tako izločimo vpliv gravitacijskega pospeška na absolutni pospešek horizontalne ravnine Zaznane dogodke tekom vožnje razvrščamo v histogram po želeni karakteristiki dogodka. V našem primeru jih razvrščamo v histogram po maksimalnem pospešku dogodka in s tem vrednotimo kvaliteto vožnje glede na osnovi maksimalnega pospeška. Histogram dogodkov je značilen za določeno pot in je odvisen od dolžine opravljene poti. Ker želimo primerjati kvaliteto voženj različnih poti je potrebno histogram poti normirati glede na razdaljo poti. S tem postane normiran histogram neodvisen od razdalje posamične poti in jih je moč primerjati za različne poti. Takšna ocena vožnje je relativna (možna je primerjava različnih poti) na osnovi katere je možno razvrstiti različne vožnje po kvaliteti in podati mnenje o načinu vožnje. Slednjega je možno razbrati iz oblike normiranega histograma. 2 2 Ghor = Gkor, x + Gkor, y 4 Uporaba rezultatov Ker je orientacijska matrika ortogonalna in velja T , lahko iz enačbe (5) zapišemo korekcijsko R = Rxyz −1 xyz enačbo T Rxyz G = Gkor (8) (9) Zaradi pomanjkanja senzorja horizontalne orientacije (magnetometer), ni moč določiti kota horizontalnih osi koordinatnega sistema med merilnim sistemom in vozilom. Zato se v sklopu detekcije dogodkov horizontalnega pospeška uporablja absolutna vrednost horizontalnega pospeška, ki je v mirovnem stanju vozila enaka 0 (gravitacijski pospešek je poravnan z vertikalno osjo). Detekcija dogodkov horizontalne osi temelji na zaznavi oken s parametri: - Prag pospeška (at), - Histereza pragu pospeška (ah), - Čas trajanja pospeška (T), - Čas luknje pospeška (Tg). Sistem omogoča prikaz ocene kvalitete vožnje samemu vozniku na zaslonu mobilne enote v vozilu in podrobneje z možnostjo dodatnih analiz v zalednem sistemu sledenja. Prikaz na zaslonu mobilne enote zajema barvni histogram sestavljen iz sedmih razredov. Barvni prikaz je namenjen informiranju voznika o trenutni jakosti pospeška/pojemka, ki je sicer informativne narave, a vseeno vozniku posredno služi kot pomoč pri dojemanju trenutne jakosti pospeška/pojemka, saj se potniki na stil vožnje različno odzovejo. Slika 3: Prikaz časa trajanja pospeška v časovnem prostoru Prag pospeška predstavlja srednjo vrednost histereze pragu. Na osnovi histereze določamo začetek (pospešek preide nad prag) in konec (pospešek preide pod prag) morebitnega dogodka. Da določen pospešek smatramo kot dogodek, mora biti čas trajanja pospeška nad pragom večji ali enak minimalnemu času trajanja dogodka (T  Tmin ) . Prav tako mora biti čas morebitne luknje pospeška (čas pospeška pod pragom) manjši od maksimalnega časa luknje (Tg  Tg max ) . Čas luknje pospeška se šteje od prehoda pospeška pod prag do 129 Slika 4: Način prikaza na zaslonu Na sliki 4 (spodnji histogram) je prikazan način prikaza na zaslonu. Pri vožnji s konstantno hitrostjo je histogram prazen, saj se vozilo nahaja v ničtem razredu, ker ni pospeškov/pojemkov. V primeru, da se pospešek poveča/zmanjša, se sorazmerno z nastavljenimi mejami prikažejo dodatni razredi (stolpci) histograma. Zeleno področje predstavlja optimalno vrednost trenutnega pospeška/pojemka, medtem ko rumeno področje predstavlja povišano vrednost. Obstaja tudi nadpovprečna vrednost, kjer se vsi razredi obarvajo rdeče. Seveda je za optimalno in udobno vožnjo priporočljivo, da se vozilo čim dlje nahaja v zelenem območju. V zalednem sistemu je pregled pospeškov možen na več načinov. Prva možnost je pregled pospeškov po zaključeni poti vozila/voznika (slika 5), kjer je možno izvesti hitro primerjavo glede na dolžino in čas poti. Iz rezultatov se nato razbere ali se vožnje izvajajo na način, da so pospeški večinoma v optimalnem področju (zeleno območje histograma). 5 Zaključek Izveden način ocenjevanja kvalitete vožnje s 3osnim pospeškometrom daje dobre in med seboj primerljive rezultate glede na vožnje različnih dolžin po različnih konfiguracijah terena. Pridobljeni rezultati se uporabljajo za informiranje in izobraževanje voznikov, kar na dolgi rok omogoča dodatno optimizacijo voznega parka. V prihodnjih nadgradnjah sistema nameravamo vpeljati funkcionalnost odčitavanja porabe goriva (dostop do podatkov porabe goriva iz CAN vodila preko FMS vmesnika). Kombinacija podatkov o porabi goriva, oceni kvalitete vožnje in ostalih parametrih bo omogočala podrobno primerjavo med tipi vozil in načinom vožnje za vsakega voznika posebej. Pridobljene analize bodo vplivale pri nabavi novih vozil glede na različne konfiguracije terena in ostale potrebe. Literatura Slika 5: Pregled pospeškov po zaključeni poti vozila/voznika Druga možnost je izdelava poročil v različnih oblikah. PDF format poročila (slika 6) omogoča hiter pregled, medtem ko CSV (tabelaričen format) omogoča dodatno podrobno analizo podatkov glede na različno nastavljene filtre. Slika 6: Primer poročila v PDF formatu 130 [1] G. Felzer, A. Chowdhury, D. Igrec: Analiza kvalitete vožnje s pomočjo spektralne močnostne gostote vibracijskega signala, Zbornik šestindvajsete mednarodne Elektrotehniške in računalniške konference ERK 2017, 25. - 26. september 2017, Portorož, Slovenija [2] D. Igrec, G. Felzer, A. Chowdhury: Univerzalna procesno-komunikacijska enota, Zbornik desete konference Avtomatizacija v industriji in gospodarstvu, 6. - 7. april 2017, Maribor, Slovenija [3] G. Felzer, A. Chowdhury, D. Igrec: Sistem za upravljanje in nadzor voznega parka v potniškem prometu, Zbornik desete konference Avtomatizacija v industriji in gospodarstvu, 6. - 7. april 2017, Maribor, Slovenija [4] Analog Devices: ADXL345, 3-Axis, ±2 g/±4 g/±8 g/±16 g Digital Accelerometer, https://www.analog.com/en/products/adxl345.html [5] Raspberry Pi Compute Module, https://www.raspberrypi.org/products/compute-module-1 Močnostna elektrotehnika Power Engineering Vpliv višjih harmonskih komponent na magnetne lastnosti mehkomagnetnih materialov Marko Petkovšek, Peter Zajec Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, SI-1000 Ljubljana E-pošta: marko.petkovsek@fe.uni-lj.si Influence of Higher Harmonics on Magnetic Properties of Soft-Magnetic Material Abstract. This paper highlights the area of magnetic properties measurement of soft-magnetic material at higher frequencies and the presence of higher harmonics. Although the measurement procedure is defined in international standards [1, 2] in order to be able to evaluate and compare measurement results on the producer and customer side, this only gives us information on magnetic properties at conditions that are actually far from conditions that a final product is normally exposed to. Namely, the measurement should be done in such a way, that either the magnetic flux density B in the core or the magnetic field strength H is sinusoidal. However, in real operation of a product, such conditions are extremely rare. So, it is of great importance to a design engineer to be able to measure the magnetic properties also at conditions that are expected for the normal operation of the product. In the final part of the paper, experimental results are given for a soft-magnetic wound core that is firstly measured at frequencies of 50 Hz, 150 Hz and 250 Hz. Then, the magnetization was changed to include not only the fundamental (50 Hz) but also the third and the fifth harmonic. In this case, the BH hysteresis could change from a “conventional” form and could exhibit also several minor loops. 1 Uvod V proizvodnem procesu je ena ključnih postavk izhodna ali končna kontrola kakovosti, s katero sebi in kupcu dokažemo skladnost izdelka z zastavljenimi kriteriji. Pri izdelavi jeder transformatorjev in dušilk ali pa lamel električnih strojev je med postopkom končne kontrole tako treba izvesti tudi meritev magnetnih lastnosti. Seveda je edino smiselno, da so merilni postopki zaradi primerljivosti in ponovljivosti rezultatov standardizirani, kar velja tudi za merjenje magnetnih lastnosti mehkomagnetnih materialov. Žal pa je meritve magnetnih lastnosti končnega izdelka velikokrat nemogoče opraviti na način, ki bi ga vstopna surovina sicer dovoljevala. Elektro pločevino tako lahko pomerimo s pomočjo ustrezne merilne opreme (npr. Epstein frame, single sheet tester), a je merilni postopek vezan na uporabo vnaprej določene oblike (dimenzije) pločevine. Če je naš končni izdelek jedro transformatorja ali pa paket lamel rotorja ali statorja motorja, je seveda za meritev magnetnih lastnosti in ERK'2019, Portorož, 132-135 132 oceno ustreznosti proizvodnega postopka treba uporabiti drugačen pristop. V nadaljevanju bo na primeru toroidnih tračnih jeder na kratko pojasnjen princip merjenja magnetnih lastnosti, nakar bo sledil opis merilne naprave, s katero je mogoče pomeriti magnetne lastnosti jedra pri povišani frekvenci in prisotnosti višjih harmonskih komponent v magnetilnem toku, kar je za konstrukterja lahko zelo dobrodošel podatek. 2 Splošno o merilnem postopku Meritev magnetnih lastnosti mehkomagnetnih tračnih jeder temelji na ti. transformatorskem principu, saj testno jedro (največkrat toroid) za potrebe meritev opremimo z dvema navitjema. S primernim magnetilnim tokom iP skozi primarno navitje z NP ovoji (slika 1) poskrbimo za magnetno poljsko jakost H, ki bo jedru povzročila določeno gostoto magnetnega pretoka B, na sekundarnem navitju z NS ovoji pa lahko na ta način kot posledico spreminjajoče se gostote magnetnega pretoka B v jedru merimo inducirano napetost uS. Merilni postopek je zaradi primerljivosti in ponovljivosti rezultatov meritev treba izvesti pri enakih pogojih – bodisi pri takem magnetilnem toku iP in s tem magnetni poljski jakosti H, da je gostota magnetnega pretoka B in s tem inducirana napetost uS sinusne oblike [1] (na sliki 1 označen preklopnik v položaju REG U – uporabljeno v prispevku), ali pa s sinusnim magnetilnim tokom iP [2] (preklopnik v položaju REG I), ki v splošnem povzroči nesinusen potek gostote magnetnega pretoka B oz. napetosti uS. V obeh primerih seveda velja, da je magnetna poljska jakost H premosorazmerna primarnemu toku: 𝐻(𝑡) = 𝑖𝑃 (𝑡)∙𝑁𝑃 𝑙𝐹𝐸 , (1) pri čemer je NP število primarnih ovojev in lFE srednja dolžina magnetnih silnic v jedru. Inducirana napetost na sekundarnem navitju pa je enaka: 𝑢𝑆 (𝑡) = −𝑁𝑆 ∙ 𝑆𝐹𝐸 𝑑𝐵(𝑡) 𝑑𝑡 , (2) kjer je Ns število sekundarnih ovojev in SFE presek jedra. Iz slednjega zapisa tudi sledi, da v mikrokrmilniku lahko izračunamo referenčni signal uREF glede na želeni časovni potek in velikost (temensko vrednost) gostote magnetnega pretoka. PGA REG U uREF - merjenec močnostni ojačevalnik REG I PI reg. Tr. MO iP SFE RN iP NP iPRN NP filter lFE NS uS uS PGA LabView DAC ethernet PGA ADC ADC cRIO-9076 Slika 1: Shema merilnega sistema z možnostjo izbire načina vzbujanja. S takim merilnim sistemom (več o njem v [3]) je poleg osnovnih parametrov, kot je npr. efektivna vrednost magnetne poljske jakosti Hef ali pa relativna permeabilnost µr pri določeni gostoti magnetnega pretoka B, mogoče prikazati tudi časovni potek obeh veličin (H in B), ki v xy prikazu tvorita za uporabnika še bolj zanimivo BH histerezno zanko in dobiti podatek o delovni specifični izgubni moči ps (v W/kg). Slednja združuje specifične histerezne izgube ph in specifične izgube zaradi vrtinčnih tokov pe. Obe komponenti sta odvisni tako od frekvence kot tudi od temenske vrednosti gostote magnetnega pretoka. V splošnem lahko po [4] zapišemo odvisnost skupnih specifičnih izgub kot: 𝑦 𝑥 𝑝𝑠 = 𝑝ℎ + 𝑝𝑒 = 𝑐1 ∙ 𝐵𝑚 ∙ 𝑓 + 𝑐2 ∙ 𝐵𝑚 ∙ 𝑓 2 , (3) pri čemer sta c1 in c2 koeficienta izgub, x in y pa eksponenta, ki zavzemata vrednosti med 1 in 3, večinoma okrog 2. Razvidno je, da v skladu s (3) z zvišanjem frekvence vzbujalnega toka zelo povečamo izgubno moč v jedru. Omenjeno dejstvo je zelo nazorno razvidno tudi s slike 3, saj postaja histerezna zanka s povečevanjem frekvence vedno širša. Tabela 1. Merilni rezultati za vzorec pri različnih stopnjah magnetenja in različnih frekvencah vzbujalnega toka f [Hz] 50 150 250 Bm [T] Hef [A/m] µr / ps [W/kg] 1,600 18,68 51585 0,713 0,999 11,86 49900 0,281 0,199 3,35 33678 0,012 1,601 33,12 31905 4,081 1,000 21,55 27578 1,657 0,200 5,91 19318 0,082 1,600 44,98 22702 9,290 1,001 29,12 20609 3,784 0,201 7,99 14549 0,195 3 Rezultati V nadaljevanju so podani rezultati meritev magnetnih lastnosti za toroidno tračno jedro s tipsko oznako 53/39/27 (zunanji in notranji premer ter višina jedra v mm). Najprej je bilo jedro magneteno s takim izmeničnim tokom, da je bila v jedru dosežena sinusna gostota magnetnega pretoka s temensko vrednostjo Bm = 1,6 T, nakar smo stopnjo magnetenja postopoma znižali na 1,0 T in 0,2 T. Frekvenca vzbujalnega toka pri tem je bila: 50 Hz, 150 Hz in 250 Hz. V tabeli 1 so za uporabljeni nabor frekvenc in gostot magnetnega pretoka podane izmerjene efektivne vrednosti magnetne poljske jakosti in relativne permeabilnosti µr. Poleg tega je med meritvijo bila pomerjena tudi specifična izgubna moč ps. Njen potek v odvisnosti gostote magnetnega pretoka je podan na sliki 2. 133 Slika 2. Delovna specifična izgubna moč pri različnih frekvencah vzbujalnega toka v odvisnosti od gostote magnetnega pretoka Nato je bilo magnetenje jedra spremenjeno v skladu s prej predstavljenim principom, in sicer: v jedru smo želeli vzpostaviti zahtevano temensko vrednost gostote magnetnega pretoka (Bžel = 1,6 T), le da je sedaj poleg osnovne harmonske komponente k skupnemu rezultatu prispevala še tretja ali peta harmonska komponenta. Časovni potek referenčne napetosti je za primer s prisotno tretjo harmonsko komponento (poleg osnovne frekvence 50 Hz) podan na sliki 4, s prisotno peto harmonsko komponento pa na sliki 5. Pri konstruiranju referenčnega signala za merilni sistem je bilo v obeh primerih (obakrat normirano; p.u.) predpostavljeno, da znaša amplituda tretje oz. pete harmonske komponente napetosti 30% vrednosti amplitude osnovne harmonske komponente, pri čemer je fazni kot med osnovno in tretjo harmonsko komponento enak 0° (sinhroniziran začetek prve in tretje harmonske komponente). Kot zanimivost sta na slikah 6 in 7 podani še primerjavi med obliko časovnega poteka referenčne napetosti (črtkano) in »gostote magnetnega pretoka« (polna črta), ki naj bi tako napetost pravzaprav povzročila (ponovno p.u.). Upoštevajoč povratno zanko napetosti na sliki 1 je referenčna napetost pravzaprav enaka sekundarni inducirani napetosti, iz te pa z upoštevanjem (2) lahko izračunamo gostoto magnetnega pretoka. Referenčna napetost u(1+3) (oz. u(1+5)) na slikah 4 in 5 je tako rezultat seštevanja osnovne harmonske komponente in tretje (pete) harmonske komponente z razmerjem amplitud 1:0,3, potek »gostote magnetnega pretoka« (B) pa je dobljen z integracijo poteka inducirane napetosti. Na prvi pogled bi lahko podali oceno, da sta si časovna poteka gostote magnetnega pretoka na slikah 6 in 7 precej podobna. Fizikalno ali še bolje elektrotehniško gledano (navezujoč se na (2)!) bi zato morala tudi časovna odvoda obeh gostot magnetnega pretoka rezultirati v precej podobnih časovnih potekih inducirane napetosti. A temu ni tako, kar kaže na izredno občutljivost merilnega postopka, ki je vezan na merjenje napetosti in posledično računanje (integral!) gostote magnetnega pretoka. Slika 4: Oblika inducirane napetosti pri prisotni tretji harmonski komponenti Slika 5: Oblika inducirane napetosti pri prisotni peti harmonski komponenti Slika 6: Gostota magnetnega pretoka in inducirana napetost pri prisotni tretji harmonski komponenti Slika 7: Gostota magnetnega pretoka in inducirana napetost pri prisotni peti harmonski komponenti Slika 3: Družina histereznih zank pri Bžel = 1,6 T in različnih frekvencah vzbujalnega toka 134 Na sliki 8 je podana družina histereznih zank za Bžel = 1,6 T pri 50 Hz in s prispevkom tretje oz. pete harmonske komponente, kot je prikazano na slikah 6 in 7, v tabeli 2 pa so zbrani ključni merilni rezultati. Zanimivo je, da so vrednosti tako Hef kot tudi ps ob prisotnosti tretje oz. pete harmonske komponente pravzaprav celo nižje kot v primeru samo osnovne komponente (tabela 1). Se pa rezultati precej spremenijo, če spremenimo obliko želene gostote B. V primeru na slikah 9 in 10 je razmerje amplitud harmonskih komponent (napetosti!) 1:1 (označeno z * oz. s polno črto), spremenjen pa je tudi fazni kot med komponentama. Ob spreminjanju faznega kota dosežeta Hef in ps do  30% večje vrednosti kot prej. Tabela 2. Merilni rezultati za vzorec pri različnih stopnjah magnetenja in prisotni tretji in peti harmonski komponenti f [Hz] 50 + 150 50 + 250 Bm [T] Hef [A/m] µr / ps [W/kg] 1,600 18,48 45103 0,691 1,000 11,47 48545 0,260 0,199 3,13 32360 0,011 1,600 18,37 43844 0,707 0,999 11,64 48114 0,271 0,200 3,26 33326 0,012 V obeh primerih je opaziti, da se osnovna oblika histereznih zank spremeni do te mere, da se v njej lahko pojavijo tudi dodatne manjše zanke (minor loops [5, 6]). Oblika krivulje, pri kateri B vsebuje višje harmonske komponente (hkrati pa H ni sinusne oblike!), načeloma precej odstopa od »klasične« histerezne zanke. Pojav, lokacija in velikost manjših zank je (pri istem vzorcu!) odvisen od razmerja amplitud in faznega zamika med komponentama referenčnega napetostnega signala oz. med komponentama gostote magnetnega pretoka. 4 Zaključek Slika 8: Družina histereznih zank pri Bžel = 1,6 T in prisotni tretji in peti harmonski komponenti Slika 9: Histerezni zanki pri Bžel = 1,6 T in prisotni tretji harmonski komponenti pri razmerju 1:0,3 in 1:1 (*) Slika 10: Histerezni zanki pri Bžel = 1,6 T in prisotni peti harmonski komponenti pri razmerju 1:0,3 in 1:1 (*) 135 V prispevku je osvetljena tematika merjenja magnetnih lastnosti mehkomagnetnih materialov pri povišani frekvenci in prisotnosti višjih harmonskih komponent v gostoti magnetnega pretoka B. V tem primeru je bil merjeni vzorec toroidno tračno jedro, podobno meritev pa bi lahko opravili tudi za npr. statorski ali rotorski paket motorja, kjer je prisotnost višjih harmonskih komponent v gostoti magnetnega pretoka prej pravilo kot izjema. Iz rezultatov je razvidno, da se s povečanjem frekvence specifične izgube precej povečajo. V primeru, ko med meritvijo gostota magnetnega pretoka vsebuje tudi višje harmonske komponente (in H ni sinusne oblike!), moramo pričakovati, da bodo histerezne zanke odstopale od »klasične« oblike, prav tako pa je seveda za pričakovati spremenjeno (načeloma večjo) specifično izgubno moč. Literatura [1] International standard IEC 404-2, “Methods of measurement of magnetic, electrical and physical properties of magnetic sheet and strip.” [2] ASTM A772 A772M-00(2005) Standard Test Method for AC Magnetic Permeability of Materials Using Sinusoidal Current. [3] M. Petkovšek: Magnetne lastnosti tračnih jeder pri različnih načinih vzbujanja, Elektrotehniški vestnik, 2016, letn. 83, št. 4. [4] R. Boll “Soft Magnetic Materials,” Vacuumschmelze Gmbh, Berlin. [5] N. Alatawneh and P. Pillay, “The Minor Hysteresis Loop Under Rotating Magnetic Fields in Machine Laminations,” IEEE Trans. Ind. Appl., vol. 50, no. 4, pp. 2544–2553, Jul./Aug. 2014. [6] T. Taitoda, Y. Takahashi and K. Fujiwara, “Iron Loss Estimation Method for a General Hysteresis Loop With Minor Loops,” IEEE Trans. on Magnetics, vol. 51, no. 11, November 2015. Zagotavljanje elektromagnetne združljivosti v elektroenergetskem objektu Urban Metod Peterlin1 Elektroinštitut Milan Vidmar, Hajdrihova 2, 1000 Ljubljana urban.peterlin@eimv.si 1 Ensuring electromagnetic compatibility in the electric power facility Abstract. The provision of electromagnetic compatibility in the electric power facility should be started at the stage of preparation of the tender documentation in which the technical specifications for primary and secondary equipment and the requirements to be met by the contractors must be well determined. In the project for construction, the planned measures must be described in detail and illustrated by drawings. In the construction phase, quality expert supervision must be ensured. After completion of the work it is recommended to perform measurements to check the effectiveness of the built-in measures and the suitability of the installed equipment to ensure electromagnetic compatibility. 1 Uvod Elektromagnetna združljivost je področje elektrotehnike, ki raziskuje nastajanje, širjenje in absorbiranje elektromagnetne energije oziroma njenih neželenih posledic, elektromagnetnih motenj (zaradi stikalnih manevrov, kratkih ali zemeljskih stikov, atmosferskih razelektritev, elektrostatičnih razelektritev in radiofrekvenčnih motenj) v prostoru oziroma objektu in napravah, ki so vgrajene vanj. Naprave morajo v določenem prostoru kljub elektromagnetnim motnjam delovati brez poslabšanja svojih lastnosti, zato morajo biti usklajene ravni motenj in odpornosti naprav nanje. Glavni cilj pri zagotavljanju elektromagnetne združljivosti je zagotoviti v določenem prostoru takšno elektromagnetno okolje, ki bo zagotavljalo normalno delovanje opreme, ki je predvidena za vgradnjo v ta prostor tako, da se na njej ne bodo pojavile motnje (v tokokrogih sekundarnih sistemov se odražajo kot prehodne prenapetosti, v prostoru kot radiofrekvenčni šum), ki bi lahko ogrozile normalno delovanje. Po definiciji je elektromagnetna združljivost (ang. electromagnetic compatibilty – EMC) zmožnost opreme ali sistemov, da v svojem elektromagnetnem okolju delujejo zadovoljivo in ne vnašajo nedopustnih elektromagnetnih motenj ničemur v tem okolju [1]. Zagotavljanje elektromagnetne združljivosti opreme se lahko razlikuje od države do države z zakoni, predpisi in direktivami. V Evropski uniji je to področje urejeno z Direktivo 2014/30/EU Evropskega parlamenta in Sveta. Države članice morajo sprejeti in objaviti potrebne zakone in predpise za uskladitev z Direktivo. V ERK'2019, Portorož, 136-139 136 slovenski pravni red je sprejeta s pravilnikom [2], ki ima podlago v zakonu [3]. Osnovne zahteve za elektromagnetno združljivost v elektroenergetskih objektih so določene v standardu [4]. Ukrepi za zmanjševanje elektromagnetnih motenj so objavljeni v tehničnem poročilu [5, 6], podrobnejša navodila pa v smernicah [7]. Dodatne zahteve, ki vplivajo na dobro inženirsko prakso, vključujejo priporočila, navedena v članku [8]. Elektromagnetna združljivost v objektu je zagotovljena, če je odpornost vgrajenih naprav na prenapetosti višja od ravni prehodnih prenapetosti, ki se inducirajo zaradi elektromagnetnih motenj in je radiofrekvenčni šum, ki se pojavlja zaradi motenj, manjši, kot je raven odpornosti naprav. Za zagotovitev normalnega obratovanja elektroenergetskega objekta je treba z različnimi ukrepi vplivati na izvore in prenose motenj, da te zmanjšamo na raven, ki ne presega ravni odpornosti naprav. Takšno uskladitev je možno realizirati z zagotavljanjem nižje ravni motenj in (ali) z izborom naprav z visoko ravnjo odpornosti. 2 Viri in prenos elektromagnetnih motenj V elektroenergetskem objektu nastajajo visokofrekvenčne in nizkofrekvenčne motnje. Visokofrekvenčne motnje nastajajo zaradi [4]: ­ stikalnih manevrov v primarnih tokokrogih, ­ stikalnih manevrov v sekundarnih tokokrogih, ­ udarov strele v nadzemne vode ali v ozemljene sestavne dele elektroenergetskega objekta, ­ delovanja prenapetostnih odvodnikov z iskrili, ­ visokofrekvenčnih radijskih oddajnikov in ­ elektrostatičnih praznitev. Nizkofrekvenčne motnje nastajajo zaradi [4]: ­ kratkih stikov, ­ zemeljskih stikov in ­ elektromagnetnih polj, ki jih proizvaja oprema. Viri motenj v elektroenergetskem objektu so odvisni od konstrukcije (kvalitete) vgrajenih naprav, zato nanje lahko vplivamo z ustrezno izbiro, če so za naprave podatki o povzročanju motenj znani. Ker pa naprave ogrožajo tudi motnje virov izven obravnavanega elektroenergetskega objekta, so za elektromagnetno združljivost pomembni ukrepi, s katerimi zmanjšujemo vplive motenj na občutljive naprave elektroenergetskega objekta. Elektromagnetne motnje prehajajo v napravo, opremo ali sistem: ­ po vodniku – energija motnje pride v napravo po enem ali več vodnikih, s sevanjem – energija motnje pride v napravo kot elektromagnetno valovanje. Motnje se prenašajo: ­ preko skupnih impedanc oz. galvanskih povezav, ­ preko induktivnih sklopov, ­ preko kapacitivnih sklopov in ­ z elektromagnetnim sevanjem. Za normalno obratovanje elektroenergetskega objekta je treba z različnimi ukrepi vplivati na izvore in prenose motenj, da jih zmanjšamo na raven, ki zagotavlja zanesljivo delovanje vseh naprav elektroenergetskega objekta. ­ 3 Ukrepi za zagotavljanje elektromagnetne združljivosti Osnovni ukrep zagotavljanja elektromagnetne združljivosti je zmanjševanje motilnih prenapetosti s povezavami za izenačevanje potencialov in z ozemljilno mrežo nizke impedance. Dodatna ukrepa sta zaslanjanje pred prenosom in kompenziranje motenj. Glavni ukrepi za zmanjšanje visokofrekvenčnih in nizkofrekvenčnih motenj so: ­ ustrezna konstrukcija instrumentnih transformatorjev, ­ izbira ustrezne opreme (primarne in sekundarne), ­ zaščita pred udari strele, ­ ustrezno gosta ozemljilna mreža za učinkovito odvajanje visokofrekvenčnih tokov in ustrezno obsežen ozemljitveni sistem za odvajanje nizkofrekvenčnih tokov v zemljo, ­ kvalitetno izvedeni spoji ozemljilnega sistema in povezav z njim, ­ strukturirano izveden sistem izenačitve potencialov, ­ ustrezno razporejene kabelske police in kanali, ­ izbira ustrezno opletenih kablov za sekundarne tokokroge, ­ ustrezna razporeditev kablov na kabelskih policah, ­ namestitev kompenzacijskih vodnikov in ­ primerno izvedeno napajanje sekundarnih sistemov. Koncept oznake CE na izdelkih je bil zasnovan z namenom zmanjšati veliko število nacionalnih odobritev z uvedbo usklajenih pravil, ki so zapisana v direktivah EU. Oznaka velja samo za izdelke, za katere je bila sprejeta direktiva in je zanje njena uporaba obvezna. Označuje skladnost z zahtevanimi predpisi in predstavlja predpogoj za prost dostop do enotnega trga EU. Podrobne tehnične zahteve določajo standardi standardizacijskih organov (IEC, CISPR, ITU, IEEE, CENELEC, ETSI), katerih upoštevanje ni zakonsko predpisano. Za zagotovitev skladnosti opreme z direktivami mora biti raven elektromagnetnih motenj, ki jih oddaja posamezna oprema v okolico dovolj nizka, da ne vpliva kvarno na normalno delovanje ostale opreme, nameščene v prostoru. Pred izbiro opreme je treba preučiti elektromagnetno okolje, v katero bo ta vgrajena oziroma pripraviti ukrepe za zagotovitev elektromagnetne združljivosti glede na izbrano opremo. Oprema mora biti tipsko preizkušena v laboratoriju glede odpornosti proti posameznim vrstam elektromagnetnih motenj in glede oddajanja motenj. Testiranje opreme po standardiziranih postopkih se izvaja z znanim virom motnje za eno vrsto elektromagnetne motnje hkrati. Ker se na posamezne vrste motenj oprema različno odziva, dobimo pri testiranju opreme različne ravni in meje oddajanja motenj ter odpornosti nanje. Na sliki 1 so za poljubno napravo, opremo ali sistem shematsko prikazane ravni in meje posamezne elektromagnetne motnje ter raven in obrobje elektromagnetne združljivosti v odvisnosti od neodvisne spremenljivke (npr. frekvence). 4 Zahteve za opremo Direktive Evropske unije V Evropski uniji je že dlje časa vpeljan zakonodajni pristop (novi pristop), po katerem temeljne bistvene zahteve za opremo, dostopno na trgu (npr. zagotavljanje visoke ravni zaščite zdravja in varnosti ljudi, domačih živali in premoženja), določajo direktive. Direktive so zakonodajni akti o določenem cilju, ki ga morajo doseči države EU v določenem časovnem obdobju. Vsaka država sama sprejme svoje predpise o tem, kako bo odobreno direktivo vključila v nacionalno zakonodajo. Direktive novega pristopa zahtevajo, da proizvajalci svoje izdelke označujejo z oznako CE, vendar morajo pred tem za izdelek izdelati tehnično dokumentacijo, s katero dokazujejo skladnost izdelka z vsemi predpisi, ki se nanj nanašajo (direktivami). 137 Slika 1. Shematski prikaz ravni in mej motnje [9] Ker se testi opreme glede oddajanja motenj in odpornosti na motnje običajno izvajajo v nadzorovanem okolju, oznaka CE ne zagotavlja, da bo oprema še vedno delovala normalno, ko bo nameščena v elektroenergetskem objektu, kjer je množica različnih naprav, ki oddajajo elektromagnetne motnje različnih ravni. Treba je upoštevati tudi, če imajo vse naprave nameščeno oznako CE, to še ne pomeni, da je celoten nepremični sestav skladen, kajti posamezna naprava lahko povzroča motnje drugi napravi in posledično je moteno delovanje te naprave. Poleg tega je treba upoštevati, da proizvajalci oziroma dobavitelji pri testiranju opreme ne upoštevajo vedno zahtev aktualnih standardov oziroma zadnjega stanja tehnike. Razlog za takšno ravnanje je lahko v tem, da ne spremljajo zadnjega stanja tehnike ali pa se tako odločijo zavestno in uporabijo pri preizkušanju opreme tiste standarde, ki jim olajšajo izpolnitev zahtev za pritrditev oznake CE. Oprema mora izpolnjevati naslednje bistvene zahteve: 1. Splošne zahteve [2]: Oprema mora biti zasnovana in izdelana ob upoštevanju stanja tehnike, tako da se zagotovi, da: (a) elektromagnetne motnje, ki jih povzroča, ne presegajo ravni, nad katero radijska in telekomunikacijska oprema ter druga oprema ne morejo delovati, kakor je predvideno; (b) ima raven odpornosti pred elektromagnetnimi motnjami, ki se pričakuje pri predvideni uporabi opreme in ki ji omogoča delovanje brez nesprejemljivega poslabšanja njene predvidene uporabe. 2. Posebne zahteve za nepremične sestave [2]: Namestitev in predvidena uporaba sestavnih delov. Pri namestitvi nepremičnega sestava se uporabi dobra inženirska praksa in upoštevajo informacije o predvideni uporabi njenih sestavnih delov z namenom, da se izpolnijo bistvene zahteve iz 1. točke. Za ugotovitev izpolnjevanja splošnih in posebnih zahtev za nepremične sestave je priporočljivo v elektroenergetskem objektu izvesti meritve elektromagnetnih motenj (prehodne prenapetosti v sekundarnih tokokrogih in radiofrekvenčni šum v prostoru) po zaključku del. Izvedba preskusa po zaključku del je opredeljena v standardu SIST EN 61000-4-4. Testiranje po zaključku elektromontažnih del priporočajo tudi smernice [7]. Priporočljivo je, da je izmerjena raven motenj v normalnem obratovanju bistveno manjša glede na raven odpornosti vgrajenih naprav (slika 2), kajti v primeru atmosferskih razelektritev, kratkih stikov in zemeljskih stikov lahko po nekaterih predpostavkah pričakujemo bistveno večje motnje od tistih, ki nastanejo med normalnim obratovanjem. Slika 2. Shematski prikaz ravni elektromagnetne združljivosti ­ ­ ­ ­ Pomen pojmov na sliki: raven občutljivosti – če so motnje višje od te ravni, je delovanje naprave moteno, raven odpornosti – preskušeno nemoteno delovanje naprave pri določeni ravni motenj, raven elektromagnetne združljivosti – najvišja pričakovana raven elektromagnetnih motenj v določenem elektromagnetnem okolju, oddajna meja – najvišja dovoljena raven motenj, ki jih sme naprava oddajati, 138 raven motenj v normalnem obratovanju – raven motenj ob stikalnih manevrih v neobremenjenem stanju (vklop oziroma izklop ločilnika). Standardi Na področju elektromagnetne združljivosti je na razpolago veliko standardov. Pri zasnovi ukrepov za zagotovitev elektromagnetne združljivosti in pri določanju zahtev glede odpornosti opreme so pomembni zlasti naslednji standardi. Standard SIST EN 61936-1 določa splošna pravila za načrtovanje in gradnjo elektroenergetskega objekta v omrežjih z nazivno izmenično napetostjo nad 1 kV in z nazivno frekvenco do vključno 60 Hz. V standardu so postavljene izhodiščne zahteve za visokonapetostno opremo (primarno). Podrobne zahteve za posamezno opremo so določene v ustreznem produktnem standardu (Instrumentni transformatorji – serija standardov SIST EN 61869, Visokonapetostne stikalne in krmilne naprave – serija standardov SIST EN 62271, Merilni releji in zaščitna oprema – SIST EN 60255 itd.). V primeru, da ni ustreznega produktnega standarda za posamezno napravo, se za takšno napravo uporabijo določila splošnega standarda z določenega področja. Za elektromagnetno združljivost so za industrijske objekte podana določila v standardu SIST EN 61000-6-2 za odpornost proti motnjam in v standardu SIST EN 61000-6-4 za oddajanje motenj. Tehnična specifikacija SIST-TS IEC/TS 61000-6-5 določa zahteve za preskušanje odpornosti za sekundarno opremo (oprema za vodenje, zaščito, meritve, signalizacijo, telekomunikacije), namenjeno za uporabo pri proizvodnji, prenosu in distribuciji elektrike ter povezane telekomunikacijske sisteme. Tehnična specifikacija določa preskusne ravni tipskih preskusov glede na elektromagnetno okolje, kjer bo oprema vgrajena. Pri vsakem preskusu je predpisan pogoj, glede odziva opreme na motnjo, ki je odvisen od pomembnosti sekundarne opreme pri delovanju elektroenergetskega objekta. Standardizirane postopke za testiranje opreme določa veliko standardov npr. serija IEC standardov 61000-4, ki so privzeti v evropsko in slovensko standardizacijo (npr. SIST EN 61000-4-4 Preskus odpornosti proti hitrim električnim pojavom/razpoku, SIST EN 61000-45 Preskus odpornosti proti napetostnemu udaru, SIST EN 61000-4-11 in SIST EN 61000-4-29 Preskusi odpornosti proti upadom napetosti, kratkotrajnim prekinitvam in napetostnim kolebanjem, SIST EN 61000-4-12 Preskus odpornosti proti zadušenemu nihajnemu valu, SIST EN 61000-4-18 Preskus odpornosti proti nihajnemu valu, SIST EN 61000-4-3 Preskus odpornosti proti sevanim radiofrekvenčnim elektromagnetnim poljem, SIST EN 61000-4-8 Preskus odpornosti proti magnetnemu polju omrežne frekvence, SIST EN 61000-4-2 Preskus odpornosti proti elektrostatični razelektritvi itd.). Smernice za zagotavljanje elektromagnetne združljivosti med električnimi in elektronskimi sistemi določa standard SIST IEC/TR 61000-5-2, ki obravnava izvedbo ozemljitev in ožičenja električnih in elektronskih sistemov. Smernice za blaženje zunanjih ­ elektromagnetnih motenj, ki vplivajo na objekt obravnava standard SIST-TP IEC/TR 61000-5-6. 5 Priprava razpisne in projektne dokumentacije Pri pripravi dokumentacije za novogradnjo ali rekonstrukcijo je treba upoštevati vse vire motenj (npr. stikalni manevri, kratki stiki, atmosferske razelektritve, radiofrekvenčne motnje), ki ogrožajo normalno delovanje elektroenergetskega objekta in predvideti potrebne ukrepe za zmanjšanje vpliva motenj na primarne in sekundarne naprave objekta. Načrtovanje elektroenergetskega objekta z vidika zagotovitve elektromagnetne združljivosti mora biti obdelano v razpisni dokumentaciji za dobavo opreme in izvedbo del ter v projektni dokumentaciji (idejna zasnova za pridobitev projektnih in drugih pogojev, projekt za pridobitev mnenj in gradbenega dovoljenja, projekt za izvedbo gradnje, projekt izvedenih del). V dokumentaciji za razpis mora biti jasno razvidno, kakšne so tehnične zahteve s stališča elektromagnetne združljivosti glede opreme, ki bo vgrajena v elektroenergetskem objektu (tehnične specifikacije opreme – odpornost proti elektromagnetnim motnjam in ravni oddajanja motenj), v katerem elektromagnetnem okolju bo oprema delovala in kateri ukrepi so predvideni za zmanjšanje elektromagnetnega motenja. Priložena dokumentacija dobavljene opreme mora vsebovati podatke o opravljenih tipskih preskusih po veljavnih standardih s področja elektromagnetne združljivosti (preskusi naprav in njim pripadajočih tokokrogov na odpornost za elektromagnetna motenja in elektromagnetne motnje ter preskusi naprav in njim pripadajočih tokokrogov glede oddajanja elektromagnetnih motenj). Naprave morajo biti izbrane tako, da zadoščajo zahtevam, ki izvirajo iz značilnosti posameznih elektromagnetnih okolij. V projektu za izvedbo gradnje morajo biti načrtovani ukrepi za zagotavljanje elektromagnetne združljivosti podrobno opisani v tehničnem poročilu in ponazorjeni na risbah z detajli. Ključno pri načrtovanju ukrepov za zagotavljanje elektromagnetne združljivost je, da so podrobno opisani in ne zgolj našteti, ker je v drugem primeru njihova izvedba preveč prepuščena znanju posameznega izvajalca del. 6 Zaključek Zaradi elektromagnetnih motenj se delovanje opreme ne sme bistveno poslabšati, nikakor pa elektromagnetne motnje na napravah ne smejo povzročiti okvar, ki bi onemogočile normalno delovanje elektroenergetskega objekta. Zagotoviti je treba, da nivo motenj v nobeni obratovalni ali okoljski situaciji ne bo višji, kot znaša nivo odpornosti vgrajenih naprav. Za dosego tega cilja je treba z zagotavljanjem elektromagnetne združljivosti 139 začeti v fazi priprave razpisne in projektne dokumentacije ter med gradnjo izvajati kvalitetni strokovni nadzor. Treba je izvajati naslednje ukrepe: ­ preverjanje skladnosti predvidenih ukrepov v razpisni in projektni dokumentaciji z zahtevami, v standardih (npr. [4]), tehničnih poročilih (npr. [5,6]) in smernicah [7], ­ preverjanje skladnosti načrtovanih ukrepov v razpisni in projektni dokumentaciji z dobro inženirsko prakso, ­ preverjanje skladnosti izvedenih ukrepov z dobro inženirsko prakso, ­ preverjanje, ali je bila oprema testirana v skladu z najnovejšimi standardi in ­ preverjanje skladnosti nameščene opreme, če je primerna za določeno elektromagnetno okolje (glede odpornosti na elektromagnetne motnje in glede povzročanja motenj). Za ugotavljanje učinkovitosti načrtovanih in izvedenih del je priporočljivo izvesti: ­ meritve galvanskih povezav, ­ meritve asimetričnih prehodnih prenapetosti v sekundarnih tokokrogih, ki nastanejo pri stikalnih manevrih z ločilniki in odklopniki, ­ meritve radiofrekvenčnih motenj, ­ analizo izmerjenih vrednosti in ­ analizo sistema vodenja med meritvami. Literatura [1] SIST IEC 60050(161):1999 - Mednarodni elektrotehniški slovar – Poglavje 161: Elektromagnetna združljivost International Electrotechnical Vocabulary - Chapter 161: Electromagnetic Compatibility [2] Pravilnik o elektromagnetni združljivosti (EMC), Uradni list RS, št. 39/2016 [3] Zakon o tehničnih zahtevah in o ugotavljanju skladnosti, Uradni list RS št. 99/2004 in 17/2011 [4] SIST EN 61936-1:2011 Močnostne inštalacije, ki presegajo 1 kV izmenične napetosti – 1. del: Skupna pravila (IEC 61936-1:2010, spremenjen) Power installations exceeding 1 kV a.c. – Part 1: Common rules (IEC 61936-1:2010, modified) [5] SIST IEC/TR 61000-5-2:1998 Electromagnetic compatibility (EMC), Part 5: Generic standards – Section 2: Earthing and cabling [6] SIST-TP IEC/TR 61000-5-6:2004 Electromagnetic compatibility (EMC) - Part 5-6: Installation and mitigation guidelines - Mitigation of external EM influences [7] EMC within Power Plants and Substations, WG C4.208, Cigré TB 535, April 2013 [8] U. M. Peterlin: Guidelines for Electromagnetic Compatibility Provision in Power Plants and Substations, Proceedings EMC Europe 2013, 2. - 6. September 2013 Brugge, Belgium [9] IEC Technical report 1000-1-1:1992, Electromagnetic compatybility (EMC) – Part 1: General – Section 1: Application and interpretation of fundamental definitions and terms Brezžični prenos električne energije Rok Hodnik1, Miha Šrekl1, Selma Čorović1, Damijan Miljavec1 Univerza v Ljubljani, Fakulteta za elektrotehniko E-pošta: rok.hodnik9@gmail.com Wireless power transfer 𝑘= Abstract. Wireless power transfer is an interesting and promising technology that offers the user convenience and ease of use. It broadens the horizon of use of battery powered devices. Due to the capability of more often charging it allows the size of the battery in battery powered devices to be decreased. In this paper the field of wireless power transfer is investigated. A system for transfer of 100 W on the 5 cm distance is built, optimally dimensioned and investigated using simulation environment Matlab Simulink. 1 Uvod Brezžični prenos električne energije (BPE) postaja med uporabniki električnih naprav vse bolj priljubljen, saj ponuja kar nekaj prednosti v primerjavi s tradicionalnim žičnim prenosom energije. Takšen način prenosa električne energije uporabniku omogoča enostavnejše polnjenje prenosnih baterijskih naprav. Baterija je lahko v večini primerov zaradi pogostejšega polnjenja med uporabo manjša, v primerjavi z tisto v napravi, ki se polni žično. Zaradi kemične sestave električnih baterij se njihova življenjska doba pri pogosti globoki izpraznitvi krajša. Pogostejše polnjenje zniža stopnjo izpraznitve, kar podaljša življenjsko dobo baterije. BPE pa ima tudi nekaj pomanjkljivosti v primerjavi z žičnim polnjenjem. Zaradi zračne reže in posledično slabše magnetne sklopitve takšen način polnjenja dosega nižje izkoristke. Nižji izkoristki nastanejo tudi zaradi višjega števila gradnikov potrebnih za delovanje sistema za BPE. Takšen izkoristek je v primerjavi z žičnim načinom polnjenja mnogo nižji, saj se pri žičnem prenosu pojavijo le izgube zaradi prevajanja električnega toka skozi vodnik. Izkoristek prenosa se lahko zaradi oddaljitve ali izmika iz idealne lege tuljav dodatno zniža. Prav tako je zaradi potrebe po dodatnih gradnikih cena sistema za brezžični prenos energije višja od žičnega sistema. Glavni namen pričujoče študije je zgraditi in z računalniško podprtimi simulacijami analizirati sistem za prenos 100 W moči na razdalji 5 cm. V delu bodo razložene tudi osnove delovanja sistema BPE. Zaradi pogoste uporabe v nadaljevanju definiramo faktorje kvalitete 𝑄𝑇 , 𝑄𝑅 in faktor magnetne sklopitve 𝑘 z enačbami (1), (2) in (3), 𝜔𝐿 𝑇 (1) 𝑄𝑇 = 𝑅𝑇 𝜔𝐿𝑅 (2) 𝑄𝑅 = 𝑅𝐿 𝑀 (3) √𝐿 𝑇 𝐿𝑅 kjer sta 𝐿 𝑇 in 𝐿𝑅 induktivnosti oddajne in sprejemne tuljave, 𝑀 medsebojna induktivnost med tuljavama, 𝑅𝑇 in 𝑅𝐿 upornosti oddajne tuljave sešteta z notranjo upornostjo vira in upornost sprejemne tuljave sešteta z bremensko upornostjo in 𝜔 krožna frekvenca napetosti napajalnega vira. 2 Osnove delovanja sistema za BPE Induktivna sklopitev je izvedena s pomočjo dveh magnetno sklopljenih tuljav. Izmenična napetost na oddajni strani požene tok skozi oddajno tuljavo. Okoli tuljave se ustvari magnetno polje, ki se ob magnetni sklopitvi s sprejemno tuljavo zaključuje tudi skozi le to. Izmenično magnetno polje po Faradayevem zakonu v sprejemni tuljavi inducira napetost iste frekvence. Če je sprejemna tuljava vključena v tokokrog, bo inducirana napetost na tuljavi pognala tok. V tokokrog dodamo kompenzacijski kondenzator, kateri omogoča nižjo moč napajalnega vira za isto preneseno moč. V resonančnem stanju podirajoče magnetno polje v tuljavi generira tok, ki polni kondenzator. Ta isti kondenzator nato shranjeno energijo sprosti in pomaga ustvariti magnetno polje v tuljavi. Torej se v resonanci jalovi moči tuljave in kondenzatorja kompenzirata. Opisan sistem lahko predstavimo kot vezje na sliki 1. Slika 1: Reprezentativno vezje sistema za BPE. Možnih je več različnih topologij vezave kompenzacijskih kondenzatorjev (Slika 2), kjer ima vsaka izmed topologij svoje prednosti in slabosti. Pri tem se uporablja notacija, kjer prva črka označuje način kompenzacije v oddajniškem vezju in druga črka način kompenzacije v sprejemnem vezju. Črka S pomeni serijsko (zaporedno) vezavo, črka P pa paralelno (vzporedno) vezavo. Slika 2: Topologije resonančnih vezij sistema za BPE [2]. ERK'2019, Portorož, 140-143 140 V do sedaj izvedenih raziskavah [1], [2] se je izkazalo, da je najprimernejša topologija BPE SS topologija, saj v primerjavi z drugimi topologijami ponuja kar nekaj prednosti, kot so  višji izkoristek,  neodvisnost vrednosti kompenzacijskega kondenzatorja od razdalje med tuljavama,  impedanca na vhodu vezja je lahko čisto ohmskega značaja,  boljše dušenje dodatnih harmonskih komponent, ki se pojavijo zaradi parazitnih elementov,  stabilna izhodna napetost pri spreminjanju faktorja 𝑘 in  lažje nastavljanje resonančnega vezja zaradi odvisnosti kompenzacijskih kondenzatorjev le od frekvence napetosti napajalnega vira in lastnih induktivnosti tuljav 𝐿 – enačba (11). Topologija SS se na izhodu lahko obravnava, kot napetostni vir. Iz vidika polnjenja baterije bi bila primernejša topologija SP, ki se lahko obravnava kot tokovni vir. Slabost SS topologije pa je višja napetost na kompenzacijskih kondenzatorjih v resonanci. Zaradi tega je potrebno izbrati kondenzatorje primerne za višje napetosti (>2000 Veff). Prav tako je zaradi spreminjanja parametrov komponent s temperaturo težje obratovati v resonančni točki brez dodatne regulacijske zanke (zaradi spremembe temperature se spremeni C in s tem resonančna frekvenca). katerem se maksimira magnetna poljska jakost v ravnini, ki je na željeni razdalji 𝑧, v skladu z enačbo (4). (4) 𝑟𝑧𝑢𝑛𝑎𝑛𝑗𝑖_𝑜𝑝𝑡 = √2 𝑧 Za določitev optimalnega notranjega radija parametrično spreminjamo njegovo velikost in izvajamo analizo geometrije v smislu elektromagnetnih stanj s pomočjo programa FEMM, ki temelji na metodi končnih elementov. Iz analize pridobimo vrednosti lastne in medsebojne induktivnosti med tuljavama. Iz pridobljenih vrednosti lahko nato izračunamo koeficient magnetne sklopitve 𝑘, ki je najpomembnejše merilo pri vrednotenju snovno geometrijskih lastnosti sistema za BPE. Odvisnost faktorja 𝑘 od notranjega radija tuljave podaja slika 4. Slika 4: Odvisnost faktorja 𝑘 od notranjega radija tuljave. Iz rezultatov analize na sliki 4 se lahko razbere maksimum koeficienta 𝑘 pri 𝑟𝑛𝑜𝑡𝑟𝑎𝑛𝑗𝑖 = 30 mm. 3 Gradnja sistema za BPE Za učinkovit sistem za BPE potrebujemo sistem dveh tuljav, ki je ustrezno dimenzioniran (Slika 3). S pravilnim dimenzioniranjem dosežemo optimalne razmere za BPE in najvišji možni izkoristek za zadan izziv. Zaradi stresanih magnetnih polj je optimalna izbira tuljav enakih dimenzij. 4 Simulacije Simulacijsko vezje je bilo sestavljeno v programskem okolju Matlab Simulink z uporabo elementov knjižnice Simscape (Slika 5). Okolje Matlab Simulink je neposredno povezano s programom Matlab, preko katerega vodimo izračune v Simulinku. Slika 3: Geometrija tuljav. 3.1 Slika 5: Poenostavljeno simulacijsko vezje. Dimenzioniranje tuljav 4.1 Pri določanju zunanjega radija tuljav smo pri večini aplikacij omejeni s prostorom, ki je na voljo v napravi za namestitev tuljave. S tem je omejen tudi največji zunanji radij, ki ga lahko uporabimo, zato nam v veliko primerih največji razpoložljiv radij kar definira zunanji radij tuljave. Glede na [3] obstaja optimalen zunanji radij oddajne (in s tem tudi sprejemne) tuljave 𝑟𝑧𝑢𝑛𝑎𝑛𝑗𝑖_𝑜𝑝𝑡 , pri 141 Vpliv lokacije resonančne točke na izkoristek Opravimo analizo, pri kateri spreminjamo lokacijo resonančne frekvence 𝑓 od 10 kHz do 250 kHz in v vsaki točki preračunamo izkoristek magnetne sklopitve 𝜂𝑠𝑘𝑙𝑜𝑝𝑖𝑡𝑒𝑣 in skupni izkoristek sistema 𝜂𝑠𝑘𝑢𝑝𝑛𝑖 z enačbama (5) in (6). Za vsako točko pri določeni frekvenci 𝑓 po enačbi (11) preračunamo potrebni kompenzacijski kapacitivnosti 𝐶1 in 𝐶2 in z regulacijo moči (preko duty cycle razsmerniških MOSFETov) zagotovimo moč 100 W na izhodu. Pri tem predpostavimo enakost tuljav in njunih lastnih induktivnosti 𝐿. 𝑃2 (5) 𝜂𝑠𝑘𝑙𝑜𝑝𝑖𝑡𝑒𝑣 = 𝑃1 𝑃𝑂𝑈𝑇 (6) 𝜂𝑠𝑘𝑢𝑝𝑛𝑖 = 𝑃𝐼𝑁 Kjer so moči poračunane po enačbah (7), (8), (9) in (10). 𝑃𝐼𝑁 = 𝑈𝑑𝑐 𝐼𝑑𝑐 (7) 𝑃1 = 𝑈1 𝐼1 (8) 𝑃2 = 𝑈2 𝐼2 (9) 𝑃𝑂𝑈𝑇 = 𝑈𝑜𝑢𝑡 𝐼𝑜𝑢𝑡 (10) 𝐶1 = 𝐶2 = 1 (2𝜋𝑓)2 𝐿 (11) Slika 7: Odvisnost izkoristkov od frekvence pri fiksni resonančni točki. Iz slike 7 razberemo dejstvo, da je izkoristek sistema močno odvisen od tega ali sistem vzbujamo z njegovo resonančno frekvenco. Temu je potrebno posvetiti posebno pozornost, saj se lahko lokacija resonančne točke spremeni zaradi odvisnosti parametrov od temperature - predvsem kompenzacijskih kapacitivnosti 𝐶1 in 𝐶2 . Opazimo, da zadovoljiv skupni izkoristek dosegamo le v bližini resonančne točke. 4.3 Slika 6: Odvisnost izkoristkov od lokacije resonančne točke. Iz slike 6 je moč razbrati pričakovane lastnosti BPE. Izkoristek magnetne sklopitve se zaradi zviševanja frekvence in s tem povečevanjem faktorjev kvalitete tuljav vseskozi povečuje proti vrednosti 1. Skupni izkoristek pa je zaradi izgub na razsmerniških MOSFETih, usmerniških diodah in kondukcijskih izgub nižji od izkoristka magnetne sklopitve. Skupni izkoristek sistema se povečuje v začetnem področju frekvenc (od 10 kHz do 150 kHz), nato se zaradi povečanih preklopnih izgub začne zniževati. 4.2 Odvisnost izkoristka od razdalje med tuljavama Analizo opravimo s sklopitvijo vseh treh do sedaj uporabljenih programov (FEMM, Matlab, Simulink). Najprej s pomočjo Matlaba vodimo izračune elektromagnetnih stanj v programu FEMM, tako, da dobimo odvisnost lastne in medsebojne induktivnosti od razdalje med tuljavama. Nato preko Matlaba vodimo izračune v Simulinku za vsako točko posebej. Torej za vsako točko razdalje naložimo pripadajoči vrednosti lastnih induktivnosti tuljav 𝐿 in medsebojne induktivnosti 𝑀 in s tema parametroma poženemo simulacijsko vezje v Simulinku. Za dan primer izrišemo odvisnost moči od razdalje med tuljavama na sliki 8. Opazimo, da naš sistem uspe zagotavljati moč na bremenu 100 W vse do razdalje 16 cm, kjer regulator moči ne zmore več zagotoviti željene moči na bremenu, saj le ta preide v nasičenje (duty cycle proženja razsmerniških MOSFETov doseže zgornjo mejo). Odvisnost izkoristka pri fiksni resonančni točki od vzbujalne frekvence Postopoma zvišujemo frekvenco in preračunamo izkoristka za vsako točko. V tem primeru ne preračunamo kompenzacijskih 𝐶1 in 𝐶2 za vsako točko, temveč sta fiksirani tako, da z induktivnostma tvorita resonančno točko pri frekvenci 100 kHz po enačbi (11). Slika 8: Odvisnosti moči od razdalje med tuljavama. 142 Slika 9 prikazuje odvisnost izkoristkov od razdalje med tuljavama. Slika 9: Odvisnost izkoristkov od razdalje med tuljavama. Iz slike 9 opazimo, da izkoristek z večanjem razdalje med tuljavama upada z eksponentnim trendom. Pri tem dosežemo izkoristka za prenos 100 W na 5 cm razdalje, ki sta enaka 𝜂𝑠𝑘𝑙𝑜𝑝𝑖𝑡𝑒𝑣 = 0,896 in 𝜂𝑠𝑘𝑢𝑝𝑛𝑖 = 0,666. Izkoristek zadošča za aplikacije prenosa moči nižjih vrednosti. Vendar bi se v primeru prenosa moči višjih vrednosti morali posvetiti zviševanju le teh. 4.4 Polnjenje baterijskega paketa Bremenski upor na sprejemni strani nadomestimo z modelom baterijskega paketa, ki je zgrajen iz šestih zaporedno vezanih celic z nazivno napetostjo celice 4,2 V. Simuliramo celoten cikel polnjenja baterije po metodi konstantnega toka, dokler baterijske celice ne dosežejo nazivne napetosti in po metodi konstantne napetosti do dokončne napolnitve baterije. Cikel polnjenja v odvisnosti od stopnje napolnjenosti baterije je prikazan na sliki 10. Slika 11: Odvisnost izkoristkov od stopnje napolnjenosti baterijskega paketa. 5 Zaključek V delu je opisan postopek določevanja topologij in dimenzioniranja parametrov sistema za brezžični prenos energije. Izvedene so optimizacije geometrije za zadan problem prenosa 100 W na razdalji 5 cm. Uspešno je izpeljanih nekaj simulacij in preračunov odvisnosti izkoristka sistema za različne primere. Za primer naše aplikacije dosežemo izkoristka za prenos 100 W na 5 cm razdalje, ki imata vrednosti 𝜂𝑠𝑘𝑙𝑜𝑝𝑖𝑡𝑒𝑣 = 0,896 in 𝜂𝑠𝑘𝑢𝑝𝑛𝑖 = 0,666. Opazimo, da je naš sistem geometrijsko dobro dimenzioniran, saj se izkoristek magnetne sklopitve že približa vrednosti 90 %. To vrednost bi lahko še nekoliko povišali s povečanjem zunanjega radija tuljav. Zaradi izbranih diodnih usmernikov na sprejemni strani in klasičnih MOSFETov se pri visokih frekvencah pojavijo dokaj visoke izgube, ki nižajo skupni izkoristek našega sistema. Skupni izkoristek je v realni aplikaciji predvidoma še nekoliko nižji, saj v naših simulacijah ne upoštevamo usmerniških izgub na oddajni strani, izgub v vodnikih tuljav zaradi kožnega pojava in izgub na električnih komponentah (krmilna elektronika, vezje). Pomembno je omeniti, da usmerniške izgube na oddajni strani nastopajo tudi v primeru, kadar napravo polnimo žično. Literatura Slika 10: Cikel polnjenja baterije v odvisnosti od stopnje napolnjenosti baterijskega paketa. Za dan cikel polnjenja izrišemo še graf izkoristkov v odvisnosti od stopnje napolnjenosti baterije na sliki 11. Iz grafa je razvidna močna odvisnost izkoristkov od stopnje napolnjenosti oziroma od trenutne moči, ki se pri določeni stopnji napolnjenosti prenaša. Najvišji izkoristek se dosega pri 70 % napolnjenosti. Pri tej stopnji je tudi prenesena moč (produkt toka in napetosti) maksimalna. 143 [1] Mude, Kishore Naik, "Wireless power transfer for electric vehicle [Ph. D. thesis]." Dosegljivo: http://paduaresearch.cab.unipd.it/7477/. [Dostopano: 25. 3. 2019]. [2] Liu, Nan, ''Design of a universal inductive charging system for electric vehicles.'' Dosegljivo: https://smartech.gatech.edu/bitstream/handle/1853/54917/ LIU-DISSERTATION-2016.pdf. [Dostopano: 25. 3. 2019]. [3] Nguyen, Minh Quoc et al., ''Field distribution models of spiral coil for misalignment analysis in wireless power transfer systems'', IEEE Transactions on Microwave Theory and Techniques (Volume: 62 , Issue: 4 , April 2014). Reducing the Number of Solutions in the Unit Commitment Problem Using Variations with Repetition Izudin Softić1, Nedžmija Demirović1, Marina Pejić1, Midhat Umihanić1, Samed Bajrić2 1 2 Faculty of Electrical Engineering, University of Tuzla, Tuzla, Bosnia and Herzegovina Jozef Stefan Institute, Laboratory for Open Systems and Networks, Ljubljana, Slovenia E-mail: izudin.softic@untz.ba Abstract. In this paper, a new approach has been presented to reduce the number of solutions in the unit commitment (UC) problem, using variations with repetition, which can not be used in power system exploitation, due to the impossibility of meeting the loads and limitations associated with the minimal operation time after the start-up and minimal pause time after shutting down thermal units (minimum up/down). Each variation that repeats is representative of the corresponding drive status and the number of thermal units from the economic dispatching (ED) process will be executed for a given time interval. The problem is formulated as a complex mathematical optimization task that includes both binary (power status of thermal units, on/off) and real variables (production of active power of engaged thermal units). The suggested approach is tested on a system with ten thermal units showing very good performances. 1 Introduction In everyday life, we often find a series of problems whose solution is necessary for normal function of power system. By developing the power of today's computers, part of these problems has become trivial. However, a large set of problems still poses an extremely difficult challenge. These are the problems that we can not solve with today's computer development by using complete enumeration (counting) of possible solutions, due to extensive requirements at the time of the budget. One of the typical representatives of this type of problem is NP-hard problems, which is also a UC problem. Due to the large number of thermal units of different characteristics, as well as the dynamics of the system, this is a very complex task of optimization, so the researchers' efforts are focused on seeking a suboptimal solution, with moderate demands on the time of budget and computer resources. The most commonly used methods for solving UC problems are list priority methods [1], dynamic programming method [2], Lagrange relaxation problem [3], Benders decomposition [4]. Recent results also include some heuristic methods such as taboo search, simulated annealing, neural networks [5], genetic algorithms [6], and fuzzy logic [7]. ERK'2019, Portorož, 144-147 144 2 UC problem formulation The UC problem aims at minimizing the total production cost over the scheduling horizon satisfying all constraints. In addition, the total production cost comprises fuel cost, which are related to operation of thermal units, start-up costs and shut down costs. In this sense, the general form of the UC problem can be described as: T min FTC  N F (t )  u (t )  SC (t )  v (t )  i i i i (1) t i i 1 where: i : Index of thermal unit t : Index of hour FTC : Total production cost Fi (t ) : Fuel cost for thermal unit i at hour t ui (t ) : i-th thermal unit status at hour t (ON: ui (t )  1 ; OFF: ui (t )  0 ) SCi (t ) : Start-up cost for thermal unit i vi (t ) : i-th thermal unit start-up/shut down status at hour t (if the thermal unit started vi (t )  1 , otherwise vi (t )  0 ) N : Number of thermal units T : Scheduling horizon The main component of the operating costs is the ith unit cost function Fi(t) which can be viewed as a quadratic function of the power output at hour t: Fi (t )  ai  bi Pi (t )  ci Pi2 (t ) (2) where: Pi (t ) : Output power of i-th thermal unit at hour t ai, bi and ci: Cost coefficients of the i-th thermal unit The start-up costs in the thermal units change from some of the highest values when the thermal units start from a completely cold state, to considerably lower values if the start-up is carried out after short cooling of the thermal units. In other words, the start-up costs are the functions of the cooling time of the boiler and mathematically can be presented in the form of off off off  hc : T  X i (t )  Ti  csi SCi (t )   i i off off  cci : X i  Ti  csi (3) where: Tioff : Minimum down time of i-th thermal unit X ioff (t ) : Duration that the i-th thermal unit is continuously OFF hci : Hot start-up cost of i-th thermal unit cci : Cold start-up cost of i-th thermal unit cs i : Cold start-up hours of i-th thermal unit Note that if the number of hours less than csi we use hot start-up costs otherwise we use cold start-up costs. Different constraints of the system are to be satisfied while solving the complex UC problem. Moreover, the constraints that must be fullfiled at specific time are as follows:  System power balance Vnk  nk (7) where: n: Number of objects from which we can choose k: Number of objects we can choose For instance, the first element can be chosen in n ways, the second element can be chosen in n ways, the third element in n ways, etc., k-th element in n ways, because it is allowed to repeat the elements from the set. Since the operating status of the i-th thermal unit at hour t (ON: 1; OFF: 0) is used in solving the UC problem, it is n = 2, while the whole number of repeating variations for a one-hour period is defined by the expression:  0 0 0 ... 0 0  ,  0 0 0 ... 0 1 ,..., 111...11 1 (8) 2k 2 4 Solution methodology N  P (t )  P (t ) i D (4) i 1 where: PD (t ) : Power demand at hour t  Minimum up/down time on on   Ti  X i (t )  off off  Ti  X i (t ) (5) where: Tion : Minimum up time of i-th thermal unit X ioff (t ) : Duration that the i-th thermal unit is continuously ON  Output limit of thermal units Pimin  Pi (t )  Pimax (6) The daily load curve is characterized by a big disparity between minimal and maximum loads despite efforts to make the load as balanced as possible. At all times, the load value must be fullfiled by using a production of thermal units. This means that just a few number of variations with repetition will be used, due to the impossibility of loads to meet its value and constraints associated with the minimal operation time after the start-up and minimal pause time after shutting down thermal units. In order to obtain an optimum or suboptimal solution, the initial solution of the problem is represented by a binary matrix of dimension T x N where all elements are assigned the value 1 (all thermal units are ON) as shown in Table 1. Table 1. Initial solution 1 2 3 where: Pi max : Maximum power output for i-th thermal unit Pi min : Minimum power output for i-th thermal unit After the defining the UC problem together with the function of total production costs (1), its components (2) and (3), as well as different constraints (4) – (6), there is need to choose an appropriate method for solving the UC problem. 3 Variations with repetition When the ordering of objects matters, and an object can be choosen more than once, we are talking about variations with repetition, and the number of variations is: 145 T 1 1 1 1 2 1 1 1 3 1 1 1 1 1 1 N 1 1 1 1 1 1 1 1 1 1 1 1 1 Each row vector in the solution matrix is the representative of the corresponding drive state of the thermal unit for the time interval T and indicates the number of thermal units over which the economic dispatching process will be executed [8]. For the first hour, after the ED procedure, a low-cost solution is adopted and replaced in the initial solution, and verifies whether the solution is applicable. If the solution is applicable, the ED process is executed for the second hour and replaced in the lowest cost solution solution matrix, and it is again verified whether the solution is applicable or not. This process is repeated for all hours in the time interval T. If the solution is not applicable for a given hour, then it is replaced by the first higher occurance for that hour and so until an applicable solution is obtained. In order to reduce the number of variations with repetition in the UC problem with the operating status {0,1} and the total number (k = 10) of the thermal units in the system for a time period of one hour, it is possible to obtain: 5 Results To illustrate the efficiency of the proposed method as well as solving technique, testing was performed on a test system whose data is given in Table 2 [6] and the 24-hour interval. The optimum number of thermal units involved is continually changing with the time-changing load. In practice, it is common that an one hour is the minimum time required to switch the selected thermal unit from off to on, so it can be stated that at any time step (one hour), the assumption of constant load could be supposed. This represents the conversion of a continual problem into a discrete problem as shown in Figure 1. V210  210  1024 variations with repetition  0000000000 ,  0000000001 ,..., 1111111111 1 2 1024 Because most of the above variations are not applicable to a power system exploitation due to impossibility of loading, Table 3 shows the number of variations with repetition that are applicable in the power system exploitation for different loads occurring in the system. Table 3. Number of variations with repetition that are applicable Hour Load (MW) Number 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 700 750 850 950 1000 1100 1150 1200 1300 1400 1450 1500 1400 1300 1200 1050 1000 1100 1200 1400 1300 1100 900 800 671 623 498 359 314 242 222 187 121 53 34 18 53 121 187 276 314 242 187 53 121 242 422 564 Figure 1. Conversion of continuous into discrete problem The exact solution of the problem can only be obtained by fully enumerating (counting) the possible working conditions of the thermal units, which is impossible to achieve on systems of realistic size due to the large number of requests at the time of the calculation. Table 2. Parameters of thermal units Thermal Units No. 1 2 3 4 5 6 7 8 9 10 ai bi ci Pimin Pimax Tion Tioff hci cci csi 1000 970 700 680 450 370 480 660 665 670 16.19 17.26 16.60 16.50 19.70 22.26 27.74 25.92 27.27 27.79 0.00048 0.00031 0.00200 0.00211 0.00398 0.00712 0.00079 0.00413 0.00222 0.00173 150 150 20 20 25 20 25 10 10 10 455 455 130 130 162 80 85 55 55 55 8 8 5 5 6 3 3 1 1 1 8 8 5 5 6 3 3 1 1 1 4500 5000 550 560 900 170 260 30 30 30 9000 1000 1100 1120 1800 340 520 60 60 60 5 5 4 4 4 2 2 0 0 0 146 Initial state 8 8 -5 -5 -6 -3 -3 -1 -1 -1 + (ON) + (ON) - (OFF) - (OFF) - (OFF) - (OFF) - (OFF) - (OFF) - (OFF) - (OFF) An example of the calculation costs using the described method for 24-hour interval is given in Table 4. 6 Discussion In addition to the fact that the problem UC is a highly complex mathematical optimization task that includes both binary and real variables, the additional complexity of the problem is the presence of dynamic constraints on thermal units. In order to solve these problems, the number of solutions in the UC problem has been reduced and from the obtained results it is possible to see that by applying the initial solution in which all the thermal units are in operation, using the variations with repetition it is possible to find the applicable solutions much faster than the initial solution is given by default. By limiting itself to choose the lowest cost solution in a given hour, a path that matches an optimal or suboptimal solution is chosen. 7 References [1] G. B. Sheble, Solution of the unit commitment problem by the method of unit periods, IEEE Transactions on Power Systems, 5(1), 1990, 257-260. [2] W. L. Snyder Jr., H. D. Powell Jr., J. C. Rayburn, Dynamic programming approach to unit commitment, IEEE Transactions on Power Apparatus and Systems, 2(2), 1987, 339-350. [3] W. Ongsakul, N. Petcharaks, Unit commitment by enhanced adaptive Lagrangian relaxation, IEEE Transactions on Power Systems, 19(1), 2004, 620-628. [4] H. Ma, S. M. Shahidehpour, Transmission-constrained unit commitment based on Benders decomposition, International Journal of Electrical Power and Energy Systems, 20(4), 1998, 287-294. [5] H. Sasaki, M. Watabable, J. Kubokawa, N. Yorino, R. Yokoyama, A solution method of unit commitment by artificial neural networks, IEEE Transactions on Power Systems, 7(1), 1992, 974-985. [6] A. Kazarlis, A.G. Bakirtzis and V.Petridis, A Genetic Algotirhm Solution to the Unit Commitment Problem, IEEE Transactions On Power Systems, Vol. 11, No. 1, pp.83-90, 1996. [7] S. C. Pandian, K. Duraiswamy: Fuzzy logic implementation for solving the unit commitment problem, International Conference on Power System Technology – POWERCON: Singapore, November 2004. [8] I. Softic and S. Halilčević, The Efficiency of Deterministic Methods in Solving the Problem of Economic Dispatch, 19th Electrotechnical and Computer Science Conference ERK’2010, Portoroz, Slovenia, 2022. September 2010, str.A: 492-495. Table 4. Operating and startup costs, load and schedule for 24 hours time frame Hour 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Total Generation schedule Operation cost ($) Start up cost ($) (MW) 1 2 3 4 5 6 7 8 9 10 13683 14554 16302 18638 19513 21860 22879 23918 26184 28768 30583 32542 29222 26184 23918 20896 20020 21860 23918 30485 27167 22546 17795 15427 548862 0 0 0 1120 0 1800 0 0 1100 340 520 60 0 0 0 0 0 0 0 920 0 0 0 0 5860 700 750 850 950 1000 1100 1150 1200 1300 1400 1450 1500 1400 1300 1200 1050 1000 1100 1200 1400 1300 1100 900 800 27100 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 455 245 295 395 365 455 455 435 455 455 455 455 455 455 455 455 440 390 455 455 455 455 455 445 345 0 0 0 0 0 0 0 0 130 130 130 130 130 130 0 0 0 0 0 0 0 0 0 0 0 0 0 130 130 130 130 130 130 130 130 130 130 130 130 130 130 130 130 130 130 130 0 0 0 0 0 0 0 60 110 160 130 162 162 162 162 130 160 25 25 60 160 162 162 0 0 0 0 0 0 0 0 0 0 0 0 68 80 80 0 0 0 0 0 0 0 80 73 35 0 0 0 0 0 0 0 0 0 0 0 0 38 33 68 0 0 0 0 0 0 63 25 25 0 0 0 0 0 0 0 0 0 0 0 0 0 55 0 0 0 0 0 0 0 55 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Load 147 Numerični izračun razporeditve koncentriranih navitij v električnih strojih Danilo Makuc Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25,1000 Ljubljana E-pošta: danilo.makuc@fe.uni-lj.si Numerical calculation of concentrated windings in electrical machines Abstract. Concentrated winding, also called fractional slot winding are very common in nowadays electrical machines, especially permanent magnet motors. Unfortunately, the design process of a winding scheme for such winding is not straightforward and intuitive. The paper presents a development of an algorithm for a numerical calculation and distribution of an arbitrary concentrated winding. The results can be directly used in scripts for modeling of electrical machines, which are often an option in different tools for finite elements analysis. 1 Uvod Izmenični električni motorji s trajnimi magneti so pogost element električnih pogonov, saj z veliko specifično močjo (W/kg) uspešno opravljajo funkcije zahtevnih servopogonov, pri mnogih električnih vozilih pa tudi nalogo glavnega pogonskega motorja. Razmeroma majhne dimenzije teh strojev, ki so posledica velike gostote magnetne energije trajnih magnetov, in s tem manjšega prostora, potrebnega za vzbujanje, so posredno omejile tudi prostor namenjen aktivnemu navitju. Običajno je pri motorjih z zunanjim rotorjem navitje nameščeno v notranjosti motorja, tako da je prostorska stiska še večja. Pri distribuiranih oz. porazdeljenih navitjih se želena prostorska porazdelitev magnetnega polja v stroju doseže z ustrezno porazdelitvijo magnetne napetosti (Amper-ovojev) v utore. Pri takih navitjih so torej tok, število ovojev in nenazadnje število utorov, tiste količine, ki neposredno vplivajo na obliko magnetnega polja. Pri pomanjkanju prostora se, tudi zaradi tehnoloških omejitev, hitro odločimo za manjše število utorov, to pa že določa največje število magnetnih polov, ki ga z distribuiranim navitjem lahko izvedemo. Pri načrtovanju navitij uporabljamo količino: "število utorov na pol in fazo", ki dejansko predstavlja to, kar ime pove, pomembna pa je zato, ker predstavlja osnovo za izdelavo vezalnega načrta navitja. Izračunamo ga s pomočjo števila vseh utorov (Z), števila parov magnetnih polov (p) in števila faz navitja (m): Z q= . (1) 2 pm Če q ni celo število, govorimo o ulomkastih navitjih, ki so v določeni meri izvedljiva, a ko je q manjši od 1, se ERK'2019, Portorož, 148-151 148 navitje spremeni v drugačen tip navitja, ki ga imenujemo koncentrirano navitje. Posamezne tuljave, ki medsebojno povezane sestavljajo fazno navitje, lahko praktično zasedajo poljubno površino utorov, ne morejo pa objeti manj kot enega zoba, saj je najkrajša tuljavica (zanka) lahko vstavljena le v dva sosednja utora. Pri dvoplastnih izvedbah navitij so tako tuljavice ovite okoli vsakega zoba, saj vsaka od njih zaseda polovico utora in si ga lahko delita, pri enoplastni izvedbi pa ena tuljavica zaseda celoten utor zato so tu tuljavice ovite le okoli vsakega drugega zoba (slika 1). Šele ustrezna medsebojna električna povezava teh tuljavic ustvari navitje posamezne faze. A A 1 1 A A B 2 2 B B 3 B 3 Slika 1. Tuljavice enoplastnega (zgoraj) in dvoplastnega (spodaj) koncentriranega navitja. Pri distribuiranih navitjih, ki imajo za q večkratnik 1/2 ali kar célo število, je razporeditev tuljavic v utore razmeroma enostavna in intuitivna, saj načeloma izhaja iz simetrij faz in magnetnih polov. Največkrat lahko vezalni načrt navitja izdelamo "peš" in grafično, brez dodatnega računanja. Pri koncentriranih navitjih take simetrije običajno ni, zato pri načrtovanju teh navitij brez računanja ne gre. Pri modeliranju in analizi električnih strojev z metodo končnih elementov (MKE) je v modelu potrebno definirati tudi navitje, saj to, poleg trajnih magnetov, predstavlja glavno magnetno vzbujanje. Pri velikem številu utorov, večfaznih in večplastnih navitjih, je zato s tem veliko dela. Večina programskih orodij za analize z MKE omogoča uporabo skriptov (npr. LUA, Visual Basic) ali celo neposredno vodenje iz drugih programov (npr. Octave/Matlab, Mathematica, SciLab), kar velikokrat uporabimo za avtomatiziran izris in definicijo celotnega modela motorja. Zaželeno je torej poznati navijalni načrt navitja in sicer v taki obliki, da ga lahko enostavno uporabimo v teh skriptih oz. programih. V nadaljevanju je predstavljen razvoj algoritma za numerični izračun razporeditve koncentriranega navitja v utore električnega stroja. 12 11 +C 1 +A -B -C N 10 -A +B 3 S 9 1 7 2 8 2 3 9 6 12 5 11 S -A +B N -C 4 +C 8 5 +A 7 -B 4 10 6 Slika 2. Shema motorja z vrisanimi faznimi navitji (A, B, C) in smermi toka ter zvezda kazalcev utorskih napetosti. To, da navitju v enem utoru priredimo kazalec inducirane napetost, izgleda na prvi pogled skregano z osnovnim indukcijskim zakonom, saj je tam govora o zanki. Dejstvo je namreč, da je inducirana napetost sorazmerna časovnemu odvodu magnetnega pretoka skozi zaključeno zanko, kar izračunamo z enačbo: d e = − ∫ B ⋅ dS , (2) dt S ∫ A ⋅ dl , (3) L 149 Pri koncentriranih navitjih tuljava objema en zob, zato lahko inducirano napetost izračunamo neposredno z magnetnim pretokom v zobu in z enačbo (2). Namesto utorskih induciranih napetosti uporabimo vektorje magnetnih pretokov v posameznih statorskih zobeh, oz. posledično induciranih napetosti v tuljavah na zobeh. Če je navitje dvoplastno in so tuljavice navite okoli vsakega zoba, so fazni koti teh induciranih napetosti: p α i = (i − 1) ⋅ ⋅ 360° , (4) Z pri čemer je i zaporedna številka statorskega zoba, p pa število parov magnetnih polov rotorskega magnetnega polja, večinoma ustvarjenega s trajnimi magneti, Kot primer vzemimo, da želimo narediti trifazno (m = 3) dvoplastno navitje na statorju z 12-imi utori oz. zobi (Z = 12) in rotorjem, ki ima 10 magnetnih polov (p = 5). Fazni kot med kazalci induciranih napetosti v tuljavicah sosednjih zob bo tako 150°. Shema takega motorja in kazalci teh napetosti so prikazani na sliki 3. Z zamenjavo priključkov (ali smeri navijanja) tuljavice lahko zamenjamo polariteto inducirane napetosti (fazno premaknemo za 180°), zato ob kazalce s pozitivnimi številkami zob, narišemo še kazalce z zamenjano polariteto in jih označimo z negativnimi številkami (slika 4a). V faznem navitju želimo čim višjo inducirano napetost, zato zaporedno vežemo napetosti tistih tuljavic, katerih vektorska vsota bo dala največjo dolžino kazalca napetosti. Največjo vsoto bomo dobili, če seštejemo kazalce, med katerimi je najmanjši fazni kot. Ker je število zob, ki jih v našem primeru objemajo tuljavice enega faznega navitja, znano (Z/m = 12/4 = 4), iz nabora kazalcev enostavno izberemo tiste štiri, ki so 1 1 12 6 8 2 S N N 11 3 3 11 4 10 10 4 N d e=− dt Osnova načrtovanja koncentriranih navitij S kjer je B gostota magnetnega pretoka, S pa površina, ki jo določa ta zanka. Enačba (2) je splošna, zato velja tudi za tuljavo z N ovoji, a v teh primerih si težko predstavljamo površino, ki jo le-ti določajo. Zaradi tega večinoma obravnavamo tuljavo kot skupek zank, pri čemer vsak ovoj predstavlja eno zanko. A če uporabimo Stokesov izrek, lahko v enačbi (2) ploskovni integral nadomestimo z linijskim ter tako inducirano napetost zapišemo z magnetnim vektorskim potencialom A: 2.2 S Na pojem utorskih induciranih napetosti naletimo pri spoznavanju načrtovanja navitij dokaj zgodaj. Temelji na dejstvu, da dobimo, zaradi prostorske premaknitve utorov, tudi časovno (fazno) premaknitev induciranih napetosti v ovojih posameznega utora. S poznavanjem vektorjev teh utorskih napetosti, je omogočeno enostavno grafično ali numerično seštevanje teh kazalcev in s tem določanje induciranih napetosti v navitjih, ki zasedajo ustrezne utore. Na sliki 2 je primer razporeditve navitja in kazalcev teh utorskih napetosti za primer stroja z štiripolnim (p = 2) in trifaznim navitjem (m = 3), ki je razporejeno v 12 utorov (Z = 12). N Kazalci utorskih induciranih napetosti 9 S 2.1 5 9 5 N Načrtovanje navitja električnega stroja večinoma temelji na inducirani napetosti v tem navitju, izjema so le vzbujalna navitja, kjer je osnova načrtovanja magnetno polje, ki naj ga navitje ustvari. V našem primeru se bom omejil na večfazna navitja izmeničnih rotacijskih strojev, ki so sicer lahko tudi primarno namenjena ustvarjanju, običajno vrtilnega, magnetnega polja, a je inducirana napetost še vedno glavni dejavnik, ki določa magnetne razmere v taki elektromagnetni strukturi. kjer je L zaključena zanka, ki določa površino S iz enačbe (2), kar pa je dejansko zanka, ki jo opisujejo vsi ovoji tuljave. Zaradi načina gradnje in posledično oblike magnetnega polja v rotacijskih strojih, magnetne razmere velikokrat obravnavamo dvodimenzionalno, saj vektor gostote magnetnega pretoka B nima aksialne komponente oz. komponente v smeri osi z. V takih primerih se izračun z enačbo (3) poenostavi in moramo poznati le magnetni vektorski potencial v utorih, ki definirajo zanko navitja [1]. To dejstvo je osnova za uporabo kazalcev utorskih induciranih napetosti, ki pa jih bom pri koncentriranih navitjih uporabil le pri izračunu faktorja navitja. S 2 Načrtovanje navitij 8 6 7 12 7 2 Slika 3. Geometrija motorja s trajnimi magneti (Z = 12, p = 5, m = 3) in kazalci magnetnih pretokov v statorskih zobeh. Slika 4. (a) Kazalci vseh možnih induciranih napetosti tuljavic in (b) izbrane tuljavice za posamezna fazna navitja. si po kotu najbližje (slika 4b). Pri trifaznem sistemu je fazni kot med napetostmi 120°, tako da tudi pri izboru zob (tuljavic) za ostali dve fazi izberemo ustrezno fazno premaknjene kazalce. (a) (b) ZOB 1 2 3 4 5 6 7 8 9 10 11 12 KOT 0° 150° 300° 90° 240° 30° 180° 330° 120° 270° 60° 210° 3 Algoritem za porazdelitev tuljav koncentriranega navitja 2. Vsakemu izračunanemu kazalcu napetosti generiramo še en možen kazalec, in sicer za tuljavico na istem zobu, a z nasprotno polariteto (tabela 1b). Tabela 2. Oblika zapisa rezultata utorske porazdelitve in smeri tokov tuljav vseh faznih navitij. Utor Plast 1 Plast 2 1 1 1 2 2 -1 3 -2 -2 4 -3 2 5 3 3 6 1 -3 7 -1 -1 8 -2 1 9 10 11 12 2 3 -3 -1 2 -2 -3 3 +A+A 1 -A +B 2 -B -A 12 -B +C S -C -C 3 +B -C 10 4 +C -B +C +C N 5. Navitja naslednjih faz dobimo tako, da enako število tuljavic izberemo na zobeh, ki imajo kazalce induciranih napetosti fazno premaknjene za osnovni fazni kot večfaznega navitja; pri 3-faznem sistemu je ta kót 120° oz. 240° (tabela 1c). N N 11 S 4. Število zob (utorov) in faz določa tudi število tuljavic, ki sestavljajo fazno navitje. Iz nabora urejenih kazalcev izberemo toliko začetnih kazalcev, kolikor je teh tuljavic (tabela 1c). 150 KOT 0° 0° 30° 30° 60° 60° 90° 90° 120° 120° 150° 150° 180° 180° 210° 210° 240° 240° 270° 270° 300° 300° 330° 330° dvoplastni izvedbi zaseda polovico utora na obeh straneh zoba, je označena v enem utoru zgoraj, v drugem pa spodaj, čeprav so dejansko sosednje tuljavice koncentriranih navitij običajno ena zraven druge (slika 5) in ne ena nad drugo. 3. Vrstni red vseh možnih kazalcev napetosti uredimo po velikosti faznega kota (tabela 1c). Sedaj, ko vemo katere zobe in s kakšno polariteto zasedajo tuljavice faznih navitij, lahko izdelamo navijalni načrt. Pri izdelavi modelov električnih strojev z MKE, je predvsem pomembna informacija o tokovnem vzbujanju v posameznem utoru, zato raje izdelamo shemo, ki neposredno kaže katero fazno navitje in s kakšno smerjo toka (navijanja) je v posameznem statorskem utoru (slika 5). Razviti algoritem za izračun koncentriranih navitij je izdelan v okolju Octave oz. Matlab in vrne rezultat v obliki matrike, kjer vrstica predstavlja plast navitja, stolpec pa utor. Utorska porazdelitev in smeri toka tuljav za naš primer so prikazane v tabeli 2. Zaradi številčnega indeksiranja faz pri generiranju modelov z MKE so le-te namesto s črkami označene s številkami. Tuljavica, ki pri ZOB 1 -7 6 -12 11 -5 4 -10 9 -3 2 -8 7 -1 12 -6 5 -11 10 -4 3 -9 8 -2 S 1. Zobe najprej indeksiramo z zaporedno številko, vsakemu pa priredimo vrednost izračunanega faznega kota kazalca inducirane napetosti, zapisanega z vrednostjo manjšo od 360°. Tako bi za opisani primer dobili kazalce, ki so prikazani v tabeli 1a. KOT 0° 150° 300° 90° 240° 30° 180° 330° 120° 270° 60° 210° 180° 330° 120° 270° 60° 210° 0° 150° 300° 90° 240° 30° N Algoritem za izračun koncentriranega navitja mora biti splošen, tako da bo dal ustrezno porazdelitev in vezavo tuljavic, ne glede na število zob, magnetnih polov in števila tuljavic v enem utoru. Postopek je naslednji: (c) ZOB 1 2 3 4 5 6 7 8 9 10 11 12 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 9 +B +B 8 S 8 -12 -12 -9 11 11 3 -5 -5 -4 4 4 10 10 -10 -10 C 9 -11 -11 9 5 5 -3 -3 2 -6 12 -6 12 2 B -1 7 -8 -1 7 -8 (a) (b) -9 3 -4 Tabela 1. (a) Osnovni nabor kazalcev induciranih napetosti, (b) vse možne napetosti tuljavic, (c) kazalci, urejeni po kotih z označenimi izbranimi tuljavicami za posamezna fazna navitja. 5 N A 1 -7 6 -2 S 8 1 -7 6 -2 6 -C +A -B +A 7 -A -A Slika 5. Geometrija motorja s trajnimi magneti (Z = 12, p = 5, m = 3), ki ima v statorskih utorih tuljave označene s fazo, ki ji pripadajo (A,B,C) in smerjo toka v tuljavi. 3.1 Enoplastna koncentrirana navitja V primeru, ko želimo izračunati enoplastno koncentrirano navitje, se prav tako izračunajo vektorji induciranih napetosti tuljavic na posameznih zobih, a ker v tem primeru tuljavica zaseda celotna utora ob zobu, lahko postavimo tuljavice le na vsak drugi zob, zato tudi uporabimo kazalece vsakega drugega zoba. Za isti primer motorja je torej možnih 12 kazalcev (slika 6a), vseh tuljavic pa je 6 (le na lihih zobeh), tako da je posamezno fazno navitje sestavljeno le iz dveh (slika 6b). A 1 -7 12 +A +C -B S N N 11 3 S N -C 2 S 11 -5 -A N -9 3 1 +B 4 10 -B 9 S +B -1 7 -C 8 5 Neuravnoteženost magnetnega polja 6 +A (a) +C 5 N B 9 -3 S C -11 5 7 tistim v utorih z negativno smerjo toka, spremenimo predznak. Tako je v našem primeru aritmetična vsota enotskih kazalcev 8, dolžina vektorske vsote pa 0,5359, kar pomeni, da znaša faktor navitja za 5. harmonsko komponento 0,067. Na enak način lahko izračunamo faktorje navitja za poljubno število harmonskih komponent. -A (b) Slika 6. (a) Kazalci vseh možnih napetosti posameznih tuljavic enoplastnega navitja motorja s trajnimi magneti (Z = 12, p = 5, m = 3) in (b) geometrija motorja z označenimi tuljavami. 4 Numerični izračun faktorja navitja Zaradi geometrije in nelinearnih lastnosti magnetne strukture, prostorska porazdelitev magnetnega polja v zračni reži rotacijskih strojev ni sinusna (harmonična), tako da pri vrtenju rotorja inducirana napetost vsebuje, poleg osnovne, tudi višje harmonske komponente, kar je večinoma nezaželeno. Pomemben podatek vsakega navitja je zato tudi faktor navitja, ki podaja razmerje med aritmetično in vektorsko vsoto kazalcev inducirane napetosti navitja. Običajno želimo, da bi bil le-ta za osnovno harmonsko komponento čim večji (največ 1), za višje harmonske komponente pa čim manjši. Numerični izračun faktorja navitja za poljubno število harmonskih komponent je del algoritma za izračun koncentriranega navitja. Princip je tak, da izračunamo kazalce utorskih induciranih napetosti za tako število magnetnih polov rotorja, kot jih ima ustrezna harmonska komponenta magnetnega polja. Osnovna harmonska komponenta, ki jo edino upoštevamo že pri osnovnem izračunu navitja, ima število magnetnih polov dejanskega rotorja, vse višje pa večkratnik le-tega. V našem primeru, kjer je rotor 10-polni (p = 5), bi npr. 2., 3., 4. in 5. harmonska komponenta tako imele 20, 30, 40 in 50 magnetnih polov. Tudi za izračun faznih kotov kazalcev utorskih napetosti lahko uporabimo enačbo (4). Pri izračunu faktorja navitja za peto harmonsko komponento (p' = 5·p = 25), bi v našem primeru dobili kazalce s koti: p' αh 5, i = (i − 1) ⋅ 360° = (i − 1) ⋅ 30° Z pri čemer je i zaporedna številka utora. Te kote uporabimo za zapis kazalcev z enotskimi vektorji v kompleksnem prostoru (tabela 3). Ker vemo, kako so tuljavice vezane v fazno navitje (tabela 2), vektorsko seštejemo kazalce tistih utorskih napetosti (uh5,i), ki jih določajo te tuljave, pri čemer Tabela 3. Fazni koti in kompleksni kazalci induciranih napetosti v utorih, ki jih zaseda dvoplastno navitje prve faze. i αh5,i uh5,i 1 2 6 7 8 12 0° 30° 150° 180° 210° 330° +1,000 + j0,000 +0,866 + j0,500 -0,866 + j0,500 -1,000 - j0,000 -0,866 - j0,500 +0,866 - j0,500 151 Pri koncentriranih navitjih obstaja možnost, da kljub simetrični porazdelitvi faznih navitij, pri določenih kombinacijah števila utorov (Z) in parov magnetnih polov (p), pride do neuravnoteženosti magnetnega polja, ki ga ustvari večfazno navitje, ko je ustrezno vzbujano (slika 7). Taka neuravnoteženost ponavadi pripelje do velikih radialnih sil in s tem ležajnih obremenitev, zato se po zaključenem izračunu porazdelitve koncentriranega navitja izvede še kontrola uravnoteženosti magnetnega polja. Z upoštevanjem ustreznega tokovnega vzbujanja faznih navitij se za vsak zob izračuna prostorski vektor magnetne napetosti. Da je magnetno polje uravnoteženo, mora biti vektorska vsota vseh teh vektorjev enaka nič, v kolikor ni, algoritem posreduje obvestilo o neuravnoteženosti. Slika 7. Primer uravnoteženega magnetnega polja (levo) pri statorju: Z = 15, p = 5 in neuravnoteženega (desno), pri istem številu utorov, a drugačnem številu magnetnih polov: p = 7. 6 Zaključek Načrtovanje koncentriranega navitja kar kliče po numeričnem reševanju. Predstavljeni algoritem tako določi utorsko porazdelitev in vezavo tuljav, poleg tega pa še izračuna faktorje navitja in preveri uravnoteženost magnetnega polja. Hiter izračun in ustrezna oblika rezultatov z opozorili in sporočili, omogoča enostavno integracijo algoritma v druge programe za generiranje in simulacijo modelov električnih motorjev. Literatura [1] S. Shepard: Finite Element Analysis of Electrical Machines, Kluwer Academic Publishers, 1995. [2] N. Bianchi, M. Dai Pré, L. Alberti, E. Fornasiero: Theory and Design of Fractional-Slot PM Machines, Coop. Libraria Editrice Universita di Padova, 2007. [3] M. Caruso, A. O. Di Tommaso, F. Marignetti, R. Miceli, G. R. Galluzzo: A General Mathematical Formulation for Winding Layout Arrangement of Electrical Machines, Energies 2018, Volume 11, 446. Brezsenzorska regulacija hitrosti enosmernega stroja Mitja Nemec1, Yuge Zhao2 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana, Slovenija 2 École supérieure d'ingénieurs en génie électrique, Rouen, France E-pošta: mitja.nemec@fe.uni-lj.si Sensorless speed control of DC drive 2 Teorija Abstract. This paper presents a method to control the speed of a DC machine without any speed/angle sensor. The method is based upon detection of BEMF voltage ripple which is the result of machine construction. By measuring the rotor current and/or impressed voltage ripple one can determine the rotor speed with spectral analysis. The experimental results show the transient response to speed reference change as well as the load change. Furthermore the startup and reversing procedure are also shown. The method, while having some drawbacks, is ready to use with any DC machine. 1 Uvod Z vedno večjo stopnjo avtomatizacije, ki jo omogoča tehnološki napredek, napredne rešitve v električnih pogonih prodirajo tudi na področja, kjer zaradi cenovne občutljivosti to do sedaj ni bilo mogoče. Tako se na področju enosmernih strojev v zadnjih desetletjih ni spremenilo veliko. V novih pogonih se enosmerni stroji uporabljajo samo pri cenovno najbolj občutljivih aplikacijah, kjer pa so stroji že v uporabi, pa se v primeru nadgraditve pogona tipično zamenja celoten pogon s strojem skupaj. Enosmerni stroj je bil v preteklih desetletjih najbolj razširjen stroj, poleg asinhronskega stroja, zaradi enostavne relacije med napajalno napetostjo in vrtilno hitrostjo. Tako se je vrtilna hitrost krmilila preko napajalne napetosti. Z napredkom tehnologije in predvsem z cenovno dosegljivostjo pa regulacija hitrosti prodira tudi na področja, kjer je sicer krmiljene hitrosti dovolj dobro, saj se z regulacijo nekoliko izboljšajo lastnosti delovanja. Za regulacijo pa potrebujemo tako senzor hitrosti kot tudi pripadajočo signalno in močnostno elektroniko (v nadaljevanju krmilnik). Zaradi lažje integracije sistema kot tudi zaradi zniževanja stroškov so se pri izmeničnih pogonih pojavile rešitve s katerimi lahko reguliramo hitrost brez senzorja hitrosti. V kolikor gre za generične rešitve, potem le-te delujejo pri srednjih do visokih vrtilnih hitrostih in imajo težave oz. ne delujejo pri nizkih vrtilnih hitrostih. Če pa je rešitev razvita za točno določen stroj in pretvornik, pa se lahko doseže tudi obratovanje v mirovanju oz. pri nizkih vrtilnih hitrostih. V tem članku bo predstavljena taka rešitev za regulacijo hitrosti enosmernega stroja brez senzorja. Tako lahko novim aplikacijam, ki se jo poslužijo, znižamo ceno, pri obstoječih aplikacijah pa je možna nadgradnja brez poseganja v mehaniko pogona. ERK'2019, Portorož, 152-155 152 Teorija delovanja enosmernega stroja je že dobro znana [1]. Za potrebe brezsenzorske regulacije hitrosti pa si je treba pogledati, kako je zgrajen rotorski sklop (slika 1). Slika 1. Rotor enosmernega stroja s ščetkami, komutatorjem in rotorskimi navitji Ko se rotor vrti ima inducirana napetost posameznega rotorskega navitja sinusno obliko. Inducirana napetost na rotorskih sponkah pa ima obliko ovojnice vseh sinusnih napetosti posameznih rotorskih navitij (slika 2). Tako inducirana napetost ni popolnoma enosmerna. V primeru, da je stroj napajan s togo enosmerno napetostjo ta valovitost inducirane napetosti povzroči valovitost v rotorskem toku, katere frekvenca je proporcionalno odvisna od vrtilne hitrosti. V kolikor pa je stroj napajan tokovno, pa mora valovitost pritisnjene napetosti popolnoma slediti valovitosti inducirane napetosti. In tudi v tem primeru je frekvenca valovitosti proporcionalna vrtilni hitrosti. Tako lahko z meritvijo frekvence valovitosti toka oz. napetosti dobimo podatek o vrtilni hitrosti stroja [2]. e (V) 1 0.5 0 -0.5 -1 0 60 120 180 240 300 kot (°) 360 Slika 2. Inducirana napetost posameznega rotorskega navitja (črtkano) in inducirana napetost na rotorskih sponkah (polna črta) 3 Brezsenzorska regulacija Pri klasični regulaciji hitrosti (slika 3) dinamiko regulacije hitrost določa mehanska vztrajnost, saj sta zakasnitev samega izračuna hitrosti iz merjenega kota in zakasnitev notranje tokovne regulacijske zanke v večini primerov zanemarljivi. Slika 3. Blokovna shema regulacije hitrosti s senzorjem Pri brezsenzorski regulaciji hitrosti pa se hitrost določi z oceno frekvence valovitosti bodisi v pritisnjeni napetosti bodisi v rotorskem toku (slika 4). Tudi sam zagon gredi je problematičen. Dokler se gred ne vrti, je amplituda valovitosti 0 V in je s frekvenčno analizo ne moremo zaznati. Tako je sam zagon treba izpeljati odprtozančno, ko pa hitrost dovolj naraste za uspešen zajem hitrosti, pa lahko preklopimo v zaprtozančno delovanje. Zadnja težava pa je spekter valovitosti. V tem namreč ni izrazita samo ena frekvenčna komponenta (slika 6). Tako je lahko v določenih primerih amplituda drugih frekvenčnih komponent (tipično dvojna in polovična frekvenčna komponenta) višja od iskane frekvenčne komponente. To je še posebej izrazito pri strojih, pri katerih so ščetke optimalno nastavljene za eno smer vrtenja, stroj pa se vrti v nasprotno smer (slika 7). In v kolikor algoritem ocenjuje vrtilno hitrost samo na podlagi frekvence valovitosti z najvišjo amplitudo, lahko določi napačno vrtilno hitrost (slika 8). Le temu se uspešno izognemo tako, da algoritmu zožimo iskanje frekvence na območje okoli predhodno pridobljene ocene hitrosti. i (A) 1 10 0 10 -1 10 Slika 4. Blokovna shema regulacije hitrosti brez senzorja -2 Uporaba hitre Fourierjeve transformacije (FFT) pa prinaša več težav. Prva težava je omejena frekvenčna ločljivost saj je le-ta omejena z časom zajema signala [3], [4]. Le to se vidi na sliki 5. Nadalje omejena ločljivost v sklenjeni regulacijski zanki lahko pripelje do mejnega nihanja, kar je lahko nezaželeno [5]. Tretja težava pa je časovna zakasnitev, saj je treba zajeti določeno število vzorcev. To je razvidno na sliki 5, ki prikazuje potek ocenjene hitrosti na podlagi FFT analize valovitosti rotorskega toka med pospeševanjem. Pri vzorčni frekvenci 20 kHz zakasnitev v primeru 512 vzorcev (9 bitni FFT) znaša 25,6 ms, pri 4096 vzorcih (12 bitni FFT) pa kar 204,8 ms. Tako je sama zakasnitev zaradi izračuna FFT zanemarljiva, saj za 4096 točk znaša 0,2 ms. 10 -3 10 0 200 400 600 f (Hz) 1000 800 Slika 6. Spekter valovitosti toka pri vrtilni hitrosti +10 Hz i (A) 1 10 0 10 -1 10 -2 10 -3 10 0 200 400 600 f (Hz) 1000 800 Slika 7. Spekter valovitosti toka pri vrtilni hitrosti -10 Hz hitrost (Hz) 13 speed (Hz) 5 12-bit FFT 11-bit FFT 10-bit FFT 9-bit FFT želena hitrost 12.5 12 11.5 samo FFT FFT s sledenjem encoder speed speed reference 4 3 11 10.5 2 10 9.5 9 0 1 1 2 3 4 čas (s) 5 Slika 5. Zakasnitev signala hitrosti v primeru različne dolžine okna za FFT (512, 1024, 2048 in 4096 vzorcev). 153 0 0 2 4 6 8 time(s) 10 Slika 8. Podatek o vrtilni hitrosti pridobljen na podlagi frekvence valovitosti z najvišjo amplitudo 4 Rezultati hitrost (Hz) 13 Algoritem za brez-senzorsko regulacijo hitrosti je bil preizkušen na enosmernem pogonu s podatki iz tabele 1. Na isti gredi sta bila tudi sinhronski stroj s trajnimi magneti, ki je služil za obremenitev, in dajalnik kota, s katerim smo merili dejansko hitrost (slika 9). Algoritem se je izvajal na mikrokrmilniku TMS320F28377S. dejanska hitrost ocenjena hitrost želena hitrost 12.5 12 11.5 11 10.5 10 9.5 9 0 5 10 čas (s) 20 15 Slika 11. Zaprtozančni odziv na spremembo hitrosti (z 10 Hz na 12.1 Hz) hitrost (Hz) 5.5 dejanska hitrost ocenjena hitrost želena hitrost 5 4.5 Slika 9. Slika testnega sistema Tabela 1. Podatki pogona Moč stroja Nazivni tok stroja Nazivni navor Nazivna vrtilna hitrost Rotorska upornost Rotorska induktivnost Rotorski vztrajnostni moment Napajalna napetost Preklopna/vzorčna frekvenca 4 500 W 20 A 1,2 Nm 4000 min-1 0,3 Ω 180 μH 0,0027 kgm2 24 V 20 kHz 3.5 3 2.5 0 hitrost (Hz) 8 čas (s) 20 15 Odziv na spremembo obremenitve pa je prikazan na sliki 13. Vidimo, da se pogon ustrezno odzove, še bolj pa pade v oči neenakomeren odziv dejanske hitrosti, ki je posledica grobe ocene hitrosti na podlagi spektralne analize. Vendar pa se hitrost po prehodnem pojavu ustali. hitrost (Hz) 11 dejanska hitrost želena hitrost dejanska hitrost ocenjena hitrost želena hitrost 10.5 4 2 0 0 10 Slika 12. Zaprtozančni odziv na spremembo hitrosti (z 3 Hz na 5.1 Hz) Slika 10 prikazuje zagon in zaustavitev gredi v primeru, ko je hitrost regulirana s pomočjo senzorja. Odziv je hiter in brez prenihajev, v stacionarnem stanju pa je hitrost pričakovano konstantna. 6 5 10 2 4 6 8 čas (s) 10 Slika 10. Zagon in ustavitev gredi s klasično regulacijo s senzorjem Zaradi omejene frekvenčne ločljivosti pri oceni hitrosti na podlagi spektra valovitosti, je v nadaljevanju želena hitrost bila omejena samo na vrednosti, ki jih lahko točno ocenimo s spektralno analizo. Tako sliki 11 in 12 prikazujeta odziv na skočno spremembo želene vrednosti hitrosti v primeru regulacije brez senzorja. Zaradi dodatne zakasnitve, ki jo vnaša vzorčenje dovolj velikega števila vzorcev za potrebe spektralne analize, je odziv počasnejši in tudi preniha. 154 9.5 9 8.5 8 0 10 20 30 40 čas (s) 50 Slika 13. Zaprtozančni odziv na spremembo obremenitve pri 10 Hz Zagon takega pogona poteka v dveh fazah (slika 14). Najprej se stroj samo krmili, tako da se počasi dvigne pritisnjena rotorska napetost. Le-ta povzroči, da čez rotor steče tok, ki generira navor in stroj prične pospeševati. Ko stroj neha pospeševati, je inducirana napetost blizu pritisnjene napetosti. Preklop iz krmiljenja v regulacijo hitrosti se zgodi, ko sistem zazna dovolj enakih zaporednih odčitkov. Šele potem lahko gred poženemo do višje ali nižje hitrosti. Še nekoliko bolj zapleteno je reverziranje takega pogona (slika 15). Ko želena vrednost spremeni predznak, pogon preklopi v način krmiljenja dokler sistem ne zazna dovolj enakih zaporednih odčitkov hitrosti z ustrezni predznakom in v okolici pričakovane vrednosti. Nato pa se zopet preklopi iz krmiljenja v regulacijo hitrosti. hitrost (Hz) 10 dejanska hitrost ocenjena hitrost želena hitrost 8 4 2 0 5 10 15 20 25 čas (s) 30 Slika 14. Zagon gredi hitrost (Hz) dejanska hitrost ocenjena hitrost želena hitrost 10 5 0 -5 -10 0 Predstavljena metoda regulacije hitrosti brez senzorja sicer deluje vendar pa ima velike omejitve, ki preprečujejo, da bi bila splošno uporabna. Metoda je pogojno uporabna pri pogonih kjer so mehanske časovne konstante zelo velike. V tem primeru postane zakasnitev zaradi spektralne analize zanemarljiva tudi, ko okno zajema podaljšamo z namenom izboljšanja frekvenčne ločljivosti. Efekt, ki ga povzroča valovitost inducirane napetosti, žal ni primeren za določanje hitrosti pri nizkih vrtilnih hitrostih. Zato bomo v prihodnje pozornost namenili spremenljivi impedanci rotorja. V kolikor bi le-to opisali z modelom, bi morebiti lahko z opazovalnikom določili položaj rotorja (in preko tega tudi hitrost) . Literatura 6 0 5 Zaključek 10 20 30 40 čas (s) 50 Slika 15. Reverziranje 155 [1] D. Miljavec in P. Jereb, Električni stroji: temeljna znanja. Fakulteta za elektrotehniko, 2008. [2] S. Ropoša in M. Hadžiselimović, „Meritev vrtljajev v sesalno enoto integriranega univerzalnega motorja“, v Zbornik petnajste mednarodne Elektrotehniške in računalniške konference, Portorož, Slovenija, 2006, let. A, str. 391–394. [3] M. Nemec in A. Leban, „Uporaba diskretne Fourierjeve transformacije v močnostni elektrotehniki“, v Zbornik dvajsete mednarodne Elektrotehniške in računalniške konference, Portorož, Slovenija, 2011, let. A, str. 356– 370. [4] K. Drobnič, V. Ambrožič, in R. Fišer, „Uporaba diskretne Fouriereve transformacije pri detekciji zlomljenih rotorskih palic v asinhronskem motorju“, Elektrotehniški Vestn., let. 80, št. 4, str. 177–183, 2013. [5] H. Peng, A. Prodic, E. Alarcon, in D. Maksimovic, „Modeling of Quantization Effects in Digitally Controlled DC-DC Converters“, IEEE Trans. Power Electron., let. 22, št. 1, str. 208–215, jan. 2007. Primerjalna analiza vplivov napajanja bremen z modificirano sinusno napetostjo in omrežno napetostjo Andraž Rihar1, Denis Sušin1, Klemen Drobnič1 Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška 25, 1000 Ljubljana E-pošta: andraz.rihar@fe.uni-lj.si 1 Comparative analysis of influences on loads supplied with modified sine wave inverter and grid Abstract. The paper presents a study of influences on typical consumer electronics’ loads, when being powered with grid and modified sine wave voltage, respectively. Comparison results demonstrate that use of the tested commercially available inverter with modified sine wave can incur plenty of disadvantages, such as up to 7-times higher THD factor (powering the lamp), current spikes up to 9 A (powering the laptop charger), and additional vibrations (powering the induction motor). Use of such inverters could harm the loads in the long run. Therefore, when powering such loads, it is recommended to use pure sine wave inverters or additional output filters. 1 Uvod Dandanes uporaba in številčnost razsmernikov v svetu naraščata izredno hitro. Eden izmed poglavitnih razlogov za to je izreden porast uporabe v fotovoltaičnih (PV) elektrarnah [1, 2], kjer instalirana moč v svetu že presega 500 GW [3]. Razsmerniki se uporabljajo tudi v najrazličnejših aplikacijah potrošniške elektronike, tako doma kot tudi v prevoznih sredstvih (avtomobili, avtodomi, jadrnice, čolni, letala, itn.) [4]. Pomembno področje uporabe predstavljajo tudi sistemi neprekinjenega napajanja (angl. uninterruptible power supply – UPS) [5]. Razsmernik v tem kontekstu predstavlja močnostni pretvornik, ki pretvarja enosmerno napetost (UDC) v izmenično (UAC). To je mogoče izvesti z različnimi topologijami na različne načine, ki na izhodu pretvornika torej zagotovijo različne oblike izmenične napetosti [6, 7, 8, 9, 10]. Med pogostejšimi oblikami so:  Preprost kvadratni val (angl. square wave), kjer se napetost spreminja med +UDC in –UDC s frekvenco osnovne harmonske komponente (npr. 50 Hz).  Modificirana sinusna napetost (angl. modified sine wave), kjer ima napetost tri nivoje in sicer +UDC, 0 V in –UDC. Ti nivoji se spreminjajo s frekvenco osnovne harmonske komponente (npr. 50 Hz).  Čista sinusna napetost (angl. pure sine wave), ki je običajno generirana z uporabo sinusne pulzno širinske modulacije (SPWM), kjer je modulacijska frekvenca nekaj velikostnih razredov večja od osnovne harmonske komponente (npr. 20 kHz). Možne so tudi druge rešitve, ki pa so manj pogoste ali pa zaenkrat še manj uveljavljene. Vsaka od zgoraj ERK'2019, Portorož, 156-159 156 navedenih izvedb ima določene prednosti in slabosti. Razsmerniki s preprostim kvadratnim valom in modificirano sinusno napetostjo so običajno občutno cenejši in preprostejši. Na drugi strani so razsmerniki s t. i. čisto sinusno napetostjo dražji, kvalitetnejši, imajo nižje harmonsko popačenje (angl. total harmonic distortion – THD) ter omogočajo tudi sinhronizacijo na omrežje z namenom vračanja električne energije, npr. v PV elektrarnah [11]. Dražji razsmerniki imajo običajno tudi možnost osnovne ali naprednejše tokovne regulacije [12]. Pomembno področje uporabe razsmernikov je režim otočnega obratovanja. Takšna aplikacija je zanimiva tudi za številne uporabnike v široki potrošnji, zato je uporaba razsmernikov z modificirano sinusno napetostjo zaradi občutno nižje cene pogosta. Tipičen primer uporabe je na primer razsmerjanje baterijske napetosti v prevoznih sredstvih, kjer lahko razsmerniki skrbijo za napajanje najrazličnejših bremen: polnilniki za telefone, napajalniki za prenosne računalnike, izmenični motorji (črpalke, ventilatorji, klime, orodja), grela, svetila, pečice, itn. Bremena so v osnovi običajno izdelana za uporabo na omrežni sinusni napetosti, ki ima razmeroma nizek THD (upoštevajoč prvih 40 višjih harmonskih komponent), pogojen s standardom EN61000-3-2 [13]. V literaturi je že možno zaslediti nekaj ugotovitev glede kakovosti napetosti posameznih tipov razsmernikov [14] in nekaj primerjalnih analiz različnih napetosti [10, 15]. Avtorji ugotavljajo, da so razsmerniki s čisto sinusno napetostjo najprimernejši za uporabo, imajo najmanjši THD in povzročajo najmanj težav na bremenski strani. Na drugi strani so razsmerniki s kvadratnim valom oziroma modificirano sinusno napetostjo manj primerni za uporabo zaradi višjega THD, imajo pa nižje stikalne izgube in so predvsem cenovno dostopnejši. Analize v literaturi so večinoma omejene na simulacije z idealiziranimi modeli [10, 15], opaziti pa je pomanjkanje eksperimentalnih meritev in testiranja delovanja posameznih konceptov razsmernikov, še posebej v luči vpliva na tipično uporabljena bremena. Namen članka je torej dopolniti pomanjkljivo raziskano področje iz literature ter predstaviti primerjalno analizo vplivov napajanja tipičnih bremen (žarnica, napajalnik za prenosni računalnik, izmenični motor) z modificirano sinusno napetostjo ter omrežno sinusno napetostjo, s poudarkom na ugotovitvah na podlagi eksperimentalnih meritev. Slika 1. Komercialni razsmernik z modificirano sinusno napetostjo podjetja EnjoySolar. 2 Metodologija Za preizkuse z modificirano sinusno napetostjo je uporabljen komercialno dostopen razsmernik podjetja EnjoySolar z 2000 W trajne moči, 4000 W vršne moči (slika 1) [16], ki je pri znižani moči napajan z enosmernim laboratorijskim virom ITECH IT6512 (80 V/60 A/1200 W). Delovanje dotičnega razsmernika temelji na vzporedni vezavi več t. i. »push-pull« vhodnih pretvornikov, kateri dvignejo vhodno enosmerno napetost 12 V na višjo enosmerno vrednost. Takšna topologija hkrati zagotavlja tudi galvansko ločitev in s tem zmanjšanje verjetnosti električnega udara. Zvišana enosmerna napetost je nato razsmerjena z dvema izhodnima H-mostičema v vzporedni vezavi, ki na izhodu zagotovita modificirano sinusno napetost 230 V s primerno tokovno zmogljivostjo. Izhodna napetost je regulirana tako, da je ne glede na obremenitev, na izhodu približno konstantna efektivna napetost 230 V (slika 2). Ob večji obremenitvi se rahlo zmanjša maksimalna napetost razsmernika, skrajša pa se tudi trajanje intervala, ko je izhodna napetost enaka 0 V. Slika 3. Oscilogram omrežne sinusne napetosti (a) in pripadajoči frekvenčni spekter napetosti (b). Omrežna sinusna napetost je bila zagotovljena neposredno iz vtičnice v laboratoriju na Fakulteti za elektrotehniko (slika 3). Eksperimentalne meritve so bile izvedene na treh primerih obremenitve, ki predstavljajo tipična bremena v široki potrošnji. V prvem primeru je bila uporabljena navadna žarnica (Osram, 230 V, 100 W). V drugem primeru je bila uporabljena obremenitev z napajalnikom za prenosni računalnik (DELL, 65 W, 100 VAC–240 VAC na 19,5 VDC, model LA65NS0-00) brez priklopljenega računalnika. V tretjem primeru je bil priklopljen manjši enofazni asinhronski motor (230 VAC, 50 Hz, 55 W, 2700 min-1). V nadaljevanju je bila izvedena analiza vplivov različnih oblik napajalne napetosti na navedena bremena. V primeru obremenitve z žarnico je bila analiza osredotočena na časovni potek in frekvenčni spekter toka. Prav tako je bila ocenjena svetilnost žarnice na razdalji 41 cm, za kar sta bila uporabljena aplikacija Lux Light Meter in vgrajeni svetlobni senzor telefona MOTO G5 plus. V primeru obremenitve z napajalnikom je bila analiza osredotočena na potek toka v napajalnik brez priklopljenega računalnika. V primeru obremenitve z izmeničnim motorjem je bila analiza osredotočena na obratovanje motorja v prostem teku v smislu analize frekvenčne vsebine faznega toka ter analize obratovanja z vidika vibracij. Vibracije so bile izmerjene s 3-osnim pospeškometrom (DYTRAN model 3133B1). Izračunane so bile efektivne vrednosti in THD faktorji frekvenčnih spektrov, kjer so bile upoštevane zgolj višje harmonske komponente do frekvence 450 Hz. 3 Rezultati in diskusija Slika 2. a) Oscilogram izhodne modificirane sinusne napetosti in b) pripadajoč frekvenčni spekter napetosti komercialnega razsmernika EnjoySolar ob različni izhodni moči. 157 Rezultati napajanja žarnice z omrežno napetostjo in razsmernikom potrjujejo, da je žarnica povsem ohmsko breme, saj sta napetost in tok v obeh primerih fazno praktično poravnana, po obliki pa je tok enak pritisnjeni napetosti (slika 4). Efektivna vrednost napetosti razsmernika je za približno 3,5 V višja v primerjavi z omrežno napetostjo, posledično je višja tudi efektivna vrednost toka (slika 5 in slika 6). Meritve svetilnosti žarnice za oba primera napajanja so pokazale, da je v primeru napajanja z omrežno napetostjo izmerjena svetilnost 6462 lux, ob napajanju z razsmernikom pa 6760 lux, torej kar 5 % višja. Harmonsko popačenje toka je v primeru napajanja žarnice z razsmernikom več kot 7-krat višje (slika 6). preklopov tranzistorjev izhodnega H-mostiča in razmeroma velike kapacitivnosti vhodne stopnje napajalnika. Kapacitivnost na vhodu napajalnika je bila izmerjena z namenskim RLC-metrom pri frekvenci 1 kHz in znaša 278 nF. Tranzistorji v približno 10 µs preklopijo nivo izhodne napetosti z 0 V na približno 300 V, kar ob upoštevanju kapacitivnosti napajalnika znese približno 8,90 A (iC = C · du / dt = 278 nF · 320 V / 10 µs) in potrjuje rezultate s slike 7. Slika 4. Oscilogram napetosti in toka napajanja žarnice z a) omrežno napetostjo in b) z razsmernikom. Slika 7. Oscilogram napetosti in toka v neobremenjen napajalnik za prenosni računalnik ob napajanju z omrežno napetostjo (a) in z razsmernikom (b). Slika 5. Frekvenčni spekter napetosti (a) in toka (b) napajanja žarnice z omrežno napetostjo. Slika 8. Oscilogram napetosti in toka v enofazni asinhronski motor ob napajanju z omrežno napetostjo (a) in z razsmernikom (b). Slika 6. Frekvenčni spekter napetosti (zgoraj) in toka (spodaj) napajanja žarnice z razsmernikom. Rezultati napajanja napajalnika za prenosni računalnik kažejo, da je v primeru omrežne napetosti tok v napajalnik relativno majhen (slika 7). Glede na to, da napajalnik ni priklopljen na računalnik, lahko na podlagi poteka sklepamo, da gre za tok v vhodne podporne kondenzatorje, ki običajno sledijo usmerniški stopnji napajalnika. V primeru napajanja z razsmernikom rezultati kažejo, da so tokovni pulzi precej veliki in segajo do približno 9 A, kar je posledica izredno hitrih 158 Slika 9. Frekvenčni spekter toka v enofazni asinhronski motor ob napajanju z omrežno napetostjo (a) in z razsmernikom (b). Rezultati časovnih potekov in frekvenčnih spektrov toka v primeru napajanja asinhronskega motorja z omrežno napetostjo potrjujejo, da je le-ta obremenjen s praktično sinusnim tokom (slika 8) z nizkim THD (slika 9). Tok zaostaja za napetostjo za približno 90°, kar je posledica prevladujočega induktivnega karakterja bremena. V primeru napajanja z razsmernikom je tok zaradi nesinusnega napajanja in induktivnega karakterja izrazito popačen (slika 8), posledično je tudi THD toka za kar 8-krat višji (slika 9). Efektivne vrednosti toka so kljub vsemu približno enake. Meritve vibracij motorja s triosnim pospeškometrom na ohišju motorja potrjujejo višjo vsebnost višje harmonskih komponent vibracij v motorju (slika 10). Vibracije so bržkone posledica višje harmonskih komponent toka, ki pa praktično niso odvisne od obremenitve in predvidoma povzročajo tudi dodaten hrup (ki pa v študiji ni bil izmerjen). Slika 10. Frekvenčni spekter pospeška (vibracij) motorja ob napajanju z omrežno napetostjo (a) in z razsmernikom (b). 4 Sklepne ugotovitve Članek predstavlja študijo vplivov napajanja tipičnih bremen z omrežno napetostjo in z razsmernikom z modificirano sinusno napetostjo. Izsledki kažejo, da taki razsmerniki sicer omogočajo napajanje bremen tudi, če omrežje ni dostopno, žal pa uporaba prinaša številne slabosti. V primeru napajanja žarnic lahko visok di/dt v primeru parazitnih induktivnosti povzroči neželene prenapetosti. Napajanje napajalnikov za prenosnike lahko zaradi velike tokovne obremenitve vhodnih podpornih kondenzatorjev precej skrajša življenjsko dobo napajalnikov. Ob napajanju motorjev se pojavijo višje harmonske komponente toka in vibracije. Hitri preklopi lahko v primeru morebitnih kapacitivnih sklopitev motorjev povzročijo dodatne kapacitivne tokove, ki so lahko za motor škodljivi. Na podlagi rezultatov je možno sklepati, da so taki razsmerniki za napajanje večine tipičnih bremen lahko škodljivi in bi jih bilo vsekakor smiselno nadgraditi s primernimi izhodnimi filtri. Alternativa je seveda uporaba razsmernikov s čisto sinusno napetostjo, kjer so zaradi višjih stikalnih frekvenc tudi izhodni filtri lahko manjši. V smislu nadaljnjega dela so predvidene dodatne analize segrevanja motorjev in drugih vrst bremen. Literatura [1] V. K. Chinnaiyan, J. Jerome, J. Karpagam. An experimental investigation on a multilevel inverter for 159 solar energy applications. International Journal of Electrical Power & Energy Systems, 47, str. 157-167, 2013. [2] A. S. K. Chowdhury, M. S. Shehab, M. A. Awal, M. A. Razzak. Design and implementation of a highly efficient pure sine-wave inverter for photovoltaic applications. V: International Conference on Informatics, Electronics and Vision (ICIEV), str. 1-6, Maj, 2013, IEEE. [3] N. M. Haegel, H. Atwater, T. Barnes, C. Breyer, A. Burrell, Y. M. Chiang, J. C. Goldschmidt et al.: Terawattscale photovoltaics: Transform global energy. Science, 364(6443), str. 836-838, 2019. [4] https://mascot.no/catalog/dcac-inverters/mod.-sinewave/2985/c-24/c-1306/p-277. Dostopano dne: 8.7.2019. [5] https://www.amp-solar.com/ups_inverter500w/en. Dostopano dne: 8.7.2019. [6] S. S. Shema, I. Daut, M. Irwanto, C. Shatri, N. Syafawati, N. Ashbahani. Study of inverter design and topologies for photovoltaic system. V: International Conference on Electrical, Control and Computer Engineering (InECCE), str. 501-504, Jun. 2011, IEEE. [7] R. Haider, R. Alam, N. B. Yousuf, K. M. Salim. Design and construction of single phase pure sine wave inverter for photovoltaic application. V: 2012 International Conference on Informatics, Electronics & Vision (ICIEV), str. 190-194, Maj 2012, IEEE. [8] http://www.dieselduck.info/machine/04%20auxiliary/ 2000%20Inverter%20technology.pdf. Dostopano dne: 8.7.2019 [9] S. Maheshri, P. Khampariya. Simulation of single phase SPWM (Unipolar) inverter. International journal of innovative research in advanced Engineering (IJIRAE), 1(3), 2014. [10] S. Phogat. Analysis of single-phase SPWM inverter. International Journal of Science and Research, 3(8), str. 1793-1798, 2014. [11] T. F. Wu, K. H. Sun, C. L. Kuo, C. H. Chang. Predictive current controlled 5-kW single-phase bidirectional inverter with wide inductance variation for DC-microgrid applications. IEEE Transactions on Power Electronics, 25(12), str. 3076-3084, 2010. [12] K. Zhang, Y. Kang, J. Xiong, J. Chen. Direct repetitive control of SPWM inverter for UPS purpose. IEEE Transactions on Power Electronics, 18(3), str. 784-792, 2003. [13] http://www.epsma.org/PFC%20Guide_03032018 %20(3)%20final%207-7.pdf; Dostopano dne: 9.7.2019 [14] M. Yumurtaci, S. V. Ustun, S. V. Nese, H. Cimen. Comparison of output current harmonics of voltage source inverter used different PWM control techniques. WSEAS Transactions on Power Systems, 3(11), str. 695704, 2008. [15] M. B. Cheema, S. A. Hasnain, M. M. Ahsan, M. Umer, G, Ahmad. Comparative analysis of SPWM and square wave output filtration based pure sine wave inverters. V: 15th International Conference on Environment and Electrical Engineering (EEEIC), str. 38-42, Jun. 2015, IEEE. [16] https://www.amazon.de/Spannungswandler-EnjoySolar2000-4000-12V-230V-Zertiviziert/dp/B00MA4Y2I0 Zagon in preliminarno preizkušanje vodenja 2x3-faznega pogona Andraž Rihar1, Mitja Nemec1, Klemen Drobnič1, Danjel Vončina1 Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška 25, 1000 Ljubljana E-pošta: andraz.rihar@fe.uni-lj.si 1 Start and preliminary testing of control algorithms on a 2 x 3 – phase drive Abstract. Electrification of vehicles is on the rise. Besides ordinary three-phase drivetrains, multiphase electric drives with more than 3 phases are attractive alternatives due to their numerous advantages, such as lower torque ripple, power sharing, etc. However, application details of multiphase electric drives for low to moderate voltages and moderate power are still relatively rare in contemporary literature. This paper describes a 2x3-phase electric drive, as well as summarizes its preliminary testing procedure. Results are provided for analysis of overvoltage on MOSFETs during turn-off, advantages of the implemented MTPA algorithm, evaluation of effects of the introduced phase delay of modulation signals, and the system’s response to protection mechanisms. Results confirm suitability of the implemented algorithms and demonstrate the large potential of the designed electric drive platform for further analysis. 1 Uvod Elektrifikacija glavnih in pomožnih pogonov osebnih vozil je že danes v porastu [1], od leta 2025 naprej pa je predvideno izrazito povečanje števila električnih vozil [2], ki naj bi v Evropi po optimističnih napovedih doseglo celo do 70 % tržnega deleža. Poleg običajnih trifaznih motorjev se vse pogosteje omenja možnost vgradnje večfaznih pogonov: pet [3, 4], šest [5] in devet [6]. Taki motorji imajo lahko specifične prednosti, kot so manjša valovitost navora, boljša razporeditev moči po fazah, večja zanesljivost in višje hitrosti [6, 7]. Večfazni električni pogon poleg večfaznega električnega motorja običajno sestavlja tudi večfazni razsmernik z ustreznimi algoritmi vodenja, kar pomeni, da je potreben sočasen razvoj na več področjih [8, 9, 10, 11]. V literaturi lahko zasledimo precej študij večfaznih motorjev, tako asinhronskih [7] kot tudi sinhronskih motorjev s trajnimi magneti [4]. Zasledimo lahko tudi nekaj študij večfaznih razsmernikov [8, 9, 10], kjer pa so za srednje in večje moči praktično vedno uporabljena IGBT močnostna stikala. Pri napetostih od 500 V do 1200 V predvsem zaradi nižjih izgub IGBT stikala počasi nadomeščajo SiC MOSFETi [12]. Pri nižjih napetostih (do 300 V) in srednjih močeh (do 50 kW) pa so iz istega razloga zanimiva Si MOSFET močnostna stikala z večjo tokovno zmogljivostjo. V literaturi je žal opisanih relativno malo rešitev večfaznih pogonov nazivnih napetosti do 200 V in srednjih moči, ki bi bili kompaktni in optimizirani, še ERK'2019, Portorož, 160-163 160 vseeno pa modularni in bi omogočali ustrezno svobodo raziskovalcu za izvajanje različnih primerjalnih analiz. Nekaj podobnega sicer predstavijo Wen et al. v [8], pri čemer pa predstavijo zgolj eksperimentalne rezultate za moči do 500 W. Za dopolnitev pomanjkljivosti področja je bil tako pred kratkim izdelan in predstavljen 2x3-fazni razsmernik z MOSFET močnostnimi stikali [13] nazivne napetosti 135 V in kratkotrajne moči do 40 kW. Razsmernik je kompakten, simetričen in razmeroma optimiziran, ob tem pa modularen in dovolj dostopen, da omogoča nemoteno izvajanje laboratorijskih meritev in primerjalnih analiz. Na drugi strani je na področju razvoja algoritmov vodenja večfaznih pogonov bilo v zadnjem času doseženega precej napredka [14]. Poleg osnovnih algoritmov vodenja pogonov se vedno več pozornosti posveča tudi vpeljavi ustreznih zaščitnih mehanizmov in nadaljevanju obratovanja po napakah [15, 16, 17], kjer je obratovanje seveda odvisno predvsem od tipa napake in od obratovalne točke pogona. Poleg kompaktnega in modularnega razsmernika [13] se kaže potreba po kompaktni platformi večfaznega električnega pogona, ki bi bila dovolj prilagodljiva in dostopna, da bo omogočala celovite analize lastnosti večfaznih pogonov v različnih obratovalnih točkah, primerjave algoritmov vodenja in druge podobne študije. Koncept programske opreme za vodenje takega pogona je bil predstavljen v [11], platforma pa je bila realizirana v sklopu projekta EVA4green. Namen tega članka je torej predstaviti posamezne korake priprave in zagona ter preliminarno preizkušanje vodenja 2x3-faznega pogona v različnih obratovalnih točkah. 2 Metodologija V prvem koraku je bila izvedena povezava 2x3-faznega razsmernika in 2x3-faznega sinhronskega stroja s trajnimi magneti, izdelanega v sklopu projekta EVA4green (slika 1). V tem smislu sta bila sistema povezana i) električno – 24 priključnih žic, ker je stroj navit kvadrifilarno in ima 6 faz, ter ii) preko sistema vodnega hlajenja s plastičnimi cevmi in povezovalnimi členi podjetja FESTO. Razsmernik je bil napajan z virom enosmerne napetosti HP 6479C (300 V, 35 A). Poleg povezave obeh sistemov sta bili pripravljeni tudi i) ustrezna programska oprema na mikrokrmilniku, ki vodi stroj, ter ii) nadzorni program na osebnem računalniku, ki nadzoruje celoten pogon (slika 2). Slika 2. Okvirna zasnova sistema, kjer PC označuje osebni računalnik (angl. Personal Computer), MCU mikrokrmilniško enoto (angl. Microcontroller Unit), M motor, φ pa položaj rotorja. Slika 1. Eksperimentalna postavitev 2x3-faznega razsmernika (levo spredaj) in 2x3-faznega motorja (desno zadaj), ki sta povezana električno (rjave žice) in preko sistema vodnega hlajenja (bele cevi). Program na mikrokrmilniku sestoji iz dela, ki skrbi za komunikacijo z nadrejenim programom, ter dela, ki skrbi za regulacijo toka, navora in hitrosti. Pri slednjem je bil zaradi specifične topologije stroja in pripadajoče močnostne elektronike razvit tokovni regulacijski algoritem, ki omogoča regulacijo toka v paralelnih vejah posameznega sistema. V sistem je zaradi skorajda idealne sklopitve paralelnih navitij poleg dveh glavnih tokovnih regulatorjev (d in q os) vključenih tudi osem dodatnih tokovnih regulatorjev za izenačevanje (slika 3). Dodatno je omogočeno tudi fazno premaknjeno proženje parov tranzistorskih mostičev, s čimer je možno doseči manjšo valovitost toka iz enosmernega tokokroga in s tem zmanjšati obremenitev kondenzatorjev v enosmernem tokokrogu. Regulacijski sistem, temelječ na kaskadni strukturi tokovne in hitrostne zanke, je bil nadgrajen z algoritmom povečanja sistemske učinkovitosti (angl. Maximum Torque per Ampere – MTPA). V nadaljevanju je bilo najprej izvedeno testiranje razsmernika do višjih napetosti (do približno 120 % nazivne napetosti) in do nazivne obremenitve (do 200 A po fazi). Izvedena sta bila ocena prenapetosti ob izklopu močnostnih stikal ter testiranje trajnega delovanja. Slika 3. Blokovna regulacijska shema regulacije toka v dvoosnem d-q – sistemu, kjer so uporabljeni glavni regulatorji (zgornji del sheme) in pomožni tokovni regulatorji za izenačevanje (spodnji del sheme). φ označuje položaj rotorja. Desno spodaj je prikazana tudi tranzistorska veja z zgornjim (Tzgornji) in spodnjim (Tspodnji) tranzistorjem. 161 Pri omejenem statorskem toku je bilo preverjeno delovanje algoritma MTPA. Temu je sledila analiza vpliva zamikanja modulacijskih signalov posameznih tranzistorskih vej. Implementirani in testirani so bili tudi nekateri zaščitni mehanizmi, ki skrbijo za odziv na morebitne napake v programski ter strojni opremi (prevelik bremenski tok v primeru kratkega stika, asimetrična porazdelitev toka, previsoka hitrost motorja, itn.). V primeru morebitne odpovedi se izvede zasilni izklop, upoštevajoč obratovalni režim (delovanje izven ali v področju slabljenja polja). V prvem primeru se izvede izklop vseh tranzistorjev, v drugem primeru pa se sklene samo spodnje tranzistorje (slika 3). 3 Rezultati in diskusija Rezultati preliminarnega preizkušanja kažejo, da so prenapetosti ob izklopu zgornjega tranzistorja v nazivni obratovalni točki v območju 10 % (slika 4), kar kaže na ustrezno optimizirano razporeditev elementov močnostnega razsmernika. Poteki faznih tokov potrjujejo ustreznost pritisnjenih napetosti (slika 5), medtem ko preizkušanje trajnega obratovanja pokaže minimalno segrevanje, s tem pa ustreznost izvedbe vodnega hlajenja in dodaten potencial za povečevanje gostote moči razsmernika nad trenutnih 5 kW/dm3. Slika 6. Rezultati testiranja delovanja algoritma MTPA. Rezultati testiranja algoritma MTPA pri omejenem statorskem toku (60 A po faznem navitju) potrjujejo boljšo učinkovitost in sicer približno 3 % višji navor pri enakem toku (slika 6). Izrazitejšo razliko seveda pričakujemo ob polni obremenitvi. Rezultati faznega zamikanja modulacijskih signalov tranzistorskih vej kažejo, da je možno valovitost toka v napajalni vir zmanjšati, kar je ugodno z vidika elektromagnetne kompatibilnosti (slika 7). Slika 7. Amplitudni spekter napajalnega toka v primeru delovanja obeh sistemov s stikalno frekvenco 20 kHz in s faznim zamikom mod. signala 0° (modra) in 180° (rdeča). Slika 4. Oscilogram napetosti ob izklopu zgornjega tranzistorja pri nazivni napetosti UDC = 135 V in statorskem toku I = 170 A (43 A čez posamezni tranzistor). Slika 8. Potek ključnih merjenih veličin v primeru zasilnega izklopa izven področja slabljenja polja. Slika 5. Trije izmed šestih faznih tokov pri UDC = 135 V in statorskem toku I = 180 A (razmerje je 100 A/del). 162 Rezultati testiranja delovanja zaščitnih mehanizmov potrjujejo ustreznost implementiranih rešitev. V primeru izrednega dogodka izven področja slabljenja polja, ob izklopu vseh tranzistorjev fazni tokovi padejo na vrednost nič, motor pa se po naravni krivulji počasi ustavi (slika 8). V primeru znotraj področja slabljenja polja, ob sklenitvi spodnjih tranzistorjev pride do namenskega povišanja toka in kratkotrajne preobremenitve sistema, saj le tako napetost na vmesnem tokokrogu minimalno naraste (slika 9). Slika 9. Potek ključnih merjenih veličin v primeru zasilnega izklopa v področju slabljenja polja. 4 Sklepne ugotovitve Rezultati zagona in preliminarnega preizkušanja 2x3-faznega pogona srednjih moči ne le potrjujejo ustreznost zasnovane platforme za obratovanje na širokem območju delovnih točk, temveč zagotavljajo tudi odlično zasnovo za nadaljnji razvoj in napredek na področju večfaznih pogonov. Platforma omogoča številne dodatne raziskave in primerjalne analize. V smislu nadaljnjega dela so predvidena testiranja do polnih moči z obremenitvijo pogona na merilni mizi, dodatne analize vpliva topologij večfaznih motorjev na obratovanje po napaki v področju slabljenja polja ter dodatna evalvacija ustreznosti faznega zamika proženja tranzistorskih vej na širšem območju delovanja. Tu je pričakovan precejšen doprinos predvsem k zmanjšanju elektromagnetnih motenj pretvornikov. Zahvala Delo sta sofinancirali Republika Slovenija ter Evropska unija v sklopu projekta EVA4green (OP20.00362). Literatura [1] https://www.eei.org/issuesandpolicy/electrictransportati on/Documents/EV_Trends_and_Key_Issues_June2018. pdf, Dostopano dne: 16.7.2019 [2] https://egvi.eu/wp-content/uploads/2018/01/ertrac_elect rificationroadmap2017.pdf, Dostopano dne: 16.7.2019 [3] P. Zhao, G. Yang. Torque density improvement of fivephase PMSM drive for electric vehicles applications. Journal of Power Electronics, 11(4), str. 401-407, 2011. 163 [4] L. Parsa, H. A. Toliyat. Five-phase permanent-magnet motor drives. IEEE Transactions on Industry applications, 41(1), str. 30-37, 2005. [5] P. Zheng, F. Wu, Y. Lei, Y. Sui, B. Yu. Investigation of a novel 24-slot/14-pole six-phase fault-tolerant modular permanent-magnet in-wheel motor for electric vehicles. Energies, 6(10), str. 4980-5002, 2013. [6] X. Chen, J. Wang, V. I. Patel, P. Lazari. A nine-phase 18slot 14-pole interior permanent magnet machine with low space harmonics for electric vehicle applications. IEEE Tran. on Energy Conversion, 31(3), str. 860-871, 2016. [7] E. Levi, R. Bojoi, F. Profumo, H. A. Toliyat, S. Williamson. Multiphase induction motor drives–a technology status review. IET Electric Power Applications, 1(4), str. 489-516, 2007. [8] J. Wen.,K. M. Smedley. Hexagram inverter for mediumvoltage six-phase variable-speed drives. IEEE transactions on industrial electronics, 55(6), str. 24732481, 2008. [9] L. de Lillo, L. Empringham, P. W. Wheeler, S. KhwanOn, C. Gerada, M. N. Othman, X. Huang. Multiphase power converter drive for fault-tolerant machine development in aerospace applications. IEEE Transactions on Industrial Electronics, 57(2), str. 575583, 2009. [10] S. Bhattacharya, D. Mascarella, G. Joós, J. M. Cyr, J. Xu. A dual three-level T-NPC inverter for high-power traction applications. IEEE Journal of Emerging and Selected Topics in Power Electronics, 4(2), str. 668-678, 2016. [11] M. Nemec, A. Rihar. Načrtovanje programske opreme za vodenje večfaznega pogona. V: Proceedings of the Twenty-seventh International Electrotechnical and Computer Science Conference ERK 2018, str. 281-284, Sep. 2018. [12] T. Zhao, J. Wang, A. Q. Huang, A. Agarwal. Comparisons of SiC MOSFET and Si IGBT based motor drive systems. V: 2007 IEEE Industry Applications Annual Meeting, str. 331-335, Sep., 2007. [13] A. Rihar, P. Zajec, M. Nemec, M. Petkovšek, D, Vončina. Načrtovanje, zasnova in izdelava večfaznega razsmernika z MOSFET stikali. V: Proceedings of the Twenty-seventh International Electrotechnical and Computer Science Conference ERK 2018, str. 217-220, Sep., 2018. [14] F. Barrero, M. J. Duran. Recent advances in the design, modeling, and control of multiphase machines—Part I. IEEE Transactions on Industrial Electronics, 63(1), str. 449-458, 2015. [15] N. K. Nguyen, F. Meinguet, E. Semail, X. Kestelyn. Fault-tolerant operation of an open-end winding fivephase PMSM drive with short-circuit inverter fault. IEEE Transactions on Industrial Electronics, 63(1), str. 595605, 2015. [16] H. D. Do, A. Anuchin, D. Shpak, A. Zharkov, A. Rusakov. Overvoltage protection for interior permanent magnet synchronous motor testbench. V: 25th International Workshop on Electric Drives: Optimization in Control of Electric Drives, str. 1-4, 2018, IEEE. [17] B. A. Welchko, T. M. Jahns, T. A. Lipo. Fault interrupting methods and topologies for interior PM machine drives. IEEE Power Electronics Letters, 2(4), str. 139-143, 2004. Ovrednotenje izgub v dušilki enosmernega presmernika Peter Zajec Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana, Slovenija E-mail: peter.zajec@fe.uni-lj.si Evaluation of choke's losses of a DC-DC converter The paper proposes an indirect method for determining the losses of DC chokes under real working conditions faced in DC-DC converters. Instead of direct measurement of loss power based on power analyser with sufficient high bandwidth, the proposed method relies on measurements in phantom load configuration, which in turn enables the use of a lower quality power meter. The proposed method takes more time and labour, since choke has to reach its thermal steady-state under two different current set-ups, but nevertheless, the comparison proves that the indirect estimation is far more reliable especially in converters with high efficiency, and it provides a better estimation of losses also on MOSFETs. 1 Več–vejni presmernik s PWM prepletom Zastopanost enosmernih presmernikov (DC-DC pretvorniki) z višjimi izhodnimi toki (več od 100 A) se iz leta v leto povečuje. Če smo jih do sedaj večinoma povezovali s t.i. Point-of-load (POL) napajalniki v nizkonapetostnih digitalnih sistemih [1], pa je glede na aktualne trende elektrifikacije vozil pričakovati, da se bodo tovrstni pretvorniki množičneje uveljavili tudi pri pretvorbi oziroma nadzoru pretoka moči med nizkonapetostnimi sklopi (do 60 V) [2]–[7]. V obeh aplikacijah so pretvorniki praviloma izvedeni iz večjega števila (n) vzporedno delujočih pretvornikov (slika 1a), kjer vsaka pretvorniška veja zagotovi bremenu enak delež celokupne moči. Močnostna stikala preklapljajo po načelu pulzno širinske modulacije (PWM) z enotno frekvenco (fsw), pri čemer so PWM signali med posameznimi vejami fazno P+Pizg +UDC zamaknjeni (360°/n). Prednosti tovrstnega obratovanja so:  zmanjšanje amplitude [6] in povišanje frekvence (n⋅fsw) valovitosti toka skozi izhodni ter v manjši meri tudi skozi vhodni kondenzator,  zmanjšanje volumna obeh kondenzatorskih sklopov in pretvornika v celoti. Zaradi načina in mesta uporabe se seveda pričakuje, da izkoristek in specifična moč pretvornika (izražena v kW/dm3 ali v kW/kg) dosegata visoke vrednosti. Ob tem imata velikost kot tudi porazdelitev izgubne moči med komponentami ključno vlogo pri preprečevanju lokalnega pregrevanja in potencialnega skrajšanja življenjske dobe posamezne komponente. 2 Pasti pri napovedi in meritvi izgub Posledično se pri načrtovanju pretvornika ne moremo izogniti termičnemu modeliranju. V splošnem je točnost tako dobljenih rezultatov odvisna od poenostavitev pri opisu modela posamezne komponente, mehanizmov prenosa toplotnega toka med komponentami ter poenostavitev pri izračunu izgubne moči v posamezni komponenti. Če v nadaljevanju vzamemo v obzir le izgube gladilne dušilke, lahko odstopanje njenih ocenjenih izgub od dejanskih pripišemo:     uporabljenemu opisu magnetenja jedra [8], [9] ter njegovim omejitvam, odstopanju modelnih parametrov, ki so pogosto določeni pri sinusnih veličinah in z okrnjeno frekvenčno veljavnostjo, neupoštevanju izgub v zračni reži (slednje velja toliko bolj za dušilke narejene v lastni režiji), točnosti izmerjenih izgub dušilke. Pizg +UDC nap. vir #n #n #1 PWMn PWM1 nap. vir #1 PWMn P/n i PWM1 i i P/n uo P = Po P/n usw prožilno vezje P/n i uo Po = 0 usw prožilno vezje Pizg Pizg b) a) Slika 1. Konceptualna shema več–vejnega presmernika – pretok moči pri: a) realni in b) fantomski obremenitvi. ERK'2019, Portorož, 164-167 164 Velikost omenjenih odstopanj je v posamični aplikaciji težko pravilno razvrstiti. Vendar pa se v praksi pogosto izkaže, da sta način in točnost meritve izgub v nasprotju s pričakovanji poglaviten izvor odstopanj. i,u i krožnem pretoku moči, nespremenjenega nominalnega iznosa, med obema polovicama pretvornika. Tako pomerjeno moč, ki zaradi različnih izgubnih mehanizmov nastopa na vseh komponentah izpostavljenih krožnemu pretoku moči, lahko razporedimo med njimi le na podlagi izkustveno določenih uteži. 3.1 I u ton toff t Slika 2. Idealizirana poteka toka in napetosti dušilke. Razlog odstopanj tiči v časovnem poteku toka in napetosti na dušilki enosmernega presmernika (slika 2). Tok dušilke ima praviloma veliko enosmerno komponento s po amplitudi majhno superponirano visokofrekvenčno komponento toka značilne trikotne oblike. Napetost na dušilki je enaka razliki med vsiljeno napetostjo posamezne tranzistorske veje usw ter izhodno napetostjo konstantnega iznosa. Ker je srednja vrednost napetosti na dušilki proporcionalna njeni ekvivalentni upornosti, le-ta pa lahko pri kakovostnih, nizko– izgubnih dušilkah znaša vsega nekaj tisočink Ohma, je razmerje med srednjo in izmenično komponento napetosti ravno obratno kot pri toku. Poleg tega ima frekvenčni spekter pravokotnega poteka napetosti v primerjavi s trikotno valovitostjo toka tudi mnogo večji delež visokofrekvenčnih komponent. Zaradi opisanih lastnosti merjenih signalov je izbor primernih merilnikov moči malo številčen, saj morata imeti tokovni in napetostni kanal slednjih poleg široke pasovne širine tudi velik dinamičen obseg. Oboje je zaradi njihove splošne namembnosti izpolnjeno le izjemoma. Posredna meritev izgubne moči dušilke na osnovi termičnega ravnovesja Da bi se izognili dodatni negotovosti zaradi izkustvene porazdelitve celotnih izgub na delež, ki pripada le dušilki, smo njene izgube določili na osnovi poznavanja parametrov termičnega ravnovesja dT dt = 0 . Postopek sestoji iz dveh korakov, ki se razlikujeta po načinu oziroma obliki vzbujevalnega toka. Pri tem je bistveno, da se v obeh korakih zagotovi dušilki identične termične pogoje, tj. njena postavitev med meritvijo mora zagotavljati enako termično upornost in kapaciteto. V prvem koraku smo s pomočjo pomožnega vira vsilili skozi dušilko konstanten enosmerni tok z vrednostjo, ki ustreza srednji vrednosti toka dušilke (I) v nominalni obratovalni točki. Tabela 1: Časovna odvisnost nadtemperature dušilke CMI261927-100 v primeru segrevanja s konstantnim enosmernim tokom t [min] 0 4 7 11 19 23 26 37 43 52 UL [mV] 65,3 68,8 706 72,3 74,0 74,9 75,3 75,6 75,8 75,9 I Tcase Tamb ∆T [A] [° C] [° C] [° C] 35 22 22 0 35 32 22 10 35 38 22 16 35 44 22 22 35 50 22 28 35 52 22 30 35 53 22 31 35 55 22 33 35 55 22 33 35 56 22 34 Ploss Req ∆Tcu [W] [mΩ] [° C] 2,29 1,87 0 2,41 1,97 13,75 2,47 2,02 20,81 2,53 2,07 27,49 2,59 2,11 34,16 2,62 2,14 37,70 2,64 2,15 39,27 2,65 2,16 40,44 2,65 2,17 41,23 2,66 2,17 41,62 3 Posredno ovrednotenje izgub z merjenjem izkoristka Vpogled v celokupne izgube pretvornika dobimo z meritvijo vhodne in izhodne moči. Pri tem sicer zaradi ugodnejše oblike vhodnih in izhodnih veličin (tok, napetost) ne potrebujemo merilnika moči s široko pasovno širino, vendar pa mora imeti merilnik majhen merilni pogrešek. Slednje je bistveno pri presmernikih z visokim izkoristkom, kjer sta lahko razlika med vhodno in izhodno močjo kot tudi pogrešek posamično izmerjene moči istega velikostnega reda. Omenjenemu tveganju se pri več-vejnih presmernikih zlahka izognemo s t.i. fantomskim obratovanjem (slika 1b), kjer je vhodna moč (moč napajalnega vira) enaka izgubam, ki nastopijo pri 165 Slika 3: Časovna odvisnost nadtemperature – korak 1; ∆T in ∆Tcu označujeta doseženo nadtemperaturo ohišja in navitja dušilke glede na izmerjeno temperaturo okolice Tamb. Ob tem smo neposredno na sponkah dušilke merili padec napetosti (UL) ter izračunali električno moč (Ploss), ki povzroči naraščanje temperature (tabela 1). Ko se segrevanje dušilke (merjeno s termo členom nameščenim na spodnji strani dušilke) ustali (slika 3), nam vzpostavljeno termično ravnovesje (Ploss = 2,66 W, ∆T = 34 °C) omogoča izračun termične upornosti Rth = ∆T (1) Ploss med dušilko in okolico, ki je pogojena s sposobnostjo odvoda toplote tj. s postavitvijo dušilke med testiranjem. Osenčena stolpca v tabeli 1 podajata izračunano vrednost ekvivalentne upornosti dušilke Req (ki ji pripišemo tudi izgube jedra) ter izračunano vrednost sredice navitja Tcu. Rezultati (tabela 1 in slika 3) pokažejo, da je sredica navitja v stacionarnem stanju približno za 7° C toplejša od ohišja dušilke, kjer se je merila temperatura. V drugem koraku smo izmerili prehodni pojav segrevanja dušilke (z nespremenjeno pozicijo), le da smo tokrat dušilko izpostavili izmeničnemu vzbujanju (tabela 2 in slika 4) s potekom vsiljene napetosti, kot mu je podvržena med nominalnim obratovanjem z vklopnim razmerjem blizu vrednosti 0,5. Dušilko smo v ta namen priključili neposredno med sosednji tranzistorski veji – podobno kot je to storjeno pri fantomski obremenitvi (slika 2b). Ob identični vrednosti enosmerne komponente toka (korak 1) nastopijo sedaj dodatni izgubni mehanizmi v navitju in jedru dušilke, s čimer se segrevanje pohitri. Tabela 2: Časovna odvisnost nadtemperature dušilke CMI261927-100 v primeru segrevanja v fantomski konfiguraciji presmernika pri UDC = 24 V, fsw = 50 kHz in I = 35 A. t [min] 0 1 2 3 4 5 6 7 8 9 11 12 14 16 18 21 23 25 27 31 V ustaljenem nadtemperaturo Tcase [° C] 23,0 27,0 31,5 35,0 39,0 42,5 46,0 49,0 51,0 54,0 58,0 60,0 62,0 65,0 67,0 68,5 69,5 70,0 70,5 71,0 Tamb [° C] 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 23,0 stanju doseže (∆T= 48 °C). ∆T [° C] 0 4,0 8,5 12,0 16,0 19,5 23,0 26,0 28,0 31,0 35,0 37,0 39,0 42,0 44,0 45,5 46,5 47,0 47,5 48,0 Ploss [W] nadtemperature in v prvem koraku izračunane termične upornosti, lahko sedaj izračunamo (posredno izmerimo) izgube v dušilki (Ploss = 3,75 W). Slika 4: Časovna odvisnost nadtemperature – korak 2. Primerjava ustaljenih nadtemperatur razkrije, da je razmerje izmeničnih in enosmernih izgubnih moči enako 0,41. 3.1.1 Predlagani postopek ovrednotenja izgub smo preverili z neposredno meritvijo moči na dušilki. Uporabili smo merilnik moči (Power Analyzer – NORMA D5235), ki ima glede na uvodno razmišljanje dovolj veliko dinamično območje tokovnega in napetostnega kanala (≤ 60 dB), kot tudi široko pasovno širino (400 kHz s pogreškom manjšim od 3 %). Izmerjeni tok dušilke je znašal I = 34,8 A, medtem ko je bila efektivna vrednost napetosti na dušilki UL,rms = 16,50 V; kar je skladno s teorijo U L= U DC ⋅ , rms dušilka višjo Iz poznane 166 ton . ton + toff (2) Odčitek moči ob tem ni bil konstanten, temveč se je spreminjal v širokem razponu med 0,2 W in 14 W. Vzrok tolikšnemu nihanju odčitka je možno pripisati ločljivosti obeh kanalnikov, zlasti napetostnega, ki znaša pri izbranem napetostnem območju (pogojenim z amplitudo merjenega signala) 10 mV. Medtem ko na podlagi kataloško podane upornosti dušilke (2 mΩ) znaša ocenjena srednja vrednost napetosti na dušilki le 70 mV. Po vsej verjetnosti pa je za nihanje odčitane moči krivo tudi dejstvo, da je vhodna stopnja napetostnega kanalnika izpostavljena napetosti skupnega načina z visokim deležem visokofrekvenčnih komponent. Slabljenja napetosti skupnega načina pri frekvencah višjih od 60 Hz proizvajalec namreč ne podaja, vendar le-ta v splošnem upada. 3.2 21,5 21,5 Primerjava Posredna meritev – ocena izgubne moči MOSFET-ov Fantomska obremenitev presmernika nudi poleg predhodno ocenjene vrednosti izgub v dušilki tudi realnejšo oceno izgub na močnostnih stikalih – in sicer pri nominalnem pretoku moči. Osenčeni podatek v tabeli 2 podaja namreč vhodno moč v ustaljenem a) b) Slika 5. Več–vejni presmernik s PWM prepletom: a) kompaktna prototipna izvedba, b) testna izvedba z izdvojeno dušilko. termičnem stanju, ki ustreza izgubam na obeh tranzistorskih vejah, dušilki ter vhodnem kondenzatorskem sklopu. Če zanemarimo izgube na kondenzatorskem sklopu, nam razlika moči (21,5 – 3,75) omogoči tudi realnejšo oceno izgubnih moči na posameznem MOSFET-u (4,4 W). Ker vsi štirje MOSFET-i delajo s cca. 50% vklopnim razmerjem, lahko omenjeno razliko moči enakomerno porazdelimo med vse štiri. 4 Sklepna misel V primerjavi z neposredno meritvijo izgub v dušilki enosmernega presmernika z merilnikom moči omogoča predlagani postopek posredne ocene izgub mnogo večjo merilno zanesljivost. Pasovna širina uporabljenega merilnika moči je zaradi priključitve v enosmerni tokokrog presmernika lahko mnogo manjša kot pri neposredni metodi. Pomanjkljivost posredne metode je njena časovna potratnost, ki pa ob pridobitvi dodatnega vpogleda v porazdelitev izgub na MOSFET-ih le ni tako pereča. Ob zapisanem velja izpostaviti, da v realni situaciji meritev izgub na neposredni način zaradi kompaktnosti naprave (slika 5a) ni izvedljiva. In-situ meritev oziroma ocena izgub v dušilki je neizvedljiva tudi s pogosteje uporabljenim kalorimetričnim postopkom [10]. Da bi se v obeh korakih predlaganega postopka zagotovile identične termične lastnosti, je brezpogojno da se vezi, ki povezujejo močnostno tiskanino in dušilko, vpne med »referenčno telo« konstantne temperature. S slednjim se prepreči, da bi se v drugem koraku predlagane metode dušilka dodatno segrevala s toplotnim tokom iz močnostne tiskanine. V ta namen smo med meritvijo obe vezi – na mestu, kjer so na sliki 5b razvidne tokovne klešče, stisnili med dve bakreni telesi. Zahvala Delo sta sofinancirali Republika Slovenija ter Evropska unija v sklopu projekta EVA4green (OP20.00362)ter Javna agencija za raziskovalno dejavnost Republike Slovenije v sklopu financiranja programske skupine (P2-0258). 167 Literatura [1] F. C. Lee and Q. Li, ‘High-Frequency Integrated Pointof-Load Converters: Overview’, IEEE Trans. Power Electron., vol. 28, no. 9, pp. 4127–4136, Sep. 2013. [2] F. Krismer and J. W. Kolar, ‘Accurate Power Loss Model Derivation of a High-Current Dual Active Bridge Converter for an Automotive Application’, IEEE Trans. Ind. Electron., vol. 57, no. 3, pp. 881–891, Mar. 2010. [3] ‘48-Volt-Bordnetz –Schlüsseltechnologie auf dem Weg zur Elektromobilität’. [Online]. Available: http://www.zvei.org/Publikationen/ZVEI-Leitfaden-48Volt-Bordnetz-2015.pdf. [4] ‘A Four-Phase High Voltage Conversion Ratio Bidirectional DC-DC Converter for Battery Applications’. [Online]. Available: http://www.mdpi.com/1996-1073/8/7/6399/htm. [5] D. Polenov, ‘DC/DC-Wandler zur Einbindung von Doppelschichtkondensatoren in das Fahrzeugenergiebordnetz’, 2009. [6] D. Christen, S. Tschannen, and J. Biela, ‘Highly efficient and compact DC-DC converter for ultra-fast charging of electric vehicles’, in Power Electronics and Motion Control Conference (EPE/PEMC), 2012 15th International, 2012, p. LS5d–3. [7] ‘Power Electronics System Integration for Electric and Hybrid Vehicles’. [Online]. Available: https://ar.scribd.com/document/243579850/5-1-SystemIntegration-Mz-pdf. [8] J. Muhlethaler, J. Biela, J. W. Kolar, and A. Ecklebe, ‘Core Losses Under the DC Bias Condition Based on Steinmetz Parameters’, IEEE Trans. Power Electron., vol. 27, no. 2, pp. 953–963, Feb. 2012. [9] W. Roshen, ‘Ferrite core loss for power magnetic components design’, IEEE Trans. Magn., vol. 27, no. 6, pp. 4407–4415, Nov. 1991. [10] F. W. Fuchs, J. Schröder, and B. Wittig, ‘State of the technology of power loss determination in power converters’, in 2013 15th European Conference on Power Electronics and Applications (EPE), 2013, pp. 1– 10. Testiranje močnostne elektronike s fantomsko obremenitvijo Mitja Nemec Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana, Slovenija E-pošta: mitja.nemec@fe.uni-lj.si Power electronics testing with phantom load Abstract. This paper evaluates how is the phantom load comparable to ordinary load in power electronics, with focus on AC current load of input capacitance. Two cases are considered. The first one is DC/DC buck converter and second one is dual three-phase drive. Based on simulation results we can state that phantom load can be comparable to ordinary load with proper setup of operational parameters. osredotočili na obremenitev enosmernega kondenzatorskega bloka z izmeničnim tokom, ki se lahko razlikuje. 2 Večvejni pretvornik navzdol Prvi primer uporabe paralelizacije predstavlja štiri-vejni pretvornik navzdol (Slika 1). V normalnem obratovalnem stanju so toki vse štirih vej enaki, tako da se moč enakomerno porazdeli. 1 Uvod Za povečevanje moči v napravah močnostne elektronike se je v preteklosti uporabljalo predvsem višanje obratovalne napetosti. V zadnjih letih pa se, kot posledica padajočih cen polprevodnikov, vse bolj pogosto uporablja paralelna vezava, ki ima poleg višanja moči tudi nekatere druge splošno poznane prednosti (redundanca, manjše pasivne komponente, …)[1]. Vendar pa naraščajoča moč predstavlja tudi problem, ko pride do testiranja. Tako v času razvoja, kot tudi, ko je naprava v proizvodnji. Slednje postaja vedno bolj pomembno saj na določenih področjih (avtomobilska industrija, …) naročniki zahtevajo, da se vsak kos v zadnjem koraku tudi polno preizkusi. Za testiranje treba zagotoviti tako vir kot tudi breme nazivne moči. Nezanemarljivo pa v tem primeru postane odvajanje energije iz bremena, ki je največkrat v obliki toplote saj so pasivna bremena bistveno cenejša od aktivnih bremen. Pri določenih izvedbah naprav močnostne elektronike, ki se poslužujejo paralelizacije pa lahko za testiranje uporabimo tako imenovano fantomsko vezavo. V tem primeru z nekoliko spremenjenim krmiljenjem oz. regulacijo dosežemo krožni pretok moči v napravi, ki po iznosu dosega nazivno moč, sam napajalnik pa mora tako zagotoviti le moč za pokrivanje izgub. Poleg enostavnosti, ki ga tak način preizkušanja prinese, je tudi meritev izgub v sistemu bolj točna, saj v primeru fantomske vezave le-te direktno merimo. Pri normalnem obratovanju pa izgube določimo preko meritve vhodne in izhodne moči. Pri visokih izkoristkih, ki jih današnji stikalni pretvorniki dosegajo, je taka meritev tehnično zelo zahtevna. V tem članku si bomo pogledali dva primera fantomske vezave in na podlagi simulacijskih rezultatov ovrednotili, kako verno se približata realni obremenitvi. Ker pri fantomski vezavi brez težav dosežemo enakovredno tokovno obremenitev, se bomo ERK'2019, Portorož, 168-171 168 Slika 1. Potek tokov pri pretvorniku navzdol Pri fantomskem obratovanju pa breme ni priklopljeno. Čez vse štiri veje sicer teče nazivni tok, vendar čez dve veji v eno smer, čez drugi dve veji pa v drugo smer (slika 2). V tem primeru imamo na voljo dodatno prostostno stopnjo, saj se tako razporeditev tokov lahko doseže pri poljubni izhodni napetosti. Slika 2. Potek tokov pri fantomskem obratovanju 2.1 Simulacijski rezultati Obremenitev vhodnega kondenzatorskega bloka z izmeničnim tokom pri večvejnem pretvorniku navzdol se spreminja z obremenitvijo. Za izbrani primer je efektivna vrednost izmeničnega toka prikazana na sliki 3. Dva lokalna minimuma nastopata v okolici točke, kjer je vklopno razmerje posamezne veje 25% oz 50%. V teh primerih se valovitosti posameznih vej skorajda izničijo. Slika 3. Efektivni tok kondenzatorskega bloka v odvisnosti od toka ene veje pri pretvorniku navzdol Fantomska obremenitev pa se lahko realizira na dva različna načina. V normalnem načinu so fazne zamaknitve posameznih vej 0°, 180°, 90° in 270°. Tako oba para vej delujeta protifazno in posledično je obremenitev kondenzatorskega bloka, ko veje delujejo v okolici 50% vklopnega razmerja (slika 4), bistveno nižja kot pri klasičnem pretvorniku navzdol. Tako je za primerljivost z realnim pretvornikom navzdol treba držati vklopno razmerje okoli 45% oziroma 55%. Slika 4. Efektivni tok kondenzatorskega bloka v odvisnosti od toka ene veje in faznega premika pri fantomskem obratovanju in normalni zamaknitvi proženja V kolikor uporabimo alternativno zamaknitev proženja (0°, 90°, 180° in 270°) pa je obremenitev kondenzatorskega bloka bistveno večja kot pri normalnem delovanju pretvornika navzdol (slika 5). Tako je ta način testiranja neprimeren s stališča primerljivost s klasičnim pretvornikom navzdol. 169 Slika 5. Efektivni tok kondenzatorskega bloka v odvisnosti od toka ene veje in faznega premika pri fantomskem obratovanju in alternativni zamaknitvi proženja Čeprav je ovrednotenje izkoristka s simulacijami praktično nemogoče, nas v tem primeru niso zanimale absolutne vrednosti, temveč samo primerljivost fantomske vezave s klasičnim pretvornikom navzdol tudi s stališča izkoristka. V simulacijah smo v tem primeru upoštevali samo ohmsko upornost stikalnih elementov ter dušilk. Vidimo, da se izkoristek klasičnega pretvornika navzdol giblje okoli 99,7% (slika 6). Slika 6. Izkoristek pretvornika navzdol v odvisnosti od toka ene veje Pri fantomski obremenitvi pa so izkoristki nekoliko nižji tako pri normalni kot pri alternativni zamaknitvi (sliki 7 in 8). Slika 7. Izkoristek v odvisnosti od toka ene veje in faznega premika pri fantomskem obratovanju in originalni zamaknitvi proženja S fantomsko vezavo se lahko testiranje nekoliko poenostavi, vendar pa se lahko poslužimo fantomske vezave samo v izjemnih primerih [3]. Vezava se namreč lahko uporabi samo pri n-krat trifaznih pogonih pri katerih so posamezni sistemi v električnem stroju magnetno razklopljeni in električna nesimetrija med njimi ne povzroča magnetne nesimetrije. Pri tej vezavi, v primeru dvojnega trifaznega stroja, en šestvejni pretvornik, namenjen za normalno obratovanje, logično razdelimo na dva trifazna pretvornika (slika 10). Tako en trifazni pretvornik moč dovaja v stroj, drugi pa moč s stroja odvaja. V tem primeru so tako pretvornik, kot tudi navitja stroja lahko tokovno obremenjeni z nazivnim tokom. Očitna prednost te vezave je v tem, da ni potrebe po mehanski sklopitvi stroja ter da so izgube v sistemu zmanjšane na polovico. Slika 10. Testiranje dvojnega trifaznega stroja s fantomsko vezavo 3.1 Slika 8. Izkoristek v odvisnosti od toka ene veje in faznega premika pri fantomskem obratovanju in alternativni zamaknitvi proženja Simulacijski rezultati Rezultati simulacij kažejo, da fantomska vezava nekoliko manj obremeni kondenzatorski blok (sliki 11 in 12). Tako je za primerljivo obratovanje zanimivo predvsem področje nizkih vrtilnih hitrosti. 3 Večsistemski pogon Preizkušanje električnih pogonov pa klasično poteka tako, da se pogon, ki ga preizkušamo, obremeni z električnim pogonom, ki je v generatorskem načinu delovanja (slika 9). Tako mora breme bodisi vračati energijo v omrežje, lahko pa jo vrne na enosmerni tokokrog [2]. V vsakem primeru pa pri testiranju pogonov nastopajo višje izgube, saj električni stroji ne dosegajo tako visokih izkoristkov kot pretvorniki močnostne elektronike. In v kolikor želimo testirati samo močnostno elektroniko pogona, je ta pristop nekoliko nepraktičen (rabimo dva vrteča se stroja) in tudi sprošča bistveno več toplote, kot je potrebno. Slika 9. Klasično testiranje pogona 170 Slika 11. Efektivni tok kondenzatorskega bloka dvojnega trifaznega pogona pri normalni obremenitvi. 4 Zaključek Pričujoči prispevek predstavlja začetno delo na področju raziskav primerljivosti uporabe fantomske vezave. V nadaljevanju bi vsekakor morali upoštevati tako preklopne izgube v močnostnih stikalih kot tudi vse ostale izgube (v kondenzatorjih, magnetne izgube v dušilkah oz v statorskem železu, …), da bi lahko bolj natančno ovrednotili primerljivost z običajnim preizkušanjem. Za dokončno potrditev primerljivosti pa bodo potrebne eksperimentalne meritve. Dodatek A - podatki pretvornika navzdol Slika 12. Efektivni tok kondenzatorskega bloka dvojnega trifaznega pogona pri fantomski obremenitvi. Ker pri električnih pogonih večina izgub nastopa v električnem stroju, spremenjeno delovanje močnostne elektronike pri enakih faznih tokih rezultira v popolnoma primerljivi odvisnosti izkoristka od obratovalne točke (sliki 13 in 14). Le to dejstvo naredi fantomsko vezavo privlačno za termično testiranje električnega celotnega pogona. Vhodna napetost Upornost bremena Induktivnost v posamezni veji Upornost dušilke Upornost stikalnega elementa Preklopna frekvenca 48 V 0,1  10 H 1 m 1 m 40 kHz Dodatek B – podatki električnega pogona Tabela 1. Podatki električnega pogona Statorska upornost Statorska induktivnost Nazivni navor Nazivna hitrost Napetost enosmernega tokokroga Preklopna frekvenca 0,1134  136 H 1.5 Nm 900 min-1 10 V 20 kHz Literatura Slika 13. Izkoristek trojnega trifaznega pogona pri normalni obremenitvi. Slika 14. Izkoristek trojnega trifaznega pogona pri fantomski obremenitvi. 171 [1] M. Nemec, “Tok enosmernega tokokroga pri večfaznih pogonih,” ERK 2018, 2018, p. str. 205-208. [2] H. Lavrič, L. Košir, K. Drobnič, and R. Fišer, “Možnosti testiranja električnih pogonskih sklopov na preizkuševališču z rekuperacijo energije,” ERK 2014, 2014, p. str. 201-204. [3] M. Zabaleta, E. Levi, and M. Jones, “A Novel Synthetic Loading Method for Multiple Three-Phase Winding Electric Machines,” IEEE Trans. Energy Convers., vol. 34, no. 1, pp. 70–78, Mar. 2019. Merilna tehnika Measurement Avtomatizacija stroja za kalibriranje sile z utežmi Tine Šubic1 , Miha Hiti2 , Gaber Begeš1 1 2 Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška 25, 1000 Ljubljana Laboratorij za metrologijo, Zavod za gradbeništvo Slovenije (ZAG), Dimičeva ulica 12, 1000 Ljubljana E-pošta: tine.subic@ijs.si Automation of a dead-weight force calibration machine The aim of the project was to develop a comprehensive software solution for manual and automatic control of force calibration device at Laboratory for metrology ZAG. The original machine had been modified and modernized by ZAG and is capable of loading the force measuring device up to 20 kN. The machine’s frequency controller software and its hardware interface were customized by us to allow precise positioning and automation guided by the computer. We used a special firmware, along with modified serial bus protocol for computer communication. We present the developed software, its capabilities and limitations as well as the script system implemented for declaring command sequences that allow execution of complex or long-running tests. Results of full load and unload stepping test are shown, to provide an example of possible test and its uniform repeatability. moderniziral za svoje potrebe [3]. Stroj v trenutni konfiguraciji omogoča obremenjevanje merilnika napetostnega razmerja v natezni in tlačni smeri od 250 N do 20 kN. V tem območju je na voljo 18 korakov s kombinacijami uteži 250 N, 500 N, 1000 N in 2000 N. Stroj za doseg popolne obremenitve 20 kN potrebuje 245 mm premika. Pomik uteži stroja poganja električni motor z reduktorjem, ki ga krmili frekvenčni krmilnik. V prvotnem načinu delovanja je stroj podpiral zgolj krmiljenje hitrosti in pozicije preko nadzornega vmesnika s fizičnimi gumbi. 2.1 Komunikacijski vmesnik Za komunikacijo z računalnikom smo uporabili vmesnik RS485 (slika 2) z USB pretvornikom, ki je vgrajen na frekvenčni krmilnik. Preko tega vhoda smo komunicirali s strojno-programskim paketom POZPRO podjetja PS Logatec d.o.o. Naloženi programski paket ponuja ročno in avtomatsko pozicioniranje stroja na podlagi gumbov in poslanih ukazov. Izbrali smo način upravljanja s 16-bitnimi ukazi, ki 1 Uvod uporablja Modbus RTU [2] protokol za prenos podatkov. Namen projekta je bil razviti programski vmesnik za pol- V tem načinu lahko parametriramo poljuben register na avtomatsko in avtomatsko krmiljenje kalibracijskega stroja krmilniku preko štiri- ali pet-mestnega naslova in 16-bitne za neposredno obremenjevanje z utežmi. Kalibracijske vrednosti. Ta model komuniciranja je primarno namenmeritve s strojem so se do sedaj izvajale zgolj z ročnim jen PLC krmilnikom, a ga lahko z uporabo ustreznih proodčitavanjem in premikanjem stroja preko fizičnega kr- gramskih knjižnic enostavno emuliramo na osebnem račumilnega vmesnika. Naš cilj je bil razviti enovit sistem za nalniku. Pred uporabo smo vrednosti registrov testirali s avtomatsko premikanje stroja in odčitavanje meritev na pomočjo programa CTSoft [7] (slika 3), ki sicer omogoča podlagi vnaprej definiranih zaporedij ukazov, ki bi odstranil nadzor nad vsebino registrov, spremljanje stanja in razhroščepotrebo po človekovem posredovanju. Na ta način bi vanje delovanja frekvenčnega krmilnika. lahko Zavod za gradbeništvo (ZAG) v prihodnosti izvaZa krmiljenje samodejnega pozicioniranja smo potrejal kompleksnejše in daljše kalibracijske postopke, hkrati bovali 7 registrov, opisanih v tabeli 2.1. pa bi bili ti bolj ponovljivi. Tekom projekta smo pripravili uporabniku prijazen Table 1: Uporabljeni registri in njihova vsebina. grafični vmesnik, ki omogoča zajem podatkov z merilNaslov Vsebina registra nika, nadzor nad parametri stroja (hitrost gibanja, ločljivost), M20.21 Resolucija v številu enot/vrtljaj motorja interaktivno krmiljenje in avtomatizacijo preko preprostega M20.31 Ukazni biti za proženje premikov sistema skript za definicijo zaporedij ukazov. M20.32 Želena pozicija motorja M20.33 Hitrost v enotah/sekundo 2 Kalibracijski stroj z neposrednim obreM20.34 Informacije o stanju in napakah menjevanjem M20.35 Trenutna pozicija naprave Za obremenjevanje merilnikov smo uporabili kalibraciM20.35 Napaka regulatorja jski stroj z neposrednim obremenjevanjem za sile do 20 kN, (slika 1) ki ga je ZAG [4] pridobil pred časom in Pri nastavljanju želene pozicije stroja preko protokola ERK'2019, Portorož, 173-176 173 Figure 3: Program CTSoft za pregled in konfiguracijo frekvenčnega krmilnika. del standardnega kalibracijskega testa tudi polna obremenitev in razbremenitev, kjer bo stroj izvedel cel pomik za 245 mm naenkrat, smo take pomike programsko razdelili na zaporedje krajših premikov, kar nam zagotovi predvidljivo in pravilno delovanje pri poljubno dolgih premikih. 3 Figure 1: Stroj z neposrednim obremenjevanjem na uteži za sile do 20 kN. Merilni inštrument Za zajem meritev napetosti na kalibriranem merilniku smo uporabili merilni inštrument DMP41 [5]. Nanj priključimo merilnik sile ki ga želimo kalibrirati, zajem podatkov pa opravljamo preko serijskega vhoda na osebnem računalniku. Ker naprava podpira standardni nabor SCPI [6] ukazov, lahko napravo vnaprej programsko konfiguriramo z ustreznimi vzorčnimi frekvencami in filtri. Figure 2: Ožičenje vmesnika RS485. Figure 4: Merilni inštrument DMP41 za zajem vrednosti. Modbus pa smo naleteli tudi na omejitev samega protokola, ki temelji na 16-bitnih podatkovnih paketih. Če želimo stroj premakniti za več kot 32768 enot (215 , prvi bit je uporabljen za predznak smeri) z enim samim ukazom, dosežemo preliv števila in nepredvideno obnašanje stroja. Ker želimo s strojem upravljati neomejeno in ker je 174 4 Razvoj grafičnega vmesnika za krmiljenje Grafični uporabniški vmesnik smo razvili s programskim jezikom C# v okolju Microsoft Visual Studio [1]. Za grafične elemente smo uporabili vgrajeni programski paket WindowsForms, za komunikacijo z napravami pa knjižnico EasyModbus RTU, ki omogoča emulacijo protokola Modbus CT-RTU za pisanje in branje registrov frekvenčnega krmilnika. Razviti vmesnik omogoča ločeni serijski povezavi s frekvenčnim krmilnikom in merilnim instrumentom DMP41 (slika 5). Na ta način lahko poleg krmiljenja stroja izvajamo tudi odčitavanje podatkov pri različnih obremenitvah in hitrosti gibanja. Poleg tega se meritve med izvajanjem zapisujejo v datoteko za kasnejšo obdelavo. Z vnaprej definiranim zaporedjem ukazov lahko uporabnik avtomatizira postopek obremenjevanja in razbremenjevanja, program pa sam poskrbi za natančno izvedbo. Zaporedje ukazov lahko sestavimo preko uporabniškega vmesnika ali napišemo kot besedilno datoteko, ki jo naložimo v program pred izvajanjem. Primer takega zaporedja ukazov, naloženega v naš program je viden na sliki (6). Figure 5: Grafični vmesnik za krmiljenje motorja in izvajanje merilnih postopkov. Figure 6: Primer zaporedja ukazov za merilni postopek 5 Meritve 4.1 Osnovno krmiljenje Najprej smo podprli osnovno parametriranje stroja in ročno 5.1 Osnovni test premikanje. Preko gumbov v uporabniškem vmesniku Za testiranje smo pripravili zaporedje ukazov, s katerimi program krmili stroj skozi polno obremenitev in razbrelahko opravljamo naslednje operacije: menitev povezanega merilnika sile. Na sliki (7) je prikazan 1. Reset, ki ustavi stroj med gibanjem. graf obremenjevanja do 20 kN in sledečega razbremenjevanja do 0 kN. Uporabili smo hitrost 400 enot/sekundo 2. Nastavitev resolucije motorja, ki definira število enot pri resoluciji 50 enot/obrat, s katero traja izvedba testa 20 enkoderja na eno rotacijo motorja. minut. Postopek je tudi enostavno ponovljiv, saj lahko 3. Nastavitev hitrosti motorja, ki definira za koliko zaporedje ukazov izvedemo poljubno mnogokrat. enot se motor zasuka v 1 sekundi. 4. Izvedba premika stroja v milimetrih ali enotah (Eksper3.78 mm imentalno določeno: 1000 enot ). 5. Ročni ukaz za premik stroja navzgor ali navzdol do ustavitve ali limitnega stikala. 4.2 Postopkovno krmiljenje Ker kalibracijski postopki pogosto potrebujejo večje število ponovitev stopenj obremenitve in lahko trajajo dolgo časa, smo v okviru projekta želeli implementirati možnost, da uporabnik vnaprej definira zaporedje ukazov, ki jih bo stroj izvedel brez posredovanja človeka. Najprej smo definirali preprost sistem skriptnih ukazov, ki sprožijo eno od Figure 7: Graf izvedenih meritev ob stopničastem obremenjetreh operacij: vanju in razbremenjevanju vseh 18 stopenj. 1. Čakaj ustrezno število sekund. Na sliki (8) je prikazana razlika signala merilnika sile med razbremenjevanjem in obremenjevanjem, za vsako od posameznih stopenj obremenitve. Posebej izstopa razlika pri obremenitvi 16 kN, ki je najverjetneje posledica neustaljene vrednosti ob meritvah, saj smo zaradi časovne omejenosti v pričujočih testih uporabljali časovne zamike 10 - 15 sekund. 2. Izvedi meritev. 3. Premakni se na ustrezno stopnjo obremenitve. 175 Figure 8: Prikaz razlike v signalu med obremenjevanjem in razbremenjevanjem na posamezni obremenitveni stopnici. 5.2 Test delne obremenitve Pripravili smo tudi test, v katerem smo stroj obremenili do maksimalne obremenitve, ga razbremenili do polovice (10 kN) in nato ponovno obremenili do 20 kN (Slika 9). Tak tip testa je bil do sedaj težje izvedljiv za večje število ponovitev, saj zahteva dolgotrajno pozornost človeka. Slika 10 prikazuje razlike v izmerjenih signalih merilnika pri dveh ponovitvah testa. Kot že na sliki 8, opazimo visoko vrednost razlike pri obremenitvi 16 kN, kar nakazuje potencialne težave pri referenčnem pozicioniranju na tej stopnji, saj je utež verjetno v stiku z drugimi utežmi. Figure 10: Razlike v napetosti med dvema posameznima testoma. stroja tako ponuja dodatne možnosti za testiranje merilnikov sile z daljšimi in kompleksnejšimi testi. Možne so še nadaljnje nadgradnje, saj krmilnik motorja omogoča nadzor nad velikim številom parametrov. V kombinaciji z obstoječim senzorjem, ki zaznava stik med utežmi stroja, bi lahko programu omogočili samodejno kalibracijo optimalnih premikov za posamezno stopnjo obremenitve, kar bi odstranilo potrebo po zanašanju na vnaprej definirane vrednosti položaja stroja pri posamezni stopnji. Poleg tega bi program lahko omogočal nadzor nad rampo pospeševanja in zaviranja, saj je v tem trenutku to mogoče izvesti le preko krmilne plošče na frekvenčnem krmilniku. References [1] Visual Studio IDE [Online]. https://visualstudio.microsoft.com/. 10.1.2019]. Dosegljivo: [Dostopano: [2] Protokol MODBUS CT-RTU [Online]. Dosegljivo: https://www.rtaautomation.com/technologies/modbusrtu/. [Dostopano: 10.1.2019]. [3] M. Hiti, "Razvoj etalonskih strojev za kalibriranje meril sile," ERK 2017, Portorož, 2017. [4] Zavod za gradbeništvo [Online]. Dosegljivo: http://www.zag.si/si/. [Dostopano: 10.1.2019]. Figure 9: Meritve napestosti za test z vmesno polovično obremenitvijo. [5] Merilni inštrument DMP41 [Online]. Dosegljivo: https://www.hbm.com/en/3971/dmp41-highestprecision-measuring-instrument/. [Dostopano: 10.1.2019]. S programom in vmesnikom za generiranje ukazov, ki smo ga razvili, lahko stroj enostavno umerimo na nove vrednosti in postopek merjenja ponovimo, saj nam av[6] Referenca SCPI ukazov [Online]. Dosegljivo: tomatizacija sistema daje možnost, da izločimo vpliv človeškega https://www.rohde-schwarz.com/pk/driverfaktorja na kompleksne postopke premikov stroja in meritev. pages/remote-control/remote-programmingenvironments_231250.html. [Dostopano: 6 Zaključek 10.1.2019]. V sklopu projekta smo razvili celovito programsko rešitev [7] Program CTSoft [Online]. Dosegljivo: za ročno in avtomatsko krmiljenje kalibracijskega stroja. htthttp://acim.nidec.com/en-us/drives/controlProgram omogoča zajem podatkov za kasnejšo analizo in techniques/products/software/commissioning/ctsoft. definiranje zaporedij ukazov, ki zagotavljajo ponovljivost [Dostopano: 10.1.2019]. testa brez posredovanja človeka. Nova funkcionalnost 176 Vpliv velikosti vira referenčnih sevalnih termometrov v LMK Igor Pušnik 1 Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška cesta 25, 1000 Ljubljana E-pošta: igor.pusnik@fe.uni-lj.si 1 Size-of-source effect of reference radiation thermometers in LMK Abstract. For measurements with radiation thermometers, it is very important to take into account the factors that influence the measurement uncertainty. One of them is the phenomenon called the size-of-source effect (SSE). This occurs due to irregularities in the optical system of the measuring instrument, which can cause a higher or lower temperature reading of a measured object, as it really is. This is due to radiation having a source outside the nominal size of the measured area. There are two commonly used methods for determining this effect, namely indirect and direct method. The latter is more appropriate for radiation thermometers with a lower resolution and a temperature output signal. In this case, calibration furnaces (blackbodies) are used as a source of radiation, and with the corresponding apertures we reduce the size-of-source. Thus, we measure the response of a radiation thermometer at different sizes of the source. The nominal size-of-source is at the specified distance the minimum required measurement surface, where it is possible to measure the temperature with a radiation thermometer. Knowing the size-of-source effect of a radiation thermometer is very important, as this allows adjustment of the measurement conditions for the correct performance of measurements. 1 Uvod Sevalni termometri predstavljajo termometre za realizacijo temperaturne lestvice ITS-90 nad strdiščem srebra (961,78 ◦ C) 1. Sevalni termometri ali pirometri spadajo v skupino termometrov, ki z detektorjem zaznavajo toplotno sevanje in ga pretvorijo v električni signal. Izkoriščajo dejstvo, da vsi objekti s temperaturo nad absolutno ničlo (0 K) oddajajo toploto v obliki elektromagnetnega sevanja. Največje prednosti pirometrov so brez kontaktno merjenje, merjenje premikajočih se objektov ter merjenje zelo visokih temperatur. Najpogosteje so uporabljeni v industriji, dostopne pa so tudi razne cenejše izvedbe, kot so prenosni baterijski sevalni termometri. Pri kalibracijah referenčnih sevalnih termometrov za različna območja so pogosto uporabljena črna telesa, z različnimi dimenzijami odprtin. Zato je pomembno poznati vse morebitne dejavnike, ki lahko vplivajo na točnost meritev. Z različnimi oddaljenostmi pirometra do črnega telesa lahko dobimo različne rezultate meritev. Zato je pomembno poznati podatke o najmanjši oziroma nazivni velikosti vira ter ERK'2019, Portorož, 177-180 177 karakteristiko vpliva velikosti vira za določen sevalni termometer. Vpliv velikosti vira smo izmerili in izračunali za dva sevalna termometra proizvajalca Heitronics, tipa TRT II in KT 19.01 II, ki se v Laboratoriju za metrologijo in kakovost uporabljata kot referenčna sevalna termometra. Pri izvedbi meritev temperature smo si pomagali z grafoma najmanjšega premera merjene površine (tarče), kot ju je podal proizvajalec za posamezen pirometer Cilj je bil ugotoviti, pri kateri velikosti vira za posamezen pirometer, pri različnih oddaljenostih od vira in temperaturi, je izvedba meritev še dovolj točna in je nižja izmerjena temperatura zaradi tega vpliva še sprejemljiva za določen namen merjenja. Z manjšanjem merjene površine se namreč zmanjšuje točnost meritve, ker detektor sevalnega termometra ne dobi zadostnega signala. Razlogi poleg majhne velikosti vira so še ovire na prenosni poti (transmisivnost atmosfere, običajno izgube sevanja) ter neidealnosti optičnega sistema pirometra (odklon, lom, uklon). 2 Oprema Vpliv velikosti vira je bil določen po direktni metodi za referenčna sevalna termometra Heitronics KT 19.01 II in Heitronics TRT II. Uporabljena oprema za izvedbo meritev je poleg pirometrov obsegala: - kalibracijske temperaturne kopeli in peči s črnimi telesi, uporabljenih je bilo šest kopeli in peči za različna temperaturna območja, - ohmmeter HP 34420A in referenčne uporovne termometre kalibracijskih peči, - aluminijaste zaslonke debeline 2 mm in s premerom odprtine od 8,8 mm do 60 mm, pobarvane s črno barvo z visoko emisivnostjo, - nosilec zaslonk z vodnim hlajenjem na 23 °C, - računalnik s programskim okoljem LabVIEW za zajemanje in obdelavo podatkov (temperaturnih meritev). Tabela 1. Specifikacije termometra Heitronics KT 19.01 II merilno območje spektralna odzivnost najmanjša velikost tarče ločljivost detektor optika 350 ◦C - 2000 ◦C 2 − 2,7 µm 22 pri 733 mm 0,1 do 1000 ◦C, 1 nad 1000 ◦C piroelektrični leča S922 (kalcijev fluroid), detektor tipa B Iz projekcij razdalj in premerov na sliki 3 se lahko izpelje razmerje 𝐷+𝑆 𝐷+𝐵 [ ]=[ ] (1) 𝑠 Slika 1: Podatki o najmanjšem premeru tarče za Heitronics KT19.01 II Tabela 2. Specifikacije termometra Heitronics TRT II merilno območje spektralna odzivnost najmanjša velikost tarče ločljivost detektor optika - 50 ◦C - 300 ◦C; 150 ◦C - 1000 ◦C 8 – 14 µm; 3,9 µm 6,8 pri 380 mm; 5,6 pri 360 mm 0,01 do 100 ◦C, 0,1 nad 100 ◦C piroelektrični leča S977AR (cinkov selenid), detektor tipa A Slika 2: Podatki o najmanjšem premeru tarče za Heitronics TRT II 3 Meritve Meritve smo izvedli pri različnih oddaljenostih od roba črnega telesa do leče pirometra (razdalja s) glede na podatke o vidnem polju oz. najmanjši velikosti tarče pri določeni razdalji instrumenta (field of view - grafa na sliki 1 in 2). Na sliki 3 je predstavljena postavitev pirometra pri izvajanju meritev. Slika 3: Postavitev pirometra glede na črno telo 178 𝑏 kjer je D premer leče pirometra, S navidezna tarča na odprtini črnega telesa, B premer zaslonke, ki predstavlja tarčo, s razdalja od leče do črnega telesa in b razdalja od leče do zaslonke. Iz tega lahko sklepamo, da morajo biti zaslonke čim bližje črnemu telesu, s tem dosežemo manjšo navidezno tarčo S in merimo sevanje, ki izhaja le iz črnega telesa in ne merimo površine okoli njega. Pri meritvah stojala z zaslonkami ni bilo mogoče povsem približati črnemu telesu zaradi stojala peči in pri eni od peči tudi zaradi referenčnega termometra, ki se je nahajal na sprednji strani pod njeno odprtino (slika 4). Pri ostalih pečeh so se le-ti nahajali v zadnjem delu, na koncu črnega telesa. Pri temperaturah 50 °C, 150 °C in do 250 °C se uporabljajo tri kalibracijske kopeli enakih dimenzij, s premerom odprtine črnega telesa 60 mm in z dolžino votline 400 mm. Pri 500 °C se uporablja kalibracijska peč s premerom odprtine črnega telesa 55 mm in z dolžino votline 500 mm. Pri 750 °C in 1000 °C se uporablja kalibracijska peč s premerom odprtine črnega telesa 40 mm in z dolžino votline 500 mm. Meritve so se izvajale s pomočjo programske opreme, narejene v okolju LabVIEW. Slika 4: Merilno mesto v LMK (črno telo v ozadju, pred njim zaslonka s hlajenjem in pirometer na stojalu) Pri direktni metodi merjenja vpliva velikosti vira 2 je instrument fokusiran na odprtino zaslonke, ki se nahaja pred stabilnim virom sevanja, običajno črnim telesom, in merimo signal detektorja pri različnih polmerih odprtine zaslonke. Vpliv velikosti vira pri nekem polmeru r je določen z razmerjem med signalom pri tem polmeru S(r,L) in signalom, ki bi ga dobili pri neskončnem polmeru S(∞,L). Ker v praksi ne moremo realizirati neskončnega polmera, merimo vpliv velikosti vira kot funkcijo polmera vira sevanja na nekem omejenem območju rmin  r  rmax, kjer rmax najpogosteje predstavlja polmer odprtine črnega telesa. Vpliv velikosti vira tako izrazimo z razmerjem med signalom detektorja pri polmeru r in signalom pri največjem polmeru rmax 𝜎𝑆 (𝑟, 𝑟max ) = 𝜎𝑆 (𝑟) 𝜎𝑆 (𝑟𝑚𝑎𝑥 ) = 𝑆(𝑟,𝐿) 𝑆(𝑟𝑚𝑎𝑥 ,𝐿) (2) kjer L predstavlja sevanje črnega telesa v skladu s Planckovim zakonom L , b (λ, T ) = M λ, b  = c1 λ5  c2   e λT − 1   −1 velikosti vira pri približno enaki velikosti tarče, zaradi zelo različnih padcev temperatur pri meritvah pa se karakteristike od tega premera dalje precej razlikujejo, tudi za 5 %. Na sliki 7 je predstavljena karakteristika z večjo ločljivostjo, preden začne vrednost SSE padati pod kritično mejo 95 %. (3) kjer sta c1 =2hc02 =1,191110-16 W/sr in c2 = hc0/k = 0,014388 mK prva in druga sevalna konstanta. 4 Rezultati 4.1 Heitronics KT 19.01 II Vpliv velikosti vira je bil merjen pri temperaturah 500 °C, 750 °C 1000 °C in 1300 °C. Najmanjša nazivna velikost vira merjenja znaša 22 mm pri oddaljenosti 733 mm. Na sliki 5 je prikazana karakteristika vpliva velikosti vira pri temperaturi 500 °C. Uporabljena je bila kalibracijska peč s premerom odprtine 50 mm in z dolžino votline 500 mm. Pri meritvah je bil rob leče od roba črnega telesa oddaljen 415 mm, od roba zaslonk pa 165 mm. Pri tej razdalji med zaslonkami in lečo je znašal premer najmanjše tarče za pravilno meritev temperature 29 mm. Z nadaljevanjem meritev z zaslonkami pod nazivno velikostjo vira temperatura pade, saj vpadno sevanje na detektor ne izhaja več samo iz votline črnega telesa. Slika 6: Karakteristika vpliva velikosti vira pri temperaturah od 700 °C do 1300 °C, do zaslonke s premerom 13,9 mm. Slika 7: Karakteristika vpliva velikosti vira pri temperaturah od 700 °C do 1300 °C, do zaslonke s premerom 25 mm. Slika 5: Karakteristika vpliva velikosti vira pri 500 °C, do zaslonke s premerom 16 mm. Za merjenje vpliva velikosti vira pri temperaturah 750 °C, in 1000 °C sta bili uporabljeni dve kalibracijski peči (proizvajalca ACT in Land), za 1300 °C pa samo peč Land. Pri črnem telesu ACT je bila temperatura merjena na razdaljah 485 mm in 730 mm, pri Landu pa na razdaljah 430 mm in 730mm. Oddaljenost zaslonk od leče pirometra je pri ACT znašala 230 mm in 475 mm, pri Landu pa 230 mm in 530 mm. Pri ACT je bil za merjenje referenčne temperature uporabljen uporovni termometer, pri drugi pa kar isti pirometer, le da so meritve te temperature potekale brez zaslonk. Na sliki 6 je prikazana karakteristika vpliva velikosti vira pri razdalji od roba leče od črnega telesa 730 mm, kjer so združene meritve za obe kalibracijski peči. Glede na razdalje leče do zaslonk je znašal najmanjši premer tarče pri peči ACT 24 mm, pri Land pa 23 mm. Iz grafa je razvidno, da se po zmanjšanju premera zaslonk pod 25 mm pojavi vpliv 179 4.1 Heitronics TRT II Vpliv velikosti vira je bil merjen pri temperaturah 50 °C, 150 °C, 250 °C, 500 °C, 750 °C in 1000 °C. Oddaljenost leče sevalnega termometra od črnega telesa je bila prilagojena glede na dimenzije peči in prostorske zmožnosti. Pri tem sta bili upoštevani dve različni območji valovnih dolžin glede na temperaturno območje in izmerjena temperatura pri določenem premeru zaslonke. V območju d o 300 °C ima sevalni termometer n a j m a n j š i premer tarče 6 ,8 mm na razdalji 380 mm. Pri vseh meritvah je bila emisivnost sevalnega termometra nastavljena na 1. Na sliki 8 so prikazane meritve vpliva velikosti vira med 50 °C in 250 °C pri razdalji od leče do črnega telesa s=175 mm pri premeru odprtine črnega telesa S=60 mm. Razdalja stojala z zaslonkami od črnega telesa je znašala 130 mm, torej je bila leča pirometra od vira (zaslonke) oddaljena 45 mm. Pri tej razdalji je bila odčitana velikost najmanjšega vira iz grafa najmanjšega vidnega polja za ta pirometer, ki pri tej razdalji znašala 45 mm. Iz tega podatka lahko predvidevamo, da se bo signal pirometra znižal po vstavitvah zaslonk m a n j š i h od 45 mm. Izkazalo se je, da s e pri zaslonki s premerom 40 mm temperatura še ne zniža, pri naslednji zaslonki d=30 mm pa se temperatura zniža za 10 °C. LMK smo želeli ugotoviti, če specifikacije proizvajalca v zvezi z najmanjšo velikostjo merjene površine (imenovane tudi tarče ali vira) veljajo in je s tem vpliv velikosti vira pri umerjanju v primerjavi z našimi črnimi telesi zanemarljiv. Meritve in izračuni so pokazali, da je vpliv velikosti vira za oba referenčna sevalna termometra v LMK pri umerjanju v primerjavi s črnimi telesi, katerih premer odprtine je vsaj 40 mm, zanemarljiv. Slika 8: Karakteristika vpliva velikosti vira pri temperaturah od 50 °C do 250 °C, do zaslonke s premerom 40 mm. Iz grafa na sliki 9 vidimo, da pri krajši razdalji merjenja pride do večjega in bolj nenadnega padca temperature, medtem ko pri daljši razdalji (npr. s=500 mm) pride do manjšega padca temperature, vendar ta začne sistematično padati, ko zmanjšujemo premer zaslonk. Tako pri razdalji s=295 mm in zaslonki d=30 mm temperatura pade za 29,2 ° C , pri razdalji s=500 mm in zaslonki d=16 mm pa temperatura pade za 4,6 °C. Slika 9: Karakteristika vpliva velikosti vira pri 500 °C, do zaslonke s premerom 16 mm. Iz grafa pri meritvah na razdalji s=560 mm in 570 mm (slika 10) in iz podatkov lahko ponovno sklepamo, da se vpliv velikosti vira pojavi kmalu za tem, ko preidemo na manjše zaslonke od najmanjše nazivne velikosti vira. Karakteristika je odvisna od oddaljenosti pirometra do zaslonke (s-b), v primeru meritev s pečjo Land je ta oddaljenost blizu najmanjše nazivne velikosti vira, torej se pojavi vpliv velikosti vira pri manjših premerih zaslonk. Slika 10: Karakteristika vpliva velikosti vira za pirometer Heitronics TRT II pri temperaturah 750 °C in 1000 °C, pri dveh različnih črnih telesih. 5 Zaključek Vpliv velikosti vira je pomemben prispevek k negotovosti pri merjenju in umerjanju sevalnih termometrov. Za oba referenčna sevalna termometra v 180 Literatura [1] Preston-Thomas H., Bloembergen P., Quinn T. J., The supplementary information for the international temperature scale of 1990, Bureau International des poids et mesures, Pavillon de Breteuil, F-92310 Sevres, France, 1990 [2] I. Pušnik, G. Grgić in J. Drnovšek, “System for the determination of the size-of-source effect of radiation thermometers with the direct reading of temperature,” Measurement Science and Technology, vol. 17, no. 6, str. 1330, 2006. Analiza vpliva zamenjave merilnih ojačevalnikov na rezultat kalibracije pretvornika sile Miha Hiti Laboratorij za metrologijo, Zavod za gradbeništvo Slovenije (ZAG), Dimičeva ulica 12, 1000 Ljubljana E-pošta: miha.hiti@zag.si Analysis of exchanging of measuring amplifiers on force transducer calibration results Abstract. The paper presents the influence of different measuring amplifiers on the calibration result of the same force transducer. The calibrations of a 1000 N force transducer of type HBM Z30A were performed on a 1000 N deadweight force calibration machine of ZAG which offers 0,01 % expanded calibration uncertainty and force generation repeatability better than 0,005 %. For the analysis, high precision measuring amplifiers of following types were employed: carrier frequency 225 Hz (HBM DMP41, HBM ML38B and HBM DK38), carrier frequency 4800 Hz (HBM ML55B) and DC excitation type (HBM ML10B). Results are presented for the calibration of transducer-amplifier measuring chain, and for additional evaluation of contribution of replacing the measuring amplifier by calibration of each measuring amplifier using an HBM K3608 calibrator unit. nivojev napajalnih napetosti na rezultat lahko vpliva tudi frekvenca vzbujanja mostiča pretvornika [1]. V prispevku je predstavljena primerjava kalibracije merilnega pretvornika za silo z različnimi tipi merilnih ojačevalnikov z različnimi frekvencami vzbujanja mostiča z vidika primerljivosti kalibracijskih vrednosti. 2 Merilna oprema Kalibracije pretvornika so bile izvedene na primarnem kalibracijske stroju za silo z neposrednim obremenjevanjem na uteži do 1000 N, slika 1. Stroj predstavlja enega od referenčnih strojev, ki so na voljo v Laboratoriju za metrologijo ZAG za realizacijo sile v območju od 0,1 N do 2000 kN [2]. Pretvornik sile Jarem 10 N 1 Uvod Pri merjenju mehanskih veličin kot so sila, navor in tlak, najpogosteje uporabljamo pretvornike z uporovnimi lističi v kombinaciji z merilnimi ojačevalniki, ki zagotovijo ustrezno električno vzbujanje uporovnega mostiča ter zajemajo izhodno napetost, ki je sorazmerna z vnosom mehanske obremenitve. Pri tem uporabljamo različne tipe merilnih ojačevalnikov z različnimi napetostmi in frekvencami vzbujanja. Menjava pretvornika in merilnega ojačevalnika z vidika električne priključitve običajno ne predstavlja večjih težav. Tako lahko isti pretvornik enostavno priključimo na različne tipe merilnih ojačevalnikov, kar v praksi prinaša mnogo praktičnih prednosti, kot so uporaba istih pretvornikov s preciznimi laboratorijskimi stacionarnimi ojačevalniki in tudi z enostavnimi prenosnimi ročnimi merilnimi ojačevalniki, poljubno kombiniranje nabora pretvornikov z naborom ojačevalnikov, kalibracija industrijskih pretvornikov v kalibracijskih laboratorijih brez potrebe demontaže pripadajočih merilnih ojačevalnikov in drugo. Vendar pa moramo pri menjavi merilnih ojačevalnikov zagotoviti ustrezno meroslovno sledljivost s kalibracijo vsakega merilnega ojačevalnika in hkrati upoštevati možen vpliv različnih tipov ojačevalnikov na rezultat meritev, kjer poleg različnih ERK'2019, Portorož, 181-184 181 Set uteži: 5x 10 N 2x 20 N 4x 50 N 3x 100 N 2x 200 N Slika 1. Kalibracija pretvornika na referenčnem kalibracijskem stroju za silo z neposrednim obremenjevanjem z utežmi za območje 10 N do 1000 N Območje referenčne sile, ki jo stroj lahko zagotovi, je od 10 N do 1000 N za natezno in tlačno obremenjevanje z razširjeno merilno negotovostjo sile 0,01 %, pri čemer pa je ponovljivost generirane sile stroja boljša od 0,005 %. Sledljivost generirane sile je zagotovljena preko kalibracije mase uteži pri Uradu Republike Slovenije za meroslovje in meritvi težnostnega pospeška na lokaciji stroja (gLOC=9,8061621 ms-2 ± 0,0000003 ms-2), ki so ga določili predstavniki Fakultete za gradbeništvo s prenosom vrednosti z relativnim gravimetrom z nacionalne gravimetrične mreže. Pretvornik sile, ki je bil vključen v merilno verigo, je precizni pretvornik sile z uporovnimi lističi proizvajalca HBM, tip Z30A, nazivne obremenitve 1000 N in izhodnim signalom 2 mV/V pri nazivni obremenitvi. Čeprav merilni pretvornik omogoča obremenjevanje tako v tlačni kot v natezni smeri, so bile vse meritve izvedene z obremenjevanjem izključno v tlačni smeri, brez vmesnega obremenjevanja pretvornika v natezni smeri, kar bi lahko negativno vplivalo na rezultate meritev. Merilni ojačevalniki, na katere je bil priključen pretvornik sile, so bili izbrani iz nabora merilnih ojačevalnikov, ki se uporabljajo pri kalibriranju v Laboratoriju za metrologijo ZAG. V analizo so bili vključeni različni merilni ojačevalniki z napetostjo vzbujanja mostiča 5 V in nazivnim območjem do 2,5 mV/V. Uporabljeni merilni ojačevalnik so bili: - merilni ojačevalnik HBM DMP41 z izmenično frekvenco vzbujanja 225 Hz in ločljivostjo 1 nV/V - merilni ojačevalni modul HBM ML38B v sistemu HBM MGCplus z izmenično frekvenco n vzbujanja 225 Hz in ločljivostjo 1 nV/V, - merilni ojačevalni HBM DK38 z izmenično frekvenco vzbujanja 225 Hz in ločljivostjo 10 nV/V, - merilni ojačevalni modul HBM ML55B v sistemu HBM MGCplus z izmenično frekvenco vzbujanja 4800 Hz in ločljivostjo 10 nV/V, - merilni ojačevalni modul HBM ML10B v sistemu HBM MGCplus z enosmerno frekvenco vzbujanja in ločljivostjo 10 nV/V. Na ojačevalnikih so bile izbrane ustrezne nastavitve filtra za stabilno odčitavanje vrednosti (filter 0,5 Hz Bessel, ali primerljivo, kjer so ojačevalnik to omogočali). Vsi merilni ojačevalniki so bili pred meritvami kalibrirani. Za kalibracijo merilnih ojačevalnikov je bila uporabljena kalibracijska enota HBM K3608, ki omogoča kalibriranje merilnih ojačevalnikov z enosmerno napetostjo vzbujanja (DC) in izmenično napetostjo vzbujanja do 5 kHz. Enota je bila kalibrirana za območje 2 mV/V za DC vzbujanje in frekvenco vzbujanja 225 Hz in 4800 Hz. 182 3 Kalibracijski postopek Postopek kalibracije pretvornika temelji na mednarodno veljavnem standardu za kalibriranje pretvornikov sile ISO 376 [3], pri čemer so bile meritve izvedene le pri začetni rotaciji pretvornika. Pri vseh meritvah je bil pretvornik sile nameščen v kalibracijski stroj v istem položaju, da bi izločili čim več morebitnih mehanskih vplivov na spremembe izmerjenih vrednosti sile. Po predobremenitvi do nazivne vrednosti je sledilo osem kalibracijskih točk od 100 N do 1000 N. Za vsak ojačevalnik je bila kalibracija izvedena z dvema serijama naraščajočih vrednosti sile. Izmerjene vrednosti so bila nato preračunane glede na dejansko občutljivost z odštevanjem ničelne vrednosti pri vsaki seriji. Za vsak ojačevalnik je bila izračunana srednja vrednost preračunanih vrednosti in podana kot kalibrirana vrednost za posamezno kalibracijsko točko. Vsak ojačevalnik je bil priključen na pretvornik vsaj eno uro, za temperaturno stabilizacijo. Prav tako je bil vsak ojačevalnik pred meritvijo kalibriran s kalibrirno enoto HBM K3608 pri 0 mV/V in nazivni vrednosti območja 2 mV/V. Kalibracija ojačevalnika je osnova za zagotovitev primerljivosti saj določa dejansko občutljivost ojačevalnika. Na osnovi kalibracije ojačevalnika lahko upoštevamo linearno korekcijo rezultatov glede na občutljivost ojačevalnika: X kor  X amp  S S cal (1) amp kjer je Xkor korigirana vrednost prikaza ojačevalnika Xamp glede na razmerje kalibrirane vrednosti občutljivosti kalibrirne enote pri 2 mV/V Scal ter rezultata kalibracije občutljivosti ojačevalnika pri 2 mV/V Samp. Za primerjavo rezultatov predstavljajo referenčno vrednost rezultati kalibracije pretvornika z ojačevalnikom DMP41, kot najboljšim možnim ojačevalnikom [4]. Rezultati ostalih ojačevalnikov so predstavljeni relativno glede na kalibracijo z ojačevalnikom DMP41. Kalibracija pretvornika z ojačevalnikom ML38B je bila izvedena trikrat za oceno dolgotrajne stabilnosti primerjave. 4 Rezultati Rezultati meritev istega pretvornika sile z različnimi merilnimi ojačevalniki so prikazani na sliki 2. Slika prikazuje relativno odstopanje vrednosti za posamezni merilni ojačevalnik od merilnega ojačevalnika DMP41. V tem primer so vrednosti za posamezni ojačevalnik samostojne in neodvisne in predstavljajo rezultat kalibracije za posamezno merilno verigo pretvornikojačevalnik. Iz slike je razvidno, da se rezultati ojačevalnikov ML38B in DK38 dejansko dobro ujemajo z ojačevalnikom DMP41. Ker imajo vsi trije ojačevalniki enako izmenično napetost vzbujanja mostiča s frekvenco 225 Hz, je rezultat v skladu s pričakovanji. Ujemanje ojačevalnikov ML38B in DMP41 je znotraj odstopanja 0,003 %, tudi po trikratni ponovitvi kalibracije. Odstopanje ojačevalnika DK38 je nekoliko večje, predvsem v spodnjem delu območja na račun slabše ločljivosti, vendar pa ostaja v večjem delu območja znotraj meje 0,005 %. 2,0E-04 1,0E-04 0,0E+00 -1,0E-04 3,0E-04 -2,0E-04 -3,0E-04 0 ML38_1 ML55 DK38 ML38_2 ML10B ML38_3 200 400 600 Sila (N) 800 1000 Slika 2. Primerjava rezultatov kalibracije za merilno verigo pretvornik-ojačevalnik Na videz dobro ujemanje rezultatov v tem primeru kaže na dokaj dobro nastavitev občutljivosti merilnih ojačevalnikov, vendar pa sledljivost rezultatov samih ojačevalnikov ni zagotovljena, zato dobro ujemanje lahko smatramo kot naključje. Tudi če bi bila odstopanja bistveno večja, bi bili rezultati enako veljavni in korektni, saj je rezultat kalibracije neodvisen od tipa ojačevalnika ali njegovega pogreška. Rezultat je veljaven le za celotno merilno verigo, saj vpliva pretvornika ni mogoče ločiti od vpliva ojačevalnika. Merilna negotovost kalibracije za celotno merilno verigo znaša od v tem primeru 0,01 % do 0,02 %. Na podlagi rezultatov lahko za uporabljene ojačevalnike zagotovimo zamenljivost z enotnimi referenčnimi vrednostmi (npr. vrednosti kalibracije z ojačevalnikom DMP41), če upoštevamo, da pri tem lahko povzročimo pogrešek do 0,03 %. Druga možnost je korekcija rezultatov (ali justiranje ojačevalnikov), s katero bi prilagodili kazanje različnih ojačevalnikov na enake referenčne vrednosti. V vsakem primeru rezultati in ugotovitve veljajo samo za ojačevalnike, ki so bili predmet analize, rezultati drugih ojačevalnikov istega tipa bi lahko bili popolnoma različni zaradi drugačne nastavitve občutljivosti ojačevalnika. Če želimo v splošnem na ustrezen način primerjati rezultate ojačevalnikov, tudi v primeru, da uporabimo ojačevalnik, ki ni bil vključen v analizo, moramo najprej vsakega izmed njih kalibrirati s kalibracijsko enoto za napetostno razmerje. Na ta način lahko vrednotimo ojačevalnike ločeno od pretvornika. Primerjavo rezultatov kalibracije pretvornika z različnimi ojačevalniki, kjer upoštevamo rezultate kalibracije posameznega ojačevalnika, prikazuje slika 3. V rezultatih je vključena korekcija odstopanja vrednosti vsakega ojačevalnika, s čimer zagotovimo, da so rezultati primerljivi in kažejo dejanski vpliv merilnega ojačevalnika na rezultat merilne verige. S tem izpolnimo predpogoj za njihovo zamenjavo, ki bi veljala na splošno, za katerikoli kalibriran ojačevalnik.. 183 Relativno odstopanje glede na DMP41 Relativno odstopanje glede na DMP41 3,0E-04 2,0E-04 1,0E-04 0,0E+00 -1,0E-04 -2,0E-04 -3,0E-04 0 ML38_1 ML55 DK38 ML38_2 ML10B ML38_3 200 400 600 Sila (N) 800 1000 Slika 3. Primerjava rezultatov kalibracije pretvornika sile za posamezni ojačevalnik Kalibracija pretvornika sile z merilnim ojačevalnikom ML10B z enosmernim vzbujanjem izkazuje večje odstopanje od rezultatov ojačevalnika DMP41 kot ojačevalniki s frekvenco vzbujanja 225 Hz. Odstopanje za ta tip ojačevalnika je bilo v razponu od 0,002 % do 0,02 %. Tudi kalibracija pretvornika sile z merilnim ojačevalnikom ML55B z izmeničnim vzbujanjem 4800 Hz izkazuje večje odstopanje od rezultatov ojačevalnika DMP41 kot ojačevalniki s frekvenco vzbujanja 225 Hz. Odstopanje presega tudi odstopanje ojačevalnika ML10B in znaša od 0,01 % do 0,02 %. Podobnost slike 2 in slike 3 izhaja iz preteklih kalibracij, vrednotenj in analiz ojačevalnikov [5,6]. Ojačevalniki so bili očitno v preteklosti ustrezno justirani, kar posledično omogoča majhna odstopanja na sliki 2. V primeru slabo nastavljenih ojačevalnikov bi bila razlika med slikama bistveno bolj izrazita. Pri rezultatih slike 3 je potrebno dodatno upoštevati tudi prispevek merilne negotovosti kalibracije merilnih ojačevalnikov, kjer znaša že razširjena merilna negotovost kalibrirne enote 20 nV/V za frekvenco vzbujanja 225 Hz, 330 nV/V za frekvenco vzbujanja 4800 Hz in 200 nV/V za enosmerno napetost vzbujanja mostiča. To je tudi prevladujoč prispevek končne kalibracije ojačevalnikov. Merilna negotovost pri menjavi ojačevalnikov je v vsakem primeru višja kot pri kalibraciji pretvornika sile skupaj z ojačevalnikom saj moramo upoštevati prispevke merilne negotovosti kalibracije obeh ojačevalnikov – ojačevalnika, ki je bil uporabljen pri kalibraciji pretvornika in ojačevalnika, ki je uporabljen pri nadaljnjih meritvah. Posledično se negotovost rezultatov ojačevalnikov s frekvenco vzbujanja 225 Hz poveča približno za faktor 2 (predvsem zaradi povečane relativne merilne negotovosti pri spodnji kalibracijski vrednosti), pri ojačevalnikih s frekvenco vzbujanja 4800 Hz in enosmernim vzbujanjem pa je povečanje bistveno večje, kot kaže slika 4. Relativno odstopanje glede na DMP41 2,0E-03 1,5E-03 1,0E-03 5,0E-04 napovedati rezultatov brez predhodne kalibracije pretvornika z novim ojačevalnikom. Pri splošnem primeru menjave ojačevalnikov pa moramo najprej zagotoviti kalibracijo posameznega ojačevalnika in upoštevati potrebne korekcije. Kalibrirna enota za napetostno razmerje mora biti kalibrirana za vse uporabljene frekvence vzbujana. Primerjava oziroma kalibracija ojačevalnikov z nekalibrirano enoto je sicer tudi možna, vendar samo za isto frekvenco vzbujanja in za primerjavo vseh ojačevalnikov z isto kalibrirno enoto in v kratkem časovnem obdobju.. V vsakem primeru moramo ovrednotiti dodatne prispevke merilne negotovosti, ki izhaja iz menjave merilnega ojačevalnika. Prispevek merilne negotovosti kalibracije ojačevalnika pri menjavi ojačevalnikov bistveno presega merilno negotovost pri kalibraciji merilne verige pretvornik-ojačevalnik. 0,0E+00 -5,0E-04 Literatura -1,0E-03 [1] D. Schwind and T. Hahn, “Investigation of the influence of carrier frequency or direct current voltage in force calibrations”, XIX IMEKO World congress, Lisbon, Portugal, 2009, pp. 201-204 [2] M. Hiti: “Razvoj etalonskih strojev za kalibriranje meril sile”, Zbornik šestindvajsete mednarodne Elektrotehniške in računalniške konference ERK 2017, 25. - 26. September 2017, Portorož, Slovenija [3] SIST EN ISO 376:2011 (ISO 376:2011) [4] Marco M. Schäck: “Long Term Proven and Optimized High-Precision 225 Hz Carrier Frequency Technology in a Modern And Universal Data Acquisition System”, IMEKO 23rd TC3, 13th TC5 and 4th TC22 International Conference, 30 May to 1 June, 2017, Helsinki, Finland [5] M. Hiti: “Stabilnost merilnih ojačevalnikov za merilne pretvornike z merilnimi lističi”, Zbornik triindvajsete mednarodne Elektrotehniške in računalniške konference ERK 2014, 22. - 24. September 2014, Portorož, Slovenija [6] M. Hiti: “Examples of straing-gauge amplifier linearity results using combinatorial calibration method“, IMEKO TC3, TC5, TC22 Joint Conference, Helsinki, Finland, 30. May - 1. June 2017. Helsinki [7] M. Hiti, “Resistor network for linearity check of voltage ratio meters by combinatorial technique“, Meas. Sci Technol.,Vol 26, No. 5, 2015 [8] M. Hiti: “Reducing the uncertainty of strain gauge amplifier calibration“, Acta IMEKO, Dec. 2017, vol. 6, no. 4, str. 69-74 [9] A. Brüge, “Traceability of Bridge Amplifiers in Tarred Measurement Applications”, IMEKO 23rd TC3, 13th TC5 and 4th TC22 International Conference, 30 May to 1 June, 2017, Helsinki, Finland [10] M. F. Beug, H. Moser, A. Kölling, "New Setup for Bridge Amplifier Linearity Investigation", in Proceedings of the Conference on Precision Electromagnetic Measurements (CPEM), Paris, France, July 2018. -1,5E-03 ML38_1 ML10B -2,0E-03 0 200 ML55 DMP41 400 600 Sila (N) DK38 800 1000 Slika 4. Relativno odstopanje pri menjavi merilnega ojačevalnika s pripadajočo merilno negotovostjo Pri ojačevalnikih z enosmernim vzbujanjem doseže razširjena merilna negotovost več kot 0,1 %, pri ojačevalnikih s frekvenco vzbujanja 4800 Hz pa doseže merilna negotovost skoraj 0,2 %, kar je povečanje merilne negotovosti za faktor 10 glede na negotovost kalibracije merilne verige. Izboljšanje končne razširjene merilne negotovosti v teh primerih bi lahko sicer dosegli z dodatnim vrednotenjem linearnosti ojačevalnikov, na primer z uporabo kombinatornega postopka kalibracije merilnih ojačevalnikov [7,8] ali drugih postopkov preverjanja linearnosti ojačevalnikov [9,10]. 5 Zaključek V prispevku so podani primeri kalibracije istega merilnega pretvornika sile z različnimi tipi merilnih ojačevalnikov. Rezultati so analizirani kot rezultat kalibracije merilne verige pretvornik-ojačevalnik in dodatno z upoštevanjem kalibracije posameznega ojačevalnika s kalibrirano enoto za napetostno razmerje. Iz rezultatov kalibracije merilne verige je razvidno, da za primer uporabljenih ojačevalnikov je možna menjava ojačevalnika, vendar z upoštevanjem povečanega pogreška pri uporabi merilne verige. V primeru uporabe drugih ojačevalnikov ni možno 184 Krmiljenje dvomotornega asinhronskega sklopa za testiranje življenske dobe polimernih zobnikov Tomaž Finkšt1, Borut Černe1, Damijan Zorko1 in Leon Kos1 1 Univerza v Ljubljani, Fakulteta za strojništvo, laboratorij LECAD, Aškerčeva cesta 6, 1000 Ljubljana E-pošta: tomaz.finkst@fs.uni-lj.si Control of coupled asynchronous drives for fatigue test rig of polymer gears Testing of products and components is very important in order to assure quality, correct functioning and long life of products. Gear meshing conditions depend on the tooth flank geometry. The temperature of a meshing gear pair raises because of the friction between two meshing flanks and hysteresis warming of the material. The increase of temperature has a significant impact on the mechanical properties of polymer materials. Testing was performed on the designed test equipment using a polymer gear pair with transmission ratio i=1, module m=1mm, number of teeth z=20 and a center distance of 20 mm. The material of tested gears was POM for the driver gear and PA6 for the driven gear. Gears of similar size are typically used for micro gear transmissions. The tests were carried out at different speeds and loading torques. During the tests the temperature of the tested gears was measured with a thermal camera. 1 Uvod Zaradi vse večje kompleksnosti naprav in končnih izdelkov, ter vedno večje konkurence in s tem posledično večjih zahtev strank, se je v preteklosti povečala potreba po testiranju izdelkov ter naprav. Testiranje izdelkov proizvajalcem omogoča odkriti in odpraviti morebitne napake in pomanjkljivosti na izdelkih, ter s tem povečati njihovo življensko dobo in zanesljivost. Do odpovedi delovanja izdelkov lahko pride kadarkoli. Te se lahko pojavijo že zgodaj, npr. zaradi konstrukcijske napake, lahko pa do njih pride kasneje med uporabo izdelka. S testiranjem je mogoče odkriti serijske napake na izdelkih, kot tudi predvideti njihovo življensko dobo, po kateri bodo odpovedali zaradi normalne obrabe. Prav tako je mogoče ugotoviti, kako ekstremne okoliščine vplivajo na povečano obrabo, ter tako zgodnejši čas pojava odpovedi oz. krajšo uporabno dobo izdelka [1]. Zobniki so pogosto uporabljeni strojni elementi za prenos mehanske moči. Z naraščajočo ponudbo polimernih materialov in njihovimi vse boljšimi mehanskimi lastnostmi narašča uporaba polimernih zobnikov. Razlog za vse večjo uporabo polimernih zobnikov so nekatere prednosti, ki jih imajo ti pred kovinskimi. Najpomembnejše so manjša masa, cenejša masovna proizvodnja, lažja izdelava, obratovanje brez mazanja, boljše dušenje vibracij. Za izdelavo polimernih zobnikov se večinoma uporabljajo delno kristalinični ERK'2019, Portorož, 185-188 185 termoplasti. Tem materialom se lahko dodajajo različna ojačitvena vlakna in tudi materiali, ki manjšajo obrabo in izboljšujejo drsne lastnosti, npr. PTFE, MoS2 [2-4]. Preizkuševališče je bilo v celoti razvito in izdelano v Laboratoriju za računalniško podprto konstruiranje (LECAD) na Fakulteti za strojništvo, Univerze v Ljubljani. Le-to je namenjeno za testiranje življenske dobe zobnikov. Preizkuševališče smo avtomatizirali ter hkrati izdelali uporabniški vmesnik, ki uporabniku omogoča pregled nad trenutnim stanjem ter parametriziranje testa. Med izvajanjem testa se beležijo vsi podatki o trenutnem stanju testa. Pri izdelavi krmiljenja je bilo potrebno zadostiti določenim specifičnim zahtevam ubiranja zobnikov ter varnostnim zahtevam. 2 Zasnova preizkuševališča Načrtovati je potrebno merilno-krmilni sistem, ki bo omogočal merjenje in spreminjanje navora med zobnikoma, vrtilne frekvece zobnikov in temperaturo zobniških dvojic. Natančno je treba definirati ustrezno računalniško opremo, senzorje in pogonski sistem z vidika elektro-krmilne opreme ter predvideti varnostne komponente za preizkuševališče. Za izvedbo zgoraj opisanih nalog je treba izdelati program za samodejni nadzor testnih ciklov, zajemanje merilnih vrednosti in analizo ter oblikovati uporabniku prijazen grafični vmesnik za delo s preskuševališčem. Eksperimentalna zasnova preizkuševališča je prikazana sliki 1. Na tej sliki sta na gnani in zavorni strani nameščena enaka stroja – asinhronska elektromotorja. Eden deluje kot pogonski, drugi kot zavorni motor. Preizkuševališče je oblikovano tako, da je omogočen prost dostop do zobnikov, za potrebe merjenje temperature s termografsko kamero. Preizkuševališče ima možnost zveznega nastavljanja momenta z uporabo pogonskega in zavornega elektromotorja. Elektromotorja sta zvezno nastavljiva preko frekvenčnih pretvornikov. Za pogonski in zavorni elektromotor sta uporabljena Siemensova štiripolna asinhronska elektromotorja z nazivnim momentom 2,5 Nm. Moč se iz pogonskega elektromotorja na pogonsko gred zobnikov prenaša preko zobatega jermena, kar ugodno vpliva na blaženje vibracij. Prestavno razmerje jermenskega prenosa je i = 0,7, tako je teoretični maksimalni moment na gredi pogonskega zobnika 1,75 Nm. Aktivno merjenje momenta, ki ga prenašajo zobniki se izvaja z merjenjem zasuka gredi s pomočjo merilnikov momenta tako na gnani kot tudi na Slika 1. Model zasnove preizkuševališča. zavorni strani [3]. Frekvenčni pretvorniki so izbrani glede na nazivno moč elektromotorjev in glede na zahteve krmiljenja. Za krmiljenje motorjev sta uporabljena frekvenčna pretvornika, z enofazno vhodno napetostjo 200/240 V in nazivno izhodno močjo P = 0,4 kW, ki omogočata zvezno nastavljanje vrtilne frekvence pogonskega in zavornega elektromotorja v razponu 0 – 100 Hz, kar ustreza vrtilnim hitrostim elektromotorjev v razponu 0 – 3000 min-1. Preizkuševališče na katerem so bili opravljeni vsi preizkusi je prikazano na sliki 2. življenjsko dobo zobnikov [3]. Preizkusi so se izvajali do porušitve oz. do doseženega območja trajno dinamične trdnosti (2 ∙ 106 ciklov). Merilo se je temperaturo na površini zobnikov. Uporabljena je bila termografska kamera FLIR T420. Pri merjenju površinske temperature zobnikov je pomembno, da se le-to meri med obratovanjem in ne ko se zobniki ustavijo, saj temperatura hitro pade. Za merjenje temperature med obratovanjem je pomembna postavitev termo kamere. Če postavimo kamero nad zobnike, ne moremo izmeriti pravilnih temperatur zaradi turbulentnih motenj, ki jih povzroča ubiranje zobnikov. Pri postavitvi kamere pod kotom lahko pride do spremembe emisivnosti, kar prav tako vpliva na meritve s termo kamero. Posebna izvedba preizkuševališča omogoča postavitev termo kamere tako, da se temperatura meri od spredaj, soosno z rotacijsko osjo zobnikov. Temperatura na porvšini zobnikov je sestavljena iz treh temperatur in sicer ambientne temperature, površinske temperature in kontaktne temperature. Merilna točka termo kamere je bila postavljena v kontakt zob, tako da smo merili kontaktno temperaturo. Pri merjenju s termografsko kamero je potrebno upoštevati emisivnost materiala. Emisivnost se izračuna na podlagi izmerjene razlike v temperaturi med nepobarvanim zobnikom in zobnikom pobarvanim s črno barvo, ki ima emisivnost 1. V literaturi je navedeno, da imajo materiali, katere smo preizkušali dovolj veliko emisivnost, da jih ni potrebno barvati. Pri opravljanju temperaturnih meritev je bila nastavljena emisivnost 0,95, kar je za enake materialne pare uporabljeno v drugih virih [5]. 2.2 Slika 2. Preizkuševališče in pripadajoča dvojica polimernih zobnikov 2.1 Pogoji testiranja Preizkusi so se izvajali pri sobni temperaturi in vlažnosti [1-3]. Vsi zobniški pari so tekli brez mazanja, vrednosti koeficienta trenja za analiziran materialni par POM/PA6 v razmerah brez mazanja se v različnih virih gibljejo od 0,18 [4] do 0,29 [5]. Zobniki so bili preizkušani pri različnih vrtilnih frekvencah in momentih. Znano je, da se pri različnih vrtilnih frekvencah in obremenitvenih momentih pojavijo različne oblike poškodb [1,3]. Pri čemer je bilo ugotovljeno da pri nižjih obremenitvah vrtilna hitrost nima vpliva na življenjsko dobo polimernih zobnikov, nad neko kritično momentno obremenitvijo pa tudi vrtilna frekvenca vpliva na 186 Krmiljenje preizkuševališča Krmilje v širšem pomenu besede poleg krmilnika predstavlja še krmilno omarico, krmilne module in vhodno-izhodne enote za komunikacijo med uporabnikom in napravo. V krmilni omarici se nahajajo vsi potrebni elementi in komponente za nemoteno delovanje krmilnika. V krmilni omarici se nahajajo inštalacijski odklopniki, napajalnik, krmilnik, vhodnoizhodni razširitveni krmilni moduli, tipke in stikala, din letev z vrstnimi sponkami, merilna ojačevalnika, ki ojačata signal iz merilnikov momenta ter frekvenčna pretvornika. S tipkami lahko fizično preprečimo vklop ali izklop nekaterih ključnih komponent ali v skrajnem primeru aktiviramo zasilni izklop motorjev. Uporaba vrstnih sponk omogoča lažjo preureditev opreme, saj lahko opremo odklopimo od omarice ne da posegamo v ožičenje krmilnika. Krmilnik ali tudi PLK (angl. PLC) je programabilni logični krmilnik. Ker so zaradi svoje robustnosti zelo pogosti v industrijskih sistemih, jih nekateri imenujejo tudi industrijski računalniki. Prilagojeni so za delo v industrijskem okolju (odpornost na motnje, prah, vlago, vibracije, temperaturo,..). Izbrali smo model krmilnika CyBro-2 od slovenskega proizvajalca Robotina d.o.o (Cybrotech Ltd.), ki je napreden programabilni logični krmilnik. Poleg Ethernet priključka, ki je prvenstveno namenjen za programiranje, komunikacijo in povezovanju več CyBro-2 krmilnikov v mrežo, ima še prostoprogramabilna vhoda COM1 in COM2, ki sta namenjena povezovanju z napravami, ki imajo RS232 vmesnik. CyBro-2 lahko poljubno razširimo z vsemi standardnimi vhodno-izhodnimi enotami, kot so: digitalni vhodi in izhodi, analogni vhodi in izhodi 0-10 V ter (0)4-20 mA, HSC, RTC in drugimi. Razširitvene enote se na CyBro priključijo preko vodila IEX-2, ki temelji na vodilu CAN. Osnovna enota CyBro-2 krmilnika vsebuje 10 digitalnih vhodov 24 V, 8 relejnih izhodov, 4 analogne vhode 0-10 V ali (0)4-20 mA, 1 analogni izhod 0-10 V. 2.3 3 Načini upravljanja preizkuševališča Program na PLK-ju je zasnovan tako, da omogoča dva načina upravljanja. Eden je ročni (trajnostni test) drugi pa je avtomatiziran in deluje po predhodni nastavitvi preizkuševališča. Ročno upravljanje Pri ročnem upravljanju nastavimo vrtilno hitrost ter željeni moment. Tukaj izvajamo trajnosti test do odpovedi zobniških dvojic. Pri porušitvi zobnikov se motorja avtomatsko ustavita. 3.2 4 Rezultati Glede na zahteve preizkuševališča so bile izmerjene naslednje vrednosti: navora na obeh gredeh, vrtilna hitrost, temperatura ter beleženje vseh parametrov za nadaljno obdelavo. 4.1 Zahteve Pri zasnovi preizkuševališča je bilo potrebno upoštevati določene zahteve. Upoštevali smo slednje:  test naj se zaključi, ko dosežemo prednastavljeno število ciklov oz. pride do porušitve,  test naj poteka brez prekinitev, razen v primeru, da ga namenoma ustavimo ali v primeru kakršnekoli napake,  meriti je potrebno navor na pogonskem motorju in ga v primeru trenutnega odstopanja nastaviti na željenega,  meriti je potrebno navor na zavornem motorju,  temperaturo zraka je potrebno vzdrževati na primerni obratovalni temperaturi v komori, v primeru trenutnega odstopanja jo je potrebno nastaviti na obratovalno,  potrebno je meriti in nastavljati vrtilno hitrost dvojic in v primeru spremembe ustrezno ukrepati,  izmerjene podatke je potrebno beležiti za nadaljnjo uporabo in analizo,  predvideti je potrebno robne situacije in postopke ukrepanja v primeru, da pride do njih. 3.1 povišujemo vse do porušitve. Začetni moment obremenitve mora pri tem biti vsaj 20% nižji od tistega, ki bo uporabljen v realni aplikaciji. Čas posamične periode obremenitve je določen glede na dosežen nominalni temperaturni prirast zobnika pri prvi (najnižji) obremenitvi. Ta mora doseči ustaljeno stanje preden lahko izvedemo prehod na naslednji obremenitveni korak. Avtomatizirana meritev Za hitro ugotavljanje vzdržljivosti obravnavanega polimernega materiala je možna implementacija t.i. koračnih testov [5]. Pri tovrstnih testih zadržujemo obratovalno hitrost pri določeni konstantni vrednosti (ta mora biti čimbolj primerljiva s hitrostjo v realni aplikaciji), medtem ko obratovalni moment koračno 187 Meritev navora Za preizkuševališče je bila ena temeljnih zahtev meritev momenta. Predležje je uležajeno, pri čemer smo uporabili merilnik navora FORSENTEK tip FY02. Ta senzor omogoča merjenje navora do 5 Nm. Na merilnem ojačevalniku (4-20 mA) je bilo potrebno umeriti senzor. V našem primeru smo umerili senzor do vrednosti 2 Nm. V našem primeru smo uporabili dva senzorja momenta. Ta senzorja sta nameščena tako na pogonski kot na gnani strani. Razlog je v tem, da lahko s tem izmerimo izgube na zobniški dvojici. 4.2 Meritev temperature Temperatura je bila merjena pri različnih momentih in vrtilnih hitrostih. Moč motorjev smo regulirali s frekvenčnima pretvornikoma. Pri preizkusih sta bila elektromotorja krmiljena z dvema različnima frekvencama in sicer 25 Hz in 35 Hz. Pri isti nastavljeni frekvenci z večanjem momenta pada vrtilna hitrost, zato preizkusi niso narejeni pri enaki vrtilni hitrosti in različnih obremenitvah. To smo naknadno avtomatizirali, da smo nastavili isto vrtilno hitrost pri različnih obremenitvah. Primerjavo lahko potegnemo le, če primerjamo temperaturo izmerjeno pri isti obremenitvi in dveh različnih vrtilnih frekvencah. Na sliki 3 so prikazane izmerjene temperature v ustaljenem stanju. Vrtilna hitrost nima vpliva na življenjsko dobo pri obremenitvah, ki povzročijo majhne napetosti v materialu. V članku [3] je za material PA6 mejna obremenitev, ki v materialu povzroči napetost 8 MPa. Naši zobniki so obremenjeni precej nad to mejo, torej ima vrtilna frekvenca prav gotovo vpliv na življenjsko dobo. Meritve temperature niso bile izvedene do odpovedi, ampak samo do ustalitve temperature. Iz predstavljenih rezultatov meritev na sliki 3 vidimo, da se pri enaki momentni obremenitvi in večji vrtilni hitrosti temperatura precej poveča. To povečanje temperature je posledica obremenitve pri višjih vrtilnih hitrostih. Pri merjenju temperature je bila za oba materiala predpostavljena emisivnost 0,95. identifikacijska številka testa, datum in ura zajema, navor na gnanem zobniku, navor na zavornem zobniku, vrtilna hitrost dvojice, temperatura v komori, relativna vlaga, čas cikla. V primeru, da dostop do podatkovne baze ni mogoč, npr. v primeru izpada mrežne povezave, se rezultati shranjujejo in kopičijo v začasni medpomnilnik. Ob ponovni vzpostavitvi povezave se podatki prenesejo iz medpomnilnika v bazo. Na ta način se zagotovi, da se podatki ne izgubijo. Slika 3. Temperatura ozobja zobnikov pri različnih navorih in vrtilnih hitrostih 4.3 Izvedba uporabniškega vmesnika Odločili smo se, da bomo za izdelavo vizualizacije in prikaza ključnih parametrov uporabili spletno stran v lokalnem omrežju in uporabili komunikacijo spremenljivk (scgi_server in CyBroWebView). Preko spletne strani lahko beremo in nastavljamo tiste parametre, ki smo jih podali v zahtevah. Platformo smo vzeli od pojetja Robotina d.o.o in jo preuredili za naše potrebe. Na sliki 4 je prikaz spletne strani s parametri. 5 Sklep Uspešno smo zasnovali in izdelali avtomatizacijo naprave za testiranje življenske dobe zobnikov. Med testiranjem zobnikov smo izvedli nekaj krajših testov, ter trajnoste teste do porušitve (uničenja zobnikov). Za uporabne podatke, s katerimi je mogoče ugotoviti obrabo komponent, moramo narediti daljše teste z vsaj milijon cikli. Vendar pa je naprava zasnovana tako, da bo pri milijon ciklih delovala popolnoma enako, kot pri tisoč ciklih, zato smo lahko o pravilnosti delovanja preizkuševališča prepričani že po kratkotrajnejših testih. Naprava je zasnovana tako, da omogoča nadaljnje dopolnitve. V električni krmilni omari se nahaja dovolj prostih sponk ter vhodov na razširitvenih I/O modulih za morebitno nadgradnjo preizkuševališča. Zahvala Predstavljeno raziskovalno delo je bilo delno financirano iz ARRS P2-0405 ter Republike Slovenije in Evropskega sklada za regionalni razvoj C3330-18952014. Literatura Slika 4. Uporabniški vmesnik preizkuševališča 4.4 Beleženje in shranjevanje podatkov Za analizo rezultatov je potrebno zabeležene meritve v določenem nastavljivem časovnem oknu shranjevati v podatkovno bazo. V MySQL smo izdelali podatkovno bazo, v kateri se izmerjeni podatki shranjujejo. V bazo se beležijo naslednji podatki: 188 [1] D. Zorko, S. Kulovec, J. Tavčar, J. Duhovnik, Different teeth profile shapes of polymer gears and comparison of their performance, J. Adv. Mech. Des. Syst. Manuf. 11 (2017) JAMDSM0083–JAMDSM0083. doi:10.1299/jamdsm.2017jamdsm0083. [2] D. Zorko, S. Kulovec, J. Duhovnik, J. Tavčar, Durability and design parameters of a Steel/PEEK gear pair, Mech. Mach. Theory. 140 (2019) 825–846. doi:10.1016/j.mechmachtheory.2019.07.001. [3] J. Duhovnik, D. Zorko, L. Sedej, The effect of the teeth profile shape on polymer gear pair properties, Teh. Vjesn. Tech. Gaz. 23 (2016). doi:10.17559/TV20151028072528. [4] B. Černe, J. Duhovnik, J. Tavčar, Semi-analytical flash temperature model for thermoplastic polymer spur gears with consideration of linear thermo-mechanical material characteristics, Journal of Computational Design and Engineering, v tisku, doi:10.1016/j.jcde.2019.03.001 [5] Andraž Pogačnik, Jože Tavčar, Accelerated testing method for polymer gears - Review of gear body temperature calculation according to VDI 2736, in: Proc. Int. Conf. High Perform. Plast. Gears 2015, Garching, 2015: pp. 1283–1294. Preskušanje delovanja kirurške svetilke 2 Urban Kraševec1, Andrej Žemva2 SIQ Ljubljana, Tržaška cesta 2, 1000 Ljubljana Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana E-pošta: urban.krasevec@siq.si 1 Testing of the surgical lamp This paper presents description of test procedures which are applicable for surgical luminaries according to the additional standard IEC/EN 60601-2-41:2010. First, photobiological laboratory and accessories for measurements are introduced, followed by description of test procedures. The main part of the article is focused on tests which have been carried out. Tests are performed in sequence according to the standard. 1 Uvod V podjetju SIQ Ljubljana poleg preskušanja in certificiranja proizvodov, ocenjevanja sistemov vodenja, meroslovja in izobraževanja, delujemo tudi na področju medicine, in pokrivamo velik del najsodobnejših in najrazličnejših medicinskih pripomočkov ter ostale opreme. Izvajamo širok nabor različnih preskusov, saj je naše poslanstvo zagotoviti varne naprave za paciente, kot tudi za operaterje. V članku predstavljamo preskuse, ki se izvajajo v fotobiološkem laboratoriju. Na kratko bomo opisali tudi standard, ki je namenjen preskušanju kirurških svetilk, in fotobiološki laboratorij [1]. 2 Standard za operacijske svetilke Standard IEC/EN 60601-2-41:2010 je zgolj dodatek k medicinskemu osnovnemu standardu. Ko začnemo s prebiranjem standarda, nam že takoj na začetku jasno kategorizira, katere svetilke spadajo v družino operacijskih ali diagnostičnih svetilk. Sem nikakor ne sodijo naglavne svetilke, endoskopi, svetilke za splošne namene, svetilke namenjene terapijam, svetilke z UV svetlobo ali svetilke priklopljene na operacijske instrumente. Ti podatki so zelo pomembni, saj nam povedo, katere svetilke smemo testirati po navedenem standardu in katere ne. Z nadaljnjim branjem hitro ugotovimo, da obstajajo svetilke z različnimi možnostmi priključitve. Svetilke so lahko napajane direktno iz omrežja, notranjega akumulatorja, ali pa generatorja oziroma UPS-a (Uninterruptible power supply). Ne glede na to za kakšno vrsto napajanja se odloči proizvajalec, to ne sme vplivati na končni proizvod s stališča fotobiološke varnosti. Na vsaki svetilki mora biti nameščena tudi napisna tablica, na kateri mora biti jasno označen proizvajalec, model, nazivna napetost in serijska številka. Pomembna so tudi navodila, v katerih moramo dobiti vse potrebne podatke za vzdrževanje in pravilno uporabo izdelka [1]. ERK'2019, Portorož, 189-192 189 3 Fotobiološki laboratorij Celoten laboratorij je v črni barvi od tal do stropa, vključno s pohištvom. Namen takega laboratorija je, da je med meritvami čim manj odbojev od površin, pohištva in da so meritve zaradi namenskega prostora natančnejše. Z merjenjem fotobiološke varnosti se ukvarjamo predvsem zato, ker so nove tehnologije prinesle tudi nova tveganja. Če smo dalj časa izpostavljeni optičnemu sevanju, se lahko zgodi, da pride do poškodb kože ali naših oči. Oči so eden od petih naših najpomembnejših čutov in z njimi lahko zaznavamo svetlobo ter barve. V očeh imamo namreč fotoreceptorje, ki ustvarjajo električne impulze, kateri preko vidnega živca pridejo v naše možgane. Te fotoreceptorji so čepnice, ki ob zadostni svetlobi zaznavajo barve in paličnice. Te ne ločijo barv, zato pa zaznavajo razlike med gibanjem, šibko ali močno svetlobo. Če je naše oko nepravilno zaščiteno ali nezaščiteno, se lahko zgodi, da se z optičnim obsevanjem poškoduje roženica in mrežnica. V uporabi imamo profesionalno opremo, s katero preskušamo od žarnic, obločnih sijalk, LED-tehnologije, fluorescentnih sijalk do virov monokromatske svetlobe, ki jim pravimo laserji. Pri svetlobnih virih merimo barvo svetlobnega vira, spektralno porazdelitev, sevalnost in lasersko energijo pri različnih valovnih dolžinah. Za meritve največkrat uporabljamo monokromator in LUX-meter. Monokromator je optična naprava, ki oddaja mehansko izbirni ozek pas valovnih dolžin svetlobe ali drugega sevanja, izbranega iz širšega obsega valovnih dolžin, ki so na voljo na vhodu. Monokromator, ki ga uporabljamo, je dvojni, kar pomeni, da sta dva monokromatorja povezana zaporedno in oba izbirata enako barvo oziroma valovno dolžino. Proizvajalci to lastnost uporabijo za izboljšanje meritev pri bolj razpršeni svetlobi in na ta način izboljšajo mejne vrednosti. Ima zelo širok spekter delovanja in nanj lahko priključimo številne dodatke, ki jih ponuja proizvajalec. Monokromator se prek USBvmesnika poveže z računalnikom, s katerim ga upravljamo. Podjetje je za meritve izdelalo tudi namensko programsko opremo, katera omogoča lažje delo inženirju. Datoteke se takoj izvozijo v Excel-ovo datoteko in tako je primerjava vrednosti veliko lažja [1]. 4 Fotometrija in meritve Kot preskuševalec moraš biti natančen, dosleden in kar je v našem podjetju najpomembnejše, neodvisen ter nepristranski. Da lahko zagotovimo sledljivost in ponovljivost rezultatov, imamo določene protokole, ki se jih moramo držati. Preskusi, ki jih izvajamo v našem podjetju, so postopki, zapisani v standardu in morajo biti izvedeni natančno. Preden se začne preskus izvajati, je potrebno pripraviti prostor, merilno opremo in merilne liste. Vsa merilna oprema, ki jo uporabljamo, mora biti pregledana in kalibrirana s strani laboratorija, ki izvaja kalibracije in naravnavanje instrumentov. Vsi opisani preskusi potekajo pri nazivni napetosti. V našem primeru je bilo to 240 Vac in 50 Hz. Intenziteta svetilke mora biti vedno na 100 %. Preskusi potekajo v ravnini in sicer na razdalji 1000 mm. Medicinska oprema oziroma vzorec mora biti v termično stabilnem stanju. To pomeni, da ga vklopimo 3 ure pred začetkom meritev. Šele, ko dosežemo omenjeno stanje, lahko začnemo s preskusi. Pri meritvah, ki jih opravljamo, se moramo zavedati, da lahko pride do napak. Napaka lahko nastane bodisi zaradi instrumenta ali nenatančnosti pri postavitvi merilnega mesta. Ne glede na to, kaj je razlog za napako, mora biti ta manjša od 1 %. Omenili smo, da poznamo različne izvedenke operacijskih svetilk. Kadar gre za sistem več svetilk skupaj, moramo opraviti meritve za vsako svetilko posebej. Nikoli ne preskušamo celotnega sistema naenkrat [1]. 4.1 Sredinska osvetljenost Kirurgi med opravljanjem svojega dela potrebujejo kvalitetno in zadostno osvetlitev. Osvetljenost mora biti homogena ne samo na površini, ampak tudi pri globljih votlinah človeškega telesa. Ovire, ki pridejo med svetilko in telo pacienta, ne smejo imeti prevelikega vpliva na osvetlitev. Če želi kirurg razlikovati med različnimi tkivi, ki so v človeškem telesu, mora operacijska svetilka zagotavljati zadostno stopnjo osvetljenosti. To predvsem velja med 600 nm in 700 nm, saj je takrat refleksija tkiva nizka v primerjavi z drugimi valovnimi dolžinami. Sredinsko osvetlitev označimo z Ec in meritev le te opravimo že pri prvem preskusu. Meritev izvedemo tako, da je vzorec usmerjen v lux-meter na razdalji 1000 mm. Za potrebno postavitev merilnega mesta uporabljamo kalibriran meter, vodno tehtnico in laser. S pomočjo vodne tehtnice svetilko usmerimo pravokotno na lux-meter, z ostalima pripomočkoma pa v središče svetilke. Sredinsko osvetlitev merimo pri vseh barvnih temperaturah in pri največji intenziteti, ki jo svetilka ponuja. Operacijska svetilka mora zagotavljati osvetljenost med 40.000 lx in 160.000 lx. Za meritev ne smemo imeti nobene ovire med senzorjem in svetilko, kot pri nekaterih drugih preskusih. Širino snopa usmerimo točkovno tako, da izberemo najožjo nastavitev. Vrednost posamezne meritve smo dobili s pomočjo lux-metra, priključenega prek USB-vmesnika. Rezultati meritev so podani v lux-ih in v odstotkih [1],[2]. 190 Slika 1. Meritev sredinske osvetljenosti [2]. 4.2 Premer svetlobnega polja 4.3 Vpliv senc na osvetljenost Premer svetlobnega polja prav tako določamo brez kakršnekoli ovire med senzorjem in merjenim vzorcem. Meritev poteka na enaki razdalji kot pri sredinski osvetlitvi. Izmerjene so vrednosti pri doseženih 50 % in 10 % sredinske osvetljenosti [1]. Pri tej meritvi je pomembno, da pomerimo premer svetlobnega polja v štirih različnih pozicijah. To pomeni, da svetilko po obodu razdelimo na osem enakih delov. Meritev izvajamo za določitev premera, kjer še imamo 50 % in 10 % sredinske osvetlitve [2]. Meritev poteka tako, da senzor pomikamo levo in desno od središča. Ko na lux-metru zaznamo omenjeno vrednost, zapišemo oddaljenost od središča. Na koncu, kot rezultat, določimo povprečje vseh premerov [1]. V to točko je združenih več preskusov, ki imajo zelo podoben namen oziroma potekajo na enak način, le da nekje uporabimo več pripomočkov. Z naslednjimi meritvami se preveri, kako dobro lahko operacijska svetilka zmanjša vpliv senc. Svetilke imajo lahko tudi svetlobne senzorje. V primeru, da senzorji zaznajo preveliko oviro pred seboj, temu primerno prilagodijo intenziteto svetilke. Prilagajanje svetlobnega sevanja ni pomembno samo za kirurga, ampak tudi za kamero, ki je namenjena snemanju operacije. Ta se običajno nahaja v središču svetilke [1]. Sence, ki se lahko pojavijo med operacijo na pacientu, povzročijo različni dejavniki. To je lahko kirurgova rama, roka, glava ali pa del medicinske opreme, ki jo potrebuje ob sebi. V ta namen standard predpisuje točno določene pripomočke. To sta dva kovinska enako velika diska, ki simulirata kirurgovo glavo. Velikost oziroma premer diskov je predpisan in meri 210 mm. Naslednji pripomoček je cev, ki simulira votlino v telesu, v katero posega kirurg. Vsi pripomočki so prevlečeni s črno mat barvo zaradi zmanjšanja refleksije. Kot osnovna meritev se najprej izvede meritev sredinske osvetljenosti, nato sledijo meritve z različnimi kombinacijami pripomočkov. Najprej se pomeri osvetljenost z enim diskom, nato z diskom in cevjo, sledi meritev z dvema diskoma v različnih pozicijah in na koncu izvedemo meritev z dvema diskoma in cevjo. Zadnja je najslabši primer, saj simulira kirurga in njegovega pomočnika, ki dostopata do votline v telesu [1]. 4.4 Slika 2. Pozicije kovinskih diskov [2]. Globina osvetlitve Za določanje globine osvetlitve postavitev merilnega mesta ni več statična, kot je bila v prejšnjih meritvah. Tu govorimo o premikih lux-metra iz sredinske točke naprej in nazaj. Pred to meritvijo lahko odstranimo zgoraj omenjene pripomočke [2]. Potrebujemo lux-meter v središču svetilke na razdalji 1000 mm. Ko je merilno mesto pripravljeno s pomočjo lux-metra in programske opreme, odčitamo sredinsko osvetlitev našega vzorca. Iz dobljenih rezultatov si preračunamo vrednosti, ki jih moramo doseči. Nato lahko začnemo s premiki v smeri naprej in nazaj. Ko dosežemo 60 % sredinske osvetljenosti, se ustavimo, vzamemo kalibrirano merilo in odmerimo razdaljo od začetne pozicije. Dobljena razdalja je razdalja L1. Na enak način pridobimo razdaljo L2, vendar se tokrat gibljemo v vzvratni smeri. Meritve izvedemo pri vseh barvnih temperaturah, ki jih nudi vzorec. Vsota dolžin L1 in L2 ne sme presegati 1000 mm [1]. Slika 2. Meritev globine osvetlitve [2]. 191 4.5 Meritev barvne temperature 4.6 Barvni prostor 4.7 Indeks barvne reprodukcije Razlog, zakaj se barva, ki jo zaznavamo z očesom, označuje v Kelvinih, je sledeč. Elektromagnetni spekter nekega telesa je bilo potrebno opisati številčno. Znanstveniki so to storili tako, da so merili elektromagnetni spekter črnega telesa na določeni temperaturi. Ko je črno telo doseglo enak sevalni spekter, kot izbrano telo, so zapisali rezultat [3]. Če primerjamo spodnjo in zgornjo mejo barvnih temperatur, ugotovimo, da se počasi iz tople bele premaknemo v hladno belo. V vsakdanjem življenju se srečujemo z različnimi sijalkami. Kadar želimo doseči sproščujoče bivalno okolje, se odločimo za toplo belo. Za hladnejšo belo pa se odločimo takrat, ko potrebujemo svetlobo za branje ali delo v pisarni. V nastavitvah operacijske svetilke lahko izbiramo med tremi barvnimi temperaturami, pri nekaterih novejših pa celo med petimi. Meritve se opravlja s pomočjo monokromatorja in pripomočkov, ki se nanj priključijo. Meritve barvne temperature potekajo samodejno, le izbrati moramo pravilne nastavitve v programski opremi. Izmerjene vrednosti običajno ne odstopajo veliko od tistih, ki jih je navedel proizvajalec [1],[2]. V tem načinu merimo koordinate v barvnem prostoru. Uporabljamo podoben tribarvni sistem, kot ga ima človeško oko. Omenili smo, da za zaznavanje barv poskrbijo čepki, pri katerih se razlikujejo frekvenčne karakteristike. Te poskrbijo, da ljudje različno zaznavamo barve. Da bi bile te razlike čim manjše, je CIE (International Commission on Illumination) definirala barvni prostor, imenovan CIE 1931 XYZ. To pa še zdaleč ni edini barvni prostor, ki ga poznamo. Standard navaja 6 osnovnih koordinat od A do F. Vsaka koordinata ima svojo mejo znotraj katere morajo biti izmerjeni rezultati. Meritve potekajo avtomatsko in pri vseh možnih barvnih temperaturah [1]. Indeks barvne reprodukcije (ang.: Color Rendering Index, CRI) je parameter, ki določa, kako dobro vidimo barve pod določenim svetlobnim virom. Indeks barvne reprodukcije označujemo s kratico CRI ali Ra. Vrednost 100 ima v naravi sonce. Ta naravni svetlobni vir nam omogoča opazovanje barv v najbolj naravni obliki. Med umetnimi svetlobnimi viri imata vrednost 100 le žarnica in halogenska sijalka. Omenjena vira sta referenčna vira za vse umetne svetlobne vire. Referenčni vir uporabljamo za primerjavo z ostalimi svetlobnimi viri, ki jih imamo na voljo [4]. Za določanje indeksa barvne reprodukcije uporabljamo paleto 14 barvnih vzorcev. Tudi barvni temperaturi referenčnega in primerjanega vira morata biti enaki. Vzorce se enega za drugim osvetli z analiziranim virom svetlobe. Koeficient se opredeli na podlagi stopnje podobnosti odboja analizirane in vzorčne svetlobe. Večja kot je razlika, manjši bo koeficient. Število CRI se nato določi s povprečjem vseh štirinajstih barvnih vzorcev. Operacijska svetilka zagotavlja visok indeks CRI za katerega smo ugotovili, da je zelo pomemben pri prepoznavanju barv. Indeks osvetlitve LED povprečnega cenovnega razreda se giblje med 60 - 80 in 80 - 95. Standard določa, da mora svetilka v bivalnih prostorih zagotavljati CRI vsaj 80, saj lahko nepravilno zaznavanje barv vpliva na človekovo počutje. Standard za operacijske svetilke zahteva CRI med 85 in 100 [1]. svetilka ne sme presegati, je 10 W/m2 za valovne dolžine pod 400 nm. Vzorec je imel zelo nizko vsebnost UV-žarkov. Bili so manjši od 0,1 W/m2 [1]. 4.9 Staranje S stališča meritev, pri katerih opravljamo meritve indeksa CRI, barvne temperature in sredinske osvetljenosti, pa ni dovolj, da jih opravimo le enkrat. Meritve je potrebno opraviti dvakrat. Prvič na začetku, ko je svetilka še čisto nova, in drugič, po končanem namernem staranju. Operacijsko svetilko staramo 10 dni. Pogoj pri staranju je, da se svetilka vklaplja in izklaplja. Staranje izvajamo s pomočjo mikrokrmilnika, katerega programiramo grafično. Na izhode mikrokrmilnika smo priklopili releje, ki so delovali kot stikala, krmilnik pa je poskrbel za napetost. Staranje je potekalo točno določeno. Svetilka mora delovati 3 ure, 1 uro mora biti ugasnjena. Po končanem staranju operacijske svetilke smo ponovno pomerili zgoraj naštete parametre. Parametri se ne smejo spremeniti za več kot 20 % in le v tem primeru je svetilka sklada s predpisi [1]. 5 Zaključek V prispevku smo opisali testne preskuse po osnovnem in dodatnem medicinskem standardu za operacijsko svetilko. Predstavljene so meritve sredinske osvetljenosti, premera svetlobnega polja, vpliva senc, globine osvetlitve, barvne temperature, indeksa barvne reprodukcije, obsevanosti z UV-svetlobo in vpliva staranja. Slika 3. Barvni prostor [1]. 4.8 Obsevanost z UV-svetlobo Standard zahteva preskuse s področja UV-obsevanja. UV-svetloba se nahaja izven našega vidnega spektra. UV-sevanje je opredeljeno z valovno dolžino od 10 do 400 nm. Oddaja ga tudi sonce, ki je sestavljeno iz približno 50 % infrardeče, 40 % vidne in 10 % UVsvetlobe. Med umetnimi viri svetlobe poznamo črne sijalke, kratkovalovne UV-sijalke, plinske UV-sijalke, laserje in svetleče diode. Poznamo kar nekaj škodljivih učinkov te vrste svetlobe. Med njimi so fotokeratitis (bolezen oči), rdečica kože, ki jo poznamo predvsem, ko je sonce močno, opekline in nekatere oblike kožnega raka. Obstajajo pa tudi koristni vplivi ob zmerni izpostavljenosti UV-svetlobi [5]. V medicini, kozmetiki, frizerstvu in še kje drugje se UV-svetlobo uporablja za razkuževanje in sterilizacijo orodja. Uporablja se tudi v živilski industriji, saj poskrbijo za pasterizacijo sokov. Bistvo pri našem avtomatiziranem preskusu je, da pomerjene vrednosti UV-svetlobe ne presegajo dovoljene meje. Dovoljena meja, katere operacijska 192 Literatura [1] Kraševec, U. Diplomska naloga: Preizkušanje delovanja operacijske luči. Ljubljana: 2019. [2] Medical electrical equipment -- Part 2-41: Particular requirements for basic safety and essential performance of surgical luminaires and luminaires for diagnosis«, IEC 60601-2-41:2010 [3] PorabimanjINFO. Kaj je temperatura barve pri sijalkah. [Online]. Dosegljivo:https://www.porabimanj.info/temperaturabarve-pri-sijalkah/ [Dostopano: 30.4.2019]. [4] CRI – indeks barvne reprodukcije – Delta. [Online]. Dosegljivo: https://shopdelta.eu/cri-indeks-barvnereprodukcije_l21_aid770.html [Dostopano: 2.5.2019]. [5] R. Miron, »Digi-Key Electronics - Lastnosti in prednosti ultravijoličnega sevanja« (1.10.2017). Dosegljivo: https://svet-el.si/revija/predstavljamo/lastnosti-prednostiultravijolicnega-sevanja/ [Dostopano: 2.5.2019]. Akustika in elektroakustika Acoustics and Electroacoustics Meritev akustične prenosne impedance simulatorjev ušesa Metod Celestina1 1 IMS merilni sistemi, d.o.o. E-pošta: metod.celestina@ims.si Measurement of acoustical transfer impedance of ear simulators In the paper we present a measurement system for determination of acoustical transfer impedance of ear simulators. Ear simulators are a special kind of acoustical couplers which bind the sound source with the measurement microphone. They replace the human ear in acoustical tests of various kinds of devices such as headphones, earphones and audiometers. The primary role of ear simulators is to act as a standardized substitute of the human ear. Their acoustical transfer impedance should resemble acoustical transfer impedance of the humar ear. Acoustical transfer impedance of ear simulators is specified by an international standards. The presented method of measurement is derived from the method for primary pressure calibration of measurement microphones by a reciprocity technique. 1 V poročilu ob zaključku raziskave [3] so ocenili metodo kot učinkovito in podali tudi nekaj praktičnih smernic za uspešno izvedbo meritve. Slika 1: Simulator ušesa za testiranje nadušesnih slušalk Brüel & Kjær tip 4153. Uvod Simulatorji ušesa so posebna vrsta akustičnih veznih členov (angl. coupler). Izvedeni so tako, da merilni mikrofon preko zaprte votlinice akustično povežejo z virom zvoka, ki so običajno slušalke ali ušešni vstavki. Volumen in oblika votlinice sta zasnovana tako, da akustični odziv votlinice ustreza določenim specifikacijam oz. akustičnemu odzivu tipičnega človeškega ušesa. Simulatorji ušesa se uporabljajo kot standardiziran nadomestek človeškega ušesa v številnih akustičnih meritvah. Primer takšne meritve je umerjanje avdiometra, tj. naprave, ki služi za testiranje sluha. Slušalke avdiometra z ustreznim simulatorjem ušesa akustično sklopimo z merilnim mikrofonom vgrajenim v simulator ušesa, ter z njim izmerimo zvočni tlak, ki ga proizvajajo slušalke. Željeni akustični odziv simulatorjev ušesa je specificiran v obliki akustične prenosne impedance ali tlačnega odziva na izhodu simulatorja pri konstantnem vzbujanju. Primer standarda za simulatorje ušesa je mednarodni standard IEC 60318-1 [4], ki predpisuje akustično prenosno impedanco za simulator ušesa za testiranje nadušesnih (angl. supraauralz“”) slušalk. Izdaja tega standarda iz leta 2009 je prvič predpisala tolerance za akustično prenosno impedanco in podala tudi opis metode za njeno meritev. V času, ko je bil stadard v fazi sprejemanja, se je oblikovala skupina metroloških inštitucij s področja akustike, ki so predlagano metodo meritve ovrednotile. ERK'2019, Portorož, 194-197 194 2 Meritev akustične impedance Akustična impedanca je fizikalna veličina, ki je razmerje med hitrostjo delcev medija, ki je posledica akustičnih vibracij, in zvočnim tlakom [1] v točki zvočnega polja a·s2 in se izraža v Pm 3 . Akustična impedanca je snovnogeometrijska lastnost, kar pomeni, da nanjo vplivajo tako lastnosti medija kot tudi oblika prostora v katerem se zvok razširja. Običajno je akustična impedanca močno odvisna od frekvence. O akustični prenosni impedanci govorimo takrat, ko se hitrost delcev in zvočni tlak ne nanašata na isto točko zvočnega polja, ampak se hitrost delcev nanaša na vhod, zvočni tlak pa na izhod akustičnega veznega člena. 2.1 Princip meritve Meritev akustične impedance izkorišča lastnosti sodobnih merilnih mikrofonov. Sodobni merilni mikrofoni so kondenzatorski in imajo zelo preprosto zgradbo, ki je prikazana na sliki 2. Merilni mikrofon je sestavljen iz elektrode in membrane. Izdelani sta iz kovine in ločeni z izolativnim obročkom iz stekla. Naelektreni sta tako, da je električni naboj na njima konstanten. Naelektritev je lahko permanentna ali pa dosežena s pomočjo polarizacijske napetosti. Postavljeni sta na določeno razdaljo in tvo- rita kondenzator. Sprememba v zvočnem tlaku povzroči silo na membrano in njen odklon. Razdalja med membrano in elektrodo se spremeni, zaradi česar se spremeni kapacitivnost med njima. Ker je električni naboj konstanten, sprememba kapacitivnosti povzroči spremembo napetosti med membrano in elektrodo, kar detektiramo kot signal iz mikrofona, ki se spreminja sorazmerno z zvočnim tlakom [2]. Razmerje med zvočnim tlakom in napetostjo M na izhodu mikrofona je občutljivost mikrofona in jo izražamo v mV Pa . Slika 2: Zgradba kondenzatorskega merilnega mikrofona. Merilni mikrofon deluje po enakem principu tudi v obratni smeri. Če nanj priklopimo električni signal, spreminjajoča napetost zaniha membrano in mikrofon deluje kot vir zvoka. Ključna lastnost kondenzatorskih mikrofonov, ki omogoča meritev akustične impedance, je recipročnost. Recipročnost pomeni, da je razmerje med električnim signalom na mikrofonu in zvočnim tlakom na membrani M enako, ne glede na to ali mikrofon uporabljamo kot zaznavalo zvočnega tlaka ali zvočni vir. Meritev zvočne impedance je izpeljana iz merilne metode, ki se uporablja za primarno umerjanje laboratorijskih mikrofonov in je standardizirana v mednarodnem standardu IEC 61094-2 [5]. Pri primarni kalibraciji mikrofonov povežemo dva mikrofona z neznano občutljivostjo z akustičnim veznim členom. Shema merilne postavitve je prikazana na sliki 3. vzbujevalni mikrofon ter U2 napetost na izhodu sprejemnega mikrofona. Vrednosti, ki nastopajo v enačbi, so kompleksne in imajo svojo magnitudo ter fazo. Pri akustični prenosni impedanci simulatorjev ušesa merimo le magnitudo, saj so specifikacije podane le zanjo. M p,1 · M p,2 = U 1 · 2 Z a,12 i1 (1) Pri primarni kalibraciji je akustična prenosna impedanca Z a,12 akustičnega veznega člena poznana, saj je zasnovan tako, da lahko njegovo akustično prenosno impedanco določimo analitično. Tok i1 skozi vzbujevalni mikrofon in napetost U 2 na izhodu sprejemnega mikrofona sta merjeni veličini, občutljivosti mikrofonov pa sta neznani. Pri primarni kalibraciji potrebujemo tri mikrofone, ki jih paroma povežemo z akustičnim veznim členom ter izmerimo tok i1 in U 2 pri različnih testnih frekvencah. Iz meritev treh parov mikrofonov lahko pri vsaki frekvenci zgradnimo sistem treh enačb s tremi neznankami, ki so občutljivosti mikrofonov. Pri meritvi akustične prenosne impedance je uporabljena ista enačba 1, le da sta občutljivosti obeh mikrofonov sedaj poznani, neznana pa je akustična prenosna impedanca Z a,12 . Ker je neznanka samo ena, je dovolj le ena meritev pri vsaki frekvenci. 2.2 Meritev toka i1 Tok i1 je tok skozi vzbujevalni mikrofon. Tok je izmerjen posredno preko meritve napetost na kondenzatorju, ki je vezan zaporedno mikrofonu. Iz znane kapacitivnosti kondenzatorja, frekvence vzbujevalnega signala ter napetosti na kondenzatorju lahko izračunamo tok z uporabo enačbe 2. i = jωCu (2) Za ta namen je uporabljen poseben tip mikrofonskega predojačevalnika (angl. transmitter unit) Brüel & Kjær tip ZE 0796, ki ima vgrajen kondenzator, ki je vezan zaporedno mikrofonu. Shema vzbujevalnega predojačevalnika je prikazana na sliki 4. Slika 3: Merilna postavitev za primarno kalibracijo mikrofonov. Pri predpostavki, da so mikrofoni recipročni, velja enačba 1. V enačbi 1 je Mp,1 občutljivost vzbujevalnega mikrofona, Mp,2 občutljivost sprejemnega mikrofona, Za,12 prenosna akustična impedanca, i1 tok skozi 195 Slika 4: Shema vzbujevalnega predojačevalnika Brüel & Kjær tip ZE 0796. Vzbujevalni predojačevalnik se lahko uporablja kot običajen predojačevalnik, ko je priključek T1 odklopljen in kondenzator ni v funkciji. Če med priključka T1 in T5 priključimo napetostni vir, pa je izhod predojačevalnika na priključku T4 enak napetosti na kondenzatorju. 2.3 Korekcija odziva mikrofona V enačbi 1 nastopajo odprtozančne občutljivosti mikrofonov. Odprtozančna občutljivost mikrofonov (angl. open circuit sensitivity) je občutljost mikrofona, ko so izhodne sponke mikrofona neobremenjene. Ko mikrofon priklopimo na predojačevalnik, izhod mikrofona obremenimo z vhodno impedanco predojačevalnika. Vpliv predojačevalnika odpravimo tako, da preko posebnega priključka predojačevalnika vsilimo znano napetost zaporedno z mikrofonom. Princip je prikazan na sliki 5. Ta vsiljena napetost (angl. insertion voltage) ima isti učinek, kot bi ga imela enaka napetost, ki bi jo generiral mikrofon kot posledico izpostavljenosti zvočnemu tlaku. Iz znane vsiljene napetostji Ui ter napetosti na izhodu predjojačevalnika U , lahko izračunamo zmanjšanje napetosti zaradi obremenitve mikrofona k = UUi . Slika 5: Princip kompenzacije preojačevalnika. 3 Merilni sistem 3.1 Delovanje sistema Shema merilnega sistema je pikazana na sliki 6. Sistem je sestavljen iz osebnega računalnika z namensko programsko opremo, ki je rezultat lastnega razvoja, ter analizatorja Pulse LAN-XI. Slika 7: Merilna postavitev za simulator ušesa Brüel & Kjær tip 4153. Analizator ima štiri merilne vhode ter dva generatorska izhoda. Merilni vhodi, na katere sta priklopljena vzbujevalni in merilni mikrofon, omogočajo interni priklop generatorja na enega izmed pinov v vhodnih konektorjih. Ta napetost je uporabljena za vzbujanje mikrofona na vzbujevalnem mikrofonu, ter korekcijo odziva na obeh mikrofonih. Interni preklop generatorja ter njegove nastavitve so upravljane samodejno preko programske opreme. Vzbujevalni mikrofon je na analizator priklopljen preko preklopnega vezja. Preklopno vezje, ki je bilo razvito za namene merilnega sistema, je sestavljeno iz relejev in krmilnega dela. Krmilni del zagotavlja povezavo USB z računalnikom. Preklopno vezje omogoča tri načine vezave: • Direktno: Signali so iz vhodnega na izhodni konektor povezani brez prevezav. • Meritev korekcije: Signali so povezani tako, da omogočajo meritev korekcije mikrofonskega odziva. • Vzbujanje: Signali so povezani tako, da omogočajo vzbujanje z mikrofonom. Sistem sočasno z akustično prenosno impedanco pomeri tudi tlačni odziv pri konstantnem odmiku ter konstantni hitrosti delcev na vhodu simulatorja ušesa. Primer izmerjenga odziva je prikazan na sliki 8. Slika 6: Shema merilnega sistema. Programska oprema temelji na podatkovni bazi PostgreSQL. V podatkovni bazi so shranjene občutljivosti mikrofonov uporabljenih v kalibraciji, kapacitivnosti kondenzatorja v vzbujevalnem predojačevalniku, podatki o kalibriranih umetnih ušesih, podatki o naročnikih kalibracij ter rezultati kalibracij. Drugi del programske opreme je program za analizo zvoka PULSE LabShop. Na sliki 7 je prikazana merilna postavitev za kalibracijo umetnega ušesa tip 4153 prizvajalca Brüel & Kjær. 196 3.2 Pritrditev vzbujevalnega mikrofona Vzbujevalni mikrofon bi moral biti na vhod simulatorja ušesa pritjen tako, da je membrana mikrofona v ravnini odprtine, membrana pa bi morala biti velika kot odprtina. To pomeni, da bi morali na odprtino simulatorja ušesa pritrditi mikrofon velikosti ene inče brez zaščitne mrežice. S praktičnega vidika takšna pritrditev ni optimalna, saj so bili enoinčni mikrofoni nadomeščeni s polinčnimi, pa tudi membrana mikrofona, ki je zelo občutljiva, je izpostavljena nevarnosti poškodbe. V študiji [3] je bilo ugotovljeno, da uporaba mikrofona manjše dimenzije nima vpliva na rezultat, oz. je vpliv zanemarljiv v primerjavi z merilno negotovostjo. Podobno na rezultat Slika 10: Ekvivalentno električno vezje za simulator ušesa. Slika 8: Primer izmerjene prenosne impedance in tlačnega odziva. ne vplivata zaščitna mrežica in njena oblika. Na točnost rezultata je nekoliko vplivala postavitev mikrofona, kadar ta ni bil nameščen v središču odprtine umetnega ušesa. S primernim adapterjem lahko enostavno zagotovimo pravilno postavitev mikrofona. Na sliki 9 je prikazan adapter za pol-inčni mikrofon z zaščitno mrežico za uporabo s simulatorji ušesa. Temperaturno korekcijo izvedemo tako, da določimo faktor, za katerega se poveča impedanca električnega modela, ko vrednosti posameznih elementov spremenimo skladno z odstopanji okoljskih pogojev v času meritve od referenčnih. S faktorjem, ki ga določimo na ta način, delimo izmerjeno impedanco. Vrednosti posameznih elementov v nadomestnem vezju spremenimo tako, da jih pomnožimo z naslednjimi faktorji: • Akustična podajnost (angl. compliance) (C): • Akustična masa (L): P0 P · P0 P T0 +23 T0 +T 0.5 • Akustična upornost (R): ( TT00+23 +T ) 4 Slika 9: Adapter za pol-inčni vzbujevalni mikrofon. Pri meritvi akustične impedance je pomembno, da adapter za vzbujevalni mikrofon tesni in da zvok ne uhaja iz votlinice umetnega ušesa, kjer se vzpostavi tlačno zvočno polje. Rob odprtine simulatorja ušesa se med uporabo pogosto rahlo poškoduje, zaradi česar je tesnenje med meritvijo težko zagotoviti. Eksperimentalno smo ugotovili, da lahko s tanko plastjo vazelina na adapterju za vzbujevalni mikrofon umetno uho uspešno zatesnimo v primeru manjših poškodb. 3.3 Korekcija okoljskih pogojev Akustična impedanca je odvisna od temperature zraka ter statičnega zračnega tlaka. Specifikacije za simulatorje ušesa so podane pri referenčnih pogojih (T0 = 23 °C, p = 101325 Pa). V kolikor v času kalibracije okoljski pogoji odstopajo od referenčnih, je potrebno izvesti korekcijo, za katero potrebujemo model ušesa. V standardu IEC 60318-1 je za simulator ušesa podano nadomestno električno vezje (slika 10) skupaj z vrednostmi elementov, katerega električna impedanca je sorazmerna akustični prenosni impedanci, med njima pa velja zveza a·s2 1Ω = 105 Pm 3 . 197 Zaključek Meritev akustične prenosne impedance je zasnovana na osnovi metode, ki je bila definirana v mednarodnem standardu IEC 60318-1 in je izpeljana iz metode za primarno kalibracijo mikrofonov. Na osnovi študije so jo kot primerno ocenile številne pomembne metrološke organizacije s področja akustike. Danes se metoda uporablja v nekaterih najvišjih metroloških laboratorijih s področja akustike. Sistem za merjenje akustične impedance, ki smo ga razvili v podjetju IMS, omogoča uporabniku izvedbo meritve, izračun merilne negotovosti, korekcijo okoljskih pogojev ter generiranje poročila o meritvi. Literatura [1] What is acoustic impedance and why is it important? https://newt.phys.unsw.edu.au/jw/z.html. Dostopano junija 2019. [2] Brüel and Kjæer. Measurement microphones. Technical report, Brüel and Kjæer, 1994. [3] R. B. et al. Measurement of the acoustical impedance of artificial ears. Report, National Physical Laboratory, 2008. [4] IEC. IEC 60318-1:2009, Electroacoustics - Simulators of human head and ear - Part 1: Ear simulator for the measurement of supra-aural and circumaural earphones. Standard, International Electrotechical Commission, 2009. [5] IEC. IEC 61094-2:2009, Electroacoustics - Measurement microphones - Part 2: Primary method for pressure calibration of laboratory standard microphones by the reciprocity technique. Standard, International Electrotechical Commission, 2009. Uporaba Raspberry Pi za izdelavo Hi-Fi zvočniškega sistema Rok Prislan MK3 d.o.o., Peričeva 21, 1000 Ljubljana E-pošta: rok.prislan@mk3.si The use of Raspberry Pi for building a Hi-Fi audio system Embedded devices are entering our living environment as part of home automation systems, virtual assistants, surveillance systems, multimedia systems and more. In our case, a popular and accessible Raspberry Pi singleboard computer is incorporated into a Hi-Fi audio system. As part of it, Raspberry Pi is used as a network accessible play back device and for digital signal processing, i.e. as an active digital cross-over. In the paper the design and development of the sound system is presented including the building of the loudspeaker cabinet and the development of the digital filters based on the measured acoustic response of the drivers. 1 V članku prestavljena avdio veriga poleg mikroračunalnika vključuje še večkanalno zvočno kartico (slika 1), ojačevalec in zvočniške elemente, ki sestavljajo zvočniško omaro. Pri tem izpostavljamo, da smo poleg strokovnih kriterijev pri zasnovi sistema sledil tudi ekonomičnosti izvedbe, saj je strošek nabave komponent in izdelave celotnega sistema znašala zgolj okvirnih 400 eur. Uvod Samogradnja zvočniških sistemov je pogost konjiček avdio entuziastov. Proces snovanja “idealnega” zvočniškega sistema zajema izbiro elektronskih in elektro-akustičnih komponent, preračune in načrtovanje zvočniške omarice ter razvoj ustreznih kretnic. V tem smislu je proces izrazito interdisciplinaren, saj vključuje področje akustike, elektrotehnike, obdelave materialov in celo digitalne obdelave signalov ter programiranja, kot je predstavljeno v prispevku. Pri tem je zanimivo, da je zvočniški sistem sicer lahko podvržen rigoroznemu akustičnemu testiranju, a praviloma končno sodbo podaja slušna ocena pristnosti zvočne reprodukcije. Ta je v osnovi subjektivna, kar odpira prostor za diskusijo in kresanje mnenj ter daje s tem samogradnji zvočniških sistemov dodaten moment. V obdobju zadnjih let so postali mikroračunalniki dostopni in sposobni obdelave avdio signalov v sprejemljivih časih. S tem postaja mogoče tudi v zvočniški sistem1 vključiti mikroračunalnik, kar odpre možnost digitalne obdelave avdio signala. Primerjalno z zvočniškimi sistemi, ki so povsem analogni, digitalna obdelava signalov ponuja več izbire pri korekcij odziva2 (deloma celo nelinearnosti). Pri tem lahko bistveno izboljšamo frekvenčno enakomernost odziva zvočniškega sistema in razširimo njegov frekvenčni obseg reprodukcije. 1 Kot Hi-Fi zvočniški sistem razumemo avdio verigo: izvorojačevalec-zvočnik. 2 Praviloma velja, da odziv zvočnika najbolj odstopa od želenega v smislu frekvenčne enakomernosti in linearnosti. ERK'2019, Portorož, 198-201 198 Slika 1: Fotografija Raspberry Pi (levo) in večkanalne zvočne kartice (desno). V smislu umestitev razvitega zvočniškega sistema v širši elektro-akustični kontekst gre za aktivni (frekvenčna filtracija se izvede pred ojačevalno stopnjo) stereo (dvo kanalni) sistem. Zvočniška omarica je zatesnjena in tri vejna, kjer zvočniške komponente ločeno reproducirajo posamezne dele frekvenčnega spektra (nizko-, srednjein visoko-tonec). Poleg tega je delovanje obeh nizkotonskih komponent združeno, kar označujemo z 2.1. Podrobnejše predstavitve zvočniških komonent članek ne zajema, saj namen članka ni predstavitev sicer pomembnih teoretičnih osnov izgradnje zvočniških sistemov. Te zajemajo Thiele/Small parametre, s katerimi definiramo nizko-frekvenčno obnašanje zvočnika in splošne fizikalne principe delovanja zvočniških omaric (npr. zatesnjena, refleksna). Zainteresitan bralec je napoten na strokovno literaturo s področja (npr. [1, 2]). 2 Raspberry pi v avdio verigi Rasperry Pi [3] (v nadaljevanju pi) je mikroračunalnik, ki se je na trgu pojavil leta 2013 in je od takrat na voljo v več generacijah in verzijah. V našem primeru smo uporabili Raspberr Pi 2 Model B (za več specifikacij glej [4]), kjer smo s stališča strojne opreme uporabili USB 2.0 za priklop zunanje večkanalne zvočne kartice in Ethernet vmesnik za povezavo v medmrežje. Za pi je na voljo več operacijskih sistemov, pri čemer proizvajalec ponuja Raspbian [5], ki smo ga uporabili v projektu. Raspbian je za pi prilagojen Debian Linux operacijski sistemi, kar pomeni da gre za odprtokodno in v celoti prosto dostopno programsko rešitev. V sklopu projekta smo uporabili tudi sledečo programsko opremo: • Jack - Audio Connection Kit [6], ki omogoča prevezave digitalnega avdio toka (signala) v realnem času, med posameznimi programskimi komponentami (predvajalnik, filtri, zvočna kartica ...) • VLC media player [7] kot predvajalnik avdio vsebin, ki omogoča upravljanje preko medmrežja • jconvolver [8], s katerim se izvaja večkanalna konvolucija avdio signalov (kot set FIR filtrov). Dodatno smo še spisali skripto, s katero se ob zagonu operacijskega sistema zaženejo potrebni programi in vzpostavijo avdio povezave med njimi. Tako je po vklopu pi možno upravljanje avdio vsebin preko medmrežja z osebnim računalnikom ali pametnim telefonom, pri čemer direkten dostop do grafičnega vmesnika operacijskega sistema ni potreben. 3 Večkanalna ojačevalna stopnja Ojačevalniki so praviloma veljali za dražje komponente zvočniškega sistema, kar se je s pojavom integriranih ojačevalcev, predvsem pa ojačevalcev klase D, bistveno spremenilo. S tem so postali zvočniški sistemi z aktivnimi kretnicami, kakršen je tudi naš, bistveno dostopnejši. Ob zasledovanju ekonomičnosti sem izbral večkanalno ojačevalno stopnjo v obliki rabljenega večkanalnega ojačevalnika za hišni kino (5.1), ki jih je na trgu v izobilju. Ta je omogočil kontrolo glasnosti z daljincem in je oblikovno sprejemljiv element v bivalnem prostoru. 4 Slika 2: Fotografija zvočniške omarice med izgradnjo z vidno kvadratno osnovo in zasukom fronte (leva pokončna stranica), s katerim je usmerjena akustične os zvočnika. Viden je tudi veliki izrez za nizko-tonsko komponento, ki je pritrjena v stransko steno zvočniške omarice. Izdelava zvočniške omarice Izbran je bil format zvočnika, ki je namenjen postavitvi na regal/polico (ang. bookshelf loudspeaker). Pri tem je bil izhodišče razvoja regal znanega proizvajalca s standardiziranimi policami dimenzij 33 × 33 × 33 cm, kar omeji volumen vsakega zvočnika na največ 27 l. Postavitev zvočnika v regal narekuje uvedbo zasuka akustične osi (glej sliko 2), saj rotacija samega zvočnika v regalu ni možna. Zasuk akustične osi je namreč ključen za doseganje optimalne stereo postavitve [9]. V izogib izrazitim interferenčnim pojavom v območju prehodne frekvence delovanja srednje- in visoko- tonske zvočniške komponente (okoli 4000 Hz), smo ti dve umestili čim bližje. Visoko- in srednje- tonsko komponento smo umesili tudi asimetrično glede na kvadraten profil fronte omarice z namenom minimizacije neželenih uklonskih efektov. Te smo dodatno omejili z dodatkom absorpcijske plasti (poliuretanska pena) v področje fronte zvočnika. Asimetrična postavitev zvočniških komponent in prisotnost pene je vidna na sliki 3. 199 Slika 3: Fotografija fronte zvočniške omarice z vidno asimetrično postavitvijo zvočniških komponent in preplastitvijo fronte z zvočno vpojno poliuretansko peno. Reža (levo) je sevalna odprtina za nizko-tonsko zvočniško komponento. Slika 4: Fotografija notranjosti zvočniške omarice z vidno ločilno PVC cevjo za srednje-tonsko komponento (levo) in dodatkom zvočno absorpicjskega polnila (desno). odziv [dB] Projektno definiran nizkofrekvenčni odziv zvočnika končni filter impulznega odziva (FIR filter). Tako je za je pri 35 Hz, kar je v smislu utečenih principov izdelave filter dolžine N izhodni signal y ob času n zvočniške omarice [1] neizvedljivo v tako omejenem voN X lumnu (27 l). Posledično smo pričakovali, da bodo za y[n] = (x ∗ h)[n] = h[i] · x[n − i]. (1) nizko-tonsko komponento potrebne izrazite nizkofrekvenčne i=0 kompenzacije signala. Tako smo izbrali nizko-tonsko V konkretnem primeru filtre h določim na podlagi zvočniško komponento, ki je bistveno predimenzionirana izmerjenega odziva posamezne zvočniške komponente. glede na ciljno raven zvočnega tlaka (velik izrez viden na Meritev sem izvedel v približku prostega polja3 , ko imajo slikah 2 in 4). Za izogibanje pojava neželenih resonanc v zvočniški odboji na mejnih površinah majhen vpliv na izmerjen odomarici smo volumen nizko- in srenje- tonske kompo- ziv. Fotografija meritve z vidnim zvočnikom in mikrofonente bogato zapolnili z zvočno vpojnim filcem in po- nom je prikazana na sliki 5. liuretansko peno (slika 4), kot je tudi sicer ustaljeno pri frekven ni odzivi zvo ni kega sistema izgradnji zvočniških omaric. Vzpostavili smo tudi ločen 10 meritev volumen za srednje-tonsko komponento, ki jo tvori PVC filter cev (slika 4). Ta ločitev je nujna, sicer bi nizko-frekvenčni 0 po filtraciji zvok povzročal neželene ekskurzije membrane srednje10 tonske komponente, kar bi bistveno vlivalo na linearnost reprodukcije. Končni izgled zvočniške omarice je viden 20 na fotografiji v času meritve na sliki 5. 30 nizko-tonec odziv [dB] 10 0 10 20 30 srednje-tonec odziv [dB] 10 0 10 20 30 visoko-tonec odziv [dB] 4 po filtraciji 2 0 2 Slika 5: Fotografija meritve frekvenčnega odziva v približku prostega polja. Z namenom preprečevanja strukturnih prenosov zvoka sta zvočnik in mikrofon postavljena na ločenih stojalih. 5 20k frekvenca [Hz] 10k 2k 3k 4k 5k 1k 200 300 500 100 20 30 50 4 skupni kon ni odziv Slika 6: Izmerjeni frekvenčni odzivi in uporabljeni filtri za posamezno zvočniško komponento (gornji trije grafi) in skupni dobljeni odziv zvočniškega sistema po filtraciji(spodnji graf). V naslednjem koraku z razvitim algoritmom določim frekvenčni potek korekcijskih filtrov. Pri tem kot para- Razvoj filtrov Filtracija temelji na konvoluciji digitalnega signala x s filrom h, ki je v smislu digitalne obdelave signalov [10] 200 3 Meritev nizko-tonske zvočniške komponente ni mogoče izvesti na opisan način, temveč v bližnjem polju[1]. metre določimo želeno frekvenčno razpon, frekvenčno območje reprodukcije zvočnike komponente in največjo dopustno ojačanje. Tako dobljen frekvenčni odziv filtra posamezne zvočniške komponente skupaj z izmerjenim frekvenčnim odzivom je prikazan na sliki 6. Graf prikazuje tudi frekvenčni odziv celotnega sistema, ki kaže na odstopanje frekvenčnega odziva v frekvenčnem območju 35 - 20 kHz, ki je manjše od ± 2 dB. Tovrstno odstopanje praviloma srečamo v deklaracijah frekvenčnega odziva studijskih monitorjev, kar je zavidljiv dosežek. 6 [6] Jack - audio Connection Kit, http://jackaudio.org/ [7] VLC media player, https://www.videolan.org/vlc/index.sl.html [8] jconvolver, https://kokkinizita.linuxaudio.org/linuxaudio/ [9] EBU Tech. 3276, Listening conditions for the assessment of sound programme material: monophonic and two–channel stereophonic [10] J. G. Proakis, D. G. Manolakis: Digital Signal Processing, Prentice-Hall International (1996) Slušna ocena delovanja V sklopu slušne ocene kvalitete zvočniškega sistema izpostavljamo predvsem pristnost in natančnost reprodukcije ter impresivno zmožnost reprodukcije najnižjih frekvenčnih komponent, česar pri zvočniških omaricah tako omejenega volumna nismo vajeni. Nadaljnje teste bomo izvedli tudi v prostoru za slepo poslušanje, ki ga vzpostavljamo v podjetju. Izpostavljam še, da zvočniški sistem nima slišnih šumov, v reprodukciji pa niso slišne prekinitve. Te smo v fazi načrtovanja prepoznali kot potencialni faktor tveganja, saj smo uporabili izključno finančno dostopne in neprofesionalne komponente. Ravno tako v zvočniškem sistemu niso slišne druge akustične anomalije. 7 Možnosti nadgradnje in nadaljnje delo Vzpostavljen zvočniški sistem bo v nadaljevanju podvržen dodatnemu testiranju in izboljšavam. Pri tem želimo filtre nadgraditi na način, da zajemajo poleg amplitudne tudi fazno korekcijo odziva. Podobno bi želeli filtre nadgraditi z dodatnimi akustičnimi meritvami v samem prostoru poslušanja, s čimer bi lahko korigirali nekatere anomalije prostorske akustike. Dodatno nameravamo izvesti tudi slišne teste primerjalno z referenčnimi studijskimi monitorji v kontroliranem okolju, t.j., prostoru za slepo poslušanje, kjer ocenjevalec ni v naprej seznanjen s tem, katere zvočnike posluša. V sklopu možnosti nadgradnje omenimo še hiter razvoj mikroračunalnikov, saj je letos na trgu na voljo pi četrte generacije z bistveno izboljšanimi strojnimi kapacitetami. Tako bi lahko pi poleg obdelave signalov in predvajanja avdio vsebin deloval tudi kot multimedijski center, kar bi izboljšalo uporabniško izkušnjo. Literatura [1] W. Marshall Leach: Introduction to Electroacoustics and audio Amplifier Design, Georgia Institute of Technology (2003) [2] P. Newell, K. Holland: Loudspeakers - For Music Recording and Reproduction, Elsevier Ltd (2007) [3] Raspberry Pi, https://sl.wikipedia.org/wiki/Raspberry Pi [4] Raspberry Pi 2 Model B, https://www.raspberrypi.org/products/raspberry-pi-2model-b/ [5] Raspbian, https://www.raspberrypi.org/documentation/raspbian/ 201 Nekonvencionalen poskus reševanja slabih akustičnih lastnosti v prazni dvorani Franc Policardi-Antoncich1 1 LUCAMI, Fakulteta za elektrotehniko, Tržaška cesta 25, SI-1000 Ljubljana, Slovenija franc.policardi@fe.uni-lj.si Unconventnional experiment to solve poor acoustics in a small empty hall Acoustics in empty halls and rooms is usually very poor. An unusual trial with very low cost materials has been developed as an idea first (2), through specific room analysis (3), search and correct materials choice (4) and then realized in the Goriška region close to Vipava as a proof of concept (5, 6, 7). Results (8, 9) show good accordance with the initial idea and the ability to a) eliminate flutter echo, b) low high frequency peaks, c) smoothen low frequency peaks, c) smooth resonant frequencies and d) smooth overall acoustic response i.e. RT60 (5). This small text demonstrates the feasibility and the applicability of the low budget room acoustic correction concept. 1 Uvod Akustično obnašanje dvoran je še dandanes pod močno lupo. Običajen način razumevanja akustičnega obnašanja dvoran predpostavlja uporabo nekaterih normiranih meritvenih procedur po ISO Standardu 3302 [1], ISO Standardu 140-4 [2], ISO Standardu 354 [3] ter ISO Standardu 3742-1 [4], katere temeljijo na teoretičnem konceptu difuznega zvočnega polja. Na začetku procesa lahko teoretično izračunamo nekaj pomembnih parametrov le s pomočjo dimenzij in obliki dvoran ter specifičnih karakteristik površinskih in gradbenih materialov. V resnici nam samo realne meritve lahko podajo dovolj koristnih informacij, preko katerih lahko vsaj teoretično točno ocenjujemo in eventualno projektiramo možne spremembe in izboljšave v dvorani. Žal vse meritve opravimo v prazni dvorani [1] zato, ker publika ne bi vzdržala toliko časa v popolni tišini in pod neprijetnimi merilnimi signali. Tako ali tako bi bila in je tudi v realnosti prisotnost publike zelo pomembna, ker vsak človek predstavlja akustično absorpcijo preko svojega telesa in oblek, akustično difuzijo in difrakcijo zvoka preko svoje nesimetrične oblike, zaseda prostor in posledično zmanjšuje volumen dvorane, kjer se akustično valovanje ne more več pojaviti, je vir toplote in vlage itd., tako da vsi ti in še dodatni dejavniki močno vplivajo na akustične lastnosti pri različnih frekvencah. Spremembe akustičnega obnašanja dvorane normalno opravimo preko: a) spremembe oblike dvoran, b) spremembe površinskih materialov, c) postavitve ERK'2019, Portorož, 202-205 202 določenih absorpcijskih in difuzijskih rešitev. Ta pristop je ponavadi precej zapleten in drag, zato so tudi enostavne, poceni in kakovostne rešitve preko nekonvencionalnih materialov zelo dobrodošle. Potrebno je spomniti, da razporeditev materiala močno vpliva na akustične lastnosti dvorane, tako da npr. difuzna razporeditev omogoča bolj enakomeren nadzor osnovnega odmevnega časa (Reverberation Time RT60), medtem ko bolj koncentrirana razporeditev materiala povzroča, da sta akustična mikroklima RT60 različna npr. za glasbenike in za poslušalce. 2 Prvi koncept Akustična sanacija dvorane v prostorih krajevne skupnosti v Ložah pri Vipavi je bila opravljena v prostoru, ki je namenjen za manjše koncerte, otroške predstave in sestankom krajevne skupnosti. Prišli smo do ideje, da bi razvili sistem za izboljšanje akustike dvorane preko uporabe le enega poceni in nenavadnega materiala za celotno dvorano. Želeli smo si tudi, da bi z uporabo istega materiala in njegove razporeditve istočasno zagotovili nekaj absorpcijskih in nekaj difuzijskih lastnosti ter pri tem zagotovili skladnost z zahtevami ZVKD. Zaželene akustične korekture slabega akustičnega obnašanja dvorane bi tako pridobili preko ugodne izbire materiala ter preko vnaprej določene razporeditve in količine materiala. 3 Dvorana Izbrali smo prazno pravokotno "shoe-box" dvorano v Ložah pri Vipavi, ker bi imeli možnost neomejenih poskusov in ker je lokacija posebno mirna ter brez velikih izvorov hrupa v okolici. Stavba v kateri se nahaja dvorana ima letnico izgradnje 1945, zidovi so zelo debeli in podi so še delno leseni. Dvorana ima pravokotno obliko, stene so zidane s polnimi zidaki ter prekrite z ometom. Tla so položena s 4mm tankimi linolejskimi ploščicami na betonski podlagi. Strop je ravno tako betonski, pri čemer je strop spuščen v izvedbi viseče aluminijaste konstrukcije z mavčnimi polnili (armstrong 58 x 58cm) ter lučmi. Ventilacija ter električna napeljava se nahajata nad visečim stropom. Dvorana je dnevno zelo razsvetljena, saj ima kar 6 aluminijastih oken velikosti 2,1m x 1m. Štiri okna se nahajajo na južni steni, na zahodni steni dve ter ena vrata na severni steni. Osnovne mere dvorane: dolžina 9,10m, širina 5,89m, osnovni strop - tla 3,28m in viseči strop - tla: 3m kot je prikazano na sliki 1. polsferična oblika istega materiala nam je izkazovala dobro lokalno difuzijsko lastnost, tako da smo se odločili za poskus. Zbrali smo različne vrste sadjarske embalaže in jih naprej vzorčno testirali. Najboljše zaželene karakteristike sta izkazovali oblika s 6 polsferičnimi difuzorji in oblika z 10 polsferičnimi difuzorji, obe prikazani na sliki 2. Slika 2. 6x polsferični in 10x polsferični akustični material Slika 1. Računalniški 3D prikaz dvorane v Ložah pri Vipavi Prvi akustični vtisi so nakazovali, da zunanjega motečega hrupa praktično ni in da je razsvetljava dovolj tiha, vendar so prisotni zelo moteč "flutter echo" oz. trepetajoči odmev, močan odmev ene nizke frekvence in predolg odmev visokih frekvenc. 4 Akustični absorpcijsko-difuzijski material Predpostavimo, da meritve akustične impedance materialov niso del tega prispevka, v katerem se bomo osredotočili na rešitev realne akustične problematike. Za širokopasovno absorbcijo zvoka poznamo različne pene, za specifične frekvence lahko uporabimo Helmholzerjeve resonatorje in za določene pasovne širine resonančne plošče. Difuzijo zvočnega valovanja lahko zagotovimo preko Schroederjevih difuzorjev, preko trdih ukrivljenih materialov in preko togih 3D materialov. Želeli smo si, da bi določen material istočasno imel nekaj absorpcijskih in nekaj difuzijskih lastnosti in to lahko pridobimo preko: a) oblike materiala, b) njegovih fizikalnih lastnosti, c) 3D površine, d) oblike razporeda in e) količine materiala. Omenjene lastnosti so odvisne od smeri prihajanja zvočnega vala kar je tako kritično, da se za specifične valovne dolžine nekateri materiali v prvi situaciji obnašajo kot absorberji in v drugi kot reflektorji. Naš material bi moral največ absorbirati in odbiti po različnih kotih visoke frekvence in po raznih poskusov smo se odločili za absorpcijo preko poroznega tankega materiala, difuzijo preko 3D oblike istega materiala ter obe karakteristiki preko posebno postavitev v dvorani. Odločili smo se, da bomo absorpcijske lastnosti preverjali na dejanskih vzorcih preko različnih poskusov in to navpično in difuzno. Zbiranje materialov je trajalo nekaj časa, dokler nismo naleteli na primerren polporozni celulozni vzorec. 3 mm debele lepenkaste polporozne plošče imajo gostoto le 250g/m2 lahke in so izkazovale svoje absorpcijske lastnosti pri visokih frekvencah; Končna odločitev je padla na 10 polsferično obliko, ker je ta vzorec bolj tog in ima 8 x 4 mm velikih okroglih odprtin. Te luknjice postanejo pomembne za izražanje difuznosti pri visokih frekvencah. Izbrani material smo dvodimenzionalno oblikovali tako, da bi ga bilo mogoče brez težav montirati na stene in na strop. Izbrali smo posamezne plošče dimenzij 50 x 80 cm. 5 Materiali in metode V prazni pravokotni 54m2 in 160 m3 veliki dvorani na Vipavskem smo opravili več poskusov. Poskus s ploščami na stenah ni bil uspešen, zato smo se odločili za obešanje plošč na strop. Meritve smo opravili v soboto, ko zunanjega hrupa sploh ni bilo; notranji hrup smo lepo nadzorovali, saj smo bili na lokaciji sami. Najprej smo dvorano popolnoma izpraznili in se odločili za postavitev aparatur na lokaciji kjer sta običajno oder in publika. Merilne aparature smo postavili na 2 stola. Prvi stol smo uporabili za 2 zvočnika Genelec 8020C [5] z usmeritvijo 60º (preko te postavitve smo kompenzirali neizogibno direktivnost visokih frekvenc zvočnikov), na drugi stol zvočna kartica in računalnik. Postavitev je prikazana na sliki 3. Slika 3. Razporeditev zvočnika in merilni mikrofon 203 Merilni mikrofon Peavey PVR-1 s frekvenčnim razponom 40Hz - 20kHz je imel svoje stojalo postavljeno na višino 1,20 m, kar predvidevajo že omenjeni ISO standardi; mikrofon smo priključili preko XLR-XLR Klotz kabla na mešalno mizo Behringer XENYX 1202FX; merilne signale smo sproščali preko 2 zvočnikov Genelec 8020C. Računalniški program REW v 5.1 - Room EQ Wizard Room Acoustics Software je obenem generiral sinusni prelet med 40Hz in 20kHz, ga snemal preko merilnega mikrofona in opravil vse kalkulacije na računalniku Asus. Program omogoča digitalno lineariziranje vsakega mikrofona [6], tako da smo, glede na daljšo obdobje meritvenih procesov in zaželeno linearnost, elektroakustično karakteristiko digitalno linearizirali pred vsako meritvijo. Predojačevevanje in A/D konverzija sta bila opravljena preko zvočne kartice računalnika Asus. Vsako meritev smo opravili 3 krat in rezultate povprečili, vendar so bile razlike res minimalne (+/1dB). Na sliki 4 prikazujemo pridobljene rezultate impulznega odziva (zgoraj) in spektrograma (spodaj) z vnaprej določeno postavitvijo. Slika 5. Shematični prikaz obešanje plošč s stropa Ozračunali smo najboljšo postavitev in se odločili za pokrivanje največ direktnih zvočnih valov brez oviranja razsvetljave, kakor prikazuje slika 6. Slika 6. Izbrana postavitev visečih plošč 7 Meritve v polni dvorani Isti dan smo tudi opravili kompletne meritve s postavljenimi visečimi ploščami. Obešanje plošč je bilo dovolj enostavno in je trajalo le 3 ure. Slika 4. Akustično obnašanje prazne dvorane - impulzni odziv (zgoraj) in spektrogram (spodaj) 6 Postavitev akustično absorpcijskodifuzijskih plošč Po prvem neuspešnem poskusom na stenah smo se odločili, da absorpcijsko-difuzijske plošče obesimo navpično. Nekaj let nazaj je bil v dvorani postavljen viseči strop iz armstrong plošč, katerega ni bilo mogoče odstraniti. To slabost smo takoj spremenili v prednost in se odločili za obešanje plošč na aluminijasti okvir stropa armstrong, kakor prikazuje slika 5. 204 Slika 7. Akustično obnašanje preurejene dvorane- impulzni odziv (zgoraj) in spektrogram (spodaj) Pri spektrih signala po sanaciji vidimo, da ima signal manj »izbruhov«, kot jih ima signal pred sanacijo. Očitna sprememba je med 60Hz in 10kHz 8 Meritve in komentar Vsako meritev smo opravili 3 krat v prazni in 3 krat v akustično tretirani dvorani ter rezultate povprečili, vendar so bile razlike res minimalne, v razredih +/- 1dB. Na sliki 8 natančno časovno analiziramo odmevni odziv v prazni dvorani. med 150Hz in 900Hz so se zmanjšali ter se med 7,5kHz in 12kHz precej poravnali. Časovni problem s predolgim odmevom okoli 55Hz je še prisoten, vendar iz specifične oblike razumemo, da je zelo verjetno problem v merilni verigi in ne v dvorani. Okoli 110Hz 150Hz se je odziv poravnal in predolgi odmev med 6kHz in 16kHz ter o trepetajočem odmevu med 9,5kHz in 11kHz ni več sledu. Sedaj se dvorana frekvenčno izkazuje kot lepo enakomerna, posebej nad 900Hz, kar zelo verjetno omogoča dobro razumevanje glasbe in tudi hitrega govora. 9 Zaključek Slika 8. Časovna analiza odmevnega odziva v prazni dvorani Prazna dvorana Prvi slišni problem, trepetajoči odmev, se je jasno pokazal tudi v impulznem odzivu. Odločili smo se natančno analizirati vrhove in jih povezati s fizikalnimi dimenzijami dvorane. Pokazal se je problem med dvema krajšima vzporednima stenama in ne med daljšima z 52ms, 104ms, 156ms in 208ms zakasnitvijo odboja. Začetni vrhovi 9ms, 20ms in 30ms se v roku EDT (Early decay time) umirijo, ne predstavljajo daljšega problema in so pozitivni, ker dovolijo poslušalcu, da si slišno v možganih predstavlja obliko in dimenzije te specifične dvorane. Iz analize spektrograma jasno razumemo, kako se dvorana obnaša časovno, frekvenčno in energetsko v slišnem spektru. Slika 8 prikazuje frekvenčni problem nepopravljene dvorane pri nizkih frekvencah okoli 55Hz, padec med 60Hz in 100Hz ter močne energetske vrhove med 150Hz in 900Hz in med 7,5kHz in 12kHz. Istočasno prikazuje časovni problem s predolgim odmevom okoli 55Hz do 1s, okoli 110Hz - 150Hz do 800ms in s predolgim odmevom med 6kHz in 16kHz do 1,2s; posebej potrdimo trepetajoči odmev med 9,5kHz in 11kHz. Frekvenčno se dvorana izkazuje kot dovolj enakomerna, razen pri padcu med 60Hz in 100Hz. Popravljena dvorana Iz impulznega odziva slike 7 vidimo, da se je prvi slišni problem, trepetajoči odmev, popolnoma umiril. Analiza prikazuje, da se niso pojavili drugi nezaželeni akustični fenomeni, niti v sklopu drugih dveh daljših vzporednih sten. Začetni vrhovi 9ms, 20ms in 30ms so se precej zmanjšali in to pomeni, da si poslušalec v začetnem času upadanja zvočnega signala EDT ne more več slišno predstavljati oblike in dimenzij te specifične dvorane, in čeprav tega dejstva ne ocenjujemo pozitivno, ta faktor ni tu posebej pomemben. Spektrogram na sliki 7 poleg tega prikazuje frekvenčni problem pri nizkih frekvencah okoli 55Hz, padec med 60Hz in 100Hz se je zmanjšal, močni energetski vrhovi 205 Akustične meritve v prazni dvorani so torej normalne [1], vendar izkazujejo precej netočnih podatkov, saj bo med normalno uporabo dvorane publika vedno prisotna. 3D oblike materiala vpliva na obeh zaželeni karakteristiki, tako da smo se odločili preizkusiti ravne oblike, kockaste oblike in sferične oblike. Najboljši kompromis smo pridobili pri pravokotnih 2D dimenzijah s 10x 3D polsferičnimi oblikami. Tak kompromis zagotavlja istočasno absorpcijo na navpičen in difuzijski način ter difuzijo za največ frekvenčnih pasov. Konceptualni preizkus spremembe akustičnih lastnosti dvorane brez investicije v materialih se je izkazal za uspešnega. Eksperimentalni rezultati jasno prikazujejo uničenje »flutter echo«, uravnoteženje srednjih in visokih frekvenc ter zmanjšanje nezaželenih energetskih vrhov. Tudi nekatere nizke frekvence so se za nekaj dB umirile in skupno frekvenčno in energetsko obnašanje se je zgladilo. Cenovni razred uporabljenega materiala je zelo nizek, zato bo s tem mogoče še veliko eksperimentirati brez denarnih težav. 10 Nadaljnje delo Nadaljnje delo predvideva: poskus druge 2D oblike postavitev, poskus druge oblike 3D postavitev, poskus drugačne 3D oblike kosov/sektorjev/plošč in (zelo pomembno) pridobitev negorljivih materialov (ZVKD). Da bi pripomogli k še boljši postavitvi (absorpcijadifuzija), bomo opravili prostorsko 3D horizontalno in večslojno horizontalno postavitev plošč za pokrivanje direktnih zvočnih valov v celoti. 11 Zahvala Avtor se zahvaljuje svojemu študentu Eriku Ježu iz VSŠ MMK v Vrtojbi za praktično sodelovanje pri projektu ter za pripravo slik in grafov. Literatura [1] [2] [3] [4] [5] ISO Standard 3302 ISO Standard 140-4 ISO Standard 354 ISO Standard 3742-1 https://www.genelec.com/studio-monitors/8000-seriesstudio-monitors/8020c-studio-monitor [6] http://www.roomeqwizard.com/ New auditorium “Pavilion” of Unicredit: architectural acoustic study 1 Marcello 1 Brugola, 2 Giovanni Amadasi Studio di Acustica Brugola, 2 SCS-Controlsys: Vibro-acoustic marcello.brugola@brugola.eu, amadasi@amadasi.eu Abstract Room acoustics is a special branch of Acoustics, in which acousticians behave most of the time as acrobats between architects demands and unavoidable physics. This article explains how a newly realized Unicredit Auditorium in Milan - Italy was realized and the achieved room acoustic results. Very up to date architectural design mix wood and glass in unusual shapes and thanks to modern software technology, it was possible to evaluate in advance passive and active room acoustic performances. After strict engineering problems solutions, correct surface materials and surface implementations were iteratively performed through ray tracing technique to combine correct sound propagation requirements through acoustic parameters study. RT60, SPL, RASTI, D50 and C80 values correctly predicted the final good resulst. The whole architectural work is based on the transparency theme: a horizontal solar shading system has been created outside the glass façade and it has been fixed to the laminated woodden structure; this allows to reduce the light supply, control the light intensity inside the spaces and consequently reduce energy consumption. The choice to create a glass and wood structure has given the rooms a sense of protection, while at the same time it guarantees the vision of everything happening inside. The multi-purpose building houses the auditorium on the ground floor (a large and modular space in flexible solutions), the walkway suspended on the first floor (dedicated to exhibition functions), the greenhouse on the top of the building (a bright open-space) and the Mini Tree nursery, as shown in figure 2.. 1 Introduction The new UniCredit Pavilion in Milan - Italy was designed by architect Michele De Lucchi in 2015 with the utmost attention to environmental impact. It has been realized with natural materials and modern construction techniques, with a great sensitivity towards nature, responding to the most stringent international regulations on sustainability and materials recycling. The particular geometrical conformation of the UniCredit building suggested to create the external load-bearing structure with columns, beams and pillars in laminated wood, a choice also undertaken to give the enclosure itself a certain aesthetic value, showed in figure 1. The total capacity of the auditorium is 700 seats, which can be divided in several areas or "locations", thanks to a flexible interiors modular system, which allows the large room to simultaneously handle multiple events upon specific needs. 2 Acoustic analysis and verification The acoustic analysis and verification of the new auditorium by first author required to combine different structural, architectural and plant engineering skills, with a multidisciplinary approach in the field of room acoustics. The technical problems faced to make the inner environment perfectly isolated from noise immissions (coming from outside) or emissions (from neighboring indoor environments) were severe, as for example the mechanical insulation of the HVAC on the second floor with possible S/N interferences. Other technical problems arose from particular internal room acoustics, as the indoor environments treatments, while Figure 1. New Unicredit Pavillion ERK'2019, Portorož, 206-209 Figure 2. General structure of the building 206 comfortable listening was an essential quality requirement. Analysis and verification were divided into three phases: a) performance objectives determination, which means acoustic quality descriptive parameters optimal values choice [1], both for the case of speech listening and for music, as shown in figure 3; fundamental acoustic parameters as for example RT60, SPL, RASTI, D50 and C80 [2]. deemed suitable for the specific type of use. With the introduction of specific acoustical parameters, architectural acoustics has undergone a great and radical development. In fact, while before this stage the quality search took place through the use of materials and the reproduction of forms or environments considered optimal for the specific acoustic function, (often with conflicting results), today's sound quality is obtained through the use of specific acoustic parameters which allow to emulate similar environments but with an (almost) infinite possibility of materials and forms choices. Starting from acoustic parameters evaluation it becomes then easier to determine quality and estimated acoustic response of an environment by comparing them with a reference range/scale. These ranges values are the result of huge statistical analyses and/or real values measured in environments The most important acoustic parameter is RT60 (Reverberation Time up to -60dB) and its predicted and measured values in Unicredit new Pavillion auditorium are shown in figure 4 Figure 3. Example of suggested values for various musical genres depending on the room volume b) acoustic modelling software to create Pavilion rooms 3D model, where the room acoustic responses were processed for different environmental and use conditions, including the hypothesis of temporary distribution in smaller closed rooms through removable panels; c) practical application in the construction phase of what was previously defined during the analysis and design phase. We were conscious that without specific analytical results and design features developed in the previous phases implementation, it would have been impossible to achieve satisfactory results in relation to the acoustic quality of the environments. The Final add-on request by the designer, to extend the range of possible uses of auditorium including the performance of musical events with orchestra, represented another significant problem, as it was necessary to identify a series of materials and surfaces suitable for incorporating the new design input, profoundly modifying the original project. 3 Modern investigation methods Modern acoustic subjective judgment can be quantified using acoustic parameters, which provide many useful informations to classify an environment from an acoustic point of view. Acoustic parameters can be measured by using a specific sound source, a series of microphone positionss and the calculation of room impulse responses. During the design stage, different acoustic parameters can be evaluated using specific prediction software estimating theoretical impulse responses and different 207 Figure 4: RT60 comparison between theoretical data and experimental data in new Unicredit Pavillion auditorium 4 Prediction models Prediction models normally refer to some geometric approximation. Many of them consider sound waves as rays encountering in their path different surfaces and obstacles; from these surfaces and obstacles specific "sound rays" are partly absorbed and partly reflected. Up to date, we can use several more sophisticated algorithms using spherical rather than flat waves; in this case we will need greater computational power. In our case we evaluated different methodologies and chose a "ray tracing" method software to model the auditorium of the "Pavilion"; this methodology is based on the energy propagation in fractional space along rectilinear trajectories. As other acoustic softwares, it is necessary to input the complete room and environment geometry as well as all the delimiting materials. Each environment surface is associated with a specific absorption and diffraction coefficient, so that the incident ray partly loses energy in proportion to that specific coefficient and partly reflects sound energy back. In this case scattering and diffraction phenomena produced by different surface elements (used as diffractors) can also be considered. The software needs to know specific sound source characteristics, such as for example its position in the room, specific emitted sound power and its directivity indexes in various frequency bands. As for the emitter, we also input receiver specific data, as for example its position and orientation in the room; only in this case the software can first analyze the rays affecting in succession each point and then trace the rays on the basis of the entered data. The more detailed and precise are the entries data, the more realistic will be the simulation. It is obvious, that to obtain reliable results it is necessary to consider a large number of rays originating from the source (over 20,000 ÷ 30,000); consequently also a large number of surfaces with correct sound absorption and scattering values are required. The modeling software provides two types of output: one for the point type and one for a plan type, which makes it possible to evaluate the distribution of the acoustic parameters values in plan view over the entire area or over a restricted area, as for example the conductor's pit. In any case, receptors/listeners positions must be chosen to know the acoustic behavior in the most unfavorable and in the most favorable points: in this way the acoustic behavior of the whole area is completely described and will be found between the two extremes obtained. characteristics with a peak around 150 Hz and a rapid decay starting from the medium frequencies, suitably positioned, both with the insertion of curtains, which in addition to light and thermal shielding the room from the sun, help to damp the reflections due to the concave glass walls. In order to check some reverberation data as quantitative predictions and to compare them with scientific literature depending on the volume of the project (approx. 9.500 cubic meters) and on the prevalent intended use (auditory speech), a reverberation time was estimated to be optimal if would be close to 1 second in the central frequency bands (500-1,000 Hz). From preliminary prediction software runs, there was some conflicting data as the reverberation time according to the Sabine theory was equal to 0.75 seconds; this value was lower than the optimal one, while the values calculated with the ray tracing methodology were higher than the required value. We interpreted this discrepancy as a sign of poor spatial distribution of sound absorbing materials, as shown in figure 6. SPL [dB]sum (A) 60 D-50 [%]sum (A) 58 56 54 52 (125-4k) 50 RT' [s]sum (A) (125-4k) 100 90 80 70 60 50 40 30 20 10 0 C-80 [dB]sum (A) 0,5 14 12 0,4 10 8 0,3 6 5 Study of the auditorium of the Pavilion In the specific case of the Pavilion auditorium, the overall geometric shape is the result of architectural and aesthetic design choices, far from common configurations, as shown in figure 5. This implies that the sound propagation mechanisms are quite different and that therefore the optimal acoustic solutions must be redetermined. A2 A1 D1 00 0,2 (125-4k) 4 Figure 6: SPL, RT60, D50 and C80 calculated distribution So the Predicted data suggested to study certain surfaces characteristics variations. We progressively modified their respective acoustic coefficients and iteratively analyzed the model results, until the project value was reached. This sort of loop is usually repeated two or three times until satisfactory results are achieved; also in our complex case we iterated 3 times. As the Pavillion auditorium is mainly dedicated to speech performances, we specifically studied and predicted the speech intelligibility index RASTI shown in figure 7. D2 C1 RASTI [%] (125-4k) without noise RASTI [%] without noise 100 100 90 90 80 80 70 70 60 60 50 50 40 40 Figure 5: 3D acoustic model 30 30 20 20 From the acoustic point of view the problematic elements 10 10 encountered in the project were the shape of the double0 0 height room and the presence of glass-enclosed surfaces. TheRASTI solutions to these problems have been implemented [%] with noise RASTI [%] with noise at an architectural level both with the use of microFigure 7: RASTI index calculated distribution100 100 perforated panels with particular sound-absorbing 90 90 80 80 70 70 60 60 208 50 50 40 40 30 30 01 D3 C2 B1 B2 02 B3 D4 C303 D5 C4 C5 04 B4 B5 In this room it is also possible to place a wooden shell with a profile suitable for conveying orchestra sound emission towards the front of the room. In any case there is however the ultimate possibility to use the installed modern and flexible PA sound system: this PA system allows to manage far more than a whole orchestra need with up to 256 inputs capacity. Unicred Pavillion new auditorium PA system can deliver a very good sound diffusion and reproduction both in the complete and in the divided room and is based on the most up to date digital audio technologies. This specific PA system was also the subject of an in-depth study, so as to optimize its yield avoiding problems with room areas not well covered with naturally reflected sounds or affected by uncontrolled reflections. 6 Acoustic test of the auditorium hall Final acoustic tests gave full appreciation from acoustic experts and from audio technicians who installed and calibrated the mentioned PA systems; even those very critical listeners, accustomed to accurately listen to their systems in every possible condition, considered that the assigned task was correctly achieved. The numerical data substantially confirmed the theoretical data within ± 0.1 s, with the only exception of the 125 Hz band, where the deviation rised up to +0.3 s; it is known, that in this specific frequency band the theoretical absorption and diffraction values of the materials provided in the data sheets have unfortunately high tolerances caused by complex physical reasons. During the fist day opening, musical performances of the City of Milan Symphonic Orchestra showed that even with a reverberation time value lower than the theoretically necessary one, the acoustic quality of the room allowed an excellent music production and listening; in the absence of the rear wooden “shell” the audio system supported the reinforcement. Figure 6: Unicredit Pavillion auditorium room 209 References [1] S. Cingolani and R. Spagnolo, Acustica musicale ed architettonica, UTET, Torino, 2005 [2] ISO 3382 – Second edition 1997-06-15 “Acustics Measurement of the reverberation time of rooms with reference to other acoustical parameters” Vibro-acoustic analysis to detect structural deterioration on roof covering plates 1 Giovanni 1 Amadasi, 2 Massimo Chieregato, 3 Marcello Brugola, 4 Franc PolicardiAntoncich SCS-Controlsys: Vibro-acoustic, 2 Cogito Systems, 3 Studio di Acustica 4 LUCAMI, Fakulteta za elektrotehniko, Tržaška cesta 25, SI-1000 Ljubljana, Slovenija amadasi@amadasi.eu, marcello.brugola@brugola.eu, franc.policardi@fe.uni-lj.si Abstract Acoustics is a very broad research field and it can be applied in various science domains. This article explains a new approach in evaluating the conditions of used coverage plates on a walkable roof, which can become dangerous for the pedestrians. The assignment from the building owner was aimed at researching and verifying a Non Destructive Test (NDT) method to investigate and identify which elements of the roof coverage were deteriorated. Instead of visually inspecting thousands of tiles, a new acoustic based investigation methodology has been developed, enabling very good accordance between non visual acoustic measurements and visual control. Using FFT accurate analysis of a microphone and a triaxial acclerometer signals, this methodology defined a tiles "Index of Selection" to search for an emitted sound vs. coverage plates status correlation. An official subjective judgment was provided also by Security Officers and Building Maintenance staff present during the tests, which confirmed the results. The full roof coverage with more than 10.000 tiles was later completely investigated, confirming the methododology expectations and allowing to change only about 1/3 of the total number of tiles. 1 Introduction A walkable roof exposed for more than 10 years to different climatic conditions becomes a problem due to the dangerous rupture of several coverage plates (tiles), mounted on supporting bricks over a plenum of about 80 cm. The problem was the impulsive force generated by a pedestrian walking person (even running in dangerous situations) which was strong enough to make some plates to collapse and to create dangerous conditions up to breaking a leg. The big concern arose by considering the worse case of an alarm evacuation: a situation in which a crowd will run on the mentioned plates to reach escape stairs with a very probable number of people seriously injured, a situation which must be avoided. ERK'2019, Portorož, 210-213 210 Instead of visual inspecting more than 10.000 tiles, the idea was to hit them with a rubber hammer and listen to the sound emitted by the plates, as the human ear can actually notice a different sound emission with a variable timber (tonality in first approach) among plates in normal good conditions and others with some deterioration or damaged conditions. In this presentation we focus on some results from a preliminary screening on a minimal set of plates in different coverage areas, which has given a significant correlation between subjective and objective results. The follow-up of the present preliminary test was that more than 10.000 plates were then tested and classified with a good statistical correlation with subjective opinions and visual check-up of a sub-ensemble of tiles. After performing several analysis of the collected audio signal data with different standard frequency analysis techniques, we decided to identify some tonal characteristic correlated either with the visual inspection of individual tiles and with subjective listening judgment by the operators. The vibro-acoustic preliminary tests were carried out on two areas (GR1 and GR2) consisting of 20 and 15 tiles respectively, which present different ageing conditions and for which a subjective judgment was provided by Security Officers and Building Maintenance staff present during the tests. Figure 1 shows preliminary test on GR1 and GR2 areas. Figure 1. Gr1 and GR2 preliminary tests 2 Data acquisition and processing 2.1 Visual inspection The tiles have been numbered among GR1 and GR2. GR1: tile n.15 was new, while the others showed signs of deterioration in various extents although they were not among the worst views. From a visual examination of the back side, the tiles ranging from number 1 to 5 were worse, in GR2: the n. 6 was broken, tiles number 1, 3, 7 were good, 12 and 14 medium, while the others were more worn. Deriving from first GR1 results tiles group, we developped the idea to focus the research on the frequency "zones" around 70 Hz and 600 Hz. The same analysis was performed on the GR-2 tiles group with similar results, comfirming the methodology correctness and faithfulness. 2.2 Data acquisition and signal analysis On the basis of what was observed, we oriented the search for a Selection Index by approaching the field of the metric related to the sound perception, which in theory means investigating the sensation of the human hearing regardless of the acoustic signals energy content. Prominence Ratio is a particular index derived from sound and vibration analysis techniques originally developed to check for aurally prominent tones in a noisy signal. PR is formally defined in ANSI S1.13-2005 “Measurement of Sound Pressure Levels in Air” [1] for general use and in ECMA 74 12th Edition 2012 [2]. According to these standards, the prominence ratio is applicable if there are tones pesent in the signal and they represent an objective measure to assess if these tones are “prominent”. A sound is classed as “Prominent” if PR > 9 dB. Let's recall the different definitions between TNR and PR: a) the TNR exist when the frequency components called "Tone" has a level which is at least 8 dB higher than the level of the corresponding critical bands expressed in Bark scale, b) the PR exist when the level of the critical band containing the tone is at least 9dB higher than the level of the adjacent critical bands (masking noise assumed by some authors). In this field some indexes defining the "Hue" of a sound perception have been defined as TNR (Tone to Noise Ratio) and PR (Prominence Ratio); this approach, in short, deals with two indexes which describe a specific sound sensation and quantify the perceived sensation: for example Hum produced from mosquitoes, transformers, etc. or Whistle produced from fans, Hard disk, tires, etc.. These two indiexes differ in the considered frequency base; the TNR is based on some frequencies bands and the methodology typically starts from an FFT (Fast Fourier transform) analysis, while the PR performs the Barks analysis, a specifically created scale to adapt a frequency analysis of human hearing; briefly, the Bark scale is similar to the 1/3 octave frequency band. Both indexes rely on the assumption that a tone is only perceived if the level is greater than a certain masking quantity with respect to the remaining noise and take into account the limited capacity of the human ear to distinguish between two sounds very close in frequency (masking effect). This paper is not aimed at mastering all details and discussions about psycho-acoustics science, but the point is that although the “tone” or assimilated sensation are not visible in this specific sound spectra analysis (Fig.2 above), there still was a sound perception of some tonality. The mechanical excitation of the individual tiles was carried out by means of a rubber hammer and a sequence of manually given pulses, with the aim of energizing the structure without incurring in the tiles wobbling on their support seats and without damaging them. For each tile the signals of a microphone placed about 3040 cm above the tile and a tri-axial accelerometer placed in the middle of it were recorded. The following figure 2 show different FFT sound emission spectra by each single tile beaten with the rubber hammer. Figure 2: FFT spectral Analysis sound samples emitted by the roof coverage (hammer beaten tiles) 211 3 Research for an Index of Selection Making the investigation of the Index of selection research as simple as possible, we wanted to understand if either TNR or PR can be used as an index about the existence of a “kind” of tonality which might classify the tiles as acceptable or damaged, therefore with a residual elasticity around 70 Hz and a characteristic sound emitted in the 600Hz area. The TNR and PR were evaluated from the preliminary set results of GR1 and GR2 samples tested over a whole frequency interval (20 Hz to 20 kHz) without imposing any frequency or range limitations. We noticed that a correlation between PR (Prominence Ratio) and Visual inspection was present appearing in the 600Hz frequency zone. The definition of PR regarding the level of a critical band and not of the “tone” level itself can explain why in our case there is a hearable tonality detection without the visible presence of a real pure tone like a single frequency component. The following Fig. 3 explains the PR concept in the Bark frequency scale (yellow overlay). Figure 3. Prominence Ratio image and map of the tests In a very simple and straightforward explanation, the Prominence Ratio PR is calculated by the following schematic formula (valid for pure tones of f > 174Hz):   XM L p = 10 Log 10   ( ) X + X  0 . 5 U  L  The Visual Test gives a judgement which was classified as: Deteriorated ➔ tile need to be changed Time limited ➔ shall be changed soon, 2nd choice Good ➔ tiles are in good state and do not need to be changed Table 1: Correlation of PR data vs. visual inspection judgement (partial data set) According to the above results, it becomes clear that there is a reasonable correlation encouraging to adopt an acoustic type survey methodology to determine the roof coverage tiles status. The discriminating index has been identified in the value of the PR index (Prominence Ratio) with a possible scale for which the single tile replacement could be decided. The value of the PR Index expresed in dB values can be then assumed and defined as: • PR <7 = need to change tiles for sure • PR > 8.5 = tile status acceptable or good. 4 Final considerations (1) In which XM, XL, XU represent the dB levels of the Sound Pressure in Critical Bands - Central (M), Lower (L) and Upper (U) respectively. Considering to measure the Sound Pressure Levels and add on dB values, the applicable formula becomes: (2) LU  LL    LM  Lp = 10 Log10 10 10  − 10 Log10 10 10 + 10 10  * 0.5      The PR consider whether a “noise” is concentrated in one or in another Critical band in respect of the two on each side (hum), while the TNR needs a “narrow” discrete frequency component, it is much more alike a tonal phenomena (whistle). The following table n.1 (partial data set example) reports the correlation between the PR parameters values and the Visual Test decision by the Officer and Workers present at the experimental session. 212 The assignment from the building owner was to discover and verify a Non Destructive Test (NDT) investigation method to identify which elements of the roof coverage show deterioration or other damage from ageing; in this way it becomes easy to consider and evaluate the tiles suitable or not to withstand a pedestrian load, even in the wosst case of people running in a dangerous situation. The experimental data and the experiment itself show that the goal can be achieved considering an acoustic approach by artificially exciting the individual tiles with a rubber hammer and detecting the acoustic response in terms of Prominence Ratio expressed in dB values. The full roof coverage of more than 10.000 tiles was laterfully investigated, confirming the methodology expectations; this allowed to change about 1/3 of the total number of tiles instead of redoing all the coverage work with a considerable time and economic saving. Among the huge amount of over 10.000 tiles data we also introduced a subjective “jury testing” information given by the operators performing the test; these additional results will be presented later. In the present work we applied a Psychoacoustic metric to identify “different” sound emission and there is no connection with the traditional field of application covered by International standard. References [1] ANSI S1.13-2005 “Measurement of Sound Pressure Levels in Air” [2] 1 ECMA-74 - 12th Edition / December 2012 213 Računalništvo in informatika Computer and Information Science Analiza algoritma jDE100 za enokriterijsko globalno optimizacijo z realnimi vrednostmi Janez Brest1 , Jan Popič1 , Mirjam Sepesy Maučec2 , Borko Bošković1 1 2 Laboratorij za računalniške arhitekture in jezike, Inštitut za računalništvo, Laboratorij za digitalno procesiranje signalov, Inštitut za elektroniko in telekomunikacije, Fakulteta za elektrotehniko, računalništvo in informatiko, Univerza v Mariboru, Koroška cesta 46, 2000 Maribor, Slovenija, janez.brest@um.si, jan.popic1@um.si, mirjam.sepesy@um.si, borko.boskovic@um.si An Analysis of the jD100 Algorithm for Real-Parameter Single Objective Global Optimization Abstract. Solving real-parameter single objective problems is a challenging research topic in evolutionary computation community. At the IEEE Congress on Evolutionary Computation (CEC) 2019, Special Session on 100-Digit Challenge on single objective numerical optimization was organized, where ten problems were defined and participants of this challenge were required to solve each problem and try to reach the accuracy of 10 digits for each of them. The optimum values were known for all problems. There were no time limit and no limit for maximum number of function evaluations. In this paper, we present a version of Differential Evolution algorithm, which is based on the jDE100 algorithm, for tackling 100-Digit Challenge. The main focus of this paper is to find out why many algorithms that participated in 100-Digit Challenge competition were not able to solve all problems, except jDE100. We provide an analysis to show which mechanisms helped the jDE100 algorithm to successfully solve all problems, contrary to other algorithms. 1 Uvod V vsakdanjem življenju se ljudje pogosto srečujemo z optimizacijo na vsakem koraku, a se morda tega niti ne zavedamo. Nenehno težimo k zmanjševanju stroškov, na poti v šolo ali službo želimo po najkrajši poti ali pa po poti, ki naj najhitreje pripelje do cilje, itd. V članku obravnavamo numerično optimizacijo. Predstavili bomo novo verzijo algoritma diferencialne evolucije (DE). DE se v zadnjem času uporablja v številnih praktičnih aplikacijah. Reševanje enokriterijskih optimizacijskih problemov z realnimi vrednostmi je aktualna raziskovalna tematika na področju evolucijskega računanja. Na mednarodnem IEEE kongresu o evolucijskem računanju (CEC 2019) se je odvijala posebna sekcija o enokriterijski globalni optimizaciji z realnimi vrednostmi. Znotraj sekcije je bilo tudi tekmovanje ’100-Digit Challenge’, ki je letos prekoračilo meje konference CEC in je vključevalo tudi kon- ERK'2019, Portorož, 215-218 215 ferenci GECCO 2019 in SEMCCO 2019. V članku bomo govorili o optimizacijskih problemih, pri katerih nas zanimajo minimumi. Problem globalne optimizacije lahko definiramo kot iskanje vektorja ~x, ki minimizira funkcijsko vrednost f (~x). Vektor ~x = {x1 , x2 , ..., xD } obsega D spremenljivk. Za vsako spremenljivko xj (j = 1, 2, ..., D) je definirana spodnja xj,low in zgornja xj,upp meja. Rečemo tudi, da D označuje dimenzijo optimizacijskega problema. Funkcija f ni nujno, da je zvezna ali odvedljiva, mora pa biti omejena. Algoritem DE [7, 8] sta pred več kot dvajsetimi leti predstavila R. Storn in K. Price. Dandanes sta še oba aktivna na raziskovalnem področju evolucijskih algoritmov, predvsem diferencialne evolucije (omenimo, da nekateri strokovnjaki v Sloveniji uporabljajo tudi izraz diferenčna evolucija). Lahko rečemo, da DE predstavlja uspešen algoritem, ki se danes uporablja v mnogih raziskavah in praktičnih aplikacijah [2, 5, 9]. Članek ima sledečo strukturo. V drugem poglavju podamo ozadje treh algoritmov DE. V tretjem poglavju predlagamo novo verzijo (izpeljanko) algoritma in predstavimo njegove podobnosti in razlike z algoritmom jDE100. Eksperimenti, rezultati in analiza so podani v četrtem poglavju. Peto poglavje pa zaključi članek. 2 Ozadje 2.1 Algoritem jDE Algoritem jDE [4], ki je bil prvič predstavljen leta 2006, uporablja samo-prilagodljiv mehanizem krmilnih parametrov, kjer ima vsak posameznik v populaciji svoji vrednosti za krmilna parametra Fi in CR i . Novi vrednosti krmilnih parametrov Fi,g+1 in CR i,g+1 se izračunata pred mutacijo na naslednji način: ( Fl + rand1 ∗ Fu , if rand2 < τ1 , Fi,g+1 = Fi,g , otherwise, CR i,g+1 ( rand3 , if rand4 < τ2 , = CR i,g , otherwise, Tabela 1: Parameteri in njihove vrednosti pri algoritmu jDE100-ver2.0. Fl in CR l sta parametra, ki smo ju lahko nastavili posebej za vsako funkcijo. Parameter Fl Fl Fl Fl Fu CR l CR l CR l CR u Finit CR init τ1 τ2 bNP sNP ageLmt eps maxFEs myEqs Vrednost 0.2 za F4, F7 0.1 za F8 0.001 za F9 0.15 pri ostalih funkcijah 1.1 0.1 za F8 0.9 za F9 0.0 pri ostalih funkcijah 1.1 0.5 0.5 0.1 0.1 1000 25 1e9 1e − 16 1e12 25 Kratek opis spodnja meja skalirnega faktorja spodnja meja skalirnega faktorja spodnja meja skalirnega faktorja spodnja meja skalirnega faktorja zgornja meja skalirnega faktorja spodnja meja parametra križanja spodnja meja parametra križanja spodnja meja parametra križanja zgornja meja parametra križanja inicialna vrednost skalirnega faktorja inicialna vrednost parametra križanja verjetnost samo-prilagajanja skalirnega faktorja verjetnost samo-prilagajanja parametra križanja velikost Pb velikost Ps št. ovrednotenj, ko se naj zgodi reinicializacija populacije majhna vrednost za primerjavo, če sta dve vrednosti podobni en izmed ustavitvenih pogojev (Pogoj ni bil izpolnjen!) reinicializacija, če ima myEps% posameznikov podobno funkcijsko vrednost kjer so randj , j ∈ {1, 2, 3, 4} naključne vrednosti, porazdeljene uniformno na intervalu [0, 1]. Vrednosti τ1 in τ2 sta verjetnosti, s katerima krmilimo krmilna parametra F in CR. Podroben opis algoritma najdemo v literaturi [4, 3]. 2.2 Algoritem jDE100 Algoritem jDE, ki smo ga na kratko opisali v predhodnem podpoglavju, smo nadgradili v algoritem jDE100 [3], ki je sodeloval v tekmovanju 100-Digit Challenge na CEC 2019. jDE100 uporablja dve različno veliki populaciji in njima prilagojeni reinicializaciji. V evolucijskem procesu algoritma jDE100 imamo tri ponavljajoče se korake: 1. Izvede se ena generacija na veliki populaciji, Pb . 2. Če je potrebno, se najboljši posameznik, ~xbest , kopira v manjšo populacijo Ps . 3. Izvede se več generacij na majhni populaciji, Ps . Velikost velike populacije je m-kratnik (m ∈ 1, 2, ...) velikosti majhne populacije, kar pomeni, da algoritem razdeli število evaluacij med obe populaciji: polovica evaluacij za veliko in polovica za majhno populacijo, če pri slednji izvede m generacij. 216 Pomembna je tudi reinicializacija, ki jo ločeno izvedemo na obeh populacijah, če je izpolnjen pogoj, da ima vnaprej predpisano število najbolje ocenjenih posameznikov v dani populaciji zelo podobno funkcijsko vrednost. V tem primeru smo ocenili, da se je populacija ujela v lokalni optimum. Reinicializacijo velike populacije izvedemo tako, da vse posameznike naključno reinicializiramo. Podobno storimo tudi pri majhni populaciji, z razliko da najboljšega posameznika pustimo nespremenjenega (ga ne reinicializiramo). Velika populacija skrbi za večjo raznolikost posameznikov, manjša pa omogoča hitrejšo konvergenco iskanja. Najboljšega posameznika kopiramo iz velike populacije, v kateri je bil najden, v manjšo. V obratni smeri pa ne kopiramo. Algoritem ima parametre, ki so predstavljeni v tabeli 1. Kot zanimivost omenimo, da smo Fu nastavili na vrednost 1.1 (tako je F ∈ [Fl , Fl + Fu ])), kar pomeni, da je zgornja meja parametra večja od 1. Podobno smo nastavili tudi CR u = 1.1. Podroben opis algoritma bralec najde v prispevku [3], saj je naš glavni namen v tem prispevku analiza mehanizmov. Zanima nas, ali lahko nastavitve parametrov algoritma jDE100 odločilno vplivajo na uspešnost reševanja problemov na tekmovanju. Preden se lotimo analize, v nas- Tabela 2: Opis funkcij za ’100-Digit Challenge’ [6]. 1 2 3 4 5 6 7 8 9 10 funkcija Storn’s Chebyshev Polynomial Fitting Problem Inverse Hilbert Matrix Problem Lennard-Jones Minimum Energy Cluster Rastrigin’s Function Griewank’s Function Weierstrass Function Modified Schwefel’s Function Expanded Schaffer’s F6 Function Happy Cat Function Ackley’s Function Fi∗ = Fi (x∗ ) 1 1 1 1 1 1 1 1 1 1 D 9 16 18 10 10 10 10 10 10 10 meje iskalnega prostora [-8192, 8192] [-16384, 16384] [-4, 4] [-100, 100] [-100, 100] [-100, 100] [-100, 100] [-100, 100] [-100, 100] [-100, 100] Tabela 3: 50 zagonov algoritma a200-25 za vsako funkcijo, ki so v tabeli prikazani glede na število najdenih pravilnih decimalk. funkcija F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 0 1 2 število pravilnih decimalk 3 4 5 6 7 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 26 0 0 0 1 0 0 0 0 0 0 0 50 50 49 50 50 50 50 50 1 50 10 10 10 10 10 10 10 10 4.36 10 Skupno število točk: 94.36 0 0 0 0 0 0 0 0 17 0 lednjem podpoglavju na kratko opisujemo še en algoritem, ki bo vključen v analizo. 2.3 Algoritem rjDE Algoritem rjDE je nadgradnja algoritma jDE z mehanizmom reinicializacije populacije. Omenjeni mehanizem je podoben tistemu, ki smo ga opisali v algoritmu jDE100. Opis algoritma rjDE najdemo v [1], kjer je bila narejena primerjava zmogljivosti algoritmov na 100-Digit Challenge pri omejitvi največjega števila vrednotenj funkcije (maxFES = 107 ). 3 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 št. točk mehanizem in pognali algoritem. Implementacijsko ideja ni zahtevna, a izvedba enega poskusa (50 zagonov 10 problemov) traja skoraj 4 dni. Izvedba teh eksperimentov bi trajala predolgo, saj ob izvedbi eksperimenta (npr. za veliko populacijo, malo populacijo, reinicializacijo velike in majhne populacije, samoprilagajanje krmilnih parametrov F in CR, kopiranje najboljšega posameznika iz velike v majhno populacijo, itd.) in študiji vpliva parametrov dobimo preveč kombinacij. Zato smo načrtovali novo verzijo algoritma (poimenujmo ga a200-25), ki ima naslednje mehanizme in nastavitve: • ohranimo inicializacijo, kot jo ima jDE100, Hibrid algoritmov jDE100 in rjDE Z namenom, da bi ugotovili, kateri mehanizmi omogočajo dobro delovanje algoritma jDE100 na 100-Digit Challenge, smo zasnovali novo verzijo algoritma, ki je hibrid med algoritmom jDE100 in algoritmom rjDE. Čemu izbrati tak način, če pa imamo na drugi strani morda bolj trivialno rešitev: v algoritmu jDE100 bi lahko po vrsti izklopili en 217 • ohranimo dve populaciji, a spremenimo velikost ene izmed njiju. Velikost velike populacije je 200 velikost majhne populacije pa 25. (Spomnimo, da ima jDE100 velikosti populacij 1000 in 25.), • malenkost spremenimo tudi vrednosti nekaterih parametrov, ki so predvsem posledica zmanjšanja veli- √ kosti velike populacije. Vrednost Fl = 1.0/ √bNP v primeru velike populacije, in Fl = 1.0/ sNP v primeru majhne populacije. Vrednosti bNP in sNP označujeta velikost velike in majhne populacije. Parameter Fl je enak tudi v algoritmu rjDE, kjer imamo le eno populacijo. CR l = 0.0 za vse funkcije, razen za F9, kjer je CR l = 1.0. 4 Eksperiment in rezultati Rezultati, ki smo jih dobili, ko smo 50-krat pognali algoritem a200-25 na funkcijah 100-Digit Challenge, so prikazani v tabeli 3. Opazimo lahko, da je algoritem uspešno reševal 9 funkcij in da je bila najtežja F9. Dodatno lahko opazimo, da je v enem primeru uspel najti rešitev le na 9 decimalk natančno, in sicer pri funkciji F3. Analizirajmo funkcijo F9. Če je možnih 10 točk pri vsaki funkciji, potem je vrednost 4.36 nekoliko nižja od polovice. Poudarimo, da je algoritem uspel najti 5 pravilnih decimalk v 5 primerih, v enem primeru je uspel najti vseh 10 decimalk. Primerjava z rezultati ostalih algoritmov, ki so sodelovali v tekmovanju, kaže, da je algoritem a200-25 dosegel kar solidne rezultate tudi na funkciji F9, ki je povzročala največ težav tekmovalnim algoritmom. Omenimo, da je algoritem rjDE dosegel 78,6 točk na funkcijah s tekmovanja 100-Digit Challenge pri maxF ES = 107 [1], algoritem DE 42,68 točk in jDE 66,48 točk. Ugotovimo lahko, da je vrstni red algoritmov (DE, jDE, rjDE) določen s številom mehanizmov – bolj sofisticiran algoritem je dosegel večje število točk. Ko smo algoritem rjDE pozneje pognali z maxF ES = 109 , je dosegel 85 točk. Primerjava a200-25 z algoritmi DE, jDE in rjDE pa pove, da sta dve populaciji pomembni, saj sta algoritmu a200-25 prinesli več točk. Prav tako je pomemben tudi parameter CR. In zadnja, kar pa ni nujno najmanj pomembna, ugotovitev iz eksperimentalnega dela v tem prispevku, je parameter velikosti velike populacije. Funkcija F9 oziroma rezultati te funkcije kažejo, da je včasih potrebna tudi nekoliko večja populacija. Zahvala J. Brest in B. Bošković priznavata financiranje prispevka s strani Javne agencije za raziskovalno dejavnost Republike Slovenije, raziskovalni program P2-0041 – Računalniški sistemi, metodologije in inteligentne storitve. M. S. Maučec priznava financiranje prispevka s strani Javne agencije za raziskovalno dejavnost Republike Slovenije, raziskovalni program P2-0069 – Napredne metode interakcij v telekomunikacijah. 5 Zaključek V prispevku smo načrtovali novo verzijo algoritma za reševanje problema 100-Digit Challenge z namenom, da 218 smo lahko analizirali in izpostavili mehanizme in nastavitve pomembnih vrednosti parametrov, s pomočjo katerih je algoritem jDE100 dokaj uspešno reševal probleme na omenjenem tekmovanju. Radi bi izpostavili, da je velikost populacije imela tudi vpliv na uspešnost pridobljenih točk pri najtežji funkciji na tekmovanju, F9, z imenom ”Happy Cat”. Nadaljnje smernice razvoja algoritmov za izziv 100Digit Challenge vključujejo razvoj novih mehanizmov, s katerimi bi zmanjšali število potrebnih evaluacij funkcij, predvsem na funkcijah F8 in F9. Literatura [1] Amina Alić, Klemen Berkovič, Borko Bošković, and Janez Brest. Population size in differential evolution. In Aleš Zamuda, editor, 7-th Joint International Conferences on Swarm, Evolutionary and MemeticComputing Conference (SEMCCO 2019) & Fuzzy And Neural Computing Conference(FANCCO 2019), 2019. [2] Borko Bošković and Janez Brest. Protein folding optimization using differential evolution extended with local search and component reinitialization. Information Sciences, 454:178– 199, 2018. [3] J. Brest, M. Sepesy Maučec, and B. Bošković. The 100-digit challenge : algorithm jDE100. In IEEE Congress on Evolutionary Computation (CEC) 2019, pages 19–26. IEEE, 2019. [4] Janez Brest, Sašo Greiner, Borko Bošković, Marjan Mernik, and Viljem Žumer. Self-adapting control parameters in differential evolution: A comparative study on numerical benchmark problems. IEEE Transactions on Evolutionary Computation, 10(6):646–657, 2006. [5] Mirjam Sepesy Maučec, Janez Brest, Borko Bošković, and Zdravko Kačič. Improved Differential Evolution for LargeScale Black-Box Optimization. IEEE Access, 2018. [6] K. V. Price, N. H. Awad, M. Z. Ali, and P. N. Suganthan. Problem Definitions and Evaluation Criteria for the 100-Digit Challenge Special Session and Competition on Single Objective Numerical Optimization. Technical report, Nanyang Technological University, Singapore, November 2018. [7] R. Storn and K. Price. Differential Evolution - a simple and efficient adaptive scheme for global optimization over continuous spaces. Technical Report TR-95-012, Berkeley, CA, 1995. [8] Rainer Storn and Kenneth Price. Differential Evolution – A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces. Journal of Global Optimization, 11:341– 359, 1997. [9] Aleš Zamuda and Janez Brest. Self-adaptive control parameters’ randomization frequency and propagations in differential evolution. Swarm and Evolutionary Computation, 25:72–99, 2015. Experimental Evaluation of Deep Q-Learning Applied on Pendulum Balancing Zvezdan Lončarević, Rok Pahič, Gregor Papa, Andrej Gams All authors are with the Jožef Stefan Institute, and with the Jožef Stefan International Postgraduate School, Jamova cesta 39, 1000 Ljubljana, Slovenia e-mail: zvezdan.loncarevic@ijs.si Abstract 4 Autonomy is one of the central issues for the future robots that are expected to operate in continuously changing environments. Reinforcement learning is one of the main approaches for learning in contemporary robotics. With the rise of neural networks in recent studies, the idea of incorporating neural networks with classic Q-learning algorithm for learning policies was introduced in a form of deep Q-Learning algorithm. While supervised and unsupervised learning became widely spread within community, deep Q-Learning still remains a black-box in a sense of parameter tuning as well as neural network architecture and training. In this paper we explore and compare training performance using different parameters and different neural network architectures on a simple use-case of pendulum balancing. 1 Introduction Reinforcement learning (RL) is a popular way of solving optimization problems in robotics through trial-and-error interaction with the environment. This relieves humans from tedious programming. Planning of actions is possible for solving decision making problems with known and determined dynamics as shown in [1, 2]. However, as this is not always the case, RL is applied to help in finding solutions without having detailed description of the problem and is useful for systems with complex dynamics where it is not possible for all the disturbances and external forces to be modelled [3]. This model-free reinforcement algorithms were successfully applied on different types of problems [4] and with the expansion of neural networks extended variety of its application [5, 6]. However, architecture of the neural network, training strategy and high number of parameters that need to be tuned for each specific task diminish benefits of theoretically reduced need for manual engineering. In real-world domains experience must be collected on real physical systems. By using simulations and understanding the influence of parameters and training strategies as well as possibilities of RL algorithms, it would be possible to optimize the real world systems to learn optimal policies in less iterations thus causing minimal wear of the equipment and reducing the needed time. ERK'2019, Portorož, 219-222 219 0 3.5 90 o 90 o 3 o 180 2.5  2 1.5 1 x 0.5 0 -3 -2 -1 0 1 2 3 (m) Figure 1: Simulated cart pole used as the experimental environment in MATLAB The goal of this paper is to show the influence of parameters on the learning process so we used simple inverted pendulum attached to the cart pole (Figure 1) that was powered by discrete accelerations. The paper is organized as follows: In the next section, we briefly present Deep Q-learning algorithm. In section 3 simulation setup and parameters of the system are presented. Section 4 presents obtained results. The paper concludes with a short outlook on the obtained results and suggestion for the future work. 2 Deep Q-Learning Reinforcement learning deals with control policies for agents that interact with unknown environments. Environments can be formalized as a Markov Decision Processes (MDPs) with only four values describing them. At each time-step the agent changes its state from the current state st to a new state st+1 by performing an action at and based on the new state gets the reward rt . Based on this values, Q-learning algorithm [7] approximates the long term reward known as Q-value if the particular action is performed in given state. Values are iteratively updated by the equation: Qnew (s, a) = Qold (s, a)+   + α r + γmaxa Qold (s , a ) − Qold (s, a) (1) where Qold is an approximate before and Qnew after the update, α is learning rate, γ is discount factor and maxa Q(s , a ) is the maximal approximated value over all actions a in the resulting state s . However, this way of updating the Q-value means that actions and states need to be discretized thus leading to the Q table of size S × A where S is the number of possible states and A is the number of possible actions. Instead of this, with the Deep Q-learning algorithm, Q-values are approximated by the neural network (parametrized by weights and biases collectively denoted by θ). With the use of neural network, Q-values approximates, denoted by Q(s, a|θ), are estimated by making a forward pass when an input is the current state of the system. By using neural network, discretization of the states is not required because it generalizes beyond the states that it was trained on. To avoid divergence and oscillations in learning [8], experiences of transitions are stored in replay memory D as dt = {st , at , rt , st+1 } and uniformly sampled in mini-batches containing examples for each training pass. Adam optimizer [9] was used to optimize learning momentum. General deep Q-learning is given below in Algorithm 1. Initialize replay memory D Initialize neural network for approximating Q-value with a random weights and biases θ for i ∈ [1, number of episodes] do Initialize state st for t ∈ [1, number of steps] do With ε probability select random action at , otherwise select at =maxa (s, a ) Execute at , observe the next state st+1 and get reward rt Store transition dt = (st ; at ; rt ; st+1 ) in D Set st = st+1 Sample mini-batch from D for j ∈ [1, mini − batch size] do if s’= terminal state then y j = rt else yj = rt + γmaxa Q(s , a |θ) end Perform one step of training using (yj − Q(s, a|θ))2 as a cost function end end Algorithm 1: Deep Q-learning algorithm [10] 3 Experimental evaluation In order to test the robustness and speed of learning, we modelled the example of the cart pole with the pendulum in Matlab Environment as shown in the Figure 1. Simulated cart pole mass was M = 1kg, mass of pendulum was m = 0.1kg, length was 0.5m and it could be moved left or right by applying the force of −10N or 10N respectively. For the state of the system to be fully defined, we used two generalized coordinates: x- 220 axis and the displacement angle φ. The cart was moving along x-axis and it had to stay within the range of x ∈ (−2.6m, 2.6m) for balancing to be counted as successful. The displacement angle of the pole (φ) is the second generalized coordinate and it was in the range φ ∈ [−180◦ , 180◦ ] as shown in Figure 1. The pendulum was set to initial position of {x, ẋ, φ, φ̇} = {0 m, 0 m/s, 0◦ , 1◦ /s} so that in initial position equilibrium state was disturbed. The number of possible actions yields the size of neural network output layer at two neurons (for -10N and 10N) and number of states needed to fully describe the system (x, ẋ, φ, φ̇) sets the input layer size to four neurons. The goal of learning algorithm was to learn how to balance the pendulum. In order to accomplish that task, we tested three different neural networks with the architecture shown in Figure 2. With all three networks we tested different combinations of reinforcement learning parameters (exploration rate ε and discount factor γ). After finding the combination that was able to find the balancing policy most efficiently, we added uncertainty to the angle measurement to simulate sensors in a real world environments and measured the number of iterations that the policy successfully managed to balance the pendulum. 4 Results To find optimal learning strategy, we tested the learning efficiency with the different combinations of ε and γ parameters. Our results have shown that the choice of the neural network is crucial for the performance policy learning. We tested learning algorithm on three different networks formed of 4 × 16 × 2 (Network A), 4 × 1024 × 256 × 2 (Network B), 4 × 16 × 32 × 16 × 8 × 2 (Network C) fully connected layers as shown in Figure 2. Results have shown that it is crucial for the task to find the smallest possible network to achieve good speed of learning and resistance to external perturbations. Bars in Figure 3 show the episode of learning in which algorithm successfully managed to balance the pendulum for at least 300 steps for shown pairs of parameters for the Network A (Figure 2-left) and Network B (Figure 2middle). The deepest network (Network C) (Figure 2right) did not manage to find any balancing policy for any pairs of parameters in 10000 episodes. With analyzing the results we found out that fastest learning occurred with the parameters {ε, γ} = {0.05, 0.8} for the case of Network A (in 20 iterations) and with the {ε, γ} = {0.05, 0.9} for the case of Network B (in only 7 iterations). For aforementioned cases, the training was stopped after the first success and resistance of learned policy was analyzed by adding simulated sensor noise on the reading of the state of the angle φ. Balancing was considered to be successful for the angle φ ∈ [−12◦ , 12◦ ] and that is why maximal allowed noise on our simulated sensors was set to the same values. We tested how the number of the iterations that pendulum was balanced was affected by this noise in both Network A Network B b) b) a) Fully Connected 16 4 4 Network C c) 1024 1024 Fully Connected 32 32 Fu lly Connect edn ect ed Fu lly Con 256 2 5 6 256 256 lly Connect ed on n ect ed FullyFu Connected nected 4 4 4 22 2 2 16 Fully Connected 4 4 16 Fully Connected 8 8 Fu lly Connect ed n e Fu lly Con 2 2 F ll C Fully 2 Fully Connected 16 t d 2 Fully Connected 16 Figure 2: Neural network architectures used for approximating Q-value. a) b) Figure 3: Pairs of γ and ε parameters that found the control policy for the networks A (left) and B (right) at the iteration shown by the bars. Only parts of the graphs where solution is found are shown. Neural network C did not manage to find the policy with any parameters. Figure 4: Resistance based on the number of iterations in which the pendulum satisfied the stabilizing criteria using control policy learned by networks A (left) and B (right) with applied sensory noise. cases (Networks A and B) and the results are shown in the Figure 4. The graphs show the mean and standard deviation for the number of iterations in which balancing was successfully performed (tests were done 1000 times for 221 statistics). As expected, bigger noise reduced the number of successful balancing iterations. The results show that smaller network is much more robust to the wrong readings from the sensors and that it manages to find a better policy. 5 2018 IEEE-RAS 18th International Conference on Humanoid Robots (Humanoids), pp. 270–276, Nov 2018. Conclusion Results show that the architecture of the neural network is crucial for the success of the task. Size of the neural network should be smallest possible for the solution to be found in reasonably small number of episodes. For the simple problem such as balancing the pendulum from initial state in upright position, high complexity of the neural network negatively affects the speed of a learning process. Our tests show the performance might get more degraded by extending the depth than extending the width of the network. With the control problems in almost linear space as in presented use-case, there is no need for big exploration noise to be added as proven by the cases with the fastest learning (ε ≈ 0.05 for the cases with both networks). Our tests with the different parameters have shown that the best choice for γ is to choose val ues within the range 0.8, 1 . With the success occurring in small number of learning episodes, deep Q-learning seems to be promising approach in making the controllers for the systems found in real world. In the future work, we plan to test the balancing on the real world system and with using the convolutional neural networks (CNN) as used in [11, 5] and to try to extend the problem complexity to finding the strategy that would be able to swing up and balance pendulum with using the same network for both problems (swing-up and balance) or play ball-in-a-cup game as it was done using the regular Q-learning algorithm in [12]. We also want to check the possibilities of improvement using the adaptive learning rate method such as RMSProp [13] or ADADELTA [14]. We are planning to perform the analysis of vanishing gradient [15, 16] to check if there are methods that would help us to make deeper network architectures learn the policies. With making deep neural networks more robust with optimization methods, we would be able to train the policies for more complicated tasks as it was done with the recurrent neural networks [17, 18]. Acknowledgement: The corresponding author is supported by the Fund for Public Scholarship, Development, Disability and Maintenance Fund of the Republic of Slovenia with Ad futura Scholarship for Postgraduate Studies of Nationals of Western Balkan States for Study in the Republic of Slovenia (226. Public Call). References [1] Moravčik Matej, S. Martin, B. Neil, V. Lisy, M. Dustin, B. Nolan, D. Trevor, W. Kevin, J. Michael, and B. Michael, “DeepStack : Expert-Level Artificial Intelligence in Heads-Up No-Limit Poker,” Science, vol. 356, no. 6337, pp. 508–513, 2017. [2] Y. Tassa, T. Erez, and E. Todorov, “Synthesis and Stabilization of Complex Behaviors through Online Trajectory Optimization,” 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 4906–4913, 2012. [3] R. Pahič, Z. Lončarević, A. Ude, B. Nemec, and A. Gams, “User feedback in latent space robotic skill learning,” in 222 [4] J. Kober, J. A. Bagnell, and J. Peters, “Reinforcement learning in robotics : A Survey,” Learning Motor Skills. Springer Tracts in Advanced Robotics, vol. 97, no. Springer, Cham, 2013. [5] V. Mnih, K. Kavukcuoglu, D. Silver, A. A. Rusu, J. Veness, M. G. Bellemare, A. Graves, M. Riedmiller, A. K. Fidjeland, G. Ostrovski, S. Petersen, C. Beattie, A. Sadik, I. Antonoglou, H. King, D. Kumaran, D. Wierstra, S. Legg, and D. Hassabis, “Human-level control through deep reinforcement learning,” Nature, vol. 518, pp. 529– 533, 2015. [6] M. J. Hausknecht and P. Stone, “Deep reinforcement learning in parameterized action space,” CoRR, vol. abs/1511.04143, 2016. [7] P. Dayan, “Technical Note Q-Learning,” Machine Learning (MLJ), vol. 8, pp. 279–292, 1992. [8] J. N. Tsitsiklis and B. V. Roy, “An Analysis of TemporalDifference Learning with Function Approximation,” IEEE Transactions on Automatic Control, vol. 42, no. 5, pp. 674–690, 1997. [9] D. Kingma and J. Ba, “Adam: a method for stochastic optimization (2014),” arXiv preprint arXiv:1412.6980, vol. 15, 2015. [10] V. Mnih, K. Kavukcuoglu, D. Silver, A. Graves, I. Antonoglou, D. Wierstra, and M. Riedmiller, “Playing atari with deep reinforcement learning,” arXiv preprint arXiv:1312.5602, 2013. [11] D. Silver, J. Schrittwieser, K. Simonyan, I. Antonoglou, A. Huang, A. Guez, T. Hubert, L. Baker, M. Lai, A. Bolton, Y. Chen, T. Lillicrap, F. Hui, and L. Sifre, “Mastering the game of Go without human knowledge,” Nature Publishing Group, vol. 550, no. 7676, pp. 354– 359, 2017. [12] B. Nemec, M. Zorko, and L. Zlajpah, “Learning of a ball-in-a-cup playing robot,” 19th International Workshop on Robotics in Alpe-Adria-Danube Region (RAAD 2010), pp. 297–301, 2010. [13] Y. N. Dauphin, H. Vries, J. Chung, and Y. Bengio, “Rmsprop and equilibrated adaptive learning rates for nonconvex optimization,” arXiv, vol. 35, 02 2015. [14] M. D. Zeiler, “Adadelta: an adaptive learning rate method,” arXiv preprint arXiv:1212.5701, 2012. [15] R. Pascanu, T. Mikolov, and Y. Bengio, “Understanding the exploding gradient problem,” CoRR, vol. abs/1211.5063, 2012. [16] S. Hochreiter, “Untersuchungen zu dynamischen neuronalen Netzen. Diploma thesis, Institut für Informatik, Lehrstuhl Prof. Brauer, Technische Universität München,” 1991. [17] T. Inoue, G. De Magistris, A. Munawar, T. Yokoya, and R. Tachibana, “Deep reinforcement learning for high precision assembly tasks,” in 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 819–825, IEEE, 2017. [18] M. J. Hausknecht and P. Stone, “Deep recurrent q-learning for partially observable mdps,” in AAAI Fall Symposia, 2015. Gradnja napovednih modelov za klike na oglase v družabnih omrežjih Vesna Novak, Matej Guid Univerza v Ljubljani, Fakulteta za računalništvo in informatiko E-pošta: vesna.n@gmail.com, matej.guid@fri.uni-lj.si Building prediction models for advertisement clicks in social networks The revenues from large social networks, which today are measured in billions of dollars and increasing year by year, mostly come from online advertising. Advertising on social networks is becoming an increasingly important form of advertising for products and services. A typical social networking ad campaign contains multiple ad groups and each ad group contains multiple ads. When managing advertising campaigns, it is particularly important to decide which ad groups and ads are to be active and for which more advertising money should be earmarked. We compared different prediction models for predicting clicks on ads on social networks to optimize the management of display advertising campaigns. With optimization, decision support for campaign managers and automation of display campaign management can be improved, maximizing the number of clicks. 1 Uvod Družabna omrežja so internetna spletna mesta družabnih medijev, ki jih uporabljamo z namenom povezovanja s prijatelji, družino, sodelavci ali strankami. Kar 45% celotne svetovne populacije uporablja vsaj eno družabno omrežje, število uporabnikov pa iz dneva v dan strmo narašča [1]. Ker lahko ima družabno mreženje poleg socialnega tudi poslovni namen ni nenavadno, da je postalo pomembna osnova za upravljalce oglaševalskih kampanj. Oglaševanje na družabnih omrežjih je v porastu, namenja se mu vedno več oglaševalskega denarja. Slovenski oglaševalci so v letu 2017 digitalnemu oglaševanju namenili 47,2 milijona evrov, ocenjuje pa se, da bo v letu 2019 obseg investicij v digitalno oglaševanje občutno presegel 60 milijonov evrov. 82% oglaševalcev bo oglaševalo na družabnih omrežjih, med oblikami digitalnega oglaševanja pa naj bi letos največ sredstev namenili ravno prikaznemu oglaševanju [2]. Pri oglaševanju se sprašujemo kaj je namen oglaševanja, kdo je ciljna skupina, kakšno bo sporočilo, katere kanale za oglaševanje uporabiti, koliko denarja nameniti določenemu oglasu, kako meriti in oceniti rezultate [3]. Pri vseh teh vprašanjih bi bilo koristno vnaprej vedeti, če sploh in koliko klikov na oglas pričakovati. S tem bi se upravljalcu oglaševalskih kampanj olajšala odločitev, ERK'2019, Portorož, 223-226 223 katere oglase ali oglasne skupine pustiti aktivne in koliko denarja jim nameniti. S pomočjo strojnega učenja na preteklih podatkih poskušamo zgraditi napovedni model, ki z napovedovanjem časovnih vrst kar se da uspešno napove prihodnost klikov na oglas in s tem upravljalcu oglaševalske kampanje pomaga pri upravljalskih odločitvah, prav tako pa je pomembna informacija pri samodejnem upravljanju oglaševalskih kampanj. Na realnih podatkih iz družabnih omrežij Facebook in Twitter, ki so agregirani na urnem nivoju in po skupinah oglasov, smo primerjali različne algoritme za napovedovanje časovnih vrst (angl. time series forecasting): XGBoost, ARIMA, VAR in LSTM nevronske mreže ter ugotavljali njihovo zmožnost za napovedovanje več časovnih točk (ur) vnaprej. Gradnja napovednih modelov za napovedovanje dogodkov na družabnih omrežjih, še zlasti v kontekstu oglaševanja, je dandanes izredno aktualna tema, vendar je akademskih člankov s tega področja relativno malo. V članku [4], kjer napovedujejo klike na oglase na družabnem omrežju Facebook so izpostavili, da na končno napoved najbolj vpliva pravilen izbor informacij, torej tistih, ki predstavljajo zgodovinske podatke o uporabniku ali samem oglasu. Tudi v članku [5], kjer napovedujejo razmerje med prikazi in kliki (CTR)1 na družabnem omrežju Twitter, za bolj uspešne napovedi izpostavljajo pomembnost značilk, povezanih z uporabnikom, njegovimi meta podatki in zgodovino njegovih klikov. Naš nabor podatkov teh informacij ne zajema. S preizkušanjem in primerjavo bomo skušali ugotoviti, kateri parametri in koliko izmed teh, ki jih imamo na voljo, najbolj vplivajo na napovedno točnost pri napovedovanju klikov na oglase, za različna časovna obdobja. S tem se veliko bolj približamo perspektivi upravljalca oglaševalskih akcij, ki ima tipično na voljo statistike oglasov v preteklih dneh, sprejeti pa mora odločitev, katerim oglasom bo v prihodnje namenil več oz. manj oglaševalskega denarja. Večina sorodnih del se osredotoča na napovedovanje samo ene točke vnaprej [6], medtem ko je naš namen ugotoviti, za koliko ur vnaprej so napovedi še smiselne [7]. Prav tako želimo primerjati različne modele, tako univariatne kot multivariatne, in ugotoviti, če in katere zunanje značilke lahko pripomorejo k boljši napovedni točnosti. 1 Razmerje, ki pove, kako pogosto uporabniki, ki vidijo oglas, tega na koncu tudi kliknejo. Facebook Twitter Povprečje 23,01 10,91 Min 0 0 25% 6 0 50% 15 1 Max 341 1223 2.2 VAR Model vektorske avtoregresije (angl. vector autoregression, VAR) je eden izmed bolj uspešnih, fleksibilnih in enostavnih modelov za uporabo pri analizi multivariatnih časovnih vrst [9]. Je razširitev univariatnega avtoregresivnega modela v dinamično multivariatno časovno vrsto. Model VAR se je kot posebej uporaben izkazal za opisovanje dinamičnega obnašanja pri ekonomskih in finančnih časovnih vrstah [10]. Uporabili smo model VAR iz knjižnice StatsModels. Tabela 1: Statistični podatki klikov. Slika 1: Prikaz nekaj časovnih vrst, ki prikazujejo število klikov na oglase v družabnem omrežju Facebook. 2 vedi. Uporabili smo model ARIMA iz knjižnice PyFlux, ki s funkcijo predict(h) omogoča preprosto napovedovanje h točk v prihodnost [8]. Metode Podatki, ki smo jih uporabili v tem delu, obsegajo tipične najpomembejše statistike oglaševalskih akcij na družabnem omrežju Facebook (clicks, actions, amount, impressions, link clicks, conversions, page likes, engagements, social clicks, social impressions, video views) in Twitter (clicks, impressions, conversions, engagements, retweets, replies, likes, app clicks, url clicks, follows in 9 atributov povezanih z ogledi videov). Podatki ne zajemajo informacij o samem uporabniku ali oglasu in so agregirani na urni nivo, brez vmesnih manjkajočih ur. Facebook podatki obsegajo 60 časovnih vrst klikov različnih dolžin – med 63 in 305 zaporednih časovnih točk, medtem ko Twitter podatki obsegajo 36 časovnih vrst klikov, tipično precej daljših, kot pri Facebook podatkih - med 281 in 1127 zaporednih časovnih točk. Skupno imamo torej na voljo 96 časovnih vrst različnih dolžin. Statistične podatke klikov obeh družabnih omrežij prikazuje tabela 1. Primer nekaj časovnih vrst, ki prikazujejo število klikov na oglase iste oglasne skupine je razviden iz slike 1. Za napovedovanje časovnih vrst uporabljamo programski jezik Python in knjižnice NumPy, pandas, PyFlux, TensorFlow in Keras. V nadaljevanju so predstavljeni algoritmi oz. metode, ki smo jih uporabili za gradnjo napovednih modelov. 2.1 ARIMA Model ARIMA je splošen model za napovedovanje in eden izmed najpogosteje uporabljenih metod za analizo časovnih vrst. Obstaja veliko različnih ARIMA modelov, osnovni pa je poznan kot ARIMA(p, d, q) in je sestavljen iz avtoregresijskega dela reda p (AR), diferenciranja stopnje d (I) in modela drsečih sredin reda q (MA). Vsi ARIMA modeli temeljijo na univariatnih napovedih, uporabljajo torej podatke le ene časovne vrste in ne vključujejo podatkov soležnih časovnih vrst, ki pogosto lahko vsebujejo pomembne informacije za bolj natančne napo- 224 2.3 XGBoost XGBoost (angl. eXtreme Gradient Boosting) je metoda, ki omogoča vzporedno gradnjo večjega števila odločitvenih dreves na eni sami napravi, kar ji omogoča tudi do več kot 10-krat višjo časovno učinkovitost od obstoječih implementacij Gradient Boosting metode [11]. Z algoritmom XGBoost smo ugotavljali pomembnost zunanjih značilk. Po pričakovanjih sta poleg klikov v prejšnjih časovnih točkah najpomembnejši značilki “impressionns“ in “social_clicks“. 2.4 LSTM Za napovedovanje časovnih vrst se vse bolj uporabljajo povratne nevronske mreže (angl. Recurrent neural networks, RNN), predvsem njihova različica nevronske mreže z dolgim kratkoročnim spominom (angl. Long Short-Term memory neural networks, LSTM). Uporabljajo se za multivariatne napovedi pri napovedovanju časovnih vrst [12]. LSTM nevronske mreže so dandanes sposobne preseči univariatne modele za napovedovanje časovnih vrst [13], zato jih želimo poleg klasičnih modelov preizkusiti tudi v naši raziskavi. 2.5 Vztrajnostni model Za ovrednotenje modelov in določitev uspešnosti napovednih vrednosti uporabljamo urni vztrajnostni model, kjer predpostavimo, da bo število klikov v naslednji uri enako številu klikov v prejšnji uri. 3 Izvedba poskusov Da bi dobili čim bolj primerljive rezultate med modeli, se pri vseh modelih učimo na isti učni množici in napovedujemo na isti testni množici za vse časovne vrste. Za napovedovanje uporabljamo sprehod naprej (angl. walkforward validation), prikazan na sliki 2, kjer se pri napovedovanju v vsakem koraku učna množica povečuje za eno točko, testna pa se za eno točko pomanjša, ne glede na to, koliko točk vnaprej napovedujemo. Korakov je toliko, kolikor je dolga testna množica, zmanjšana za 24 ur. Končamo takrat, ko je seštevek učne množice, koraka in števila želenih napovednih točk večji ali enak velikosti časovne vrste. Slika 3: Povprečni RMSE za vseh 60 skupin oglasov družabnega omrežja Facebook, za napovedi od 1 do 24 napovednih točk vnaprej. Slika 2: Sprehod naprej. Za ocenjevanje napovedne točnosti uporabljamo koren povprečne kvadratne napake (angl. root mean squared error, RMSE). Napovedujemo od 1 do 24 točk vnaprej. V primeru napovedovanja ene točke vnaprej dobimo 24 vrednosti, ki jih nato uporabimo za izračun RMSE. V primeru napovedovanja 24 ur vnaprej dobimo samo 1 vrednost, ta pa predstavlja seštevek vseh 24 napovedanih vrednosti. Testna množica pri napovedovanju je dolga 24 točk (en dan), dolžina učne množice pa je odvisna od velikosti časovne vrste. Zmanjšana je le za velikost testne množice. Psevdokoda 1 prikazuje postopek obdelave podatkov in napovedovanja prihodnjih vrednosti. Postopek je enak za vse modele, le pri LSTM smo zaradi stohastične lastnosti nevronskih mrež model testirali deset krat za isto napoved in pri tem uporabili povprečne vrednosti. Psevdokoda 1 Obdelava podatkov in napovedovanje 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: for model ∈ {vsi modeli} do Priprava prejetih podatkov for obdelava ∈ {odstranitev trenda, normalizacija, standardizacija, logaritemska preslikava} do Obdelava podatkov Iskanje parametrov z mrežnim iskanjem Shranjevanje najustreznejših parametrov Razdelitev na učno in testno množico for vsak T iz testne množice do Učenje na učni množici Napovedovanje testne množice Inverz obdelave / vrnitev trenda, sezonskosti Izračun RMSE Beleženje rezultatov end for end for end for 3.1 Optimizacija parametrov in obdelava podatkov Preden se časovno vrsto lahko uporabi na modelih za napovedovanje, jo je potrebno ustrezno pripraviti in poiskati ustrezne parametre, ki jih model zahteva. Ker večina uporabljenih algoritmov predpostavlja, da je časovna vrsta stacionarna, ji s predhodno obdelavo odstranimo trend in sezonskost. Predhodno časovno vrsto obdelalamo še s 225 standardizacijo, normalizacijo in logaritemsko preslikavo ter primerjamo rezulate za različne kombinacije parametrov in obdelav. Pri multivariatnih modelih zunanje značilke poiščemo s pomočjo matrike intenzitete (angl. heat map), ki prikazuje, kako močno so atributi med seboj korelirani. Pri ARIMA modelu najustreznejše parametre p, d in q poiščemo z mrežnim iskanjem (angl. grid search). Ravno tako za iskanje zamika in kriterijske funkcije pri modelu VAR uporabimo mrežno iskanje. 4 Rezultati Ker smo poskuse izvajali na dveh podmnožicah časovnih vrst, za vsako družabno omrežje posebej, rezultate predstavljamo v ločenih podpoglavjih. Prav tako smo ločeno izvajali poskuse z LSTM nevronskimi mrežami, zato so primerjave LSTM nevronskih mrež z ostalimi modeli predstavljene posebej. 4.1 Facebook Primerjava modelov XGBoost, ARIMA in VAR za napovedi od 1 do 24 časovnih točk vnaprej je prikazana s sliko 3. Slika prikazuje izračunane povprečne RMSE, za vseh 60 skupin oglasov družabnega omrežja Facebook. Poskusi so pokazali dobro delovanje modela XGBoost, sledi mu model ARIMA. Rezultati nakazujejo, da se pri napovedovanju nekaj točk vnaprej multivariatni modeli XGBoost odlično obnesejo, vendar pa z oddaljenostjo dogodkov, ki so predmet napovedovanja, napovedna točnost XGBoost modelov upada v primerjavi z univariatnimi modeli ARIMA. 4.2 Twitter Časovne vrste družabnega omrežja Twitter so daljše, posledično so daljše učne množice, kar je pri večini napovednih modelov prednost. Tudi poskusi na časovnih vrstah družabnega omrežja Twitter so pokazali najboljše delovanje modela XGBoost. Sledi mu model ARIMA. Tudi pri časovnih vrstah družabnega omrežja Twitter se izkaže, da pri napovedih 13 časovnih točk in več vnaprej modela ARIMA preseže uspešnost modela XGBoost. 4.3 Primerjava z LSTM nevronskimi mrežami LSTM nevronske mreže dosegajo najboljšo napovedno točnost, ne glede na velikost napovednega okna, njihova slabost pa je v časovni potratnosti. Za napoved, denimo lati napovedi več časovnih točk vnaprej. Opažamo, da uporabljene metode, še zlasti LSTM nevronske mreže in XGBoost v uporabljeni domeni omogočajo smiselne napovedi do 24 ur vnaprej. Slabost LSTM nevronskih mrež je v njihovi časovni potratnosti. Po izračunih je čas izvajanja LSTM nevronskih mrež 150 krat počasnejši v primerjavi z ostalimi metodami. Slika 4: Povprečni RMSE za vseh 36 skupin oglasov družabnega omrežja Twitter, za napovedi od 1 do 24 napovednih točk vnaprej. Literatura [1] Christina Newberry. 130 Social Media Statistics that Matter to Marketers in 2019. https: //blog.hootsuite.com/social-mediastatistics-for-social-media-managers/, Mar 2019. [2] Tanja Fon. V sloveniji investicije v digitalno oglaševanje v letošnjem letu višje za 25 odstotkov. https: //iprom.si/v-sloveniji-investicijev-digitalno-oglasevanje-v-letosnjemletu-visje-za-25-odstotkov/, Mar 2019. Slika 5: Primerjava vseh modelov za napovedi od 1 do 24 točk vnaprej za eno časovno vrsto. [3] P Barwise. Harvard Business Essentials: Marketers Toolkit, 2006. [4] Xinran He, Junfeng Pan, Ou Jin, Tianbing Xu, Bo Liu, Tao Xu, Yanxin Shi, Antoine Atallah, Ralf Herbrich, Stuart Bowers, et al. Practical lessons from predicting clicks on ads at Facebook. In Proceedings of the Eighth International Workshop on Data Mining for Online Advertising, pages 1–9. ACM, 2014. [5] Cheng Li, Yue Lu, Qiaozhu Mei, Dong Wang, and Sandeep Pandey. Click-through prediction for advertising in twitter timeline. In Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 1959–1968. ACM, 2015. Slika 6: Povprečni RMSE za 3 skupine oglasov družabnega omrežja Facebook, za napovedi od 1 do 24 napovednih točk vnaprej. ene točke vnaprej, je model povprečno potreboval 448 sekund, medtem ko so ostali modeli napoved izvedli povprečno v 3 sekundah. Primer rezultatov na oglasni skupini, kjer smo primerjali uspešnost LSTM mrež z ostalimi metodami, je prikazan na sliki 5, medtem ko slika 6 s povprečnimi RMSE prikazuje primerjavo LSTM nevronskih mrež z ostalimi modeli za tri skupine oglasov. LSTM nevronske mreže so bile v povprečju boljše za 1,98% v primerjavi z XGBoost modelom. 5 Zaključek Z gradnjo napovednih modelov smo primerjali več metod za napovedovanje klikov na oglase v družabnih omrežjih. Osredotočili smo se na družabni omrežji Facebook in Twitter, za kateri smo imeli na voljo realne podatke. S kriterijsko funkcijo RMSE smo pokazali, da so napovedi v skladu s pričakovanji. Sledijo si v pričakovanem vrstnem redu: model LSTM za multivariatne napovedi dosega najboljšo napovedno točnost, sledijo mu regresijski model XGBoost, model ARIMA in model VAR v navedenem vrstnem redu. Zanimali so nas tudi rezu- 226 [6] Shuai Yuan, Jun Wang, and Xiaoxue Zhao. Real-time bidding for online advertising: measurement and analysis. In Proceedings of the Seventh International Workshop on Data Mining for Online Advertising, page 3. ACM, 2013. [7] Jason Brownlee. 4 Strategies for Multi-Step Time Series Forecasting - Machine Learning Masteryn. https://machinelearningmastery.com/ multi-step-time-series-forecasting/, 2017. [8] G Box and G Jenkins. Time Series Analysis-Forecasting and Control. San Francisco: Holden Day. 553 p. 1970. [9] Helmut Lütkepohl, Markus Krätzig, and Peter CB Phillips. Applied time series econometrics. Cambridge university press, 2004. [10] Eric Zivot and Jiahui Wang. Vector autoregressive models for multivariate time series. Modeling Financial Time Series with S-PLUS R , pages 385–429, 2006. [11] Tianqi Chen, Tong He, Michael Benesty, Vadim Khotilovich, and Yuan Tang. Xgboost: extreme gradient boosting. R package version 0.4-2, pages 1–4, 2015. [12] Jason Brownlee. Deep Learning for Time Series Forecasting. 2018. [13] Kasun Bandara, Christoph Bergmeir, and Slawek Smyl. Forecasting Across Time Series Databases using Long Short-Term Memory Networks on Groups of Similar Series. arXiv preprint arXiv:1710.03222, 2017. Industry 4.0: Data analysis and forecasting of extraordinary events Matej Račič, Aleš Papič, Uroš Lotrič Faculty of Computer and Information Science, University of Ljubljana Večna pot 113, SI-1000 Ljubljana E-mail: mr3523@student.uni-lj.si, ap5327@student.uni-lj.si, uros.lotric@fri.uni-lj.si Abstract One of Industry 4.0 objectives is to make industry smart and able to adjust to the current needs of the market. The crucial task is to forecast extraordinary events which reduces costs and increases efficiency. The paper presents our approach to forecasting events for two shuttles which move resources between the warehouse and the factory. We propose the pipeline using Orange3 data mining toolbox built-in Python 3. The approach was evaluated using 10-fold cross-validation. The results show that our approach can predict events up to 30 seconds. 1 Introduction The industry is an essential part of society. Its sole role is to produce material goods which today is carried out in highly mechanized and automated factories. The vision of Industry 4.0 is to make smart and efficient manufacturing systems which can self-control and adapt to fast-changing scenarios. To address the challenges, the industry requires high adaptability and at the same time, minimize the costs. work is the pilot project which tries to determine advantages of its implementation. The data collected is not of a private cloud. An essential factor for reducing the costs are errors in production. In our case, it is important to decrease downtime and provide just-in-time production. With data from sensors, we can help detect errors and adjust processes in the real time [3]. With it, we can improve the quality of the product, which is crucial as it defines the competitiveness of the company in the market. The role of data collection could be used to reduce the costs of maintenance and machine failure. By using advanced analytics and artificial intelligence, the factory downtime could be decreased drastically [3]. In our paper, we present an approach to forecasting extraordinary events, such as shuttle failures, in the industrial process. First, we describe the process and methods used in Section 2. Next, we present the results in Section 3. Finally, we wrap up our findings in a short discussion and conclude (Section 5) with the ideas for future work. 2 Methodology In this section, we present methods used in our approach to detecting shuttle failures such as side obstacle, error palette and others. The data preprocessing was done using Python3 language in the form of scripting. For the framework integration and evaluation, we used Orange3 [4] data mining toolbox built-in Python3. Figure 1: Framework of the smart factory of Industry 4.0. The framework of the smart factory, summarized on Figure 1, consists of four layers [1, 2]. First, there are physical resources, which consist of machines and products in a self-organized IoT network. The physical resources communicate with each other over the industrial network, which is another essential building block of the smart factory. It has a vital role in connecting machines with an integrated information system in the cloud. Our ERK'2019, Portorož, 227-230 227 2.1 Data pre-processing Shuttles communicate with each other and the manufacturing execution system (MES) in the form of TCP/IP telegrams. We focused on the messages sent and received from MES to the worker, which was a transport shuttle used to transfer materials from one place to another. There are two shuttles, one primarily supplies the manufacturing, and the other brings the materials from the storage. They exchange the load using a common area, where they can interact. In this work, we have over one month of logs (Figure 2), which had to be parsed in a format that is easily interpreted by machine learning algorithms. The first elements of the status are the date and time at which message was issued. The body of the message To predict alarms, we need to have measurements before such events happen, so in Figure 4 we sorted all alarms by the number of measurements they had before event occurred. Most alarms have very few measurements before the event. We contribute these cases to the device being reset before removing the cause of the alarm. After removing such events, the remaining number of measurements with alarms was 97. Figure 2: Number of examples in each day. contains: id, device id, device status,number of jobs, executing job on table 1, 2, job in memory 1, 2, logical deck, physical deck, device state, palette1: type, code, dimension, error, palette2: type, code, dimension on deck 1, error, alarms: 128 bits, first alarm id on deck 2. As there are many features, there were also different ways they were encoded: numbers as singed integers or unsigned long, many features as bits(alarms, pallet error, device status). Once all features were parsed, we filtered out all the logs that had information on triggered alarms Figure 3. The data is unbalanced, which makes training model a difficult task. There are far fewer alarms than there are logs of regular operation, which is suitable for the operation of the devices. However, not so much for learning how to distinguish such examples. With this, the majority class was “no event” at 99%. Figure 4: Number of measurements before triggering the alarm. Additionally, we evaluated the correlation of attributes Figure 5. The problematic observation from this is, there seems to be no correlation between the attributes and the target class (alarm). Figure 5: Correlation of features with target class (alarm). Before data is used for training, we perform additional preprocessing inside the Orange3. To increase performance, ReliefF [5] is used to select a subset of features used for training the model. We limited the number to 10 features. Finally, the entire dataset is normalized. Normalization is essential since the convergence of some Figure 3: Number of alarms in each day. 228 Using the Test & Score module, we can evaluate different models on our data. To obtain a realistic result, ten k-fold division of data in train and test set was used, and results averaged between all runs. To evaluate the capacity of models, we visualized the performance using ROC analysis; we can visualize which threshold can be used for individual models to achieve a particular performance. Some models can decide upon the threshold at which we decide to classify examples in certain classes. 3 Figure 6: The event forecast framework built in Orange3. models highly depends on it. The data was split using 10-fold cross-validation. 2.2 Event forecast framework To illustrate the event forecast framework in Orange3, we built a straightforward pipeline shown in Figure 6. It consists of a widget for importing training data. This data then goes through a Python widget which selects informative features and normalizes the dataset. Next, the data is sent to the desired model, which serves as an input to the predictions widget. Additionally, we need another input of the data which comes from the factory. It goes through another Python widget, which makes sure the data is transformed in precisely the same way as the training data. The output comes to the predictions widget, and we can see the result in the data table. This framework is hypothetical. Orange3 contains some limitations in order to obtain real-time data and send the results. However, the same pipeline could be written as a Python script with the Orange3 library. Additionally, with the tools to access the cloud infrastructure, it could serve as a real-time forecasting pipeline. 2.3 Evaluation We focused on the use of k-Nearest Neighbours (kNN), Random Forest (RF), Support Vector machines (SVM), Naive Bayes (NB) and Logistic Regression (LR). As such, we evaluated the different models on a previously described dataset in Section 2.1. Due to the overwhelming representation of the majority class 99%, the dataset was under-sampled by randomly selecting examples from “no event” class. In this way the model does not achieve 99% accuracy by merely predicting the majority class. Alternatively, there is an option to over-sample the underrepresented events, but this gives false confirmation of the model performing well by learning specific attributes of each measurement. This could be averted by knowing what specific measurements would also result in the event of “events”, but this would be impossible to do without domain-specific knowledge. 229 Results This section presents the results of our experimental evaluation. We measured many statistics in the Orange3 toolbox, but due to simplicity report only about the area under the ROC curve (AUC). The AUC [6] is a single value estimate which summarizes the overall performance of the model and can show its ability to distinguish between different classes. The results of experimental evaluation, obtained on evaluation framework are shown in the Table 1. From the table, we can see the best performances from model RF. The highest AUC was 0.88 obtained on the data where the objective was to predict the event for 5 seconds ahead. In the table, we can also notice AUC equal to 0 for a time T > 30 seconds. Further investigation revealed that the data did not contain any examples. The Figure 7 shows the number of examples in the datasets for different value T . From the graph we can see the most examples for 2 ≤ T ≤ 20. The data contain more than 3000 examples. For T = 1 we only have 129 examples and for T = 30 slightly more than 300 examples. Next, we decided to look in more detail data for T = 1, T = 5 and T = 30, due to the similar performances and different sample sizes. The data for T = 5 revealed very unbalanced dataset. Almost all of the models predicted the majority class - “no event”. On the other hand dataset for T = 1 and T = 30 was still unbalanced but far less compared to T = 5. With the models KNN and NB we were able to predict class “side obstacle” with 50% accuracy for T = 1. For the dataset T = 30 we were able to predict classes “side obstacle” and “obstacle in direction of movement” in 30-50%. Based on the findings above, we conducted another experiment on data T = 30. We decided to slightly oversample classes “side obstacle”, “obstacle in direction of movement” and “error pallet”. On the other hand, class “no event” was under-sampled. With this, the number of examples across all of the classes became more similar — the final evaluation shown the increased performance of all models. The best model obtained was KNN with the AUC of 0.82. It was followed by SVM with the AUC score of 0.79 and NB, LR which both scored 0.75. 4 Discussion The industry 4.0 brings significant challenges that have not yet been addressed and need further research. Some are found in this article, like: understanding data formats, separation of attributes, and the meaning of events. This Table 1: Average AUC for per model in relation to how much time in advance we wish to predict the event. Time T is in seconds. T 1 2 3 4 5 10 20 30 60 120 KNN 0.82 0.71 0.69 0.67 0.78 0.66 0.68 0.82 0.00 0.00 SVM 0.69 0.76 0.73 0.71 0.78 0.66 0.63 0.79 0.00 0.00 RF 0.85 0.87 0.85 0.85 0.88 0.79 0.81 0.83 0.00 0.00 NB 0.71 0.73 0.79 0.69 0.75 0.60 0.63 0.72 0.00 0.00 LR 0.77 0.80 0.78 0.79 0.78 0.74 0.68 0.72 0.00 0.00 out that the models were predicting the majority class. After changing the distribution of the data, the ability to distinguish between different classes improved. In the future, many things could be improved. First of all, is the data. Data should be sampled more often. The time interval between one message and the other varies significantly. Current data allows us to predict for roughly 30 seconds in advance. The problem could be seen and modeled as a data stream. Modeling data stream requires us to detect the behavioral change, also known as a concept drift. When a particular event happens or is about to happen, we can detect changes in the process. Such an approach could even work with a limited amount of events (alarms) available in the data. Unfortunately, Orange3 does not support data streams. Advances go in the right direction; however, the data is too simple and contains a lot of unimportant features. The problem of underrepresented events is problematic but being addressed. Despite everything solving this problem without domain knowledge is hard. References [1] S. Wang, J. Wan, D. Zhang, D. Li, and C. Zhang, “Towards smart factory for industry 4.0: a self-organized multi-agent system with big data based feedback and coordination,” Computer Networks, vol. 101, pp. 158–168, 2016. Figure 7: Number of examples in relation to time. can, at the moment, be addressed by having domain experts who understand the data, can analyze and interpret it. Systems are not yet capable enough to allow us to decipher everything from the big amounts of raw information that can be gathered. As we have shown in Section 2.1, the data needs to be pre-processed. We begin with the messages which needs to be interpreted and processed in order to be understood by machine learning algorithms. By maintaining a human in the loop, we can specify the events we are looking for, which are usually few, in our case only 0.01%. So they can be specified, analyzed and explored what the cause was. However, without this process, we could only try to solve non-existing problems in the never-ending stream of information that is pouring in. At the moment the revolution is promising big changes which will require new experts in the field with an understanding of processing signals, data manipulation, cloud computing, and machine learning. Only then, with first a good understanding of the limitations, we can make progress in the right direction. Those who promise too much will, as in most cases, be unable to deliver. 5 Conclusion In this paper, we present our approach to the integration of a forecasting system for extraordinary events occurring in the factory. For our problem of two shuttles, the task turned out to be very complicated. Our first approach to prepare the data to forecast for N seconds in advance has shown excellent results. With further analysis, we found 230 [2] B. Chen, J. Wan, L. Shu, P. Li, M. Mukherjee, and B. Yin, “Smart factory of industry 4.0: Key technologies, application case, and challenges,” IEEE Access, vol. 6, pp. 6505– 6519, 2018. [3] M. A. K. Bahrin, M. F. Othman, N. N. Azli, and M. F. Talib, “Industry 4.0: A review on industrial automation and robotic,” Jurnal Teknologi, vol. 78, no. 6-13, pp. 137–143, 2016. [4] J. Demšar, T. Curk, A. Erjavec, Črt Gorup, T. Hočevar, M. Milutinovič, M. Možina, M. Polajnar, M. Toplak, A. Starič, M. Štajdohar, L. Umek, L. Žagar, J. Žbontar, M. Žitnik, and B. Zupan, “Orange: Data mining toolbox in python,” Journal of Machine Learning Research, vol. 14, pp. 2349–2353, 2013. [Online]. Available: http://jmlr.org/papers/v14/demsar13a.html [5] M. Robnik-Šikonja and I. Kononenko, “Theoretical and empirical analysis of relieff and rrelieff,” Machine learning, vol. 53, no. 1-2, pp. 23–69, 2003. [6] J. A. Hanley and B. J. McNeil, “The meaning and use of the area under a receiver operating characteristic (roc) curve.” Radiology, vol. 143, no. 1, pp. 29–36, 1982. Generating program code for psychological experiments from high-level descriptions Igor Dejanović1 , Mirjana Dejanović2 1 2 Faculty of Technical Sciences, University of Novi Sad Faculty of Medicine, University of Pristina, Kosovska Mitrovica E-mail: igord@uns.ac.rs Abstract From the standpoint of programming paradigm used there are two approaches to the experiment specification In this paper we are proposing a usage of Domain-Specific (or programming in general): 1) imperative, which specLanguages in the area of experimental psychology and ify how something is done, and 2) declarative, which present a language and generators infrastructure for fast specify what needs to be done and let the computer figure creation of a specific class of psychological tests based out how the goal can be met [7]. The vast majority of on condition-stimulus-response paradigm with a fixed set today’s programming languages are imperative and the of conditions. The low level code is generated from a high same holds true for the experiment libraries. Imperative level description in the proposed language. We describe style of programming arguably gives more freedom to the the approach using an example experiment. experimenter, but the language is usually harder to learn and the resulting program is harder to read. The hard part 1 Introduction of learning to program are control statements of imperThe majority of empirical work in the psychology and ative programs: loops, conditions, etc. The freedom of cognitive neuroscience are nowadays performed using stan- defining the same experiment in various different ways dard personal computers. In the past making a new tests comes with the price that the structure of resulting prowas a tedious process entailing a low-level coding of the grams may differ to a great extent thus having a negative computer program which was used to conduct the test and impact on readability and comprehension. gather measurement data. In the recent years we are witThis paper introduces a language and a generator innessing an emergence of multitude of tools whose aim is frastructure called pyFlies that uses ideas from Modelmaking new tests faster and easier. All those tools have Driven Engineering (MDE) [12] and Domain-Specific Lanapproaches with their strength and weaknesses. guages (DSL) [4, 15]. pyFlies language is a high-level Based on the experiment specification approach we declarative language crafted specifically for the descripcan divide the existing software in three categories: (1) tion of reaction time experiments based on condition-stimuliGUI-based, (2) text/code-based, (3) hybrid — the mix- reaction paradigm with a fixed set of conditions. Being ture of the previous two. a declarative language enables experimenters to specify GUI-based experiment builders use drag-and-drop in- what need to be done and leave the how part to the pyFlies terface to construct an experiment (e.g. OpenSesame [9] code generators. or E-Prime [8]). This style is a good fit for practitioners pyFlies is developed as an open-source software unwithout a programming background, but advanced users der the MIT License [1]. It is implemented in Python are inclined toward textual specification where they can programming language using the textX library for DSL use standard text editing idioms and editors of choice. development [3]. The Python programming language is a The text-centric approach is mostly based on some popular platform-independent open-source programming popular General-Purpose Language (GPL) where an ex- language having a reputation of being highly readable periment is programmed using host language with the and one of the easiest programming languages to learn. help of domain-specific library [11, 5, 6, 2]. The good The paper is structured as follows. Section 2. gives side of this approach is that expert experimenters can uti- an overview of the pyFlies language. Section 3. describes lize a vast array of host language libraries, providing an the structure of the target platform code generators. Reunprecedented level of flexibility. But the drawback is lated work is given in Section 4. We conclude the paper that the experiment structure and semantics are not eas- and give some further research direction plans in Section ily comprehended by looking at the code. A significant 5. mental effort is required by the reader to reconstructs the essence of the experiment model. 2 pyFlies language The hybrid approach enables using either GUI or text based experiment specification sharing the same benefits pyFlies is a high-level declarative Domain-Specific Language (DSL). In contrast to the experiment specifications and drawbacks. based on the imperative General-Purpose Languages (GPLs) ERK'2019, Portorož, 231-234 231 Abstract experiment model Existing platforms PsychoPy Expyriment jsPsych OpenSesame Direct interpretation Automatic model transformation (code generation) Tatool ... Figure 1: The pyFlies approach. Listing 1: Simon test 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 experiment "Simon" " A simple behavioural task to assess a Simon effect. " test Simon { conditions { position color left left right right green red green red congruency response congruent incongruent incongruent congruent left right left right } stimuli{ all: shape(rectangle, position position, color color) error: sound(1000) fixation: shape(cross) } } which define how something is done, pyFlies specify what needs to be done and thus is more appropriate for experimenters without the programming background. To describe pyFlies language elements, we will use an example test that exhibits the Simon effect [14, 13]. This effect refers to the finding of J.R. Simon, who discovered that reaction times are usually faster and more accurate when a stimulus occurs in the same relative position as the response. In this test, in each trial a subject is presented with a square colored either red or green. The square is positioned either left or right relative to the center of the screen. The subject is instructed to press left key as fast as she can when green square appears regardless of its position and the right key otherwise. In Listing 1 a description of an experiment to assess a Simon effect in pyFlies language is given. To define this experiment in pyFlies we first start by definition of experiment name and description. The name (line 1) is mandatory while the description (lines 2–5) is optional. 232 The basic building blocks of any pyFlies experiment are tests and screens. pyFlies models test using conditionstimuli-response paradigm. Each test definition specifies test name (line 7), a conditions table (lines 8–15) and stimuli definitions (lines 17–22). 2.1 Conditions Each test has a finite number of conditions given as rows in the condition table. Condition table is given in the form of plain text resembling table with rows and columns where the first row (line 9) contains the name of condition variables while each subsequent row (lines 11–14) presents the values of each condition variable in a given condition. The name of condition variables may be arbitrary, but there must exist variable with the name response. This column specifies the valid response for each condition. The values of response column can be arbitrary. In each condition a variable can hold a different value. Variable values are abstract in a way that their values in the condition table does not necessarily carry any meaning. For example, in line 12 a variable color has a value of red but the meaning of this condition variable value is given in the stimuli definition where in this condition a red rectangle stimulus is presented to the user. In this example we have four condition variables (position, color, congruency and response) two of which are independent (position and color). Each of two independent variables in each condition have one of the values: left and right for position describing position of the shape relative to the center of the screen and green and red for color stating the possible shape colors. This results in four different conditions, i.e. four rows in the condition table. Congruency is a dependent variable that describes each condition as congruent if the relative position of the shape is aligned with expected response or incongruent if the expected response is opposite to the shape position. This variable is not needed for the experiment definition, but it is given here as a form of documentation and can be used later for easier analysis of gathered data. The response variable states the valid or expected response in each of the conditions. It is given as words left and right which is used later to map to the appropriate response event on the target experiment platform. 2.2 Stimuli Stimuli are defined in the stimuli section (lines 17– 22). This section contains a list of stimuli definition statements. Each statement is given in the form: : Stimuli defined after the colon in stimuli definition statement are given in the form of a list of stimulus definition. Stimuli are presented to the user in the order they are defined. The majority of stimulus parameters accepts the name of condition variable from the condition table as a parameter value, enabling us to change the stimulus based on the current condition. This is used in the example in Listing 1. The position and color of the rectangle stimulus (lines 18–19) are defined by the current condition (one of the conditions defined on lines 11–14). Connecting stimuli and conditions Conditions from the condition table are paired with the stimuli using condition match expressions. These expressions are given as a first part of each stimuli definition, before the colon. The simplest match expression is just a number specifying the ordinal number of the condition in the condition table. More complex matches involve logical expression in the form: variable1=value1 and variable2=value2 or variable3=value3 Condition match defined using logical expression will match those conditions where the expression evaluates to true. This can, in some case, reduce stimuli definition section significantly. For example, one could write: position=left and color=red To present stimuli in all condition where position is left and color is red. In the case of Simon experiment this is equivalent to a match expression consisting solely of number 2 (second condition from the condition table). Remaining elements of the language not presented here describe screens definitions, experiment structure and code generator configurations. 3 Target code generators (the name of the generator), description (a short description), and the function generate which accepts two parameters: model (a pyFlies model) and target (target configuration). generate function will be called for each target code generator configured in the pyFlies model when a user triggers code generation GUI action. It is up to the generator author to generate all needed files in the right location (configured by output parameter in the target section). Recommended way to generate target source code is by using template engine. For the current generators we are using jinja2 Python template engine. Template engines use a special DSL for the template specification. Template is a textual file where all fixed parts are given as is while the variable parts are encoded in a special way and are replaced by a proper text during template rendering. Variable part are filled by information coming from the pyFlies model. Figure 2 depicts this process. During each code generator run, code generated in the previous run is deleted. This is done to remove stale generated files in case of file name changes. pyFlies core generator framework provides basic sanity checks for the given output folder to prevent accidental deletion/overwrite of the folder not created by the pyFlies itself (if the user puts wrong path in the output target configuration). The core generator framework will copy all non-template files to the output location as these files are considered a static part of the generated code. All files referenced from the pyFlies model will be copied to the output folder too. This is important because some stimuli require additional files (image, audio). What is left to the generator author is to provide various conversions (e.g. coordinate systems, sizes, colors) to target platform values and to write and render templates in order to obtain final files. All this should be done in the generate function of the generator module. It is worth to mention that the Simon experiment presented here is 60 lines of arguably readable code. Generated code in PsychoPy is 324 lines of Python code. It is over 5 times more lines. Although Python code is readable it is still a full programming language and what the experiment exactly do will not be that obvious by looking at the code. 4 Information in this section are relevant to the prospect generator authors only. The end-user should only know the name of the generator and the accepted configuration parameters. Generator infrastructure is kept in pyflies.generators package. Each folder in this package represent a generator for a particular target platform. There are currently 3 generators: PsychoPy [11], Expyriment KrauseExpyriment2014 and jsPsych LeeuwjsPsych2014. At the moment of this writing PsychoPy is complete while the other two are work in progress. In each generator folder (Python package) there is init .py file which must contain at least variables name 233 Related work Previous related work that is most similar to ours is PEBL [10]. PEBL is imperative language and compiler/interpreter crafted from the ground up to be used for experiment design and implementation. It is all-in-one solution which enables PEBL experiments to be designed and run using the software without requirement of additional software and libraries. It also comes with a test battery suite. As with all imperative languages, there is greater flexibility and possibility to define much wider scope of experiments at the cost of higher model complexity and lower readability. # Run experiment # Create folder for experiment results. timestr = time.strftime("%Y%m%d-%H%M%S") exp_folder = '{{m.name}}-%s' % timestr os.mkdir(exp_folder) Template engine {%- for e in m.structure.elements %} {%- if e.__class__.__name__ == "ScreenInstance" %} present_stimuli(screen_{{e.type.name}}) {%- elif e.__class__.__name__ == "TestInstance" %} run_block(exp_folder, "{{e.type.name}}", {{e.type.name}}_varNames, {{e.type.name}}_conditions, {{e.type.name}}_condition_stimuli, {{e.trials}}, {{e.practice}}, {{e.randomize}}, # Run experiment {{e.type.name}}_fixation, {{e.type.name}}_error, # Create folder for experiment results. {{e.type.name}}_correct) {%- endif %} timestr = time.strftime("%Y%m%d-%H%M%S") {%- endfor %} exp_folder = 'Simon-%s' % timestr Template os.mkdir(exp_folder) present_stimuli(screen_Practice) run_block(exp_folder, "Simon", Simon_varNames, Simon_conditions, Simon_condition_stimuli, 1, True, True, Simon_fixation, Simon_error, Simon_correct) pyFlies model Generated source code Figure 2: Source code generation using template engine. 5 Conclusion In this paper we have presented declarative language and generator infrastructure for definition of a very specific class of psychological experiments based on conditionstimuli-reaction paradigm with a fixed set of conditions. We have described the language and its usage on an example of a test created to assess Simon effect. In this simple example we have shown that generated target lines of code is greater than initial pyFlies specification by the factor of 5. Furthermore, the generated Python code, although readable still doesn’t directly convey the experiment model so it requires significant mental effort from the reader to understand it. For further work we plan to implement new target generators, to improve user experience in using the pyFlies IDE by offering feature like code completion, goto references etc. Also we will research into extending the language to provide wider class of experiments while trying to retain backward compatibility and current language simplicity. References [1] pyflies. https://github.com/igordejanovic/pyFlies. Accessed: 2019-07-05. [2] Joshua R de Leeuw. jsPsych: A JavaScript library for creating behavioral experiments in a Web browser. Behavior research methods, page 1–12, 2014. https://github.com/jodeleeuw/jsPsych. [3] I. Dejanović, R. Vaderna, G. Milosavljević, and Ž. Vuković. TextX: A Python tool for DomainSpecic Languages implementation. KnowledgeBased Syems, 115:1–4, 2017. [4] Martin Fowler. Domain-Specic Languages. Addison-Wesley Professional, 1 edition, October 2010. [5] Aaron S Geller, Ian K Schleifer, Per B Sederberg, Joshua Jacobs, and Michael J Kahana. PyEPL: A cross-platform experiment-programming library. Behavior Research Methods, 39(4):950–958, 2007. 234 [6] Florian Krause and Oliver Lindemann. Expyriment: A Python library for cognitive and neuroscientic experiments. Behavior research methods, 46(2):416–428, 2014. [7] J. W. Lloyd. Practical Advantages of Declarative Programming. In Joint Conference on Declarative Programming, 1994. [8] Brian MacWhinney, James St James, Chris Schunn, Ping Li, and Walter Schneider. Step—a syem for teaching experimental psychology using e-prime. Behavior Research Methods, Inruments, & Computers, 33(2):287–296, 2001. [9] Sebaiaan Mathôt, Daniel Schreij, and Jan Theeuwes. OpenSesame: An open-source, graphical experiment builder for the social sciences. Behavior Research Methods, 44(2):314–324, 2012. [10] Shane T Mueller and Brian J Piper. The psychology experiment building language (pebl) and pebl te battery. Journal of neuroscience methods, 222:250–259, 2014. [11] Jonathan W Peirce. PsychoPy—psychophysics soware in Python. Journal of neuroscience methods, 162(1):8–13, 2007. [12] Douglas C Schmidt. Model-driven engineering. COMPUTER-IEEE COMPUTER SOCIETY-, 39(2):25, 2006. [13] J Richard Simon. Reactions toward the source of imulation. Journal of experimental psychology, 81(1):174, 1969. [14] J Richard Simon and Alan P Rudell. Auditory SR compatibility: the eect of an irrelevant cue on information processing. Journal of Applied Psychology, 51(3):300, 1967. [15] Markus Völter. DSL Engineering: Designing, Implementing and Using Domain-Specic Languages. 2013. Razvoj odprtokodnega JavaScript vtičnika za optimizirano nalaganje in prikaz grafik na spletnih platformah Development of an open-source JavaScript plugin for optimizing the loading and display of graphics on web platforms Luka varga1, Helena Gabrijelčič Tomc1 1 Katedra za informacijsko in grafično tehnologijo, Oddelek za tekstilstvo, grafiko in oblikovanje, Naravoslovnotehniška fakulteta, Univerza v Ljubljani E-pošta: varga.luka93@gmail.com Izvleček. Cilj raziskave je bil načrtovati in razviti zmogljiv odprtokodni JavaScript vtičnik, ki se celovito spopada s problematiko nalaganja in prikaza grafik na spletu, hkrati pa je enostaven za uporabo in analizirati delovanje spletnega mesta pred in po uporabi JavaScript vtičnika. Zasnovan je bil JavaScript vtičnik, ki je bil razdeljen na dva dela - del za uporabo v sami fazi priprave kode in del za uporabo v fazi uporabe spletne platforme. Za evalviranje prihranka časa pri nalaganju spletne strani je bil vtičnik integriran v obstoječo spletno stran z realnimi uporabniki. Iz rezultatov je razvidno, da je bil izdelan JavaScript vtičnik, ki se celovito spopada s problematiko optimizacij nalaganja in prikaza grafik na spletni platformi, učinek vtičnika pa je odvisen od same spletne strani, kjer je vtičnik uporabljen. Ključne besede: odprtokodni JavaScript vtičnik, optimizacija grafik, čas nalaganja, napredni grafični HTML elementi, kompresija Abstract. This paper addresses the conception and implementation of an open-source JavaScript plugin for optimizing the loading and display of graphics on web platforms. The main goals of the paper were to conceptualize and implement a powerful JavaScript plugin that fully addresses the problematics of loading and display of graphics on web while making sure that the plugin is simple for use and to analyse the operation of a website before and after the inclusion of the implemented JavaScript plugin. To evaluate the load time saved by using the plugin, the plugin was integrated in an actual website with real users. Based on the results the implemented plugin does fully address the loading and display of graphics on web platforms, while the effect of the plugin depends greatly on the website itself where the plugin is used. Key-words: an open-source JavaScript plugin, graphics optimization, load time, advanced graphical HTML elements, compression ERK'2019, Portorož, 235-238 235 1 Uvod Optimizacija grafik za prikaz na spletu zahteva zmanjševanje števila grafik, katere odjemalec zahteva od strežnika ter zmanjševanje količine podatkov potrebnih za prikaz neke grafike (pri tem pa naj se ohrani čim boljša kvaliteta grafik, ki se prikaže uporabniku). Eden izmed najlažjih načinov za zmanjšanje velikosti datotek je zmanjšanje samih dimenzij grafike glede na potrebe, pri čemer sprva pomislimo na kompresijo z izgubo. Tudi v primeru grafik pa lahko uporabljamo kompresijo brez izgube (tudi v kombinaciji s kompresijo z izgubo) in v primeru grafik je na spletu najbolj razširjen GZIP kompresijski algoritem [1]. Z uporabo kompresije z izgubo lahko sicer zmanjšamo velikost posameznih slikovnih datotek, s čimer pa izpolnimo le del pogojev za optimizirane datoteke - še vedno je namreč samo število slikovnih datotek, katere potrebujemo za prikaz določene spletne strani lahko zelo veliko. Da se izognemo velikemu številu datotek potrebnih za delovanje spletne strani, lahko uporabimo t.i. "CSS Image Sprites" način uporabe slik. V praksi to pomeni, da vse grafike, ki spadajo skupaj in tvorijo neko zaključeno celoto, združimo v eno samo sliko in nato z uporabo CSS-a maskiramo celotno sliko ter prikažemo le želen del slike, ki predstavlja npr. posamezno grafiko. V CSS3 specifikaciji so specificirani različni grafični filtri, ki so podprti v vsakem modernem brskalniku in delujejo na podlagi modificiranja barvnih matrik elementov, s katerimi lahko nadziramo vrednosti RGB kanalov in alpha kanal nabora HTML elementov in njihovih potomcev. Ti grafični filtri omogočajo tako točkovne operacije, kot tudi lokalne in morfološke operacije [2]. Spletne platforme morajo dandanes biti dostopne na različnih napravah, zelo različnega razpona velikosti zaslonov. Tega se zavedajo tudi razvijalci brskalnikov ter posledično za spletne razvijalce razvijajo napredne grafične HTML elemente za optimizacij grafik. Ti elementi na podlagi zaznavanja specifik uporabnikovega zaslona in na podlagi “pravil” katere razvijalec specificira za prikaz neke slike izberejo najprimernejšo sliko iz nabora slik, katerega je spletni razvijalec podal. Med takšne naprednejše grafične HTML elemente lahko umestimo element HTMLPictureElement [3], ki mora med potomci imeti en HTMLImageElement, ima pa lahko tudi več elementov tipa HTMLSourceElement [4, 5]. Namen raziskave je bila zasnova in izdelava enostavnega in zmogljivega odprtokodnega JS vtičnika za celovito optimizirano nalaganje in prikaz grafik na spletnih platformah z uporabo katerega lahko občutno skrajšamo čas nalaganja spletnih platform in olajšamo delo razvijalcem spletnih platform. V okviru raziskave je bilo tudi raziskano kako lahko izrabimo osnovne principe delovanja spletnih mest za boljšo optimizacijo nalaganja grafik, katere spletne tehnologije povezane z optimiziranim nalaganjem in prikazom grafik so v zadostni meri podprte za uporabo in kako zagotoviti kompatibilnost v primeru, da neka uporabljena tehnologija ni na voljo pri nekem uporabniku. 2 Eksperimentalni del V eksperimentu so bili uporabljeni naslednji programi in orodja: program JetBrains WebStorm 2018 za razvoj JS vtičnika [6], programsko orodje Git za nadzor verzij JS vtičnika [7], spletni repozitorij Github za gostovanje izvorne kode JS vtičnika [6,8], NPM repozitorij JS vtičnikov za enostavno integracijo JS vtičnika v projekte ostalih razvijalcev [9], Travis CI za neprekinjeno integracijo (ang. continuous integration) med Github repozitorijem in NPM repozitorijem, za izvajanje avtomatskih testov, kompilacije izvorne kode v produkcijsko kodo [10], orodje Codecov za nadzor pokritosti izvorne kode z avtomatskimi testi [11], odprtokodno orodje semantic-release za standardizirana sporočila ob nalaganju sprememb izvorne kode v Github repozitorij, za avtomatsko generiranje sporočil o spremembah ob izdajah novih verzij vtičnika, za avtomatsko semantično verzioniranje izvorne kode vtičnika na podlagi standardiziranih sporočil ob nalaganju sprememb izvorne kode [12], odprtokodni jezik TypeScript za izdelavo JS vtičnika, ki se v procesu kompilacije izvorne kode avtomatsko prepiše v JS [13], odprtokodno orodje Webpack za proces kompilacije izvorne kode [14], odprtokodno orodje Jest in njegov derivat ts-jest za izdelavo in izvajanje avtomatskih testov [14–16], odprtokodno orodje Jimp za generacijo nizko-kvalitetnih variacij grafik [17], odprtokodno orodje promptly za postavljanje vprašanj uporabniku in pridobivanje uporabnikovih odgovorov preko ukazne vrstice [18], odprtokodno orodje rimraf za omogočanje programskega brisanja datotek na različnih operacijskih sistemih z istim ukazom [19], odprtokodno orodje tslint za dodaten nadzor pisanja izvorne kode in zagotovitev konsistentnosti sintakse kode [20] ter spletni brskalnik Google Chrome za analiziranje vpliva vtičnika na spletno platformo. 236 2.1 Faza priprave kode Za fazo priprave kode smo izdelali dva algoritma algoritem, ki analizira grafike in algoritem, ki pripravi nizko-kvalitetne različice grafik, ki se lahko uporabijo za progresivno nalaganje grafik. Algoritem, ki analizira grafike najprej pogleda stopnjo kompresije grafike. Pri temu upošteva dimenzije grafike in velikost grafike v bajtih. Če zazna, da ima grafike nizko ali srednjo stopnjo kompresije opozori uporabnika, da lahko grafiko dodatno kompresira. V primeru, da je kompresija grafike ustrezna pa algoritem nadaljuje in podrobno pregleda barvno vsebino grafike. Pri pregledu barvne vsebine grafike algoritem najprej poviša kontrast grafike, da se na ta način znebimo dodatnih barvnih odtenkov, ki so nastali kot posledica glajenja robov znotraj grafike. Nato algoritem skenira barvne vrednosti vsake slikovne pike, njegove RGBA vrednosti uporabi za pretvorbo v Lab barvni prostor (preko pretvorbe iz RGBA v RGB, pri čemer za barvo ozadja uporabi referenčno belo točko z RGB vrednostmi 255, 255, 255, ter preko pretvorbe iz RGB v XYZ barvni prostor, pri čemer za referenčno osvetlitev uporabi D65/2° in na koncu še iz XYZ v Lab barvni prostor, ponovno ob referenčni osvetlitvi D65/2°) in primerja barvno razliko izračunano po funkciji dE76 z barvnimi vrednostmi že-skeniranih slikovnih pik. Če zazna majhno število unikatnih barvnih odtenkov (pri čemer za unikatne barvne odtenke smatra barvne odtenke, pri katerih je ΔE < 3), uporabnika algoritem opozori, da je grafika primerna za konverzijo v SVG format. Algoritem, ki pripravi nizko-kvalitetne različice grafik, za vse grafike znotraj direktorija, katerega poda uporabnik, ki še nimajo pripravljenih nizko-kvalitetnih različic, grafike pomanjša na 4% prvotne površine, s čimer se močno zniža tudi število bajtov potrebnih za nalaganje grafike. S pomočjo lokalne operacije glajenja pa poskrbi, da bo grafika v brskalniku še vedno dovolj kvalitetna. Primer generirane nizko-kvalitetne različice lahko vidimo na sliki 1 (desno). Slika je bila generirana z algoritmom za pripravo nizko-kvalitetne različice primera slike, originala prikazane na sliki 1 (levo), in je, kot vidimo, kar 302x manjša od originala. Slika 1: Velikost JPEG slike dimenzije 4925 x 3283 px znaša 10,3 MB (original, levo), velikost JPEG slike dimenzije 985 x 657 px znaša 34 kB (desno). 2.2 Faza uporabe spletne platforme Za fazo uporabe spletne platforme smo izdelali tri algoritme - algoritem za preverjanje ustreznosti grafik v sami fazi uporabe, ki je namenjen za uporabo predvsem v sklopu razvoja in ne na sami produkcijski verziji spletnega portala, algoritem za zakasnjeno nalaganje in algoritem za progresivno nalaganje grafik. Algoritem za preverjanje ustreznosti grafik preveri, 1. če je grafika prikazana s pomočjo naprednih grafičnih HTML elementov, 2. če imajo napredni grafični elementi ustrezne atribute (atributa “srcset” in “sizes”) in 3. če imajo atributi pravilne vrednosti. Algoritem za zakasnjeno nalaganje poskrbi za to, da se grafike na spletni platformi ne naložijo vse naenkrat, temveč, da se naložijo le tiste grafike, ki so potrebne. Ko algoritem naloži neko grafiko pa takoj začne izvajati tudi algoritem za progresivno nalaganje grafike. Algoritem za progresivno nalaganje grafik preveri vse grafike, ki uporabljajo nizko-kvalitetne različice grafik generirane z algoritmom za pripravo nizko-kvalitetnih različic grafike v fazi priprave kode, in tiste grafike, katerim je razvijalec preko specifičnih atributov dodelil morebitne druge nizko-kvalitetne različice. Algoritem nato vzame vse te grafike, katere še nimajo naložene visoko-kvalitetne različice, in v ozadju začne nalagati njihovo visoko-kvalitetno različico. Algoritem z uporabo CSS grafičnih filtrov in CSS animacij izvede eleganten, zvezen prehod ob zamenjavi nizko-kvalitetne različice grafike v visoko-kvalitetno različico grafike in na tak način zagotovi, da sam proces progresivnega nalaganja grafike ni moteč za končnega uporabnika. so bili algoritmi OptimusIMG vtičnika izvedeni (v temu poskusu) v roku 5,1 ms, kar je znašalo na primeru spletne strani (ki je dokaj povprečna kar se tiče zahtevnosti in trajanja izvajanja JS funkcij ob nalaganju spletne strani) 0,5% vsega časa porabljenega za izvajanje JS kode. Slika 2: Čas nalaganja OptimusIMG vtičnika glede na lokacijo končnega uporabnika v primeru dodajanja vtičnika preko reference na URL 3 Rezultati in razprava Rezultat raziskave je odprtokodni JS vtičnik OptimusIMG (sestavljenka iz “Optimus”, latinske besede, ki pomeni “najboljši” in iz “IMG”, ki je kapitelna različica HTML značke za HTMLImageElement - ), ki je v svoji produkcijski, pomanjšani različici z uporabo GZIP algoritma, velik le 3,6 KB. V času pisanja tega prispevka je bil prenesen že več kot 2000-krat. Vtičnik je ponujen na razpolago na NPM repozitoriju [21]. 3.1 Trajanje nalaganja kode vtičnika V primeru dodajanja OptimusIMG vtičnika na spletno platformo z uporabo NPM repozitorija se bo koda vtičnika tipično združila v eno samo datoteko skupaj z ostalo JS kodo, ki jo neka spletna platforma uporablja. Druga izmed glavnih predvidenih možnosti dodajanja OptimusIMG vtičnika na spletno platfromo je vključevanje reference z URLjem na katerem je produkcijska verzija OptimusIMG javno objavljena. V primeru dodajanja vtičnika na spletno platformo preko tega načina, pa je delta časa potrebnega za nalaganje vtičnika različna glede na lokacijo končnega uporabnika in zasedenost strežnika na katerem je OptimusIMG na voljo in bo, kot lahko vidimo na sliki 2, precej bolj variirala, kot v primeru združevanja kode iz OptimusIMG vtičnika skupaj z ostalo JS kodo, ki jo neka spletna platforma uporablja. 3.2 Trajanje izvajanja algoritmov Kot lahko vidimo na sliki 3, ki prikazuje časovno potratnost raznoraznih JS skript, grupiranih po domeni, 237 Slika 3: Časovno potratnost raznoraznih JS skript, grupiranih po domeni. Naslednja pomembna točka pri evalviranju koristnosti vtičnika je trajanje izvajanja algoritmov v vtičniku. Povprečen čas izvajanja algoritmov OptimusIMG vtičnika pa je bil, po naših testiranjih 5,2 ms, kot je jasno tudi iz podatkov na sliki 4. Slika 4: Čas izvajanja algoritmov OptimusIMG vtičnika 3.3 Čas nalaganja spletne strani Čas nalaganja spletne strani smo merili na dveh primerih in sicer na domači strani spletne platforme in na strani s seznamom člankov spletne platforme. Izmerili smo čas nalaganja spletne strani v primeru, da je OptimusIMG vtičnik vključen in dodan na spletno stran preko URL reference (slika 5) ter izmerjene vrednosti časa nalaganja primerjali z referenčnimi vrednostmi - t.j. ista spletna stran, na kateri ni dodan OptimusIMG vtičnik (slika 6). Pri testiranjih smo za namen konsistentnosti znova omejili hitrost internetne povezave na povprečno hitrost internetne povezave na mobilnih omrežjih v letu 2018 in simulirali uporabo mobilne naprave. Kar se tiče grafik domača stran vključuje 5 grafik prikazanih na način vrtiljaka, stran s seznamom člankov pa 50 grafik - po ena grafika za vsak članek. Kot lahko razberemo iz podatkov na sliki 5 je povprečni čas nalaganja domače strani spletne platforme ob prisotnosti OptimusIMG vtičnika 1215 ms, povprečni čas nalaganja strani s seznamom člankov spletne platforme ob prisotnosti OptimusIMG vtičnika pa 3385 ms. Lahko rečemo, da je čas nalaganja strani s seznamom člankov višji od domače strani predvsem na račun izvajanja kode na strežniku, ki je očitno bolj potratna. Na sliki 6 vidimo, da se je povprečen čas nalaganja domače strani brez uporabe OptimusIMG vtičnika dvignil iz 1215 ms na 2087 ms, strani s seznamom člankov pa iz 3385 ms na 9759 ms. Slika 5: Čas nalaganja spletne strani ob prisotnosti OptimusIMG vtičnika Slika 6: Čas nalaganja spletne strani brez prisotnosti OptimusIMG vtičnika 4 Zaključki Glede na dobljene rezultate in evalvacijo uporabnosti izdelanega odprtokodnega JS vtičnika podajamo naslednje zaključke. Uporaba izdelanega vtičnika lahko močno skrajša čas nalaganja spletnih platform. Izdelan vtičnik je možno uporabiti v vseh projektih, ne glede na tehnološki profil samega projekta. Uporaba algoritmov je zelo hitra in enostavna in zahteva minimalen napor s strani uporabnikov - v osnovi to pomeni en sam klic funkcije ki sproži zahtevan algoritem, in bodisi dodajanje potrebnih atributov na slikovne HTML elemente, bodisi podajanje opcijske konfiguracije ob klicu funkcije. Z gotovostjo lahko trdimo, da se tako absolutni kot tudi relativni prihranki ob uporabi našega vtičnika večajo z naraščajočim številom grafik uporabljenih na spletni strani. 238 Na podlagi rezultatov je uporaba JS vtičnika predvsem priporočljiva za projekte, ki vključujejo veliko število grafik. V vsakemu primeru pa tudi na projektih z majhnim številom grafik ne škodi, če je vtičnik dodan na spletno platformo - še posebej, če je združen v isto datoteko, kot preostala JS koda spletne platforme, kar je tudi priporočen način dodajanja kateregakoli JS vtičnika na spletno stran. Literatura [1] W.B. Pennebaker, J.L. Mitchell: JPEG: Still Image Data Compression Standard. Springer Science & Business Media; 1992. 638 str. [2] C. Coyier: filter | CSS-Tricks [Internet]. CSS-Tricks, https://css-tricks.com/almanac/properties/f/filter/ [3] HTMLPictureElement, MDN Web Docs, https://developer.mozilla.org/enUS/docs/Web/API/HTMLPictureElement [4] The Image Embed element. MDN Web Docs, https://developer.mozilla.org/enUS/docs/Web/HTML/Element/img [5] HTML picture tag, https://www.w3schools.com/tags/tag_picture.asp [6] WebStorm: The Smartest JavaScript IDE by JetBrains, JetBrains, https://www.jetbrains.com/webstorm/ [7] Git, https://git-scm.com/ [8] lukaVarga. lukaVarga/OptimusIMG, https://github.com/lukaVarga/OptimusIMG [9] npm: optimusimg, https://www.npmjs.com/package/optimusimg [10] Travis CI - Test and Deploy Your Code with Confidence, https://travis-ci.org/lukaVarga/OptimusIMG [11] @codecov. Code coverage done right, Codecov, https://codecov.io [12] semantic-release. semantic-release/semantic-release, GitHub, https://github.com/semantic%20release/semantic-release [13] TypeScript JavaScript that scales, https://www.typescriptlang.org/ [14] webpack, https://webpack.js.org/ [15] Jest, Delightful JavaScript Testing, https://jestjs.io/index.html [16] kulshekhar. kulshekhar/ts-jest, https://github.com/kulshekhar/ts-jest [17] oliver-moran. oliver-moran/jimp, https://github.com/oliver-moran/jimp [18] moxystudio. moxystudio/node-promptly, GitHub, https://github.com/moxystudio/node-promptly [19] isaacs. isaacs/rimraf, GitHub, https://github.com/isaacs/rimraf [20] TSLint, https://palantir.github.io/tslint/ [21] npm, https://www.npmjs.com/ Povečanje varnosti mobilne aplikacije v javnem potniškem prometu Marko Avberšek 1, Katja Podrzavnik 1, Amor Chowdhury 1,2 2 1 Margento R&D d.o.o., Turnerjeva ulica 17, 2000 Maribor, Slovenija Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko, Smetanova 17, 2000 Maribor E-pošta: marko.avbersek@margento.com Safety increase of the mobile application for the public passenger transport Security is one of the most important topics in today's development of mobile applications that manage sensitive personal data and financial instruments. Application security must be multi-layered if it is to be successful. When designing the security of the entire system, the mobile application is one of the most vulnerable elements, therefore a high-quality integrated security concept is required from the application's design itself on the phone, to the transfer of data between the application and the backend system, and also the data communication to the terminal equipment in case the applications support it. 1 Uvod Varnost je ena najpomembnejših tem v današnjem razvoju mobilnih aplikacij, ki upravljajo z občutljivimi osebnimi podatki ter finančnimi instrumenti. Varnost aplikacij mora biti večplastna, če želimo da je uspešna. Pri načrtovanju varnosti celotnega sistema je mobilna aplikacija eden bolj ranljivih elementov, zato je potrebna kvalitetna zasnova celovite varnosti od same zasnove aplikacije na telefonu, do prenosa podatkov med aplikacijo in zalednim sistemom in tudi pošiljanje podatkov do terminalske opreme v primeru, da aplikacije to podpirajo. Poleg ustaljenega medija uporabnikov, brezstične kartice, se je s konstantnim razvojem aplikacij za mobilne naprave, ki so uporabnikom v pomoč na vsakem koraku, pridružila tudi mobilna aplikacija Urbana za mobilne naprave z iOS in Android operacijskim sistemom. Mobilna aplikacija, ki je po svoji osnovni namenskosti identična brezstični kartici ponuja uporabnikom še vrsto različnih, dodatnih servisov, kot npr. pregled nad voznimi redi, načrtovanje poti, vpogled v sheme prevoznikov, polnjenje mobilne kartice - aplikacije z dobroimetjem, plačevanje parkirnine na javnih parkiriščih, pregled izposoje koles, zasedenosti parkirnih mest v garažnih hišah itd [5]. Sistem Enotne Mestne kartice (EMK) Urbana omogoča izvajanje elektronskih transakcij, kot je plačevanje produktov z elektronsko denarnico ali shranjevanje podatkov o kupljenih produktih in ustrezno preverjanje uporabe teh produktov - validiranje. Celoten sistem EMK je zasnovan na podlagi naslednjih zahtev: centraliziran nadzor nad delovanjem sistema, centraliziran nadzor nad izvedenimi transakcijami, ERK'2019, Portorož, 239-242 239 varen prenos podatkov (enkripcija), avtomatsko ugotavljanje nepravilnosti v delovanju sistema ali zlorab, delovanje v različnih načinih prenosa podatkov, kot sta brezžični način prenosa preko sistema GPRS, ali žični IP način ter robustno mobilno delovanje v okoljih z nestabilnimi podatkovnimi povezavami (npr. GPRS). Namen članka je predstavitev vpeljave mobilne aplikacije v obstoječ ekosistem s poudarkom na ohranjanju integritete sistema in sistemske varnosti. Za boljše razumevanje rešitve in lažji pregled je v drugem poglavju podana predstavitev sistema EMK Urbana in specifičnega transakcijskega delovanja. V tretjem poglavju sta na kratko predstavljeni rešitvi mobilnih aplikacij Urbana za operacijska sistema iOS in Android. Jedro članka predstavlja četrto poglavje, kjer so podrobneje prikazani ukrepi in mehanizmi za zaščito mobilne aplikacije Urbana ter varnostni vidiki razvoja mobilnih aplikacij in metode za preprečevanje zlorab v transakcijskih sistemih. Zaključna razmišljanja in ugotovitve so strnjena v zaključku. 2 EMK sistem Urbana Celotni sistem EMK je zasnovan tako, da se EMK transakcije izvajajo sproti na terminalih – generirajo se z brez-kontaktnimi karticami ali z mobilnimi telefoni. Terminali določen čas hranijo podatke o vseh opravljenih transakcijah, nato te podatke v paketu pošljejo na centralni oz. zaledni del sistema EMK, kjer se izvede procesiranje transakcij. V sistemu EMK obstaja več tipov terminalov [2] in prav tako obstaja več tipov EMK transakcij, kot na primer: nakup vozovnice, polnjenje denarnice, odvzem zneska, aktivacija vozovnice, validacija vozovnice, plačilo parkirišča, mobilno polnjenje denarnice, mobilna vozovnica ipd. Najbolj splošno pa lahko razdelimo transakcije v dva tipa: online in offline transakcije [2, 4]. Online transakcije so tiste, kjer se preverjanje izvaja na strani procesnega centra sproti oz. sočasno z izvajanjem transakcije, praviloma gre tu za transakcije, izvedene z mobilnim telefonom. Offline transakcije pa so transakcije, kjer v trenutku, ko se transakcija zgodi, ni direktne povezave s procesnim centrom in se kompletno preverjanje, ki je predpogoj za uspešno izvedbo transakcije, zgodi na relaciji kartica – terminal. Šele naknadno, ko je transakcija že izvedena, se podatki o transakciji pošljejo v procesni center, za dokončno procesiranje. Zaradi offline načina delovanja lahko prihajajo transakcije, ki so bile izvedene s posamezno kartico na center v nepravem vrstnem redu glede na čas izvedbe. Časovni potek izvedbe EMK transakcij in vrstni red prihoda EMK transakcij v bazo nista sinhrona. Zakasnitev, s katero transakcije prihajajo v center je v veliki večini primerov minimalna in znaša maksimalno nekaj sekund do minute [4]. Lahko pa se v določenih primerih zgodi, da transakcije zamujajo bistveno več, lahko tudi nekaj ur ali celo nekaj dni. Takšne ekstremne zakasnitve so redke, vendar se dogajajo. Najpogostejši razlogi za njihov nastanek so okvara terminala (lahko tudi samo na GPRS ali antenskem sklopu), neaktiven terminal (npr. avtobus na servisu) ali poškodbe napeljave ali GPRS antene v avtobusu (ko je onemogočena komunikacija s centrom). Pri izvajanju EMK transakcije na terminalu lahko pride do prekinitve komunikacije med kartico in terminalom. V tem primeru terminal opozori uporabnika naj ponovno prisloni kartico. Če uporabnik upošteva navodila in kartico ponovno prisloni k terminalu, terminal preveri in dokonča nepreverjeno transakcijo, kar pomeni, da se na kartico zapišejo vsi potrebni podatki. Ker je zaključevanje nepreverjenih transakcij vezano na prejem naslednje transakcije narejene s to kartico, se lahko pri zaključevanju teh transakcij pojavljajo časovni zamiki. Sistem EMK Urbana je komercialen sistem, pri čemer ima podatkovno finančni del seveda veliko težo. Znotraj sistema se finančne poravnave izvajajo za različna obdobja in različne produkte, ki so odvisna od dogovorov med ponudniki storitev in partnerji, ki v poslovnem procesu sodelujejo. Dolžina obdobja je za različne partnerje različna, od enega dneva pa tudi do nekaj mesecev, z nekaj vmesnimi stopnjami (en teden, 10 dni, dva tedna, 15 dni, en mesec, …). Tudi pri produktih se lahko pojavljajo relativno kompleksne delitve, tako npr. poravnava se opravi na osnovi realizacije celotne linije, oz. samo dela linije ali zgolj opravljenih prevozov z določenim tipom vozovnice med različnimi deležniki v procesu. V sled kompleksnosti poravnalnih postopkov je predpogoj za njihovo kvalitetno izvedbo, točnost, zanesljivost in kredibilnost zajetih transakcij v EMK sistemu. 2.1 Skladnost z GDPR Skrb za varstvo osebnih podatkov je ena ključnih postavk sistema EMK Urbana. Že od vsega začetka je sistem koncipiran tako, da zajema minimalno potrebno količino osebnih podatkov ter hkrati izpolnjuje maksimalne standarde zaščite slednjih. Razširitev sistema EMK Urbana z vpeljavo novega medija – mobilna aplikacija v polni meri upošteva in izvršuje pravila o varstvu osebnih podatkov pri njihovi obdelavi in pravila o prostem pretoku osebnih podatkov v EU. Pod obdelavo uvršča vsa dejanja v zvezi z 240 osebnimi podatki, torej zbiranje, hranjenje, urejanje, spreminjanje, razkritje, izbris, uničenje, prenos osebnih podatkov itd. Med osebne podatke pa po uredbi spadajo vsi podatki, ki se nanašajo na določljivega posameznika. Sistem EMK Urbana zagotavlja psevdonimizacijo, kar pomeni da je obdelava osebnih podatkov na način, da podatkov, ki so rezultat takšne obdelave, brez dodatnih informacij ni več možno pripisati posamezniku. Dodatne informacije se hranijo ločeno, s tehničnimi in organizacijskimi ukrepi pa se omejuje dostop do njih. Poleg pvsedonimizacije je zagotovljena tudi popolna anonimizacija osebnih podatkov, pomeni, da so vpeljani postopki pretvorbe osebnih podatkov v ” anonimizirane podatke“, ki se jih kljub dodatnim informacijam ne da pripisati posamezniku. 3 Mobilna aplikacija Urbana Uvedba mobilne aplikacije v sistem EMK Urbana je zahtevala določene nadgradnje oz. prilagoditve zalednega sistema. Razlog temu je preprosto dejstvo, da vpeljava novega medija ni mogoča zgolj z zalednimi orodji, ki omogočajo manipulacijo z brezstičnimi karticami ampak je slednje bilo potrebno prilagoditi specifikam medija oz. mobilne aplikacije. Poleg naštetega, pa so pri nadgradnji bile upoštevane tudi prednosti interakcije med uporabnikom in aplikacijo, ki jih omogoča mobilna aplikacija za razliko od brezstične kartice. V prvi fazi je sistem EMK Urbana bil prilagojen za potrebe mobilne aplikacije na operacijskem sistemu Android, kasneje pa je bil posodobljen še za potrebe operacijskega sistema iOS, kjer je od nedavnega Urbana tudi na voljo. Pri načrtovanju aplikacije so bile upoštevane tehnične specifike obeh operacijskih sistemov, varnostne zahteve sistema EMK, dane omejitve (dostop do NFC HCE je pri iOS še zmerom onemogočen), skladnost delovanja z zakonskimi predpisi in seveda uporabniška prijaznost oz. enostavnost uporabe [1]. Obe aplikaciji podpirata naslednje funkcionalnosti: popolnoma nadomeščata Urbana kartico in omogočata koriščenje dobroimetja in uporabo vozovnic v sistemu Urbana, prikazujeta stanje denarnice in aktivne produkte, vozovnice (skupaj s časom veljave) ter zgodovino uporabe. Prav tako prikazujeta informacije sistema Urbana (linije, postaje, bicikelj, parkomati, Urbanomati, zemljevidi, sheme), polnjenje dobroimetja, vozni redi in drugo. Mobilni aplikaciji sta bili razviti z uradnima razvojnima orodjema, Android studio za okolje Android in Xcode za okolje iOS. 3.1 Pregled računa Na osrednjem zaslonu mobilne aplikacije so zbrani najbolj relevantni podatki in bližnjice za uporabnika. Zaslon se vedno odpre pri zagonu aplikacije, seveda če je uporabnik že šel skozi namestitveni postopek in sta naprava in aplikacija vpisani v sistem. V pregledu računa lahko uporabniki pregledujejo stanje dobroimetja ter ostale identifikacijske podatke aplikacije. Polnjenje računa aplikacije in nakup produktov je možno kot za običajne brezstične kartice oz. je omogočeno na daljavo ob uporabi določenih plačilnih shem (VALÚ-Moneta) do najvišjega zneska 50 €. Za vsak ID kartice se vodi zgodovina podatkov identično kot za izdane fizične brezstične kartice, vseh nakupov ter polnitev računa. Aplikaciji ponujata prijazno ergonomsko oblikovano uporabniška izkušnjo interakcije sodobnega uporabnika s sistemom EMK Urbana in je na voljo v slovenskem ter angleškem jeziku, kar lahko uporabniki spreminjajo v nastavitvah. Uporabniški vmesnik aplikacije (ang. front-end). je statičen in se polni s podatki, ko uporabnik uporablja mobilno aplikacijo in si želi ogledati določene podatke, v tem primeru aplikacija pošlje strežniku določeno zahtevo, slednji pa vrne pripravljene vsebine, ki jih aplikacija prikaže deloma ali v celoti. Slika 2: E-parking Slika 1: Glavna stran 3.2 Urbana E-parking Poleg popolne funkcionalne substitucije brezstične kartice je obeh aplikacijah dodana funkcionalnost Eparking, ki uporabniku omogoča, da plača parkirnino na daljavo preko mobilne aplikacije. Za parkiranje mora uporabnik nastaviti tri parametre: registrsko tablico, območje in čas trajanja parkirnine. Uporabnikom je omogočeno urejanje seznama registrskih tablic za vozila. Registrske številke lahko dodajajo, urejajo, brišejo ali spreminjajo pozicijo v seznamu. Nadgrajena mobilna aplikacija prikazuje aktivno parkirnino, ki je vidna v seznamu aktivnih produktov mobilne kartice ter na domačem zaslonu. Dodan je tudi opomnik, ki omogoča prijazno manipulacijo podaljšanja parkirnine na daljavo. 3.3 Interakcija z zalednim sistemom Obnašanje katerega koli vira, mobilne aplikacije ali spletne strani, temelji na interakciji med odjemnikom (mobilna aplikacija, terminalska aplikacija) in strežnikom. Vse datoteke spletnega projekta gostujejo na oddaljenem strežniku, ki se nahaja v ustrezno varovanem strežniškem okolju. Vse, kar se nahaja in deluje na strežniku - koda, skripte, SQL in druge datoteke – sodi v zaledni del. 241 Komunikacija med mobilno aplikacijo in zalednim sistemom uporablja JSON notacijo in je kriptirana. Ta zapakira objekte v zaporedje zlogov, ki jih razumeta tako aplikacija, kakor tudi zaledni sistem. Za povezavo med zalednim sistemom in aplikacijo se uporablja asimetrična kriptografija za generiranje sejnega ključa, ki se uporablja v nadaljnji komunikaciji z simetrično kriptografijo. Pri simetrični kriptografiji gre za to, da se tako za šifriranje, kot dešifriranje uporablja enak ključ. Dodatna zaščita sistema je v blokadi virtualnih kartic torej mobilnih aplikacij, ki so lahko v sistemu bodisi avtomatske ali pa ročne s strani administratorjev sistema. Avtomatska blokada se vrši na podlagi avtomatske detekcije anomalij transakcij. Detekcija deluje tako, da se ob vsaki transakciji preveri čas zadnje uspešne transakcije, ki je shranjen poleg stanja dobroimetja v aplikaciji. V primeru, da se zgodi hipotetična zloraba s podvajanjem denarnice, je čas v dveh ločenih transakcijah enak, in takšna virtualna kartica-aplikacija je označena za sumljivo. Prav tako pa se permanentno beležijo polnitve in poraba dobroimetja izdanih virtualnih kartic - mobilnih aplikacij. V določenem časovnem terminu se mora stanje polnitev in porabe ujemati, drugače se aplikacija označi za sumljivo in po pregledu administratorja se lahko takšna aplikacija doda na črno listo ter se s tem onemogoči nadaljnja uporaba. Črna lista identifikatorjev aplikacij se distribuira in kontinuirano obnavlja znotraj celotne terminalske infrastrukture EMK sistema Urbana, ki takšno aplikacijo ob prvi naslednji uporabi blokirajo in preprečijo uporabo v brezpovezavnem načinu. 3.4 NFC interakcija V mobilni napravi je NFC modul razdeljen na različne komponente. Antena je vgrajena v ohišje naprave ali njeno baterijo (proizvajalec Samsung). NFC krmilnik je običajno ločen mikročip, ki skrbi za komunikacijo in je vgrajen na logično vezje naprave. Varna shramba je lahko vgrajena v krmilnik, ali je ločena (SIM Subscriber Identity Module, identifikacijski modul naročnika; MicroSD - Micro Secure Digital) [7]. Ker imajo mobilne naprave svoje napajanje, je lahko tudi aktivna NFC naprava. Tako lahko beremo značke, komuniciramo z drugo mobilno napravo (P2P) ali emuliramo NFC kartico. Najpreprostejši način NFC komunikacije je branje in pisanje NFC značk. Tak način komunikacije podpira večina NFC telefonov in je dobro standardiziran [3]. NFC značke lahko vsebujejo različne količine informacij in drugih funkcionalnosti. Prednosti uporabe NFC značk tehnologije je enostavna izvedba, hkrati pa je podpora delovanja mogoča skoraj v vseh mobilnih napravah različnih proizvajalcev. Transakcije, ki potekajo preko NFC tehnologije so počasnejše in manj zanesljive. Komunikacija ni identična komunikaciji terminal – brezstična kartica, zato je za implementacijo dotične komunikacije potrebna tudi posebna prilagoditev terminalov, da se omogoči delovanje. Podpora v nekaterih napravah pa je lahko celo problematična, saj se vsi proizvajalci ne držijo standardov. Kljub univerzalnosti rešitve glede na nabor mobilnih naprav se je rešitev izkazala kot neustrezna in je namesto nje uporabljena rešitev HCE (Hosted Card Emulation). Emulacija NFC kartice bolj znana kot HCE omogoča izvajanje transakcij, kot bi imeli dejansko brezkontaktno kartico. Slaba stran je omejitev dostopa do NFC HCE za iOS, zaradi česar je interakcija zadnjega koraka izvedena preko zvokovnega kanala mobilne naprave. 4 Varnost aplikacije »Urbana« Današnje mobilne naprave so pravi računalniki v malem, saj imajo zmogljivo strojno opremo in hkrati kompleksne operacijske sisteme. V njih ni težko najti raznih pomanjkljivosti, ki jih je mogoče izkoristiti za poseg v varnost podatkov na napravi. Zato je pomembno, da se ob razvoju mobilnih aplikacij razvijalci zavedajo teh pomanjkljivosti (da jih je možno čim bolj obvladovati) [6]. V razvijanju programske opreme želimo z obfuskacijo namerno ustvariti izvorno ali strojno kodo, ki jo ljudje težko razumemo. Z izvedbo obfuskacije lahko na izvorni kodi preprečimo kopiranje kode v primeru obratnega inženiringa. Obfuskacija se uporablja za prekritje namena in delovanja aplikacije ter skrivanje logike. Glavna prednost obfuskacije je zaščita poslovnih skrivnosti, ki jih vsebuje programska oprema, saj je obratni inženiring v tem primeru težko izvedljiv. Hkrati se zaščiti mehanizem licenciranja in prepreči neavtoriziran dostop. Podatki na napravi, ki so pomembni za transakcije, so shranjeni v t.i. varni shrambi. To je datoteka v mapi same aplikacije, ki je šifrirana s pomočjo ključev varne shrambe. Ti ključi so različni za vsako napravo in se generirajo s pomočjo id-ja naprave tako, da te datoteke ni mogoče enostavno kopirati na novo napravo. [3, 4] 242 Dodatna zaščita pred zlorabami je zapis časa zadnje spremembe varne shrambe, ki je zapisana, tako v varni shrambi, kot tudi v dodatni datoteki izven mape aplikacije. V primeru, da aplikacija zazna zlorabo, se varna shramba ponastavi in uporabnik ne more več uporabljati aplikacije za NFC transakcije. Prenos podatkov med napravami je vedno varnostno občutljiv, saj ni popolnega nadzora nad potjo, kjer se podatki prenašajo. Najbolj učinkovita rešitev zaščite prenosa podatkov je šifriranje, ki je lahko asimetrično ali simetrično. Za zaščito NFC komunikacije se uporablja simetrično šifriranje, kjer ima vsaka naprava svoj unikatni ključ, ki se pridobi z glavnega ključa in identifikatorjem naprave, v procesu diverzifikacije na zalednem sistemu. Ta ključ se nadalje v postopku registracije naprave prenese iz zalednega sistema in je shranjen v varni shrambi naprave. Shranjen ključ je uporabljen v postopku ustvarjanja varne seje na začetku vsake transakcije. [4] 5 Sklep Vse večja priljubljenost in razširjenost mobilnih aplikacij prinaša razvijalcem aplikacij tudi dodatne zahteve po zagotavljanju varnosti v aplikacijah in zalednih sistemih, ki jih aplikacije uporabljajo. Ker so moderni mobilni operacijski sistemi zelo razširjeni in odprti za razvijalce, aplikacije operirajo s sredstvi iz realnega sveta, so se pojavili tudi zlonamerni »igralci«, ki poskušajo zlorabiti sisteme. Brezhibno varnost s programsko opremo v odprtih sistemih kot sta Android in delno tudi iOS je nemogoče zagotoviti. Zato je potrebno omogočiti dodatne varnostne mehanizme kot so strojni varnostni elementi in preverjanja v zalednih sistemih, ki otežijo in detektirajo zlorabe mobilnih aplikacij. Mehanizmi morajo biti tako avtomatski kot ročni, da se lahko zaznajo tudi morebitne nove ranljivosti s pomočjo statistične obdelave transakcijskih podatkov. Literatura [1] Breznik A., Avberšek M., Podbreznik P., Chowdhury A., Razvoj izboljšane uporabniške izkušnje in dodatnih funkcionalnosti v aplikaciji Urbana, ERK 2016 [2] Rožič B., Svečko J., Mezgec Z. in Chowdhury A., Koncept Margento sistema brezkontaktne kartice, ERK 2009 [3] Avberšek M., Informacijske rešitve brezkontaktnega plačevanja z mobilnimi napravami, diplomsko delo UM FERI, 2016 [4] Rulić P., Kotnik B., Klampfer S., Chowdhury A., Touchand-Go mobile payment system. Journal of transportation technologies, ISSN 2160-0481, jan. 2017 [5] Svečko J., Rožič B., Chowdhury A., Razširitev funkcionalnosti sistema Enotne Mestne Kartice ERK 2011 [6] Rumež A., Vlaovič B., Varnost mobilnih naprav z operacijskim sistemom Android, ERK 2017 [7] Lepojević B., Pavlović B., Radulović A., Implementing NFC service security – SE VS TEE VS HCE, Conference: SYMORG 2014 Algorithm design in Python for cybersecurity Kristijan Kuk1, Petar Milić2, Petar Spalević2, Milan Gocić3 1 University of Criminalistic and Police Studies, Department of Computer Science 2 University of Priština – Kosovska Mitrovica, Faculty of Technical Sciences 3 University of Niš, Faculty of Civil Engineering and Architecture E-mail: petar.milic@pr.ac.rs Abstract. Python is one of the most sought-after programming languages for cybersecurity due to the extensive library of powerful packages that support rapid application development, clean syntax code and modular design as well as automatic memory management and dynamic typing capability. A good understanding of algorithm design is very important because when a flaws is found out in the written code, then a step back to the design phase is necessary and redesign of the algorithm is an obvious need. In this paper, we describe how Python can be used to develop algorithms and implement his modules to be applicable in the cybersecurity domain. Using suggested approaches in algorithm design for cybersecurity, their existing capabilities are increased for tweaking, customizing, or outright developing of own tools. 1 Introduction Programming is one of the most important part of the cybersecurity. Today, the need for cybersecurity professionals is more than obvious. Cybersecurity is not just about using a customised operating system with hundreds of tools to find vulnerabilities — it is something more than that. Programming skills are always welcome if you want to be a top-notch you have to think like a hacker and look for all the possible ways a hacker could exploit any system, and this includes development too. The field of cybersecurity is huge and cannot be constrained into a number of predefined fundamentals of forensic investigators, ethical hackers, security analysts etc. Programming knowledge proves essential for analyzing software for vulnerabilities, identifying malicious software, and other tasks required for cybersecurity analysts. What to draw from this advice is that programming knowledge gives you an edge over other security professionals without those skills. Cybersecurity professionals might use their coding skills to write tools that automate certain security tasks. 2 Areas of application of algorithms Computer science is the study of problems, problemsolving, and the solutions that come out from the problem-solving process. Given a problem, a computer scientist’s goal is to develop an algorithm, a step-bystep list of instructions for solving any instance of the problem that might arise. Algorithms are finite processes that if followed will solve the problem. Algorithms should be taught using the native language ERK'2019, Portorož, 243-246 243 of the students. Before the algorithmic implementation, it is necessary ti choose the programming language. The police apply statistical or machine learning algorithms to data from police records on time, location, and nature of past crimes, to look for potential patterns in order to find possible occurrence of crime in the future. Predictive policing does not replace conventional policing methods (e.g. problem-oriented policing, intelligence-led policing or hotspot policing) but enhances these traditional practices by applying advanced statistical models and algorithms for National Institute of Justice (NIJ) in 2014. Perry (2013) claims that predictive algorithms [1] can be used to identify members of criminal groups that show an elevated risk of a violence outbreak between them [2]. Malicious pattern detection engine is a real life example of searching and sorting algorithms [3]. SQL Injection is perhaps one of the most common application layer attacks. In the study [4] by Liban and Hilles in 2014, a SQL-injection vulnerability scanning tool named MYSQL Injector was developed, for the purposes of automatic creation of SQL-injection attacks using time-based attack with Inference Binary Search Algorithm. Denial of Service (DoS) is a very important problem that needs to be dealt seriously in security domain. Khan and Traore propose a regression analysis based model [5] that can prevent algorithmic complexity attacks and they demonstrate their model on quick-sort algorithm in the case of DoS attacks. 3 Using traditional data structures and algorithms as part of the AI systems for cybersecurity Strategy to learn an algorithm contents follows these steps: write pseudocode, implement it with any programming language following pseudocode, test correctness by checking output with different inputs, and analyse complexity. Development and usage of data structures and algorithms represents an initial step in forensic investigation which further reveals holes in cyber space pointing out which places in the code and in the infrastructure need to be fixed [6]. Keeping in mind that attackers have a lot of tools to make attacks more and more sophisticated. This is where Python comes to the fore with its ease of coding which is mostly like plain English, and that most activities can be automated using Python scripts. In following paragraphs we stress out which data structures and algorithms can be implemented in Python in the area of cybersecurity [7]. 3.1 3.1.1 Table 2. The pseudocode for Binary search algorithm Algorithms Quick sort Quick sort is one of the algorithms from the family of sorting algorithms and techniques. Quicksort first chooses a pivot and then partitions the array around this pivot. In the partitioning process, all the elements smaller than the pivot are put on the one side of the pivot and all the elements larger than it on the other side. BINARYSEARCH (A, start, end, x) if start <= end middle = floor((start+end)/2) if A[middle]==x return middle if A[middle]>x return BINARYSEARCH (A, start, middle-1, x) if A[middle] 1] q∈Np (7) The disparity map is determined by using local stereo methods in a way that for each pixel p the disparity d, which is a minimum cost, must be calculated. The process can be seen on Figure 1. The DispNet convolutional neural network was chosen for this work because it does not have additional layers that were specifically developed for stereo vision problems and could add a better performance to the network [4]. Table 1 presents the DispNet architecture. 3 4 DispNet neural network The DispNet was created by Mayer et al. and is a classic convolutional neural network without any additional filters in its architecture [6]. For this research, a pretrained DispNet neural network was used. It was trained and finetuned on 400 stereo pairs with ground truth disparities 273 KITTI Stereo Evaluation 2015 data set This data set consists of 200 training scenes and 200 test scenes with 4 colour images per scene saved in a lossless PNG format. The ground truth has been established with a semi-automatic process. The evaluation framework written in MATLAB comes with a development kit Figure 1: Flowchart of SGM [1]. that computes the percentage of faulty pixels averaged over ground truth pixels. A pixel is correctly estimated if the disparity of flow end-point error is below 3 pixels or 5% of its true value [7]. Figure 2 depicts sample stereo images with ground truth disparity from this data set. The DispNet convolutional neural network was implemented using fine-tuned weights that are available on the researchers GitHub channel [15][16]. Testing was conducted on the first 100 images of the KITTI data set. Errors by disparity estimation were calculated for each test image, whereat the ground truth and the protocol from KITTI data set were employed. Finally, the obtained errors were averaged over entire data set. 6 Figure 2: KITTI data set stereo images and lidar created disparity map. 5 Testing methodology The performance of algorithm can be assessed with respect to the execution time and accuracy in general. However, both algorithms were compared just with respect to the disparity map estimation accuracy in this paper. The performance was evaluated using a custom created script in MATLAB which used the KITTI evaluation framework as its base. SGM was implemented using the OpenCV Stereo SGBM method. The method was implemented with the possibility to change the block size. It should be stressed that with block size of 1 this method performs equally as the classic SGM algorithm described in Section 2 [14]. Other parameters of SGM algorithm are gathered in Table 2. The results are presented in the form of a cumulative error for each image and as the average error over entire KITTI testing data set. Figure 3 depicts qualitative results for the sample images, namely the estimated disparity, the ground truth disparity, and the calculated error for SGM method (left column) and DispNet (right column). It could be observed that the ground truth images are in different colours. The reason is differences in the maximum disparity that can be computed by specific disparity estimation method. Results are presented in Figure 4 in the form of cumulative errors graphs for each test image from KITTI data set and for both disparity estimation method. Values are in percentages. For example, the value of 35% means that the disparity was wrongly determined (i.e., calculated disparity for a pixel differs from the ground truth for more than 3 pixels) for 35% of the test image pixels. It can be easily seen the better performance of DispNet compared to the SGM algorithm. Obtained results are within expected results and as reported on benchmark pages of the KITTI data set [17]. The average error for the SGM algorithm on the complete KITTI test data set is 21.5% (σ = 7.7) and 6.1% (σ = 3.4) for the DispNet. 7 Conclusion Within this paper, a simple experiment comparing SGM and DispNet methods demonstrated that neural networks possess exceptional strength for disparity map estimation even without additional image processing and transformations. The obtained research results show that neural networks have progressed over the last few years and gained an advantage over classic methods for the disparity estimation. The KITTI data set was an excellent choice for benchmarking, because it consists of real images with the addition of ground truth. Results on the KITTI data set pointed out that the DispNet neural network estimate disparity accurately for 15% more image pixels on average than the classic SGM method. In addition, the standard deviation is lower as well which means that the disparity estimation using DispNet is more consistent. Table 2: SGM algorithm parameters. Parameter pre filter cap sad window size p1 p2 min disparity num disparities uniqueness ratio speckle window size speckle range disp max diff full dp Results Value 63 3 3*3*4 3*3*32 0 128 10 100 32 1 1 274 Figure 3: Qualitative results for the sample testing stereo image. Results for the SGM are in the left column, while the DispNet are in the right column. The topmost row depicts estimated disparity maps, in the middle row is a ground truth, while the bottommost row presents the computed error between estimation and ground truth. Figure 4: Cumulative errors (in percent) for each testing image from KITTI data set for both disparity estimation methods (SGM and DispNet). References [1] H. Hirschmuller, “Stereo Processing by Semiglobal Matching and Mutual Information,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 30, no. 2, pp. 328–341, Feb. 2008. [2] D. Scharstein, R. Szeliski, and R. Zabih, “A taxonomy and evaluation of dense two-frame stereo correspondence algorithms,” in Proceedings IEEE Workshop on Stereo and Multi-Baseline Vision (SMBV 2001), pp. 131–140. [3] C. C. Aggarwal, Neural Networks and Deep Learning. Springer, 2018. [4] F. Zhang, V. Prisacariu, R. Yang, and P. H. S. Torr, “GA-Net: Guided Aggregation Net for End-to-end Stereo Matching,” CoRR, vol. 1904.06587, 2019. [5] J. Žbontar and Y. Le Cun, “Computing the stereo matching cost with a convolutional neural network,” in Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2015, vol. 07-12-June, pp. 1592–1599. [6] N. Mayer et al., “A Large Dataset to Train Convolutional Networks for Disparity, Optical Flow, and Scene Flow Es- 275 timation,” in Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2016, vol. 2016-Decem, pp. 4040–4048. [7] M. Menze and A. Geiger, “Object scene flow for autonomous vehicles,” in Proceedings of the CVPR, 2015, vol. 07-12-June, pp. 3061–3070. [8] M. Menze, C. Heipke, and A. Geiger, “Object Scene Flow,” ISPRS, vol. 140, pp. 60–76, 2018. [9] P. Viola and W. M. Wells, “Alignment by Maximization of Mutual Information,” Int. J. Comput. Vis., vol. 24, no. 2, pp. 137–154, 1997. [10] C. Tomasi and S. Birchfield, “Depth discontinuities by pixel-to-pixel stereo,” Int. J. Comput. Vis., vol. 35, no. 3, pp. 269–293, 1998. [11] J. Kim, V. Kolmogorov, and R. Zabih, “Visual Correspondence Using Energy Minimization and Mutual Information,” Proc. Ninth IEEE Int. Conf. Comput. Vis., vol. 2, pp. 1033–, 2003. [12] A. Geiger, P. Lenz, and R. Urtasun, “Are we ready for autonomous driving? the KITTI vision benchmark suite,” in Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2012, pp. 3354–3361. [13] D. P. Kingma and J. Ba, “Adam: A Method for Stochastic Optimization,” Proc. 3rd Int. Conf. Learn. Represent., pp. 1–15, Dec. 2014. [14] “OpenCV documentation: StereoSGBM Class Reference.” [Online]. Available: https://docs.opencv.org/3.4.1/d2/d85/classcv 1 1StereoSGBM.html. [Accessed: 11-Jun-2019]. [15] A. Tonioni, “Real-time self-adaptive deep stereo GitHub.” [Online]. Available: https://github.com/CVLABUnibo/Real-time-self-adaptive-deep-stereo. [16] A. Tonioni, F. Tosi, M. Poggi, S. Mattoccia, and L. Di Stefano, “Real-time self-adaptive deep stereo,” CoRR, vol. 1810.05424, Oct. 2018. [17] “KITTI Stereo Evaluation 2015.” [Online]. Available: http://www.cvlibs.net/datasets/kitti/eval scene flow.php? benchmark=stereo. [Accessed: 13-Jun-2019]. SloTex odprtokodno ogrodje za procesiranje slovenskega naravnega jezika Klara Eva Kukovičič1 , Sonja Debevec1 , Mark Juvan2 , Jakob Bernik2 , Aljaž Trebušak3 , Peter Čebašek3 , Simon Dobrišek3 , Tadej Justin4 1 2 Filozofska fakulteta, Aškerčeva cesta 2, 1000 Ljubljana Fakulteta za računalništvo in informatiko, Večna pot 113, 1000 Ljubljana 3 Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana 4 Medius d.o.o, Tehnološki park 21, 1000 Ljubljana E-pošta: tadej.justin@medius.si SloTex - Open Source Framework for Slovenian Natural Language Processing High-tech companies nowadays use language technologies every day. Algorithms are embedded in applications that enable the processing of large amounts of data. There are many open source frameworks on the market that enable the use of language technologies for many languages. Since Slovene has a relatively small number of speakers and consequently lower market relevance, it is often neglected. In Slotex project we developed an open-source language-technology web framework that enables natural language processing for use in enterprise environments. The main goal of the project is not only to develop a reliable web-based system that implements open source frameworks such as OpenNLP and CoreNLP, but also to develop initial language models for Slovenian language. In this paper we present evaluation of the Slovenian Name Entity Recognition tagging for only person tags and compare it to our own implemented solution based on Levenshtein distance and external lexicons. Proposed solution more than doubles true positive entities, but also significantly increases false negatives. 1 Uvod Procesiranje naravnega jezika se dandanes uporablja v že skoraj vsaki spletni aplikaciji, platformi ali v spletnih iskalnikih. Tako skoraj vsak uporabnik spleta nevede uporablja vsaj nekaj algoritmov za procesiranje naravnega jezika. Obsežna zgodovina področja procesiranja naravnega jezika (ang. Natural Language Processing, NLP) je narekovala razvoj različnih programskih orodij in knjižnic, ki omogočajo uporabo najbolj razširjenih operacij in algoritmov. Med najbolj znanimi so Natural Language Toolkit, NLTK [1], TextBlob [2], CoreNLP [3] in OpenNLP [4]. Funkcionalnosti, ki jih v določenem obsegu omogočajo tovrstne knjižnice, so tokenizacija, lematizacija, korenjenje, oblikoskladenjsko označevanje, klasifikacija, izdelava stavčnih dreves, izdelava n-gramov, dostop do korpusov besedil, funkcije za iskanje vzorcev v besedilu, štetje frekvenc besed. Večina navedenih funkcionalnosti je odvisnih od jezika. Če želimo uporabiti orodja in algoritme tudi za slovensko besedilo, je potrebno v večini primerov najprej pridobiti dobro označen korpus slovenskega besedila. Na podlagi označb lahko zgradimo slovensko podporo ali jezikovne modele, ki jih ERK'2019, Portorož, 276-279 276 lahko kasneje uporabimo pri obdelavi poljubnega slovenskega besedila. Programske knjižnice se v raziskovalni skupnosti uporabljajo kot programska ogrodja, ki jih lahko relativno enostavno prilagodimo za specifičen jezik ob predpostavki, da razpolagamo z označenim korpusom. Nobena od zgoraj navedenih programskih knjižnic žal nima neposredno vgrajene podpore za slovenski jezik, zato moramo vsako pred uporabo v slovenščini prilagoditi in dodatno naučiti jezikovne modele za specifično funkcionalnost. Klub temu vseeno obstaja kar nekaj knjižnic, ki so bile razvite v okviru različnih raziskovalnih projektov in so prilagojene izključno za delo v slovenskem jeziku. Ena takih je sistem Obeliks, ki omogoča lematizacijo in označevanje oblikoskladenjskih oznak za slovenska besedila [5]. Nekaj programske opreme s podporo za slovenski jezik pa je ponudil tudi projekt Sporazumevanje v slovenskem jeziku (SSJ). V tem prispevku opisujemo naša prizadevanja pri razvoju odprtokodnega ogrodja za procesiranje naravnega jezika, ki je primarno namenjeno za uporabo v poslovnih okoljih in omogoča uporabniku razvoj lastnih jezikovnih modelov za slovenski jezik. Predstavimo pa tudi razvoj algoritma za označevanje oseb v slovenskem besedilu in uspešnost primerjamo z implementiranim sistemom v ogrodju OpenNLP [4]. Predstavljeni algoritem temelji na podlagi najmanjše razdalje med zunanjim leksikonom imen in Levenshteinovo razdaljo. S tem principom lahko omogočimo tudi v neoznačenem besedilu iskanje imenskih oznak oseb, kar je še posebej uporabno, če jezik, v katerem gradimo bolj napredne modele za označevanje imenskih entitet, nima obsežnega, ročno označenega korpusa. 1.1 SloTex NLP Trenutno je na trgu že več priznanih odprtokodnih ogrodij, ki omogočajo uporabo jezikovnih tehnologij v enem od svetovnih jezikov. Slovenščina je zaradi relativno majhnega števila govorcev in posledično manjše tržne relevantnosti pogosto zapostavljena. Z realizacijo aplikacije in vključitvijo priznanih ogrodij za procesiranje naravnega jezika pa smo tudi za slovenski jezik realizirali jezikovne modele, ki omogočajo njihovo neposredno uporabo za razčlenitev besedil, označevanje besednih vrst in označevanje imenskih entitet. Čeprav pridobljeni rezultati ne presegajo najbolj naprednih sistemov, ki omogočajo procesiranje tudi slovenskega naravnega jezika, je ključen prispevek pri projektu aplikacija, ki jo lahko zlahka uporabimo tudi v poslovnih okoljih in omogoča hitro in enostavno obdelavo podatkov. V okviru projekta “Po kreativni poti do znanja” (PKP), smo sestavili interdisciplinarno skupino šestih študentov/k, dva študenta Fakultete za elektrotehniko v Ljubljani, dva študenta Fakultete za računalništvo in informatiko v Ljubljani in dve študentki Filozofske fakultete v Ljubljani. Ideja projekta je bila primarno udeležene študente in kasneje tudi širšo javnost navdušiti nad uporabo in razvojem aplikacij, povezanih z jezikovnimi tehnologijami. Projekt smo naslovili “Razvoj slovenskih jezikovno tehnoloških rešitev za uporabo v poslovnih informacijskih sistemih” z akronimom SloTex. Cilj projekta je realizirati odprtokodno aplikacijo, ki ima prilagojene funkcije za procesiranje naravnega jezika za slovenščino in je uporabna tudi v poslovnih aplikacijah. V okviru projekta smo zasnovali aplikacijo na podlagi mikrostoritvene arhitekture, ki omogoča enostavno procesiranje podatkov, njihov pregled, učenje novih modelov in njihovo vrednotenje kar preko spletnega brskalnika. Slika 1 prikazuje osnovno zgradbo mikrostoritvene arhitekture. podrobnejše podatke ter podatke o tem, koliko dokumentov je še v čakalni vrsti ter koliko jih je namenjenih za obdelavo. Poslovni uporabniki pričakujejo, da lahko v sistem vnesejo celotne dokumente, kot izhod pa pridobijo označene entite v besedilu z vnaprej podanim šifrantom. Tako smo tudi zasnovali sistem, ki omogoča vnos celotnih dokumentov v obliki (.doc ali .txt), ki jih uporabnik lahko s pomočjo enostavnega programa ali spletnega vmesnika naloži v sistem. Glede na vnaprej določen šifrant zaledna aplikacija označi besedilo in ponudi označeno besedilo uporabiku za prevzem. Uporabnik ima možnost tudi pregledati dodatno analizo, ki nudi pregled pojavnic s pripadajočo besedno vrsto, lemo in označeno entiteto. Omogočeno je tudi ročno urejanje vseh avtomatsko določenih kategorij. Če si uporabnik želi, jih lahko pregleda in ročno uredi oz. popravi. Tako popravljen oz. označen dokument lahko tudi vključi v učno množico in ponovno nauči jezikovni model. S tem lahko sam pripomore k izboljšanju natančnosti avtomatsko označenih kategorij. Sistem tako omogoča gradnjo modelov na obstoječih zbirkah, obenem pa nudi uporabniku izboljšave modelov tudi z lastnimi označenimi dokumenti. Slika 2 prikazuje uporabniški vmesnik za urejanje lastnega besedila. Slika 2: Prikaz urejanje in označevanja dokumentov. Slika 1: Mikrostoritvena arhitektura sistema SloTex NLP. Aplikacijo smo razvili kot prosto dostopno orodje in jo objavili na spletu v treh projektih: “SloTex NLP core”1 , “SloTex NLP web”2 in “SloTex NLP entity”3 . Procesiranje besedila se izvaja neposredno v zaledni komponenti “SloTex NLP core”, ki omogoča procesiranje obsežnejših besedil, ali pa samo stavkov, preko spletnih servisov na podlagi REST priporočil in vmesnega pomnilniškega strežnika Redis. “SloTex NLP entity” pa je komponenta, ki vsebuje ločeno hrambo podatkovnih modelov, ki jih uporablja aplikacija. Spletni uporabniški vmesnik je zajet v projektu SloTex NLP web”, ki združuje različna jezikovna orodja za obdelavo slovenskega jezika. Uporabniški vmesnik sestoji iz dveh delov, in sicer Administracije (Administration) in Učenja (Train). Administracijski del uporabniku omogoča pregled že obdelanih besedilnih dokumentov, označenih entitet in njihove 1 https://github.com/MediusInc/slotex-nlp-core 2 https://github.com/MediusInc/slotex-nlp-web 3 https://github.com/MediusInc/slotex-nlp-entity 277 2 Metodologija označevanja imenskih entite Za doseganje dobrih rezultatov je ključnega pomena obsežna podatkovna baza. Po pregledu že obstoječih orodij za slovenščino, med katerimi so najvidnejši RELDItagger [6] in Obeliks, smo ugotovili, da se za vrednotenje sistemov uporabljajo predvsem besedilni korpusi, ki so bili razviti za potrebe projekta Jezikoslovno označevanje slovenskega jezika (JOS) in Sporazumevanje v slovenskem jeziku (SS). Kot šolski besedilni korpus slovenskega jezika se v zadnjem času uporablja predvsem SSJ500k in Sloleks. Ker smo želeli pridobiti čim bolj primerljive podatke, smo se odločili, da za vrednotenje razvitega algoritma označevanja osebnih imenskh entite uporabimo korpus SSJ500k. To je ročno pregledan korpus s približno pol milijona besed in je dostopen pod licenco Creative Commons za učenje modelov za označevanje entitet. Prepoznavanje imenskih entitet vključuje proces iden- tifikacije imenske entitete iz besedila in klasifikacijo teh entitet v vnaprej določene razrede razvrščanja [7]. Besedilni korpusi za ta namen ponavadi predvidevajo štiri osnovne razrede razvrščanja: osebe, lokacija, organizacija in nedoločeno. Ta prispevek se osredotoča le na razpoznavanje kategorije oseb v slovenskem jeziku. Za proces identifikacije imenskih entitet se v najsodobnejših sistemih uporabljajo predvsem postopki strojnega učenja, kot so, na primer, skriti Markovi modeli, pogojna naključna polja in principi maksimalne entropije (ang. maximum entropy) [8]. Naštete metode temeljijo na nadzorovanem učenju, za kar je potreben korpus besedil. Drugi sistemi pa za prepoznavanje imenskih entitet uporabljajo tudi eksplicitno predznanje, ki temelji na leksikonih imen. Ker pa tovrstni sistemi ne zaznajo entitete, če se ta ne nahaja v leksikonih, se jih v praksi pogosto kombinira s sistemom, ki je osnovan na strojnem učenju [9]. V prispevku se nismo posvetili optimizaciji obstoječih algoritmov ali specifičnih prilagoditev za slovenski jezik, pač pa smo si zastavili vprašanje, na kakšen način lahko ponudimo obstoječim algoritmom avtomatsko označena besedila. Ta besedila pa so kasneje lahko uporabljena v učni množici pri nadzorovanem učenju. Pristop temelji na uporabi leksikonov in uporabi klasične metrične razdalje, ki se uporablja za primerjavo med nizi Levenshteinove razdalje [10]. Razdaljo med dvema nizoma tako določimo s številom minimalnih operacij, ki jih potrebujemo za preoblikovanje enega niza v drugega, pri čemer so operacije definirane kot vrivanje, brisanje in zamenjave znakov, operacije so na primeru prikazane v tabeli 1. Večja vrednost razdalje ponazarja večje razlike, manjša pa večjo podobnost med primerjalnima nizoma. koreni besed. Če je algoritem torej naletel na pojavnico “Marka”, je bila razdalja do imena ‘Marko” zaradi uteži manjša od 1, saj je bila obtežena osnova imena, torej “Mark”. Posledično je algoritem pojavnico prepoznal kot imensko entiteto s seznama. Privzet algoritem za računanje Levenshteinove razdalje dovoljuje menjavo največ dveh zadnjih črk. V slovenskem jeziku pa je pri pregibanju možna menjava tudi večjega števila črk. Zato smo implementirali izboljšavo, ki temelji na upoštevanju pogostih končnic pri pregibanju samostalnikov in svojilnih pridevnikov. Ustvarili smo seznam vseh možnih končnic, ki se pojavljajo v slovenskem jeziku pri pregibanju samostalnikov ženskega, moškega in srednjega spola ter pri pregibanju svojilnih pridevnikov. Seznam končnic smo pridobili iz označenega oblikoslovnega slovarja Sloleks, ki je označen z oznakami, napisanimi v okviru projekta MULTEXT-East, pri čemer se oznake samostalnikov začenjajo s črko S, pridevniki pa s črko P. Lastno ime “Marko” bi bilo torej v Sloleksu označeno s Slmei, kar pomeni, da je Marko samostalnik (s), lastno ime (l), moškega spola (m), v ednini (e) in se v dotičnem primeru pojavi v imenovalniku (i). V slovarju so s tovrstnimi oblikoskladenjskimi oznakami označene vse pojavnice, zato smo napisali preprost program, ki nam je iz besedilnih podatkov izluščil vsa lastna imena in svojilne pridevnike. Iz izluščenih podatkov smo nato pridobili vse možne končnice in jih uporabili pri določanju imenskih entitet z Levenshteinovo razdaljo. Uporabljene končnice so prikazane v tabeli 2. Tabela 2: Izluščene končnice iz korpusa Slolex za samostalnike in svojilne pridevnike. Tabela 1: Primer možnih operacij za izračun Levenshteinove razdalje. Operacija vrivanje brisanje zamenjava Niz 1 Marko Marko Marko Samostalniki -a -e -em -ema -es -ev -ga -h -i -ih -ja -je -jem -jema -jev -ji -jih -jo -ju -m -ma -mi -mu -om -oma -ov -ta -te -tem -tema -tev -ti -tih -tom -toma -tov -tu -u -v Niz 2 Markov Mark Marka Zasnovali smo algoritem, ki najprej normalizira in tokenizira besedilo. Vsako pojavnico nato primerja z imeni s seznama imen, ki ga določimo kot parameter algoritma. Za potrebe tega prispevka smo seznama imen in priimkov pridobili iz registra imen Statističnega urada Republike Slovenije. Seznam vsebuje 4175 moških in 4268 ženskih imen in 30667 priimkov. Algoritem na podlagi Levenshteinove razdalje za vsako besedo iz besedila določi razdaljo med pojavnico in imeni s seznama. Če je razdalja med pojavnico in imenom s seznama manjša ali enaka 1, predpostavimo, da imata besedi isto lemo, posledično pa, da je pojavnica tudi imenska entiteta, saj leksikon vsebuje le spisek imenskih entitet. Pri preizkusih smo ugotovili, da lahko pri izračunu Levenshteinove razdalje utežimo začetek vsake pojavnice, saj se pri pregibanju besed v slovenščini spreminjajo le končnice. Le v nekaj redkih primerih pa tudi 278 Svojilni pridevniki -a -e -ega -em -emu -i -ih -im -ima -imi -o Končnice smo uporabili za pravilno označevanje pregibnih oblik imen in priimkov, pri katerih pride do menjav treh ali štirih črk končnic na koncu niza. Če ima pojavnica veljavno končnico za ime ali priimek v tabeli 2, se vrednost končne Levenshteinove razdalje zmanjša za trimestno končnico 1,8, za štirimestne končnice pa 3,8. S tem smo omogočili menjavo treh in celo štirih črk v primerjalnih besedah. To dovoljuje detekcijo pregibnih oblik, pri katerih pride do menjave večjega števila črk, saj privzeti algoritem za računanje Levenshteinove razdalje dovoljuje menjavo največ dveh zadnjih črk. 3 Rezultati Predlagan označevalnik imenskih entitet z oznako “osebašmo vrednotili na korpusu slovenskega besedila SSJ500k z 10-kratnim navzkrižnim učenjem. Na vnaprej naključno izbranih desetih delih besedilnega korpusa SSJ500k, namenjenih za učenje in vrednotenje, smo izdelali in vrednotili označevalnik imenskih entitet v programskem ogrodju OpenNLP (TokenNameFinder). Z ogrodjem smo tako zgradili 10 modelov za označevanje imenskih entitet in jih vrednotili na pripadajočih testnih besedilih. Testne podatke (celotno zbirko SSJ500k) smo uporabili tudi za označevanje imenskih entitet s predlaganim algoritmom na podlagi Levenshteinove razdalje in leksikona imen in priimkov. Rezultate poročamo z metriko za vrednotenje: natančnost, priklic in F1, ki so pogosto predpisane metrike ob različnih tekmovanjih [11]. pusa, pač pa le prosto dostopen leksikon imen. Rezultati so pokazali, da se algoritem lahko primerja tudi z bolj naprednimi algoritmi, osnovanimi na statističnem modeliranju, kot to velja za ogrodje OpenNLP. Pomanjkljivost, ki se jo zaznavamo, pa je, da se predlagan algoritem ne zaveda besedilnega konteksta, zato je še vedno močno podvržen označevanju napačnih besed. Če nam bo v prihodnosti dodatno uspelo izboljšati označevanje napačno označenih oseb, bo algoritem nedvomno uporaben za avtomatsko označevanje oseb v besedilu. V kombinaciji z naprednejšimi algoritmi osnovanimi na nadzorovanem stojnem učenju za razpoznavanje imenskih entitet pa lahko dodatno pripomore k izboljšanju natančnosti. Zahvala Tabela 3: Rezulati vrednotenja sistema za označevanje imenskih entite Sistem OpenNLP Predlagan sistem Natančnost 0, 466 0, 173 Priklic 0, 169 0, 457 F1 0, 248 0, 251 Ta prispevek je rezultat interdisciplinarne skupine projekta SloTex, katerega financiranje je podprl razpis Po kreativni poti do znanja 2016-2020 4 . Literatura [1] E. Loper and S. Bird, “Nltk: the natural language toolkit,” arXiv preprint cs/0205028, 2002. Tabela 3 prikazuje primerljive rezultate pri označevanju imenskih entitet oseb v besedilu. S predlaganim označevalnikom smo močno povečali število napačno označenih oseb, obenem pa smo povečali tudi število pravilno označenih oseb v primerjavi s privzetim označevalnikom za razpoznavanje besednih entitet v ogrodju OpenNLP, ki označi precej manj oseb pravilno, vendar ima tudi precej manjše število napačno označenih oseb v besedilu. 4 [2] S. Loria, P. Keen, M. Honnibal, R. Yankovsky, D. Karesh, E. Dempsey, et al., “Textblob: simplified text processing,” Secondary TextBlob: Simplified Text Processing, 2014. [3] C. Manning, M. Surdeanu, J. Bauer, J. Finkel, S. Bethard, and D. McClosky, “The stanford corenlp natural language processing toolkit,” in Proceedings of 52nd annual meeting of the association for computational linguistics: system demonstrations, pp. 55–60, 2014. [4] J. Baldridge, “The opennlp project,” URL: http://opennlp. apache. org/index. html,(accessed 2 February 2012), p. 1, 2005. Zaključek V prispevku smo predstavili odprtokodno aplikacijo za procesiranje naravnega jezika, ki ima tudi integrirano slovensko jezikovno podporo in uporabnikom ponuja možnosti dodatnega učenja jezikovnih modelov in dostop do sodobnih funkcionalnosti ogrodja OpenNLP. V prihodnosti se nadejamo še izboljšati uporabnost razvite aplikacije ter dodati še kakšno obstoječe ogrodje za procesiranje naravnega jezika z vključeno slovensko jezikovno podporo. Poleg spletne aplikacije za enostavno uporabo jezikovnih tehnologij s slovensko jezikovno podporo, namenjene za uporabo v poslovnih okoljih, smo se posvetili rezultatom udejanjenega algoritma za označevanje oseb s pomočjo Levenshteinove razdalje ter leksikona imen in priimkov, pridobljenem na Statističnem uradu Republike Slovenije. Vrednotenje algoritma smo primerjali z izdelavo osnovnega označevalnika imenskih entitet z ogrodjem OpenNLP in pridobili primerljive rezultate. Ugotavljamo, da smo pri označevanju oseb na korpusu slovenskega besedila SSJ500k s predlaganim algoritmom označili 2,7-krat več pravilno označenih oseb, obenem pa smo tudi povečali število napačno označenih besed kar za faktor 11,2-krat. Predstavljen algoritem pa v primerjavi z algoritmom OpenNLP za označevanje imenskih entitet krasi dejstvo, da za označevanje oseb v slovenskem besedilu ne potrebujemo obsežnega ročno označenega besedilnega kor- 279 [5] M. Di Batista, Označevanje imenskih entitet v pravnih besedilih. PhD thesis, Univerza v Ljubljani, 2013. [6] N. Ljubešić and T. Erjavec, “Corpus vs. lexicon supervision in morphosyntactic tagging: the case of slovene,” in Proceedings of the tenth international conference on language resources and evaluation (LREC 2016), pp. 1527– 1531, 2016. [7] J. Flisar and M. Pavlinek, “Wikipedija kot vir znanja za iskanje imenskih entitet,” Elektrotehniski Vestnik, vol. 84, no. 3, p. 108, 2017. [8] D. Fišer, T. Erjavec, A. Z. Vitez, and N. Ljubešid, “Janes se predstavi: metode, orodja in viri za nestandardno pisno spletno slovenščino,” V: Jezikovne tehnologije: zbornik, vol. 17, pp. 56–61, 2014. [9] T. Štajner, T. Erjavec, and S. Krek, “Razpoznavanje imenskih entitet v slovenskem besedilu,” Slovenščina 2.0: empirical, applied and interdisciplinary research, vol. 1, no. 2, pp. 58–81, 2013. [10] V. I. Levenshtein, “Binary codes capable of correcting deletions, insertions, and reversals,” in Soviet physics doklady, vol. 10, pp. 707–710, 1966. [11] E. F. Sang and F. De Meulder, “Introduction to the conll2003 shared task: Language-independent named entity recognition,” arXiv preprint cs/0306050, 2003. 4 http://www.sklad-kadri.si/si/razvoj-kadrov/po-kreativni-poti-doznanja-pkp/ Biomedicinska tehnika Biomedical Engineering Effect of calcium ions on liposomes as cell membrane analogues Katja Balantič1,2, Victor U. Weiss2, Günter Allmaier2, Peter Kramar1 University of Ljubljana, Faculty of Electrical Engineering, Tržaška 25, Ljubljana Institute of Chemical Technologies and Analytics, TU Wien, Getreidemarkt 9/164, Vienna E-pošta: katja.balantic@fe.uni-lj.si Calcium electroporation is a new experimental antiVpliv kalcijevih ionov na liposome kot cancer treatment, internalizing calcium into cells by model celične membrane application of short, high voltage pulses. The anti-tumour Abstract: Izpostavitev bioloških celic električnemu polju effectiveness of this approach has been demonstrated in se je izkazala kot uporabna tehnologija za manipulacijo vitro, in vivo and in clinical study [3]. Additionally, the s prepustnostjo celične membrane ter s tem potencialno effect on vasculature has been explored. Calcium široko uporabo v številnih biomedicinskih in internalization induces tumour cell death based on ATP biotehnoloških aplikacijah. Že kratkotrajna izpostavitev loss through the permeabilized cell membrane. In električnemu polju povzroči spremembe na nivoju addition, ATP production is decreased due to the lipidnih molekul v celični membrani. V odvisnosti od application of high voltage electric pulses [4]. However parametrov električnega polja postane membrana effects of calcium ions on biological cells has not been začasno prepustna, tudi po zaključeni izpostavitvi fully elucidated. 1 2 električnemu polju, za molekule, ki običajno ne morejo prehajati celične membrane. Pojav imenujemo elektroporacija ali elektropermeabilizacija. Razvita je bila tudi metoda elektroporacije z dodajanjem kalcija za uporabo v zdravljenju rakavih obolenj. Učinkovitost te metode je bila dokazana in vitro, in vivo ter klinični študiji. Kljub temu pa osnovni fizikalni in kemijski procesi pri dodatku kalcija ali kateregakoli drugega dvovalentnega kationa še vedno niso povsem raziskani. Znano je, da določeni ioni vplivajo na elektroporacijo, celične membrane. Liposomi so sferični vezikli, ki jih obdaja lipidni dvosloj. Zaradi njihove preprostosti in podobne geometrijske zgradbe, kot jo imajo celice, ki jih obdaja celična membrana, liposome lahko uporabljamo kot model celične membane. Za preučevanje fizikalnih sprememb smo uporabili plinsko elektroforezo z uporabo naprave imenovane Nano-Electrospray Gas-phase Electrophoretic Mobility Molecular Analyzer (nES GEMMA). Namen naše študije je preučevanje vpliva kalcijevih ionov na strukturne in molekularne spremembe liposomov. 1 Introduction Application of an external electric field to biological cells has emerged as a powerful technique for manipulation of cell membrane permeability. Such an electric field, which is briefly applied to cells by applying high voltage electric pulses, induces local distortions and structural rearrangements of lipid molecules in the cell membrane. Depending on the pulse parameters, membranes become either transiently or permanently permeable even after the field has ceased, allowing molecules that are otherwise deprived of transport mechanisms to cross the membrane and reach the cytosol. This phenomenon is often referred to as electroporation or electropermeabilization [1,2]. ERK'2019, Portorož, 281-284 281 Figure 1: Schematic presentation of liposome vesicle with a hydrophilic core and a hydrophobic lipid bilayer. Physical processes and molecular-scale mechanisms involved in addition of cations to the cell membrane can be studied using artificial biological membrane models such as planar lipid bilayers or more complex structures such as liposomes. Liposomes are spherical vesicles consisting of lipid molecules, which can form one or more lipid bilayers (Figure 1). Due to the amphiphilic nature of lipid molecules, liposomes are able to self-assembly in aqueous solutions. Furthermore, they encapsulate part of the aqueous solution into their hydrophilic core. The hydrophobic lipid bilayer structurally represents a simplified model of a cell membrane. Therefore, liposomes can be used to study changes occurring to this cell membrane analogue. The first closed, spherical lipid bilayer was described in 1965 by Alec Bangham and his colleagues [5]. Liposome properties, such as size, differ with the lipid composition and method of preparation. Furthermore, chemical modifications can occur that induce changes in the liposome particle size. Gas-phase electrophoresis of single-charged particles enables analysis of vesicles according Figure 2: Schematic presentation of nES GEMMA working principle. The first part consists of a nano electrospray based aerosol generator where aerosol is generated from our sample. Polydisperse aerosol then flows through the nano-differential mobility analyser where the particles get classified based on their size. In the end, monodisperse particles are detected by a condensation particle counter. to the surface-dry particle size [6]. With a nES GEMMA instrument, we are able to obtain a size-distribution analysis and determine a particle-number concentration (Figure 2). Surface-dry, single-charged particles are obtained after a nano-electrospray process with subsequent drying of droplets and charge equilibration. Next, polydisperse surface-dry analytes are separated in a constant, high laminar sheath flow of particle-free air and an orthogonal, tunable electric field inside a Differential Mobility Analyzer (DMA). By variation of the field strength, a monodisperse aerosol is generated at the exit slit of the DMA. Following size-separation, nanoparticles are detected in an ultrafine Condensation Particle Counter (CPC) enabling particle-number concentration based detection in accordance with recommendations of the European Commission for nanoparticle characterization (2011/696/EU from October 18th, 2011) [7]. Aim of the study was to determine the effects of calcium ions on structural rearrangements and molecular physical changes of liposomes. 2 2.1 Materials and methods Chemicals The lipids L-α-phosphatidylcholine, hydrogenated (Soy) (HSPC),1,2-dioctadecanoyl-sn-glycero-3phosphoethanolamine (18:0 PE, DSPE) and cholesterol (Chol) were from Avanti Polar Lipids (Alabaster, AL, USA). Ammonium acetate (NH4OAc, ≥ 99.99 %) from Sigma Aldrich (Steinheim, Germany). Chloroform (Spectronorm quality) was obtained from VWR BDH Chemicals (Roncello, Italy), Methanol (LiChrosolv) from Merck (Darmstadt, Germany). Nitrogen gas was from Messer (Gumpoldskirchen, Austria). 282 2.2 Buffers and electrolytes NH4OAc solution (40 mM, pH 8.4) filtered through a 0.2 µm pore size syringe filter (surfactant free cellulose acetate membrane from Sartorius, Göttingen, Germany) was used for vesicle preparation and as aqueous electrolyte for nES-GEMMA. 2 mM, 5 mM, 10 mM, 20 mM and 40 mM calcium in NH4OAc solution (40 mM, pH 8.4) was employed for the experiments. For all electrolyte preparations, water from a Simplicity apparatus (Millipore, Billerica, MA, USA) with 18.2 MΩcm resistivity at 25°C was applied. 2.3 Liposome preparation Liposomes from HSPC:DSPE:Cholesterol (4:3:3 molar ratio) were prepared from dried thin lipid films via hydration. Therefore, corresponding amounts of lipids were dissolved in methanol:chloroform (1:3 mixture [v:v]). Subsequently, a thin, regular film was formed under a constant stream of nitrogen gas. The film was further dried in a desiccator for approximately 2 hours. Afterwards, hydration of the lipid film was performed with 1 mL NH4OAc. This yielded dispersion of 10 mM total lipid concentration. The lipid film was detached from the flask surfaces via vortexing and heating in a water bath (approx. 65°C). Subsequently, small unilamellar vesicles were prepared via extrusion of dispersions (21 times through two pre-wetted 100 nm pore size, polycarbonate membranes (Avanti Polar Lipids) applied in the same membrane orientation). Liposome stock solutions were stored in brown glass vials at 4°C until further use. 2.4 Instrumentation and samples Gas-phase electrophoresis was carried out on a TSI Inc instrument (Shoreview, MN, USA): A nES aerosol generator (Model 3480) equipped with a 210Po α-particle source, a nDMA (Model 3080) and a n-butanol-based ultrafine CPC (either model 3025A or a similar model, 3776C) were applied. The samples were introduced to the nES via a 25 µm inner diameter, fused silica capillary with a homemade tip generating a stable Taylor cone. In order to exclude cross-contaminations, a fresh capillary was employed for each set of measurements. 4.0 pounds per square inch differential (psid, approx. 28 kPa) and 0.1 liters per minute (Lpm) CO2 and 1.0 Lpm compressed, particle-free air were employed for transport of analytes from the capillary through the neutralization chamber and to the nDMA unit. The air was additionally dried (Donaldson Variodry Membrane Dryer Superplus, Leuven, Belgium) to facilitate drying of nES derived droplets. Liposome stocks were simply diluted 1:10 [v:v] in ammonium acetate prior to gas-phase electrophoresis. Different concentrations of calcium electrolyte solution were applied to the external environment of the liposomes during the buffer exchange via spin filtration. Filtration was carried out two times in the presence of calcium ions and once more in electrolyte containing only ammonium acetate in order to remove lower sized material. 2.5 MATLAB analysis Analysis of obtained number based particle concentrations was carried out using Matlab 2017b. Obtained particle counts were filtered using a zero phase Butterworth filter to ensure a smooth graph, which would enable us to determine the peak apex of the particle size distribution. The cutoff frequency were determined from obtained graphs and is presented as an error distribution. 3 Results The aim of our study was to measure and observe structural changes occurring to spherical lipid bilayers, e.g. liposomes, due to the addition of calcium cations. We were able to demonstrate that measurable size changes occur to the liposome particles due to the addition of calcium cations to the external environment of the liposomes. Changes were measured using gas-phase electrophoretic analysis employing a nES GEMMA instrument. With the application of three different lipid components for liposome preparation, HSPC, Cholesterol and DSPE respectively, vesicles with diameter of approximately 76.6 nm were obtained as seen from Figure 3. Mixed lipid composition proved to give optimal measurable changes due to the size of prepared liposomes and the fluidity of the lipid bilayer. Liposomes were prepared with the dried thin lipid film hydration technique and further diluted. During the dilution process, calcium solutions with different molarities were added to the exterior of the liposomal 283 particles. First, we measured the liposomes via nES GEMMA in the corresponding electrolyte (ammonium acetate) without addition of calcium ions. A size distribution graph with a peak at 76.6 nm particle diameter was obtained as seen on Figure 3. Figure 3: Size distribution of particles in our liposome sample. Liposome particles have their peak at approximately 85 nm. Changes occurring to the particle count and particle size due to addition of different calcium concentrations can be seen. When no calcium was added (blue line) the liposome size distribution had a peak at 76.6 nm particle diameter. When 10 mM calcium solution was added (orange line) the liposome peak shifted to lower particle diameter. The same occurred to the liposomes with 20 mM calcium solution (yellow line). Fort the liposomes with added 40 mM calcium solution (violet line) the liposome particle count is too low to distinguish the liposome peak Calcium was added to the liposome solution during the spin filtration process. For the 10 mM and 20 mM calcium addition to the liposome exterior, we were able to observe measurable changes in liposome particle size (Figure 4). The size of the liposomes did indeed shift to lower diameter values. For 10 mM calcium addition to 67.6 nm and for 20 mM calcium addition to 62.4 nm particle diameter. With the addition of 40 mM calcium solution the liposome particles became twice smaller, what is more their particle count decreased as well, most probably due to liposome particles to burst and smaller structures are being formed. Structures such as micelles and free calcium cations was detected using nES GEMMA. The dependence of particle size to the calcium cation concentration is presented on Figure 4. Liposome diameter decreases with increasing concentration of calcium in the electrolyte solution. Calcium ions believed presumably modify the phosphate head groups in the lipid molecules therefore making the lipid molecule smaller, consequently decreasing the area per lipid. The graph on Figure 4 consists of four points, each representing a different calcium solution concentration. The error bars represent the cut-off frequency of obtained distributions. The particle diameter decreases with increasing calcium concentration. Therefore, calcium cations induce changes to the lipid molecules causing the liposome particles to decrease in size. [4] [5] [6] [7] Figure 4: Decrease in liposome particle diameter with respect to concentration of calcium solution added to the liposome sample. The error bars represent the cutoff frequency of the obtained distribution. [8] 4 Conclusion In our study, we were able to observe and quantify the changes occurring in the lipid structures, such as liposomes, induced by the addition of calcium ions. We were able to demonstrate that with an increasing concentration of calcium ions the liposome vesicles decrease in size. The results of this study are in agreement with studies based on Molecular Dynamics simulations, where binding of the calcium ions to the lipid phosphoryl oxygen interior and reduction of area per lipid were demonstrated with addition of calcium ions into the bulk solution [7]. In the future, we should be able to demonstrate size changes due to calcium ion addition on liposomes with different lipid compositions. Likewise, other divalent cations, such as magnesium could be used to observe changes occurring to the lipid structures. With our study, we were able to confirm that structural rearrangements do occur on spherical lipid bilayers due to the addition of calcium ions. Furthermore, we plan to observe the behaviour of liposomes with added calcium cations under the electric field application in the future. This would give us a better insight in the possible processes occurring during the electroporation, especially when calcium ions are added to the treated area. Literature [1] Handbook of Electroporation, Edt. Damijan Miklavčič |Springer. [cited 2019 Jun 3]. Available from:https://www.springer.com/gp/book/9783319328850 [2] Kotnik T, Kramar P, Pucihar G, Miklavcic D, Tarek M. Cell membrane electroporation- Part 1: The phenomenon. IEEE Electr Insul Mag. 2012 28(5):14–23. [3] Frandsen SK, Gehl J. Effect of calcium electroporation in combination with metformin in vivo and correlation 284 between viability and intracellular ATP level after calcium electroporation in vitro. PLOS ONE. 2017 12(7):e0181839. Starešinič B, Jesenko T, Kamensek U, Frandsen SK, Serša G, Gehl J, Čemažar M. Effect of calcium electroporation on tumour vasculature. Sci. Rep. 2018 8(1) 1–14. Bangham AD, Standish MM, Watkins JC. Diffusion of univalent ions across the lamellae of swollen phospholipids. J Mol Biol. 1965 13(1):238–52. Kaufman SL, Skogen JW, Dorman FD, Zarrin F, Lewis KC. Macromolecule analysis based on electrophoretic mobility in air: globular proteins. Anal Chem. 1996 68(11):1895–904. Weiss VU, Urey C, Gondikas A, Golesne M, Friedbacher G, Von Der Kammer F, Hofmann T, Andersson R, Marko-Varga G, Marchetti-Deschmann M, Allmaier G. Nano electrospray gas-phase electrophoretic mobility molecular analysis (nES GEMMA) of liposomes: Applicability of the technique for nano vesicle batch control. Analyst 2016 141(21) 6042–6050. Castellani F, Vernier PT. Ion models and ion transport in molecular simulations of electrically stressed biological membranes. In BioEM 2018 : abstract collection, The Joint Annual Meeting of the Bioelectromagnetics Society and the European BioElectromagnetics Association, June 25-29, Piran, Portorož, Slovenia. 2018 241-244. How does cell culture media with additional lipids and vitamin E affects electropermeabilization, cell-cell fusion and survival of CHO-K1 cell line? Maša Kandušer1 1 Faculty of Electrical Engineering, University of Ljubljana, Tržaška 25, SI-1000 Ljubljana E-mail: masa.kanduser@fe.uni-lj.si Abstract. Cell membrane electroporation is a multipurpose technique suitable for biomedical and biotechnological applications. Lipids are essential components of all cell membranes and play an important role in electroporation and electrofusion. The present study determines the effects of the two physiologically crucial lipids cholesterol, and arachidonic acid and α-tocopherol major component of the lipo-soluble vitamin E on electropermeabilization, cell-cell electrofusion and cell survival. Non-malignant CHO-K1 cell line was used. Before electroporation cellcontacts were established by modified adherence method. Permeabilization was determined by propidium iodide. Propidium iodide positive cells were detected by flow cytometry or microscopy. Cell survival was obtained by spectrometric measurements of crystal violet. The percentage of cell fusion was obtained by manual cell counting of microscopic images. The results indicate that pre-treatment of CHO-K1 cells with cholesterol, arachidonic acid and α-tocopherol does not affect cell membrane permeabilization, cell survival or cell fusion. A slight increase in spontaneous cell fusion was observed in pre-treated cells. 1 Introduction Cell membrane electroporation is a multipurpose technique suitable for biomedical and biotechnological applications. The cell membrane exposed to external electric field becomes temporarily permeable allowing the exchange of the molecules between the cell cytoplasm and the surroundings. The molecular transport takes place during the pulse until the recovery of the cell membrane function [1]. The cell membrane recovery, known as resealing depends on electric pulse parameters and characteristics of treated cell. Both, cell membrane permeabilization and resealing depend on biochemical and biophysical characteristics of the cell membrane, anchoring to underlying cytoskeleton and physiological status of the cells [2]–[4]. The incorporation of copolymers or detergents into the cell membrane alters cell membrane resealing and viability [5], [6]. Lipids are essential components of all cell membranes and they play an important role in electroporation [7] and cell signaling [8]. Membrane lipid composition varies across cell types, tissues, and organelles, suggesting their role on cellular functions and membrane plasticity [8]. Cells incorporate the lipids ERK'2019, Portorož, 285-288 285 and lipo-soluble vitamins obtained from the diet into their cell membranes. Lipids in the cell membrane have distinct functions. Cholesterol is one of the most important regulators of the lipid organization while phospholipids, are essential building blocks [8]. Membrane lipid composition determines cell membrane fluidity. While cholesterol stabilizes lipid bilayer and increases membrane order parameter, polyunsaturated fatty acids in the lipid tails of phospholipids decrease order parameter in the hydrophobic core of the membrane. Under stress conditions polyunsaturated fatty acids are very susceptible for lipid peroxidation [8]–[11]. The arachidonic acid is an omega-6 polyunsaturated fatty acid and like cholesterol is abundant in the diet [9]. The healthy diet contains also lipo-soluble vitamins [12]. The α-tocopherol is potent antioxidant and the most common form of lipo-soluble vitamin E. When α-tocopherol is present in the cell medium it incorporates into the cell membrane and affect cell membrane fluidity [13]. Like cholesterol also α-tocopherol decrease membrane fluidity. Vitamin E has also anti oxidative role. In mouse melanoma cell line, pre-treatment with α-tocopherol improves viability after electroporation [14]. Harmful reactive oxygen species are formed during electroporation and resulting lipid peroxidation could contribute to cell membrane permeabilization [7]. Vitamin E in the cell membrane acts as a potent free radical scavenger [13] and protects cell membrane lipids from peroxidation damage. The biochemical composition of the cell membrane affects electroporation related cell-cell electrofusion [15]. Lipid curvature is crucial for fusion pore formation and determines the propensity of lipid bilayers to fuse. A fusion pore comprises a connection between the two merging membranes [16]. This pore is a crucial intermediate of cell fusion in naturally occurring processes needed for syncytia formation during muscle differentiation and in artificially induced electrofusion. The aim of the present study was to determine the effects of cholesterol, arachidonic acid and α-tocopherol on cell membrane electropermeabilization, cell-cell fusion and cell survival. The cell membrane lipid composition was modified by supplementation of cell culture media with physiologic concentrations of cholesterol, arachidonic acid and α-tocopherol. A nonmalignant Chinese hamster ovary cell line CHO-K1 was used and results were compared to different controls; cells not treated with additives in the culture medium and cells not treated with electric pulses. 2 2.1 Materials and methods Cell culture CHO-K1, Chinese hamster ovary cells, purchased from European Collection of Cell Cultures, were grown as a monolayer culture in a growth medium F12 HAM nutrient mixture (Gibco) supplemented with 2 mM glutamine, 10% fetal bovine serum (Sigma-Aldrich) and antibiotics. Cell cultures were maintained in the incubator (Kambič, Slovenia) at 37°C in a humidified 5% CO2 atmosphere. 2.2 Pre-treatments Cells were pre-treated with different lipid soluble agents at physiological concentrations: 50 µM cholesterol, 0,5 µM arachidonic acid and 50 µM α-tocopherol. For control treatment, cells were grown in the complete culture medium without addition of lipo-soluble agents. Cells were grown in 6 well plates at the concentration 1.5×105 cells/ml for 48h in the incubator at 37°C. At the day of experiment, cells were tripsynised and seeded for electrofusion protocol. Both pre-treated and non-pretreated cells were exposed to electric pulses and a control, cells not exposed to electric pulses, was prepared in each experiment. 2.3 Electroporation and electrofusion protocol For electroporation of CHO cells parallel wire electrodes were used. The electric pulse parameters were a train of 8 of 100 µs duration applied at repetition frequency 1 Hz and electric pulse amplitude 1.2 kV/cm. On the day of the experiment, cell suspension was prepared by 0.25 % trypsin/EDTA solution. Trypsin was removed and 5 ml of culture media was added. Cells were gently rinsed from the bottom of 6 well plate and homogenous cell suspension was prepared. Close cell-cell contacts were established by modified adherence method [17]. A 40 µl drop of cell suspension in concentration 2×106 cells/ml was placed per well in a 24-multiwell plate (TPP, Switzerland). Drops were incubated in the incubator with 5 % CO2 at 37 °C for 25-30 min. When cells were slightly attach to the surface they were washed with 1 ml of isotonic buffer (K2HPO4/KH2PO4, pH 7,4) . For electroporation 350 µl of isotonic buffer was added and a train of 8×100 µs pulses with the frequency 1 Hz was applied at two parallel wire electrodes (Pl/Ir = 90/10) with four mm gap. Electric field strength was 1.2 k V/cm. After delivery of pulses, the cells were left undisturbed for ten minutes for the cell fusion to take place. For electropermeabilization with propidium iodide (PI) the dye was added to electroporation buffer (final concentration 150 µM) and cells were electroporated and analyzed immediately after pulse delivery by flow cytometry. For in situ permeabilization cells were observed before, between and immediately after electric pulse application. Objective magnification was 40× images were acquired in contrast and fluorescence setup (Leica). Cell survival was determined by crystal violet 286 method. Samples were grown for 24h after electroporation in a 24 well plate. Cells were gently rinsed with physiologic solution 0,9 % NaCl, stained with 0.05 % crystal violet in 30% ethanol for 30 minutes at room temperature. Dye was then removed and cells were washed three times with NaCl. After, lyses with 10% acetic acid samples were measured in microplate reader (Tecan) at 595 nm. For each plate, four blanks without cells were used and the values were subtracted from the obtained results. Cell survival was calculated and expressed as percentage of the control treatment. Cell electrofusion yield was determined microscopically. Cells were rinsed with NaCl and stained with crystal violet. Stained samples were rinsed three times with NaCl. Washed samples were observed under 40× objective magnification and at least five images per treatment were acquired. Cell were counted manually using Image J software. Fused cells were determined by their morphological characteristics (Figure 1), characterized by large surface and two or more nuclei in the center of the cytoplasm. Fusion yield was determined as number of multinucleated cells divided by total number of cells. The percentage of polynucleated cells in the control (cells not exposed to electric pulses) was also determined. The percentage obtained in the control was subtracted from electric pulse treated cells to obtain electrofusion percentage. The results are presented as mean (± standard deviation STD) for a given treatment obtained from three independent experiments. Figure 1: Bright field image. Left panel: cell culture. Right panel: electrofused CHO cells stained by crystal violet. Fused cells were obtained by cell exposure to 8x100µs electric pulses, 1 Hz, 1.2 kV/cm . Images were captured 24 after electroporation. Objective magnification was 40×. 3 3.1 Results Effect of pre-treatment of CHO cells with cholesterol, arachidonic acid and α-tacopherol on cell membrane permeabilization Pre-treatment of CHO-K1 cells in the medium with the physiologic concentration of cholesterol, arachidonic acid and α-tocopherol did not affect cell membrane permeabilization. Eight pulses of 100 µs duration and amplitude of 1.2 kV/cm delivered at repetition frequency 1Hz permeabilized all cells in the treated sample. In the control treatment (no electric pulses and no pre-treatment) 12% of permeabilized (PI positive) cells was observed by flow cytometry (Figure 2). The percentage of permeabilized cells in the control treatment was higher than expected, therefore additional experiments were conducted to confirm the obtained results. In the additional experiment, permeabilization of CHO cells was observed in situ (Figure 3) and percentage of permeabilized cells was detected by counting of PI positive cells before and after electric pulse application in selected cell population. The selected methodology excludes any false positive results. In the left panel of the Figure 3 phase contrast of the CHO is presented while on the right panel PI positive cells (red) indicate the grade of permeabilization. The peremeabilization was 99,6% in the control, 99,8% in cholesterol/arachidonic acid pretreated cells and 100% in α-tocopherol pre-treated cells. Figure 3 shows permeabilization of cells pretreated with arachidonic acid. Almost all were permeabilization at selected electric pulse parameters. Similar results were obtained for control treatment (cells grown without additives) and cells pre-treated with cholesterol and α-tocopherol. No PI positive cells were detected before electric pulse application in control, and cells pretreated with cholesterol/α-tocopherol, while slight permeabilization (3%) was obtained for CHO cells pretreated with arachidonic acid. However, the observed percentage is within experimental error of the selected experimental method. Figure 2: Permeabilization of CHO-K1 cell line with PI. Electric pulse parameters were 8×100 µs, 1.2 kV/cm, 1Hz. (A) permeabilization determined by flow cytometry. 12% of the CHO cells were permeabilized in control (no electric pulses). Abreviations: CH-cholesterol; AA-arachidonic acid; α-T-αtocopherol. 3.2 Effect of pre-treatment of CHO cells with cholesterol, arachidonic acid and α-tacopherol on cell survival and electrofusion The survival of the cells pre-treated for 48h with cholesterol, arachidonic acid and α-tocopherol was 85% and more. Electroporation slightly reduced cell survival; nevertheless, the observed differences are within the experimental error (Figure 4A). In control treatment, cells not exposed to electroporation nor pretreated with selected agents, 0,6 % ± 0,1 of the cells were fused. Pre-treatment of CHOK1 cells with cholesterol resulted in 1,1 % ± 0,3; arachidonic acid in 1,4 % ± 0,4 and α-tocopherol in 1,3 % ± 0,1 of spontaneously fused cells. Electroporation increased the percentage of fused cells: 20 % ± 8 % in the control treatment and between 15 and 18 % in the pre-treated cells (Figure 4B). Pre-treatment with the selected agents did not significantly affect electrofusion (Figure 4B). Figure 4: Cell survival (A) and cell fusion (B) of CHO cells grown in the medium containing cholesterol, arachidonic acid or α-tocopherol for 48h. Abreviations: K cells not exposed to electric pulse treatmen, EP electroporation with 8×100 µs, 1.2 kV/cm, 1Hz; CH-cholesterol; AA-arachidonic acid; α-T-αtocopherol.Values are means of at least 3 independent experiments ±STD. 4 Discussion and conclusions Figure 3: In situ permeabilization of CHO cells pretreated with arachidonic acid (AA) 48 before electroporation: Left panel: phase contrast. Right panel: fuorescence image of the same cells. Images were acquired at 40× objective magnification under phase contrast and fluorescence setup. 287 The effect of cholesterol, arachidonic acid and liposoluble vitamin E on cell membrane electropermeabilization, cell-cell fusion and cell survival of CHO-K1 cell line was addressed in this study. In the living organisms, those agents are present in the circulations and are available to cells and tissue. To mimic this situation "in vitro" cell culture media was supplemented with physiologic concentrations of cholesterol (50 µM), arachidonic acid (5 µM) and αtocopherol (50 µM). To determine the effects of lipids and lipo-soluble vitamin E in normal cells a nonmalignant Chinese hamster ovary cell line CHO-K1 was used for experiments. The obtained results demonstrated that cell membrane permeabilization was not affected by pretreatment of CHO-K1 cell with cholesterol, arachidonic acid and α-tocopherol (Figure 2). The pre-treatment with arachidonic acid, cholesterol and α-tocopherol affect cell membrane fluidity of cultured cells [8], [11], [13]. Arachidonic acid enhance damage [7] while αtocopherol protects [12] membrane lipids from peroxidation after electroporation. If lipid peroxidation was involved in cell membrane permeability [7] the differences in permeabilization between arachidonic acid and α-tocopherol pre-treated cells should be observed (Figure 2). In accordance with our previous results [6] differences in cell membrane fluidity caused by cholesterol and arachidonic acid pre-treatment did not affect cell membrane permeabilization (Figure 2). The liposoluble α-tocopherol protected cell viability in mouse melanoma cell line [14]. In CHO-K1 cell line the protective effect of α-tocopherol was not observed (Figure 4A). The differences could be explained by different grades of malignant transformation (melanoma vs ovary cells) and different origins of the cell lines used in the studies. The supplementation of cell culture media with cholesterol, arachidonic acid and α-tocopherol slightly increased the spontaneous cell fusion form 0,6% in untreated to 1% in pre-treated cells. Pre-treatments did not affect electrofusion percentage (Figure 4 B). Lipid composition of the cell membrane determines the propensity of lipid bilayers to form fusion pores [16] in biologic cell fusion. Lipid composition does not have a significant effect on electrofusion of CHO-K1 cell line. The selected concentrations of the tested agents were in the range of physiologic values found in the circulation of healthy, adult organism where biologic cell fusion is a rate event. To conclude: physiologic concentrations of cholesterol, arachidonic acid and α-tocopherol do not affect cell membrane premeabilization, cell survival or cell fusion of non-malignant cell line CHO-K1. [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] Acknowledgements: I would like to acknowledge Faculty of Electrical Engineering for the financial support. Experiments were performed in ICCE, MRICUL. Bibliography [1] [2] [15] [16] G. Pucihar, T. Kotnik, D. Miklavčič, and J. Teissié, “Kinetics of Transmembrane Transport of Small Molecules into Electropermeabilized Cells,” Biophys. J., vol. 95, no. 6, pp. 2837–2848, Sep. 2008. M.-P. Rols, C. Delteil, M. Golzio, and J. Teissié, “Control by ATP and ADP of voltage-induced mammalian-cell-membrane permeabilization, gene 288 [17] transfer and resulting expression,” Eur. J. Biochem., vol. 254, no. 2, pp. 382–388, 1998. M.-P. Rols and J. Teissié, “Experimental evidence for the involvement of the cytoskeleton in mammalian cell electropermeabilization,” Biochim. Biophys. Acta BBA - Biomembr., vol. 1111, no. 1, pp. 45–50, Oct. 1992. M. Čemažar et al., “Effect of Electric-Field Intensity on Electropermeabilization and Electrosensitmty of Various Tumor-Cell Lines In Vitro,” ElectroMagnetobiology, vol. 17, no. 2, pp. 263–272, Jan. 1998. L. Wasungu et al., “Pre-treatment of cells with pluronic L64 increases DNA transfection mediated by electrotransfer,” J. Controlled Release, vol. 149, no. 2, pp. 117–125, Jan. 2011. M. Kanduser et al., “Effect of surfactant polyoxyethylene glycol (C12E8) on electroporation of cell line DC3F,” Colloids Surf. -Physicochem. Eng. Asp., vol. 214, no. 1–3, pp. 205–217, Mar. 2003. L. Rems, M. Viano, M. A. Kasimova, D. Miklavcic, and M. Tarek, “The contribution of lipid peroxidation to membrane permeability in electropermeabilization: A molecular dynamics study,” Bioelectrochemistry, vol. 125, pp. 46–57, Feb. 2019. A. L. Santos and G. Preta, “Lipids in the cell: organisation regulates function,” Cell. Mol. Life Sci., vol. 75, no. 11, pp. 1909–1927, Jun. 2018. H. Takahashi, K. Rikimaru, R. Kiyohara, and S. Yamaguchi, “Effect of Arachidonic Acid-enriched Oil Diet Supplementation on the Taste of Broiler Meat,” Asian-Australas. J. Anim. Sci., vol. 25, no. 6, pp. 845– 851, Jun. 2012. P. C. Calder, “Fatty acids and inflammation: the cutting edge between food and pharma,” Eur. J. Pharmacol., vol. 668 Suppl 1, pp. S50-58, Sep. 2011. X. Yang, W. Sheng, G. Y. Sun, and J. C.-M. Lee, “Effects of fatty acid unsaturation numbers on membrane fluidity and α-secretase-dependent amyloid precursor protein processing,” Neurochem. Int., vol. 58, no. 3, pp. 321–329, Feb. 2011. M. Takahashi, J. Tsuchiya, E. Niki, and S. Urano, “Action of vitamin E as antioxidant in phospholipid liposomal membranes as studied by spin label technique,” J. Nutr. Sci. Vitaminol. (Tokyo), vol. 34, no. 1, pp. 25–34, Feb. 1988. X. Wang, “Vitamin E and its function in membranes,” Prog. Lipid Res., vol. 38, no. 4, pp. 309–336, Jul. 1999. M. Kanduser, M. Kokalj Imsirovic, and M. Usaj, “The Effect of Lipid Antioxidant α-Tocopherol on Cell Viability and Electrofusion Yield of B16-F1 Cells In Vitro,” J. Membr. Biol., vol. 252, no. 1, pp. 105–114, Feb. 2019. M. Kandušer and M. Ušaj, “Cell electrofusion: past and future perspectives for antibody production and cancer cell vaccines,” Expert Opin. Drug Deliv., vol. 11, no. 12, pp. 1885–1898, Dec. 2014. L. V. Chernomordik and M. M. Kozlov, “Mechanics of membrane fusion,” Nat. Struct. Mol. Biol., vol. 15, no. 7, pp. 675–683, Jul. 2008. M. Usaj and M. Kanduser, “Modified Adherence Method (MAM) for Electrofusion of AnchorageDependent Cells,” in Cell Fusion: Overviews and Methods, 2nd Edition, K. Pfannkuche, Ed. Totowa: Humana Press Inc, 2015, pp. 203–216. Razvoj avtonomnega sistema za merjenje električnih lastnosti ravninskih lipidnih dvoslojev Jaša Montani, Peter Kramar Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, Ljubljana E-pošta: peter.kramar@fe.uni-lj.si Development of an autonomous system for measuring electrical properties of planar lipid bilayers Abstract. Lipid molecules are an essential part of cell membranes. Studying the properties of lipid bilayers as models of cell membrane is important in electroporation research. Planar lipid bilayers are electrically accessible from both sides and can be represented as a resistor and a capacitor wired in parallel. That makes them appropriate for studying electrical properties. Constructing planar lipid bilayers and taking measurements manually is a time consuming exercise. Therefore, we developed an autonomous automated system, which constructs the bilayer, takes measurements and stores them for further analysis in a hands free manner. We introduced programmable syringe pumps in the place of manual operation of syringes. Planar lipid bilayer is built in a Teflon chamber using Montal-Muller method. Furthermore we develop circuitry for measuring voltage and current over the planar lipid bilayer using the technique of voltage clamping and we develop a modular user interface in MATLAB based on SCPI standard, which enables researchers to create custom measuring protocols, store measurements and/or track the data in real time. 1 Uvod V naravi so lipidne molekule poglavitni del celične membrane tako živalskih kot rastlinskih celic. Celična membrana in membrane celičnih organelov so v večini sestavljene iz lipidnih dvoslojev, ki vsebujejo tudi proteinske molekule. Izpostavitev celice električnemu polju ustrezne jakosti in trajanja povzroči povečano prepustnost celične membrane. Ta pojav imenujemo elektroporacija. Elektroporacijo se danes rutinsko uporablja v biomedicini in biotehnologiji [1]. Opravljene raziskave nakazujejo, da se spremembe v membrani – pore zaradi vsiljenega električnega polja pojavijo v lipidnih predelih celične membrane. Ravninski lipidni dvosloj si lahko predstavimo kot infinitezimalno majhen košček membrane. Njegova poglavitna prednost je, da je električno dostopen iz obeh strani in da lahko njegovo kemično sestavo izbiramo poljubno in s tem preučujemo vpliv posameznih molekul. Električno ravninski lipidni dvosloj predstavimo kot vzporedno vezan upor in kondenzator [2]. Ravninske lipidne dvosloje pripravimo v posebni komori, ki je sestavljena iz dveh prekatov. Med prekatoma je teflonska folija, ki vsebuje majhno luknjico ERK'2019, Portorož, 289-292 289 s premerom od 0,1 do 1 mm. Na luknjico napnemo ravninski lipidni dvosloj z metodo barvanja ali dvigovanja gladine [3,4]. Metoda dvigovanja gladine (ang. folding bilayer) oziroma Montal – Mullerjeva metoda je ena od najpogosteje uporabljenih metod za tvorjenje ravninskih lipidnih dvoslojev pri preučevanju elektroporacije. Pod nivojem teflonske folije napolnimo oba prekata z vodno raztopino soli. Lipide nanesemo na gladino raztopine v obeh prekatih in počakamo, da se enakomerno porazdelijo po gladini (slika 1A). Nato istočasno dvignemo gladini v obeh prekatih nad luknjico (slika 1B). Lipidni dvosloj nastane na luknjici v teflonski foliji, ki je sedaj potopljena v tekočini (slika 1C). Prednost te metode je v tem, da lahko s spuščanjem in dviganjem gladine raztopine tvorimo lipidne dvosloje enega za drugim, brez daljšega čakanja. Slika 1: Metoda Montal-Muller za tvorjenje ravninskih lipidnih dvoslojev. A) Na gladino raztopine nanesemo lipidne molekule in počakamo, da se razporedijo. B) Dvignemo nivo raztopine preko luknjice v teflonski foliji. C) Zgradimo ravninski lipidni dvosloj. Ravninski lipidni dvosloj z makroskopskega vidika opišemo z lastnostmi, kot so: kapacitivnost, debelina, upornost oziroma prevodnost in porušitvena napetost. Vsaka izmed teh lastnosti potrebuje svoj princip merjenja. Meritve omenjenih lastnosti večinoma temeljijo na tokovnem oziroma napetostnem vzbujanju ravninskega lipidnega dvosloja in merjenju njegovega napetostnega oziroma tokovnega odziva [5]. Postopki priprave lipida so časovno in tehnično zahtevni. Po postavitvi ravninskega lipidnega dvosloja preverimo ali smo ravninski lipidni dvosloj zgradili z merjenjem toka ob vzbujanju s 100 µs pulzom amplitude 100 mV. Če je tok zanemarljivo majhen, izmerimo kapacitivnost po metodi razelektritve pulza ter ocenimo kvaliteto zgrajenega lipidnega dvosloja. Za tem ravninski lipidni dvosloj lahko preučujemo na različne načine, merimo njegovo upornost in kapacitivnost skozi čas z impedančno metodo ali pa uporabimo linearno naraščajoč signal, da ravninski lipidni dvosloj porušimo Slika 2: Prikaz povezav med elementi sistema. Osrčje sistema je razvojna platforma Red Pitaya. Komora za tvorjenje lipida vsebuje 4 Ag-AgCl elektrode. Elektrodi RE1 in RE2 merita napetost preko ravninskega lipidnega dvosloja. Elektrodi CE1 in CE2 uporabimo za napetostno vzbujanje (ang: voltage clamp, na sliki: VC) ter posredno merjenje toka preko ravninskega lipidnega dvosloja. V vsako polovico komore je povezana svoja črpalka, ki skrbi za dvigovanje in spuščanje gladine pri tvorjenju ravninskega lipidnega dvosloja po metodi Montal-Muller. in izmerimo porušitveno napetost [6]. Poizkusi so lahko zelo zamudni saj trajajo tudi po več ur ali cel dan. Namen študije je razvoj avtonomnega merilnega sistema, ki poenostavlja, avtomatizira postopke gradnje ravninskega lipidnega dvosloja in merjenja električnih lastnosti (slika 2). možnosti, da uporabnik lahko sam sestavi protokol merjenja iz osnovnih funkcionalnosti. 2 Sistem za avtonomno merjenje električnih lastnosti ravninskega lipidnega dvosloja Sistem je zastavljen več nivojsko (slika 3). Fizični nivo predstavlja sam ravninski lipidni dvosloj. Nad fizičnim nivojem je strojni nivo, ki predstavlja vezje za manipulacijo signalov in preklapljanje funkcionalnosti, kjer se nahajajo ojačevalniki in atenuatorji vzbujalnih signalov ter vezji za merjenje toka in napetosti. V srcu sistema je programski nivo z razvojno platformo Red Pitaya z 32-bitnim procesorjem DUAL CORE ARM CORTEX A9 in FPGA vezjem Xilinx Zynq 7010 SOC. Red Pitaya omogoča direktno izvajanje programskih skript preko SSH terminala ali pa lahko na njej postavimo SCPI IPv4 strežnik, do katerega nato lahko dostopamo iz oddaljene naprave. Prav to lastnost izkorišča interakcijski nivo, ki predstavlja dejanski uporabniški vmesnik, namenjen končnim uporabnikom. Uporabnik s sistemom upravlja preko orodja MATLAB in dodatnega paketa Instrument Control Toolbox, za katerega smo izdelali enostaven uporabniški vmesnik na podlagi standardnih ukazov za krmiljenje programirljivih instrumentov – SCPI (ang: Standard Commands for Programmable Instruments). Prednost tovrstnega uporabniškega vmesnika je v 290 Slika 3: Shematski prikaz nivojev sistema. 2.1 Avtonomno tvorjenje ravninskega lipidnega dvosloja Ravninski lipidni dvosloj tvorimo po metodi dviganja in spuščanja gladine z uporabo dveh neodvisnih laboratorijskih injekcijskih črpalk WPI ALADDIN1000. Črpalke krmilimo preko RS-232 povezave po protokolu UART. Prečrpani volumen in hitrost črpanja črpalk sta programsko nastavljiva na C++ nivoju in sta trenutno nastavljeni na 1 ml s hitrostjo 1 ml/min. Uporabili smo injekcije volumna 5 ml. 2.2 Napetostno vzbujanje ravninskega lipidnega dvosloja Lastnosti ravninskega lipidnega dvosloja merimo z metodo napetostnega vzbujanja (ang: voltage clamp), kjer ravninski lipidni dvosloj vzbujamo s poljubno napetostjo in merimo tok preko ravninskega lipidnega dvosloja. Sistem omogoča, da si uporabnik izbere amplitudo vzbujalnega napetostnega signala ter njegovo obliko (pravokotni impulz, rampa, sinusni signal). Signal na izhodu digitalno-analognega pretvornika Red Pitaye ima amplitudo ±1 V. Ker potrebujemo amplitude od ±50 mV do ±5 V signal primerno ojačamo oziroma slabimo. V ta namen smo izdelali dodatno vezje z ojačevalnikom in atenuatorjem, ki omogočata napetostno slabljenje oz. ojačenje izbranega signala. Med ojačenjem in atenuacijo izbiramo digitalno s CMOS stikalom MAX333ACUP. Vrednost ojačenja ali atenuacije nastavimo z dvema digitalnima potenciometroma, integriranima v vezju AD5262BRU2. Potenciometer ima razpon od 60 Ω do 20 kΩ. Omogoča 256 različnih vrednosti s korakom 78 Ω. Krmilimo ga z 9-bitnim ukazom preko SPI vodila. Ukaz pošljemo v obliki dveh 8-bitnih besed, kjer prvih 7 bitov nastavimo na 0, čemur sledi naslovni bit za izbiro enega od dveh potenciometrov, temu sledi 8 bitov s številsko vrednostjo, ki odgovarja želeni upornosti. Pretvorbo med upornostjo in zahtevano številsko vrednostjo za nastavljanje potenciometra izvedemo v C++ programskem nivoju. 2.3 Merjenje toka in napetosti Tok preko lipidnega dvosloja merimo posredno s sklopom dveh operacijskih ojačevalnikov in. Prva stopnja je tokovno napetostni pretvornik in uporablja ojačevalnik LMP7721, druga stopnja z ojačevalnikom OPA627 obrača fazo za 180° in vhodni signal deli z 10 (slika 4). Slika 4: Vezava ampermetra. Z digitalno izbiro upora RA izberemo želeno območje merjenja toka (tabela 1). V drugi stopnji merilnika signal fazno obrnemo, upora Ri in 10Ri sta v razmerju 1:10. S tem napetostni signal delimo z 10, da ne bi prišli v nasičenje operacijskih ojačevalnikov. 291 Z uporom RA na prvi stopnji dosežemo različna območja merjenja toka (tabela 1). Izbiro izvedemo z izbirnikom 74HC4051D v C++ programskem nivoju. Tabela 1: Območje merjenja toka v odvisnosti od izbrane upornosti RA. RA [Ω] Tok [A] 10 k 500 µ 10 k 50 µ 1M 5µ 10 M 500 n 100 M 50 n 1G 5n 10 G 500 p Pravilno upornost določimo algoritemsko na programskem nivoju. Iz odčitane napetosti na izhodu druge stopnje in znanih upornosti RI nato v programskem nivoju izračunamo vrednost toka. Napetost na lipidnem dvosloju odčitamo neposredno preko elektrod RE1 in RE2 (slika 2) z integriranim intsrumentacijskim ojačevalnikom AD8250ARMZ. Red Pitaya omogoča nastavljanje frekvence vzorčenja merjenih signalov na 6 različnih vrednosti: 125 MSps, 15,62 MSps, 1,953 MSps, 122,070 kSps, 15,258 kSps ter 1,907 kSps. Celoten sistem Red Pitaya -> IPv4 -> MATLAB ima maksimalno uporabljeno frekvenco vzorčenja 15,62 MSps. 3 Krmiljenje sistema Ciljni uporabnik našega sistema je raziskovalec v laboratoriju. Ročno izvajanje poskusov na ravninskih lipidnih dvoslojih je zamudno. Preko uporabniškega vmesnika, ki smo ga razvili, ima uporabnik možnost krmiliti sistem z orodjem MATLAB in standardnimi ukazi SCPI, kar omogoča hitrejše in avtomatizirano tvorjenje ravninskega lipidnega dvosloja, samodejno shranjevanje izmerjenih vrednosti in spremljanje meritev v realnem času. Na ta račun smo povečali časovno učinkovitost meritev, njihovo primerljivost ter zmanjšali čas, ki ga raziskovalec porabi za pripravo in izvedbo poizkusa. 3.1 Format ukazov SCPI Standard SCPI (ang: Standard Commands for Programmable Instruments) je definiran kot dodatek k standardu IEEE 488.2-1987. Določa sintakso ukazov za krmiljenje programirljivih instrumentov. Prvič je bil predstavljen leta 1990. SCPI ukazi so lahko bodisi nastavitve (set), bodisi povpraševanja (query). V prvem primeru nastavimo določeno lastnost instrumenta (npr.: izberemo obliko ter amplitudo vzbujalnega signala, nastavimo območje merjenja, prožimo signale, …), v drugem pa iz instrumenta preberemo številsko vrednost (npr.: odčitamo izmerjeno napetost in tok). Medsebojno podobni in povezani ukazi so velikokrat organizirani v drevesno strukturo. Med posameznimi besedami v ukazu je dvopičje. Ukazi za povpraševanje se zaključijo z vprašajem. 3.2 SCPI paradigma na Red Pitayi 4 Diskusija Red Pitaya ima že izdelan sistem SCPI ukazov, ki krmilijo osnovne funkcije sistema, kot so prižiganje led diod ali postavljanje digitalnih izhodov. To nam daje iztočnico za razvoj novih ukazov. Cilj je namreč, da bi preko SCPI uporabili tudi funkcije iz C++ programskega nivoja. Strežniški program, ki izvaja SCPI komunikacijo, scpi-server, je del C++ programskega nivoja. Zato je potrebno vse dodatne ukaze za nastavitev dodanih ojačevalnikov ter funkcijska zaporedja napetostnega vzbujanja ter merjenja toka ali napetosti dodati k kodi SCPI strežnika kot nove funkcije. Pri vsaki spremembi na C++ programskem nivoju moramo prevesti program z gcc prevajalnikom Red Pitaje. SCPI strežnik Red Pitaye posebej definirane podatkovne tipe in makre, ki jih moramo pri razvoju funkcij uporabljati. 3.3 SCPI in MATLAB Za krmiljenje instrumentov iz okolja MATLAB potrebujemo poseben paket t.i. Instrument control toolbox. Komunikacija z instrumentom poteka preko LAN omrežja s protokolom IPv4. Komunikacijo vzpostavimo s sledečim delom kode: IP = 'xxx.xxx.xx.xxx'; port = 5000; tcpipObj=tcpip(IP, port); fopen(tcpipObj); tcpipObj.Terminator = 'CR/LF'; Sistem smo razširili z avtonomnim tvorjenjem ravninskih lipidnih dvoslojev s pomočjo laboratorijskih injekcijskih črpalk ter vzbujanjem ravninskega lipidnega dvosloja z napetostjo in merjenjem toka in napetosti. Z uporabniškim vmesnikom na podlagi SCPI ukazov in orodja MATLAB smo omogočili razvoj poljubnih merilnih protokolov. Modularnost sistema omogoča kasnejšim razvijalcem dodajanje novih funkcionalnosti, ki bi jih raziskovalci lahko potrebovali. Zanimiv dodatek bi bili denimo spremljanje temperature, v namen preučevanja temperaturne odvisnosti električnih pojavov na ravninskem lipidnem dvosloju. Morebitne razširitve sistema bomo lahko enostavno vključili v SCPI vmesnik. V prihodnosti moramo preučiti možnosti, da komunikacijo izvedemo brez uporabe programa MATLAB, saj ni vedno nujno, da je le-ta kot licenčni programski paket tudi dostopen. Red Pitaya omogoča podatkovno povezovavo in krmiljenje preko SSH (ang: Secure Shell) iz brskalnika, kar pa omogoča le izvajanje programov na Red Pitayi in ne omogoča uporabe SCPI. Ena or možnosti je tudi uporaba programskega jezika Python, vendar pa bomo morali v prihodnosti sprogramirati funkcije za krmiljenje sistema za merjenje lastnosti ravninskih lipidnih dvoslojev. Zahvala IP naslov Red Pitaye uporabnik pridobi s pomočjo ukaza arp –a in MAC naslova, ki je podan na sami Red Pitayi. Ukaze za nastavitve pošiljamo s funkcijo fprintf(), ukaze za povpraševanja pa s funkcijo query(). Primer: fprintf(tcpipObj, 'LBK:TESTPUMP WDR'); txt = query(tcpipObj, 'LBK:ASK1?'); S prvim ukazom prožimo črpanje črpalk v smeri iz komore (ang: WDR - withdraw), z drugim pa prebere tekstovno vrednost iz pomnilnika na Red Pitayi. Vsi ukazi, ki smo jih izdelali se začnejo s končnico LBK. V trenutni različici sistema uporabnik lahko izmeri odziv toka in napetosti na ravninskem lipidnem dvosloju na napetostno vzbujanje s tremi vrstami signalov. Izmeri kapacitivnost ravninskega lipidnega dvosloja in z meritvijo oceni njegov obstoj in kvaliteto. Uporabnik ima na voljo seznam funkcionalnosti, njihove odgovarjajoče SCPI ukaze, možnost izrisa in shranjevanja delnih rezultatov, ter spremljanja meritev v realnem času. S kombiniranjem funkcionalnosti, ki jih omogoča MATLAB (skriptanje, shranjevanje v razne tekstovne in slikovne formate) in SCPI ukazov, ki smo jih razvili, si lahko uporabnik zastavi poljuben protokol merjenja. 292 Raziskovalni program št. P2-0249 je sofinancirala Javna agencija za raziskovalno dejavnost Republike Slovenije iz državnega proračuna. Literatura Napaka! Vira sklicevanja ni bilo mogoče najti. Miklavčič, Damijan (ed), Springer International Publishing 2017, Handbook of electroporation – chapter 1 (pp 1 - 259) [2] Kotnik T, Kramar P, Pucihar G, Miklavčič D, Tarek M. Cell membrane electroporation – Part 1: The phenomenon. IEEE Electr. Insul. M. 28(5): 14-23, 2012. [3] P. Mueller, D.O. Rudin, H.T. Tien, W.C. Wescott, Methods for the formation of single bimolecular lipid membranes in aqueous solution, J. Phys. Chem. 67 (1963) 534–535. [4] Montal M, Mueller P., Formation of bimolecular membranes from lipid monolayers and study of their electrical properties, Proc Natl Acad Sci U S A. 1972 Dec;69(12):3561-6 [5] Kramar P, Miklavčič D, Kotulska M, Maček-Lebar A. Voltage- and current-clamp methods for determination of planar lipid bilayer properties. In Iglic A (ed.), Advances in Planar Lipid Bilayers and Liposomes, Volume 11, Elsevier, Amsterdam, 2010, pp. 29-69. [6] Sabotin I, Maček Lebar A, Miklavčič D, Kramar P. Measurement protocol for planar lipid bilayer viscoelastic properties. IEEE T. Diel. El. Insul. 15: 12361242, 2009. Safety and certification of clinical electroporators Aleksandra Cvetkoska, Damijan Miklavčič, Matej Reberšek University of Ljubljana, Faculty of Electrical Engineering, Tržaška 25, 1000 Ljubljana, Slovenija E-mail: aleksandra.cvetkoska@fe.uni-lj.si Abstract. "Quality means doing it right when no one is looking." – Henry Ford. Not many of us are aware of what it takes to develop a device. Developing a device can be easy, but doing it by standards and regulations, i.e. assuring safety, quality and efficiency, can be quite challenging. Getting approval for selling the device on the market and having a post-market surveillance takes additional effort. This is especially demanding for manufacturers when developing and manufacturing a medical device where patient’s safety comes at first place. In this paper we present some of the requirements with an emphasis on safety of clinical electroporators, standards to be considered and medical regulation to be followed in order to get approval for selling a clinical electroporator on the European market. 1 Introduction The phenomenon termed electroporation stands for the event where cells or tissues are exposed to high-voltage (HV), short-duration pulses which increase the plasma membrane permeability. Thus, transmembrane transport of molecules that are otherwise unable to cross the membrane is enabled [1]. The pulses are generated by a pulse power generator known as an electroporator and delivered to the load via electrodes. Currently, electroporation is widely used for different applications in biomedicine, biotechnology [2], food technology and environmental science [3]. Electroporation is already a well-established method in medicine, where combined with administration of otherwise low-permanent chemotherapeutic drugs to tumor cells, brings a new way for efficient antitumor therapy called electrochemotherapy (ECT) [4]. Electroporation in medicine [5] is also used as a method for ablation of malignant tissue using nonthermal irreversible electroporation (IRE) [6]. Moreover, it is applied in the field of gene electrotransfer (GET) for delivering DNA molecules to cells as a non-viral gene delivery method. In all of these cases, HV electroporators for pulse generation are used which should not introduce a potential risk for adverse event both for the patient and operator or interfere with other (life-supporting) devices. Therefore, electroporators used in clinical environment are considered to be medical devices and thus, patient and operator safety has to be ensured under both normal and single-fault conditions. Furthermore, clinical electroporators, as medical devices are obligated to meet medical standards and follow requirements determined by local medical regulations [7], e.g. in US they are subject to Food and Drug Administration (FDA) and in Europe, they fall ERK'2019, Portorož, 293-296 293 under the new Medical Device Regulation (MDR) 2017/745 which is intended to harmonize the laws related to medical devices in order to get approval for selling the device on the market – get a certification mark (CE). This regulation is meant to ensure medical device’s safety and efficacy and it will be fully applied in May 2020. In United Stated, FDA is responsible for regulating companies who manufacture, repackage, relabel and/or import medical devices. 2 Safety as part of the development To help verify the safety of medical devices, electrical safety standards have been established in the United States (US), European countries and other parts of the world. Standards can differ in criteria, measurements and protocols. The International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC) provide standards worldwide, including standards for medical electrical equipment. The first medical standard for medical electrical equipment, IEC 60601 was published in 1977 which is a family of technical standards whose scope covers the safety, essential performance and electromagnetic compatibility of medical electrical equipment and systems. As of 2011 it consists of a general standard for medical electrical equipment, 10 collateral standards and about 60 particular standards. Collateral standards define the general requirements for certain aspects of safety and performance. Particular standards define requirements for specific products or specific measurements built into products and explain how to simplify implementation of the general standard to a particular device type. In spite of the 60 particular standards, a particular standard for clinical electroporators currently, does not exist. Therefore, it will be necessary to define additional rules for safe manufacturing and use of clinical electroporators as relatively new medical devices, in addition to those defined by ISO and EN/IEC standards. Safety for all medical devices have to be predominantly considered according to EN 60601-1:2006/A1:2013 in EU or IEC 60601-1:2005/A1:2012 in US. Thus, we point to the most important safety key factors for clinical electroporators considering the general standard for basic safety and essential performance for medical electrical equipment EN 60601-1:2006/A1:2013. 2.1 Voltage and energy limitations As clinical electroporators are high-voltage (HV) medical devices, according to the standard EN 60601-1:2006/A1:2013, protection against electric shocks must be provided and thus, voltage and energy should be limited. The voltage to earth or to other accessible parts shall not exceed 42.4 V peak AC (~30 V RMS) or 60 V DC in normal condition or in single fault condition. The DC limit of 60 V applies to DC with not more than 10 % peak-to-peak ripple. If the ripple exceeds that amount, the 42.4 V peak limit applies. The energy dissipated shall not exceed 240 W for longer than 60 s, or the stored energy available shall not exceed 20 J at a potential of 2 V or more. 2.2 Insulation and leakage currents Clinical electroporators are medical devices type BF (Body Floating), fitted in protection class II medical devices. The applied part is isolated from all other parts of the equipment to such a degree that the leakage current flowing through a patient to ground does not exceed the allowable level, even when the voltage between the applied part and ground equals to 110% of the rated power line voltage. This means that the protection will not rely only on basic insulation (only on device’s enclosure), but it will include an additional safety precaution such as double or reinforced insulation (Figure 1). Insulation is not only defined as a solid insulating material applied to a circuit, but also to spacing that establishes creepage distances and air clearance between parts and should protect both from electric shock and ensure that the design is fail-safe. As clinical electroporators are high-voltage systems, reinforced insulation has to be used. Reinforced insulation (Figure 1.b) combines the equivalent of double isolation (Figure 1.a) into one barrier and provides reduced power consumption and increased efficiency while maintaining the leakage currents within the limitation allowed by the standard EN 60601-1:2006/A1:2013 (Table 1 as stated in the standard, section 8.7.3, Table 3). occur in the power cords and other components of the device and they are conducted away through the earth wire, so they do not affect the patient. The problem occurs when broken earth wires cause the leakage current to be conducted to the patient through the medical device. This is the most common electrical fault in hospitals and precautions have to be taken. Table 1. Leakage currents limitations under normal conditions (NC) and single fault conditions (SFC) for type BF medical device Leakage current (µA) Earth leakage current (mA) Touch current (µA) Patient leakage current AC (µA) Patient leakage current DC (µA) Patient leakage current on applied part (µA) Patient auxiliary current AC (µA) Patient auxiliary current DC (µA) NC 5 100 100 10 - SFC 10 500 500 50 5000 100 10 500 50 Clinical electroporators must be designed with such features that prevent generating dangerous leakage currents and propagating leakage currents from other faulty devices. One way to minimize the leakage currents is by using galvanic separation between primary circuit and applied part. This protective separation can be made in the power supply circuit or at the output of the device. In this way, sensitive circuity can be isolated from high-voltage environments using optocoupler-based (for data signals) or transformerbased (for power signals) approaches. 2.3 Creepage distances and air clearances However, in order to comply with the EN 60601-1:2006/A1:2013 insulation requirements, clinical electroporators must also meet componentcreepage, clearance and test-voltage requirements depending on the insulation level of the interface. Creepage distance is defined as the shortest distance along the surface of the insulating material between two conductive parts and the air clearance is the shortest distance through air between two conductive parts (Figure 2). Figure 1. a) basic + supplementary = double insulation; b) reinforced insulation Leakage current can be resistive or capacitive. The reason for resistive current leakages is that no insulation material is a perfect insulator and all insulators do conduct electricity to some degree. On the other hand, capacitive leakage currents are caused by alternating currents passing through capacitances in transformers and between conductors. Leakage currents normally 294 Figure 2. Air clearance and Creepage distance The minimum separation distance between elements of two parts is determined by the working voltage between parts as well as by the insulation type (basic or reinforced) required to afford protection against electrical shock. (Table 2 as stated in the standard EN 60601-1:2006/A1:2013 section 8.9.1.15, Table 12). Table 2. Minimum creepage distances and air clearances providing means of patient protection for reinforced insulation Working Voltage (VDC) 85 177 354 566 707 934 1061 2.4 Working Voltage (VRMS) 60 125 250 400 500 660 750 Creepage (mm) 4.6 6 8 12 16 21 24 Air Clearance (mm) 2.4 3.2 5 7 9 12 13 Electromagnetic Compatibility (EMC) and Electromagnetic Interference (EMI) To meet EMC requirements presented in the collateral standard EN 60601-1-2:2015 – Medical electrical equipment – Part 1-2: General requirements for basic safety and essential performance – Collateral standard: Electromagnetic disturbances – Requirements and tests, clinical electroporators must be immune to electrostatic discharge, radio-frequency (RF) interference from nearby transmitters and other sources and power disturbances that can cause device malfunctions. In addition to these requirements, the electroporator’s own emissions, through either conduction or radiation, may interfere with communications sources or other equipment and thus, should be minimal. As stated in the standard, the devices must have electrostatic discharge protection as high as 8 kV through air and 6 kV on contact. They must be immune at frequencies of 80 MHz to 2.7 GHz and 3 V/m of RF electromagnetic field for non-life supporting equipment (10 V/m for lifesupporting equipment). The device has to be tested according to these tests and prove that it will not have any component failures, changes in programmable parameters, resetting to factory defaults, changes in operating modes or false alarms. 3 Medical Device Regulation 2017/745 and standards to be considered Medical Device Regulation 2017/745 (MDR) is composed of 17 Annexes and it is intended to harmonize the laws related to medical devices within the European Union [8]. This regulation is meant to ensure medical device’s safety and efficacy and it will be fully applied in May 2020. Each manufacturer of medical devices must submit technical documentation providing evidence of conformity with the Regulation in order to obtain certification mark (CE) for EU. During the development and manufacturing phase of the clinical electroporator it is important to be acquainted with the MDR by studying the technical documentation needed to obtain a CE mark, setting the general requirements regarding design and construction, 295 providing the necessary standards and presenting relevant evidence that all the requirements are met by standards. The new regulation is more challenging for the manufacturers as there are more requirements that need to be considered, different classification system, pre-clinical and clinical testing to be done and more documentation to be prepared. For all medical devices, MDR provides detailed instruction on the minimum content and the necessary elements to be included in the technical documentation which is clearly stated in Annexes II and III of the MDR (Table 3). Annex VIII of the MDR determines the device’s classification to be I, IIa, IIb or III. Classification is risk-based which means that the higher the risk the medical device introduces to the patient, the higher the class will be. Clinical electroporator is considered to be an active, therapeutic and high-voltage medical device which is classified as class IIb medical device by Annex VIII of the MDR. The pulses are delivered to the tissue by electrodes as a necessary but separate medical device. If the electrodes are placed on the patient’s skin, they are considered to be non-invasive medical accessories, classified as class I. If the electrodes are intended to be placed inside the patient’s body, they are considered to be invasive medical accessories, classified as class III. Table 3. Technical documentation’s content 1. 2. 3. 4. 5. 6. 1. 2. 3. (a) Annex II – Technical Documentation: Device description and specification, including variants and accessories 1.1 Device description and specification 1.2 Reference to previous and similar generations of the device Information to be supplied by the manufacturer Design and manufacturing information General safety and performance requirements Benefit – Risk analysis and risk management Product verification and validation 6.1 Pre-clinical and clinical data 6.2 Additional information required in specific cases (b) Annex III – Technical Documentation on Post-Market Surveillance: The Post-Market Surveillance Plan Periodic Safety Update Report Post-Market Surveillance Report Within technical documentation, manufactures must present suitable evidence to show that the device fulfills the requirements detailed in Annex I in consideration with the related standards. At the beginning of the process, quality management system has to be implemented in compliance with the standard EN ISO 13485:2016/AC:2016. Emphasis is put on the safety of the patient due to the high voltage pulse generator that should not be hazardous for patients as well as for operators. In this respect, clinical electroporators should meet the standard for risk analysis EN ISO 14971:2012 and the general standard for basic safety and essential performance of medical devices EN 60601-1:2006/A1:2013 to prove that the benefits for the patient always outweigh the risks incorporated with the device. Clinical electroporators must also meet collateral standards such as EN 60601-1-2:2015 for electromagnetic disturbances and EN 60601-1-6:2010 for usability, which has to be followed by EN ISO 62366:2008. Since clinical electroporators are programmable medical devices, standards, such as EN ISO 62304:2006/AC:2008 and IEC 80002-1:2009 for medical device software should be considered. For battery powered clinical electroporators the standard for safety requirements for secondary cells and batteries, IEC 62311:2019 should be taken into consideration. The electrodes are medical devices which will be used as accessories together with the clinical electroporator and are in direct contact with the patient’s skin. However, certification should be done separately. As stated in EN 60601-1:2006/A1:2013, medical electrical equipment or system and their parts or accessories intended to come into direct or indirect contact with biological tissues, cells or body fluids shall be assessed and documented according to the guidance and principles given in the ISO 10993 series of standards. Therefore, the most important standards to be considered are the standards for biological evaluation of medical devices EN ISO 10993:2009 (parts: -1, -5 and -10) as non-invasive or invasive electrodes are considered to be medical devices to be put on patient’s skin or inside the patient’s body respectively. 4 Conclusions Electrical safety is a topic of very high importance in medical device quality assurance. Applying the principles and requirements described by the safety standards is important and should be considered from the beginning of the design for every medical electronic device. It is important for the device to pass all electrical safety tests in order to be accepted for further testing by relevant standards and certification. Medical device regulation and applicable standards are there to help the designer develop a device that will provide benefits to the patient while reducing foreseeable risks. When it comes to electrical safety and certification of a clinical electroporator currently, we have to consider all previously mentioned standards and medical device regulation to assure safety of the device, since a particular standard for clinical electroporator does not exist. We have to make sure to choose the proper insulation, limit the leakage currents, voltage and energy within the limits allowed by the standard EN 60601-1:2006/A1:2013, meet the requirements for electromagnetic compatibility presented in the collateral standard EN 60601-1-2:2015, follow all device’s relevant standards and consider the fault operations while maintaining quality assurance, efficiency and smooth operation of the device. The manufacturer has to carry out the conformity assessment, prepare the required technical documentation to include the 296 elements set out in Annexes II and III and continuously ensure that the technical documentation is up to date. As the clinical electroporators market grows, having a particular standard can speed up this process and enable the harmonization of all commercial, certified clinical electroporators to improve the safety, quality and efficiency of these devices in order to provide even more effective treatment. Acknowledgements This study was supported by the Slovenian Research Agency (ARRS) (MRIC UL IP-0510, P2-0249). The investment is co-financed by the Republic of Slovenia and the European Regional Development Fund. References [1] T. Kotnik, L. Rems, M. Tarek, and D. Miklavčič, “Membrane Electroporation and Electropermeabilization: Mechanisms and Models,” Annu. Rev. Biophys., vol. 48, no. 1, pp. 63–91, May 2019. [2] T. Kotnik, W. Frey, M. Sack, S. Haberl Meglič, M. Peterka, and D. Miklavčič, “Electroporation-based applications in biotechnology,” Trends in Biotechnology, vol. 33, no. 8, pp. 480–488, Aug. 2015. [3] S. Haberl, D. Miklavcic, G. Sersa, W. Frey, and B. Rubinsky, “Cell membrane electroporation-Part 2: the applications,” IEEE Electr. Insul. Mag., vol. 29, no. 1, pp. 29–37, Jan. 2013. [4] D. Miklavčič, B. Mali, B. Kos, R. Heller, and G. Serša, “Electrochemotherapy: from the drawing board into medical practice,” BioMed Eng OnLine, vol. 13, no. 1, p. 29, 2014. [5] M. L. Yarmush, A. Golberg, G. Serša, T. Kotnik, and D. Miklavčič, “Electroporation-Based Technologies for Medicine: Principles, Applications, and Challenges,” Annu. Rev. Biomed. Eng., vol. 16, no. 1, pp. 295–320, Jul. 2014. [6] H. J. Scheffer et al., “Irreversible Electroporation for Nonthermal Tumor Ablation in the Clinical Setting: A Systematic Review of Safety and Efficacy,” Journal of Vascular and Interventional Radiology, vol. 25, no. 7, pp. 997–1011, Jul. 2014. [7] M. Rebersek, D. Miklavcic, C. Bertacchini, and M. Sack, “Cell membrane electroporation-Part 3: the equipment,” IEEE Electr. Insul. Mag., vol. 30, no. 3, pp. 8–18, May 2014. [8] “REGULATION (EU) 2017/ 745 OF THE EUROPEAN PARLIAMENT AND OF THE COUNCIL - of 5 April 2017 - on medical devices, amending Directive 2001/ 83/ EC, Regulation (EC) No 178/ 2002 and Regulation (EC) No 1223/ 2009 and repealing Council Directives 90/ 385/ EEC and 93/ 42/ EEC,” p. 175. Expanding the power pulse duration range for electroporation Anja Zajc, Damijan Miklavčič, Matej Reberšek University of Ljubljana, Faculty of Electrical Engineering, Tržaška cesta 25, 1000 Ljubljana, Slovenia E-mail: anja.zajc@fe.uni-lj.si Abstract. A universal power pulse generator in terms of power pulse duration would improve the capability of exploration of the phenomena of electroporation. This paper is focused on finding a method for expanding the range of the pulse duration of the power pulse generators considering the power of the pulse. A power pulse generator with an unlimited maximum pulse duration is designed according to the results of the research and tested. The pulse amplitude can be adjusted from 0 V to 500 V. An 80 ns 500 V pulse with rise and fall times of 6 ns is generated with a SiC power device. 1 Introduction Despite the wide and promising area of usage of electroporation in food industry as well as in medicine for cancer treatment the phenomena of electroporation has still not been entirely explored [1]. In order to generate credible and comparable analysis on the permeabilization effect of different electroporation pulse properties on the biological cells a continuously adjustable power pulse forming device is necessary. The pulse range of the power pulse generating devices is limited [2]. Power switch based pulse generators introduce a wide and continuously adjustable pulse duration range but are limited with the switching speed. Lower pulse durations can though be achieved with pulse forming network based pulse generators which are by their operation principle limited to a single pulse length or are sensitive to load resistance [3]. Unique tuning of the pulse forming networks prevents a much needed continuous setting of the pulse properties. Moreover, the number of devices needed for a complete overview of the permeabilization process with respect to the pulse parameters, namely pulse duration, pulse amplitude and pulse current is blocking the research in the field of electroporation. Any step further in increasing the range of the pulse parameters of a single pulse generator is a step forward to understanding the phenomena of the electroporation and further development of electroporation based technologies and treatments [4]. It is obvious that pulse forming networks cannot present a basis for expanding the pulse duration range of an electroporator device, therefore this research is grounded on pulse generators based on power devices. The generation of longer power pulses with the power devices is not exceptionally challenging, therefore this study is focused on the generation of short power pulses. 2 Methods and materials Despite GaN (gallium nitride) based power devices being the leading semiconductor technology for the fast ERK'2019, Portorož, 297-300 297 switching applications the SiC (silicon carbide) based power devices achieve higher voltage carrying capabilities due to their physical structure [5]. The opposing positioning of the source and drain in the SiC power cells with respect to the substrate results in a higher breakdown voltage in comparison to GaN cells which have the drain and source on the same side of the substrate and very close to one another. Currently the maximum drain-source voltage 𝑣𝑑𝑠 of the GaN based power devices reaches 650 V while the maximum drainsource voltage 𝑣𝑑𝑠 of SiC based power devices reaches up to 1700 V. A serial connection of power devices 𝑃𝑆 (Power Switch) is quite challenging and is so far limited with the count number of the serially connected power devices 𝑃𝑆. Consequently, the SiC devices present the future for the high voltage, high current applications such as electroporation. Accordingly, this study is focused in increasing the switching speed of SiC MOSFETs. Additionally, it is known that the cells of the power devices have a much better switching performance than being achieved [6]. The driving of the power switches does not extract the optimal performance out of the power cells. As the driving circuit contributes greatly to the power switch performance emphasis is put on the choice of the driving circuit topology and its design. 2.1 Pulse generator topology An overview of the driving circuit topologies for controlling power switches is performed. The NZID (Near Zero Interlock Delay) driving principle [6, 7, 8] topology (Figure 1) is chosen as the most suitable for a high frequency high power design. Figure 1. NZID driving circuit topology (Edge logic generates trigger pulses at every PWM change – Synchronized galvanic isolation ensures a synchronic transfer of the trigger pulses to the triggering circuit– Triggering circuit with powering generates triggering voltage ranged between the 𝑉𝑜𝑛 and 𝑉𝑜𝑓𝑓 – Inductor in a function of a ramp generating circuit forms the slope of the 𝑣𝐺𝑆 , enables the return of the excess energy and generates an over-sway) – Coupling transformer ensures the mirroring of both gate source driving signals 𝑣𝑔𝑠1 and 𝑣𝑔𝑠2 of the power switches 𝑃𝑆1 and 𝑃𝑆2 respectively. Aforementioned topology excludes the pre-set dead time 𝑡𝐷𝑇 . With no pre-set dead time 𝑡𝐷𝑇 a faster control and a faster responsiveness of the power switches are achievable. The level of freedom of the timing of the actual switch execution is narrowed due to the low propagation delays and low propagation delay differences. As a result of a more precise timing of the actual switch execution the minimum on- or off- time is shorter, wherein the on-time presents the pulse duration. Additionally, this topology offers a high driving current which helps to overcome the large capacitive currents caused by the combination of the Miller capacitance and fast drain-source voltage 𝑣𝑑𝑠 transients. Classical driver configurations use a gate resistor, therefore in order to overcome the Miller effect in said topologies the gate source voltage would have had to be overdriven for a short moment at every turn-on and turnoff and then reduced to a normal value to avoid the destruction of the power device. In contrary to the classical driving through a resistor the NZID topology provides an additional acceleration of the gate-source voltage transient due to a quasi-resonant driving through an inductor. It is the only available topology to ensure simultaneity of the gate-source voltages 𝑣𝑔𝑠1 and 𝑣𝑔𝑠2 due to the coupling of the gate-source voltages 𝑣𝑔𝑠 and low inductivity connections as an additional but obligatory condition for either parallel or serial connection of the power devices 𝑃𝑆. In comparison to classical driving the NZID driving offers very low propagation delay and therefore also low propagation delay differences. The NZID topology enables a continuous operation, maximum pulse duration is limited with the power supply and cooling body. 2.2 The increase of the switching speed There are quite a few factors that affect the speed of a single switch execution. A high driving current is needed to overcome the large capacitive currents and to speed up the switching process. Accordingly, in function of the trigger switches 𝑄1 and 𝑄2 (Figure 2) a complementary pair enhancement mode MOSFET, namely ZXMC3AMCTA by Diodes Incorporated, USA is used. The ZXMC3AMCTA has a very low turn-on delay time, namely 1.7 ns and a very low static drain-source on resistance 𝑅𝐷𝑆𝑜𝑛 , typically 0.1 Ω. Consequently, 𝑄1 and 𝑄2 are able to generate a high pulse source current of up to 13 A. The trigger switches 𝑄1 and 𝑄2 are only open for the time needed for the gate-source capacitance 𝐶𝑔𝑠1 or 𝐶𝑔𝑠2 of the corresponding power device 𝑃𝑆1 or 𝑃𝑆2 to be charged to either a turn-on gate-source voltage level 𝑉𝑜𝑛 or turn-off gate-source voltage level 𝑉𝑜𝑓𝑓 , whereas |𝑉𝑜𝑛 + 𝑉𝑜𝑓𝑓 | < ∆𝑉𝐺𝑆𝑚𝑎𝑥 . The negative value of the turn-off gate source voltage level 𝑉𝑜𝑓𝑓 accelerates the switch-off. The gate-source voltage 𝑣𝑔𝑠 is additionally increased by the inductance 𝐿𝑔 , which is the total inductance between the triggering circuit (𝑄1 and 𝑄2 ) and the switch cell comprising an added gate inductor, wiring and power device housing. The energy gathered in the 𝐿𝑔 during the charging process is released to the input capacitances of the power device, namely 𝐶𝑔𝑠 and the fluctuating Miller capacitance 𝐶𝑑𝑔 and is observed as an overshoot of the gate source voltage 𝑣𝑔𝑠 . The overshoot presents an additional energy to speed up the Miller plateau duration. A damping resistor 𝑅𝑔 is used to prevent an uncontrolled behavior of the power device 𝑃𝑆. The damping resistor 𝑅𝑔 reduces the ringing of the gate-source voltage 𝑣𝑔𝑠 , which could have caused an uncontrolled switching behavior of the power devices 𝑃𝑆. To prevent the due to the drain-source current changes ∆𝐼𝑑𝑠 induced voltages to effect the gate-source voltage 𝑣𝑔𝑠 a Kelvin source contact of the power device 𝑃𝑆 is used preferably. Figure 2. Control of an individual power device Not just a single switch execution also the repetition frequency of the switch execution is crucial for generation of very short pulses in the range of a few tens of nanoseconds. The shortest PWM pulse is decreased by shortening the interlock delay, as the actual time of the both power devices 𝑃𝑆1 and 𝑃𝑆2 being in the cutoff region. The interlock delay 𝑡𝐼𝐷 is minimized by eliminating the dead time 𝑡𝐷𝑇 . Even without any pre-set dead time 𝑡𝐷𝑇 an actual interlock delay 𝑡𝐼𝐷 does appear (Figure 3). The transient of the gate-source voltage 𝑣𝑔𝑠 cannot be instantaneous and additional few nanoseconds are needed for the gate-source voltage 𝑣𝑔𝑠 to reach the threshold voltage value 𝑉𝑡ℎ . The value of the interlock delay remains constant and is determined by the turn-on and turn-off voltage values 𝑉𝑜𝑛 and 𝑉𝑜𝑓𝑓 . The fine adjustments of the interlock delay 𝑡𝐼𝐷 are made with the choice of the gate inductor. Considering equations 1 and 2 the turn-on gate-source voltage level 𝑉𝑜𝑛 is chosen to be 8 V and the turn-off gatesource voltage level 𝑉𝑜𝑓𝑓 is - 10 V. (1) 𝑉𝑚 = 298 𝑉𝑜𝑛+𝑉𝑜𝑓𝑓 2 (2) The SiC devices cannot withstand the constant - 8 V of negative voltage 𝑉𝑜𝑓𝑓 needed to prevent the cross conduction. Additional circuit is added to cut the minimal 𝑣𝑔𝑠 value at maximum negative turn-off voltage 𝑉𝑜𝑓𝑓𝑚𝑎𝑥 to a safe -4 V for the power device 𝑃𝑆 being used. Furthermore, to increase the 𝑉𝑜𝑛 to 15 V that are needed to turn the power device on an additional circuit using the energy of the gate-source voltage 𝑣𝑔𝑠 is implemented into the design. Figure 3. Basic mirrored control voltages marked with a dotted line and actual gate-source voltages including a -4 V clamping and a 5 V increase with a solid line. The stages of the power devices 𝑃𝑆 and the 𝑡𝐼𝐷 are marked below. With such setting of the turn-on and turn-off gate source voltage levels 𝑉𝑜𝑛 and 𝑉𝑜𝑓𝑓 the mirroring voltage level 𝑉𝑚 is defined to be 3 V below the threshold voltage 𝑉𝑡ℎ , which is typically 2 V for the power device used. The 3 V difference is enough to compensate the temperature drift of the 𝑉𝑡ℎ . If an even shorter interlock delay 𝑡𝐼𝐷 is demanded said temperature drift of the threshold voltage 𝑉𝑡ℎ is to be detected with a feedback loop. The turn-on and turn-off gate source voltage levels 𝑉𝑜𝑛 and 𝑉𝑜𝑓𝑓 are changed within the software accordingly. An inductance of 15 nH of the gate inductor 𝐿𝑔 is used. The interlock delay is set to 5 ns. Additionally, the power devices 𝑃𝑆 are limited with a maximum voltage change rate (𝑑𝑣/𝑑𝑡). A serial connection of the power devices 𝑃𝑆 increases this 𝑑𝑣/𝑑𝑡 for a factor of the count number of the serially connected power devices 𝑃𝑆. 2.3 gate-source voltage 𝑣𝑔𝑠1 of the first group of power devices 𝑃𝑆1 and the gate-source voltage 𝑣𝑔𝑠2 of the second group of the power devices 𝑃𝑆2 with a coupling transformer having a coupling ratio of -1 (Figure 1). The coupling transformer is designed within PCB to have the coupling coefficient near to 1. The wiring of the coupled 𝑣𝑔𝑠1 and 𝑣𝑔𝑠2 needs to have a matching electric properties. The difference in inductance of said wiring would have caused a nonmatching propagation delay. Instead of equalizing the length which can still cause a difference in inductance due to different wiring path shape low inductivity connections are used. Minimizing the path inductance results in a lower inductance difference and a lower propagation delay difference. Additionally, the propagation delay is reduced to 1 ns. The inductivity of the MOSFET housing is summed up to the total inductivity of the entire power loop. Accordingly, besides to the 𝑣𝐷𝑆𝑚𝑎𝑥 , which needs to be as high as possible, the choice of the SiC MOSFET is based on its housing. TOLL housing is used as a housing with the lowest inductivity that is commercially available. Furthermore, the TOLL housing includes a Kelvin source contact. Pre-production samples of 900 V 65mΩ SiC MOSFET, namely C3M0065090J by Wolfspeed USA in TOLL housing are used in the test board. The TOLL housing includes a Kelvin source contact. According to the datasheet [9] this device performs the fastest possible switch in 32 ns (𝑡𝑟 + 𝑡𝑑(𝑜𝑛) + 𝑡𝑓 + 𝑡𝑑(𝑜𝑓𝑓) = 32 𝑛𝑠). 2.4 Test PCB board design In the high frequency applications parasitic effects of the system become more prominent and have to be considered within the design of the pulse generator (Figure 4). The increase of the pulse power Besides to the contribution of decreasing the shortest PWM pulse duration the synchronization of the gatesource voltages 𝑣𝑔𝑠1 and 𝑣𝑔𝑠2 presents a basis for increasing the pulse power. Synchronization of the gate source voltages 𝑣𝑔𝑠 is crucial for either a serial (voltage increase) or parallel (current increase) connection of the power devices or any combination of both. Synchronization is achieved by the choice of the components with a low propagation delay. The propagation delay of the driving circuit is 15 ns. To decrease the already small propagation delay differences a coupling transformer is placed between the gate-source voltages 𝑣𝑔𝑠 . A high quality coupling is made between 299 Figure 4. PCB board with marked DC link voltage 𝑉𝐷𝐶 , GND and output OUT Therefore, besides to the driver circuit board an additional DC link distribution board (Figure 4) is designed to reduce the alternating magnetic field induced disturbances (Figure 5). To reduce the costs of multilayer board, the DC link distribution board is on a different board. The DC link capacitors mounted are a 500 V 1 µF CeraLink ceramic capacitors by EPCOS, Germany. A cooling body is attached to the board for cooling the power devices in case of longer pulse durations. Figure 5. The magnetic field changes due to an alternating current direction induce disturbances of the DC link that are minimized within the improved configuration of the DC link distribution board (right) in comparison to a classical DC link configuration (left). Only one current direction is shown. 3 Results The pulse generator performance was measured with a calibrated Wavepro 7300A oscilloscope, HVD3206A differential voltage probe and CP031A current probe by LeCroy, USA. The DC link voltage was generated with a Fug HV power supply MCP 350-1250, by Fug, Germany. A resistor of 50 Ω was connected to the output on cables of about 0.5 m length. performance and simultaneously allows a continuous operation. Power device which is declared to perform a switch in 32 ns, is driven to perform a switch in 15 ns. The shape and polarity of the pulses is defined within the microprocessor and is not limited. Despite the NZID driving technology proves to be appropriate for the design of a power pulse generator with wide range of the power pulse properties, the pulse delivery is limited by the inductivity of the load loop, which includes also the cables to the electrodes and the electrodes of the electroporator. Said inductivity limits both the pulse amplitude and the pulse duration on the load and should be minimized in the upcoming designs. Based on the results of the parallel connected power devices, a serial connection is possible by adding additional windings with coupling ratio 1 to the coupling transformer and should be tested in the future. 5 Acknowledgment The authors would like to sincerely thank Edgar Ayerbe, from Wolfspeed, USA for providing the pre-production samples of low inductivity SiC MOSFETs. The investment is co-financed by the Republic of Slovenia and the European Regional Development Fund. Literature Figure 6. An 80 ns 500 V pulse 𝑈𝑂𝑈𝑇 generated on the ouput of the test board. Current through a 50 Ω load resistor is demonstrated. (50 ns/div, 100 V/div and 2 A/div) The PCB board generates an output voltage 𝑈𝑂𝑈𝑇 pulse of 80 ns duration and 500 V amplitude (Figure 6). Said pulse amplitude is limited by the DC link capacitors to 500 V. The pulse is stable regardless the DC link voltage value. The rise time is 6 ns. A 500 V switch is executed in about 15 ns. A minor overshoot is noticed, which does not reflect on the load current 𝐼𝐿𝑂𝐴𝐷 . The ringing of the output voltage is dumped with DC link capacitors. The load current 𝐼𝐿𝑂𝐴𝐷 at 500 V is 10 A. A large inductance of the load loop is noticed on the load current 𝐼𝐿𝑂𝐴𝐷 . Appearance of this inductance is obvious from the board design. According to the time constant of about 40 ns, this inductance was about 800 nH. The synchronization of the gate-source voltages 𝑣𝑔𝑠 of the parallel connected power devices is in the range of 1 ns. No problems with propagation delay of the gatesource voltages 𝑣𝑔𝑠 were detected. The interlock delay appears stable and is measured to be 5 ns. No crossconduction through the half bridge is detected. 4 Discussion and Conclusion Driving the power devices with the NZID (Near Zero Interlock Delay) topology speeds up the switch 300 [1] J. C. Weaver, K. C. Smith, A. T. Esser, R. S. Son, and T. R. Gowrishankar, “A brief overview of electroporation pulse strength–duration space: A region where additional intracellular effects are expected,” Bioelectrochemistry, vol. 87, pp. 236–243, Oct. 2012 [2] S. Haberl, D. Miklavčič, G. Serša, W. Frey, B. Rubinski: Cell membrane electroporation – Part 2: The applications, IEEE Electr. Insul. M. 29(1): 29-37, 2013 [3] M. Reberšek, M. Kranjc, D. Pavliha, T. Batista Napotnik, D. Vrtačnik, S. Amon, D. Miklavčič: Blumlein configuration for high-repetition-rate pulse generation of variable duration and polarity using synchronized switch control, IEEE T. Biomed. Eng. 56:2642-2648, 2009 [4] D. Miklavčič: Handbook of electroporation; Ljubljana, Slovenia, 2017 [5] A. V. Vertiatchikh, L. F. Eastman, Effect of drain-tosource spacing of AlGaN/GaN transistor on frequency response and breakdown characteristics [6] A. Zajc, F. Zajc, I. Zajc Zdešar, F. Zajc: NZID (Near Zero Interlock Delay) driving principle, PCIM Europe 2014, 20. - 22. May 2014, Nürnberg, Germany [7] F. Zajc: A method and apparatus for driving half bridge connected semiconductor power switches with a stable and extremely short interlock delay combined with a switching transition speed increase and a driving power consumption reduction, EP2805418B1, 2014 [8] F. Zajc: Method and apparatus for driving a voltage controlled power switch device, EP2618486B1, 2013 [9] Wolfspeet, Silicon Carbide Power MOSFET, C3M0065090J datasheet, Revised June 2019 Optimization of electroporation parameters for delivery of small molecules into primary human myotubes Mojca Pavlin1,2, Maša Kandušer1, Nives Škorja3,4, Sergej Pirkmajer3 1 Faculty of electrical engineering, University of Ljubljana Institute of Biophysics, Faculty of Medicine, University of Ljubljana 3 Institute of Pathophysiology, Faculty of Medicine, University of Ljubljana 4 Institute of Anatomy, Faculty of Medicine, University of Ljubljana 2 E-pošta: mojca.pavlin@fe.uni-lj.si;sergej.pirkmajer@mf.uni-lj.si Optimizacija parametrov eletroporacije za vnos majhnih molekul v primarne misične cevčice Abstract. Za vnos genov obstajajo različne metode in virusna transfekcija je trenutno metoda z najvišjo stopnjo vnosa. Vendar pa zaradi tveganja uporabe virusnih vektorjev v človeškem organizmu, ki lahko povzroči hude stranske efekte, obstaja potreba po alternativnih metodah. V zadnjih desetletjih je genska transfekcija z elektroporacijo postala ena najbolj obetavnih metod za nevirusni vnos genskega materiala za gensko terapijo in za DNA vakcinacijo. Lokalno dovedeni električni pulzi povečajo prepustnost membrane in omogočijo prenos plazmidne DNA (pDNA) ali kratkih RNA v celice. V zadnjem času se je genska elektrofekcija izkazala tudi kot zelo primerna metoda za genski vnos pri DNA vakcinaciji za zdravljenje raka, AIDS in drugih infekcijskih bolezni. Čeprav lahko vnašamo gene v različna tkiva, pa se je skeletna mišica pokazala kot idealno tarčno tkivo za vnos genov, saj je mišično tkivo enostavno dostopno, predstavlja velik delež telesa, ter omogoča dolgotrajno izražanje genov. Zaradi kompleksnosti in vivo raziskav pa je potrebno veliko postopkov najprej izvesti v bolj definiranem in vitro okolju. Humani mioblasti diferenciirani v in vitro pogojih v mišične cevčice predstavljajo zanimiv model skeletne mišice za optimizacijo vnosa malih molekul in plazmidne DNA. V tej študiji smo izvedli optimizacijo vnosa malih molekul z elektroporacijo in analizo preživetja na modelu humanih primarnih mišičnih cevčic. 1 Introduction In the last decades, in vivo gene transfer using electroporation (gene electrotransfer) has been established as an efficient non-viral method of delivery for gene therapies [1-3]. Importantly, in the last decade DNA electrotransfer was show to be a very successful approach for DNA vaccination strategies where electric pulses provide additional stimuli to immune system. Electroporation based DNA vaccination has been successfully applied for cancer treatment, AIDS and various infectious ERK'2019, Portorož, 301-304 301 diseases [2]. Specifically, skeletal muscle was found to be an ideal target tissue for electrotransfer since high efficiency of transfer could be obtained. Skeletal muscle represents large portion of body mass that is relatively easily accessible and in addition has several metabolic and physiological properties that make it a suitable target for novel biomedical applications [1-4]. In parallel, over the past two decades also short RNA based therapeutics emerged. Electroporation based delivery of short RNA (shRNA, siRNAs, miRNA) is already widely used for gene silencing and other therapeutic strategies [5-7]. The mechanisms of molecular delivery by electroporation are still being explored; however, in general the method is based on locally delivered electric pulses that can transiently increase membrane permeability and thus enable transfer of small molecules (drugs, fluorophores, short RNAs) and large molecules like plasmid DNA (pDNA) into the cells. Several steps that are crucial for successful gene electrotransfer were so far identified: i) electropermeabilization of the cell membrane, ii) contact of pDNA with the cell membrane (DNA-membrane complex), iii) translocation of pDNA across the membrane, iv) transfer of pDNA to and into the nucleus and v) gene expression [2,3,7-9]. However, there is no complete description of the mechanism of gene electrotransfer on a molecular level. Also, despite the routine use of the electrotransfer in biotechnological applications the efficiency in tissue still represent one of major limitations for use in clinical setting. Electroporation is a threshold phenomenon where permeabilization can be achieved only above some critical transmembrane potential for the specific target cells. However, for the specific application of electroporation the critical transmembrane voltage Uc is not known and depends on the chosen type of cell, the duration of electric pulses and the number of pulses. Therefore, optimization of pulse parameters has to be performed for every new target cells or target tissue. One additional crucial parameter that determines efficiency of electrotransfer or gene silencing is viability of cells after electroporation. Electroporation induces pores in the membrane, which temporarily disrupts cell homeostasis due to leakage of ions and molecules out and into the cells. If the electric pulses are too strong the cell membrane cannot reseal leading to cell death (irreversible electroporation). Therefore, in all optimization protocols it is also important to optimize for optimal delivery and viability depending on the type of the final application. Only few studies were done so far on differentiated primary myotubes as an in vitro model of skeletal muscle tissue, particularly of human origin. Due to species specificity of muscle cell, primary cultures of human muscle cells are currently the only model from which results can be extrapolated to in vivo conditions in humans. Based on potentials of short RNA therapies we have optimized electroporation conditions for electroporation-based delivery of small molecules into primary human myotubes cultured in vitro. This can be used for therapeutic purposes or alternatively, silencing of a specific gene can enable us to study selectively different signaling pathways relevant for various therapeutic approaches and studies of muscle regeneration. 2 Materials & Methods 2.1 Differentiation of myoblasts into myotubes was perfromed by using AdvancedMEM supplemented with 2% (vol/vol) FBS. The differentiation into myotubes was observed by bright field microscopy, and welldifferentiated cells were observed 6th day after initiation of differentiation (Fig.1). Electroporation was performed on 9th day of differentiation. Experiments were carried out on cells plated in LabTek II 4-Chamered slides (Thermo Fisher Scientific, MA; USA). The study was approved by the Ethical Commission at the Ministry of Health of the Republic of Slovenia (permit No: 71/05/12). 2.2 Plasmid pGFP-N1 (Clontech Laboratories Inc., Mountain Viw, CA, USA) encoding green fluorescent protein (GFP, excitation 488 nm, emission 507 nm) was amplified in DH5α strain of Escherichia coli and isolated with HiSpeed Plasmid Maxi Kit (Qiagen, Hilden, Germany). Plasmid DNA concentration was spectrophotometrically determined at 260 nm and confirmed by gel electrophoresis. 2.3 Cultured human myoblasts and myotubes Muscle cultures were prepared as described in detail before [10]. Briefly, myoblast cultures were prepared from muscle tissue routinely discarded at orthopedic operations. Muscle tissue was cleaned of connective and adipose tissue, cut to small pieces, and trypsinized at 37°C to release muscle satellite cells. Isolated cells were grown in 100-mm petri dishes (BD Falcon, Franklin Lakes, NJ) in growth medium AdvancedMEM supplemented with 10% (vol/vol) FBS, 0.3% (vol/vol) fungizone, and 0.15% (vol/vol) gentamicin (all obtained from Invitrogen, Paisley, UK) at 37°C in 5% CO2enriched atmosphere at saturation humidity. Purity of myoblast cultures was increased using the CD56 MACS system. CD56+ cells were transferred to new cell culture flasks, and were grown under the same conditions as the primary cultures for two to three more passages, when they were used for experiments. Figure 1: Differentiated myotubes after 6th day differentiation. 302 Plasmid DNA Electropermeabilization The permeabilization threshold and the extent of permeabilization was obtained by electroporation of cells in RPMI media without FBS (electroporation buffer) containing 0.15 mM propidium iodide (PI) (Sigma Aldrich), a short term membrane impermeable fluorescent dye. Electric pulses were generated by BetaTech pulse generator. A pair of parallel wire electrodes with 9.5 mm distance between them (d) was used. Electrodes were positioned on the bottom edges of the sample chamber in order to expose all cells to electric pulses. The electric field (E) is homogeneous and can be calculated by the formula E = U / d, where U denotes applied voltage and d the electrode distance. All pulsing protocols consisted of 8 consecutive square pulses of frequency 1 Hz. The amplitudes of the applied electric fields (E) were used depending on the pulse length. For 8 × 2 ms pulses the amplitudes of voltages were 100V, 200V, 500V, 600V, 700V 800V with applied fields E = [0.105, 0.21, 0.52, 0.63, 0.73 and 0.84] kV/cm. For 8 × 5 ms pulses voltages were 100V, 200V, 300V, 400V, 500V, 600V with E = [0.105, 0.21, 0.315, 0.42, 0.52 0.63] kV/cm. Pulses with 100 V and 200 V amplitudes were used only to determine the electroporation threshold and were not used in viability experiments. Cells in the control samples were by the same procedure but were not electroporated – no pulses were applied. 5 min after pulse delivery electroporation buffer was removed, cells were washed and finally basic advancedMEM media with 2% FBS was added. Phase contrast and fluorescent images were taken at 20× objective magnification for each sample. 2.4 viability. For 8 × 2 ms almost all cells were permeabilized already at 700 V while for 8 × 5 ms 100% permeabilized cells were observed at 600 V. With electric field strength 0.4 kV/cm and above, all cells were permeabilized (Fig. 2). Consistently, with increasing electric field strength and increasing number of permeabilized cells, maximal fluorescent values increased, indicating that more PI entered the cells. With higher voltages, the fluorescence increased despite all cells were electroporated. Based on the permeabilization results, pulses with U = 500-800 V for 8 × 2 ms and U = 300 – 600 V for 8 × 5 ms and higher were used for further viability experiments. Cell viability Electroporation for viability analysis was performed similarly as for electropermeabilization (2.3) except that immediately after electroporation 25%vol. FBS was added as in previous studies of electrotransfection or silencing [2,7,8,10]. After 10 min incubation at 37°C 800 µl advanced-MEM media was added. Cells were allowed to grow for 24h at 37°C in a humidified 5% CO2 atmosphere. Cells in the control sample (K0) were treated with the same protocol, but without exposure to electric pulses (E = 0 kV/cm). Viability of myotubes was determined 24h after electroporation and was analyzed by fluorescent spectroscopy (Tekan Infinite, Tekan, Germany). Cells A) were lysed with a 0.04% sodium dodecyl sulfate K0 8×2ms 100 V 8×2ms 200 V 8×2ms 500 V solution .and then buffer containing 50 mM TRIS-HCl, 100 mM NaCl (pH = 8.25) and 5 µg/ml Hoechst 33342 stain (Thermo Fisher Scientific) was added to each well. The number of cells was determined using Hoechst staining. Cells were lysed with a 0.04% sodium dodecyl sulfate solution .and th (Tecan, Männedorf, Switzerland). The percentage of viable cells (% Viability) in a given sample was determined as the ratio between the fluorescence intensity of the treated sample (FLs) and the fluorescence intensity of the negative control FL0: % %Viability = 100 × FLs/FL0. Two independent experiments were performed on the cells of two different donors. The results were pooled together and B) are presented as mean ± standard error. 8×5ms 500V 8×5ms 300V 2.5 8×5ms 400V 8×5ms 600V Electrotransfection Plasmid DNA pEGFP-N1 coding for GFP (green fluorescent protein) was used to test gene electrotransfer. Cells were electroporated in RPMI media with 40 µg/ml pEGFP using a train of 8 × 2 ms pulses with 400V and 600 V. Immediately after electroporation 25%vol. FBS was added. After 10 min incubation at 37° 800µl alpha MEM media was added. Bright field and fluorescent images of GFP expression were taken 24h after electroporation. Figure 2: Effect of increasing electric field strength on permeabilization of primary human myotubes. Cells were electroporated in the presence of 0.15 mM PI using a train of A) 8 × 2 ms and B) 8 × 5 ms for increasing applied voltage. Cells in the control sample K0 were not electroporated (U = 0 V). Bright field and fluorescent images were taken 5-10 minutes after electroporation. 3 Results & Discussion 3.1 Optimization of electropermeabilization of primary human myotubes Electropermeabilization experiments were performed to determine the permeabilization threshold of primary human myotubes exposed to a wider range of electric field strengths delivered for 8 × 2 ms pulses and 8 × 5 ms with repetition frequency 1 Hz. The duration and number of pulses were selected based on our previous optimizations experiments on primary human myoblasts and myotubes. The permeabilization threshold Ec for 8 × 2 ms and 8 × 5 ms was below 100 V (0.105 kV/cm), where for longer pulses the threshold was expectedly little lower. Since our primary focus was to establish a protocol for efficient delivery of small molecules together with relatively preserved viability with PI as a model molecule, we have tested the range of voltages that resulted in electropermeabilization and preserved 303 3.2 Viability Viability of myotubes was determined 24h after electroporation. The percentage of viable cells (%Viability) in a given sample was determined as the ratio between the number of viable cells and the number of viable cells in the negative control as determined by fluorescent spectroscopy and Hoechst staining (Figure 3). As it can be seen, there was substantial variability between the two donors, which is in agreement with previous data. In general some decrease in viability due to delivered pulses was obtained (80%) however, more experiments would have to be performed in order to obtain more accurate data. 120 100 %viability 80 60 40 20 using small molecule PI on the one hand and preserved viability on the other. Altogether 8 × 2 ms with applied electric field strength between 0.5 to 0.6 kV/cm and 8 × 5 ms electric pulses with applied electric fields 0.3 kV/cm to 0.4 kV/cm should be most optimal for delivery of small molecules and short RNA for silencing experiments. As a proof of concept, we have tested that the pulses optimized for delivery of small molecules could also be efficiently used for electrotransfer into differentiated myotubes and successful GFP expression was achieved. References 0 K0 8×2 8×2 8×2 8×2 8×5 8×5 8×5 8×5 500V 600V 700V 800V300V 400V 500V 600V Figure 3: Effect of electroporation parameters on viability of primary human myotubes. The percentage of viable cells (%Viability) is shown as the ratio between the fluorescence intensity of the treated sample and the fluorescence intensity of the negative control K0. Cells were electroporated using 8 × 2 ms and 8 × 5 ms for increasing applied voltage. Cells in the control sample K0 were not electroporated (U = 0 V). Finally, we have tested possibility of electrotransfer delivery of plasmid DNA in primary human myotubes. Based on our previous studies and electropermeabilization experiments we have chosen 8 × 2 ms pulses with 400V and 600V. GFP 8×2ms 400 V GFP 8×2ms 600 V Figure 4: Electrotransfection of primary human myotubes. Cells were electroporated in the presence of 40 µg/ml pEGFP using a train of 8 × 2 ms pulses with 400V (left) and 600 V (right). Bright field and fluorescent images of GFP expression were taken 24h after electroporation. We have obtained efficient electrotransfer of pEGFP plasmid into primary human myotubes using 8 × 2 ms with U = 600 V, while 400 V resulted only in few transfected cells as shown in Fig. 4. This is in agreement with our previous studies where we have shown that efficient electrotransfer is achieved above the electropermeabilization threshold and at the voltages that enable very efficient electropermeabilization close to 100% with viabilities above 75% [2]. [1] G.J. Prud’homme et al. Electroporation-enhanced nonviral gene transfer for the prevention or treatment of immunological, endocrine and neoplastic diseases, Current Gene Ther 6: 243-273 (2006) [2] M. Pavlin, M Kandušer. New insights into the mechanisms of gene electrotransfer - experimental and theoretical analysis. Scientific reports. 5 (2015) [3] Hojman, P. Basic principles and clinical advancements of muscle electrotransfer. Curr Gene Ther 10,128–138 (2010). [4] Peng, B., Zhao, Y., Lu, H., Pang, W. & Xu, Y. In vivo plasmid DNA electroporation resulted in transfection of satellite cells and lasting transgene expression in regenerated muscle fibers. Biochemical and Biophysical Research Communications 338, 1490–1498 (2005). [5] Bakhtiyari, S., Haghani, K., Basati, G. & Karimfar, M. H. siRNA therapeutics in the treatment of diseases. Ther Deliv 4, 45–57 (2013). [6] Paganin-Gioanni, A. et al. Direct visualization at the single-cell level of siRNA electrotransfer into cancer cells. Proc. Natl. Acad. Sci. 108, 10443–10447 (2011). [7] Lojk J, Miš K, Pirkmajer S Sergej, Pavlin M. siRNA delivery into cultured primary human myoblasts optimization of electroporation parameters and theoretical analysis. Bioelectromagnetics 36: 551-563 (2015) [8] M. Kandušer, D. Miklavčič M. Pavlin, Mechanisms involved in gene electrotransfer using high-and lowvoltage pulses–An in vitro study. Bioelectrochemistry. 74: 265-271 (2009) [9] MP. Rols, J. Teissie. Electropermeabilization of mammalian cells to macromolecules, Biophys. J. 75:1415-1423 (1998) [10] Mars, T. et al. Electrotransfection and Lipofection Show Comparable Efficiency for In Vitro Gene Delivery of Primary Human Myoblasts. J. Membr. Biol. . 248, 273283 (2015). Acknowledgements 4 Conclusions We present results of in vitro optimization of the electroporation protocol for the introduction of small molecules and plasmid DNA into cultured primary human myotubes. By varying electric field strength and duration of the pulses, we have established optimal pulsing protocol with regard to electropermeabilization 304 This work was supported by the Slovenian Research Agency research core funding No. P1-0055 and P30043, project J3-6794, J7-8276 and MRIC UL IP-0510 Infrastructure Program. N. Š. was also supported by the Slovenian Research Agency Young Researchers Program. Driving activity assessment using accelerometer data Nikola Šolaja1, Nadica Miljković1, Jaka Sodnik2 Signals and Systems Department, University of Belgrade – School of Electrical Engineering, Belgrade, Serbia 2 ICT Department, Faculty of Electrical Engineering, University of Ljubljana, Ljubljana, Slovenia E-mails: nikola.solaja@yahoo.com, nadica.miljkovic@etf.bg.ac.rs, jaka.sodnik@fe.uni-lj.si 1 Abstract. In this paper, we evaluated a variety of features acquired from data recorded from single tri-axial accelerometer placed on the subjects’ wrist in order to differentiate among driving events. Results obtained from 12 experienced drivers assessed in driving simulators with wristband revealed features that might be relevant for future driver’s activity recognition. Our preliminary exploratory data analysis showed that the most informative features for discriminative analysis among driving tasks are entropy and average spectral energy of the resultant acceleration. Keywords—accelerometer, activity recognition, driving simulator, exploratory data analysis, hand movements 1 Introduction Driving is an activity with significant health risks if the driver’s psychological or physiological state is not at sufficiently good level. Due to the possible severity of consequences caused by driving accidents, it is of great importance to detect possible causes and their implications. Driving simulations are useful assessment tools with the ability to put drivers in simulated and dangerous situations without real risk involved. To quantify driver's profile parameters and behavior, various measurements of physiological signals were proposed previously. [1] The main hypothesis of this research was that different parts of the driving simulation can be discerned by analysis of recorded data. Specifically, the focus of this study was on the data analysis collected from the single tri-axial accelerometer during simulation, in order to quantify and analyze driver’s activity. This idea is supported by the results obtained from human activity recognition studies by application of accelerometers, where relatively high classification accuracy of above 88% was achieved [2-8]. The aim of this study was to explore a variety of features for the differentiation among driving simulation tasks and phases. Several carefully selected features were extracted from accelerometer data placed on subjects’ wrist. We concluded that the most promising features might be entropy and average spectral energy of the resultant acceleration. 2 Methods and materials 2.1 Data set Data used in this study is collected with E4 sensor wristband (Empatica Inc., Cambridge, USA) during the simulation in driving simulator (Nervtech TM, Trzin, Slovenia) at the University of Ljubljana, Faculty of Electrical Engineering in Slovenia. Beside acceleration, sensor wristband records volume pulse, galvanic skin response, skin temperature, inter-beat intervals, and heart rate. For this study, we used only acceleration data for analysis. ERK'2019, Portorož, 305-308 305 Data set was obtained from 12 participants with more than two years driving experience. Each subject completed one of the driving scenarios: highway drive (9 subjects completed this scenario), countryside drive (two subjects), and city drive (one subject). In this study, we used only highway scenario, since the majority of subjects completed this driving simulation. The Nervtech scenarios used here (SANJOSE, Nervtech, Trzin, Slovenia) had different events, tasks, and scenery. All scenarios were divided into different parts termed tasks. Each task is described with numbers in the range of -1 to 13, where number -1 indicates an unclassified task and tasks from 0 to 13 indicate different unique parts of the track. A scenario does not necessarily contain all tasks. Each scenario contains only specific tasks from 0 to 13 (e.g. highway scenario consists of tasks -1, 8, 9, 12, and 13). Each task is further divided into phases annotated by numbers in the range of 0 to 3, where 0 indicates the initial uneventful driving phase, 1 indicates the driving phase, 2 indicates the preparation phase, and 3 indicates the action phase. A task does not necessarily contain all phases. The most interesting part of the analysis is the phase 3. This is the part where collisions can happen (e.g. children suddenly cross the road). Used data set consists of 12 files (for each subject) with complete data collected from E4 wristband and video recordings of the driver’s vision field. Video recordings were available for only three subjects. Data of interest extracted from the files includes: (1) unix time stamp, (2) scenario name, (3) task number, (4) phase number, and (5) accelerometer data from 𝑥-axis, 𝑦-axis, and 𝑧-axis. All subjects signed informed consents. The study was performed in accordance with the Code of ethics and Guidelines for studies involving human subjects of University of Ljubljana, that follow recommendations of Helsinki Declaration. 2.2 Data transformation and preprocessing All processing steps were performed in R [9], using R Studio IDE (Rstudio, Inc., Boston, USA) and official CRAN network (The Comprehensive R Archive Network) with upto-date libraries for R programming language. The following CRAN packages/libraries were used: dplyr [10], ggplot2 [11], signal [12], and entropy [13]. Raw data transformations and accelerometer data preprocessing steps were necessary to convert the data into a more suitable form for feature extraction. Time stamps were transformed from unix format into seconds. Accelerometer data for three axes were transformed into a function of gravitational acceleration (𝑔). Resulting signals were in the range [−2𝑔, 2𝑔]. Fig. 1. Basic boxplots of features for tasks from the highway drive scenario. Features ar_ent and energy were selected as the promising separators of the classes by visual inspection by two experienced researchers. The criteria for the selection was minimization of overlap between boxplots of different tasks. Please, see Table 1 for details and features description. Since acceleration was not recorded with a fixed sampling frequency, accelerometer data needed to be resampled using time stamps. Data was up-sampled using cubic spline interpolation so that the number of samples in the resampled data was equal to the number of annotations related to tasks and phases. Resulting sample rate varied and was in range of [46.6, 53.5] Hz. Acceleration data consists of the two independent components: one is caused by linear hand movement, and the other is gravity acceleration. Those components were necessary for the later analysis and needed to be separated. As shown in [2,7], gravity component can be reliably approximated by low pass filtering. For this purpose, a 4th order Butterworth filter with cutoff frequency of 0.35 Hz (following the range suggested in [2]) was applied. Linear acceleration was taken as an original signal filtered with 4th order high pass Butterworth filter with cutoff set at 0.35 Hz, and then 4th order low pass Butterworth filter with cutoff frequency of 6 Hz. Lastly, filtered individual linear acceleration data from three axis (vectors 𝑎𝑥 , 𝑎𝑦 , and 𝑎𝑧 ) is combined to form a resultant acceleration vector 𝑎𝑟 : 𝑎𝑟 = √𝑎𝑥 2 + 𝑎𝑦 2 + 𝑎𝑧 2 () The resulting signal 𝑎𝑟 calculated from Eq. (1) does not depend on the orientation of the accelerometer, and as such is more suitable for this study. 2.3 Feature extraction After data preparation, we calculated features. The majority of the features were previously exploited in human activity recognition studies [2-10]. Acceleration signal 𝑎𝑟 was segmented by task and phase annotations, and then the segments of the same class were merged together. 306 Table 1. Selected features Feature standard deviation (SD) of 𝑎𝑟 (ar_sd) absolute maximum value of 𝑎𝑟 (ar_max) Shannon entropy of 𝑎𝑟 (ar_ent) zero-crossing rate of 𝑎𝑟 (ar_zcr) SD of the first derivative of roll angle (dtheta_sd) average spectral energy density of 𝑎𝑟 (energy) Description, [units] Activity quantifier, rectifies negative acceleration, reduces gravity influence, used in [2-8], [𝑔 𝑚/𝑠 2 ] Potentially good indicator of critical situations where fast rephases are required, used in [3], [𝑔 𝑚/𝑠 2 ] Degree of randomness, higher value is expected at situations that demand intervention, used in [3, 6], [a.u.] Good periodicity and high frequency content estimator, increases with activity, used in [4], [a.u.] Rotation angle around the axis perpendicular to the wheel plane, SD of its first derivative, indicator of turnings, [𝑟𝑎𝑑/𝑠] Carries the information about periodicity and energy, used in [5,6], [𝑔2 (𝑚/𝑠 2 )2 ]. Please, see text for more details. Features were calculated for the merged segments that are longer than 2 s. All features with a short description are given in Table 1. SD (ar_sd) is calculated as mean squared difference between the samples and the mean value of the signal, with Bessel’s correction. Feature ar_max is calculated as the absolute maximum value of the signal 𝑎𝑟 in time domain. Shannon entropy (ar_ent) of the acceleration signal was calculated as: Fig. 2. Basic boxplots of features by phase. Features ar_ent and energy were selected as appropriate separators by visual inspection by two experienced researchers. The criteria for the selection was minimization of overlap between boxplots of different classes. Additionally, more significance is given to the distinction of phase 3, because it indicates a critical event. See Table 1 for details and feature description. H(𝑎𝑟 ) = − ∑ 𝑝(𝑎𝑟 )log(𝑝(𝑎𝑟 )) () Values 𝑝(𝑎𝑟 ) were obtained as probabilities of each level of the signal 𝑎𝑟 discretized by amplitude into 32 levels. Zerocrossing rate of the signal (ar_zcr) was calculated as the number of sign changes of the signal in time domain normalized by the length of the signal in samples. Roll angle used for calculating SD of the first derivative of the roll angle (dtheta_sd) is estimated based on approximated gravity components 𝑔𝑥 , 𝑔𝑦 , and 𝑔𝑧 as shown in [14], by using the following equation: 𝜃 = atan(− 𝑔𝑧 √𝑔𝑥 2 +𝑔𝑦 2 ) as it indicates a critical event. Scatter plots that represent class localization based on the selected features are shown in Fig. 3. Additionally, selected features are plotted in time domain by windowing the acceleration signal 𝑎𝑟 with 3 s () Average spectral energy density (energy) was calculated as the mean of the squared FFT coefficients of 𝑎𝑟 . If FFT of a signal has prominent peaks (indicating periodicity), then squaring FFT coefficients would emphasize the energy of the peaks. Hence, higher energy indicates higher periodicity for the given frequency range. This feature was previously used to differentiate between walking and running [5, 6]. 3 Results Quality of the class separation for each feature is evaluated by observing basic boxplots for each feature with tasks and phases as groups (Figs. 1-2). Based on the information from Figs. 1-2, we selected ar_ent and energy of acceleration signal as features that distinguish classes in the appropriate way (minimization of overlap between boxplots of different classes) for both tasks and phases. For phases, we paid special attention to isolate phase 3 as good as possible, 307 Fig. 3. Figures show distribution of feature pairs (energy, ar_ent) grouped by tasks (top) and phases (bottom), for highway scenario. Using the accelerometer placed on a wrist in order to recognize driving situations is still relatively new and improvements are needed. It has a potential at least as a support to the more established driver profiling methods. For future work, we will include all data from E4 wristband from a larger sample. Since we used only subjective criteria to select the most appropriate features (visual inspection), our future work should also include more objective approach based on statistical methods. Given the participants’ demographics, we would try to further inspect the potential regularities that could exist between different driver groups. 5 Acknowledgment Authors would like to thank Nervtech Ltd. from Trzin, Slovenia for providing data recorded in the driving simulator. Research was partly supported by the Ministry of education, science, and technological development, Republic of Serbia by Grant TR-33020 and also partly by the Slovenian Research Agency (L2-8178 and P2-0246). 6 References [1] Fig. 4. Values of the selected features normalized by maximum in time domain for the city scenario, along with frames from the corresponding video recording at critical time points (moments before and after collision). Annotation lines are given below the graph, where the top line represents phase for the given time point, while the bottom line refers to the current task. [2] [3] window duration, and calculating these features for each window for the city scenario (please, see Fig. 4). We added this figure in order to get more insight into the dynamics of the selected features and its relation to simulation events. [4] 4 Discussion and conclusions [5] The final results concerning identification of simulation scenario parts are not satisfying (Fig. 3). For both tasks and phases, classes significantly overlap. We expected that phases would be more separable than tasks, due to fact that the phases are related to the driving dynamic, while tasks are not necessarily separable. If we had taken into consideration all scenarios, the separability would be even worse in both cases due to the larger number of tasks. To be fair, chosen visualization method with only two features is rather harsh, but there are also other problems. In the process of feature evaluation, we saw that none of the features, although commonly used in similar studies with success, have shown good discrimination. There are some possible reasons for this. By inspecting video recordings and comparing events with features, we concluded that participants reacted differently (e.g. performing exceptionally well in a critical situation - phase 3, but making an accident in a seemingly calm situation - phases 02). These assumptions are further supported by boxplots in Figs. 1-2, where variability in features corresponds to larger interquartile width. There is also a problem with the subjective data labeling (e.g. Fig. 4 shows the situation in the video that we deemed as critical, but it was marked as phase 2, while the other, more comfortable parts were marked as phase 3). Further, energy shows good responsiveness to accident despite possible erroneous annotations (Fig. 4). 308 [6] [7] [8] [9] [10] [11] [12] [13] [14] Nervtech™ evaluation system, https://www.nervtech.com/ [Online], Assessed on June 29, 2019. A. Bayat, M. Pomplun, & D. A. Tran. "A study on human activity recognition using accelerometer data from smartphones," Procedia Computer Science, vol. 34, pp. 450457, 2014. C. B. Erdaş, I. Atasoy, K. Açıcı, & H. Oğul. "Integrating features for accelerometer-based activity recognition," Procedia Computer Science, vol. 98, pp. 522527, 2016. W. Dargie. "Analysis of time and frequency domain features of accelerometer measurements," in Proc of 18th International Conference on Computer Communications and Networks, San Francisco, USA, IEEE, Aug 3-6, pp. 1-6, 2009. N. Ravi, N. Dandekar, P. Mysore, & M. L. Littman. "Activity recognition from accelerometer data," Aaai, vol. 5, pp. 15411546, 2005. S. Chernbumroong, A. S. Atkins, & H. Yu. "Activity classification using a single wrist-worn accelerometer," in Proc of the 5thInternational Conference on Software, Knowledge Information, Industrial Management and Applications, Benevento, Italy, IEEE, Sep 8-11, pp. 1-6, 2011. H. Gjoreski, & M. Gams. "Accelerometer data preparation for activity recognition," in Proc of the International Multiconference Information Society, Ljubljana, Slovenia, Oct 10, vol. 1014, pp. 1-4, 2011. S. Zhang, A. V. Rowlands, P. Murray, & T. L. Hurst. "Physical activity classification using the GENEA wrist-worn accelerometer," Medicine & Science in Sport & Exercise, vol. 44, no. 4, pp. 742-748, 2012. R Core Team (2018). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. https://www.R-project.org/. H. Wickham, R. François, L. Henry, & K. Müller (2019). dplyr: A Grammar of Data Manipulation. R package ver 0.8.0.1. https://CRAN.R-project.org/package=dplyr. H. Wickham. ggplot2: Elegant Graphics for Data Analysis. Springer-Verlag New York, 2016. signal developers (2013). signal: Signal processing. URL: http://r-forge.r-project.org/projects/signal/. J. Hausser, & K. Strimmer (2014). entropy: Estimation of Entropy, Mutual Information and Related Quantities. R package ver 1.2.1. https://CRAN.R-project.org/package=entropy M. Pedley, "Tilt sensing using a three-axis accelerometer," Freescale Semiconductor Application Note 1, pp. 1-22, 2012-2013. Numerical modelling of treatment of liver metastases with irreversible electroporation Helena Cindrič1, Masashi Fujimori2, Francois H. Cornelis2, 3, Stephen B. Solomon2, 4, Govindarajan Srimathveeravalli2, 4, Damijan Miklavčič1, Bor Kos1 2 1 University of Ljubljana, Faculty of Electrical Engineering, Tržaška cesta 25, 1000 Ljubljana, Slovenia Memorial Sloan Kettering Cancer Center, Department of Radiology, 1275 York Avenue, 10065 New York, USA 3 Sorbonne Université, ISCD, Tenon Hospital, 4 rue de la Chine, 75020 Paris, France 4 Weill Cornell Medical College, 1300 York Avenue, 10065 New York, NY, USA E-mail: helena.cindric@fe.uni-lj.si Abstract. Irreversible electroporation (IRE) has seen increasing use for ablation of deep-seated tumors, for example in the liver. A previously designed numerical framework for planning electroporation-based treatments was supplemented with computations of tissue heating and statistical probability of cell death. The frameworks’ capability of predicting IRE treatment outcome was evaluated in a retrospective manner through numerical reconstruction of nine clinical cases of liver metastases treated with IRE. Patient-specific models were developed and simulations of treatments were performed. Computed results corresponded well with clinical findings predicting undertreatment in all cases where tumor recurred. Furthermore, due to a high number of delivered pulses during IRE treatment thermal damage was observed in a significant volume of modelled target tissue, indicating that current protocols used for IRE treatment may result in undesired thermal damage that may adversely affect treatment safety. 1 Introduction Electroporation is a phenomenon where short high voltage electric pulses are applied to biological cells (biological tissue) in order to induce structural changes in the cell membranes. Electroporation can be reversible (RE), where cells recover completely, or irreversible (IRE), where changes in the membrane result in cells’ loss of functionality which can lead to apoptotic cell death [1]. Poration level mainly depends on the applied electric field strength and duration and can therefore be controlled through adjusting the applied pulse parameters – applied voltage (pulse amplitude), pulse number, duration and delivery dynamics. RE and IRE have shown potential for use in various fields – from medicine to biotechnology and food processing [2]–[4]. In the last two decades, IRE is being evaluated for ablation of deep-seated tumors such as in liver, pancreas, prostate and kidney [5], [6]. It presents an alternative to established thermal ablation technologies due to its’ predominantly non-thermal mechanism of cell kill and is currently mostly used for treating patients where the application of thermal ablation is contraindicated due to risk of thermal damage to sensitive nearby structures, or when the presence of heat sinks reduces ablation efficacy. ERK'2019, Portorož, 309-312 309 Since IRE is still an early technology, there is a lack of standardized treatment protocols and planning procedures for use in clinical setting. Typically a high number pulses (70-100 or even higher) is delivered per electrode pair, with an approximately 1500 V/cm voltage-to-distance ratio. The number of electrodes, electrode spacing, pulse length and delivery dynamics vary significantly between studies. Despite IRE being considered a non-thermal technology, recent studies have shown a significant accumulation of thermal energy in the immediate vicinity of the electrodes, which if neglected in clinical setting, may affect safety of IRE treatment [7]–[9]. Numerical modelling has proven to be a fundamental tool in investigating and designing electroporation-based treatments. In light of recent studies on thermal effects of IRE, the aim of this study was to improve the existing numerical framework for planning IRE ablation of liver metastases by adding computations of temperature dissipation during treatment and statistical probability of cell kill. The improved numerical framework was validated through a retrospective analysis of nine clinical cases of liver metastases treated with IRE. 2 Materials and methods A previously designed numerical framework for planning electroporation-based treatments [9]–[11] was supplemented with computations of tissue heating and statistical probability of cell death. The frameworks’ capability of predicting IRE treatment outcome was evaluated in a retrospective manner through numerical reconstruction of nine clinical cases of liver metastases treated with IRE. The patient study was performed under a HIPPA compliant, IRB approved protocol. 2.1 Numerical framework Current numerical models of electroporation are based on solving the stationary Laplace partial differential equation for electric potential V (Eq. 1): −∇(σ ∙ ∇V) = 0 (1) 𝜎 → 𝜎(𝐸) (2) Electroporation is implemented in the model through an electric field dependent non-linear increase in tissue electrical conductivity (Eq. 2). In short, after tissue becomes reversibly electroporated (electric field strength exceeds the threshold for RE), initial electrical conductivity of tissue increases, depending on local electric field strength E. The maximum conductivity value is reached if electric field strength reaches or exceeds the threshold for IRE [12]. Electric field is calculated separately for each active electrode pair, their respective contributions then combined into final electric field distribution (tissue coverage). In IRE a large number of pulses is delivered to target tissue resulting in a significant increase in temperature (T). The existing stationary model of electroporation was supplemented with the Pennes bioheat transfer equation (Eq. 3) solved in time domain 𝜌𝐶𝑝 𝜕𝑇 𝜕𝑡 − ∇(𝑘∇𝑇) = 𝑄𝑏𝑖𝑜 + 𝑄ℎ 𝑄ℎ = 𝜎(|𝐸 |2 ) (3) (4) where ρ is tissue density, Cp is tissue thermal capacity and k thermal conductivity. Tissue heating from the electrodes is introduced through a Joule heating term Qh (Eq. 4). The bioheat source term Qbio (Eq. 3) represents blood perfusion and metabolic activity, however when electroporation occurs tissue perfusion decreases significantly due to vascular lock effect [13]. A rise in temperature also affects tissue electrical conductivity. Temperature dependence of electrical conductivity was modelled uniformly for all tissues with a factor of increase +1%/°C. Electrical and thermal properties of tissues were taken from the literature [9], [10], [14] and are summarized in Table 1. Models of statistical probability of cell kill were also added to the framework to offer additional insight into treatment outcome. Probability of cell kill due to IRE was calculated with the statistical Peleg-Fermi model [15], which takes into account local electric field E and number of applied pulses n: 𝑃 (𝐸, 𝑛) = 1 − 1 𝐸−𝐸𝐶 (𝑛) 1+ 𝑒 𝐴𝑛(𝑛) (5) where Ec is the critical electric field causing the death of 50 % of cells, and An is the kinetic constant; both values were adapted from literature [8], [16]. Parameter An was slightly modified to better reflect the conditions in tissue. The extent of thermal damage was determined by solving the Arrhenius kinetics equation [8]: 𝑡=𝜏 −𝐴 𝑒 ) 𝑑𝑡 𝛺(𝑡) = ∫𝑡=0 𝜁 ∙ exp (𝑅∙𝑇(𝑡) (6) where ξ represents the frequency factor, Ae activation energy and R is the gas constant. Thermal cell kill probability was calculated with the following equation: 𝑃𝑇 = 1 − exp(−Ω(𝑡)) (7) COMSOL Multiphysics (COMSOL Inc., Sweden) software for finite-element based analysis was used for the computations. The model set-up and computations were controlled in MATLAB (MathWorks, USA) scripting environment through LiveLink. 2.2 Reconstruction of clinical cases The developed model was validated through a numerical reconstruction of nine clinical cases of colorectal liver metastases treated with IRE and a retrospective analysis of predicted and actual treatment outcomes. For each patient case two sets of medical images were used for model construction – pre-interventional contrast enhanced computed tomography (CT) image, used for target tissue segmentation, and interventional CT showing electrode positions. ITK-SNAP, an open-source interactive software, was used for image registration and segmentation [17]. First both images had to be registered into a common coordinate system. The built-in function for rigid registration was used for initial registration (with mutual information as similarity criterion) and was then corrected manually to ensure the best local registration. Segmentation of target tissues – tumor volume, liver parenchyma and large adjacent blood vessels (up to 3 cm from tumor surface) – was performed manually on preinterventional CT. Interventional CT was used to determine the points of the electrodes and their retraction trajectories (where applicable). Segmentation masks were imported into MATLAB workspace where a patient-specific anatomically correct 3D model was built (Figure 1). Needle electrode models were added to the model geometry based on their positions determined from patient images. IRE treatment course was reconstructed using the parameters and data from NanoKnife pulse generator, namely active electrode pairs, applied pulse parameters and current/voltage measurements. Table 1: Electrical and thermal properties of modelled biological tissues Tissue Tumor Liver Vessels Initial el. conductivity (S/m) 0,4 0,091 0,7 Increased el. conductivity (S/m) 1,60 0,45 1,05 Threshold for RE (V/cm) 400 460 400 310 Threshold for IRE (V/cm) 800 700 1100 Tissue density (kg/m3) 1079 1079 1060 Heat capacity (J/kgK) 3540 3540 3840 Thermal conductivity (W/mK) 0,52 0,52 / Figure 1: A) Reconstructed patientspecific numerical model showing the liver organ, major blood vessels, tumor volume and two needle electrodes. B) Close-up of the model: tumor (dark mass) is situated near a major blood vessel. IRE was performed using two needle electrodes. Computations of electric field distribution, tissue heating and cell kill probability due to IRE and thermal damage were performed for each case. Regions of undertreatment were identified in the simulated results and then compared to clinical outcomes. The extent of possible thermal damage around the electrodes was also determined. 3 Results and discussion The first rough estimation of the models’ accuracy was performed through pair-by-pair comparison of calculated and measured electric current . This type of comparison is commonly used for verification in numerical studies [11]. The relative current error was below 30 % for most electrode pairs, with a few exceptions, presumably due to unavoidable errors in segmentations and electrode placement as well as uncertainties in electrical properties of modelled tissues. Computed treatment outcome was evaluated based on coverage of tumor volume with sufficiently high electric field as well as cell kill probability. The exact threshold for IRE of tumor tissue has not yet been determined, however, studies report values for healthy liver tissue spanning between 500-650 V/cm for 90 (100 μs) pulses per electrode pair [9], [18]. In our computations tumor tissue ablation was considered successful if local electric field strength exceeded the assumed threshold of 500 V/cm. Furthermore, calculated probability of cell kill in ablated tissue should be at least 0.9. Computed results for all nine reconstructed cases are presented in Table 2 along with clinical findings for each case. In eight cases out of nine tumor appeared completely ablated in follow-up images, however in four cases the tumor recurred during the two year follow-up. In one case (P4 in Table 2) undertreatment was evident already immediately after the procedure due to difficult access to the tumor site. The remaining four cases reported successful tumor ablation. Thermal damage was observed in a significant volume of the target tissue, especially in cases where a higher number of electrodes (electrode pairs) was used for treatment. According to computations in average 3050 % of tumor volume was thermally damaged while in two cases the extent of thermal damage reached 90 % of tumor volume. However, the volume of cell kill caused by thermal damage is always “encapsulated” within the volume of cell kill due to IRE [8], which indicates that the success of IRE treatment is not dependent on thermal damage. Overall, computations correspond quite well with clinical findings, predicting undertreatment in areas where tumors recurred. However, computations predicted complete ablation in two of five cases in which the treatment actually failed (P1 and P3, 2. Tumor). Upon inspection of follow-up images for case P1, the site of tumor recurrence matched the area of tumor volume that was not covered in simulations (5 %). In case P3, 2. tumor, the patient had two tumors and it was unclear on follow-up images (due to local abscess) where the tumor recurred and why. In four successful cases tumor coverage varied between 80 % and 100 %, however the percentage of tumor volume in which the statistical model of IRE predicted cell death was above 95 % in all cases. Table 2: Computation results for nine tumor cases – percentage of tumor volume covered with electric field above 500 V/cm, percentage of tumor cell kill caused by IRE and by thermal damage. Case P1 P2 P3, 1. tumor P3, 2. tumor P4 P5 P6 P7, 1. tumor P7, 2. tumor Tumor coverage (%) 94,6 59,3 71,3 88,0 75,4 98,7 87,1 81,4 99,5 IRE cell kill (%) 93,6 55,7 79,5 97,0 60,9 95,8 95,4 95,6 99,5 311 Thermal cell kill (%) 86,7 51,9 59,3 45,7 0,00 68,6 35,2 29,9 90,6 Clinical outcome Tumor recurrence Tumor recurrence Tumor recurrence Tumor recurrence Confirmed undertreatment Successful ablation Successful ablation Successful ablation Successful ablation Probability of cell death takes into account cumulative contributions from separate electrode pairs, resulting in higher percentage of cell kill than electric field alone. The main limitations of this study stem from the uncertainties of electrical and thermal properties of various biological tissues especially during exposure to high electric fields. Furthermore, although numerical reconstruction of clinical cases offers further insight and analysis of various aspects of electroporation-based treatments, it is a very difficult process that is limited by the retrospective nature of available data. 4 Conclusions Despite some limitations of our study, the presented results demonstrate the ability of our numerical framework to predict treatment outcome following IRE of liver metastases. Furthermore, we have highlighted the problem of undesired thermal effects that can occur with IRE treatment. More specifically, IRE protocols currently used in clinical setting allow for a high number of pulses to be delivered to electrode pairs, which may negatively impact treatment safety. Validated standardized protocols and treatment planning procedures for IRE are thus needed in the future. Acknowledgements This study was funded by the Slovenian Research Agency (P2-0249, Z3-7126) and US-Slovenian joint project (BI-US/18-19-002). The research was conducted in the scope of LEA-EBAM and MRIC UL IP-0510. Literature [1] T. Kotnik, P. Kramar, G. Pucihar, D. Miklavcic, and M. Tarek, “Cell membrane electroporation- Part 1: The phenomenon,” IEEE Electr. Insul. Mag., vol. 28, no. 5, pp. 14–23, Sep. 2012. [2] M. L. Yarmush, A. Golberg, G. Serša, T. Kotnik, and D. Miklavčič, “Electroporation-based technologies for medicine: principles, applications, and challenges,” Annu. Rev. Biomed. Eng., vol. 16, pp. 295–320, Jul. 2014. [3] T. Kotnik, W. Frey, M. Sack, S. Haberl Meglič, M. Peterka, and D. Miklavčič, “Electroporation-based applications in biotechnology,” Trends Biotechnol., vol. 33, no. 8, pp. 480–488, Aug. 2015. [4] S. Mahnič-Kalamiza, E. Vorobiev, and D. Miklavčič, “Electroporation in Food Processing and Biorefinery,” J. Membr. Biol., vol. 247, no. 12, pp. 1279–1304, Dec. 2014. [5] M. R. Meijerink, H. J. Scheffer, and G. Narayanan, Eds., Irreversible Electroporation in Clinical Practice. Springer International Publishing, 2018. [6] H. J. Scheffer et al., “Colorectal liver metastatic disease: efficacy of irreversible electroporation—a single-arm phase II clinical trial (COLDFIRE-2 trial),” BMC Cancer, vol. 15, Oct. 2015. [7] E. M. Dunki-Jacobs, P. Philips, and R. C. G. Martin, “Evaluation of thermal injury to liver, pancreas and kidney during irreversible electroporation in an in 312 vivo experimental model,” Br. J. Surg., vol. 101, no. 9, pp. 1113–1121, Aug. 2014. [8] P. A. Garcia, R. V. Davalos, and D. Miklavcic, “A numerical investigation of the electric and thermal cell kill distributions in electroporation-based therapies in tissue,” PloS One, vol. 9, no. 8, p. e103083, 2014. [9] B. Kos, P. Voigt, D. Miklavcic, and M. Moche, “Careful treatment planning enables safe ablation of liver tumors adjacent to major blood vessels by percutaneous irreversible electroporation (IRE),” Radiol. Oncol., vol. 49, no. 3, pp. 234–241, Sep. 2015. [10] D. Šel, D. Cukjati, D. Batiuskaite, T. Slivnik, L. M. Mir, and D. Miklavčič, “Sequential finite element model of tissue electropermeabilization,” IEEE Trans. Biomed. Eng., vol. 52, no. 5, pp. 816–827, May 2005. [11] D. Miklavčič et al., “Towards treatment planning and treatment of deep-seated solid tumors by electrochemotherapy,” Biomed. Eng. OnLine, vol. 9, p. 10, Feb. 2010. [12] N. Pavšelj, Z. Bregar, D. Cukjati, D. Batiuskaite, L. M. Mir, and D. Miklavčič, “The course of tissue permeabilization studied on a mathematical model of a subcutaneous tumor in small animals,” IEEE Trans. Biomed. Eng., vol. 52, no. 8, pp. 1373–1381, Aug. 2005. [13] T. Jarm, M. Cemazar, D. Miklavcic, and G. Sersa, “Antivascular effects of electrochemotherapy: implications in treatment of bleeding metastases,” Expert Rev. Anticancer Ther., vol. 10, no. 5, pp. 729–746, May 2010. [14] M. Trujillo and E. Berjano, “Review of the mathematical functions used to model the temperature dependence of electrical and thermal conductivities of biological tissue in radiofrequency ablation,” Int. J. Hyperth. Off. J. Eur. Soc. Hyperthermic Oncol. North Am. Hyperth. Group, vol. 29, no. 6, pp. 590–597, Sep. 2013. [15] A. Golberg and B. Rubinsky, “A statistical model for multidimensional irreversible electroporation cell death in tissue,” Biomed. Eng. OnLine, vol. 9, p. 13, Feb. 2010. [16] J. Dermol and D. Miklavčič, “Mathematical Models Describing Chinese Hamster Ovary Cell Death Due to Electroporation In Vitro,” J. Membr. Biol., vol. 248, no. 5, pp. 865–881, Oct. 2015. [17] P. A. Yushkevich et al., “User-guided 3D active contour segmentation of anatomical structures: significantly improved efficiency and reliability,” NeuroImage, vol. 31, no. 3, pp. 1116–1128, Jul. 2006. [18] O. Gallinato, B. D. de Senneville, O. Seror, and C. Poignard, “Numerical workflow of irreversible electroporation for deep-seated tumor,” Phys. Med. Biol., vol. 64, no. 5, p. 055016, Mar. 2019. ERK'2019, Portorož, 313-317 313 314 315 316 317 Ugotavljanje prvotne stopnje anizotropnosti mišičnega tkiva prašiča z dinamičnim modelom elektroporacije ex vivo Rok Šmerc1 , Samo Mahnič-Kalamiza1 , Matevž Pintar2 , Janez Langus2 , Tomaž Šuštar2 , Damijan Miklavčič1 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana 2 C3M d.o.o., Tehnološki park 21, 1000 Ljubljana E-pošta: rok.smerc@fe.uni-lj.si Determining the initial degree of anisotropy of porcine skeletal muscle tissue using the dynamic model of electroporation ex vivo Skeletal muscles are, due to their large size and ease of access, the most widely used tissue for gene electrotransfer. Electrical conductivity of skeletal muscles exhibits a high degree of anisotropy, i.e. the electric conductivity in the direction of the muscle fibres is considerably higher than the electric conductivity in the direction perpendicular to the muscle fibres. For successful numerical modelling that can be used for optimisation of electric pulse parameters and the geometry of the electrodes, electric properties of the skeletal muscles need to be known. In the present study, an attempt was made to determine the degree of initial, i.e. pre-treatment anisotropy of porcine skeletal muscle tissue (Longissimus dorsi) by using ex vivo measurements of the electric voltage and current in the aforementioned tissue combined with numerical modelling. Two different orientations of the electodes with respect to the muscle fibres were used. The first orientation, whereby the electrodes are inserted in such a way that the direction of the applied electric field is the same as the direction of the muscle fibres, and the second, whereby the direction of the applied electric field is perpendicular to the direction of the muscle fibres. With the recently developed dynamic finite-element model we produced curves relating the normalized expected electrical current to the electrode-to-muscle fibre orientation for different values of the ratio of anisotropy, and for different applied voltages. We then used these curves in order to assess what could have been the initial degree of anisotropy of porcine skeletal muscle before applying electroporation. The initial degree of anisotropy was thusly assessed for 10 pairs of measurements, made in the porcine skeletal muscle ex vivo. 1 Uvod Z izpostavitvijo celice električnemu polju dovolj visoke jakosti, postane njena membrana začasno bolj prepustna za molekule, za katere je sicer slabo ali neprepustna. Ta pojav imenujemo elektroporacija ali elektropermeabilizacija [1]. Elektroporacija je dandanes uveljavljena metoda v različnih biomedicinskih aplikacijah, kot so na primer elektrokemoterapija, genska elektrotransfekcija, DNK vakcinacija, ablacija tkiv z metodo ireverzi- ERK'2019, Portorož, 318-321 318 bilne elektroporacije, kot tudi v biotehnoloških aplikacijah, npr. za ekstrakcijo biomolekul iz mikroorganizmov in rastlin ter za inaktivacijo mikroorganizmov [2, 3]. Pri genski transfekciji z uporabo metode reverzibilne elektroporacije olajšamo prehajanje genskega materiala (običajno plazmidne DNK) v celice. Najpogosteje uporabljena tkiva za gensko elektrotransfekcijo so zaradi svoje velikosti in enostavne dostopnosti skeletne mišice. Ker se mišične celice ne delijo, je izražanje genov po genski elektrotransfekciji dolgo prisotno [4, 5]. Elektroporacijski pulzi poleg tega, da povečajo prepustnost celične membrane, prek elektroforetske sile omogočijo večje število vezav med plazmidno DNK in celičnimi membranami, ki so potrebne za uspešnost genske transfekcije [6]. Zato je za doseganje visoke učinkovitosti genske elektrotransfekcije ključnega pomena optimizirati parametre električnih pulzov in geometrijo elektrod upoštevaje lastnosti ciljnega tkiva, pri čemer si lahko pomagamo z numeričnim modeliranjem [7, 8]. Z vidika numeričnega modeliranja je pomembno dobro poznavanje električnih lastnosti tkiva. Pregled literature kaže, da skeletne mišice izkazujejo izrazito anizotropne električne lastnosti [9–12]. Ugotovljeno je bilo, da je električna prevodnost skeletnih mišic v smeri vlaken višja od električne prevodnosti v smeri pravokotno na vlakna. V pričujoči študiji smo skušali na podlagi ex vivo meritev električne napetosti in električnega toka med elektroporacijo v hrbtni mišici (Longissimus dorsi) prašiča in z uporabo numeričnega modeliranja določiti prvotno stopnjo anizotropnosti uporabljene skeletne mišice, tj. stopnjo anizotropnosti mišice preden so njene lastnosti spremenjene zaradi elektroporacije. 2 2.1 Metode Protokol meritev in geometrija uporabljenih elektrod Meritve električne napetosti in električnega toka so bile opravljene ex vivo v hrbtni mišici (Longissimus dorsi) prašiča. Opravljenih je bilo deset parov meritev z apliciranimi napetostmi med 60 V in 225 V. Par meritev sestavljata meritvi pri enaki napetosti v dveh različnih orientacijah elektrod glede na smer mišičnih vlaken; v prvem primeru je orientacija elektrod takšna, da je smer električnega polja enaka smeri mišičnih vlaken, v drugem primeru pa je orientacija elektrod takšna, da je smer elek- tričnega polja pravokotna na smer mišičnih vlaken. S prototipnim elektroporatorjem [13] (Univerza v Ljubljani, Fakulteta za elektrotehniko, Laboratorij za biokibernetiko) je bil za vsako meritev doveden en pulz dolžine 100 µs, pri tem sta bila izmerjena in beležena električna napetost in tok. Slika 1 prikazuje shematski prikaz orientacije elektrod z ozirom na smer mišičnih vlaken. Pri tem je s ϕ označen kot med smerjo električnega polja in smerjo mišičnih vlaken. Uporabljeni sta bili dve paralelni igelni elektrodi z aktivno dolžino (dolžina neizoliranega dela v tkivo vstavljenih elektrod) 20 mm in premerom 0,7 mm. Razdalja med centroma elektrod je znašala 4 mm. y φ z mišična vlakna E x Slika 1: Shematski prikaz orientacije elektrod z ozirom na smer mišičnih vlaken. 2.2 Numerično modeliranje Numerično modeliranje smo izvedli z dinamičnim modelom, ki omogoča izračun časovnega poteka električnega toka dovedenih elektroporacijskih pulzov z metodo končnih elementov [14, 15]. Model je implementiran kot dodatek za paket Wolfram Mathematica (Wolfram Research, Champaign, Illinois) z dodatnimi paketi AceFEM in AceGen [16]. Model kot vhodne podatke sprejme ustrezno filtrirane in decimirane časovne signale napetosti, mrežo končnih elementov, parametre, s katerimi definiramo električne in toplotne lastnosti uporabljenega tkiva, ter parametre, ki definirajo dinamiko velikosti in števila por med elektroporacijo. Nekateri izmed parametrov so empirične narave in so bili določeni z iskanjem najboljšega ujemanja med izmerjenimi električnimi tokovi v govejih jetrih ex vivo ter tokovi dobljenimi z numeričnimi simulacijami. Z modelom smo najprej določili krivulje Inorm (ϕ), glej sliko 3, ki smo jih potem uporabili za določitev prvotne stopnje anizotropnosti mišičnega tkiva. Krivulje na sliki 3 prikazujejo normirano pričakovano vrednost električnega toka v odvisnosti od orientacije vstavljenih elektrod (kot ϕ) z ozirom na smer mišičnih vlaken za različne vrednosti anizotropnega razmerja začetnih električnih prevodnosti v smeri x proti smeri y mišičnega tkiva, ki smo ga definirali kot: 0 0 0 ARxy = σxx /σyy , (1) 0 pri čemer je ARxy anizotropno razmerje začetnih električnih prevodnosti ne-elektroporiranega tkiva v 319 smeri x proti smeri y (v nadaljevanju kar krajše anizotro0 pno razmerje ali AR), σxx začetna električna prevodnost 0 mišičnega tkiva v smeri mišičnih vlaken in σyy začetna električna prevodnost mišičnega tkiva v smeri, ki je pravokotna smeri mišičnih vlaken in pravokotna na smer vstavitve elektrod v tkivo (glej sliko 1). V modelu smo upoštevali sigmoidno spreminjanje električne prevodnosti tkiva v odvisnosti od jakosti električnega polja, pri čemer predpostavimo, da pride do poracije tkiva v smeri mišičnih vlaken (x) že pri nižji jakosti električnega polja kot v smereh, pravokotnih na mišična vlakna (y, z). To pomeni, da se električna prevodnost tkiva v smeri mišičnih vlaken začne višati že pri nižji jakosti električnega polja kot v smereh, pravokotnih na mišična vlakna [17]. Slika 2 prikazuje odvisnosti σxx (E) in σyy (E) v primeru, ko je vrednost anizotropnega razmerja AR enaka 2,0. Pri tem predpostavimo, da je x os koordinatnega sistema usmerjena v smeri mišičnih rev vlaken. Tako je Exx prag reverzibilne elektroporacije rev rev v smeri mišičnih vlaken, Eyy = Ezz prag reverzibilne elektroporacije v smereh, pravokotnih na mišična vlakna, E irev pa je prag ireverzibilne elektroporacije in je enak v vseh smereh. Uporabili smo naslednje številske vrednorev rev rev sti: Exx = 80 V cm−1 , Eyy = Ezz = 200 V cm−1 in irev −1 E = 450 V cm [7, 17]. Slika 2: Prikaz sigmoidnega spreminjanja električnih prevodnosti σxx (E) in σyy (E) v odvisnosti od jakosti električnega polja z označenimi pragovi elektroporacije za vrednost AR = 2,0. Poleg odvisnosti električne prevodnosti tkiva od jakosti lokalnega električnega polja, smo upoštevali tudi dodatno povišanje električne prevodnosti tkiva v smeri polja [18, 19]. Pojav je bil opažen med spremljanjem električne prevodnosti pri elektroporaciji piščančjih jeter ex vivo z uporabo magnetne resonančne električne impedančne tomografije [18], in ga razlagamo kot posledico tvorbe večine por v celični membrani na mestih, kjer je vsiljena transmembranska napetost najvišja, tj. na mestih, kjer je celična membrana pravokotna na smer električnega polja [1]. Vrednosti električne prevodnosti v smereh x in y nad ireverzibilnim pragom poracije (velja samo za ϕ = 0◦ in ϕ = 90◦ ) sta določeni z naslednjima enačbama: 1 0 σxx = A σxx (1 + B cos ϕ), (2) 1 0 σyy = A σyy (1 + B sin ϕ), (3) Slika 3: Normirana pričakovana vrednost električnega toka v odvisnosti od orientacije elektrod ϕ za različne vrednosti parametra AR. Velja za en doveden pulz dolžine 100 µs in napetosti 150 V. pri čemer parameter A odraža povišanje električne prevodnosti zaradi električnega polja v vseh smereh, parameter B pa dodatno povišanje električne prevodnosti samo v dominantni smeri električnega polja. V tej študiji smo uporabili vrednosti A = 3,0 in B = 0,25, v grobem določeni na podlagi literature ter smiselno preračunani za proučevani primer. Z modelom smo naredili večje število simulacij, in sicer smo na podlagi izmerjenega časovnega poteka električne napetosti elektroporacijskega pulza dolžine 100 µs simulirali pričakovan časovni potek električnega toka. Pri tem smo uporabili pet različnih napetosti pulzov (iste vrednosti napetosti, kot so bile uporabljene pri meritvah v hrbtni mišici prašiča) za 19 različnih kotov ϕ (med 0◦ in 90◦ , s korakom 5◦ ) in za 23 različnih vrednosti anizotropnega razmerja AR (med 0,5 in 5,0). Skupaj smo tako izvedli 2185 simulacij. Nato smo izračunane vrednosti električnega toka pri različnih orientacijah elektrod, ki ustrezajo določeni vrednosti aplicirane električne napetosti in določeni vrednosti anizotropnega razmerja, normirali z ustrezno izračunano vrednostjo električnega toka pri orientaciji ϕ = 0◦ . Tako smo za vsako izmed izbranih anizotropnih razmerij in za vsako od izbranih električnih napetosti dobili krivuljo, ki prikazuje pričakovan električni tok v odvisnosti od orientacije elektrod glede na mišična vlakna. Določanje stopnje anizotropnosti mišičnega tkiva smo izvedli tako, da smo za vsak par meritev (enaka amplituda, enkrat pri orientaciji 0◦ in drugič pri 90◦ ) vzeli izmerjeno vrednost električnega toka na koncu pulza, nato pa vrednost pri 90◦ normirali z vrednostjo pri 0◦ (slika 4 prikazuje eno izmed opravljenih meritev, kjer je s križcem označena vrednost toka, ki smo jo uporabili). Vrednost anizotropnega razmerja AR smo nato 320 določili z linearno interpolacijo med dvema najbližjima krivuljama (slika 3 prikazuje te krivulje za primer pulza dolžine 100 µs napetosti 150 V). Na ta način preko primerjave med simuliranim in dejanskim izmerjenim tokom pri enakem vhodnem signalu (časovni potek napetosti pulza) retrogradno sklepamo na začetno, tj. prvotno stopnjo anizotropnosti tkiva, ki jo podaja z enačbo (1) definirani parameter AR. Slika 4: Ena izmed opravljenih meritev električnega toka. S križcem je označena vrednost, ki smo jo uporabili pri določanju vrednosti parametra AR. 3 Rezultati Z numeričnim modelom smo določili krivulje, ki prikazujejo normirano pričakovano vrednost električnega toka v odvisnosti od orientacije elektrod ϕ za različne vrednosti parametra AR. Oblika teh krivulj je odvisna od geometrije elektrod in od dolžine ter napetosti pulza. Slika 3 prikazuje krivulje, ki veljajo za v našem eksperimentalnem primeru uporabljeno geometrijo elektrod in en doveden pulz dolžine 100 µs napetosti 150 V. Iz meritev toka ter z uporabo simuliranih krivulj normirane pričakovane vrednosti toka v odvisnosti od orientacije elektrod smo določili vrednost parametra AR za vseh deset parov opravljenih meritev (glej sliko 5). Geometrijsko povprečje anizotropnih razmerij AR za vseh deset parov meritev znaša 1,15, faktor geometrijske standardne deviacije pa 1,67. Geometrijsko povprečje in standardno deviacijo navajamo zato, ker mora statistična funkcija za povprečje obratnih vrednosti vrniti vrednost 1, saj je anizotropno razmerje AR definirano kot kvocient dveh vrednosti. Zahvala Študijo sta delno financirala Javna agencija za raziskovalno dejavnost Republike Slovenije in podjetje RenBio. Literatura [1] T. Kotnik et al.: Membrane Electroporation and Electropermeabilization: Mechanisms and Models. Annu. Rev. Biophys. 48: 63-91, 2019. [2] ML. Yarmush et al.: Electroporation-based technologies for medicine: principles, applications, and challenges. Annu. Rev. Biomed. Eng. 16: 295-320, 2014. [3] S. Haberl et al.: Cell membrane electroporation – Part 2: The applications. IEEE Electr. Insul. M. 29(1): 29-37, 2013. [4] C. Rosazza et al.: Gene electrotransfer: A mechanistic perspective. Curr Gene Ther. 16: 98–129, 2016. [5] E. Sokolowska et al.: A Critical review of electroporation as a plasmid delivery system in mouse skeletal muscle. Int J Mol Sci. 20(11): 2776, 2019. [6] C. Faurie et al.: Electro-mediated gene transfer and expression are controlled by the life-time of DNA/membrane complex formation. J. Gene Med. 12: 117-125, 2010. [7] A. Županič et al.: Numerical optimization of gene electrotransfer into muscle tissue. Biomed Eng Online 9:66, 2010. Slika 5: Dobljene vrednosti parametra AR za vseh deset parov opravljenih meritev. [8] T. Forjanič & D. Miklavčič: Numerical study of gene electrotransfer efficiency based on electroporation volume and electrophoretic movement of plasmid DNA. Biomed. Eng. Online 17:80: 1-10, 2018. 4 [9] C. Gabriel et al.: The dielectric properties of biological tissues: I. Literature survey. Phys. Med. Biol. 41: 2231–2249, 1996. Razprava Pri dobljenih vrednostih anizotropnega razmerja AR lahko opazimo velik raztros. Najnižja vrednost AR znaša 0,58, najvišja pa 2,81. Geometrijsko povprečje vseh anizotropnih razmerij znaša 1,15, kar kaže na to, da je v povprečju prvotna prevodnost v smeri mišičnih vlaken res višja kot v smeri, pravokotno na mišična vlakna, vendar je raztros rezultatov prevelik, da bi to vrednost lahko sprejeli kot zanesljivo. Eden od možnih vzrokov za velik raztros je kót vstavitve elektrod glede na mišična vlakna, ki ga ni bilo moč natančno izmeriti, saj bi bilo to moč storiti le s histološko analizo. Elektrode so bile v tkivo vstavljene na podlagi vizualnega pregleda površine mišice v prizadevanju, da bi bila orientacija elektrod kar se le da vzporedna oz. pravokotna na vlakna. Problematična je lahko tudi lokacija vstavitve elektrod. Mišično tkivo je dokaj nehomogeno, lastnosti se spreminjajo z oddaljenostjo od narastišča, poleg tega usmerjenost vlaken lahko variira v danem volumnu mišice, v katerem se vzpostavi električno polje. S to študijo smo želeli pokazati, kako je moč prek modeliranja elektroporacije določiti prvotno stopnjo anizotropnosti mišičnega tkiva kot intrinzično in od elektroporacije neodvisno lastnost tkiva. Za zanesljivejše rezultate je potrebno zagotoviti visoko natančnost pri vstavljanju elektrod v tkivo, nato pa tudi izmeriti dejanski kot vstavljenih elektrod glede na potek mišičnih vlaken v kolikor je to mogoče, ter skušati kar se le da zmanjšati vpliv dejavnikov z naslova biološke variabilnosti. 321 [10] S. Gabriel et al.: The dielectric properties of biological tissues: II. Measurements in the frequency range 10 Hz to 20 GHz. Phys. Med. Biol. 41: 2251–2269, 1996. [11] S. Gabriel et al.: The dielectric properties of biological tissues: III. Parametric models for the dielectric spectrum of tissues. Phys. Med. Biol. 41: 2271– 2293, 1996. [12] D. Miklavčič et al.: Electric properties of tissues. Wiley Encyclopedia of Biomedical Engineering: 3578-3589, 2006. [13] P. Mekuč: Razvoj in preizkus visokofrekvenčnega bipolarnega elektroporatorja: magistrsko delo. Ljubljana, 2017. [14] J. Langus et al.: Dynamic finite-element model for efficient modelling of electric currents in electroporated tissue. Sci. Rep. 6: 26409, 2016. [15] M. Pintar et al. Time-dependent finite-element analysis of ex vivo electrochemotherapy treatment. Technol. Cancer. Res. Treat. 17: 1-9, 2018. [16] J. Korelc & P. Wriggers: Automation of Finite Element Methods. Springer International Publishing; 2016. [17] S. Čorović et al.: The influence of skeletal muscle anisotropy on electroporation: ex vivo study and numerical modeling. Med. Biol. Eng. Comput. 48: 637-648, 2010. [18] M. Essone Mezeme et al.: Assessing how electroporation affects the effective conductivity tensor of biological tissues. Appl. Phys. Lett. 101: 213702, 2012. [19] N. Labarbera & C. Drapaca: Anistropically varying conductivity in irreversible electroporation simulations. Theor. Biol. Med. Model. 14(1): 20, 2017. Ireverzibilna elektroporacija – nova rešitev za zdravljenje atrijske fibrilacije Jernej Štublar1,2, Tomaž Jarm1, Matevž Jan2, David Žižek2, Damijan Miklavčič1 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana 2 Univerzitetni Klinični center Ljubljana, Zaloška cesta 7, 1000 Ljubljana jernej.stublar@gmail.com Irreversible electroporation – a new solution for treatment of atrial fibrillation Abstract. Atrial fibrillation (AF) is a growing health problem in aging population of Europe and North America. Besides the antiarrhythmic drugs, the pulmonary veins isolation (PVI) procedure is the only effective treatment currently available. Although the efficacy and safety of PVI methods have been improving over the last 20 years, there is a constant appeal for diverse ablation technologies to treat AF. Irreversible electroporation (IRE) is a method in which intense electric field affects the lipid bilayer of the cell membrane thus causing cell death. Unlike conventional heart ablation technics (radiofrequency ablation (RFA) and cryoablation) IRE does not depend on thermal effects. IRE is already in clinical use for treatment of liver cancer and was in the last decade extensively studied on animals for treatment of heart arrythmias. With the elimination of thermal injuryrelated complications of PVI, preclinical tests showed increased safety profile compared to RFA and cryoablation. Additionally, the first clinical study indicated superiority in efficacy, resulting in durable PVI in short-term follow-up. With short treatment duration, efficacy and safety profile IRE method has the potential to revolutionize treatment of AF. However, large multicenter trials are needed, before implementation into clinical practice. 1 Uvod Atrijska fibrilacija (AF) je motnja srčnega ritma, pri kateri se preddvora krčita povsem neurejeno in tako izgubita vso sposobnost črpanja krvi. AF je najpogostejša aritmija, ki prizadene kar 9% starejših od 80 let [1,3]. V Sloveniji se ocenjuje, da je bolnikov z AF približno 15.000 in čeprav ta bolezen ni neposredno ogrožajoča za življenje, bistveno poslabšuje kvaliteto življenja in je najpogostejši dejavnik tveganja za povzročitev možganske kapi zaradi krvnega strdka, ki lahko nastane v levem preddvoru [2,3]. AF glede na stopnjo delimo v 3 skupine: paroksizmalna AF, kjer epizoda aritmije s spontanimi prekinitvami traja največ 7 dni, perzistentna AF, kjer epizoda aritmije traja več kot 7 dni ter dolgotrajna perzistentna AF, kjer aritmija neprekinjeno traja več kot 1 leto. Pri zdravljenju AF imamo na izbiro dve strategiji. Vzdrževanje normalnega, sinusnega ritma (angl. rhythm control), kjer z zdravili ali z minimalno invazivnim posegom (perkutano katetrsko ablacijo) preprečujemo ERK'2019, Portorož, 322-325 322 ponovitve AF. Perkutana kateterska ablacija je dokazano učinkovitejša metoda, katere temelj je električna izolacija pljučnih ven (angl. Pulmonary Vein Isolation - PVI), ki izraščajo iz levega preddvora [3]. Že pred več kot 20 leti so namreč pokazali, da se večina sprožilcev za nastanek AF nahaja v pljučnih venah. Z izolacijo pljučnih ven so dosegli 62% uspešnost preprečitve ponovnega pojava AF v obdobju 8 mesecev po posegu [4]. Strategija ureditve srčne frekvence (angl. rate control) temelji na medikamentozni terapiji, s katero poskušamo upočasniti prevod električnih impulzov iz preddvorov v prekata. 2 Metode zdravljenja AF z ablacijo V Sloveniji naredimo nekaj več kot 300 posegov PVI na leto, kar predstavlja malo manj kot polovico vseh srčnih elektrofizioloških posegov za zdravljenje aritmij. Zaradi kompleksnosti in dolgotrajnosti posega so kandidati za ta poseg le bolniki z izrazitimi težavami vezanimi na paroksizmalno, perzistentno in dolgotrajno perzistentno AF. Trenutno najbolj razširjena metoda za PVI je radio frekvenčna ablacija (RFA), kjer lahko z dovajanjem električnega toka sinusne oblike v frekvenčnem območju od 400 do 1.000 kHz skozi konico ablacijskega katetra, trajno tarčno poškodujemo del srčne mišice. Pri ablacijskem posegu nanizamo več opisanih tarčnih poškodb srčne mišice okrog ustij pljučnih ven in s tem dosežemo njihovo električno prekinitev. Izolacija ven prepreči prevajanje patološkega električnega signala iz pljučnih ven v levi preddvor in potencialno sprožitev AF. Kljub nedavnim tehnološkim izboljšavam na področju uporabe sodobnih računalniških sistemov za tridimenzionalno vizualizacijo srca ter sposobnosti merjenja kvalitete kontakta ablacijskega katetra s tkivom in posledične 100% uspešnosti pri doseganju PVI med ablacijskim posegom, se dolgoročna 3 letna uspešnost giblje med 54% po enem in 79% po ponovljenih posegih PVI [1]. Zaradi pomembne razlike v dolgoročni uspešnosti po več posegih in ker praviloma pri vsakem ponovnem posegu vsaj ena od pljučnih ven ni izolirana, trajna PVI ostaja primarni cilj zdravljenja AF z ablacijo. V zadnjem obdobju pospešeno iščemo novo ablacijsko metodo, ki bi bila varnejša, enostavnejša, hitrejša ter vsaj primerljivo uspešna kot je danes RFA. Predvsem zaradi enostavnosti je trenutno najbolj zanimiva balonska krioablacija, s katero stik med balonskim katetrom in tkivom ohlajamo s tekočim dušikom [5]. Metoda je primerljivo uspešna kot RFA [18], ker pa je princip poškodbe tarčnega tkiva prav tako toploten (i.e. odvzem toplote), so podobne tudi omejitve zaradi možnih poškodb sosednjih tkiv (požiralnik, živec trebušne prepone, srčne žile, itd). 3 Ireverzibilna elektroporacija Elektroporacija je pojav, pri katerem se zaradi dovedenega električnega pulza in v tkivu vzpostavljenega električnega polja spremeni prepustnost lipidnega dvosloja celične membrane, kar omogoča prehajanje ionov ter tudi večjih molekul skozi pore v celični membrani. Ko celica po električnem pulzu ne more več vzpostaviti normalne homeostaze, kar privede do celične smrti, govorimo o ireverzibilni elektroporaciji (IRE). Na vrsto elektroporacije vplivajo jakost električnega polja, širina pulza, frekvenca dovedenih pulzov ter število pulzov (slika 1) [9]. Reverzibilna elektroporacija, pri kateri celica preživi izpostavitev električnim pulzom je že desetletja uveljavljena metoda v onkologiji pri zdravljenju kožnega raka kot dopolnitev kemoterapije (elektrokemoterapija). V tem primeru elektroporacija omogoča, da citostatično zdravilo v lokaliziranem področju prehaja v rakave celice in jih nato uniči [10]. Pridobljeno znanje se v zadnjem obdobju širi na druga področja onkologije [11] in tudi širše [12]. IRE se je uveljavila v klinični praksi za ablacijo tumorjev na jetrih predvsem v bližini velikih žil, kjer je kirurška odstranitev tvegana ali celo onemogočena [13, 14]. Slika 1. Vrsta elektroporacije v odvisnosti od jakosti električnega polja in trajanja pulza [9]. IRE kot netermična ablacijska metoda je tako tudi v srčni elektrofiziologiji sprožila veliko zanimanja; po desetletju raziskav na živalih so jo lani prvič uporabili kot ablacijsko metodo za PVI v klinični raziskavi [6, 29]. 323 3.1 Pregled predkliničnih raziskav IRE na srcu Metoda IRE na srcu, je zaradi prepoznanega potenciala povzročila hkratno raziskovanje različnih skupin, kar se je odrazilo v izredni heterogenosti podatkov o dovedenih električnih pulzih. Posledično je primerjava rezultatov težka. V zadnjem pregledu 16 predkliničnih raziskav so ugotovili uporabo kar 14 različnih IRE ablacijskih katetrov. Konsistentno so avtorji navajali le število pulzov od 1 – 200 ter širino posameznega pulza, kjer je uporabljena vrednost od 20 µs do 6 ms. Pri navajanju dovedene električne energije pa se upanje za meta-analizo razblini, saj so v devetih študijah navajali dovedeno električno energijo, v štirih električno napetost in v dveh električni tok [7], seveda brez navajanja impedance tkiva. V sistematičnem preglednem članku [7] so avtorji objavili tabelo ključnih IRE parametrov, ki naj jih vsebuje vsak članek, ki preučuje vpliv IRE na biološka tkiva. V tabeli navedeni parametri sledijo priporočilu za področje elektrokemoterapije v kliniki [15] in predkliničnih raziskav učinkov elektroporacije [16]. Kar 9 od 16 predkliničnih raziskav na področju IRE na srcu prihaja od raziskovalne skupine iz Utrechta [2028]. Njihova posebnost je, da so za visokonapetostni enosmerni generator za dovajanje IRE na srcu uporabili kar komercialno dostopen defibrilator. Na en pol so priključili prilagojen 14 polni ablacijski kateter z zanko in na drugi pol nevtralno elektrodo prilepljeno na kožo. Tako so dobili unipolarno konfiguracijo, kar pomeni, da električni tok steče od srca preko prsnega koša in povzroči bolečo stimulacijo skeletnih mišic, zato je pri takih posegih nujna splošna anestezija. Velika omejitev takega generatorja je, da se lahko nastavlja le dovedeno energijo v J in ne oblike, napetosti ter trajanja pulzov, ki so ključni parametri pri elektroporaciji. Ključna komponenta defibrilatorjev so visokonapetostni kondenzatorji, kjer se lahko ob polni polnitvi doseže napetost tudi preko 2.000 V, kar je očitno zadostovalo, da so pri energiji 200 J in trajanju defibrilacijskega pulza 6 ms, presegli prag IRE mišičnih celic levega preddvora, kar so potrdili z letošnjo objavo 10 posegov PVI na bolnikih [29]. Kljub neenotnemu poročanju se je v vseh 16 študijah potrdila izredna varnost, saj so le v enem primeru zaznali pomembno komplikacijo vezano na metodo IRE, sprožitev ventrikularne fibrilacije, pa še to je bila posledica nehotenega premikanja ablacijskega katetra ravno med dovajanjem pulzov. Tako kot na področju onkologije [17] se tudi pri IRE na srcu priporoča sinhronizacijo dovajanja pulzov z absolutno refraktarno dobo prekatov (znotraj QRS kompleksa). V nobeni od predkliničnih študij, kljub usmerjenemu dovajanju pulzov neposredno na požiralnik, znotraj pljučne vene, na tkivo v bližini živca trebušne prepone ali direktno preko srčne arterije, niso uspeli izzvati nobenega od zapletov, ki običajno spremljajo termične metode (RFA in krioablacijo) in so posledica njihovega delovanja na omenjena okoliška tkiva. Razlaga za izredno varnost je najverjetneje v selektivni občutljivosti tarčnih mišičnih celic na elektroporacijo; njihov prag za uspešno IRE je vsaj 4x nižji od okoliškega tkiva (slika 2) [8]. izredno koristno v nagubanih predelih (avrikuli levega preddvora), saj se je lezija homogeno širila okoli trabekul in mišičnih vlaken. 3.2 Slika 2. Prag jakosti električnega polja za IRE različnih bioloških tkiv v srcu [8]. V predklinični raziskavi, v kateri so primerjali IRE in RFA na različnih mestih v desnem in levem preddvoru [19], so pokazali primerljivo učinkovitost s patološko analizo transmuralnosti lezij, 16 od 21 za IRE in 13 od 20 za RFA. Raziskava je zanimiva tudi zaradi dejstva, da so za obe metodi uporabili enak komercialno dostopen ablacijski kateter. V raziskavi so avtorji tudi vzorno navedli IRE protokol, ki ga je sestavljalo 5 vlakov po 60 ciklov, kjer je cikel predstavljal dva bifazna pulza pravokotne oblike z amplitudo 500 V ter širino 100 µs (slika 3). Med pulzoma je bila 200 µs pavza tako, da je vlak pulzov trajal 36 ms in je bil sinhroniziran z QRS kompleksom. Slika 3. Prikaz enega IRE cikla [19]. Za IRE so uporabljali bipolarno konfiguracijo pulzov, kar pomeni da sta oba pola na konici katetra in da za razliko od RFA in IRE pri skupini iz Utrechta niso uporabili nevtralne elektrode na koži, s čimer so se izognili stimulaciji diafragme in skeletnih mišic in prav tako niso zaznali nobene škode na okoliškem tkivu. V protokol je bila vključena tudi 5 V stimulacija pred in po vsaki RFA ali IRE ablaciji, s čimer so ob uspešni stimulaciji srca konsistentno potrdili kontakt ablacijskega katetra s tkivom. Nezmožnost stimulacije po ablaciji je eden od parametrov za ocenitev kvalitete lezije, kjer se je IRE izkazala za superiorno z 100% izgubo stimulacije v primerjavi z 92% pri RFA (p = 0,005). Metoda IRE se je, za razliko od RFA, izkazala za manj občutljivo glede potrebe po dobrem kontaktu konice katetra z mišičnim tkivom, kar se je pokazalo za 324 Prva klinična raziskava Opogumljeni z varnostjo IRE, so se raziskovalci zelo hitro odločili za prvo klinično raziskavo, kljub pomankanju dobro definiranega protokola za dovajanje pulzov za učinkovito PVI. Med raziskavo so kar štirikrat spremenili protokol dovajanja pulzov, ki pa ga zaradi lastniških pravic sponzorja raziskave niso objavili. Znano je le, da so uporabljali bipolarno konfiguracijo pulzov. Konfiguracijo pulzov so iz monofaznih spremenili v bifazne, saj so se tako izognili potrebi po splošni anesteziji, ki je bila zaradi boleče stimulacije skeletnih mišic sicer potrebna pri monofaznih pulzih [8]. Predlagali so tudi ime za to perspektivno novo ablacijsko metodo, ki je iz IRE na srcu postala PFA (angl. Pulse Field Ablation), verjetno z namenom, da bi IRE na srcu ločili od drugih področij uporabe IRE. Rezultati prve klinične študije IRE na srcu so odlični, saj so s prilagoditvami protokola uspeli zagotoviti 100% izolacijo vseh pljučnih ven tudi po treh mesecih sledenja [8], kar do danes še ni bilo doseženo z nobeno drugo ablacijsko metodo. Poleg izredne učinkovitosti niso zabeležili nobenega od možnih zapletov PVI kot so poškodba požiralnika, pareza živca trebušne prepone oziroma zožitve katere od pljučnih ven. Z znotrajsrčnim ultrazvokom so sicer opažali tvorbo mikro mehurčkov v levem preddvoru, ki so jih pripisali verjetni elektrolizi, vendar kasneje niso zabeležili nobenih neželenih učinkov in tudi z magnetno-resonančnim slikanjem možganov niso ugotovili ishemičnih dogodkov, ki bi lahko bili posledica embolizmov. IRE na srcu glede na dosedanje objave in poročila obeta pravo revolucijo na področju zdravljenja AF s PVI, saj je trajanje ablacije krajše od 3 minut in je bilo za manipulacijo ablacijskega katetra v levem atriju potrebnih le dobrih 33 minut [8]. Za izvedbo posega PVI z RFA ali krioablacijo je čas manipulacije ablacijskega katetra v levem atriju 109 oziroma 92 minut [18]. 4 Zaključek Incidenca in prevalenca AF starajočega se prebivalstva v Evropi in Severni Ameriki postaja vse večje zdravstveno breme. Dosedanje raziskave IRE na srcu so spodbudne, vendar je do uvedbe te metode v redno klinično prakso potrebna potrditev uspešnosti in varnosti v večjih multicentričnih raziskavah. Elektroporacijo že desetletja uspešno uporabljamo v onkologiji, kjer že od samih začetkov sodelujemo tudi strokovnjaki iz Laboratorija za biokibernetiko Univerze v Ljubljani, Fakultete za elektrotehniko. 5 Zahvala Avtorji se zahvaljujemo ARRS, podjetju Medtronic in Univerzitetnemu kliničnemu centru Ljubljana, ki nam omogočajo raziskovanje na tem zelo zanimivem področju IRE na srcu. Literatura [1] S. Kumar, GF Michaud: Pulmonary vein isolation in the treatment of atrial fibrillation, Clin Cardiol 2016:7 47-60. [2] N Lončarič. Kakovost življenja bolnikov z atrijsko fibrilacijo (Diplomska naloga), Maribor: 2018. [3] DL. Packer, DB. Mark, RA. Robb, et al.: Effect of Catheter Ablation vs Antiarrhythmic Drug Therapy on Mortality, Stroke, Bleeding, and Cardiac Arrest Among Patients With Atrial Fibrillation The CABANA Randomized Clinical Trial, JAMA, published online March 15, 2019. doi:10.1001/jama.2019.0693 [4] M. Haïssaguerre, P. Jaïs, DC. Shah, A. Takahashi, et al.: Spontaneous initiation of atrial fibrillation by ectopic beats originating in the pulmonary veins. N Engl J Med 1998;339:659-66. [5] KH. Kuck, J. Brugada, A. Fürnkranz, et al.: Cryoballoon or Radiofrequency Ablation for Paroxysmal Atrial Fibrillation. New England Journal of Medicine, 2016; 374(23), 2235–2245. [6] VY. Reddy, J. Koruth, P. Jais, et al.: Ablation of Atrial Fibrillation With Pulsed Electric Fields: An Ultra-Rapid, Tissue-Selective Modality for Cardiac Ablation. JACC Clin Electrophysiol. 2018 Aug;4(8):987-995. [7] A. Sugrue, V. Vaidya, C. Witt, et al.: Irreversible electroporation for catheter-based cardiac ablation: a systematic review of the preclinical experience, Journal of Interventional Cardiac Electrophysiology, 2019, https://doi.org/10.1007/s10840-019-00574-3 [8] VY. Reddy, P. Neuzil, JS. Koruth, et al.: Pulsed Field Ablation for Pulmonary Vein Isolation in Atrial Fibrillation, Journal of the American College of Cardiology (2019), doi: https://doi.org/10.1016/j.jacc.2019.04.021. [9] T. Kotnik, L. Rems, M. Tarek, D. Miklavčič: Membrane Electroporation and Electropermeabilization: Mechanisms and Models. Annu. Rev. Biophys. 48: 63-91, 2019. [10] D. Miklavčič, B. Mali, B. Kos, et al.: Electrochemotherapy: from the drawing board into medical practice. Biomed. Eng. Online 13: 29, 2014. [11] D. Miklavčič, G. Serša, E. Brecelj, et al.: Electrochemotherapy: technological advancements for efficient electroporation-based treatment of internal tumors. Med. Biol. Eng. Comput. 50: 1213-1225, 2012. [12] D. Miklavčič: Network for development of electroporation-based technologies and treatments. J. Membrane Biol. 245: 591-598, 2012. [13] HJ. Scheffer, K. Nielsen, MC. de Jong, AAJM., et al.: Irreversible electroporation for nonthermal tumor ablation in the clinical setting: a systematic review of safety and efficacy. J Vasc Interv Radiol 2014; 25: 997-1011. [14] B. Kos, P. Voigt, D. Miklavčič, M. Moche: Careful treatment planning enables safe ablation of liver tumors adjacent to major blood vessels by percutaneous irreversible electroporation (IRE). Radiol. Oncol. 49: 234-241, 2015. 325 [15] LG. Campana, AJP. Clover, S. Valpione, et al.: Recommendations for improving the quality of reporting clinical electrochemotherapy studies based on qualitative systematic review. Radiol. Oncol. 50: 1-13, 2016. [16] M. Čemažar, G. Serša, W. Frey, et al.: Recommendations and requirements for reporting on applications of electric pulse delivery for electroporation of biological samples. Bioelectrochemistry 122: 69-76, 2018. [17] B. Mali, V. Gorjup, I. Edhemović, et al.: Electrochemotherapy of colorectal liver metastases – an observational study of its effects on the electrocardiogram. Biomed. Eng. Online 14(Suppl. 3): S5, 2015. [18] KH. Kuck, J. Brugada, A. Fürnkranz, et al.: Cryoballoon or Radiofrequency Ablation for Paroxysmal Atrial Fibrillation, N Engl J Med, April 16 2016. [19] MT. Stewart, DE. Haines, A. Verma, et al.: Intracardiac pulsed field ablation: Proof of feasibility in a chronic porcine model, Heart Rhythm 2019;16:754–764. [20] BC. du Pre, VJ. van Driel, H. van Wessel, et al.: Minimal coronary artery damage by myocardial electroporation ablation. Europace. 2013;15(1):144–9. [21] K. Neven, V. van Driel, H. van Wessel, et al.: Epicardial linear electroporation ablation and lesion size. Heart Rhythm. 2014;11(8):1465–70. [22] K. Neven, V. van Driel, H. van Wessel, et al.: Myocardial lesion size after epicardial electroporation catheter ablation following subxiphoid puncture. Circ Arrhythm Electrophysiol. 2014:CIRCEP. 114.001659. [23] K. Neven, VJ. van Driel, H. van Wessel, et al.: Safety and feasibility of closed chest epicardial catheter ablation using electroporation. Circ Arrhythm Electrophysiol. 2014;7(5):913–9. [24] VJ. van Driel, K. Neven, H. van Wessel H, et al.: Low vulnerability of the right phrenic nerve to electroporation ablation. Heart Rhythm. 2015;12(8):1838–44. [25] VJ. van Driel, KG. Neven, H. van Wessel, et al.: Pulmonary vein stenosis after catheter ablation: electroporation versus radiofrequency. Circ Arrhythm Electrophysiol. 2014;7(4):734–8. [26] FH. Wittkampf, VJ. van Driel, H. van Wessel, et al.: Myocardial lesion depth with circular electroporation ablation. Circ Arrhythm Electrophysiol. 2012;5(3): 581– 6. [27] FH. Wittkampf, VJ. van Driel, H. van Wessel, et al.: Feasibility of electroporation for the creation of pulmonary vein ostial lesions. J Cardiovasc Electrophysiol. 2011;22(3):302–9. [28] K. Neven, R. van Es, V. van Driel, et al.: Acute and longterm effects of full-power electroporation ablation directly on the porcine esophagus. Circ Arrhythm Electrophysiol. 2017;10(5):e004672. [29] P. Loh, R. van Es, MHA. Groen, et al.: Pulmonary vein isolation by irreversible electroporation: first-in-human experience, Heart Rhythm, Vol. 16, No. 5, May Supplement 2019, Poster: S-IA01-014 Didaktika Didactics Spodbujanje inovativnosti s pomočjo tehnologije 3D tiska v okviru kliničnih vaj tehniškega izobraževanja Veronika Šuligoj, Janez Jamšek Univerza v Ljubljani, Pedagoška fakulteta Ljubljana, Kardeljeva ploščad 16, Ljubljana E-pošta: veronika.sinigoj@pef.uni-lj.si Promoting innovativeness by 3D printing technology within engineering education laboratory exercises Abstract. At the Faculty of Education in Ljubljana, we execute university level program of elementary teacher program. In addition to acquiring certain technological skills, competences and skills, future elementary teacher should also be encouraged to innovate and develop innovative products. Paper presents a targeted development of a learning model based on the use of three-dimensional modeling and a 3D printing. Within the framework of the exercises we used the model based on a combination of methods of work assignment, problem learning and motivational assignments. The motivational task is targeted at promoting innovative thinking. In the course of the exercises, the students were challenged to create a functional sailboat. They were divided into two groups, the first one was producing a hull at a given sail and a mast, and the other with a sail at a given torso and a mast. From the pre- and post-tests we determine the degree of critical thinking. The students of the first group expressed a 50 % higher level of innovation than the second group. The reason is primarily in 3D modeling software knowlwdge and thus not beeing able to achieve aerodynamic sails. The learning model with integration of 3D printing proved to be for 44% more successful in solving ideas. 1 Uvod Na Pedagoški fakulteti v Ljubljani v okviru dodiplomskega študijskega programa Razredni pouk (RP) izvajamo predmet Thenika z didaktiko (3 KT, 15 ur predavanj in 30 ur kliničnih vaj) s katerim pokrivamo tehniške vsebine od prvega do petega razreda osnovne šole. Eden izmed ciljev predmeta je tudi usposabljanje študentov s ključnimi kompetencami v 21. stoletju (digitalna pismenost oziroma informacijska pismenost, kritično razmišljanje, sposobnost komunikacije, sposobnost reševanja problemov, ustvarjalnost in inovativnost), [1]. Kritično razmišljanje omogoča študentu sposobnosti odločanja in reševanja problemov, da lahko analizirajo situacije in delajo ustrezne zaključke [2]. Kot najpomembnejše tehniške sposobnosti so izpostavljene integracija in sinteza znanja, konstruktorstvo in inovativnost [3]. Za ta namen smo nedavno razvili učni model za spodbujanje tehniške inovativnosti pri izvajanju kliničnih vaj (KV) pri predmetu Tehnika z didaktiko (TZD) z namenom ERK'2019, Portorož, 327-330 327 zmožnosti njenega transfera na osnovnošolsko raven [4]. V modelu zajemamo inovativnost, ki jo pojmujemo kot bistveno izboljšanje, izpopolnitev ali uvedbo česa novega [5]. Ustvarjalnega razmišljanja se lahko vsak priuči, le ta pa lahko vodi do inovativnosti. Današnji študentje imajo premalo raziskovalno naravnanih, interaktivnih in kolaborativnih učnih izkušenj. Težiti moramo k odvrnitvi pasivnega učnega okolja, ki po mnogih raziskavah odvrača motivacijo in ne spodbuja sposobnosti za vseživljenjsko učenje. Mnogi avtorji se nagibajo k uporabi problemsko zasnovanega poučevanja. Sposobnost problemskega reševanja problemov, pri študentih, izboljša konstruktorsko razmišljanje. Aktivno vključevanje študentov v učni proces pomaga študentom razviti sposobnosti za samoučenje in pridobivanje globljega in dalj časa obstojnega znanja [3]. Sposobnost konstruiranja je ena izmed najpomembnejših sposobnosti človeka. V tehniškem kontekstu le ta predstavlja transformacijo zaznanih možnosti v inovativen proces ali produkt [6]. Bodoče učitelje RP želimo opremiti z ustreznim in sodobnim tehnološkim znanjem, spretnostmi in sposobnostmi, kritičnim, ustvarjalnim in inovativnim razmišljanjem ter pozitivnim odnosom do tehniških vsebin, da bodo kompetentni za prenašanje znanja in motiviranje učencev za poznejše tehniško naravnane izbirne predmete. Predvsem je pomembno, da se distanciramo od enostavne reprodukcije izdelkov in sledimo produkciji novih, originalnih in uporabnih izdelkov. V prispevku podajamo primer izvedbe razvitega učnega modela na primeru enega izmed tipičnih izdelkov, ki se enostavno reproducirajo na razredni stopnji v osnovni šoli. 2 Metoda V študijskem letu 2017/2018 smo izvedli klinične vaje (KV) pri predmetu Tehnika z didaktiko po našem že uveljavljene trostopenjsem modelu, ki je podrobno opisan [7]. Na tem mestu samo povzemimo, da je sestavljen iz 3 sklopov (SK). V vsakem sklopu je značilna prevladujoča metoda izvajanja. V SK1 je delovna naloga, kjer študenti ponovijo in usvojijo znanje, ki ga potrebujejo za uspešno reševanje problema v drugem sklopu. Študenti dobijo natančna navodila, potrebno tehniško dokumentacijo in so pri delu vodeni. Drugi sklop, SK2, zajema induktivno učno metodo, problemsko učno delo, kjer je študentom podan problem, ki ga rešujejo z obstoječim znanjem in sposobnostmi. SK3 je nadaljevanje SK2 s poudarkom na samostojnosti reševanja in usmerjevanju v inovativnost. V prispevku izhajamo in učnega modela za spodbujanje tehniške inovativnosti ki smo ga nedavno razvili izhajajoč iz trostopenjskega modela. Učni model združuje drugi in tretji sklop trostopenjskega modela, dodaja povratno zanko za zagotavljanje funkcionalnosti produkta, usmerja v inovativnost z izboljševanjem produkta in dodaja se končno evalvacijo za doseganje vzročno-posledičnih relacij (VP). Podrobneje je predstavljen v [4]. V nadaljevanju povzemamo le bistvo modela. Učni model za spodbujanje inovativnosti je sestavljen iz petih faz (1 - izziv, 2 - znanje, 3 -problem, 4 - inoviraje in 5 - evalviranje) in temelji na različnih učnih metodah in naših prejšnjih ugotovitvah. Učni proces se začne z razumevanjem problema tako, da študentom omogoči izziv z delovno nalogo, 1. faza (izziv). Študenti izdelajo preprost izdelek po danem načrtu, ki je pomemben za področje vsebine. Izhod je kritično mišljenje. Proces aplikacije, analize in vrednotenja se izboljša pri zagotavljanju odgovorov, ki so povezani s posledicami, medtem ko delajo v parih in preizkušajo vnaprej določeno funkcionalnost izdelka. Za razvijanje inovativnosti morajo imeti študenti globlje znanje vsebine. To je zagotovljeno v 2. fazi (znanje). Uporabi se lahko e-učni material. Če študenti že imajo zadovoljivo raven znanja, se lahko faza preskoči. Najdaljša faza je tretja (problem), kjer je izziv iz prve faze stopnjevan na bolj realistično, dejansko in resnično življenje, hkrati pa omejuje dane časovne možnosti. Čeprav temelji na problemsko zasnovani metodi, je prej mešanica induktivnih metod z namenom poudariti tehnološko funkcionalnost in bistvo uporabnosti. Funkcionalnost je zahtevana za minimalno raven rešitve, uporabnost pa za doseganje optimizacijske ravni. To omogoča določanje najboljših rešitev izdelkov in spodbuja inovativne rešitve izdelkov. Metoda, ki se uporablja v tretji fazi, združuje učenje na osnovi izziva (Challenge Based Learning) in učenje na osnovi odkrivanja (Discovery Based Learning). Študenti pridobijo znanje z reševanjem problema na podlagi preteklih izkušenj (faze 1 in 2). Ker problem ni odprt, učenje ne spada pod učenje na osnovi izziva. Nadaljnja uporabljena metoda se lahko obravnava kot mešanica problemsko zasnovanega učenja (PRBL) in projektnega učenja. Študentom omogoča uporabo kritičnega mišljenja, razpoložljivih virov in tehnologije. Vloga učitelja je pomočnik ali mentor. Izhodišče je problem z nejasnimi rešitvami, ki zahtevajo izvirne rešitve študentov. Čeprav študenti aktivno sodelujejo v učnem procesu, ni PRBL, saj se problem ni odprt in študentom ni potrebno preučevati literature in iskati informacije za rešitev problema. Rešitev problema ni teoretična, temveč konkreten izdelek. Metoda tudi ni PJBL, ker je problem v naprej določen in se rešitve problema ne zanašajo na interese študentov [8]. V 3. fazi vsak študent v paru pripravi lastno rešitev za osnutek izdelka, medtem ko se končna rešitev pričakuje kot mešanica obeh osnutkov z močnimi argumenti. 328 Načrtovanje se mora začeti z določitvijo meril funkcionalnosti. Študenti pridobijo vnaprej pripravljeno funkcionalnost izdelka s korekcijo povratne zanke, dokler ne dosežejo (podfaze 3.2-3.4). Faza se konča s tekmovanjem za določitev najboljše rešitve, ki temelji na ukrepih uporabnosti. Izhodiščna uporabnost je definirana s povečevanjem obremenitve produktne rešitve. Ko je 3. faza zaključena, študenti pridobijo nova znanja iz vseh različnih proizvedenih rešitev. Zaradi enostavnosti rešitev problemskih produktov se pričakuje, da bodo študenti pridobili jasne VP povezave do funkcionalnosti in uporabnosti izdelkov. V 4. fazi (inovacija) je naš cilj, da študenti upoštevajo najboljšo rešitev iz 3. faze, ugotovljene VP v 1. fazi in asimilacijo dodatnih podanih znanj v novo rešitev izdelka, ki je nadgradnja na najboljše rešiteve 4. faze. Tako pridobivajo inovativnost. Medtem ko lahko študentje v 3. stopnji prosto testirajo funkcionalnost in uporabijo nov material za izdelavo produktne rešitve, v 4. stopnji, študentje uporabljajo samo dano gradivo in ne preizkušajo svoje funkcionalnosti in uporabnosti - to opravi vodja laboratorijske vaje (zagotavljanje primerljivosti). Zadnja, 5. faza (vrednotenje) je predstavitev inovativnih rešitev, ki se vrednotijo. Razjasnjuje se vsebinske koncepte in odno,. okrepi se induktivno sklepanje, ki spodbuja kritično mišljenje. Študente prosimo, da zagotovijo dodatne VP odgovore. Model učenja se konča s smiselnim učenjem. Za merjenje ravni kritičnega razmišljanja so predlagani pred-test in post-test z vprašanji izbirnega tipa, ki zajemajo višje tri revidirane Bloomove stopnje taksonomije (analizirati, ovrednotiti in ustvariti). Inovativnost študentov je ocenjena s petstopenjsko lestvico, kjer 1 pomeni brez inovativnosti in 5 pomeni zelo inovativno, tabela 1. Tabela 1: Lestvica ocenjevanja inovativnosti, kjer pomeni 5 najvišjo stopnjo. Ocena 1 2 3 4 5 Opisnik Brez vidnih podobnosti z danimi primeri Povezava s teorijo Ni vidne povezave z danimi primeri in s teorijo Preseganje danega okvira Popolnoma drugačen izdelek, ki znatno presega funkcionalnost 4 Rezultati KV pri predmetu Tehnika z didaktiko so se izvajale v zimskem semestru študijskega leta 2018/2019, 1 krat tedensko po 2 uri. V okviru KV1 smo izvedli SK1 in SK2 trostopenjskega modela. KV1 se je udeležilo 71 študentov od tega 2 moškega spola. V okviru KV2 smo izvedli model za spodbujenje inovativnosti (faze 2-5). Prisotnih je biolo 75 študentov, od tega 2 moškega spola. V SK1 so študenti spoznali tehnologijo 3D-tiska (definicijo, princip, namen) in njeno uporabo (gradivo, modeliranje, tiskanje). V drugem SK2 so študenti prejeli ustrezno tehniško-tehnološko dokumentacijo za izdelavo preprostih izdelkov (ploskovnega ravnila in makete smreke sestavljene iz dveh delov). Prvega z namenom seznanjanja z izdelovanjem modela osnovnih likov (Google Sketch-up) in drugega za spoznavanje zatičnega spajanja. Za prvi izdelek so študenti prejeli tehnologijo izdelave, ki je obsegala tudi pretvorbo modela v datoteko STL, priklop tiskalnika, nastavitev parametrov tiskanja in pošiljanje v tisk. Za drugi izdelek so prejeli tehniške risbe (delavniško in sestavno) ter opis še nepoznanih funkcij Sketchup-a. SK1 se je izvajal po strategiji delovne naloge in SK2 s probmeskim učenjem. V KV2 smo študente razdelili v dve skupini (S1, S2). Oblika dela je bila v parih. V prvi fazi učnega modela za spodbujanje ustvarjalnosti so študenti iz S1 dobili jambor (bukova palica premera 3 mm) in jadro iz polivinilacetatne folije v velikosti (40 x 60) mm. Njihova problemska naloga je zajemala izdelavo trupa jadrnice. Študenti iz S2 so dobili trup jadrnice iz ekspandiranega polistirena v velikosti (50 x 100 x 20) mm in jambor iz bukove palice (ϕ3 mm). Njihova problemska naloga je bila izdelti jadro in krmilo. Podan je bil funkcionalni pogoj. Neobremenjena jadrnica naj naravnost prepluje razdaljo 50 cm v 5 sekundah pri konstantnem simuliranem vetru. Uporabnost je bila določena z obremenitvijo jadrnice. Jadrnica, ki je v najkrajšem času in s čim težjim bremenom, naravnost preplula razdaljo 50 cm je bila zmagovalna. Pred-/post-testa sta bila izdelana v prosto dostopni aplikaciji Google Forms. KV1 je zajemala štiri testne postavke, KV2 pa šest testnih postavk izbirnega tipa. Naloge so ciljale na višje taksonomske stopnje, v področju kritičnega mišlenja in konceptualnega/ proceduralnega znanja. Vsak odgovor postavk se je točkoval z eno točko. V tabeli 1 so predstavljeni rezultati pred- in post-testa za KV1. V stolpcu RBT so podane taksonomske stopnje (TS) nalog, proces (1-6) in znanje (A-D). Podano je povprečno število doseženih točk in prirastek znanja v odstotkih za posamezno nalogo. Iz podanih rezultatov lahko vidimo, da so imeli študenti pred izvedbo nizko znanje o uporabljeni tehnologiji 3D tiska. Razlika pred in post testa pa pokaže, da čeprav so vajo uspešno izvedli, da se jim znanje o uporabljeni tehnologiji zmanjšalo. S testnimi postavkami smo ugotavljali, ali bodo znali ustvarjen model predmeta pravilno narisati (zaključene ploskve), ali bodo izbrati najbolj primerno orientacijo tiskanja, ali bodo sposobni prepoznavanja in odpravljanja napak 3D tiskanja, itd. Obvladovanje tehnologije izdelovanja je ključno za sledeče KV2. Pred KV2 so študenti dobili pravilne odgovore s pojasnilom. Tabela 2 prikazuje rezultate pred-testov pri tjetjem sklopu, ki se je izvajal po učnem modelu, slika 1. Vseh 6 postavk je bilo v povezavi z ugotavljanjem vzročno posledicčnih relacij. Za tiste, za katere so imeli v predtestu najmanj znanja so v pos-testu najbolj napredovali (5 od 6 nalog). Najlabše so rešili 1. nalogo, ki so ju v pred-testu rešili najbolj uspešno, vendar pa relacije še vedno niso znali pravilno utemeljiti. V KV2 so študentje skladno z učnim modelom za spodbujanje inovativnosti najprej izdelali osnutek izdelka. 329 Tabela 2. Povprečno število doseženih točk na testih KV1 (SK1, SK2), za pred (T1)- in post-test (T2), kjer pomeni aritmetično sredino in sx standardni odklon. Cronbach α = 0,61. Št. 1.1 1.2 2.1 2.2 3.1 3.2 4.1 RBT T1: /%(sx) 46,48 (0,50) 42,25 (0,49) 7,04 (0,26) 2,82 (0,17) 1,41 (0,12) 9,86 (0,30) 25,35 (0,44) 4C 4B 4B 3C T2: /% (sx) T2-T1 /% 42,25 (0,49) 39,44 (0,49) 7,04 (0,26) 4,23 (0,20) 1,41 (0,12) 7,04 (0,26) 21,13 (0,41) -4,23 -2,81 0,00 1,41 0,00 -2,82 -4,22 Tabela 3. Povprečno število doseženih točk na testih KV2 za pred (T1)- in post-test (T2), kjer pomeni aritmetično sredino in sx standardni odklon. Cronbach α = 0,55. Št. 1.1 1.2 2.1 2.2 3.1 4.1 4.2 5.1 5.2 6.1 RBT T1: /%(sx) 53,52 (0,50) 40,85 (0,49) 85,92 (0,35) 67,61 (0,47) 0,00 (0,00) 49,30 (0,50) 43,66 (0,50) 46,48 (0,50) 50,70 (0,50) 40,85 (0,49) 4B 4B 3C 5B 5B 3C T2: /% (sx) T2-T1 /% 50,67 (0,50) 38,67 (0,49) 85,33 (0,36) 72,00 (0,45) 0,00 (0,00) 53,33 (0,50) 48,00 (0,50) 61,33 (0,49) 62,67 (0,49) 46,67 (0,50) -2,85 -2,18 -0,59 4,39 0,00 4,03 4,34 14,85 11,97 5,82 Tabela 4. Rezultati tekmovanja v 4. fazi 4 učnega modela za spodbujanje inovativnosti za pare S1 in S2, ki so dosegli zadane pogoje funkcionalnosti, kjer pomeni I - dosežena stopnja inovativnosti. S1 S2 Par Čas plovbe /s (breme /g) I Par Čas plovbe /s (breme /g) I 1 2 3 4 5 6 7 8 9 10 11 12 2,84 (10) 2,67 (5) 2,88 (1) 2,89 (1) 3,50 (1) 3,85 (1) 3,90 (1) 4,01 (1) 4,49 (1) 4,58 (1) 4,84 (1) 5,00 (1) 5 5 4 2 3 4 4 4 1 2 3 2 1 2 3 4 5 6 7 8 9 10 11 12 1,85 (10) 2,31 (10) 2,37 (10) 2,54 (10) 2,95 (10) 3,09 (10) 3,10 (20) 3,50 (10) 3,73 (10) 4,17 (10) 5,05 (10) 5,25 (10) 2 2 2 2 2 2 4 2 2 2 2 2 Obe skupini S1, S2 sta morali izdelati manjkajoče dele jadrnice in pri tem upoštevati že podane dele (tehniško in fizikalno). S1 je bila osredotočena na izdelavo trupa jadrnice ob upoštevanju izhodišč jamborja in jadra. Na sliki 1 je prikazan osnutek trupa in trup izdelan s pomočjo 3D tiskanja. S2 je bila osredotočena na izdelavo jadra ob danem trupu in jamborju. V obeh skupinah so lahko sposobnejši pari samostojno zasnovali tudi že dane sestavne dele. Z vprašanji v predtestu so bili usmerjeni v določanje parametrov, ki bistveno vplivajo na funkcionalnost jadrnice. (a) (b) Slika 1. Primeri izdelkov študentov na KV2 izdelani s pomočjo 3D tiskanja. (a) S1: trup in (b) S2: jadro in krmilo. V tabeli 4 so predstavljeni rezultati obeh skupin S1 in S2. S2 je imela že izdelano jadro in jambor. Izdelati so morali trup jadrnice in pri tem upoštevati velikost jadra. Najpogosteje so se opirali na teorijo in izhajali iz poznane oblike trupa jadrnice. Upoštevali so tudi debelino trupa zaradi ugreza jadrnice. Večina izdelanih jadrnic je bila funkcionalnih in uporabnih. V tabeli 4 so prikazani samo pari, ki so zadostili pogojem funkcionalnosti in hkrati prestali tekmovalno fazo 4.2 učnega modela [9]. Trem parom ni uspelo zadostiti zahtevane funkcionalnosti in trije pari niso bili uspešni v nadaljevanju pri obremenitvenem testu jadrnic. Nefunkcionalne jadrnice so se potopile ali pa so se med plovbo vrtele (napačna postavitev jambora). Iz tabele je nazorno, da so pari, ki so izkazvali najvišjo stopnjo inovativnosti (boljša hidrodinamika trupa, upoštevanje ugreza, pozicioniranja jamborja, izdelava krmila), so dosegli tudi najhitrejše čase plovbe in največje obremenjenosti plovil (10 g). S1 je imela že izdelan trup in jambor. Izdelati so morali jadro jadrnice in pri tem upoštevati velikost in maso trupa. V največ primerih so se opirali na teoretično ozadnje in izhajali iz splošno poznanih oblik jadra: prevladujoča trikotna oblika ali pa ukrivljena pravokotna/kvadratna oblika. Pri izdelavi jadra so upoštevali površino jadra. Le ena izdelana jadrnica ni bila funkcionalna. Pri obremenitvi jadrnice je izpadla še ena jadrnica, za preostale pa so rezultati podani v tabeli 4. Nefunkcionalni jadrnici sta imeli premajhno ali preveliko jadro. Povprečna stopnja ocenjene inovativnosti, 2,17, v primeru S2 je nižja kakor za S1, 3,25. Najbolj inovativna jadrnica iz S2 dosega hkrati tudi najvišje obremenitve, kakor v primeru S1. Nižjo raven inovativnosti S2 lahko pripisujemo zlasti neznanju izdelovanja modelov jader, ki presegajo osnovne oblike in bi dosegala še aerodinamično obliko. 5 Zaključki Iz rezultatov lahko sklepamo, da študenti lažje razvijajo kritično mišlenje na konkretnem primeru kakor na teoretični osnovi. Pri izvajanju KV z strategijo delovne naloge se študenti osredotočajo na produkt. Kljub usmerjevanju študentov v ugotavljanje relacijskih odvisnosti v povezavi s funkcionalnostjo s pred-testi, ki jih izvajamo v okviru vseh KV v večini primerov 330 izhajajo iz svojega obstoječega znanja, kjer se izraža tehniško neznanje. Zato ne odpravijo napačno osvojenih konceptov in ne povezujejo vzročno-posledičnih relacij s funkcionalnostjo izdelka, zgolj oblikovno. To se odrazi v znižanju znanja na post-testu. Učni model za spodbujanje inovativnosti smo prvič izvedli v okviru KV v študijskem letu 2017/2018 na izdelku letala. Pri omejenem papirnem gradivu in omejenih tehnoloških postopkih pregibanja, rezanja in leplenja, so omejene tudi možnosti rešitev, še zlasti glede upoštevanja aerodinamičnih oblik. Z uporabo tehnologije 3D tiskanja smo ciljali na odpravo omejitev možnih rešitev, saj lahko s 3D tehnologijo časovno zelo enostavno in učinkovito izdelamo rešitve najbližje izvornim zamislim. Pri izdelovanju trupa so imeli študenti bistveno večji razpon idejnih rešitev, ki so jih večinoma tudi uspešno prenesli v 3D model. Rešitve so zajemale odprte/zaprte trupe, volumen in obliko (tudi upoštevanje hidrodinamike). V primeru skupine S2, ki je izdelovala jadro, so imeli težave zaradi pomanjkanja znanja modeliranjea v Sketchup-u. Izdelovali so osnovne oblike jadr kot trikotno, pravokotno in kvadratno. Stopnja ocenjene inovativnosti pri S2 je bila zato za 50 % nižja kakor pri S1. Glede na prvo izvedbo učnega modela [9] kjer so bili študenti nagnjeni k iskanju trivialnih, neinovativnih rešitev, ki so zadostile le zadanemu problemskemu, se je učni model izkazal za 44 % bolj uspešnega. Kot ključno v učnem modelu za spodbujanje inovativnosti se je izkazala uporaba 3D tehnologije in dobro pripravljeno e-gradivo za dopolnjevanje potrebnega strokovnega znanja. Literatura [1] D. M. Gut, V. G. Wan, Integrating 21st century skills into the curr., Bringing schools into the 21st Century, Springer, New York, str. 137–157, 2011 . [2] R. Stobaugh. Assessing Critical Thinking in Middle and High Schools. New York, Taylor and Francis, 2013. [3] L. Liebenberg, E. H. Mathews. Integrating innovation skills in and introductory engineering design-build course. Int J Technol Des Educ, 22, p. 93-113, 2012. [4] V. Šinigoj, J. Jamšek. Learning model for developing critical thinking and encouraging innovativeness in engineering education by problem based learning, V: Zbornik ERK 2018, 17. – 18. september 2018, Portorož, Slovenija, B. Zajc, ur., A. Trost, ur., Ljubljana: IEEE Region 8, Slovenska sekcija IEEE, str. 449-452, 2018. [5] M. A. Runco. Creativity. Theories and Themes: Research, Development, and Practice, Oxford, Elsevier, 2014. [6] S. Zajc in F. Florjančič. Gradivo: Naravoslovje in tehnika 5, Limbuš, Izotech, 2005. [7] V. Šinigoj, J. Jamšek. Spodbujanje inovativnosti v okviru kliničnih vaj tehniškega izobraževanja, V: Zbornik ERK 2017, 25. – 26. september 2018, Portorož, Slovenija, B. Zajc, ur., A. Trost, ur., Ljubljana: IEEE Region 8, Slovenska sekcija IEEE, str. 555-558, 2017. [8] B. Aberšek. Did. tehniškega izobraževanja med teorijo in prakso, Ljubljana, Zavod Republike Slovenije za šolstvo, 2012. Samoevalvacija študentov na pisnih izpitih pri predmetih s področja regulacijske tehnike David Nedeljković Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, SI-1000 Ljubljana E-pošta: davidn@fe.uni-lj.si Self-evaluation of Students at Courses in the Field of Control Engineering Various forms of self-evaluation are important elements in quality assurance systems that are implemented in the field of education. At the university level it is expected, that the students could perform self-assessment of their learning outcomes objectively. However, Dunning-Kruger effect is frequently detected in self-assessment, when candidates evaluate their abilities as greater than they are, but on the other hand, candidates with factually superior abilities underestimate themselves. At University of Ljubljana, Faculty of Electrical Engineering, two first-cycle (bachelor) study programs in the field of electrical engineering were introduced with the Bologna process in 2009/2010: academic and professional. Both programs comprise the Power Engineering option, where students attend compulsory courses Control Engineering (CE) on academic level or Fundamentals of Control Engineering (FCE) on professional level. The assessment at both courses is in the form of written and oral exam, and a simple self-assessment of written exam has been introduced: before the beginning of the written exam, the students were asked to make a forecast of their result; after the completion of the written exam, they were asked to forecast their result again, now according to their experience. The survey takes into account 538 individual written exams at course CE and 562 ones at course FCE, all from study years 2011/2012 to 2018/2019. At course CE, the average students' forecast prior to the exam was 73.63% and the average self-assessment after the exam was 73.04%, both well matched by students' average actual written exam result at 71.56%. Figures for course FCE are much more different: the average forecast prior to the exam was 65.98%; the average self-assessment after the exam slipped to 59.21% and student's average actual result lowered to 55.69%. Detailed analysis confirms Dunning-Kruger effect, which is more pronounced at course FCE (professional level). 1 Uvod Različne oblike samoevalvacij so pomemben element v sistemih zagotavljanja kakovosti, ki se uveljavljajo na področju izobraževanja [1]. Ena izmed možnosti je tudi samoocenjevanje kandidatov na preizkusih znanja, pri čemer pričakujemo, da bodo študenti na terciarnem nivoju izobraževanja zaradi ustrezne predhodne usposobljenosti znali svoje učne izide objektivno ovrednotiti [2, 3]. Ob tovrstnem samoocenjevanju pa pogosto zaznamo t. i. Dunning-Krugerjev učinek [4], ko študenti, ki sicer dosežejo nadpovprečne rezultate, sami sebe ocenijo nižje, kot so ocenjeni s strani ocenjevalca; ERK'2019, Portorož, 331-334 331 podobno pa študenti, ki jih ocenjevalci ocenijo kot podpovprečne, sami sebi prisodijo višjo oceno. Ta učinek je izrazit celo pri študentih, ki se usposabljajo za pedagoške poklice [5]. Na Fakulteti za elektrotehniko Univerze v Ljubljani po bolonjski prenovi [6, 7] od študijskega leta 2009/2010 dalje izvajamo dva triletna dodiplomska študijska programa 1. stopnje s področja elektrotehnike: univerzitetni program Elektrotehnika (BUN-E) in visokošolski strokovni program Aplikativna elektrotehnika (BVS-AE). Študenti univerzitetnega programa ob vpisu v 3. letnik izberejo eno izmed štirih smeri, med katerimi je tudi smer Energetika in mehatronika (EM). Na tej smeri poslušajo predmet Regulacijska tehnika (RT), kjer se pripravijo na delo tako z linearnimi kot tudi nelinearnimi regulacijskimi sistemi s področja močnostne elektrotehnike. Izpit pri tem predmetu je pisni in ustni, pri čemer imajo študenti možnost opravljanja pisnega dela izpita z dvema kolokvijema. Na visokošolskem strokovnem programu pa študenti že ob vpisu v 2. letnik izberejo eno izmed petih smeri; med njimi je tudi smer Energetska tehnika in avtomatizacija postrojev (ETAP). Tu se v 2. letniku vključijo v obvezni predmet Osnove regulacijske tehnike (ORT), pri katerem usvojijo temeljna znanja iz regulacij s področja močnostne elektrotehnike. Tudi pri tem predmetu je preverjanje znanja v obliki pisnega in ustnega izpita, z možnostjo opravljanja pisnega dela izpita z dvema kolokvijema. Že pred uvedbo prenovljenih programov smo pri predmetih s področja regulacijske tehnike vpeljali samoevalvacijski mehanizem za študente, ki so napovedovali svoje dosežke na pisnih preverjanjih znanja [8]. V nadaljevanju bodo predstavljeni rezultati raziskave samoocenjevanja študentov pri predmetih s tega področja za celotno obdobje po bolonjski prenovi študijskih programov. 2 Samoevalvacija študentov kot napovedovanje rezultatov pisnih izpitov Študente smo pred začetkom pisnega dela izpita ali kolokvija, torej preden so se seznanili z izpitnimi vprašanji in nalogami, zaprosili za enominutni razmislek, po katerem so napovedali, kakšen rezultat pisnega izpita pričakujejo glede na svojo pripravljenost. Študenti so svojo napoved podali zaokroženo na 5 odstotnih točk. Po zaključku pisnega dela izpita ali kolokvija smo študente še enkrat prosili za enominutni razmislek, po katerem so ponovno napovedali svoj rezultat. To, drugo napoved so seveda podali na podlagi svojih konkretnih izkušenj pri reševanju nalog in odgovarjanju na vprašanja pisnega dela izpita ali kolokvija. Tudi tokrat je bila napoved rezultata zaokrožena na 5 odstotnih točk. Zaradi omejenih časovnih okvirov po uvedbi prenovljenih študijskih programov žal nismo utegnili nadaljevati s prakso, po kateri so študenti na ogledu svojih pisnih izdelkov prejeli kopije svojih (rešenih) izpitnih pol in točkovalnik s pravilnimi odgovori oz. rešitvami, na podlagi katerega so morali še sami oceniti svoj pisni izpit. Vseeno pa smo vse študente povabili na ogled pisnih izpitov, kjer jim je bil izročen tudi točkovalnik, tako da so lahko temeljito preverili, kako so bila njihova opravila na pisnem delu izpita vrednotena; v primeru kakršnih koli odstopanj ali nejasnosti smo morebitne ugotovljene napake pri ocenjevanju pisnih izpitov seveda popravili. 3 Rezultati V raziskavo smo vključili vse izpitne roke in kolokvije po prenovi študijskih programov, od 1. kolokvija pri predmetu Regulacijska tehnika v študijskem letu 2011/2012 z dne 30.11.2011, do izpitnega roka pri predmetu Osnove regulacijske tehnike z dne 26.06.2019. Številne izjeme, ki bi lahko popačile celotno sliko, so iz analize izvzete – npr. študenti, ki se kljub prijavi izpita niso udeležili, a so bili zato ocenjeni z 0 %. Pri predmetu Regulacijska tehnika je bilo obravnavanih 538 izpitov ali kolokvijev v osmih študijskih letih na skupaj 43 izpitnih ali kolokvijskih rokih. Od tega je skupaj 16 kolokvijskih rokov: po 8 v posameznem študijskem letu za 1. kolokvij (skupaj 232 prvih kolokvijev) in 2. kolokvij (skupaj 207 drugih kolokvijev) ter 27 rednih izpitnih rokov (skupaj 99 izpitov). Iz teh številk je razvidno, da je večina študentov (od skupaj 258 prvovpisanih na ta predmet v obravnavanih letih) pristopila k opravljanju izpita s kolokviji. Povprečna udeležba študentov na rednih izpitnih rokih je namreč manj kot 4, na 2. kolokviju, kjer je pogoj za udeležbo uspešno opravljen 1. kolokvij, pa je v povprečju sodelovalo več kot 25 kandidatov. Povprečna prehodnost s 1. na 2. kolokvij je bila 89,22 %. Za predmet Osnove regulacijske tehnike smo obravnavali 562 izpitov ali kolokvijev iz osmih študijskih let. Skupno število prvovpisanih študentov pri tem predmetu v zajetih letih je bilo 242. Skupno število izpitnih ali kolokvijskih rokov je bilo enako kot pri predmetu Regulacijska tehnika (43, od tega 16 kolokvijskih rokov in 27 rednih izpitnih rokov), pri čemer je bilo upoštevanih skupaj 180 prvih kolokvijev in 126 drugih kolokvijev ter 256 pisnih izpitov. Hitro razberemo, da je pri tem predmetu prehodnost s 1. na 2. 332 kolokvij 70,00 %, kar je precej manj kot pri predmetu Regulacijska tehnika. Zato je tudi povprečna udeležba na 2. kolokviju manj kot 16 kandidatov, povprečna udeležba na rednem izpitnem roku pa več kot 9. V tabeli 1 so za izpite in kolokvije pri predmetu Regulacijska tehnika prikazani povprečni doseženi rezultat, povprečna napoved pred pisanjem in povprečna napoved po pisanju, skupaj s standardnimi odkloni. Za predmet Osnove regulacijske tehnike pa so relevantni podatki prikazani v tabeli 2. Tabela 1. Napovedi in rezultati pisnih izpitov in kolokvijev pri predmetu Regulacijska tehnika Število Povprečje STD (%) Doseženi rezultat A 538 71,56 20,64 Napoved pred pisanjem B 538 73,63 11,13 Napoved po pisanju C 538 73,04 17,13 Razlika napovedi pred B–A 538 2,07 17,93 Razlika napovedi po C–A 538 1,48 15,62 Tabela 2. Napovedi in rezultati pisnih izpitov in kolokvijev pri predmetu Osnove regulacijske tehnike Število Povprečje STD (%) Doseženi rezultat A 562 55,69 25,45 Napoved pred pisanjem B 562 65,98 12,52 Napoved po pisanju C 562 59,21 19,30 Razlika napovedi pred B–A 562 10,29 23,69 Razlika napovedi po C–A 562 3,52 16,87 Na sliki 1 sta podana histograma za predmeta Regulacijska tehnika (a) in Osnove regulacijske tehnike (b). Histograma prikazujeta deleže študentov, ki so napovedali določen rezultat pred pisanjem in po pisanju, in deleže študentov, ki so takšen rezultat pisnega izpita ali kolokvija dosegli. Očitne so višje frekvence pri tistih napovedih rezultatov, ki so mnogokratnik 10 %, od frekvenc za vmesne rezultate (razredi na 5 %). Izjema je pri predmetu Osnove regulacijske tehnike, kjer je napoved 75 % tudi pogosta. Zato razmišljamo, da bi v prihodnje napovedi podajali zaokroženo na 10 odstotnih točk. V nadaljevanju je za predmet Regulacijska tehnika predstavljena odvisnost doseženih rezultatov od napovedi pred pisanjem (slika 2 a) in od napovedi po pisanju (slika 3 a). Podobna predstavitev za predmet Osnove regulacijske tehnike je na slikah 2 b in 3 b. a) Regulacijska tehnika Napoved po pisanju (%) Napoved pred pisanjem (%) Doseženi rezulat (%) 30% 30% 25% 25% 20% 20% Delež Delež Napoved pred pisanjem (%) b) Osnove regulacijske tehnike 15% Napoved po pisanju (%) Doseženi rezulat (%) 15% 10% 10% 5% 5% 0% 0% Rezultat (%) Rezultat (%) Slika 1. Deleža napovedanih rezultatov pisnih izpitov in kolokvijev pred pisanjem in po pisanju ter delež konkretno doseženih rezultatov pri predmetih Regulacijska tehnika in Osnove regulacijske tehnike a) Regulacijska tehnika Doseženi rezulat (%) b) Osnove regulacijske tehnike Doseženi rezulat (%) Linear (Doseženi rezulat (%)) 100 100 90 90 80 80 70 70 60 60 50 50 40 40 30 30 20 20 10 10 0 Linear (Doseženi rezulat (%)) 0 0 10 20 30 40 50 60 70 Napoved pred pisanjem (%) 80 90 100 0 10 20 30 40 50 60 70 Napoved pred pisanjem (%) 80 90 100 Slika 2. Doseženi rezultati pisnih izpitov in kolokvijev v odvisnosti od napovedi pred pisanjem pri predmetih Regulacijska tehnika in Osnove regulacijske tehnike Doseženo povprečje pri predmetu Regulacijska tehnika je občutno višje kot pri predmetu Osnove regulacijske tehnike; odstopanje obeh napovedi od doseženega rezultata pa je pri predmetu univerzitetnega študijskega programa RT v primerjavi z ORT bistveno manjše. Za oba predmeta je, skladno s [4], značilno, da so se kandidati, ki so dosegli visok rezultat (več kot 90 %), pri obeh napovedih podcenili, s tem da so ti kandidati pri Regulacijski tehniki napoved po pisanju znatno povišali in se z njo bolj približali svojemu dejanskemu dosežku. Pri nižjih doseženih rezultatih 333 (manj kot 60 %) pa opažamo, da so pričakovanja kandidatov pred in tudi po pisanju bila znatno višja od dosežkov. Še posebej je to izrazito pri predmetu Osnove regulacijske tehnike, kjer je delež kandidatov, ki so se na izpit pomanjkljivo pripravili (dosežek pod 50 %) kar 41,64 %. K temu znatno pripomore udeležba (in predvsem poskušanje) povsem nepripravljenih kandidatov na 1. kolokviju, kajti takšen poskus ne šteje v omejeno število opravljanj izpita pri posameznem predmetu. Pri predmetu Osnove regulacijske tehnike je pred pisanjem svoje znanje ocenilo negativno (napovedanih manj kot 50 %) 10 kandidatov, od tega kar 6 kandidatov z 0 %. Za primerjavo navedimo, da je delež kandidatov z dosežkom pod 50 % pri predmetu Regulacijska tehnika samo 15,43 %, pri čemer je pred pisanjem svoje znanje negativno (manj kot 50 %) ocenilo 5 kandidatov – nihče med njimi pa ni napovedal skrajnih 0 %. 4 Sklepne ugotovitve Predstavljeni rezultati samoevalvacije pri pisnih preverjanjih znanja za predmeta Regulacijska tehnika (na programu BUN-E) in Osnove regulacijske tehnike (program BVS-AE) kažejo, da pričakovanja študentov visokošolskega programa (zlasti pred seznanitvijo z izpitnimi vprašanji) v povprečju bistveno presegajo njihove dejansko dosežene rezultate. Povprečna pričakovanja študentov na univerzitetnem programu so zelo blizu njihovim dejanskim dosežkom. Za oba predmeta pa se potrjuje Dunning-Krugerjev učinek, ki smo ga zaznali že pri poskusnem samoocenjevanju študentov na študijskih programih pred bolonjsko reformo. Študenti z realno boljšimi dosežki namreč izkazujejo višjo kritičnost do svojega znanja in večinoma podajajo nižjo lastno oceno, študenti s podpovprečnimi dosežki pa se, tudi v luči doseganja pozitivne ocene, sami ocenjujejo precej bolje. a) Regulacijska tehnika Doseženi rezulat (%) b) Osnove regulacijske tehnike Doseženi rezulat (%) Linear (Doseženi rezulat (%)) 100 100 90 90 80 80 70 70 60 60 50 50 40 40 30 30 20 20 10 10 Linear (Doseženi rezulat (%)) 0 0 0 10 20 30 40 50 60 Napoved po pisanju (%) 70 80 90 100 0 10 20 30 40 50 60 Napoved po pisanju (%) 70 80 90 100 Slika 3. Doseženi rezultati pisnih izpitov in kolokvijev v odvisnosti od napovedi po pisanju pri predmetih Regulacijska tehnika in Osnove regulacijske tehnike Literatura [1] V. Podgornik, J. Mažgon: Self-Evaluation as a Factor of Quality Assurance in Education, Review of European studies. ISSN 1918-7181. - Vol. 7, no. 7 (2015), str. 407415. [2] D. Rus Kolar: Students' self-evaluation in the context of practical pedagogical training, People: international journal of social sciences. ISSN 2454-5899. - Vol. 4, iss. 1 (2018), str. 700-715. [3] S. Kalender Smajlović, M. Smodiš: Razlike med ocenjevanjem in samoocenjevanjem kliničnega usposabljanja s strani kliničnih mentorjev in študentov Fakultete za zdravstvo Angele Boškin, Obzornik zdravstvene nege : strokovno glasilo Zveze društev medicinskih sester in zdravstvenih tehnikov Slovenije = journal of the Nurses Association of Slovenia. ISSN 1318-2951. - Letn. 53, št. 2 (2019), str. 128-136. [4] J. Kruger, D. Dunning: Unskilled and Unaware of It: How Difficulties in Recognizing One's Own 334 [5] [6] [7] [8] Incompetence Lead to Inflated Self-Assessments, Journal of Personality and Social Psychology,1999, Vol. 77, No. 6, str. 1121-1134. M. Podgoršek, A. Lipovec: Vpliv Dunning-Krugerjevega učinka pri študentovem samoocenjevanju, Novodobni izzivi družbe: znanstvena monografija, Rakičan : RIS Dvorec, 2016, str. 145-154. Bolonjska deklaracija, Bolonja, 19.06.1999, http://www.arhiv.mvzt.gov.si/fileadmin/mvzt.gov.si/page uploads/doc/dokumenti_visokosolstvo/Bolonjski_proces/ Bolonjska_deklaracija_slo.pdf, dostopno 15.07.2019. Zakon o visokem šolstvu (uradno prečiščeno besedilo) /ZViS-UPB2/ Ur.l. RS, št. 100/2004. D. Nedeljković: Napovedani in doseženi rezultati pisnih izpitov pri predmetih s področja regulacij, Zbornik dvajsete mednarodne Elektrotehniške in računalniške konference ERK 2011, 19.-21. september 2011, Portorož, Slovenija. - Zv. B, str. 429-432. Interactive didactical utility for dynamic routing using LP solve Tjaša Jereb, Matej Rabzelj, Aljaž Martinčič, Andrej Košir Faculty of Electrical Engineering University of Ljubljana Tržaška cesta 25, 1000 Ljubljana E-mail: tjasa.jereb@svet.fe.uni-lj.si, matej@rabzelj.si, aljaz.martincic@ltfe.org, andrej.kosir@fe.uni-lj.si Abstract A good visual representation is often the key element to understand a linear optimisation problem. There are some good options for solving linear problems, but they lack a good user interface that would enable users to better understand what they’re calculating. This paper presents a didactical utility for making formulation of optimization problems easier and less complex through a dynamic graphical interface. It describes the problem of linear optimization and its solution using LP Solve solver [3], which is one of the tools for linear program solving. Furthermore it explains the logic of utility itself and it’s use. 1 Introduction Today we can find a software to help us solve a wide variety of problem types. The difficulty is that sometimes the most versatile tools require pre-knowledge and a certain set of skills for their use and don’t provide a graphical representation, either for easier input and/or easier understanding of the output. This can cause problems to various groups of users, ranging from professionals to those who are new in the field. The teaching process of linear programming is nowadays based on explaining mathematical foundations with drawing examples by hand. Those sketches can quickly become over saturated with information, and drawing new graphs over and over again consumes a lot of valuable time during lectures. Students will often use one of the tools like LP Solve, which doesn’t provide adequate demonstration of the network for studying. For this purpose - especially with the maximum flow problem [7], which is one of the most used in telecommunication networks and optimization visualisation and ability to solve more examples in less time, is very beneficial. Hereby both, students and professors could use a tool that would ensure optimization of teaching and learning. The goal of this paper is to present the utility for making a formulation of optimization problem easier and less complex through a dynamic graphical interface as a supportive tool for hands-on learning. 2 Theoretical background In this section the problem and method of solving maximum flow in telecommunications are presented. In theory, maximum flow problem means finding a feasible max- ERK'2019, Portorož, 335-338 335 imum flow through a flow network. The best approach to solving this problem is using a linear programming method called linear optimization. 2.1 Linear programming Linear optimization is a linear programming method with the purpose of finding the best possible solution for a given mathematical model, whose cost (objective) function and requirements are linear [4]. Best possible solution is defined by lowest or highest cost (depends on the task being solved), shortest path or any other chosen metric between two nodes. For solving a linear optimization problem, two key inputs are needed. The first one is the objective function, which is the function that needs to be minimized or maximized. The second one is a set of constraints representing limitations within which the solution to the problem can be found. Like the objective function, constraints also have to be linear and can be given in the form of equalities or inequalities. Linear problem’s feasible region - that is a set of points, that suits all constraints - has a shape of a convex polytope, which is formed as an intersection of half-spaces [6]. All linear problems can be expressed in canonical form: argmax cT .x s.t. A.x ≤ b x≥0 (1) where cT .x represents the objective function (function to be minimized or maximized [1]), x is vector of variables, that are to be determined, b and c are vectors of known coefficients and A is a matrix of known coefficients. Aforementioned arguments with non-negative variables also specified are enough for standard form of a linear problem. Additionally, a standard form can be converted into an augmented form, where slack variables are added in constraints to replace inequalities with equalities. By incorporating slack variables into the model, the following rule applies: x 0. (2) With this formulation linear problems can be written in block matrix form:       z T 0 1 −c 0 · x = (3) b 0 A I s of materials and tools supporting this type of experience learning. In this regard, a small case construction and visualization tool such as presented in this paper, can enable higher quality of hands-on learning in the area of optimization and telecommunication networks. where additional vector s contains all slack variables and a variable z, that is to be maximized or minimized. 3 2.2 Dynamic routing and maximum flow problem in telecommunications Dynamic routing is a process of providing optimal route through the given network of nodes based on existing conditions within the given system. Optimal route can be defined by maximum capacity, fastest path or other given parameters specified by the programmer [5]. Dynamic route can change for every other request while static routing route remains the same for all the requests. In telecommunications, dynamic routing is most frequently associated with routing protocols such as RIP, OSPF, BGP etc. To define the problem of calculating maximum flow based on an input parameters and limitations, we conducted tests using various network models in the LP solve environment assigning them either costs, capacities or both. With that done, we can create the objective function and then the set of constraints, that contains Kirchhoff equations for every node in the network model. However, when typing linear equations of a model into the IDE, the bigger the model in terms of numbers of connections and nodes, the more time consuming it gets while rising the chance for an input error resulting in false results. Another problem that occurs when calculating different models is the complexity of correcting a network model. Just removing or adding one node or one connection can require rewriting the entire model, as all connections are intertwined in Kirchhoff equations for all nodes. To make the creation of a bigger network model and correction of an existing one easier, we created an application (utility), that accepts a graph of a network and calculates the maximum network flow depending on bandwidths of connections and capacities of the nodes. The application returns the result in the form of a colored graph, to clearly indicate the result. 2.3 Hands-on learning Hands-on learning is a form of experiential learning, which is defined as a process of learning through experience. An important aspect of this experience is given - quoted: ”Learning is best conceived as a process, not in terms of outcomes. To improve learning in higher education, the primary focus should be on engaging students in a process that best enhances their learning – a process that includes feedback on the effectiveness of their learning efforts.”, see [2]. As such, it complements the theoretical background students can learn through classic learning forms. However, high quality hands-on learning requires additional teaching resources in terms of quantity and in terms of resource types. Among others, it requires a significant amount of teachers time invested in preparation 336 Didactic utility In this section the principle, working and use of a didactic utility is explained. The use of classical LP solve tools is rather complex for a beginner programmer or a student. It requires the knowledge of syntax and underlying mathematics while providing no graphical cue. To make the process of learning easier and less complicated, didactical utility provides an intuitive graphical interface, which makes the solving of first LP problems easy and beneficial. 3.1 LP solve Independently of the problem’s form, several tools can be used to get the needed results. One such tool is the LP solve, a free linear programming solver [3]. It is based on the Dantzig’s simplex method, and it solves pure linear, mixed integer or binary, semi-continuous and special ordered sets models [6]. Several library implementations exist for use with numerous programming libraries. Additionally, as it is written in ANSI C, it can be compiled on different platforms between Linux and Windows. There are three ways to pass data to the library: • through API calls, • in form of input files, • by use of IDE. LP solve tool API is a set of routines that can be called from several programming language including Python and can be used to build the model in memory, solve it and return the result. When using input files, any of the supported types can be used with MPS (a standardized linear program formulation file format) being the most known format. Since MPS is not available in human readable form, LP format is used which tends to be more userfriendly and therefore easier to work with. The last option is an integrated development environment which provides an abstract tool for the user to solve linear problems without extensive knowledge of the underlying reasoning. 3.2 Utility integrated back-end Using Python, there are two main ways of interacting with LP solve. First option is the use of python to create a text file and then pipe it into a standalone LP solve program. The second option, that we decided to go with, was using a dedicated lpsolve55 library in a Python script. Input parameters, that are collected from the graphical user interface are as follows: • list of connections, made of start node, end node and its price: Apath • list of nodes, made of node names and their capacities: Anode • start node: Start • end node: Stop • payload: Load Functions for parameter calculation and making vectors and matrices to be inserted into a LP model extract the needed data from input parameters listed above. The function for finding all parameters needed to create an objective function and a set of constraints extracts information from input lists. The second function uses calculated parameters to create vectors and matrices. When all of the vectors and matrices are computed, the function, which makes LP model, calculates it and returns the result, is the following: Figure 1: Function ’ComputeLoadDistribution’ is the main function. It takes input parameters, calls previously described functions and uses lpsolve55 library to create and calculate a linear problem and return it’s result. 3.3 Utility integrated frontend the appropriate function in the top part of the left column, the user can quickly draw the network graph. Next step is to decide on the start and end node, along with the amount of payload that has to be distributed over the network. Those parameters can be set in the top right corner. The last step is to run the program encapsulating the network into data structure appropriate for processing and forwarding it into Python script as explained above. The script then calculates results that are finally visualized on the graph. The entire application is a standalone executable file, based on three key modules - Chromium Embedded Framework (CEF), LP Solve 5.5 and GUI. All three modules are connected by Python, but the application itself is based on interlacing of different technologies. First of all, the combination of HTML, CSS and Javascript provides the interface. Aforementioned web technologies along with numerous predefined libraries allow developer a great deal of flexibility in the field of user interface design. Today, the rendering of web graphics is hardware accelerated, which ensures the scalability of the desirable network. Technologies used in this project are cytoscape.js, jQuery, Semantic UI and FontAwesome. The second module actually connects the GUI described above with Python functions that provide dynamic calculations of the network. CEF opens immediately after calling the main Python program and plots graphical interface in a standalone window. In the case of this application, data is transmitted using a custom data structure in Python and Javascript bindings. The last of the three modules is a separate Python script with a set of network conversion functions (lpsolve55), that was already described in the previous section. The entire program is accessible through a single Python script that connects all of the modules. Selected technologies allow for portability of the program between POSIX and NT platforms, with only minor changes. The final, executable file can be created using Python compilers such as Py2Exe and Py2App, which encapsulates the entire project into one executable file. 4 Figure 2: Grapical user interface of didactical utility, which has options for creating a new graph, exporting it in JSON format, importing an existing graph and changing the viewing options of the solution. The user interface enables simple input of nodes, connections, and their capacities. On top of that, it allows importing, saving, and exporting network graphs in JSON or PNG format. While designing the user interface, we focused on clear structure and ease of use (Figure 2). By choosing 337 Proposed utility demonstration case In order to verify the program functions, a network model as seen on Figure 3 was created. We started by choosing ’Node’ in ’Edit mode’ in the top left corner and placing all nodes on the canvas, then switching to ’Link’ mode and connecting nodes together. As we are operating with oriented graphs, the connection between two nodes starts in the node that is clicked first and ends in the node that is clicked second. If any mistakes are made during the model plotting, there is always a chance to delete selected components with the ’Delete’ option. Finally, in the top right corner, we set the A as a start and H as a stop node, and the amount of traffic we want to send through the network is set to 5 units. At any point in time during the build of the model, current configuration can be exported in JSON format, so it can be imported and modified next time, instead of configuring everything from scratch. In the end, by clicking on ’Run LPSolve’ button, the pro- 5 Conclusion The use of a good didactical tool in the process of teaching presents a key to practical understanding of a given problem. Didactical utility created in this project enables university and university level teachers to explain the basic concepts of linear programming on simple dynamic graphical examples before going into the details of underlying math and logic. Furthermore, it enables students to compare results of their own LP solutions making it a useful add-on to classes. Acknowledgement. This research was supported by the project P2-0246 ICT4QoL - Information and Communications Technologies for Quality of Life. Figure 3: User-made network model in graph shape References [1] Thomas S. Ferguson. Linear Programming: A Concise Introduction . https://www.math.ucla.edu/˜tom/ LP.pdf, 2019. [Online; accessed 10-July-2019]. gram returns the results, which are seen in Figure 4. [2] Alice Kolb and David Kolb. Experiential learning theory: A dynamic, holistic approach to management learning, education and development. In Armstrong, S. J. & Fukami, C. (Eds.) Handbook of management learning, education and development, 04 2011. [3] Open source community. Lpsolve tool. https: //sourceforge.net/projects/lpsolve/, 2019. [Online; accessed 10-July-2019]. [4] Ubalt.edu. Deterministic Modeling: Linear Optimization with Applications. http://home.ubalt.edu/ ntsbarsh/opre640a/partVIII.htm, 2019. [Online; accessed 10-July-2019]. Figure 4: Result with selected connections coloured in red The program colours the paths that will distributively transport the payload from one selected node to another, in red. Simultaneously, the source node will turn green and the destination node red while the unused paths will remain gray. If the setting ’Show result’ stays off, then the graph will still display the maximum available capacity of the path after the calculation. Switching the ’Show result’ on, the graph will display, how much of the path capacity has been used (Figure 5). Figure 5: Result with selected connections coloured in red and used connection bandwidth written next to it 338 [5] Wikipedia. Dynamic Routing. https://en. wikipedia.org/wiki/Dynamic_routing, 2019. [Online; accessed 10-July-2019]. [6] Wikipedia. Linear Programming. https://en. wikipedia.org/wiki/Linear\_programming, 2019. [Online; accessed 10-July-2019]. [7] Wikipedia. Maximal flow problem. https: //en.wikipedia.org/wiki/Maximum_flow_ problem, 2019. [Online; accessed 10-July-2019]. Poenostavljen strojno-opisni jezik Andrej Trost, Andrej Žemva Fakulteta za elektrotehniko, Univerza v Ljubljani, Tržaška 25, 1000 Ljubljana E-pošta: andrej.trost@fe.uni-lj.si Simplified hardware-description language In digital circuit design education we use standard hardware description language VHDL for building circuit models and prototyping implementation with programmable devices. The students are learning basic modeling concepts, the language syntax and tool design flow at the same time. We propose to use a simplified hardware-description language when introducing digital design to electrical engineering students. In the paper we present the proposed language with our web design tool and experience of including the language to the laboratory practice of several digital design courses. 1 Uvod Strojno-opisne jezike HDL (angl. Hardware Description Languages) uporabljamo za računalniško načrtovanje sodobnih digitalnih vezij. Digitalna elektronska vezja sestavljajo logična vrata in pomnilni elementi (npr. registri), ki jih opišemo z elektronsko shemo ali Boolovimi enačbami. Sodobna digitalna vezja in sistemi so tako kompleksni, da je shematsko načrtovanje neučinkovito. Model vezja v jeziku HDL je narejen na bolj abstraktni ravni in omogoča hitrejši postopek razvoja. Najbolj razširjena in standardizirana jezika za opis digitalnih vezij na ravni registrov sta VHDL in Verilog [1]. V raziskav-i [2] navajajo uporabo HDL pri več kot polovici študijskih predmetov s področja digitalnih vezij. Prototip načrtanega digitalnega vezja naredimo s programirljivimi vezji FPGA z orodji proizvajalcev (npr. Intel Quartus, Xilinx Vivado), ki podpirajo standardne strojno-opisne jezike. Ko uvajamo študente v praktično delo s strojnoopisnim jezikom in računalniškimi orodji za načrtovanje vezij je glavni izziv obvladovanje zahtevnosti. Pri laboratorijskih vajah izgubimo precej časa s slovničnimi pravili jezika in z učenjem uporabe pripadajočih orodij. Na področju načrtovanja digitalnih vezij imamo precej manjšo izbiro jezikov in prosto dostopnih orodij, kot na področju programiranja. Na Fakulteti za elektrotehniko uporabljamo v študijskem procesu predvsem strojnoopisni jezik VHDL. Aktualna standardna različica jezika je IEEE 1076-2008 [3] ali na kratko VHDL 2008, ki pa še ni v celoti podprta v razvojnih orodjih [4]. Najbolj razširjena je različica VHDL'93 (IEEE 10761993). Slovnica jezika VHDL je nastala po vzoru programskega jezika ADA in je precej drugačna od slovnic modernih programskih jezikov. Študenti elektrotehnike, ki niso vešči modeliranja v različnih jezikih, imajo zato težave pri usvajanju slovnice jezika VHDL. ERK'2019, Portorož, 339-342 339 Strojno-opisni jezik Verilog je bolj podoben programskemu jeziku C, vendar še vedno zahteva poznavanje konceptov modeliranja digitalnega vezja s stavki, ki se pri simulaciji vezja izvajajo sočasno. Pretvorba algoritma v opis vezja zahteva drugačen pristop kot pretvorba v programsko opremo, zato na videz znana slovnična pravila jezika Verilog ne predstavljajo velike prednosti pri učenju načrtovanja vezij. Zaradi naraščajoče kompleksnosti digitalnih sistemov prihaja do razkoraka med zahtevami in učinkovitostjo modeliranja v jeziku HDL, ki ga rešujemo z modeliranjem na še bolj abstraktni ravni. Orodja za visokonivojsko sintezo vezja (angl. HighLevel Synthesis) omogočajo pretvorbo algoritma v obliki programske kode v vezje [5]. Uporaba teh orodij zahteva razumevanje postopka modeliranja in sinteze vezij na ravni registrov, kjer pa je najbolj smiselno uporabiti enega izmed standardnih jezikov. V prispevku bomo opisali poenostavljen strojnoopisni jezik za hitro uvajanje študentov v modeliranje digitalnih vezij. Razvili smo orodje [6], ki omogoča opis in simulacijo vezij v spletnem brskalniku ter avtomatsko pretvorbo v jezik VHDL. V naslednjem poglavju predstavljamo glavne izzive pri poučevanju načrtovanja digitalnih vezij in razloge za uvedbo poenostavljenega jezika. V tretjem poglavju opisujemo delo s poenostavljenim jezikom, v četrtem pa izkušnje uporabe spletnega orodja na laboratorijskih vajah. 2 Poučevanje načrtovanja digitalnih vezij Načrtovanje digitalnega vezja je običajno le ena izmed tematik v študijskem predmetu s področja digitalne tehnike. Pri osnovnih predmetih v nižjih letnikih se ukvarjamo z logičnimi vrati in gradniki, njihovo analizo ter načrtovanjem preprostih vezij. Načrtovanje oz. sinteza vezja spada med zahtevnejše kognitivne učne cilje. Študenti se praktično seznanijo s tehnikami načrtovanja na laboratorijskih vajah. Vaje s področja digitalnih vezij razdelimo glede na način dela na: 1. spoznavanje orodij in načina opisa vezja 2. sistematično načrtovanje določene vrste vezja 3. reševanje sestavljenih nalog oz. projektov Na laboratorijskih vajah uporabljamo vse tri načine dela. V nižjih letnikih je večji poudarek na spoznavanju poteka načrtovanja vezja in orodij. Posamezne vrste vezij, kot so seštevalniki, dekodirniki in sekvenčni stroji načrtujemo sistematično, po postopku, ki ga razložimo na predavanjih. Za zaključek vaj pa rešujemo sestavljeno nalogo. V višjih letnikih na vajah utrdimo predhodno znanje in od samostojno izvedbo projekta. 2.1 Opis modela vezja študentov knjižnice pričakujemo vmesnik Praktično spoznavanje računalniškega načrtovanja vezij v jeziku HDL je vključeno v uvodni sklop vaj. Modelirni jezik opisuje digitalno vezje v treh oblikah: strukturni, opisu pretoka podatkov in opisu obnašanja. Strukturni opis je najbolj podoben risanju sheme. Določiti moramo medsebojne povezave že pripravljenih gradnikov oz. komponent vezja. Shematske povezave modeliramo s signali, ki so lahko eno-bitni ali pa večbitni vektorji. Opis pretoka podatkov modelira funkcije gradnikov vezja, ki predstavljajo kombinacijsko logiko. Funkcije opišemo z operatorji v prireditvenih stavkih. Pri tem načinu modeliranja uporabljamo sočasne stavke, katerih vrstni red ni pomemben. Z aritmetičnimi in logičnimi operatorji nad vektorskimi signali opišemo kombinacijsko logiko na zelo kompakten način. Opis obnašanja vezja je nabolj abstraktna raven opisa vezja v jeziku HDL. Delovanje vezja opisuje stavčni blok pri katerem je vrstni red zapisa pomemben in omogoča uporabo vejitev (npr. pogojne staveke). Če v modelu vezja upoštevamo določene omejitve, lahko programska oprema iz opisa obnašanja vezja avtomatsko sintetizira vezje na ravni registrov. Opis obnašanja vezja omogoča, da se načrtovalec vezja ukvarja z algoritmom in ne s strukturami za logično izvedbo algoritma. 2.2 Model vezja v jeziku VHDL procesni stavek Slika 1: Opis flip-flopa v jeziku VHDL. Delovanje najbolj osnovnih vezij določimo v le nekaj stavkih, ki pa potrebujejo dolgovezen opis vmesnika in knjižnic. V prireditvenih stavkih veljajo striktna pravila glede ujemanja podatkovnih tipov signalov in konstant. Lastnosti jezika VHDL povzročajo težave neizkušenim študentom pri reševanju nalog na laboratorijskih vajah. Z uvedbo poenostavljenega strojno-opisnega jezika želimo izboljšati praktično izkušnjo modeliranja vezij. 2.3 Računalniška orodja za načrtovanje vezij Slika 2 prikazuje tipičen potek načrtovanja in prototipne izvedbe digitalnih vezij, ki ga razdelimo na dva dela: modeliranje in simulacijo modela ter tehnološko preslikavo in verifikacijo. Strojno-opisni jezik VHDL se je najprej razvil kot jezik za modeliranje in simulacijo splošnih digitalnih vezij. Kasneje so naredili orodja za avtomatsko sintezo vezja, pri katerih smo omejeni na del sintakse jezika. Nekateri konstrukti (npr. zakasnitve, izpisi, datoteke) so namenjeni le za simulacijo. Sintaksa, ki je primerna za sintezo vezja, obsega vse tri oblike modeliranja. Opis vezja na grobo razdelimo na: • deklaracije knjižnic, • opis vmesnika in • opis delovanja vezja, ki vsebuje: o deklaracije signalov, o opis povezav komponent, o sočasne stavke in o procesne stavke Slika 2: Načrtovanje digitalnih vezij z računalniškimi orodji za modeliranje in simulacijo (1.) in tehnološko preslikavo (2.). Opis povezav komponent (angl. port map) predstavlja strukturni opis. Sočasni stavki modelirajo kombinacijske komponente vezja, procesni stavki pa obsegajo sekvenčne in opis obnašanja vezja. Jezik VHDL ima dolgovezno (angl. verbose) slovnico, kjer je potrebno poznati veliko ključnih besed in pravil za opis modela vezja. Poučevanje modeliranja vezja v jeziku VHDL temelji na vzorcih oz. primerih opisa osnovnih kombinacijskih in sekvenčnih vezij. Slika 1 prikazuje opis podatkovnega flip-flopa. 340 Model vezja načrtujemo v obliki sheme ali strojnoopisnega jezika in ga preverjamo s simulacijo. Računalniško orodje najprej naredi elaboracijo modela in javi morebitne sintaktične napake. Za pripravo simulacije potrebujemo testno strukturo, ki določa potek vhodnih signalov. V tem delu je zelo pomemben uporabniški vmesnik orodij, ki lahko precej olajša učenje in pospeši proces snovanja vezij. Tehnološko preslikavo izvajajo orodja proizvajalcev programirljivih vezij. Model vezja v strojno-opisnem jeziku in uporabniške nastavitve so vhodni podatki za avtomatsko sintezo in implementacijo. Implementirano vezje naložimo na razvojno ploščo s programirljivim vezjem, na kateri izvajamo strojno preizkušanje oz. strojno verifikacijo. Potek načrtovanja zahteva poznavanje različnih orodij, npr. simulatorja ModelSim v prvem delu in orodja Quartus za končno implementacijo. Od proizvajalcev vezij FPGA dobimo brezplačne različice orodij, ki so dokaj zahtevne za delo, zato se le posamezni študenti odločajo za njihovo uporabo na domačem računalniku. Odprtih orodij je malo; za jezik VHDL je na voljo le simulator GHDL [7]. Za izvedbo simulacije v GHDL potrebujemo testno strukturo, ki zahteva še dodatno znanje strojno-opisnega jezika in poseben program za pregled rezultatov simulacije. Z nekaj znanja programiranja lahko naredimo interaktivno simulacijo [8], ni pa na voljo uporabniku prijaznih orodij. Na Fakulteti za elektrotehniko smo razvili spletno orodje v katerem razvijamo vezje v poenostavljenem strojno-opisnem jeziku, ki modelira osnovne koncepte jezika VHDL [9]. Orodje omogoča preprosto izvedbo simulacije z grafičnim uporabniškim vmesnikom. Model vezja in nastavitve simulatorja se avtomatsko prevedejo v lepo oblikovano kodo jezika VHDL. Slika 3: Shema kombinacijskega vezja za vsoto in skaliranje podatkov z nasičenjem. Vodila modeliramo s signali, ki jim določimo podatkovni tip. V jeziku VHDL najpogosteje uporabljamo eno-bitne signale deklarirane kot std_logic vrednosti ali več-bitne vektorje tipa std_logic_vector. Računske operacije s celimi števili omogoča vektorski podatkovni tip unsigned ali signed. Podatkovni tip signalov v poenostavljenem jeziku določa črka u (unsigned) ali s (signed) in število bitov, ki je med 1 in 64. Priključke in signale vezja deklariramo v tabeli, kot prikazuje slika 4. Vhodnim priključkom določimo način in, izhodnim pa out. 3 Poenostavljen strojno-opisni jezik Poenostavitve modelirnega jezika smo pripravili na podlagi izkušenj uporabe jezika VHDL v pedagoškem procesu. Na vajah uporabljamo le del konstruktov jezika in omejen nabor podatkovnih tipov, pri dodatnih poenostavitvah jezika pa želimo skrajšati dolgovezno slovnico. Poenostavitve obsegajo: • deklaracije vmesnika, arhitekture in knjižnic, • deklaracije signalov in numeričnih vektorjev, • intuitivna pravila za prireditvene stavke, • privzeto pretvarjanje podatkovnih tipov in • opis obnašanja vezja z različnimi vrstami prireditev in pogojnimi stavki namesto procesov. Poenostavljen strojno-opisni jezik bomo predstavili na modelu majhnega kombinacijskega vezja z dvema 8bitnima vhodoma in enim izhodom. Vezje naredi vsoto in skaliranje vhodnih podatkov s konstanto. Izhod naj gre v nasičenje, če je izračunan rezultat izven območja 8-bitnih vrednosti. Funkcionalnost vezja opisuje psevdokoda: mul = (a + b)*5; if (mul>255) mul = 255; Shematski opis vezja sestavljajo kombinacijski seštevalnik, množilnik, primerjalnik in izbiralnik, kot prikazuje slika 3. Izhod seštevalnika je 9-bitno (8:0), množilnika pa 12-bitno vodilo. Širino vodila določimo glede na pričakovan razpon vrednosti, ki se izračunajo v posameznih operacijah. Če bi uporabili premalo bitov, bi dobili napačne rezultate zaradi preliva, pri prevelikem številu bitov pa imamo preveliko porabo kombinacijske logike. 341 x = a + b mul = x * 5 if (mul>255) y = 255 else y = mul Slika 4: Definiranje signalov in opis kombinacijskega vezja v poenostavljenem strojno-opisnem jeziku. Opis vezja v poenostavljenem jeziku vsebuje le prireditve in pogojne stavke. Izvajajo se paralelno (sočasno), ker predstavljajo opis delov vezja. Za opis vezja moramo poznati le nekaj osnovnih pravil. • Blok stavkov je zaporedje stavkov, ki so vsak v svoji vrstici ali pa ločeni s podpičjem. • Za pogojem stavka if oz. za delom else sledi en stavek v isti vrstici ali pa blok stavkov med zavitima oklepajema, npr. { stavek1; stavek2; stavek3 }. • Znotraj bloka lahko le enkrat priredimo vrednost posameznemu signalu. • Vrstni red prireditev različnim signalom znotraj bloka ni pomemben. Tabela 1: Orodja in jeziki za načrtovanje digitalnih vezij na laboratorijskih vajah. Predmet Programirljivi digitalni sistemi Stopnja BVS, 1 letnik Orodja Intel Quartus in spletno orodje Načrtovanje digitalnih elektronskih sistemov Digitalni elektronski sistemi BVS, 3 letnik, izbirni Preizkušanje elektronskih vezij Digitalna integrirana vezja in sistemi BMAG, 1 letnik, izbirni BMAG, 2 letnik Intel Quartus in spletno orodje Xilinx Vivado ali Intel Quartus spletno orodje Modelsim Xilinx Vivado in SDK BUN, 2 letnik Spletno orodje za načrtovanje vezij pretvori poenostavljen opis vezja v lepo oblikovan model v jeziku VHDL, kot prikazuje slika 5. Orodje poskrbi za ustrezno sintakso prevedenih stavkov z upoštevanjem pravil pretvarjanja podatkovnih tipov in velikosti vodil. Koda poenostavljenega jezika je precej krajša od opisa v jeziku VHDL – v povprečju ima za učne primere vezij štirikrat manj vrstic. Opis vezja shema diagram stanj poenostavljen jezik poenostavljen jezik VHDL poenostavljen jezik VHDL Verilog blokovna shema z IP jedri VHDL ali Verilog in C Kot pomanjkljivosti novega pristopa so študenti izpostavili: nekaj napak v izhodni kodi, premalo uporabnih stavkov in prevelika razlika v primerjavi z jezikom VHDL. Pri predmetu v drugem letniku univerzitetnega študija obravnavamo na predavanjih VHDL vzporedno s poenostavljenim jezikom. Na laboratorijskih vajah uporabljamo jezik in spletno orodje za učenje primerov vezij ter razvoj komponent sestavljene naloge. Včasih smo veliko časa porabili za razlago sintakse jezika in odpravljanje napak v kodi. Pri izdelavi modela vezja v poenostavljenem jeziku pa je večji poudarek na osnovnih konceptih modeliranja digitalnega vezja. 5 Zaključek Slika 5: Avtomatsko generiran opis vezja v jeziku VHDL. 4 Načrtovanje vezij na laboratorijskih vajah Spletno orodje s poenostavljenim strojno opisnim jezikom smo vključili na laboratorijske vaje pri treh predmetih, kot prikazuje tabela 1. V prvem letniku Bolonjskega visokošolskega študija (BVS) smo prej uporabljali le shematsko načrtovanje in risanje diagrama stanj, ker bi bilo uvajanje sintakse jezika VHDL prezahtevno. Poenostavljen jezik nam sedaj omogoča pripravo nekaj vaj in uvajanje v modeliranje HDL. V tretjem letniku imamo izbirni predmet, pri katerem načrtujemo digitalni sistem od osnovnih vezij do videoigre [10]. Zaradi izbirnosti dobimo študente z zelo različnim predznanjem modeliranja vezij. S poenostavljenim jezikom naredimo v laboratoriju več primerov in hitreje uvedemo študente, ki se s strojnoopisnim jezikom prvič srečujejo. Spletno orodje spodbuja samostojno delo in vajo na domačem računalniku. Ob koncu vaj smo opravili kratko anketo in ugotovili: • polovici študentov dela preglavice zahtevna sintaksa jezika VHDL, • v poenostavljenem jeziku se bolj ukvarjajo s pomenom kode in manj s sintakso, • s spletnim orodjem so uspeli rešiti več nalog, kot bi jih samo z jezikom VHDL. 342 Računalniška orodja se razvijajo skupaj s tehnologijo in jeziki za načrtovanje vezij so kompleksni, ker so narejeni za splošen opis vezij in testnih struktur. Zahtevna sintaksa jezika je posledica razvoja jezika, ki mora biti združljiv s prvotnim standardom. Predstavili smo poenostavljen strojno-opisni jezik, ki ga uporabljamo pri delu s študenti. Poenostavitev omogoča, da se več ukvarjamo s koncepti modeliranja kot pa s sintakso jezika. Sintaksa se spreminja, koncepti modeliranja na nivoju registrov pa so univerzalni in so eden izmed učnih ciljev praktičnega laboratorijskega dela. Literatura [1] Steve Golson and Leah Clark. Language Wars in the 21st Century: Verilog versus VHDL – Revisited. In Synopsys Users Group (SNUG), 2016 [2] H. A. Ochoa, M. V. Shirvaikar, A Survey of Digital Systems Curriculum and Pedagogy in Electrical and Computer Engineering Programs, ASEE Gulf-Southwest Section Annual Conference, Austin, 2018 [3] IEEE Standard VHDL Language Reference Manual, IEEE Std 1076-2008, IEEE Computer Society, New York, 2009 [4] Vivado Design Suite User Guide - Synthesis, Xilinx, UG901, junij 2019 [5] W. Meeus, K. Van Beeck, T. Goedeme, J. Meel, D. Stroobandt, An overview of today's high-level synthesis tools, Design Automation for Embedded Systems, 16(3), 2012, str. 31-51 [6] A. Trost, A. Žemva, Online VHDL Generator and Analysis Tool, Mediterranean Conference on Embedded Computing MECO 2019, str. 238-241 [7] T. Gringold, GHDL, 2017, http://ghdl.free.fr/ [8] M. Strubel, Using GHDL for interactive simulation under Linux, FPGA related, 2011 https://www.fpgarelated.com/showarticle/20.php [9] SHDL, https://lniv.fe.uni-lj.si/shdl/ [10] A. Trost, A. Žemva, Načrtovanje digitalnih sistemov: od števca do videoigre, Zbornik Elektrotehniške in računalniške konference ERK 2014, Portorož, 2014, str. 173-176 Študentski članki Student papers Razvoj vibracijske naprave mikrofluidnega motorja Matjaž Malok Univerza v Mariboru, Fakulteta za strojništvo, Smetanova ulica 17, 2000 Maribor E-pošta: matjaz.malok@student.um.si The Development of Vibration Devices of Microfluidic Motors Abstract. The paper presents the development and testing of vibration devices of microfluidic motors. It presents the principle of operation of the mechanical amplifier on a vibration device, which increases the elongation of piezoelectric actuators. Furthermore, it describes the principle of generating circular motion by sine and cosine signal, a process by means of which the piezoelectric actuators are controlled. Control signals are generated by a PIC microcontroller. With it we can set the phase shift, amplitude and frequency of the signals. The limitations of the use of the mechanism of the vibration devices are also presented. Lastly, the development of the microfluidic motor in a pot with a disc and an axis is presented. The disc is made of Styrofoam with a diameter of 1,5 mm and the axis is made of copper wire with a diameter of 200 μm. For the bearing, we use optical fiber. The method of controlling the speed of the motor is presented. We also present a possible means of controlling the direction of the rotation. 1 Uvod Članek prikazuje razvoj in testiranje mehanizmov vibracijske naprave mikrofluidnega motorja ter razvoj milimetrske verzije motorja na osnovi lončka z osjo. Vibracijska naprave (Slika 1) je generator vibracij, ki poganjajo krožni tok vode v lončku oz. okoli stebrička [1]. V dosedanjem delu [2] se je za ustvarjanje vibracij uporabljal elektromotor z ekscentrom. Vendar pa je pri tem prihajalo do problemov s pregrevanjem elektromotorja, saj je bil le ta tesno vstavljen v ohišje, in pojavljanja dodatnih vibracij, ki so povzročale dodatne vrtince pri kroženju vode, kar zmanjšuje sposobnost za vrtenje objektov v vodi. Zato smo razvili novo različico vibracijske naprave, ki jo krmilimo s piezoelektričnimi aktuatorji, ki so vstavljeni v mehanizma vibracijske naprave. Mehanizma vibracijske naprave sta del vibracijske naprave, v katera vstavimo piezoelektrična aktuatorja, in služita kot mehanska ojačevalnika vibracij. Mehanska ojačitev vibracij je potrebna, saj lahko uporabljen piezoelektrični aktuator proizvede pomike do 10 μm. Tako smo ob resonančnih frekvencah dosegli do 26 kratno ojačenje pomikov. Z večanjem amplitude pomikov pa narašča hitrost vrtenja vode v lončku in s tem energija, ki jo lahko uporabimo za vrtenje objektov v lončku [1]. Mehanizma vibracijske naprave, in s tem piezoelektrična aktuatorja v njiju, sta nameščena pod pravim kotom. Če ju krmilimo s ERK'2019, Portorož, 344-347 344 sinusnim in kosinusnim signalom, dobimo krožno gibanje stekelca, ki je pritrjeno na mehanizem vibracijske naprave, na katerem se izvaja gradnja mikrofluidnega motorja. Slika 1: Posnetek detajla vibracijske naprave. 2 Princip delovanja mehanizma vibracijske naprave Mehanizem vibracijske naprave deluje kot mehanski ojačevalnik. Pomike, ki jih povzroči piezoelektrični aktuator, mehanizem ojači oz. poveča njihovo amplitudo [3],[4]. Pri tem se ne le poveča amplituda, ampak se spremeni tudi smer pomikov. Tako dobimo pomike v pravokotni smeri, glede na premike piezoelektričnega aktuatorja. Slika 2: Princip delovanja mehanizma vibracijske naprave. Z ustrezno postavitvijo fleksibilnih povezav je možno doseči tudi, da dobimo na izhodu iz mehanizma skrček, ko se piezoelektrični aktuator raztegne. Vendar pa smo se odločili za različico, pri kateri vstavimo piezoelektrični aktuator v neobremenjen mehanizem. Ko se piezoelektrični aktuator raztegne, se raztegne tudi izhod mehanizma (Slika 2). Ko pa se piezoelektrični aktuator skrči, se skrči tudi mehanizem. Vendar pa mu pri tem pomaga tudi elastičnost mehanizma, ki se želi vrniti v prvotno lego, in tako pomaga piezoelektričnemu aktuatorju pri skrčku, saj ima piezoelektrični aktuator nekajkrat manjšo silo pri krčenju kot pri raztezanju. 3 Krmiljenje vibracijske naprave Vibracijsko napravo poganjamo s kompaktnima in ekonomsko najsprejemljivejšima piezoelektričnima aktuatorjema MPO Piezo Stacks MPO-050015 podjetja Nanofaktur [5] dolžine 1 cm in prečne dimenzije 5 x 5 mm, ki se lahko v neobremenjenem stanju raztegneta za 15 μm, pri napetosti med 0 in 150 V. V kolikor bi uporabili večja oz. daljša piezoelektrična aktuatorja, bi le ta generirala večje pomike, vendar pa bi s tem izgubili kompaktnost vibracijske naprave. Prav tako pa v našem primeru pomike, ki jih generirata piezoelektrična aktuatorja, ojačamo z mehanskim ojačevalnikom oz. mehanizmom vibracijske naprave. Vibracijsko napravo krmilimo s sinusnim oz. kosinusnim signalom, ki ju pripeljemo na piezoelektrična aktuatorja. Amplituda napetosti krmilnega signala je med -10 in 115 V, s srednjo vrednostjo 52,5 V. Ko je vrednost napetosti na piezoelektričnih aktuatorjih višja od 52,5 V se le ta raztegujeta, ko pa je napetost nižja od 52,5 V pa se krčita, pri čemer sta piezoelektrična aktuatorja, ko je na njiju priključena napetost 52,5 V, že nekoliko raztegnjena glede na stanje, ko nanju ni priključena napetost. Krmilni signal generiramo z mikrokrmilnikom dsPIC33FJ64MC802, ter ga ojačamo z visokonapetostnim operacijskim ojačevalnikom Apex Microtechnology PA78. S pomočjo sinusnega in kosinusnega signala, ki ju pripeljemo na piezoelektrična aktuatorja, ustvarjamo krožno gibanje stekelca (Slika 3), ki je pritrjeno na vibracijsko napravo. Pri tem imamo možnost spreminjanja frekvence, amplitude in faznega zamika signala, s čimer lahko ustvarimo različno obliko kroženja, spreminjamo hitrost ter pa smer kroženja. Vendar pa zaradi omejitev operacijskega ojačevalnika in pa slabših sposobnosti piezoelektričnega aktuatorja pri krčenju ne dobimo pravilne krožnice, ampak je krožnica v delu, kjer se vsaj eden od piezoelektričnih aktuatorjev krči, popačena. 4 Omejitve mehanizmov vibracijske naprave Pri uporabi mehanizmov so se nam pojavljali problemi zaradi mehanske sklopljenosti mehanizmov, saj smo zaradi tega izgubljali amplitudo pomikov. V začetku smo imeli stekelce pritrjeno neposredno na mehanizmu vibracijske naprave (Slika 4, levo), vendar pa smo kasneje za zmanjšanje sklopljenosti uporabili dodatne vzmeti na robovih mehanizmov (Slika 1). Prav tako smo izdelali še različico, pri kateri smo popolnoma odpravili mehansko sklopljenost (Slika 4, desno). Vendar pa smo pri tej različici imeli dolgo ročico, ki je zaradi lastne vztrajnosti vnašala dodatne motnje v sistem. Slika 4: Vibracijska naprava s stekelcem pritrjenim neposredno na mehanizem vibracijske naprave (levo) in popolnoma mehansko razklopljena različica (desno). Mehanizmi vibracijske naprave so bili izdelani iz ABS plastike, natisnjene s 3D tiskalnikom. Uporaba plastike je prav tako povzročala številne probleme pri uporabi mehanizmov, saj je plastika močno dušila vibracije oz. pomike, ki jih je generiral piezoelektrični aktuator. Vpliv dušenja je postajal izrazitejši s povečevanjem frekvence. Pri višjih frekvencah smo dobili pomike le ob resonančnih frekvencah mehanizmov oz. v njeni bližini. Pri tem je bil problem, da so bili maksimumi resonančnih frekvenc zelo ozki, velikokrat v območju nekaj Hz (Slika 5). Slika 5: Ozek maksimum maksimalnega ojačenja pomika pri resonančni frekvenci. Tako smo izdelali različici vibracijske naprave brez uporabe mehanskih ojačevalnikov iz plastike (Slika 6, levo) oz. aluminija (Slika 6, desno), kjer smo imeli manjše pomike, kot pri ostalih različicah. Vendar pa smo dobili pomike, sicer majhne, tudi pri frekvencah, pri katerih je prej plastika zadušila vse vibracije. Slika 3: Princip generiranja krožnega gibanja. 345 Slika 6: Vibracijski napravi brez mehanskih ojačevalnikov, zgrajeni iz plastike (levo) oz. aluminija (desno). Tako smo dokazali, da je za ojačenja oz. popačenje signala ob resonančnih frekvencah kriva uporaba plastike, saj so bili vplivi ob uporabi aluminija mnogo manjši (Slika 7). z večanjem višine vode na stekelcu do 3 mm, hitrost vrtenja vode na stekelcu povečuje. Pri tem imamo več vrtincev, ki se vrtijo v naključni smeri. Pri višini 3 mm, pa se ustvarita dva prevladujoča vrtinca, ki se vrtita v nasprotni smeri. Vendar pa se z naraščanjem gladine vode hitrost vrtenja zmanjšuje, in se pri približno 7 mm povsem ustavi. Tako je kroženje vode zaradi vibracij podlage mnogokrat prevladujoče nad kroženjem vode zaradi lončka oz. stebrička. Tako smo uspeli zavrteti mikrofluidni motor le v primeru, ko smo imeli en dovolj velik in močan vrtinec vode v lončku, ki ga niso motili drugi vrtinci, ki so se generirali zaradi vibracij podlage. 6 Izgradnja mikrofluidnega rotacijskega motorja V okviru projekta smo uspeli izdelati mikrofluidni rotacijski motor na osnovi lončka z osjo . Mikrofluidni motor je za pogon uporabljal energijo vrteče se vode v lončku. Slika 7: Ojačenja pomikov ob resonančnih frekvencah ob uporabi plastike (sivo) in aluminija (črno). Nadalje je bil problem, da so se lastne frekvence spreminjale glede na način pritrditve stekelca oz. pritrditve piezoelektričnega aktuatorja v mehanizem. Pri tem so se resonančne frekvence spremenile za nekaj Hz. Precej bolj izrazite pa so bile spremembe resonančne frekvence zaradi utrujanja materiala. Pri tem so se lahko resonančne frekvence premaknile tudi za več 100 Hz, pri enem od mehanizmov so se maksimumi resonančnih frekvenc prestavili iz 400 na 200 Hz, zgolj po nekaj urah uporabe mehanizma. Problem pa je bil tudi v tem, da resonančne frekvence niso bile enake pri obeh uporabljenih mehanizmih, kar je bilo posledica izdelave s 3D tiskalnikom, pri čemer je lahko prihajalo do odstopanj pri izdelavi zaradi nekoliko različnih lastnosti plastike, s katero se je tiskalo, ter različne poti tiskalnika. Posledica tega je bila, da nismo dobili krožnih pomikov stekelca, ampak se je stekelce premikalo v smeri, ki je prevladovala zaradi ojačenja pomikov zaradi resonančne frekvence. 5 Vrtenje vode Vrtenje vode povzročimo s pomočjo vibracij [1]. Za dosego vrtenja v krogu in le enega vrtinca potrebujemo krožne vibracije stekelca. Vendar pa v imamo v našem primeru popačene vibracije stekelca zaradi razlogov opisanih v prejšnjem poglavju in popačenja krmilnega signala. Posledica tega je, da se nam pojavlja večje število vrtincev, kar pa pomeni, da izgubljamo energijo, ki bi jo želeli uporabiti za vrtenje. Drugi problem pa je, da tudi trenje med podlago in vodo generira gibanje vode. Do sedaj je bilo dokazano, da se voda vrti, ko imamo tanek film vode na vibrirajoči podlagi. Vendar pa smo z eksperimenti ugotovili, da se 346 Slika 8: Shema sestavnih delov mikrofluidnega motorja. Rotor smo izdelali iz stiropora, tako da smo četrtino kroglice stiropora sploščili v disk premera 1,5 mm. Disk (Slika 8) smo izdelali tudi iz duropora in tanke plastike, vendar pa smo ugotovili, da je najboljša plovnost pri uporabi stiropora. Disk smo pritrdili na os iz bakra premera 200 um. V kolikor smo uporabljali tanjšo os, uporabili smo žičke premera 50 μm iz niklja, platine in paladija, do vrtenja ni prišlo zaradi torzijske deformacije osi. Os iz bakra smo vstavili v ležaj, ki smo ga izdelali iz kapilare optičnega vlakna notranjega premera 240 μm. Preko ležaja je bil rotor vstavljen v ohišje mikrofluidnega motorja. Pri izdelavi ležaja iz optičnega vlakna je bilo potrebno izdelati čim krajši ležaj, da se je zmanjšalo trenje, prav tako pa je bilo potrebno optično vlakno čim lepše odrezati, da se ni zatikalo. Pri tem je bilo problematično, da se je optično vlakno, če smo ga odrezali na kratki razdalji, zdrobilo in ustvarilo zobato površino, prav tako pa se je plastika, ki obdaja optično vlakno, razcefrala in smo morali zato konec optičnega vlakna pobrusiti. Pri tem nam je uspelo zagnati mikrofluidni rotacijski motor le v primeru, ko smo imeli dovolj kakovostno in močno vrtenje vode. Pri poskusih smo prav tako ugotovili, da hitrost vrtenja vode narašča z večanjem višine kupole vode. Tako smo morali imeti za dosego vrtenja dovolj visoko kupolo vodo. Prav tako pa smo pred vsakim vrtenjem morali poiskati ustrezno frekvenco, kjer smo imeli dovolj veliko amplitudo pomikov, da smo dobili dovolj hitro in kakovostno vrtenje vode, in s tem dovolj energije, da se je motorček zavrtel (Slika 9). Slika 9: Mikrofluidni rotacijski motor. 6.1 Krmiljenje hitrosti vrtenja Pri testiranju motorja nam je uspelo krmiliti hitrost vrtenja motorja. Hitrost vrtenja nam je uspelo krmiliti s pomočjo spreminja amplitude napetosti, s katero krmilimo piezoelektrična aktuatorja (Slika 10). Z zmanjšanjem amplitude napetosti se zmanjša raztezek piezoelektričnega aktuatorja, s tem pa se zmanjša amplituda vibracij, kar pomeni počasnejše kroženje vode, kot izhaja iz [1]. nadzorovano ojačati pomike piezoelektričnega aktuatorja le pri nizkih frekvencah. Pri visokih frekvencah material iz katerega je izdelan mehanizem, torej ABS plastika, zaduši vse vibracije, do ojačenja pomikov pa pride le ob resonančnih frekvencah, vendar pa se pomiki takrat ojačajo nenadzorovano, saj ni nujno, da se ojačajo v smeri, v kateri bi se morali ojačati. Ker pa resonančne frekvence niso enake pri obeh mehanizmih, tako ne dobimo krožnega gibanja, ampak gibanje po premici, v smeri prevladujočega pomika. Ojačenje pomika pri višjih frekvencah bi lahko bilo mogoče možno doseči z izdelavo mehanizmov iz drugega materiala, npr. aluminija, za katerega smo dokazali, da se pri njegovi uporabi pojavljajo veliko manjša ojačenja pomika ob resonančnih frekvencah. Prav tako nam je uspelo izdelati mikrofluidni rotacijski motor na osnovi lončka. Pri tem smo zanesljivo krmilili hitrost vrtenja motorja s spreminjanjem amplitude vibracij. Vendar pa nam ni uspelo doseči krmiljenja smeri vrtenja motorja, kar nam je uspelo doseči le v primeru, ko sta se ustvarila dva vrtinca ravno prave velikosti, da se je disk vrtel v večjem od njiju, manjši vrtinec pa tega vrtenja ni motil. Prav tako smo ugotovili, da je najpomembnejši faktor pri tem, ali se bo motorček zavrtel, kakovost kroženja vode v lončku. Tako se velikokrat pojavlja kroženje vode v lončku v obliki več vrtincev, na kroženje vode pa vpliva tudi disk motorja, saj je bilo ugotovljeno, da kroži le površina vode, medtem ko voda v globini miruje. Zato bi bilo potrebno podrobneje raziskati vpliv vibracij na kroženje vode, predvsem pod gladino. Literatura Slika 10: Hitrost vrtenja v odvisnosti od amplitude napetosti krmilnega signala. Prav tako nam je uspelo doseči spremembo smeri vrtenja vode v lončku s spremembo faznega zamika iz 90° na 270°. Vendar pa je do tega prišlo le takrat, ko smo imeli en glavni in drug manjši vrtinec, ki sta se vrtela v nasprotni smeri. Pri spremembi faznega zamika se je večji vrtinec le zmanjšal, manjši vrtinec pa povečal. Prav tako pa se je to zgodilo le takrat, ko smo pred spremembo faznega zamika vibracijsko napravo predhodno zaustavili. Tako nam ni uspelo doseči zanesljivega načina krmiljenja smeri vrtenja. [1] T. Hayakawa, S. Skuma, F. Arai: On-chip 3D rotation of oocyte based on a vibration-induced local whirling flow, Microsystems & Nanoengineering, Maj 2018. [2] B. Bratina, A. B. Garcia, M. Petek, S. Uran, R. Šafarič, Razvoj vibracijskega rotacijskega mikromotorja v tekočini, Zbornik 27. mednarodne Elektrotehniške in računalniške konference ERK 2018, 17. - 18. September 2018, Portorož, Slovenija. [3] C. Lin, Z. Shen, J. Yu, P. Li, D. Huo, Modelling and Characteristic Analysis of a 3 Piezoelectric-actuated Micro-/nano Compliant 4 Platform using Bond Graph Approach, Micromachines, 2018. [4] H. Wei, B. Shirinzadeh, W. Li, L. Clark, J. Pinskier, Y. Wang, Development of Piezo-Driven Compliant Bridge Mechanisms: General Analytical Equations and Optimization of Displacement Amplification, Micromachines, Avgust 2017. [5] MPO Piezo Stacks, http://www.nanofaktur.com/piezoactuators/mpo-piezo-stacks, [Pridobljeno 23. 6. 2019]. 7 Zaključek Zahvala V prispevku je predstavljen razvoj vibracijske naprave mikrofluidnega motorja in način njenega krmiljenja. Tako smo izdelali mehanizem vibracijske naprave, ki služi kot mehanski ojačevalnik pomikov piezoelektričnega aktuatorja. Pri tem nam je uspelo Iskreno se zahvaljujem red. prof. dr. Riku Šafariču, doc. dr. Suzani Uran, Domnu Potočniku in vsem sodelavcem Laboratorija za kognitivne sisteme v mehatroniki na FERI, Univerza v Mariboru, za vso pomoč in podporo pri eksperimentih in nastajanju članka. 347 Maintaining Secure Data Using Hash Functions in the Process of Fingerprint Detection as a Separate Method Within the Field of Pattern Recognition Lina Lumburovska Faculty of Computer and Information Science University of Ljubljana ll2224@student.uni-lj.si Abstract We are living in a world where technology is moving faster than any other area. One of the most studied areas of computer science is the pattern recognition problem. In this article we started researching an interesting everyday situation such as securing mobile phones with fingerprints. Fingerprint authentication is the safest, widely trusted biometrical method for recognizing patterns, because each human finger is unique. We gained an insight into this topic and came up with a conclusion that providing secure data is just as important as the process. While reading about cryptography and security, we chose exploring hash functions in order to maintain secure data. Our goal is to detect modifications of transmitted messages or changed identity. We will explain why it is so important to have accurate data, how it can be obtained with hash functions and what can happen if the data is insecure within the process of fingerprint pattern recognition. Moreover, we studied the Bayes test for minimum errors in order to reduce the risk. Keywords: pattern recognition, fingerprints, security, biometry, data integrity, mobile phones 1 Introduction to the Topic The high technology growth increases human desire to become part of this field as much as it is possible. This connection human-computer, became more reliable when the artificial intelligence came up on the scene. The very first beginning of the artificial intelligence started affecting human lives and subsequently motivated them to use its benefits more frequently. This process covers different topics in order to connect human and technology. One of the most famous problems is the Pattern Recognition Problem. As its name says, a pattern can be considered as a computer or a human unit, meaning: a string, image (computer units) or face, finger (human units). In general, it covers a wide range of problems and it is difficult to narrow down a certain view or approach. Basically, it is used in engineering problems such as computer matching and waveform analysis, as well as in biometry and brain modeling. A pattern can be sometimes a confusing word, because it refers to different units in different situations. For example, there has been extensive research for the String Matching Problem because strings ERK'2019, Portorož, 346-350 346 are computer units that are the main “characters” in this problem. In everyday life, people read, write and encounter character strings all the time. Very often they want to find substrings (e.g. words) that match parts of the original text and have higher probability of matching. Finding a new efficient algorithm for the String Matching Problem involves a tremendous number of testing aiming to slightly improve on the existing algorithms. Apart from this, its dominant usage is detecting plagiarism. Within the field of artificial intelligence and pattern matching, the problems where parts of the human body were included with a special emphasis on fingers, face and voice were more pronounced. Uniqueness of every part of the human body created the face, the voice and the fingerprint pattern recognition problems and brought up to speed lots of developers and researches with the newest updates and possibilities. Analysis has shown that effectiveness for a particular biometrics steams from its universality and singleness. Suppose we have a large target population, each individual must possess a unique biometrics, which provide useful information for personal identity verification and recognition. In other words, the biometrics of every person might be used for an easy sample or acquisition. Execution of the identity verification is mainly based on the fingerprint or face recognition and in this research paper I will focus only on the fingerprint problem. In order to implement an algorithm for recognition, the fingerprints must be saved as images. Talking about images, its quality must be high due to the fact that they are fingers not just pictures from the nature for example, and must be clearly seen because each different pixel can cause a change to another identity. By high-quality image, it is meant that the highest resolution and image dimensions should be provided. More precisely it can be executed in measure called dots per inch (dpi), the more dots the higher the quality (more sharpness and detail). The standard value is 300 dpi, which means high-quality image covers at least 300 dpi or more of this value. In order to determine a high quality algorithm, it must be tested on a large number of fingerprints of different modes. Research has shown a few interesting points. First of all, the reason why the usage of fingerprints is so popular is because of its security, since each human finger is unique. In 1911, the famous American science magazine or damaged fingerprint from another person. Data stated: integrity covers this problem, however at the same time also protection from bugs, viruses, hacking and other Two like fingerprints would be found only cyber threats helps. once every 1048 years Quite common scenario from everyday life is the existence of a potential harm to change the content of the Moreover, the human body is linked with technical message or data. Sometimes, a person cannot prevent the devices by this process. It also confirms the importance attack to modify the original data, however on appropriate of this process. The most popular usage of the fingerprint security algorithm will be able to at least detect a pattern recognition it is locking people’s phones with their modification. own finger. This process and the results of the research will be described in section 5. Even more, this process will not work the same way if the data is secure or not. The risk is high, if the data is insecure, authentication is not present anymore and unique fingerprints will be abused. Hackers turn themself into different people and steal or use their data. Providing and maintaining secure data for the recognition problem is really important whether the pattern is computer or human unit. The data is secured by cryptographic methods. Insecure data can be changed, overwritten, abused and it can cause damage to both sides: the sender and the receiver. The risk is the highest when data is not encrypted and if the message is long or the image (fingerprint) occupies too much memory. The first situation can be covered with several methods for encryption for instance signatures, certificates, message authentication codes, keys and many others. Actually, most signature schemes are designed to only sign messages of a short, fixed length. In practice, to fix this problem, data is “hashed” before signing. A cryptographic hash function is a one-way function which is used to produce a message of fixed length based on the input data. 1.1 Introduction to Fingerprint Matching In most of the cases, the two definitions - recognition and matching are used as synonyms and the problem is called fingerprint pattern matching. Matching refers to finding the similarity of two or more given fingerprint images. The chosen algorithm should recover the translation, rotation and deformation parameters between the given image pair and based on its prototype, the algorithm should discover the similarity, while not mixing two different fingerprints. 2 Data Integrity and its Influence Gaining confidence in data security is the fundamental goal for every system, problem and scheme. The whole process for obtaining valid and accurate data is called data integrity. Its protection is so important because it increases performance and stability of the system. The main question is when can data be insecure. Researches show that not only unencrypted data is harmful, but also the human can influence security or some hardware or software issues can cause some problems. If we look closely into the fingerprint pattern recognition problem, as its name suggests, the first thought that comes to our mind is wrongly recognized fingerprint. This is due to the low quality of the algorithm 347 3 The importance of secure data and how accurate are hypothesis tests The amount of information stored in electronic media has increased significantly in the last few years. Talking about recognition, people try to keep safe important information locked with their fingerprints and additionally some knowledge is required in order to access such data. For example, information about money withdraws in a bank can only be opened by the owner finger. This fingerprint is stored in a database as an image. Certainly, for the owner the most important thing is that this private data remain safe. This is a simple but prominent example because for the owners it is of paramount importance to protect their money. The damage will be horrible if the data is shared between other people or institutions, because the owner will loose their money. Modifying their identity data is another case of abuse. Simple examples from everyday life often prove important for security. In addition, the purpose of the pattern recognition algorithms is to determine if the sample is the same as the stored data. Sometimes minimum errors are affordable if they do not affect the security and they do not modify the original data. Detailed research of this problem has proved that the usage of the Bayes decision rule for minimum error is a clear and accurate method to control errors. 3.1 The Bayes Decision Rule for Minimum Errors Through an observation or measurement process, we obtain a set of numbers which make up the observation vector. The vector is used as an input to decide if the sample (a) belongs, (b) is the same or (c) affordably deffers from the original. Let suppose that some algorithm found two classes that are similar to the sample, however cannot determine which one is right. Let X be an observation vector, ω1 and ω2 are the two found classes. Also, the condition density functions (P1 and P2 ) and the a priori probabilities (p1 and p2 ) are known. A decision rule can be written based simply on the probabilities in the following way: 1 q1 (X) ≶ω ω2 q2 (X), (1) where in this formula qi (X) is a posteriori probability of ωi for the given vector X. Using the Bayes theorem, a posteriori probability may be calculated from a priori probability Pi and the condition density function pi (X). In the formula below px is the mixture, the whole probability that covers both cases: success and failure: qi (X) = Pi ∗ pi (X) p(X) (2) Equation (1) indicates that if the probability of the found class ω1 is greater than the probability of the found class ω2 , the vector, the sample belongs to ω1 and vice versa. Since probability is a number between 0 and 1, hence it is always positive, the first equation may be rewritten as: 1 P1 ∗ p1 (X) ≶ω ω2 P2 ∗ p2 (X) or `(X) = p1 (X) ω1 P2 ≶ p2 (X) ω2 P1 (3) (4) The new variable is called the likelihood ratio and it is the basic quantity in hypothesis testing. The quotient from the right side is named threshold value of the likelihood ratio for the decision. In practice, it is more convenient to write the minus-logarithm likelihood ration rather that writing the original ratio itself. The reason for this change is to minimize the result of a function. First the usage of logarithm in the likelihood function decreases the value returned by the original function. Then, since the log likelihood and likelihood function have the same increasing or decreasing trend, using the negative log likelihood can minimize the value in order to actually perform the maximum likelihood estimate of the certain function. The negative logarithm changes the direction of the inequality and the equation takes new form where it expresses the discriminant function h(X) like: h(X) = − ln `(X) = P1 1 − ln p1 (X) + ln p2 (X) ≶ω ω2 P2 (5) Assuming that P1 = P2 and ln P1 /P2 = 0 for simplicity, the three equations: (1), (4) and (5) present the Bayes test for minimum error. 3.2 Error Probability for Assigning Fingerprint Image into the Wrong Class The following subsection shows the calculations of probability of error, that is if the sample is assigned to the wrong class, or in the certain problem, if the fingerprint is wrongly matched. Perfect classification can rarely happen and that is the reason why it is extremely important for the researches to know the possibility of risk and losing or changing the original data. Let us suppose that X still remains the observation vector and r(X) is the conditional error. Taking in consideration the equations from the Bayes test, r(X) is the smaller a posteriori probability or: r(X) = min[q1 (X), q2 (X)] (6) The total error for providing insecure data for the fingerprint pattern recognition problem is known as the 348 Bayes error and it is computed by E {r(x)}, i.e., ε, and is determined by the following equation: Z ε = E{r(X)} = r(X)p(x) dX = Z min[P1 p1 , P2 p2 ] dX = (7) Z Z P1 p1 (X) dX + P2 p2 (X) dX = = P1 1 + P2 2 Both errors for a mismatch in the first and in the second class are distinguished and denoted by 1 and 2 respectively. The total error is executed as the weighed sum of both errors. In the process of determining the most effective way to recognize a fingerprint and providing secure data for it, the most effective measure of a decision rule is the probability error. The concept looks quite simple, but all in all, it is a very difficult decision, because it will optimize the solution and reduce the probability of undesirable situations. 4 The Usage of Hash Functions in the Recognition Process Hash functions were mentioned in the introduction part, and it was briefly described why and how are they used. It has been proved that their usage reduces the probability of errors to minimum and provides the algorithms with secure data. This is due to the accuracy of the Bayes test. Providing an information that there are small chances for error increases the effectiveness of hash functions. A hash function can process a fingerprint image better when a test is used before the main process. A cryptographic hash function is used to construct a fixed length digest of some data (binary units if data is a string or pixels if data is an image, a fingerprint). If the data is somehow abused or altered, the schema will no longer be valid. Let us suppose that the digest is stored in a secure place, which of course makes sense due to the fact that it is the original sample. Even if the data to be recognized is stored in an insecure place, its integrity can be easily checked from time to time by recomputing the digest. Before going further with hash functions, there is one fact that cannot be omitted. In the past a completely different approach for the string matching and substring search based on hashing was discovered by Rabin and Karp. Hashing is considered as a method to map data of arbitrary length to data of a fixed length. The hash function returns values which are sometimes named as hash values, hash codes, digests, or simply hashes. This connection is close and that is why sometimes this algorithm is called the Rabin-Karp fingerprint algorithm. Let us suppose x is some data, for instance an image of a fingerprint for unlocking of some stored personal things. The image is stored as a sequence of bits or pixels of an arbitrary length. In this particular case, let h be a hash function. The corresponding digest is defined to be y = h(x). The compare and recognition actions can be easily made if the message digest is of the same format as the stored data. Following the definition for a hash function, the digest y is stored in a secure place, but x is not. Let us assume that an attack occured and the insecure data x has been changed to x0 . In situations like this, it can be seen how accurate and secure the methods are and why some are better than the others. The message digest y will not be a message digest for x0 , because some bits of the sequence will not be the same as the original ones and the hash value will be different. Before the final decision and letting the owner to unlock his things, it is strongly recommended to check the probability of errors using the Bayes test, described in the previous section. 4.1 Security of hash functions In most cryptographic applications, while using hash functions, it is desirable that the best way to produce a valid pair (x, y) is first to choose x, the starting sequence and then to compute the message digest y using the hash function h by applying it to x. In order to provide secure hash function, the research has shown that there are three potential problems in the security process of hash functions to define the process as complete: 1. One way preimage resistant Let us suppose we have a hash function h : X → Y and an element y ∈ Y . The goal is to find x ∈ X such that h(x) = y. The problem asks if there exists an element x ∈ X and there is a hash function for it such that h(x) = y. Such a value x is called a preimage of y. If a preimage is determined, it means that the pair is valid and the problem is efficiently solved. 2. Second preimage resistant Let us suppose we have a hash function h : X → Y and an element x ∈ X. The goal is to find z ∈ X such that h(z) = h(x). This problem is called the second preimage, because it tries to put a double security while searching for pair (x, y) and (z, y). Two possible pairs decrease the possibility for errors because in two affordable sequences it is more likely to find at least one suitable pair rather than in one affordable match. 5 Fingerprint detection, verification and usage in practice In the previous sections, the emphasis was on the secure data, obtaining data integrity and reducing the errors as much as it is possible. This section is intended to describe the process of recognition, assuming that we already have secure data and the error probability test is executed. Face, voice and fingerprint recognition are assumed as intelligent biometric techniques due to their direct connection with the human. In the field of algorithms, there are different criteria for dividing techniques that solve some problem into groups. This can be based on different kind of solutions for the problem, different time and space complexities, different quality of solutions, more suitable examples they are solving and many more. Instead of describing a specific fingerprint matching system, which is not the main point of our study, we will relate on presenting some of the many pieces to make an intelligent and effective system. The input is an image, a fingerprint and its processing is shortly presented in Figure 1. It is clearly shown that the image Figure 1: The fingerprint preprocessing pattern recognition. is first of all translated into the language understandable for computers such as a binary sequence of bits. The raw image G is processed to form the binary sequence B, raw skeleton SR and processed skeleton Sp . This can be seen on a real example in the following picture below: Figure 2: Preproccessing results on a real example. 3. Collision resistant This problem is similar to the previous one. The Collision problem extends the second image problem and tries to find not only two, but as many as it is possible of the affordable pairs in order to increase the probability of recognition and protect the data at a high level. The notations for the abbreviations may appear rather confusing in this case. In the section for hash functions, x0 is considered as a bad sample of the original data and it refers to insecure modified data. On the other hand, z represents a good encrypted change for the original data to maintain and control the very first sample. 349 The first picture of G a smoothed version of the original gray scale image, the second one is the result of dynamic thresholding of G and the last picture represents the result of thinning B to produce the raw skeleton image SR . In the last step of the fingerprint recognition process, known as the postprocessing skeleton or syntactic processed skeleton, we used various methods to clean and heal the skeleton image as well as to classify and recognize the given input. In summary, it is important to note that this process is much more complicated and complex. The above explanation is just a brief overview of what happens when the secure data is provided and how much easier, safer and faster we come to the clarificaiton and achieve our goal. 5.1 Example from everyday life This paper addresses the point referring to the usage of mobile phones and smart devices in the last few years. Recent studies proved that biometric authentication, such as fingerprint, is way more secure than a six (or more) digit pattern. About 4% of the time, the four digit password 1234 will be correct, which is a relatively high probability when an another person is just guessing. Although, it is the safest method to unlock a device, it has its own weaknesses. Fingerprint authentication systems have sensors that do not capture the whole fingerprint, but a partial segments. In a situations like this, there is a probability for unlocking the device with a fake fingerprint. In a recent study it has been proved that out of five people there is almost always at least one that can have his phone unlocked with his/her fingerprint. [Fuk2013] Fukunaga. Introduction to statistical pattern recognition. Elsevier, 2013 6 [Kom2005] Komarinski. Automated fingerprint identification systems (AFIS). Elsevier, 2005 Conclusion [Leiss2012] Leiss. Principles of Data Security. Springer Science & Business Media, 2012 [Stins2005] Stinson. Cryptography: theory and practice. Chapman and Hall/CRC, 2005 [Adams2014] Adams and Heard. Data analysis for network cyber-security. World Scientific Publishing Co., Inc., 2014 [Bi2006] Bishop. Pattern recognition and machine learning. Springer, 2006 [Prab2003] Prabhakar, Pankanti and Jain. Biometric recognition: Security and privacy concerns. IEEE security & privacy, 33-42, 2003 To sum up, the quality of every process depend on the secure data that is being provided. Confusing but real, the [Ross2005] Ross, Dass and Jain. A deformable model for first step is a pessimistic one, executing the probability fingerprint matching. Elsevier, 95-103,2005 of errors. The real question is, why do researches start with this issue. This it a simple question with no easy answer. It is much more complicated than just reducing the probability of errors. It is based on enormous testing, evenmore required resources, and it is hard to determine the best optimal solution. Once the data is secured, optimized and the errors are decreased to a minimum, executing operations and algorithms is quite straightforward. Using optimized and more efficient algorithm helps up when there are some or many problems, so they can be quickly found and solved by the developers, before it is too late and can impact the onwards development of the application. In conclusion, maintaining secure data and data integrity in the fingerprint pattern recognition problem is the key to a faster and more suitable solution for certain issues. 7 Acknowledgements This paper is a continuation of my Bachelor Thesis. It was written under mentorship of the Head of the Laboratory for Cryptography and Computer Security, Professor Aleksandar Jurišič at the Faculty of Computer and Information Science in Ljubljana, Slovenia. He lead me through the process for writing scientific papers and helped me improve and upgrade my knowledge for the desired topic. References [Ratha2003] Ratha and Bolle. Automatic fingerprint recognition systems. Springer Science & Business Media, 2003 [Jain1991] Jain, Halici, Hayashi, Lee and Tsutsui. Intelligent biometric techniques in fingerprint and face recognition. CRC press, 1999 350 Naprava za vizualno-kinestetično navigacijo slepih in slabovidnih Kristjan Stopar1 1 Fakulteta za elektrotehniko, računalništvo in informatiko, Univerza v Mariboru (UM FERI) Koroška cesta 46, 2000 Maribor, Slovenija E-pošta: kristjan.stopar@student.um.si Abstract. We introduce a device for kinesthetic navigation of the blind and visually impaired. The device was designed and implemented by following the recommendations of 39 blind or visually impaired persons. It consists of ergonomically shaped glasses with ten time-of-flight sensors that detect obstacles at the maximal distance of 4 m in the field of view of about 87.5◦ horizontally and 67◦ vertically. The information about the detected obstacles is wirelessly transmitted to the medical belt with fifteen flat vibration motors distributed in 3 rows covering the abdominal area of about 28 × 20 cm. The intensity of vibrations is modulated by the information about the obstacle’s size, direction and distance, as detected by the glasses and corrected by the belt orientation. The closer the obstacle, the more intensive the vibrations of a given motor. The bigger the obstacle, the larger the number of vibrating motors. The device was tested on 12 healthy persons with no previous experiences with the navigation systems for the blind. In their first attempt, the individuals detected 2.8 ± 0.4 out of 4 obstacles and spent 80 ± 31.5 seconds to successfully walk through 11 m long custombuilt polygon in 56.2 ± 15.7 steps. In the second attempt, they significantly improved their performance as they detected 2.92 ± 0.3 obstacles and spent 56 ± 18.7 seconds and 48.3 ± 10.7 steps to complete the walk. 1 Uvod Slepi in slabovidni se vsakodnevno srečujejo s številnimi izzivi. Ritem modernega življenja se je v zadnjih letih močno dvignil. Prav tako se povečujeta gostoti naseljenosti in prometa. Zaradi omenjenih demografskih sprememb se za slepe in slabovidne povečujejo izzivi vključevanja v sodobno družbo. Navigacija skozi vrvež ljudi in spreminjajočih se prostorskih ovir je le eden izmed teh izzivov. Obvladanje tega izziva pa pogosto dojemamo kot znak samostojnosti in neodvisnosti, še posebno v krogu slepih in slabovidnih. Problem, ki ga rešuje naša naprava je navigacija slepih in slabovidnih mimo vsakodnevnih ovir, ki se pojavijo v notranjih prostorih in na prostem. Za problem navigacije slepih že obstajajo rešitve kot so bela palica, pes vodnik [1], očala z umetno inteligenco, vibracijske priponke [2], robotizirane palice [1], ter vibracijske zapestnice, a izziv je bil narediti na- ERK'2019, Portorož, 351-354 351 pravo, ki bi reševala tovrstne navigacijske probleme in bila hkrati cenovno dostopna, intuitivna za uporabo ter preprosta za izdelavo. Naprava zaznano okolje uporabniku predstavi v obliki vibracij polja vibracijskih elementov, kar je ključnega pomena za intuitivno uporabo, saj slepi in slabovidni dokazano zaznavajo vibracije veliko bolje kot ljudje brez težav z vidom [3]. Vendar pa ta fenomen prestrukturiranja centralnega in perifernega živčnega sistema še ni povsem razumljen. Posledično je tudi razvoj navigacijskih naprav za slepe in slabovidne precej dinamičen in še daleč od globalno optimalne rešitve. 2 Opis delovanja naprave Napravo sestavljata dva glavna dela, in sicer očala za zaznavanje okolja ter pas za interpretacijo le-tega. Očala povzemajo obliko smučarskih očal in so izdelana s postopkom 3D tiskanja, kar omogoča večjo stopnjo prilagajanja posamezniku ter estetski nivo, ki je pričakovan glede na rezultate naše ankete na 39 slepih in slabovidnih osebah. Na očalih so dodani dodatki iz gume in pene za bolj udobno uporabniško izkušnjo, ki je bila po podatkih ankete slepim in slabovidnim ena izmed najpomembnejših lastnosti očal. Celotna teža očal je 172 g, kapaciteta enocelične litij-polimer (LiPo) baterije znaša 2000 mAh, poraba toka pa znaša 406 mA. Predviden čas delovanja naprave do izpraznitve je 4,5 h. Procedura zaznavanja okolice se prične na očalih z meritvami desetih različno usmerjenih senzorjev časa preleta svetlobnega žarka (angl. time-of-flight - ToF) VL53L1X [4]. Ti vrnejo podatek o absolutni razdalji do ovire. Zaznavno območje očal je 87,5◦ horizontalno in 67◦ vertikalno. Istočasno se izvajajo meritve inercijske merilne enote (IME) MPU-9250 [5], ki se kasneje uporabijo za ugotavljanje usmerjenosti uporabnikovega pogleda (Slika 1). Vse pridobljene informacije so s pomočjo 32 bitnega mikroprocesorja Xtensa LX6 zapakirane v lasten podatkovni format in preko povezave bluetooth (BT) poslane vibracijskemu pasu. Tudi na pasu se izvajajo meritve z enoto IME, ki se skupaj z meritvami orientacije očal uporabijo za natančen izračun usmerjenosti pogleda očal in pasu oziroma kotne razlike njunih usmerjenosti. Glede na pridobljene informacije o oddaljenosti zaznanega predmeta in usmerjenosti uporabnikovega pogleda mikrokrmilnik ESP-WROOM-32 [6] vključuje in izključuje vibracijske motorje Seeed Studio 0834 na izbranem delu pasu (Slika 2) ter prilagaja njihovo intenzivnost vibriranja. Bližje kot je zaznan predmet, intenzivnejša je vibracija. Ko naprava ne zaznava ničesar, so vsi vibracijski motorji izklopljeni (Slika 3). Slika 1: Shema očal za navigacijo. Slika 2: Shema mreže vibratorjev na pasu. Pas vsebuje petnajst vibracijskih motorjev ter všito mikrokrmilniško enoto ESP-WROOM-32 z enocelično litij-polimer (LiPo) baterijo kapacitete 10.000 mAh. Celotna poraba toka znaša 800 mA, pas pa tehta 486 g. Predviden čas delovanja do izpraznitve je 12 h. Na uporabniku je nameščen tako, da vibracijski motorji pokrivajo trebuh ter območji nad zunanjimi poševnimi trebušnimi mišicami. V ta namen smo uporabil medicinski pas za oporo hrbtu znamke Mueller [7]. Izbrali smo ga, ker je širok, dobro prilagodljiv telesu in se na telo namesti z elastičnimi ježki. Tako je primeren za več različnih obsegov pasu končnih uporabnikov. Slika 3: Shema delovanja naprave. 352 3 Zaznavanje okolja Informacije o obliki prostora in o ovirah v njem so posredovane končnim uporabnikom v obliki vibracij pasu. Izbira je utemeljena na podlagi raziskav v [3], ki ugotavljajo, da imajo slepi zaradi izgube vida izboljšana druga čutila. Poleg čutil za vonj, sluh in otip se jim izboljšajo tudi spominske in lingvistične sposobnosti, kar je mogoče zaradi plastičnosti človeških možganov. Izboljšave kognitivnih sposobnosti, predvsem spominskih, bistveno pripomorejo k uporabi naprave, saj slepi ali slabovidni uporabniki v povprečju lažje prepoznavajo vzorce vibracij [3]. Tekom razvoja naprave smo testirali več vrst vibracijskih motorjev. Najprej smo izbrali vibracijske motorje odprtega tipa. Ti niso bili ustrezni, saj jih je bilo zaradi njihove prosto vrteče se glave potrebno ograditi s posebno oblikovanimi 3D natisnjenimi kapsulami. Kapsule in omenjen tip vibracijskih motorjev so bili izločeni zaradi pregrevanja in posledične toplotne deformacije kapsul. Nato smo testirali ploščate vibracijske motorje. Ti so bili primernejši, saj so zaprtega tipa, kar je omogočilo načrtovanje enostavnejših in bolj odprtih kapsul, ki se izdatno ne pregrevajo. Sam pas je elastičen, kar omogoča dobro prilagajanje telesu ter konstanten stik vseh vibracijskih motorjev. Uporabnik ga namesti nad pasom, vibracijski motorji pa pokrivajo predel trebuha od leve do desne zunanje poševne trebušne mišice. Za namestitev pasu smo iskali večje toge površine telesa, ki bi omogočile razporeditev vseh vibracijskih motorjev na enem mestu, ti pa bi bili vseeno dovolj narazen, da uporabnik razloči med posameznimi vibracijami oziroma smermi iz katerih prihajajo ovire. Pri tem smo upoštevali željo anketiranih uporabnikov, da so pas in vibracije čim manj moteči. Pri našem začetnem prototipu pasu so vibratorji pokrivali hrbet. Površina in posledično ločljivost zaznavanja vibracij sta bili ustrezni, pas pa je bil nemoteč. Po testiranju smo ugotovili, da sama uporabniška izkušnja ni bila najbolj naravna, saj si je uporabnik moral prostor, ki je bil preko vibracij posredovan hrbtu, preslikati v prostor pred sabo [8]. Zato so bili vibracijski motorji prestavljeni na trebuh, ki premore tudi več senzoričnih živcev. S tem naprava omogoča intuitivno in natančnejše zaznavanje ovire v pravilni smeri brez dodatnih zahtev po preslikavanju prostorov. Površina, ki jo pokriva vseh petnajst vibracijskih motorjev [9] tvori pravokotno mrežo velikosti 28 × 20 cm (Slika 2). Vsak vibracijski motor predstavlja del vidnega polja uporabnika. Razporejeni so v tri vrste po pet motorjev. Takšna oblika je bila izbrana, ker je tudi razporeditev senzorjev na očalih podobna (zaznavajo večji horizontalni kot vertikalni kot). Mreža na pasu z izbrano obliko dovoljuje pogled levo in desno, kar omogoča premikanje središča vibracij po mreži v odvisnosti od usmerjenosti pogleda in pasu uporabnika. To pripomore k bolj naravni uporabniški izkušnji, saj se območje vibriranja prilagaja usmerjenosti pogleda in telesa. Naprava z uporabo pulzne modulacije nadzoruje intenziteto vibriranja motorjev, kar omogoča interpretacijo oddaljenosti do ovir. Minimalna zaznana oddaljenost je 4 cm, maksimalna pa približno 4 m, vendar meritve blizu maksimalne razdalje niso natančne. Intenziteta vibracij se povečuje z bližino ovir. Lestvica intenzivnosti vibracij je linearna. Testirali smo tudi logaritemsko lestvico, a se le-ta zaradi prepočasnega naraščanja logaritma in posledično slabšega zaznavanja oddaljenosti od ovir izkazala kot manj primerna. 4 Testiranje Napravo smo testirali na 12 prostovoljcih (3 ženske, 9 moških, povprečna starost 34, 2 ± 11, 4 let). Izvedba testa je temeljila na predhodno opravljeni anketi o pričakovanih funkcijah naprave za navigacijo. Testiranje je bilo izvedeno v notranjem prostoru (avla objekta G2, UM FERI), ki je bil dovolj velik, da je simuliral zunanje razmere. V zunanjih razmerah so ovire razporejene na večjih razdaljah, poleg tega pa ni sten, ki bi jih uporabnik ves čas zaznaval. Test je potekal v dveh delih. V prvem delu smo prostovoljce seznanili z delovanjem naprave. Poleg tega smo testirali spreminjanje intenzitete vibracij z bližanjem in oddaljevanjem od stene. Drugi del je potekal na poligonu (Sliki 4 in 5), ki je simuliral ovire na različnih višinah. Ovire so bile narejene iz lahke polisterenske pene in so predstavljale različne predmete kot so miza, visok in ozek steber ter vrata. Te ovire smo izbrali, ker so po mnenju slepih anketirancev za njih najbolj zahtevne. Posebej je bila testirana tudi viseča ovira, saj se jo z belo palico ne da zaznati. Drugi del testiranja so testiranci opravili dvakrat, saj smo želeli preveriti, če se natančnost in hitrost zaznavanja ovir večata s časom uporabe. Uspešnost navigacije po poligonu smo merili s časom prehoda, številom zaznanih ovir ter številom korakov. Na koncu so uporabniki podali njihove občutke ter opisali njihovo uporabniško izkušnjo. 5 Rezultati Od štirih ovir so testiranci v prvem prehodu v povprečju zaznali 2, 8 ± 0, 39 ovire, v drugem pa 2, 92 ± 0, 29 ovire. Med obema prehodoma ni bilo statistično značilnih razlik (Friedmanov test z Bonferronijevo korekcijo, p>0,05). Oviro, ki je bila pod višino pasu (najbolj leva ovira na sliki 5) je zaznal le en testiranec. Pri drugih ovirah v večini primerov ni bilo težav z zaznavanjem. Povprečen čas prvega prehoda testirancev je znašal 80, 0 ± 31, 5 sekund, povprečen čas drugega prehoda pa 56, 0 ± 18, 3 sekund. Pri prvem prehodu so merjenci naredili 56, 2 ± 15, 7, pri drugem pa 48, 3 ± 10, 7 korakov. Obe razliki sta statistično značilni (Friedmanov test z Bonferronijevo korekcijo, p < 0,01). Slika 6: Rezultati meritev prvega prehoda poligona. Slika 4: Fotografija poligona v velikosti 11 X 3 m. Višina stebrov in vrat je 2,3 m. Slika 7: Rezultati meritev drugega prehoda poligona. Iz rezultatov je razvidno, da so testiranci v drugem prehodu skozi poligon porabili manj časa, naredili manj korakov ter zaznali več ovir. Viseča ovira, ki je bila testirana posebej, je bila zaznana v vseh poskusih. Slika 5: Fotografija tlorisa poligona. 353 6 Diskusija in zaključek Razvili smo napravo za vizualno-kinestetično navigacijo slepih in slabovidnih in jo testirali na zdravih preiskovancih. Vsi preiskovanci so bili mnenja, da je naprava nemoteča in dovolj lahka ter udobna za vsakodnevno uporabo. Poleg tega so bili vsi preiskovanci uspešnejši in hitrejši v drugem prehodu poligona, kar nakazuje na izboljšanje zaznavanja ovir oziroma čutenja prostora z večanjem časa uporabe. Opazili smo, da se je s časom uporabe večala odločnost oziroma hitrost hoje. Po mnenju večine preiskovancev se je izboljšal občutek za zaznavo bližine ovir. Slednjega bi lahko še dodatno izboljšali s piskačem, ki bi opozarjal na neposredno bližino ovire, na primer, ko je ovira bližje od 0,5 m. Hitrost učenja preiskovancev je bila odvisna od njihove izbire strategije hoje po prostoru. Upoštevati je treba tudi, da testiranci niso imeli izkušenj s slepo hojo, zato je potrebno pri meritvah upoštevati njihovo začetno negotovost. Ugotovili smo, da naprava v primeru, ko uporabnik gleda naravnost, slabše zaznava ovire, ki so nižje od višine pasu. Na razdaljah, daljših od 2 m slabše zaznava tudi ovire, ožje od 20 cm. Oba problema bi lahko rešili z uporabo več senzorjev, drugačno usmeritvijo le teh in zožitvijo izhodnega laserskega snopa svetlobe posameznega senzorja, ki trenutno meri 36,5◦ . Če to ne bi zadostovalo, bi lahko senzorje dodali tudi na pas in na ta način omogočili zaznavanje ovire na višini uporabnikovega pasu in pod njim. Samo natančnost zaznavanja ovir pa bi lahko povečali tudi s kombinacijo senzorjev preleta svetlobnega žarka in dveh kamer. Zaradi njene energetske potratnosti, te rešitve nismo izbrali. V prihodnje želimo izboljšati tudi učinkovitost delovanja naprave z uporabo piezoelektričnih vibracijskih motorjev. Ti so učinkovitejši od trenutno uporabljenih, a za upravljanje zahtevajo dodaten gonilnik in so manj dostopni. Potreben je še test, s katerim bomo ugotovili ali je način vibriranja omenjenih vibracijskih motorjev primernejši. Pri treh od dvanajstih testirancev se je pojavil problem pri prenosu vibracij oziroma informacij o obliki okolice na uporabnika, saj se jim pas in vibracijski motorji na njem zaradi njihovega specifično oblikovanega telesa niso prilegali dovolj dobro. S tem se je zmanjšala enakomernost zaznavanja vibracij, kar je vodilo do zmede pri oviri, ki je predstavljala vrata, saj so bile vibracije interpretirane napačno. Problem slabega prileganja vibracijskih motorjev na telo uporabnika bi lahko rešili z različnimi velikostmi medicinskih pasov in dodatno peno okoli vibracijskih motorjev, ki bi omogočila enakomernejši in tesnejši stik le-teh z uporabnikovim telesom. 7 Zahvala Hvala Urbanu Košaletu in Pii Žnidaršič za sodelovanje pri izdelavi in testiranju celotne naprave. Hvala tudi Srednji elektro šoli in tehniški gimnaziji Novo mesto in mentorju Tomažu Ferbežarju za ideje in vztrajno podporo, 354 Medobčinskemu društvu slepih in slabovidnih v Novem mestu ter Mariboru za sodelovanje pri anketi in oblikovanju specifikacij naprave. Hvala mentorjema na UM FERI Jerneju Kranjcu in red. prof. Alešu Holobarju. Literatura [1] M. A. Hersh, M. A. Johnson: Assistive Technology for Visually Impaired and Blind PeopleSpringer Science & Business Media : Springer Science & Business Media, 2010. str. 142. [2] C. Sylvain, D. Thalmann, F. Vexo: Wearable Obstacle Detection System for visually impared people. (dostopano dne: 30. 6 2019). < https ://infoscience.epfl.ch/record/99014/files/ haptex05.pdf>. [3] C. M. Bauer, G. V. Hirsch, L. Zajac, B. Koo, O. Collignon, L. B. Merabet: Multimodal MR-imaging reveals large-scale structural and functional connectivity changes in profound early blindness, 22. marec 2017, < https ://journals.plos.org/plosone/article?id=10.1371 /journal.pone.0173064> [4] STMicroelectronics: A new generation, long distance ranging Time-of-Flight sensor, 22. - 24. November 2018, < https ://www.st.com/resource/en/ datasheet/vl53l1x.pdf> [5] InvenSense: MPU-9250 Product Specification Revision 1.0, 17. 1. 2014, < https ://www.invensense. com/wp-content/uploads/2015/02/MPU-9250-> [6] Adafruit learning system: Adafruit HUZZAH32 ESP32 Feather. 22. 8 2018, (dostopano dne: 1. 7. 2019). < https ://www.mouser.jp/datasheet/2/737/ adafruit-huzzah32-esp32-feather-1396535.pdf> [7] Mueller sports medicine: Adjustable Back Brace, 2019, < https ://www.muellersportsmed.com/adjust able-back-brace.html> [8] K. Stopar, U. Košale, P. Žnidaršič: Očala za slepe (Raziskovalna naloga s področja Aplikacijski inovacijski predlogi in projekt), april 2018, Novo mesto: ZOTKS [9] Seeed studio: Mini vibration motor 2.0mm, 12. 2. 2015, < https ://www.marutsu.co.jp/contents/ shop/marutsu/ds/316040001 Web.pdf> ERK'2019, Portorož, 353-356 353 354 355 356 Index Allmaier Günter: 281 Amadasi Giovanni: 206, 210 Andonovski Goran: 123 Antić Miloš: 123 Antolovič Dejan: 115 Avberšek Marko: 239 Babič Jan: 110 Babić Zdenka: 10 Bajrić Samed: 144 Balantič Katja: 281 Barišić Saša: 110 Begeš Gaber: 173 Bernik Jakob: 276 Bezovšek Luka: 57 Blažič Sašo: 70 Bobek Urban: 110 Bošković Borko: 215 Božič Jakob: 248 Bregar Klemen: 35 Brest Janez: 215 Brezočnik Zmago: 6 Brugola Marcelo: 206, 210 Burger Gregor: 65 Celestina Metod: 194 Cerar Gregor: 40 Chieregato Massimo: 210 Chowdhury Amor: 127, 239 Cindrič Helena: 309 Cornelis Francois H.: 309 Cvetkoska Aleksandra: 293 Čebašek Peter: 276 Čegovnik Tomaž: 49 Čehovin Zajc Luka: 98 Černe Borut: 185 Čorović Selma: 140 Debevec Sonja: 276 Dejanovic Igor: 231 Dejanović Mirjana: 231 Demirović Damir: 313 Demirović Nedžmija: 144 Dobrevski Matej: 90 Dobrišek Simon: 276 Drobnič Klemen: 156, 160 Dubravić Amila: 313 Emeršič Žiga: 264 Erjavec Simon: 102 Felzer Gregor: 127 Finkšt Tomaž: 185 Fröhlich Hubert: 3 Fujimori Masashi: 309 Gaber Aljaž: 23 Gabrijelčič Tomc Helena: 235 Gams Andrej: 219 Gardašević Gordana: 40 Gleich Dušan: 86 Gocić Milan: 243 Golob Marjan: 82 Gruden Timotej: 53 Guid Matej: 223 Guna Jože: 65 Gungl Ernest: 6 Hančič Aleš: 115 Hiti Miha: 173, 181 Hodnik Rok: 140 Horvat Miha : 19 Hribernik Matevž: 53, 353 Hrovat Andrej: 40 Hrovatič Anja: 264 Igrec Dalibor: 127 Jakus Grega: 53 Jamšek Janez: 327 Jamšek Marko: 110 Jan Matevž: 322 Jarm Tomaž: 322 Javornik Tomaž: 40 Jereb Tjaša: 27, 335 Jeromel Gregor: 82 Justin Tadej: 276 Juvan Mark: 276 Juvan Žana: 61 Kandušer Maša: 285, 301 Kavaš Tomaž: 268 Keš Erik: 53 Kezić Nikola: 10 Klančar Gregor: 70 Koren Jaka: 14 Kos Andrej: 27 Kos Bor: 309 Kos Leon: 185 Košir Andrej: 335 Kramar Peter: 281, 289 Kramberger Tin: 272 Kraševec Urban: 189 Krebelj Anton: 115 Krebelj Kristjan: 115 Kristan Matej: 252 Kuk Kristijan: 243 Kukovičič Klara Eva: 276 Kusić Dragan: 115 Kužnar Roman: 4 Kwon Kihoon: 264 Langus Janez: 318 Loknar Martina: 70 Lončarević Zvezdan: 219 Lotrič Uroš: 227 Lukežič Alan: 252 Lumburovska Lina: 346 Mahnič-Kalamiza Samo: 318 Makuc Danilo: 148 Malok Matjaž: 78, 344 Martinčič Aljaž: 27, 335 Mihelj Matjaž: 94, 102 Miklavčič Damijan: 293, 297, 309, 318, 322 Milic Petar: 243 Miljavec Damijan: 140 Miljković Nadica: 305 Mlinar Tomi: 31, 44 Močnik Grega: 82 Montani Jaša: 289 Munih Marko: 94, 102, 106 Nedeljković David: 331 Nemec Mitja: 152, 160, 168 Novak Vesna: 223 Ogrin Jan: 260 Pahič Rok: 219 Papa Gregor: 219 Papič Aleš: 227 Pavlin Mojca: 301 Pečnik Klemen: 61 Peer Peter: 264 Pejić Marina: 144 Perš Janez: 268 Peterlin Urban Metod: 136 Petkovšek Marko: 132 Pintar Matevž: 318 Pirkmajer Sergej: 301 Podobnik Janez: 94, 106 Podrzavnik Katja: 239 Pogačnik Matevž: 61 Policardi-Antoncich Franc: 202, 210 Popič Jan: 215 Potočnik Božidar: 272 Prislan Rok: 198 Puc Jernej: 106 Pušnik Igor: 177 Rabzelj Matej: 27, 335 Račič Matej: 227 Ravi P. Joshi: 2 Reberšek Matej: 293, 297 Redek Grega: 119 Rezelj Anže: 98 Rihar Andraž: 156, 160 Rodič Tomaž: 3 Rueckert Elmar: 110 Sadek Uroš: 127 Sarjaš Andrej: 86 Sepesy Maučec Mirjam: 215 Simić Mitar: 10 Skejić Emir: 313 Skočaj Danijel: 90, 98, 248, 256, 260 Sodnik Jaka: 49, 53, 305 Softic Izudin: 144 Solomon Stephen B: 309 Spalević Petar: 243 Srimathveeravalli Govindarajan: 309 Starčević Vanja: 10 Stopar Kristjan: 351 Stražar Anže: 94 Sušanj Diego: 264 Sušec Josip: 6 Sušin Denis: 156 Šafarič Riko: 78 Šela Samo: 260 Šerifović Trbalić Amira: 313 Škoberne Martin Anton: 74 Škorja Nives: 301 Šlajpah Sebastjan: 102 Šmerc Rok: 318 Šolaja Nikola: 305 Šrekl Miha: 140 Štublar Jernej: 322 Šubic Tine: 173 Šuligoj Veronika: 327 Šuštar Tomaž: 318 Švigel Aleš: 35 Tabernik Domen: 260 Trbalić Amir: 313 Trebušak Aljaž: 276 Trost Andrej: 14, 339 Uhan Marko: 65 Umihanić Midhat: 144 Uran Suzana: 78 Varga Luka: 235 Vasiljević Dragan: 40 Vidmar Primož: 102 Vlaovič Boštjan: 19, 23 Vončina Danjel: 160 Weiss Victor U.: 281 Zajc Anja: 297 Zajec Peter: 132, 164 Zdešar Andrej: 74 Zhao Yuge: 152 Zorko Damijan: 185 Žarn Kristian: 256 Žemva Andrej: 189, 339 Žižek David: 322 Žumer Gaja: 106 Žust Lojze: 252