TASHIMASU

İçecek Getiren Robot


Tarih: Başlangıç, 2018

Pozisyon: Mucit, Tasarımcı


Problem & Amaç

Özellikle yaşlı ve bedensel engelli insanların yaşadıkları ortamlarda bazı işleri yerine getirmekte zorlanmaları ve onlara gündelik hayatlarında yardımcı olacak bir robotun tasarlanmasının talep edilmesi bu projenin çözmeyi hedeflediği problemi belirtmektedir. Bu projenin amacı ise; bedensel engellilerin,  yaşlılar veya hastaların yaşadıkları yerde onlara yardımcı olacak  bir robotun geliştirilmesi ve akıllı telefondan verilen sesli komutlarla içecek getirmesinin sağlanmasıdır.


TASHIMASU’nun YouTube Videosu


Açık Kaynak Kodlar, Devre Şeması, PCB Tasarımı ve 3B Modeller: İÇİN BURAYA TIKLAYIN


Literatür Taraması

Üzerinde çalıştığımız proje içecek şişelerini içinde taşıyıp bardağa doldurabilen ve bunu yanınıza getirebilen içecek servis robotlarının ilk örneğidir.

Fakat literatürde benzer çalışmalar bulunmaktadır. Benzer robotlardan bahsedilecek olursa ilk olarak garson robotlara ilişkin bilgilendirme yapılması gerekmektedir.

  • Akınsoft, ADA
  • Robot Sopo
  • Asus, Zenbo

Projenin Getireceği Yenilikler

  • İçecek getirme amacını ana görev olarak ele alması ve bu amaç doğrultusunda geliştirilerek daha kapsamlı hizmetler vermesi.
  • Şişelerde taşıdığı içecekleri aynı zamanda da bardağa doldurarak sunum yapması ve kullanıcılar için kolaylık sağlaması.
  • İçeceği teslim edeceği kişinin yerini tespit etmek için çizgi takip gibi yöntemler yerine görüntü işleme ve yüz takibi gibi karmaşık yöntemlerden faydalanması.
  • Akıllı telefondan sesli asistan aracılığıyla alınan sesli komutlarla hizmet vermesi.
  • Düşük maliyetli komponentler ve yöntemler ile tasarlanması. (Maliyeti 1250 TL gibi olacak şekilde)

Mekanik


Mekanik: Hareket Mekanizması

  • 4 adet 12-14v, 150 rpm, 42mm, 7,5watt, yükesk torklu DC motorlar.  Her biri 4 tekere bağımsız bağlı.
  • Kitlerden çıkan tekerlekler, 3B yazıcı ile basılmış bağlantı aparatları
  • Tank mantığı ile dönüşler

Mekanik: Gövde

  • 56x37x80 boyutlarında, bardağa kolay erişim için yüksek
  • 3B tasarım yazılımı: Tinkercad
  • Malzemeler:
    • Ana alt gövde: 2mm sac çelik, düşük maliyetli
    • Üst gövde: 5mm ve 3mm MDF ahşap

Mekanik: Kafa

  • Adafruit, 2 eksenli “Pan-tilt” mekanizması
  • Raspberry Pi kamerasını taşımak için yeterli ve hafif
  • Sg90 9g servolar
  • Düşük maliyetli ve kullanışlı

Mekanik: Sıvı Aktarım Sistemi

  • Robotun iç kısmındaki içecek depolarından, bardağa aktarım
  • 2 adet 12v DC peristaltik sıvı pompası ile (Gıda sınıfı)
  • Aktarım için silikon akvaryum hortumları
    • Eksiği: Sıcak içecekler için uygun değil


Mekanik: Ağırlık Sensörü

  • Bardağın bulunduğu 3B yazıcıdan çıkarılmış platformun hemen altında bulunur, doldurulan içeceğin kütlesel olarak ölçülmesini sağlayarak içeceğin taşmasını engeller.
  • 1 kg’a kadar ölçüm yapabilir.

Elektronik


