İki Tekerlekli Kendini Dengeleyen Robot

Transkript

İki Tekerlekli Kendini Dengeleyen Robot
EEB 2016 Elektrik-Elektronik ve Bilgisayar Sempozyumu, 11-13 Mayıs 2016, Tokat TÜRKİYE
İki Tekerlekli Kendini Dengeleyen Robot
Onur İlyas YAVUZ1,2, Abdullah ÇETİN1, Önder EYECİOĞLU1
1
Mekatronik Mühendisliği Bölümü Fen Bilimleri Enstitüsü, İstanbul Gelişim Üniversitesi, Avcılar
İstanbul
[email protected] , [email protected], [email protected]
2
Ar-Ge Merkezi, MT Bilgi Teknolojileri Dış Tic. A.Ş, Esenler İstanbul
data obtained by the compression will be useful for
realization of more safe and stable personal transport vehicle
design.
Özet
Özellikle kapalı mekanlarda kullanılmak üzere tasarlanan
SEGWAY gibi güvenli ve kararlı kişisel taşıma araçları için
önemli bir konsept olan kendini dengeleyen robot tasarımları
için hata kontrol algoritmaları büyük önem taşımaktadır.
Hata kontrollerinin performansları hız, doğruluk ve kararlılık
gibi özelliklerine bağlıdır. Çalışmada, İki Tekerlekli Kendini
Dengeleyen Robot tasarımı gerçekleştirilmiştir. Robot
gerçekleştirilmesinde, geri besleme verileri, ivmeölçer ve
gyro sensörü kullanılarak, robotun açısal pozisyonu kontrol
edilerek sağlanmıştır. Bu tasarım üzerine üç farklı kontrol
algoritması (PI kontrol, PD kontrol, PID kontrol)
uygulanmıştır. Bu kontrol algoritmaları test edilerek hız,
doğruluk ve kararlılık gibi özellikleri karşılaştırılmıştır.
Böylece iki tekerlekli kendini dengeleyen robot üzerinde üç
farklı kontrol algoritması uygulanmış ve performansları
karşılaştırılmıştır. Karılaştırma sonucu elde edilen veriler,
daha güvenli ve kararlı kişisel taşıma aracı tasarımların
gerçekleştirilmesinde faydalı olacaktır.
1. Giriş
Kendini dengeleyen robot çalışmaları, kişisel taşıma
sistemlerinin geliştirilmesi için önemli bir alan teşkil
etmektedir. Bu tür taşıma platformları, özellikle dar alanda
hızlı ve kontrollü taşıma görevi gören ucuz ve etkili
çözümlerdir [1]. Bu konuda geliştirilen tasarımları şu şekilde
sıralayabiliriz. Ters sarkaç prensibine uygun olarak Joe isimli
bir robot geliştirilmiştir [2]. Ticari olarak geliştirilen ve bu
konudaki en önemli örneklerden bir diğeri ise Dean Kamen
tarafından geliştirilen SEGWAY isimli robottur [3-9].
Robotik sistemler, mekanik, elektronik kontrol ve algılama
sistemlerinden (sensör) oluşur[4]. İki tekerlekli kendini
dengeleyen robotun hareket denklemleri tek eksenli ters
sarkaç denklemleri ile modellenmiştir.[5-7-10]
Abstract
Kendini dengeleyen robot tasarımlarında, sistemi dengede
tutmak gereklidir. Sistemlerin dengede tutulmaları, sensör
verilerinin, etkin bir geri besleme kontrol algoritması
kullanılarak işlenmesi ile gerçekleştirilir.[6] Çalışmada, iki
tekerlekli
kendini
dengeleyen
robot
tasarımı
gerçekleştirilmiştir. Robotun açısal pozisyonu ivmeölçer ve
gyro sensör verilerinden elde edilmiştir.[8] Elde edilen bu
veriler, üç farklı kontrol algoritmasında kullanılarak, robotun
dengede tutulması sağlanmıştır. Çalışmada PI (Oransal İntegral), PD (Oransal - Diferansiyel) ve PID (Oransal İntegral - Diferansiyel)
kontrol algoritması
kullanılmıştır
The error control algorithms have great importance for selfbalancing robots that are key concept for safe and stable
personal transportation vehicles designed for especially use
indoors such as SEGWAY. The performance of control
algorithms depend on some properties such as speed,
accuracy and stability.
In this study, Two-Wheel Self- Balancing robot design has
been performed. The feedback data is provided by controlling
the angular position of the robot that obtained by using the
accelerometer and gyro sensor. Three error control
algorithms (PI, PD, PID) have been applied on this design.
These error control algorithms are tested and compered
features such as speed, accuracy and stability. So three
different control algorithm applied on the two-wheeled selfbalancing robot and their performances are compared. The
İvme sensöründen alınan açısal pozisyon verilerinin zaman
bağlı değişimleri incelenerek, bu kontrol algoritmalarının,
264
EEB 2016 Elektrik-Elektronik ve Bilgisayar Sempozyumu, 11-13 Mayıs 2016, Tokat TÜRKİYE
kararlılık, sürekli rejime gelme süreleri ve sürekli rejimde
kalma süreleri incelenmiştir.
2. Tasarım ve Uygulama
2.1. Elektronik Tasarım
Robotun elektronik tasarımında kontrol kartı olarak Arduino
Uno, motor sürücü olarak L298N motor kontrol kartı ve
açısal değişimleri algılamak içinde MPU6050 sensörü
kullanılmıştır (Şekil 1).
Arduino
MPU6050
Uno
L298N
Motor
Sürücü
Şekil 3: Arduino Uno devre kartı
Motor Driver Shield; İki adet DC motor sürmek için Arduino
Uno’ya pin uyumlu şekilde tasarlanmıştır. Motor sürücü H
Bridge entegresi olarak L298 entegresi kullanılmaktadır. Bu
kart ile 12V 2A’e kadar iki adet DC Motor’u birbirinden
bağımsız ve çift yönlü sürülebilmektedir. Motor beslemesi
için VIN girişini kullanılmaktadır. VIN girişinden 12V dan
yüksek gerilim verilmemelidir çünkü bu giriş direk olarak
Arduino’nun VIN girişine bağlıdır ve Arduino’nun çalışması
için gerekli besleme gerilimi buradan alınmaktadır. PWM
pinleri olarak D3 ve D11 pinleri, yön bilgisi için ise D12 ve
D13 pinleri kullanılmaktadır. L298 entegresinin 2 kanal
olmak üzere 4 giriş pinini basite indirgemek için A kanalının
IN1 ve IN2 pinleri direkt bağlanmak yerine IN1 pini direk
Arduino’dan bağlanmış, IN2 ise NOT kapısı ile bağlanmıştır.
Bu şekilde tek bit ile bir kanalda motor çift yönlü kontrol
edilmektedir.
Sağ Motor
Sol Motor
Şekil 1: İki Tekerlekli kendini dengeleyen robot sistemi blok
diyagramı
MPU6050 3 eksenli gyro ve 3 eksen açısal ivme ölçer
bulunan IMU (Inertial Measurment Unit) sensör kartıdır. I2C
protokolü ile haberleşmektedir. Açılsal ivme ölçer aralığı ± 2
± 4 ± 8 ± 16 g , Gyro ölçüm aralığı + 250 500 1000 2000 ° /
s ‘dir.
Şekil 2: MPU6050 sensörü yapısı
Şekil 4: Arduino Motor Shield
Arduino Uno; ATmega328 mikrodenetleyici içeren bir
Arduino kartıdır. Arduino Uno 'nun 14 tane dijital giriş / çıkış
pini vardır. Bunlardan 6 tanesi PWM çıkışı olarak
kullanılabilir. Ayrıca 6 adet analog girişi, bir adet 16 MHz
kristal osilatörü bulunmaktadır.
2.2. Mekanik Tasarım
Şekil 5’de İki tekerlekli Kendini Dengeleyen Robotun
çeşitli açılardan kaydedilen SolidWorks® tasarımı
gösterilmiştir.
265
EEB 2016 Elektrik-Elektronik ve Bilgisayar Sempozyumu, 11-13 Mayıs 2016, Tokat TÜRKİYE
2.3. İki Tekerlekli Tek Eksenli Ters Sarkaç Modeli
İki tekerlekli tek eksenli ters sarkaç, Euler Lagrange
diferansiyel denklemi ile modellenmiştir (denklem 2). Bu
modelde 2 serbestlik derecesi tanımlanmıştır (𝑥 ve 𝜃) (Şekil
7). Gövdenin, öteleme hareketi ve burulma hareketi ihmal
edilmiştir. Lagrange formülünde,
𝐿=𝑇−𝑉
(a)
(1)
𝑇, Toplam kinetik enerji ve 𝑉 toplam potansiyel enerjidir.
𝑑
(
𝜕𝐿
𝑑𝑡 𝜕𝑥𝑖̇
)−
𝜕𝐿
𝜕𝑥𝑖
= 𝐹𝑖
(2)
(b)
(c)
Şekil 5: İki tekerlekli Kendini Dengeleyen Robot (a) üst
görünüm (b) yan görünüm (c) alt görünüm
Şekil 7: Tek eksenli ters sarkacın serbest cisim diyagramı
Robot’un gövdesi 3 boyutlu yazıcıda üretilmiş olup PLA
malzeme kullanılmıştır. Robotu düzlemsel hareketi 2 adet 6v
320 RPM Redüktörlü DC motor ile sağlanmaktadır.
𝑇𝑡𝑜𝑝 = 𝑇𝐺𝑟 + 𝑇𝑇𝑟 + 𝑇𝑇𝑡
(3)
Burada;
𝑇𝐺𝑟 : Gövdenin dönme kinetik enerjisi
𝑇𝑇𝑟 :Tekerleğin dönme kinetik enerjisi
𝑇𝑇𝑡 : Tekerleğin öteleme kinetik enerjisi
Şekil 6: Kullanılan Redüktörlü DC Motor
ifadelerini göstermektedir.
Motorlara, 1 adet 7.4 v Lityum Polimer pil ile güç
sağlanmaktadır. Robotun hareket denklemleri, dinamik ters
sarkaç hareket denklemleri ile modellenmektedir.
𝑉 = 𝑀𝑔 𝑔𝑙 cos 𝜃 + 𝑀𝑡 𝑔𝑅
266
(4)
EEB 2016 Elektrik-Elektronik ve Bilgisayar Sempozyumu, 11-13 Mayıs 2016, Tokat TÜRKİYE
𝐿 = [𝑀𝑇 +
𝐼𝑎 2 1
] 𝑥̇ + 𝐼𝑥 𝜃̇ 2 + 𝑀𝐺 𝑙 cos 𝜃 𝑥̇ 𝜃̇ −
𝑅2
2
(c)
[𝑀𝑔 𝑔𝑙 cos 𝜃 + 𝑀𝑡 𝑔𝑅]
PID Algoritması :
𝐾𝑝 . 𝑒(𝑡)
(5)
+
𝑡1
+
Sol Motor
𝐾𝑖 . ∫ 𝑒(𝑡)
Motor
Sürücü
𝑡0
Denklem 2 den,
[𝑀𝑇 +
𝜃
Sağ Motor
+
-
2𝐼𝑎
2𝜏
𝑅
𝑅
̇2
̈
2 ] 𝑥̈ − 𝑀𝐺 𝑙 sin 𝜃 𝜃 + 𝑀𝐺 𝑙 cos 𝜃 𝜃 =
𝐾𝑑 .
(6)
𝑑
. 𝑒(𝑡)
𝑑𝑡
MPU6050
Bu non lineer denklemin çözümünden, iki tekerlekli tek
eksenli ters sarkaç modelinin dinamik denklemleri;
Şekil 8: (a) PI, (b) PD ve (c) PID algoritması blok
diyagramları
𝜃̈ = 𝐶1 𝜃 − 𝐶2 𝜏
𝑥̈ = −𝐶3 𝜃 + 𝐶4
Üç farklı kontrol algoritması sistem üzerine ayrı ayrı
uygulanarak eğim
açısının
zaman
bağlı değişimi
izlenmiştir. Bu kontrol algoritmalarında en uygun parametre
takımı (𝑘𝑝 , 𝑘𝑖 , 𝑘𝑑 ) belirlenmiştir. Belirlenen parametre seti
değerleri Tablo 1’ de listelenmiştir.
(7)
Burada 𝐶1 , 𝐶2 , 𝐶3 ve 𝐶4 , 𝑀𝐺 , 𝑀𝑇 , 𝐼𝑎 , 𝐼𝑥 ve 𝑅 ye bağlı
parametreler.
Tablo 1. Kullanılan algoritmaların paremetre seti değerleri
2.4. Kontrol Algoritmaları
Algoritma
PI
PD
PID
Robotun hareket denklemlerindeki bağımsız değişken olan
eğim açısı motorlara uygulanan voltaj değeri, PI, PD ve PID
kontrol algoritmaları ile kontrol edilmektedir (Şekil 8).
𝒌𝑷
20
70
70
0
𝒌
4𝑰
2
9
0
𝒌
0
𝑫
5
35
8
3. Sonuçlar
(a)
PI Algoritması :
𝐾𝑝 . 𝑒(𝑡)
Sol Motor
+
+
Motor
Sürücü
-
𝑡1
𝐾𝑖 . ∫ 𝑒(𝑡)
𝜃
Sağ Motor
+
Çalışmada PI (Oransal –
İntegral), PD (Oransal –
Diferansiyel) ve PID (Oransal – İntegral – Diferansiyel)
kontrol algoritmaları
ivme sensöründen alınan açısal
pozisyon verilerinin zaman bağlı değişimleri incelenerek, bu
kontrol algoritmalarının, kararlılık, sürekli rejime gelme
süreleri ve sürekli rejimde kalma süreleri incelenmiştir.
𝑡0
Her bir kontrol algoritmasına ait uygun parametreler deneysel
metot ile belirlemiştir (Tablo 1). Eğim açısının, zamana bağlı
olarak değişimleri izlenerek (Şekil 9, 10, 11), robotun denge
durumu çalışılmıştır. Algoritmaların karşılaştırılmasında,
Sürekli rejime gelme süresi, sürekli rejimde kalma süresi ve
eğim açısında meydana gelen titreşimlerin genlikleri
kullanılmıştır.
MPU6050
(b)
PD Algoritması :
𝐾𝑝 . 𝑒(𝑡)
+
-
𝐾𝑑 .
𝑑
. 𝑒(𝑡)
𝑑𝑡
+
+
Sol Motor
Motor
Sürücü
𝜃
Sağ Motor
MPU6050
267
EEB 2016 Elektrik-Elektronik ve Bilgisayar Sempozyumu, 11-13 Mayıs 2016, Tokat TÜRKİYE
Şekil 11: PID kontrol algoritmasının uygulanması
Şekil 11’da PID algoritmasında Denge, ±10
derece
civarında gerçekleşmiştir. Bu denge durumuna, 280 ms de
ulaşmıştır.
Şekil 9: PI kontrol algoritmasının uygulanması
Şekil 9,10 ve 11 de iki tekerlekli kendini dengeleyen robota
üç farklı algoritmanın uygulanması ile eğim açısının değişimi
incelenmiştir. Şekil 9 da PI kontrol algoritmasının
uygulanması ile eğim açısının değişimi verilmiştir. Robot
gövdesinin, x eksen doğrultusunda hareketi istenmemiştir.
Denge, ±6 derece civarında gerçekleşmiştir. Bu denge
durumuna, 320ms de ulaşmıştır.
Yukarıdaki grafikler incelediğinde ve kriterler göz önünde
bulundurulduğunda PI algoritmasında düzenli rejime daha
çabuk ulaştığı ve düzenli rejimde daha uzun kaldığı
gözlenmiştir.
Teşekkür
Çalışmalarımızda bizi destekleyen MT Bilgi Teknolojileri
Ar- Ge Merkezine, İstanbul Gelişim Üniversitesi’ne, MT
Bilgi Teknolojileri Genel Müdürü Aydın Çelik’e ve Prof. Dr.
Hasan Dinçer’e teşekkür ederiz.
4. Kaynaklar
[1] Hoa G. Nguyen; John Morrell ; Katherine D.
Mullens; Aaron B. Burmeister ;Susan Miles ; Nathan
Farrington ; Kari M. Thomas ; Douglas W. Gage
“Segway
robotic
mobility
platform”,
SPIE
Proceedings,5609, 207, 2004.
[2] F Grasse, D Arrigo, A Comlombi, A Rufer, “Joe: A
mobile inverted pendulum”, IEEE Trans. Electronics,
2002,vol.49(1),pp. 107-114.
[3] http://www.segway.com
[4] He Bin, Liu Wen Zhen, Lv Hai Feng,” The Kinematics
Model of a Two-wheeled Self-balancing Autonomous
Mobile Robot and Its Simulation” 2010 Second
International Conference on Computer Engineering and
Applications, 64-69, 2010.
[5] Ammar Wasif, Danish Raza, Waqas Rasheed, Zubair
Farooq, Syed Qaseem Ali “Design and Implementation
of a Two Wheel Self Balancing Robot with a Two Level
Adaptive Control” , IEEE, 2013, 978-1-4799-0615-4/13/
[6] Ali Unluturk, Omer Aydogdu, Ufuk Guner “Design and
PID Control of Two Wheeled Autonomous Balance
Robot” , IEEE 2013, 978-1-4799-3343-3/13/
[7] Wei An, Yangmin Li, “Simulation and Control of a
Two-wheeled Self-balancing Robot” Proceeding of the
Şekil 10: PD kontrol algoritmasının uygulanması
Şekil 10’da PD algoritmasında Denge, ±9 derece civarında
gerçekleşmiştir. Bu denge durumuna, 650 ms de ulaşmıştır.
268
EEB 2016 Elektrik-Elektronik ve Bilgisayar Sempozyumu, 11-13 Mayıs 2016, Tokat TÜRKİYE
IEEE International Conference on Robotics and
Biomimetics (ROBIO) Shenzhen, China, December
2013
[8] J. Alberto Bonales, Renato Gonzalez, “Instrumentation
and Wireless Control for the Self-Balancing Mobile
Robot on Two Wheels”, IEEE 2014, 987-1-4799-56838/14/
[9] Tomislav Tomašić, Andrea Demetlika, Mladen
Crneković “Self-Balancıng Mobile Robot Tilter”,
Transactions of Famena XXXVI-3 (2012), ISSN 13331124
[10] B. G. Zheng, Y. B. Huang, and C. Y. Qiu, “LQR+ PID
control and implementation of two-wheeled selfbalancing robot,” Applied Mechanics and Materials, vol.
590, pp. 399-406, August, 2014.
269

Benzer belgeler