Konuşma tanıma teknolojisi kullanılarak devre tasarım ve analizi
Circuit design and analysis by using speech recognition technology
Yazar: AYŞE YAYLA
Danışman: DOÇ. DR. HAYRİYE KORKMAZ ; DOÇ. DR. ALİ BULDU
Marmara Üniversitesi / Fen Bilimleri Enstitüsü / Elektronik-Bilgisayar Eğitimi Ana Bilim Dalı
Derece: Doktora, 2018
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering
Dizin: Elektronik eğitimi = Electronic education ; Laboratuvar deneyleri = Laboratory experiments ; Sesli ifade tanıma = Speech recognition ; Uzaktan denetim = Remote control

Özet:
İnsanoğlunun en çok kullandığı doğal iletişim aracı olan konuşma, kişiye ait birçok bilgiyi içinde barındıran bir işarettir. Gelişen teknoloji ile beraber bu konuşma işaretinden elde edilen bilgiler kullanılarak çok çeşitli uygulamalar geliştirilmektedir. Konuşulan kelime ve ifadelerin tanınarak makineler ve özellikle bilgisayarlar tarafından anlaşılabilecek formata dönüştürülmesinde en çok kullanılan teknolojilerden biri konuşma tanımadır. Bu teknoloji insan-makine arası iletişimde tuşları aradan kaldırarak kullanıcının klavye ve fare gibi araçlara gereksinim duymadan sadece konuşarak işlemleri gerçekleştirebilmesini sağlamaktadır. Robot kontrolünden çağrı merkezi otomasyonlarına kadar çok geniş yelpazede kendisine uygulama alanı bulan konuşma tanıma teknolojisinin eğitim alanına uygulanması bu çalışmanın ana fikrini oluşturmaktadır. 
Bu tez çalışmasında, öğrencinin sesli komutlar ile istediği deneyi seçebildiği; deney parametrelerini değiştirilebildiği; deney sonuçlarını gözlemleyerek analiz edebildiği ve tüm bunları da ellerini kullanmadan sadece konuşarak gerçekleştirebildiği bir uygulama geliştirilmiştir. Bu çalışma ile Elektrik-Elektronik Mühendisliği, Mekatronik Mühendisliği, Kontrol ve Otomasyon Mühendisliği lisans programları ile Meslek Yüksekokullarında Elektronik ve Otomasyon Bölümü önlisans programları müfredatında yer alan Devre Analizi ve Elektronik Devreler derslerine katkı sağlanması amaçlanmıştır.
Web tabanlı olarak geliştirilen bu uygulamada, laboratuvar çalışmalarına yeni bir özellik ekleyerek, deneylerin gerçekleştirilmesinin tüm aşamalarında konuşma verisinin kullanılması sağlanmıştır. Her yerden erişilebilir, kullanımı kolay ve kullanıcı dostu olması hedeflenen bu uygulamada Adobe Flash Proffesional, Asp.net C#, MATLAB gibi yazılımlar ile içeriğe uygun özel geliştirilmiş üzerinde LCD bulunan bir deney kartı, Rasberry Pi 2 (Tek Kart Bilgisayar (TKB)), işaret üreteci ve kamera gibi donanımlar kullanılmıştır. Kullanıcı arayüzü oldukça sade ve öğrenciyi sıkmadan deneyini gerçekleştirileceği biçimde tasarlanmıştır. Elini geçici süre ile veya kalıcı kullanamayan engelli öğrenciler de dâhil olmak üzere tüm kullanıcı tiplerine hitap eden bu uygulamaya, konuşma tanıma teknolojisinin yanı sıra sesli ve yazılı bilgilendirme özelliği de eklenmiştir. Böylece, herhangi bir ek dökümana gerek kalmadan kullanıcı, hangi aşamada hangi komutu söyleyeceğini bilmektedir. 
Konuşma tanıma teknolojisi olarak Web Konuşma Uygulama Programlama Arabirimi (Web Speech Application Programming Interface-WSA) desteği veren Chrome masaüstü internet tarayıcısının kullanıldığı web uygulamasına, uzaktan erişim özelliğinin eklenmesi ile yer ve zamandan bağımsız olarak deneylerin gerçekleştirilmesi sağlanmıştır. Öğrenci ile görsel olarak daha kolay etkileşim sağlayabilmek amacıyla arayüz, Adobe Flash Professional programı ile tasarlanmıştır. Kullanıcının söylediği komutlar, WSA ile metin haline dönüştürülüp JavaScript dili vasıtası ile flash uygulamasına gönderilmektedir. Bu komut metni kullanılarak, akışların ilerletilip deney işlem basamaklarının yürütülmesi, uygulama üzerindeki animasyonların ve seslendirmelerin çalıştırılması sağlanmıştır. Bu işlemlerin gerçekleştirilmesinde Action Script 2.0 programlama dili kullanılmıştır. Ayrıca yine Action Script 2.0 dili kullanılarak kullanıcının söylediği sayısal değerler (deney numarası, giriş gerilimi, geri besleme direncinin değeri vb.) arka planda asp.net sayfasına Query String yöntemi kullanılarak gönderilmektedir. Asp.net sayfası içinde C# nesne yönelimli programla dili kullanılarak geliştirilen yazılım ile MATLAB programının arka planda çalıştırılması (dinamik devre tasarımında) veya sistemde yer alan cihazların programlanması  (gerçek zamanlı Elektronik Devreler deneylerinde) sağlanmaktadır. Ardından tüm analiz işlemleri gerçekleştirilerek, sonuçlar flash uygulamasına aktarılmaktadır.  Ayrıca, rapor oluşturma ve deney sonuçlarından oluşan bu raporun ders öğretim elemanına e-posta ile gönderilmesi de bu yazılımın içinde gerçekleştirilmektedir. 
Bu tezde geliştirilen web tabanlı uygulama iki bölümden oluşmaktadır: Dinamik Devre Tasarımı ve Elektronik Devreler dersi laboratuvar uygulamaları. Dinamik Devre Tasarımı uygulamasında, öğrenci geliştirilen iki gözlü devre şablonu üzerinde istediği devreyi pasif devre elemanları (direnç, kondansatör) ve DC güç kaynağı kullanarak kurabilmektedir. Bu uygulamada öğrenci devreye ekleyeceği elemanı, elemanın birimini, değerini ve en son olarak da elemanın yerleştirileceği düğüm noktalarını kendisi belirlemektedir. Tüm bu işlemlerin tamamlanmasının ardından ilgili komutun öğrenci tarafından söylenmesi ile beraber analiz işlemi arka planda MatLab'de Sembolik Devre Analizi (Symbolic Circuit Analysis in MatLab –SCAM) aracı kullanılarak gerçekleştirilmekte ve sonuçlar kısa bir zaman sonra kullanıcı arayüzünde gözlemlenmektedir. İkinci bölümde ise Marmara Üniversitesi Teknolojisi Fakültesi Elektrik – Elektronik Mühendisliği müfredatında yer alan ELM 2021 Elektronik I ve ELM 2022 Elektronik II dersleri laboratuvar uygulamalarından seçilen deneyler ele alınmıştır. İlk bölümden farklı olarak bu bölüm kendi içinde iki ayrı uygulama tipi içermektedir: Bunlardan birincisi seçilen deneylere ait giriş parametrelerinin ve devre elemanı değerlerinin tamamen sanal olarak değiştirildiği ve deney sonuçlarının grafiksel ve/veya sayısal biçimde analiz edilebildiği benzetim modelidir. İşlemsel Kuvvetlendirici deneylerinin ele alındığı ve öğrencinin gerçek cihazları kontrol edebildiği ikinci tip uygulamalarda ise, istenen deneyin seçilebilmesi, deneye ait parametrelerin ayarlanması ve sonuçların gözlemlenebilmesi mümkündür. Bunun için bu tez çalışmasına özgün bir deney kartı tasarlanmış ve gerçekleştirilmiştir. Bu deney kartında, deneylere ait AC giriş işareti parametrelerinin (sinyal tipi, frekans, genlik) istenen durumlara göre ayarlanabilmesi için bilgisayar kontrollü Agilent 33220A İşaret Üreteci kullanılmıştır. Geliştirilen deney kartı üzerinden deney seçimi CD4051BE çoklayıcı/azaltıcı kullanılarak gerçekleştirilmiştir. Seçilen deneye ait ikinci parametre olan geri besleme direnci, I2C haberleşme protokolüne sahip sayısal bir potansiyometre kullanılarak;  üçüncü parametre olan DC referans gerilim değeri de yine I2C haberleşme protokolüne sahip sayısal analog çevirici kullanılarak belirlenmektedir. Tüm bu işlemler için, Raspberry Pi 2'de Python dili kullanılarak bir yazılım geliştirilmiştir. Deney kartı üzerinden çıkış gerilimi, bir osiloskop ile ölçülerek; elde edilen grafik Raspberry Pi 2 üzerinde bulunan kamera ile gerçek zamanlı olarak kullanıcı arayüzüne aktarılmaktadır. Uygulamaya erişmek için kullanıcı adı ve şifre gereklidir. Öğrenci tüm işlemleri başarıyla tamamladıktan ve deney sonuçlarını gözlemledikten sonra, öğrenci giriş tarihini, saatini ve deney sonuçlarını içeren bir rapor, ders öğretim elemanına e-posta ile gönderilir.