Elektronik: Batarya

  • Kullanılan elemanlardan (motorlar, pompalar, raspberry pi …) dolayı enerji tüketimi yüksektir.
  • Robotta iki farklı güç kaynağı denenip doğrulanmıştır:
    • 11.1v 2800 mAh Li-Po Batarya (Hızlı ama kısa ömür)
    • 12v 7Ah Pb(kurşun) Akü (Hantal ama uzun ömür)

Elektronik: Motor Sürücüler

  • Ana hareket motorları için:
    • 2 adet L298N motor sürücü kartı
  • Sıvı pompaları için:
    • 1 adet L298N motor sürücü kartı
  • Avantajı:
    • Metal soğutucusu, kolay kullanımı, 5v regülatörü

Elektronik: Mikrokontrolcüler (Arduino)

  • Robotta kullanılan elemanlar içi Raspberry’de yeterli pin yoktur. 
  • 3 adet Arduino UNO R3 kullanılmıştır.
  • USB haberleşme ile 
    • Arduino’lar kontrol edilir (Python seri heberlerşme ile)
    • ve programlanır. (Arduino IDE)
  • Arduino’ların 5v ile çalışması avantaj sağlar

Elektronik: Raspberry Pi

  • Yeterince hafızaya ve balleğe sahip, (1GB RAM)
  • Hızlı ve güvenilir (1GHz)
  • Düşük enerji tüketimli (100-400 mA)
  • Küçük boyutlu ve ucuz ( Kredi kartı boyunda, $35)

Özelliklerine sahip bir bilgisayar olan Raspberry Pi’nin Model 3 versiyonu kullanılmıştır.


Elektronik: Ağırlık Sensörü Ara Modülü

  • Ağırlık sensöründen gelen düşük gerilimli analog verilerin okunabilmesi için:
    • Analog verilerin yüseltilmesi
    • Dijitale çevirilmesi gerekmektedir.
  • Bunun için yükseltici (amplifier) özelliğine sahip bir ADC (analog-dijital çevirici) olan “HX711” modülü kullanılmıştır.

Elektronik: Mesafe Sensörleri

  • Robotun 4 tarafına yerleştirilerek otonom hareket ederken herhangi bir engele çarpması önlenmiştir.
  • Hc-sr04 ultrasonik mesafe sensörleri kullanılmıştır.

Elektronik: Prototip Devre

Breadboard çok güvenilir olmadığı için delikli bakır levhadan (pertinaks) THT teknolojisi kullanılarak robotun “anakartı” üretilmiştir.

  • Robotun bütün elemanlarının birbirine bağlanmasını sağlar
  • Breadboard’daki kablo karmaşasını önler
  • 6×13 boyutlarında pertinaks kullanılmıştır
  • PCB baskı planlanmaktadır

Elektronik: LED Şerit Işıklandırma

Robotun aynı zamanda da göze hitap edebilmesi için:

  • Yaklaşık 30 adet RGB LED kullanılmıştır
  • LED’ler şerit halindedir. 
  • Arduino’daki 2  pin ile kontrol edilebilmektedir.
  • Robotun otonom hareketine göre çeşitli animasyonlar.

Elektronik: Kamera

  • Robotun görüntü işleme ile yüz takibi yapabilmesi için Raspberry Pi kamerası kullanılmıştır.
    • 3 gram
    • 2×2 cm boyut
    • 5mp çözünürlük
    • Uygun maliyet
  • Ve kamera için 3B yazıcıdan kutu basılmıştır.

Elektronik: Hoparlör

Otonom modda robotun çevredeki insanlara selam, uyarı vermesi ve onları eğlendirmesi için Türkçe konuşması sağlanmıştır. Bunun için ise basit 3.5mm jak ile çalışan kendinden bataryalı bir hoparlör kullanılmıştır.


Elektronik: 2×16 Lcd Ekran

  • 2×16 LCD karakter ekranı ile Tashimasu,
    • Çevredeki insanlara ve içecek isteyen kişiye çeşitli uyarılar, mesajlar iletebilir.
    • Robotun “ağzı” olarak kullanılabilir.

