Otonom robot ve kontrol birimi tasarımı
Design of autonomous robot and control unit
Yazar: HALİL DURMUŞ
Danışman: PROF. DR. ECE OLCAY GÜNEŞ
İstanbul Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı / Elektronik Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2015
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering
Dizin: Hareketli robotlar = Mobile robots

Özet:
Mobil robotlar günümüzde tarım, mayın tarama, askeri uygulamalar, uzay araştırmaları ve insanların erişemediği veya nükleer santraller gibi insanlara zararlı ortamlarda kullanılmaktadırlar. Ancak bu robotların bazıları bir operatörden bağımsız olarak, diğer bir deyişle otonom olarak çalışmaktadırlar. Dünyada çeşitli alanlarda kullanılmak üzere otonom robot geliştirmek için bir yarış vardır. 
Bu tezde çeşitli alanlarda kullanılmak üzere (öncelikli olarak tarım alanında) otonom robot ve kontrol ünitesi tasarlanmıştır ve gerçekleştirilmiştir. Projede tasarım yapılırken modülerlik, düşük maliyet, yerli üretime katkı, çevre şartlarına uygunluk ve özgünlük özelliklerine sahip bir robot tasarlanmaya çalışılmıştır. Robotun kontrol ünitesinin robotun taşıyıcı platformundan bağımsız olmasına dikkat edilmiştir. Çünkü projede kullanılan platformun amaca ve kullanılacağı araziye uygun olarak değiştirilebilmesi istenmektedir. 
Tasarlanan kontrol ünitesi içinde batarya kontrol sistemi, bütün sensör verilerini işleyen, diğer kartlarla haberleşen ve robotun motorlarını süren bir ana kart ve görüntü işleme görevlerini yerine getirebilecek olan bir mini bilgisayar bulunmaktadır. Ana kart açı ve konum sensörleri, mesafe sensörleri, tekerlek hızını ölçen sensörler ve diğer kartlardan bilgiler alarak robotun tekerleklerini motor sürücü vasıtasıyla sürmektedir. Robot platformu altı tekerlek ve alüminyum bir iskeletten oluşmaktadır. Her tekerlek ayrı bir motor tarafından sürülmektedir. Robot kızaklı yönlendirme metodunu kullanarak hareket etmektedir. Yani robotun sağ üç motoru ayrı, sol üç motoru ayrı kontrol edilmektedir. Kızaklı yönlendirme metodu, diferansiyel yönlendirme metoduna çok benzemektedir.
Robotun küçük ve modüler olması istendiği için robot tasarımı üç ayrı seviye halinde yapılmıştır. İlk seviyede robotun iskeleti, motorları ve bataryaları bulunmaktadır. Birinci seviyeye araç geliştirilirken değişiklik yapılması istenmeyen parçalar yerleştirilmiştir. Ayrıca birinci seviye, platforma özgü bir seviyedir. Birinci seviye paletli, dört tekerlekli, altı tekerlekli bir platform olabilir. Hatta diferansiyel yönlendirme ile kontrol edilebilen bir deniz aracı bile olabilir. İkinci seviyede, robot için tasarlanmış olan kontrol ünitesi bulunmaktadır. İkinci seviye için kısaca robotun beyni denilebilir. Üçüncü seviyede ise amaca uygun parçalar bulunmaktadır. Örneğin, aracın açık arazilerde otonom hareket etmesi istendiği için üçüncü seviyeye açı ve konum sensörleri eklenmiştir. Üçüncü seviye, gelecekte robota dahil edilebilecek birimlerin ekleneceği seviye olarak tasarlanmıştır.
Sonuç olarak, çeşitli amaçlara uygun olan bir otonom mobil robot ve kontrol ünitesi tasarlanmış ve gerçekleştirilmiştir. Şu anda robot manuel kontrol ve merkez ile haberleşme görevlerini yerine getirmektedir. İlerleyen çalışmalarda görüntü işleme ve kontrol yöntemleri uygulanarak robotun otonom hareket etmesi sağlanacaktır. Robotun ilk olarak tarım alanlarındaki ürün sıraları arasında otonom hareket edebilmesi için açı, konum ve mesafe sensörlerinden aldığı bilgileri, görüntü işleme kartından gelen bilgiler ile birleştirmesi hedeflenmektedir.