Abstract:
For human beings, speaking is the most used natural communication way and it contains many information about the person. With the developing technology, various applications were developed using information obtained from the speech signals.   Speech recognition is one of the most used technologies for recognizing spoken words and expressions and translates them into a format that machines and especially computers can understand. In human-machine interaction, this technology enables users to fulfill the tasks without using keyboard and mouse. Integrating speech recognition technology into educational field is the main idea of this study. This technology is used in various areas from robot control to call center automations. 
In this thesis, an application is proposed that the students can select desired experiment, adjust the experiment parameters, monitor the results and analyses them and perform all of these just by talking without using their hands. This study aims to contribute to Circuit Analysis and Electronics Circuit courses which take place in undergraduate programs of Electrical – Electronics Engineering, Mechatronics Engineering, Control and Automation Engineering or in associate degree programs of Electronics and Automation Programs of Vocational Schools. 
In this web-based application, usage of speech data for each step of the experiment was performed by integrating new features to the experimental setup. System is accessible from everywhere and easy to use. It contains a specifically designed experiment board with LCD, Raspberry Pi 2 single board computer with a video camera and a signal generator. Adobe Flash Professional, Asp.net C#, and MATLAB softwares were used during system development. User interface is plain and enables student to accomplish experiments without getting bored. Voice announcement and written notification features has been added to the application which appeals to all user types including disabled students who cannot use their hand temporarily or permanently besides speech recognition technology. Thus, without needing any additional documentation, the user knows what command to say at which stage.

