Android 13 denetleyici

Bu sayfada, sensör füzyon testi düzeneğinin hareketini ve ITS-in-a-box'ın aydınlatmasını kontrol eden Android 13 denetleyicisinin nasıl monte edileceği açıklanmaktadır. Sensör füzyon testi, Uyumluluk Test Paketi'ndeki (CTS) Kamera Görüntüsü Test Paketi'nin (Camera ITS) bir parçasıdır. Android 13 denetleyicisi, döndürme ve ışık kontrolü gerektiren test sahneleri için ışıklandırma ve servo motoru kontrol ederek otomasyonu etkinleştirir.

Android 13 denetleyicisine genel bakış

ITS-in-a-box, harici bir ışık kaynağı olmadan tutarlı aydınlatmanın yanı sıra test tableti ile test telefonu arasında sabit bir mesafeyle tutarlı bir test ortamı sağlar. Android 13 denetleyici hem servo kontrolünü hem de aydınlatma kontrolünü otomatikleştirir. Ayrıca, sensör füzyonu sahne testleri için DUT'u manuel olarak döndürme ve aydınlatma kontrollü testler için ışıkları manuel olarak açıp kapatma ihtiyacını ortadan kaldırır.

Test düzeneklerinde servo ve aydınlatma kontrolü

Sensör füzyonu test düzeneği, tekrarlanabilir test için telefonun sabit hareketini sağlar. Telefon, çeşitli konumlarda görüntü yakalamak için dama tahtası şeklindeki bir hedefin önünde döndürülür. test_sensor_fusion için servo, telefonu yaklaşık 2 saniyede kamera ekseninin merkezi etrafında 90 derece döndürüp geri getirir. test_video_stabilization için servo, telefonu 10 derece eksenli kamera merkezinin etrafında döndürüp tekrar geri döndürerek yürürken video çekerkenki telefon hareketini taklit eder. Şekil 1'de, sensör füzyonu test düzeneğinde hareket eden iki telefon gösterilmektedir. Şekil 2'de, sensör füzyonu test düzeneğinde hareket eden bir telefon gösterilmektedir.

Test düzeneğinde telefon hareketi

1. şekil. test_sensor_fusion için test düzeneğinde telefon hareketi

Test düzeneğinde telefon hareketi

Şekil 2. test_video_stabilization için test düzeneğinde telefon hareketi

Servo motor kontrolü

Test düzeneğindeki analog servo motorlar, darbe genişliği modülasyonu (PWM) kullanılarak kontrol edilen konumsal servo motorlardır. Tipik bir konumsal kontrol örneği Şekil 3'te gösterilmektedir. Kontrol sinyalinin süresi 20 ms'dir. Darbe genişliğini minimum genişliğe değiştirmek motoru nötr konuma getirir. Darbe genişliğini maksimum genişliğe değiştirmek ise motoru saat yönünde 180 derece hareket ettirir.

Servo kontrol açıklaması

3.Şekil Tipik servo kontrol açıklaması

Aydınlatma kontrolü

Ana bilgisayarı kullanarak servo motor hareketini ve ışıkları kontrol etmek için sensör füzyon test düzeneğinin USB bağlantısı olması gerekir. Android 13 kumandası, üstüne monte edilmiş özel yönlendirme kartı (veya kalkan) ile USB bağlantılı bir Arduino UNO R3 kartı kullanır. Android 13 denetleyicisi, tek bir ana bilgisayardan en fazla üç sensör füzyonu düzeneği döndürücü servoyu ve en fazla üç ITS-in-a-box aydınlatma sistemini veya bir sensör füzyonu düzeneğini kontrol edebilir.

3.0 sürümü Android 13 denetleyici, kullanıcıların Arduino seri bağlantı noktası USB üzerinden açıldığında otomatik sıfırlamayı devre dışı bırakmasına olanak tanır. Kumanda başka bir ana bilgisayara takıldığında veya başka test senaryolarında kullanıldığında otomatik sıfırlama işlevi etkinleştirilir. Kullanıcılar, kumandadaki fiziksel bir anahtarı kullanarak otomatik sıfırlamayı etkinleştirebilir veya devre dışı bırakabilir.

Android 13 denetleyici, herhangi bir Camera ITS-in-a-box ile çalışabilir. Android 13 denetleyici, ışık kontrollü testler yapmak için herhangi bir Camera ITS-in-a-box (RFoV, WFoV, Modular) veya Sensor Fusion kutusuna bağlanabilir. Android 15'ten itibaren, tüm ışık kontrollü testler scene_flash'a dahil edilir ve scene_low_light hariç sensör füzyon kutusu kullanılarak çalıştırılabilir. scene_low_light için grafik görüntüleme amacıyla tablet gerekir ve Camera ITS-in-a-box kullanılarak çalıştırılmalıdır.

scene_flash ve scene_low_light testlerinde, test telefonlarında otomatik flaş işlevini tetiklemek için ışıkların kapalı olduğu karanlık bir ortam gerekir. Şekil 4'te, Android 13 denetleyicisi tarafından ITS-in-a-box'taki ışıkların kapatılıp açılması gösterilmektedir.

ITS-in-a-box'taki ışık kontrolü

Şekil 4. test_auto_flash için ışıklar kapatılıp açıldı

Düzeltme geçmişi

Aşağıdaki tabloda Android 13 denetleyicisinin düzeltme geçmişi açıklanmakta ve üretim dosyalarının her sürümüne yönelik indirme bağlantıları yer almaktadır.