Abstract:
Mobile robots are used at agriculture, land mine searching and disarming, military, space explorations, and other applications where the environment is dangerous or inaccessible to human. In some of these applications, robots perform tasks autonomously. These robots are called autonomous robots. Today in the World, there is race to develop autonomous robot in diversity of fields.
In this thesis, an autonomous robot and its control unit are designed to be used in various fields (especially in agriculture). At the design stage, aim is to create a robot that is modular, low–cost to manifacture, contributing to domestic production, suitable against environmental conditions and original. Control unit of robot has been noted to be independent from the carrier platform. Because it is desired to change robot platform according to intended use and environmental conditions. Designed control unit consists of battery management system, main board and beaglebone (a mini computer board).
In every vehicle, robot or electronic device that powered by Lithium–Polymer (Li-Po), Lithium–Ion or similar chemistry batteries must be used with battery management system. Because these battery types have operating voltage, current and temperature range. Out side of this operating range can be dangerous or could result battery death. For example, if Li-Po battery is overheated because of high current drawn, it may be explode or burn. Another example, if battery is overdrained, it may die and never work again. To avoid these situations battery pack must be monitored all time. 
In this thesis, battery management system is implemented on power board. Power board has ARM Cortex – M3 processor powered LPC1343 micro controller unit (MCU). MCU monitors battery voltages, battery temperatures and current that drawn by other parts of robot. Power board always monitors battery state and sends monitored data to main board. Power board also controls separated charger. Beacause of limited time, power board only controls connection between charger and battery pack. If input voltage, which comes externally to robot, is sufficient, then power board connects charger to battery. In future, charge operations will be implemented on power board.
Another part of control unit is main board. Main board acts as the brain of the robot. Main board reads all sensors' data, communicates with station, angle and position sensors board, power board and beaglebone, and controls the motors via the motor driver board according to calculations. Main board has ARM Cortex – M3 processor powered LPC1769 MCU. This MCU is faster and has more peripheral than power board's MCU. 
Robot platform consists of an aluminium chassis on six wheels.Three wheels on the right and left. Every wheel is driven by one brushed dc motor. Drive method of robot is skid – steering method. Skid – steering is very similar to differential drive. In short, main board separately controls the three motors on the left and the three motors on the right to steer robot. Advantages of skid – steering method is less moving parts means there is no explicit steering mechanism and this method has more traction. Disadvantages are straight – line travel can be difficult to achieve and skidding cause wheels to lose contact with the ground, which means odometry sensors, cannot accurately track the position of the vehicle.
In addition, robot platform has suspensions at every wheel and wheels are suitable for field conditions. As described earlier, control unit was designed independently from robot platform. This means control unit can drive any skid-steering vehicle and any type of control algorithm can be implemented on control unit.
Main board gathers data from eight distance sensors, two quadrature encoder sensors, angle and position sensors, power board, beaglebone and station via wireless communicaiton board. Also sends data and last state to station. Distance sensors are placed to cover every side of the robot. Distance sensors are used for environment awareness and collision avoidance. These sensors use soundwaves to measure distance. To prevent interference between sensors, all sensors are used in chain algorithm.
Quadrature encoders are attached to middle left and middle right motors to implement PID control with using feedback. By using PID control, motors on the left and right side can be driven more accurately. 
Angle and positions sensors board consists of three parts. First one is inertial measuring unit (IMU) sensors board. IMU board has three axis gyroscope, three axis accelerometer and three axis magnetometer chips. Position sensor is well – known global positioning system (GPS), which finds longitude and latitude of robots position. Third part is MCU board. On this board there is a ATMEGA328P MCU, which can be programmed by Arduino. MCU board gathers data from IMU and uses sensor fusion algorithm to find Euler angles of robot, encodes GPS sensor packets to find position, and sends these gathere and calculated data to main board. There is a many IMU and GPS applications and programs on the internet. In thesis, these programs are adjusted for the IMU and GPS chips. Also some filter algorithm are implemented to get more stable values. 
Main board and power board MCU's are programmed from register level to system level. These MCU's programmed from low level to use MCU's at high speed, efficient and gain control of program at any level. For both MCU, peripheral libraries are created or pre-built libraries are reprogrammed. 
Last part of the control unit is beaglebone black board. This board is mini computer. This board added to control unit because of image processing tasks. But image processing will be implemented in the future. 
Hardware design of robot is performed in three levels. Because, one of the design criteria was modularity and there was too many parts. First level consists of robot chasis, motors, batteries and some sensors. Parts in the first level are stationary and unique to robot platform. Second level is control unit of robot. Second level is detechable, so that changes can be made. Third level was designed application specific. Angle and position sensors board, live video transmitter, charger and cameras for image processing are added to third level. Every level connected to each other by power or signal cables. 
Now, robot can be controlled manually from station. In manual control operator sends directions to robot from station by using joystick or keyboard. Robot calculates movement according to operator directions and sensor data. 
First autonomous application of robot will be IMU and GPS controlled movement at open fields. This section is prepared, but not tested. 
As a result low-cost and modular robot and control unit was designed and implemented. In the first stage, project goal was design a robot which acts as a development platform.
Next stage of the work will be implement control algorithms or methods, such as sliding mode control or fuzzy logic control methods on control unit. Also image processing capabilities will be added to robot. The robot is initially intended to be used to collect data in the fields of agriculture.