Elektronik: Powerbank (Taşınabilir güç kaynağı)

  • Raspberry pi’nin 5v sabit güce ihtiyacı vardır.
  • L298N’deki regülatörler yeterli gücü sağlayamaz.
    • Bunlardan dolayı bir powerbank ile raspberry pi 3 çalıştırılmaktadır.
  • 4000 mAh kapasite 
  • 5v 2A çıkış verebilme

Devre Şeması


Yazılım


Yazılım: Raspberry Pi ve Python

  • Python yapay çalışma ortamı oluşturulmuştur. (Virtual Environment)
  • Görüntü işleme için OpenCV kütüphanesi kullanılmıştır. “face2.py
  • software2.py” (ana script) robota güç verildiğinde çalıştırılır. Ve otonom moda geçilir. 
  • Veya bu kod SSH ile çalıştırılarak robotun manuel kontrolü de sağlananilir.

Yazılım: Google Asistan, IFTTT ve Blynk

  • Sesli komutlar önce Google Asistan ile akıllı telefondan alınır.
  • Sonra IFTTT hizmeti sayesinde webhooks ile Blynk sunucusuna aktarılır.

Blynk sunucusu ise Blynk yazılımının yüklü olduğu NodeMCU’ya komutu iletir.


Yazılım: NodeMCU Kartı (ESP8266)

  • NodeMCU, Wi-Fi ile internete bağlı bir Iot kartıdır.
  • Bu projede Arduino IDE ile kodlanmıştır.
  • Blynk sunucusundan gelen komutlar NodeMCU’ya aktarılır.

Ve NodeMCU tek pin haberleşme ile Raspberry Pi’ye, gelen komutları aktarır.


Genel Kavram Haritası


Yazılım: Arduino-A / Motorlar

  1. Robotun hareketini sağlayan komutlar; “ileri”, “geri”, “sol”, “sağ”, “sol pivot”, “sağ pivot” ve “dur” vb.
  2. Sıvı pompalarının kontrolü,
  3. Servoların kontrolü,
  4. HX711’den (ağırlık sensörünün ara modülü) gelen verilerin alınması,

gibi işlemleri bu arduino yapar.


Yazılım: Arduino-B / Sensörler

  • Robotun 4 tarafında bulunan Hc-sr04 mesafe sensörlerinden gelen verileri Raspberry Pi’ye USB aracılığıyla iletir. Böylece robot çarpışmaları önler.

Robotun çevresinde bulunan RGB LED şerit ışıklandırmanın kontrolünü “Adafruit_WS2801” kütüphanesi ile yapar.


Yazılım: Arduino-C / LCD Ekran

  • 2×16 LCD karakter ekranını kontrol eder.
  • Arduino’nun kendi “Liquid Crystal” kütüphanesini kullanır.
  • Bu ekranda çeşitli metinler ve animasyonlar gösterilir.

Hareket Algoritması Kavram Haritası


Bulgular


  • Robotun Google Asistandan komut alabilmesi için çeşitli yöntemler araştırılmış, IFTTT, Blynk ve NodeMCU kartının kullanılmasıyla çok sayıda sistem birleştirilerek bütünsel bir çözüm bulunmuştur.
  • Sıvı pompalarının içeceği 120 sn gibi bir sürede doldurduğundan dolayı daha iyi bir sistemin kullanılması gerektiği bulunmuştur.
  • Birden fazla programlama dilinin ve çeşitli kontrolcülerin sıra dışı bir yöntemle birlikte kullanılması mühendislikte çözümlere ancak farklı noktaları birleştirilerek ulaşılabileceğini kanıtlamıştır

Sonuç ve Tartışma


  • Sonuç olarak mobil cihazlardan alınan sesli komutların algılanarak, robotun ezberlenmiş komutlara dayalı bir takım kontrol algoritması ile kullanıcının yanına gelmesi ve sıvı pompaları ile bardağa iki çeşit içecekten doldurarak içecek servisi yapması sağlanmıştır.
  • Böylece yaşlı ve engelli insanların sıvı ihtiyacı sesli komutlarla yerlerinden kalkmadan karşılanmış olarak hayatları kolaylaştırılır.
  • Ayrıca robota sesli komutlar dünyanın herhangi bir yerinden de verilebilir.
  • Robotta görüntü işleme kullanıcının yerini bulabilecek seviyededir fakat üzerinde daha fazla da çalışabilmesi mümkündür.

