OV7670 Arduino VGA Kamera Modülü
OV7670 kamera modülü, görüntü verisini paralel dijital arayüz üzerinden bir mikrodenetleyici veya görüntü işleme sistemine aktarmak için kullanılır. VGA çözünürlüklü görüntü denemeleri, temel görüntü yakalama ve gömülü kamera uygulamalarında tercih edilebilir. Sensör ayarları ile görüntü verisinin aktarımı farklı bağlantılar üzerinden yürütülür; bu nedenle hem kontrol hem zamanlama hatlarının yazılım tarafından yönetilmesi gerekir.
Teknik özellikler
- Görüntü sensörü: OV7670 CMOS
- Azami sensör çözünürlüğü: 640 × 480 piksel, VGA
- Sensör kare hızı: Uygun çalışma koşullarında 30 fps değerine kadar
- Görüntü veri yolu: 8 bit paralel
- Kontrol arayüzü: SCCB
- Temel sinyaller: D0–D7, PCLK, VSYNC, HREF ve XCLK
- Besleme/lojik: Kart üzerindeki pin işaretleri ve sensörün gerilim koşulları esas alınmalıdır
SCCB ve paralel veri yolu
SCCB bağlantısı, görüntü ayarlarını yapan kayıtların okunması ve yazılması içindir. Görüntünün kendisi bu iki kontrol hattından taşınmaz; paralel veri pinleri ve eşzamanlama sinyalleri kullanılır. Yalnızca bir I²C bağlantısı kurarak tam görüntü almayı beklemek doğru değildir.
Kontrol kartı seçimi
Kamera verisini zamanında yakalayabilmek için yeterli GPIO, uygun örnekleme yöntemi ve bellek gerekir. Küçük bellekli kartlarda çözünürlüğün veya kare hızının düşürülmesi gerekebilir. Sensörün VGA ve 30 fps desteği, bağlı her mikrodenetleyicinin bu ikisini birlikte kaydedebileceği anlamına gelmez.
Saat ve görüntü biçimi
XCLK sensöre çalışma saati sağlarken PCLK piksel verisinin örneklenmesinde kullanılır. VSYNC ve HREF sinyalleri görüntü satırlarının ve karelerinin ayrılmasına yardımcı olur. Kayıt ayarları ile yazılımın beklediği piksel biçimi eşleşmezse renkler veya görüntü düzeni yanlış oluşabilir.
Uygulama geliştirme
İlk aşamada düşük çözünürlüklü sabit bir görüntü alınması, bağlantı ve zamanlama hatalarını bulmayı kolaylaştırır. Daha sonra kare hızı, pozlama ve görüntü işleme adımları eklenebilir. Görüntü kaydı için gereken kontrol kartı, depolama veya ekran işlevi ayrıca projelendirilmelidir.
İlk kurulumda izlenecek sıra
Geliştirmeye başlamadan önce kart üzerindeki model işareti, bağlantı yönleri ve kullanılacak yazılım ortamı kontrol edilir. Bilgisayar bağlantısı gereken işlemlerde veri taşıyan bir USB kablo seçilir. İlk deneme, kartın temel işlevini doğrulayan küçük bir örnekle yapılmalıdır. Aynı anda ekran, sensör ve ağ bağlantısını eklemek yerine her bileşeni ayrı çalıştırmak, bir sorun olduğunda kaynağını bulmayı kolaylaştırır. Başarılı ilk denemeden sonra kullanılan kart tanımı, kütüphane sürümü ve pin eşlemesi not edilerek sonraki geliştirmelerde aynı yapı korunabilir. Yazılım derleniyor olsa bile seçilen pinlerin gerçek kartla eşleştiği ayrıca kontrol edilmelidir.
Çevre birimlerini bağlarken
Harici bir sensör veya kontrol devresi eklenirken yalnızca soket biçimine bakılmaz. Besleme gerilimi, lojik seviye, ortak referans ve haberleşme yöntemi birlikte incelenir. Giriş olarak kullanılan bir pine izin verilenden yüksek gerilim uygulanmamalıdır. Motor, röle bobini veya güçlü aydınlatma gibi yükler işlemci pininden doğrudan beslenmez; yükün türüne uygun sürücü kullanılır. Analog sinyallerde ölçüm aralığı ve bağlantı gürültüsü önemlidir. Bir haberleşme hattını birden fazla aygıt paylaşacaksa adres veya seçim pinleri çakışmamalıdır. Bağlantı planının önceden hazırlanması, hem yazılım pin tanımlarını hem de fiziksel montajı daha anlaşılır hâle getirir.