İçindekiler:

Hareketle Tetiklenen Işıklar: 5 Adım
Hareketle Tetiklenen Işıklar: 5 Adım

Video: Hareketle Tetiklenen Işıklar: 5 Adım

Video: Hareketle Tetiklenen Işıklar: 5 Adım
Video: Grup 5 Adım - Gözleri Kara Dilber (1973) 2024, Kasım
Anonim
Hareketle Tetiklenen Işıklar
Hareketle Tetiklenen Işıklar

Bu kılavuz, hareket olduğu sürece, değişen renkte bir hareket sensörü tetiklemeli ışık oluşturmak için bir FPGA'nın nasıl kullanılacağını gösterecektir. Kırmızı, mavi ve yeşil seviyelerinin tümü, her bir renge bir değer kilitlenerek kontrol edilir. Bu proje Timmy Nguyen ve Ryan Luke tarafından bir CPE 133 sınıfı final projesi için oluşturuldu.

Adım 1: Parçalar

Parçalar
Parçalar
Parçalar
Parçalar
Parçalar
Parçalar
Parçalar
Parçalar

Aşağıdaki parçaları toplayın:

-1 Basys 3 FPGA kartı

-1 Ekmek Tahtası

-1 RGB analog LED

-3 npn/n-kanallı MOSFET'ler

-1 220 ohm direnç

-1 PIR hareket sensörü

-çoklu atlama kabloları

Adım 2: FPGA Basys 3'ü programlayın

FPGA Basys 3'ü programlayın
FPGA Basys 3'ü programlayın

Bu proje için, bir hareket algılayıcı PIR sensörünün çıkışına bağlı olarak açılıp kapanan bir RGB LED'in parlaklığını ve rengini kontrol etmek için Darbe Genişlik Modülasyonu (PWM) kullanıyoruz. Sensör hareket algılarsa, sensörün bir işlevi olan LED yaklaşık 4 saniye boyunca yanar.

Bu proje için gerekli tüm dosyalar bu bölümde yer almaktadır.

Modüller:

Saat bölücü: Basys 3'ün yerleşik saatinin frekansı 100 MHz'dir, bu nedenle sayaçta daha iyi yönetmek için bu frekansı 10 KHz'e düşürmek istiyoruz.

Sayaç: Sayaç, giriş olarak azaltılmış 10 KHz'i kullanır ve hareket sensörü tarafından etkinleştirildiğinde 255'e kadar sayar.

3D Flip Floplar: Kullanıcı, tahtadaki 8 anahtarın herhangi bir çeşidini çevirecektir ve bu flip flop'lar, o flip flop'un etkinleştirme düğmesine basılarak etkinleştirildiğinde, anahtarların değerini karşılaştırıcıya kilitleyecektir. Bu kilitli değer, LED'e giden çıkış sinyalinin görev döngüsünü veya darbe genişliğini belirleyecektir.

3 Karşılaştırıcı: Sayacın 8 bitlik çıkışı karşılaştırıcıların her birine ayrı ayrı gider ve flip flop'un 8 bitlik çıkışı ile karşılaştırılır. Sayaç çıkışı, D Flip Flop'tan alınan mandallı değerden küçükse, karşılaştırıcı bir bitlik Yüksek değer verir; sayaç çıkışı, kilitlenen değerden büyükse, karşılaştırıcı bir bitlik Düşük değer verir. Karşılaştırıcı daha sonra değerini sensör kod çözücüye verir.

3 Sensör Şifre Çözücüleri: Sensör şifre çözücü, sensör (1) tarafından hareket algılanırsa karşılaştırıcının değerini veya hareket yoksa düşük voltaj (0) çıkışını verir. Bu çıkışlar doğrudan RGB LED'e gider.

VHD dosyalarını indirdikten sonra:

Dosyalar indirilip bir projeye yerleştirildikten sonra, proje için bit akışını sentezleyin, uygulayın ve yazın. Ardından basys 3 kartını bağlayın ve cihazı programlayın.

Adım 3: Breadboard'da Devre Oluşturun

Breadboard'da Devre Oluşturun
Breadboard'da Devre Oluşturun
Breadboard'da Devre Oluşturun
Breadboard'da Devre Oluşturun
Breadboard'da Devre Oluşturun
Breadboard'da Devre Oluşturun

Devreyi oluşturan şemayı ve fotoğrafları takip edebilirsiniz. Topraklama devre boyunca ortaktır ve kırmızı, mavi veya yeşil sinyalleri daha da kısmak için mosfetlerle seri olarak ek dirençler eklenebilir.

Adım 4: Bileşenleri Basys 3 Anakartına Bağlayın

Bileşenleri Basys 3 Anakartına Bağlayın
Bileşenleri Basys 3 Anakartına Bağlayın
Bileşenleri Basys 3 Anakartına Bağlayın
Bileşenleri Basys 3 Anakartına Bağlayın
Bileşenleri Basys 3 Anakartına Bağlayın
Bileşenleri Basys 3 Anakartına Bağlayın

Basys 3 board'unuzu breadboard'a bağlamak için fotoğraflardaki şemayı ve referansları kullanabilirsiniz.

Adım 5: Nasıl Kullanılır

SW0-SW7 anahtarları tarafından temsil edilen bir ikili değer girebilirsiniz. Bu değere sahip olduğunuzda, bu değeri düğme tarafından seçilen renge sabitlemek için BTN_L (kırmızı), BTN_C (mavi) ve BTN_R (yeşil) düğmelerine basabilirsiniz. Bu arada, hareket sensörü LED'i her harekette yanacak şekilde tetikleyecektir.

Önerilen: