Arktanjant fonksiyonu güç sistemlerinde, AC devrelerdeki analizlerde, enkoderlerde açı ve hız hesabında sistemlerin izlenmesi ve kontrolü için vazgeçilmez bir parçadır. Bu tür kontrol uygulamaları çoğunlukla mikrodenetleyicilerde yapılmaktadır fakat mikrodenetleyicilerin işlem kapasiteleri kısıtlıdır. Arktanjant fonksiyonu bir mikrodenetleyici içerisinde seri açılımı yöntemi ile hesaplanmaya çalışılırsa hem çok fazla işlem gücü gerekir hem de uzun zaman harcar. Ayrıca seri açılımı yönteminde hassasiyetin artması için daha fazla terim gerekir ve bu işlem yoğunluğunu daha da arttırır. Fakat arama tabloları ve CORDIC algoritması kullanılarak bu işlemler hem daha hızlı hem de bit düzeyinde kaydırma, toplama ve çıkarma gibi basit işlemlerle yapılabilmektedir. Bu gibi bit düzeyindeki işlemler ortalama bir mikrodenetleyicinin rahatça yapabileceği işlerdir. Bu çalışmada kapasitif rotary enkoderlerde rotor açısı ve hız hesabı için CORDIC algoritması kullanılmış ve bu işlemler ARM çekirdeğini kullanan bir mikrodenetleyicide gerçekleştirilmiştir. Sonuçlar hazır matematik kütüphanelerindeki arktanjant fonksiyonu ile kıyaslandığında CORDIC algoritmasının 0.0036” hassasiyet ile aynı işlemleri atan2 fonksiyonundan yaklaşık 9 kat ve atan2f fonksiyonundan 2 kat daha hızlı yaptığı gözlemlenmiştir.
Bu çalışma “Kapasitif Rotary Enkoderler için Analog Anahtarlama Tabanlı Okuma Devresi” başlıklı TÜBİTAK tarafından 2210-D kapsamında 1649B021908049 burs başvuru numarasıyla desteklenen yüksek lisans tez çalışmasından bir bölümün derlenip detaylandırılmasıyla hazırlanmıştır.
Arctangent function is an indispensable part for monitoring and control of systems in power systems, analysis of AC circuits, angle and speed calculation in encoders. Such control applications are mostly done in microcontrollers, but the processing capacity of microcontrollers are limited. If the arctangent function is tried to be calculated by serial expansion method in a microcontroller, it requires both a lot of CPU power and a long time. In addition, more terms are required to increase the accuracy in the series expansion method, and this further increases the density of the process. However, using the look up tables and the CORDIC algorithm, these operations can be done both faster and with simple operations such as bit shift, addition and subtraction. These operations are quite doable even for an average microcontroller. In this study, CORDIC algorithm was used for the rotor angle and speed calculation in capacitive rotary encoders and these operations were performed in a micro controller that uses ARM core. When the results are compared with the arctangent function in the math.h library, it has been observed that the CORDIC algorithm performs the same operations approximately 9 times faster than atan2 function and 2 times faster than atan2f fuction with a precision of 0.0036”.
Primary Language | Turkish |
---|---|
Subjects | Engineering |
Journal Section | Articles |
Authors | |
Publication Date | October 5, 2020 |
Published in Issue | Year 2020 Ejosat Special Issue 2020 (ICCEES) |