Öneriler


  • Hareket mekanizması geliştirilebilir. (Örn. Bacaklı veya paletli…)
  • Yeni gövdede bardak daha yüksek bir noktaya konumlandırılabilir.
  • Debisi daha yüksek pompalar ve daha yüksek kapasiteli batarya kullanılabilir
  • Prototip devre için PCB baskı yapılarak üretime geçiş kolaylaştırılabilir.
  • OpenCV Haarcascade’inin geliştirilebilir
  • OpenCV ve tensorflow ile yeni bir model geliştirilmesi ile veya GoogleCloudVisionAPI’nin kullanılması ile bir nevi “FaceID” teknolojisi geliştirilerek kişilerin yüzleri farklı google hesapları ile eşleştirilebilir. Böylece robot çok kişinin bulunduğu ortamlarda çalışabilir.
  •  Robotun farklı noktalarına mikrofon konularak cep telefonunun olmadığı durumlarda da kişinin verdiği komutu, sesinin geldiği yeri algılaması ve kişiyi sesinden de tanıması sağlanabilir.
  • OpenCV ve tensorflow ile yeni modeller geliştirilerek robotun çevresini tanıması ve çevresi ile etkileşme geçmesi sağlanabilir. (Örneğin bir kapıyı açması, halının üzerine çıkması…) 
  • Veya GoogleCloudVisionAPI kullanılarak da etraftaki nesneleri tanınması sağlanabilir.
  • Ayrıca bunlar ve daha fazla olası geliştirmeler ile robotun sadece içecek getirme değil ev içindeki diğer işleri de yaparak insanlara yardımcı olması sağlanabilir. (Temizlik, toparlama, bulaşık, yemek, masa hazırlama, çamaşır…)

Yapılabilirlik ve Yaygın Etki


  • Robotun basit yapısı ve kullanılan malzemelerin yaygınlığı sayesinde pratik ve endüstriyel çözümlerle üretime geçirilebilir.
  • Ayrıca robotun evde de yapılması mümkün olduğu için bütün yazılımı ve tasarım dosyaları paylaşılarak açık kaynaklı bir geliştirici topluluğu oluşturulabilir.
  •  Geliştirilen robotun kullanılacağı yerler, sadece evler olmayıp kafeler, restoranlar, oteller, okullar gibi yaşlı ve engelli insanların bulunabileceği birçok ortam olabileceği için oldukça yaygın bir etkiye sahip olduğu değerlendirilmektedir.

Yarışmalarda Kullanılan TASHIMASU Sunum Posteri: İÇİN TIKLAYIN


Bu Projenin Aldığı Ödüller


Championship at INSPO 2018 (Engineering)

Okyanus Colleges / First place in the International Science Project Olympiad held in Okyanus Colleges

6th Place at Information and Technology Competition in İZMİT

BTV (Information and Technology Foundation) / 6th place at Information and Technology Competition held by the Information and Technology Foundation and the municipality of Izmit with the approval of the Republic of Turkey Ministry of National Education



Son İlerlemeler


PCB tasarımı JLCPCB’den yapılmış ve sipariş edilmiştir.


Sorun çıkartan tekerlekler değiştirilmiştir.


Sunu Kutucuğu



Dünya Çapında Bir Beyaz Eşya Şirketi ile Proje Geliştirme

Bu proje, Türkiye ve Dünya çapında önemli bir beyaz eşya şirketi ile ortaklaşa yürütülen çalışmalar sayesinde geliştirilmekte ve bu şekilde bu projenin seri üretim gibi daha profesyonel aşamalara taşınması planlanmaktaydı.


TASHIMASU Projesinin Fotoğrafları



KAYNAKÇA



Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir