Driver Station Nedir?¶
Driver Station, robotunuzla iletişim kurmanızı sağlayan **web arayüzü**dür. Peki web arayüzü nedir ve neden böyle bir şeye ihtiyaç duyuyoruz?
Web arayüzü, internet tarayıcınızda açtığınız web sitelerinin arayüzüdür. Facebook'un arayüzü, YouTube'un arayüzü gibi. Ama bizimki robot kontrol etmek için tasarlanmış özel bir web arayüzü. Robot açıldığında kendi içinde küçük bir web sitesi oluşturur ve siz de bu web sitesine girerek robotu yönetirsiniz.
Neden Web Tabanlı Kontrol?¶
Robot kontrol etmenin birçok yolu var. Eskiden robotlar genelde fiziksel butonlar, anahtarlar ve ekranlarla kontrol edilirdi. Bazıları özel bilgisayar programları kullanır. Bizim web tabanlı yaklaşımımızı tercih etmemizin birkaç sebebi var.
Öncelikle evrensellik. Web tarayıcısı olan her cihazdan robotu kontrol edebilirsiniz. Telefon, tablet, laptop, masaüstü bilgisayar... İşletim sistemi fark etmiyor - Windows, Mac, Linux, Android, iOS hepsi çalışır. Özel program indirmenize gerek yok, çünkü tarayıcı zaten var.
İkincisi güncellik. Web arayüzünü geliştirdiğimizde, siz otomatik olarak en yeni sürümü kullanırsınız. Uygulama güncellemesi, kurulum vs. derdi yok. Robot açtığınızda her zaman en güncel arayüze sahip olursunuz.
Üçüncüsü esneklik. Web teknolojileri çok gelişmiş durumda. Gerçek zamanlı veri gösterimi, dokunmatik kontrol gibi özellikler web üzerinden mümkün. Ayrıca farklı cihazlara göre arayüz şekli değişebilir. Telefonda başka, tablette başka görünür.
Driver Station'ın Probot'taki Yeri¶
Driver Station, Probot kütüphanesinin temel yapı taşlarından biri. Çünkü robot yarışmalarının en kritik ihtiyaçlarından biri uzaktan kontrol. Robot sahada, siz saha kenarında olacaksınız. Aralarında mesafe var.
Geleneksel yöntemlerle bu mesafeyi kapatmak zor. Kablolu bağlantı pratik değil. Radyo frekansı karmaşık ve pahalı. Bluetooth mesafesi kısa. WiFi ise hem uzun mesafe hem de yüksek veri kapasitesi sağlıyor. Ve WiFi üzerinden en kolay iletişim yöntemi web.
Driver Station sadece bir kontrol arayüzü değil aslında. Robot durumunu izlemek, sorun teşhisi yapmak, gamepad bağlantısını yönetmek gibi birçok işlevi var. Yarışma sırasında robotla ilgili her şeyi buradan takip edebilirsiniz.
Nasıl Çalışır?¶
Sistem oldukça basit. Robot açıldığında WiFi Access Point modunda çalışmaya başlar. Yani robot kendi WiFi ağını oluşturur, tıpkı evinizdeki modem gibi. Bu ağın adı genellikle "probot_" ile başlar ve robotun kimlik numarasını içerir.
Siz bu WiFi ağına normal telefon bağlar gibi bağlanırsınız. Bağlandıktan sonra tarayıcınızda belirli bir IP adresine (genellikle 192.168.4.1) gidersiniz. Orada Driver Station arayüzü sizi karşılar.
Bu noktada robot ile telefon/bilgisayar arasında direkt bağlantı kurulmuş olur. İnternet gerekmiyor, çünkü robot kendi ağını oluşturuyor. Bu da hem güvenlik hem de bağımsızlık açısından avantajlı.
Arayüzde robot modunu seçebilir (Autonomous, Teleop, Test), robotu aktif/pasif yapabilir, gamepad durumunu kontrol edebilir ve robot sensörlerinden gelen verileri görebilirsiniz. Her şey gerçek zamanlı olarak güncellenir.
Gamepad Bağlantısı¶
Driver Station'ın önemli özelliklerinden biri gamepad yönetimi. Xbox, PlayStation veya diğer uyumlu gamepadleri otomatik olarak algılar. Gamepad bağlantısı bilgisayar/telefon ile robot arasında değil, bilgisayar/telefon ile gamepad arasında olur.
Yani gamepad Driver Station'ın çalıştığı cihaza bağlıdır. Driver Station gamepad verilerini okur ve bunları robot'a WiFi üzerinden gönderir. Bu sayede gamepad'in robot ile direkt iletişim kurmasına gerek kalmaz.
Diğer Alternatiflerle Karşılaştırma¶
Tabii ki web tabanlı olmayan yaklaşımlar da var. Özel masaüstü uygulamaları, mobil uygulamalar, hatta sadece serial konsol bile robot kontrol etmek için kullanılabilir. Her yaklaşımın kendine göre avantaj ve dezavantajları var.
Masaüstü uygulamaları genelde daha hızlı çalışır ama kurulum gerektirir ve platform bağımlıdır. Mobil uygulamalar dokunmatik kontrol açısından iyi ama geliştirmesi zor ve app store onayı gerektirir. Serial konsol çok basit ama kullanıcı dostu değil.
Bizim web tabanlı yaklaşımımız bu alternatiflerin ortasında bir yerde duruyor. Performans açısından yeterli, kullanım açısından kolay, geliştirme açısından esnek. Robot yarışmaları için ideal bir denge noktası.
Sonraki Adımlar¶
Driver Station'ın ne olduğunu ve neden bu yaklaşımı kullandığımızı anladığınıza göre, robot modları konusuna geçebiliriz. Çünkü Driver Station'da göreceğiniz en önemli şeylerden biri mod seçimi olacak.
Robot modları nedir, hangi durumlarda hangi mod kullanılır, bunları öğrendikten sonra Driver Station'ı daha iyi anlayacaksınız.