Tarih Düzeltme Üretim dosyası indirme Değişiklik günlüğü
Ağustos 2024 3,0
  • DUT ile iletişim sırasında ışıkların açılıp kapanmaması için otomatik sıfırlama atlama özelliği eklendi.
Aralık 2022 2,2
  • EasyEDA'dan doldurulmuş PCB kartı sipariş etme seçeneği eklendi
  • Arduino mikro kodunda servo hareketlerinden sonraki gereksiz gecikmeler kaldırıldı.
  • Metal olan ayırıcılar naylon olarak değiştirildi
  • Through-hole MOSFET'ler, yüzeye monte MOSFET'lerle değiştirildi.
  • Kondansatör 10 uF'den 1000 uF'ye değiştirildi
Mart 2022 1
  • Aydınlatma kontrolü özelliği eklendi.
  • 6 servo kontrolü 3 aydınlatma ve 3 servo kontrolü olarak değiştirildi.

Android 13'te kontrol cihazı kurulumu

Bu bölümde, Android 13 denetleyicisinin nasıl ayarlanacağı açıklanmaktadır.

Gerekli bileşenler

Android 13 denetleyiciyi uygun satıcılarımızdan birinden satın alabilir veya kendi denetleyicinizi oluşturabilirsiniz. Üretim dosyası; PCB Gerber dosyası, PCB malzeme listesi (BOM), PCB yerleştirme bilgileri ve bir muhafaza STEP dosyasından oluşur. Üretim dosyasını indirmek için Düzeltme geçmişi bölümündeki tabloya bakın.

Kendi denetleyicinizi oluşturuyorsanız Arduino UNO R3 kartınız olmalıdır. Kumandayı nitelikli bir satıcıdan satın alırsanız Arduino dahildir.

Android 13 kumanda muhafazası, kumandayı koruyan ve kurulum hatalarını önlemek için kullanılmayan USB bağlantı noktalarını kapatan isteğe bağlı ancak önerilen bir bileşendir. Kumandanın fiyatlandırması ve seçenekleri hakkında ayrıntılı bilgi için yetkili bir satıcıyla iletişime geçin.

Kurulum prosedürü

Android 13 denetleyicisini ayarlamak için aşağıdaki adımları uygulayın:

  1. 12 V (aydınlatma için) ve 5 V (servo için) adaptörleri uygun güç jaklarına (Şekil 5) bağlayın.

    Güç adaptörünün konumu

    5.şekil Güç adaptörünün konumu

  2. ITS-in-a-box veya Sensor Fusion kutu ışıklarınızı aydınlatma kanalı çıkış jaklarından birine bağlayın (Şekil 6). Aydınlatma gücünün silindirine bağlı olarak, gerektiğinde adaptör kullanın (Şekil 7).

    Aydınlatma çıkış konumu

    6.şekil Aydınlatma kanallarının çıkış konumu

    3,5 mm x 1,35 mm erkek fişten 5,5 mm x 2,1 mm dişi jak dönüştürücü

    Şekil 7. Aydınlatma gücünü kumandaya bağlayan adaptör

  3. sensor_fusion sahneleri için kurulum yapmak üzere servoyu servo kanalı bağlantı üstbilgilerinden birine bağlayın.

    Servo kanalı bağlantı konumu

    Şekil 8. Servo bağlantı konumu

    3.0 sürümü kumandalar için kumanda yeni bir ana makineye bağlanırken otomatik sıfırlama anahtarı Enable olarak ayarlanmalıdır.

    3.0 revizyonunda, kontrol cihazında etkinleştirilebilen veya devre dışı bırakılabilen bir otomatik sıfırlama anahtarı bulunur. Test sırasında, Disable Arduino denetleyicisiyle iletişimi kurarken tüm ışıkların her testin başında kısa süreliğine sönmesini önlemek için otomatik sıfırlama anahtarını Disable konumuna getirmenizi öneririz.its_base_test Bu, paralel test yaparken (ITS, aynı denetleyiciye bağlı test düzeneği aydınlatma sistemiyle aynı anda çalışırken) çok önemlidir.

    Konumu otomatik sıfırlama

    Şekil 9. Otomatik sıfırlama anahtarı

  4. Kumandayı USB-A kablosuyla ana makineye bağlayın.

    USB-A konumu

    10.şekil Ana makineye USB-A bağlantı noktası

Şekil 11'de, bir aydınlatma sistemi ve servo için tamamlanmış bir Android 13 denetleyici kurulumu örneği gösterilmektedir.

USB-A konumu

11.Şekil Android 13'te kumanda kurulumu tamamlandı

Düzenleyenden yazılım kontrolü

PWM pinlerini motor sinyallerine atamak ve farklı açılar için darbe genişliği aralıklarını tanımlamak üzere UNO'ya mikro kod indirilebilir. Altı HS-755MB motorun servo dönüş kontrolü için mikro kod, Diğer kaynaklar bölümünde yer alır. Bu bölümde, servoları döndüren rotator.py adlı basit bir programa ait bağlantı da yer alır.

Android 13 kumandasını kullanma

Kamera ITS kullanımı:

python tools/run_all_tests.py device=device_id camera=0 rot_rig=arduino:1 scenes=sensor_fusion

Test komut dosyası dahil:

python rotator.py --ch 1 --dir ON --debug

Yazılım kontrolü indirmeleri