{"id":264,"date":"2011-03-03T08:57:22","date_gmt":"2011-03-03T08:57:22","guid":{"rendered":"http:\/\/www.hakancakiroglu.com\/wordpress\/?p=264"},"modified":"2011-03-03T14:29:23","modified_gmt":"2011-03-03T14:29:23","slug":"arduino-ile-analog-gyro-kontrolu-lisy300al","status":"publish","type":"post","link":"https:\/\/www.hakancakiroglu.com\/wordpress\/?p=264","title":{"rendered":"Arduino ile Analog Gyro Kontrol\u00fc (LISY300AL)"},"content":{"rendered":"<p>Mikrokopter, quadrokopter ya da aeroquad gibi \u00e7ok motorlu u\u00e7an bir sistem i\u00e7in bir\u015feyler yapmaya ba\u015flad\u0131ysan\u0131z sens\u00f6rlerin ne kadar \u00f6nemli oldu\u011funu anlam\u0131\u015fs\u0131n\u0131zd\u0131r. Her bir sens\u00f6r\u00fcn ayr\u0131 bir g\u00f6revi olsa da b\u00f6yle bir sistem tasar\u0131m\u0131 i\u00e7in gyro ve ivme \u00f6l\u00e7er (accelerometer k\u0131saca accel yazaca\u011f\u0131m bundan sonra) kesinlikle \u00f6ncelikli olarak sisteme dahil edilmesi gereken sens\u00f6rlerdir. <!--more--><\/p>\n<p>\u0130lk olarak b\u00f6yle u\u00e7an bir sistem yapmay\u0131 istedi\u011fim zamanlarda hangi sens\u00f6rlere ihtiya\u00e7 duyaca\u011f\u0131m\u0131 bile bilmiyordum. Gyro ve accel sens\u00f6rlerinin \u00f6ncelikli oldu\u011funa kanaat getirdikten sonra aralar\u0131ndaki fark\u0131 \u00f6\u011frenip, b\u00f6yle bir sistemin sadece gyrolar ya da sadece ivme\u00f6l\u00e7erler ile u\u00e7up u\u00e7mayaca\u011f\u0131n\u0131 anlay\u0131p ona g\u00f6re yat\u0131r\u0131m yapmak istiyordum. Tabiki b\u00f6yle bir bilgiye ula\u015fmak kolay olmad\u0131. Tecr\u00fcbe kazanmak i\u00e7in bazen extra paray\u0131 g\u00f6zden \u00e7\u0131karman\u0131z gerekiyor \ud83d\ude42 Ama neyseki bu yaz\u0131y\u0131 okuduktan sonra b\u00f6yle bir yat\u0131r\u0131m yapmay\u0131 planl\u0131yorsan\u0131z siz daha az para harcayacaks\u0131n\u0131z&#8230;<\/p>\n<p>\u00d6ncelikle e\u011fer b\u00f6yle u\u00e7an bir sistem yapmak istiyorsan\u0131z kaynak olarak kullanabilece\u011finiz open-source bir proje oldu\u011funu belirtmek isterim.<a href=\"http:\/\/www.aeroquad.com\" target=\"_blank\"> http:\/\/www.aeroquad.com <\/a>adresinden ilgili t\u00fcm kaynaklara eri\u015febilirsiniz. E\u011fer bu projeyi yapmak istiyorsan\u0131z bu projede kullan\u0131lan t\u00fcm sens\u00f6rler i\u00e7in gerekli kodlara ula\u015fmak m\u00fcmk\u00fcn. Dolay\u0131s\u0131yla b\u00f6yle bir yol izleyecekseniz mutlaka ilgili sens\u00f6rlerden temin etmelisiniz. \u00c7\u00fcnk\u00fc e\u011fer sizin temin etti\u011finiz sens\u00f6rler bu projede desteklenmiyorsa ya o sens\u00f6r i\u00e7in gerekli kodlar\u0131 kendiniz yazmal\u0131s\u0131n\u0131z ya da o sens\u00f6r\u00fc kullanmamal\u0131s\u0131n\u0131z.<\/p>\n<p>Bu yaz\u0131da bahsedece\u011fim sens\u00f6r i\u00e7in (yani LISY300AL i\u00e7in) aeroquad projesinin deste\u011fi yok. Ben bu sens\u00f6r i\u00e7in baz\u0131 geli\u015ftirmeler <a href=\"http:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/lisy300al-250x250.jpg\"><img loading=\"lazy\" class=\"alignright size-full wp-image-303\" title=\"lisy300al-250x250\" src=\"http:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/lisy300al-250x250.jpg\" alt=\"\" width=\"250\" height=\"250\" srcset=\"https:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/lisy300al-250x250.jpg 250w, https:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/lisy300al-250x250-150x150.jpg 150w\" sizes=\"(max-width: 250px) 100vw, 250px\" \/><\/a>yap\u0131yorum. Yeterince stable bir duruma gelirse bu kodlar\u0131 topluluk ile payla\u015f\u0131p projeye eklenmesini sa\u011flayaca\u011f\u0131m. Bu yaz\u0131y\u0131 yazmamdaki ama\u00e7 gyrolar hakk\u0131nda temel bilgiyi T\u00fcrk\u00e7e bir kaynak ile sa\u011flamak (\u00e7\u00fcnk\u00fc inan\u0131n ben bu a\u015famaya gelene kadar epey zaman\u00a0 harcad\u0131m) ve bir \u00f6rnek uygulama ile nas\u0131l kullanabilece\u011finizi g\u00f6stermek.<\/p>\n<p>Evet \u00f6ncelikle gyro ve ivme\u00f6l\u00e7erin tam olarak ne i\u015f yapt\u0131\u011f\u0131n\u0131 anlamal\u0131y\u0131z. Gyro&#8217;lar &#8220;a\u00e7\u0131sal h\u0131z\u0131&#8221; hesaplayabilen sens\u00f6rlerdir. Yani anl\u0131k a\u00e7\u0131sal h\u0131z hakk\u0131nda sizi bilgilendirebilirler. \u015e\u00f6yle bir \u00f6rnek ile a\u00e7\u0131klamaya \u00e7al\u0131\u015fay\u0131m, diyelimki bir aeroquad\u0131n\u0131z var,\u00a0 arac\u0131n\u0131z\u0131n \u00f6n k\u0131sm\u0131n\u0131 (yani pitch eksenini) 30 derece a\u015fa\u011f\u0131 30 derece de yukar\u0131 bakacak \u015fekilde toplam da 60 derece hareket ettirdi\u011finizi ve bunu da 1 saniyede ger\u00e7ekle\u015ftirdi\u011finizi varsayal\u0131m. Bu durumda gyro sens\u00f6r\u00fcn\u00fcz\u00fcn saniyede a\u00e7\u0131 de\u011fi\u015fim hesaplama kabiliyeti ve analog olarak ne kadar hassasl\u0131kla \u00e7\u0131k\u0131\u015f verdi\u011fi de\u011ferlerine g\u00f6re bir de\u011fer \u00fcretecektir (yani dakikada 300 derece hassasl\u0131kta, 3.3V referans de\u011feri ile \u00e7al\u0131\u015fan ve derece ba\u015f\u0131na 2.2mv \u00fcreten bir gyro,\u00a0 10 bit bir analog-dijital d\u00f6n\u00fc\u015f\u00fcm ile\u00a0 hareketsiz iken 512 de\u011ferini, saniyede 30 derece eksi y\u00f6nde 30 derece art\u0131 y\u00f6nde bir hareket i\u00e7in yakla\u015f\u0131k 460 ve 560 de\u011ferlerini \u00fcretecektir) ve hareket bitti\u011finde g\u00f6sterdi\u011fi de\u011fer tekrardan 0 ya da ilk \u00e7al\u0131\u015fmaya ba\u015flad\u0131g\u0131ndaki de\u011fer olacakt\u0131r. (yani \u00f6rne\u011fimiz i\u00e7in 512 de\u011feri) \u00c7\u00fcnk\u00fc daha \u00f6nce de s\u00f6yledi\u011fim gibi gyrolar anl\u0131k a\u00e7\u0131 de\u011fi\u015fimi hespalayabilirler, hareketsiz bir cisim i\u00e7in a\u00e7\u0131sal h\u0131z 0 olacag\u0131ndan \u00fcretilen de\u011fer hep ba\u015flang\u0131\u00e7 de\u011ferine geri d\u00f6necektir.<\/p>\n<p>\u0130vme\u00f6l\u00e7er sens\u00f6rleri i\u00e7in ise bu durum biraz daha farkl\u0131. Anl\u0131k a\u00e7\u0131sal h\u0131z s\u00f6z konusu olmad\u0131g\u0131ndan ivme\u00f6l\u00e7erlerin \u00fcretti\u011fi analog de\u011ferler cismin a\u00e7\u0131sal konumuna g\u00f6re yer\u00e7ekimi ivmesi ile yapt\u0131\u011f\u0131 a\u00e7\u0131 hesaplanarak olu\u015fturulurlar. Dolay\u0131s\u0131yla yer\u00e7ekimi heryerde mevcut oldu\u011fundan ivme\u00f6l\u00e7erler hareketsiz iken de a\u00e7\u0131sal konuma g\u00f6re \u00e7\u0131kt\u0131 \u00fcretirler ve gyrolardan farkl\u0131 olarak bu de\u011fer hi\u00e7 bir zaman (hareketsizken dahi) \u00f6nce bir de\u011fere ula\u015f\u0131p daha sonra ilk de\u011ferine d\u00f6nmez, o de\u011ferde sabit kal\u0131r. (ya da hareket sonucu bir ivmelenme varsa ivmelenme bitene kadar art\u0131p\/azalbilir ama\u00a0 sonra hangi a\u00e7\u0131daysa o de\u011feri verir, kesinlikle ilk de\u011ferine d\u00f6nmez)<\/p>\n<p>A\u015fa\u011f\u0131da bu durumu g\u00f6zlemleyece\u011finiz bir video ekliyorum. Ayn\u0131 zamanda bu videoda aeroquad i\u00e7in u\u00e7u\u015ftan \u00f6nce yap\u0131lmas\u0131 gereken kontroller ve ayarlar anlat\u0131l\u0131yor. Zaman zaman ekrana zoomland\u0131\u011f\u0131nda gyro ve accel i\u00e7in kullan\u0131lan grafiklerin hangileri oldu\u011funu g\u00f6rebiliyorsunuz.<br \/>\n<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" width=\"480\" height=\"390\" codebase=\"http:\/\/download.macromedia.com\/pub\/shockwave\/cabs\/flash\/swflash.cab#version=6,0,40,0\"><param name=\"allowFullScreen\" value=\"true\" \/><param name=\"allowscriptaccess\" value=\"always\" \/><param name=\"src\" value=\"http:\/\/www.youtube-nocookie.com\/v\/Pd5Tb1yOStA?fs=1&amp;hl=en_US\" \/><param name=\"allowfullscreen\" value=\"true\" \/><embed type=\"application\/x-shockwave-flash\" width=\"480\" height=\"390\" src=\"http:\/\/www.youtube-nocookie.com\/v\/Pd5Tb1yOStA?fs=1&amp;hl=en_US\" allowscriptaccess=\"always\" allowfullscreen=\"true\"><\/embed><\/object><br \/>\nEvet biraz da DOF kavram\u0131ndan bahsetmekte yarar var. DOF, Degrees of Freedom kelimelerinin k\u0131saltmas\u0131 asl\u0131nda. Yani ka\u00e7 eksende <a href=\"http:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/05controlledmovements.jpg\"><img loading=\"lazy\" class=\"alignright size-medium wp-image-275\" title=\"05controlledmovements\" src=\"http:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/05controlledmovements-300x187.jpg\" alt=\"\" width=\"300\" height=\"187\" srcset=\"https:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/05controlledmovements-300x187.jpg 300w, https:\/\/www.hakancakiroglu.com\/wordpress\/wp-content\/uploads\/2011\/03\/05controlledmovements.jpg 473w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\u00f6l\u00e7\u00fcm yap\u0131p bu eksenlerde ne kadar \u00f6zg\u00fcr oldu\u011funuzla alakal\u0131 bir kavram. Gyro ve \u0130vme\u00f6l\u00e7er almak istedi\u011finizde kullanaca\u011f\u0131n\u0131z uygulamaya g\u00f6re birden fazla eksen i\u00e7in ilgili sens\u00f6r\u00fc almak m\u00fcmk\u00fcn ve hatta ivme \u00f6l\u00e7er ve gyro bir arada olanlar var. \u0130vme \u00f6l\u00e7er ve gyro bir arada olan ve \u00e7e\u015fitli filtrelemeler ile g\u00fcr\u00fclt\u00fcy\u00fc engelleyebilen geli\u015fmi\u015f send\u00f6rlere IMU ad\u0131 veriliyor. (Inertial Measurement Unit)\u00a0 \u00d6rne\u011fin 6 DOF dendi\u011finde ya da 6 DOF&#8217;luk bir IMU dendi\u011finde \u015fu 3 eksen gyro ve 3 eksen ivme\u00f6l\u00e7er kastedilmektedir asl\u0131nda ve yaw,pitch,roll eksenlerinde hem gyro hem de ivme\u00f6l\u00e7er toplam 6 serbestlik derecesi oldu\u011fu anla\u015f\u0131lmal\u0131d\u0131r.<\/p>\n<p>Benim a\u015fa\u011f\u0131da \u00f6rnek kodunu verdi\u011fim uygulamada tek bir eksende a\u00e7\u0131 \u00f6l\u00e7\u00fcm\u00fc yap\u0131l\u0131yor. Yani sizin saniyede sens\u00f6r\u00fc d\u00f6nd\u00fcrme h\u0131z\u0131n\u0131za g\u00f6re bir olu\u015fan analog de\u011fer al\u0131narak dereceye d\u00f6n\u00fc\u015ft\u00fcr\u00fcl\u00fcyor. Dolay\u0131s\u0131yla uygulamay\u0131 ilk ba\u015flatman\u0131zdaki duruma g\u00f6re sens\u00f6r\u00fcn ka\u00e7 derece d\u00f6nd\u00fc\u011f\u00fcn\u00fc hesaplayarak ba\u015flang\u0131\u00e7 durumuna g\u00f6re sens\u00f6r\u00fcn pozisyonunun hangi a\u00e7\u0131da oldu\u011funu seri porta yaz\u0131yor.  Bu uygulamada kulland\u0131\u011f\u0131m sens\u00f6r LISY300AL. Sparkfun&#8217;\u0131n entegresini kullan\u0131yorum (<a href=\"http:\/\/www.sparkfun.com\/products\/9373\" target=\"_blank\">http:\/\/www.sparkfun.com\/products\/9373<\/a> bu adresten detayl\u0131 bilgi alabilirsiniz.) Ba\u011flant\u0131 i\u00e7in GND ucunu Arduino Uno kitinizin GND baca\u011f\u0131na, 3.3V ucunu yine Arduino&#8217;nun 3.3V baca\u011f\u0131na ve OUT baca\u011f\u0131n\u0131 da Arduino Uno kitinizin analog portunun A3 baca\u011f\u0131na ba\u011flaman\u0131z yeterli olacakt\u0131r. Bu arada sadece 3 eksenli gyro kullanarak bir aeroquad yapabilirsiniz. \u0130vme\u00f6l\u00e7erler &#8220;stable mode&#8221; i\u00e7in kullan\u0131l\u0131yor ve ilk u\u00e7u\u015f denemeleriniz i\u00e7in ivme\u00f6l\u00e7er sahibi olmak zorunda de\u011filsiniz.<\/p>\n<p><strong>\u00d6RNEK UYGULAMA<\/strong><\/p>\n<p><strong><br \/>\n<\/strong><\/p>\n<pre>#define\u00a0GYRO_SENSITIVITY\u00a00.0033;\r\n<span style=\"color: #7e7e7e;\">\/\/LISY300AL i\u00e7in 3.3mV\/derece\/saniye\r\n\/\/(yani k\u0131saca her derece de\u011fi\u015fim i\u00e7in 0.0033V de\u011fi\u015fim olur)<\/span>\r\n\r\n#define\u00a0ANALOG_SENSITIVITY\u00a00.0047\r\n<span style=\"color: #7e7e7e;\">\/\/ Arduino USB'Ye bagland\u0131g\u0131nda 4.575 V ile\r\n\/\/\u00e7al\u0131\u015f\u0131yor. (Aref=4575) Analog \u00e7\u00f6z\u00fcn\u00fcrl\u00fck\r\n\/\/10bit dolay\u0131s\u0131yla hassasl\u0131k=4575\/1024<\/span>\r\n\r\n<span style=\"color: #cc6600;\">int<\/span> sensor = A3; <span style=\"color: #7e7e7e;\">\/\/ analog gyro port<\/span>\r\n<span style=\"color: #cc6600;\">int<\/span> change = 0; <span style=\"color: #7e7e7e;\">\/\/ ATD conversion change<\/span>\r\n<span style=\"color: #cc6600;\">float<\/span> <span style=\"color: #cc6600;\">position<\/span> = 0.0; <span style=\"color: #7e7e7e;\">\/\/ current cardinal position<\/span>\r\n<span style=\"color: #cc6600;\">unsigned<\/span> <span style=\"color: #cc6600;\">long<\/span> timetook = 0; <span style=\"color: #7e7e7e;\">\/\/sample time taken<\/span>\r\n<span style=\"color: #cc6600;\">unsigned<\/span> <span style=\"color: #cc6600;\">long<\/span> lasttook = 0; <span style=\"color: #7e7e7e;\">\/\/last sample time<\/span>\r\n\r\n<span style=\"color: #cc6600;\">void<\/span> <span style=\"color: #cc6600;\"><strong>setup<\/strong><\/span>(){\r\n\r\n\u00a0\u00a0<span style=\"color: #cc6600;\"><strong>Serial<\/strong><\/span>.<span style=\"color: #cc6600;\">begin<\/span>(9600);\r\n}\r\n\r\n<span style=\"color: #cc6600;\">void<\/span> <span style=\"color: #cc6600;\"><strong>loop<\/strong><\/span>(){\r\n\r\n\u00a0\u00a0<span style=\"color: #7e7e7e;\">\/\/D\u00f6ng\u00fcde o an olu\u015fan analog de\u011feri gyro_x de\u011fi\u015fkenine at\u0131yoruz.<\/span>\r\n\u00a0\u00a0<span style=\"color: #cc6600;\">int<\/span> gyro_x = <span style=\"color: #cc6600;\">analogRead<\/span>(sensor);\r\n\r\n<span style=\"color: #7e7e7e;\">\/\/Gyro\u00a0Hareket\u00a0etmez\u00a0ikenki\u00a0de\u011feri\u00a0ile\r\n\/\/ hareket\u00a0sonras\u0131\u00a0de\u011fi\u015fim\u00a0ditital\u00a0olarak\r\n\/\/ 3\u00a0birimin\u00a0\u00fcst\u00fcnde\u00a0de\u011filse\u00a0bunu\u00a0yok\u00a0say\u0131yoruz.<\/span>\r\n<span style=\"color: #7e7e7e;\">\/\/De\u011fi\u015fim\u00a0dijital\u00a0olarak\u00a03\u00a0birimin\u00a0\u00fcst\u00fcnde\u00a0ise\r\n\/\/change\u00a0de\u011fi\u015fkenine\u00a0de\u011fi\u015fimi\u00a0at\u0131yoruz.<\/span>\r\n<span style=\"color: #7e7e7e;\">\/\/Bendeki\u00a0gyro\u00a0\u015fu\u00a0anda\u00a0hareket\u00a0etmez\u00a0iken\r\n\/\/dijital\u00a0olarak\u00a0352\u00a0de\u011ferini\u00a0g\u00f6steriyor.<\/span>\r\n\r\n\u00a0\u00a0<span style=\"color: #cc6600;\">if<\/span>(<span style=\"color: #cc6600;\">abs<\/span>(gyro_x-358)&gt;3)\r\n\u00a0\u00a0\u00a0\u00a0change\u00a0=\u00a0gyro_x-358;\u00a0\r\n\r\n\u00a0\u00a0<span style=\"color: #7e7e7e;\">\/\/Son d\u00f6ng\u00fcde harcanan zaman\u0131 hesaplamak\r\n  \/\/i\u00e7in lasttok ve timetook degerlerini g\u00fcncelliyoruz.<\/span>\r\n\u00a0\u00a0lasttook\u00a0=\u00a0timetook;\r\n\u00a0\u00a0timetook\u00a0=\u00a0<span style=\"color: #cc6600;\">millis<\/span>();\r\n\r\n\u00a0\u00a0\u00a0\u00a0<span style=\"color: #cc6600;\">float<\/span> time = (<span style=\"color: #cc6600;\">float<\/span>(timetook)-<span style=\"color: #cc6600;\">float<\/span>(lasttook))\/1000.0;                             <span style=\"color: #7e7e7e;\">\r\n    \/\/Son d\u00f6ng\u00fcde ge\u00e7en zaman\u0131 hesapl\u0131yoruz (saniye cinsinden)<\/span>\r\n\r\n\u00a0\u00a0\u00a0\u00a0<span style=\"color: #cc6600;\">float<\/span> degchange = change * time *  ANALOG_SENSITIVITY \/ GYRO_SENSITIVITY ;\r\n    <span style=\"color: #7e7e7e;\">\/\/Derece olarak de\u011fi\u015fim miktar\u0131n\u0131 hesapl\u0131yoruz. <\/span>\r\n\r\n\u00a0\u00a0\u00a0\u00a0<span style=\"color: #cc6600;\">position<\/span> = <span style=\"color: #cc6600;\">position<\/span>+degchange;\r\n  <span style=\"color: #7e7e7e;\">\/\/position de\u011ferinin de\u011ferini derece cinsinden\r\n  \/\/buldugumuz de\u011fer kadar artt\u0131r\u0131yoruz.<\/span>\r\n\r\n\u00a0\u00a0\u00a0\u00a0<span style=\"color: #cc6600;\">position<\/span> = makecardinal(<span style=\"color: #cc6600;\">position<\/span>);\r\n  <span style=\"color: #7e7e7e;\">\/\/360 dereceden b\u00fcy\u00fck 0 dereceden k\u00fc\u00e7\u00fck olma\r\n  \/\/ durumlar\u0131 i\u00e7in d\u00f6n\u00fc\u015f\u00fcmleri yap\u0131yoruz.<\/span>\r\n\r\n\u00a0\u00a0<span style=\"color: #cc6600;\"><strong>Serial<\/strong><\/span>.<span style=\"color: #cc6600;\">println<\/span>(<span style=\"color: #cc6600;\">position<\/span>);  <span style=\"color: #7e7e7e;\">\/\/Derece bilgisini seri porta yazd\u0131r\u0131yoruz.<\/span>\r\n\r\n\u00a0\u00a0change=0;\r\n\r\n\u00a0\u00a0<span style=\"color: #cc6600;\">delay<\/span>(10);\r\n}\r\n\r\n<span style=\"color: #7e7e7e;\">\/\/Derece D\u00f6n\u00fc\u015f\u00fcm fonksiyonu<\/span>\r\n<span style=\"color: #cc6600;\">float<\/span> makecardinal(<span style=\"color: #cc6600;\">float<\/span> <span style=\"color: #cc6600;\">position<\/span>){\r\n\u00a0\u00a0<span style=\"color: #cc6600;\">if<\/span>(<span style=\"color: #cc6600;\">position<\/span> &gt; 360.00){\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #cc6600;\">position<\/span> = <span style=\"color: #cc6600;\">position<\/span>-360.00;\r\n\u00a0\u00a0\u00a0\u00a0}<span style=\"color: #cc6600;\">else<\/span> <span style=\"color: #cc6600;\">if<\/span>(<span style=\"color: #cc6600;\">position<\/span> &lt; 0){\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #cc6600;\">position<\/span> = 360+<span style=\"color: #cc6600;\">position<\/span>;\r\n\u00a0\u00a0\u00a0\u00a0}\r\n\u00a0\u00a0\u00a0\u00a0<span style=\"color: #cc6600;\">return<\/span> <span style=\"color: #cc6600;\">position<\/span>;\r\n}\r\n<\/pre>\n<p>Umar\u0131m faydal\u0131 bir payla\u015f\u0131m olmu\u015ftur.<\/p>\n<p>Yeni bir yaz\u0131da g\u00f6r\u00fc\u015fmek dile\u011fiyle&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mikrokopter, quadrokopter ya da aeroquad gibi \u00e7ok motorlu u\u00e7an bir sistem i\u00e7in bir\u015feyler yapmaya ba\u015flad\u0131ysan\u0131z sens\u00f6rlerin ne kadar \u00f6nemli oldu\u011funu anlam\u0131\u015fs\u0131n\u0131zd\u0131r. Her bir sens\u00f6r\u00fcn ayr\u0131 bir g\u00f6revi olsa da b\u00f6yle bir sistem tasar\u0131m\u0131 i\u00e7in gyro ve ivme \u00f6l\u00e7er (accelerometer k\u0131saca accel yazaca\u011f\u0131m bundan sonra) kesinlikle \u00f6ncelikli olarak sisteme dahil edilmesi gereken sens\u00f6rlerdir.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[],"_links":{"self":[{"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/264"}],"collection":[{"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=264"}],"version-history":[{"count":0,"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/264\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=264"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=264"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hakancakiroglu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=264"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}