Chrome desktop browser supporting Web Speech Application Programming Interface as a speech recognition technology was used in the application. An experimental setup independent from time and place was developed by adding remote access feature. To make visual interaction with the student easier, user interface was designed using Adobe Flash Professional program. The user's command is converted into text with WSA via JavaScript language and sent to the Flash application. By using command text, execution of the experiment steps, running the animations and playing sounds on the application are handled by ActionScript 2.0 programming language. Moreover, by using Action Script 2.0 programing language, spoken numerical values (experiment number, input voltage, value of the feedback resistor, etc.) are sent to asp.net page in the background by Query String method. The software developed by using C# object oriented programming language in asp.net page runs the MATLAB in background (for dynamic circuit design) or enables to program the instruments (for real time electronics experiments). After all analysis operations are carried out, the results are transferred to the flash application. Furthermore, this program also sends an e-mail which includes experimental results to the lecturer. 
The web-based application developed in this thesis consists of two parts: Dynamic Circuit Design and Electronics Experiments. In Dynamic Circuit Design application, students can build any intended circuit on two meshed circuit template using passive circuit components (resistance, capacitor) and DC power supply. In this application, student can choose a circuit element and determine its unit, value and finally its start and stop nodes on the schema. Then completing this procedure, after related command is voiced, analysis process starts and is fulfilled with MatLab Symbolic Circuit Analysis (SCAM) tool and results can be observed on the user interface in a short time. In the second part, selected experiments from ELM 2021 Electronics I and ELM 2022 Electronics II courses which are in curriculum of Electrical and Electronics Engineering department in Marmara University Faculty of Technology were contextualized. Unlike the first part, this section contains two types of experiment in it:  The first part is the simulation model in which the input signal parameters and circuit element values can be adjusted virtually and the experimental results can be analyzed graphically and / or numerically. In the second part, Operational Amplifier experiments are handled. In this part, it is possible to control the instruments, select the desired experiment, adjust the parameters of the experiment and observe the results. For this purpose, a novel experiment card was developed especially for this study.  In the experiment card, experiment selection was performed using CD4051BE multiplexer / demultiplexer. Feedback resistance was adjusted by using a digital potentiometer that communicates with I2C protocol. And DC reference voltage was adjusted by using a digital to analog converter module that communicates with I2C protocol. For all these operations, software was developed on Raspberry Pi 2 by using Python language. In this setup, a computer controlled Agilent 33220A Signal Generator was used to adjust the AC input signal parameters (signal type, frequency, amplitude). The output voltage of experiment circuit was measured by an oscilloscope; the obtained graph was transferred to the user interface through a plugged-in camera on the Raspberry Pi 2. Username and password is essential to access the application.  After the students complete all procedures successfully and observe the experiment results, an e-mail including student login date, time and results of the experiment is sent to the lecturer.