Jeffrey Cross
Jeffrey Cross

Son Seri Oluşturun: Veri kaydediciyi oluşturma

Son Yapım Serisindeki Dördüncü haftamız için, saklama kabiliyeti ekleyerek elektronik termometremizi bir veri kaydedicisine nasıl dönüştürebileceğimize bakıyoruz. Muhtemelen bu yayına devam etmeden önce, arka plan verileri için en son bültene göz atmak isteyeceksiniz.

Ayrıca, unutmadan önce ilk yapımızın sonuna ulaşıyoruz. Umarım, birlikte takip ettiniz ve projenizi tamamlamak için parçaların çoğunu hazır bulundurmuşsunuzdur. Son başvuru tarihi 12 Kasım 2010 günü öğleden sonra saat 11: 59’da PDT’dir, bu nedenle projenizi o zamana kadar teslim etmeyi unutmayın! Bir hatırlatıcı olarak, uygun olması için herhangi bir şey satın almanıza veya örnek projemizi oluşturmanıza gerek yoktur - sadece pillerle çalışan herhangi bir cihaz oluşturmanız ve bir miktar çevresel veri toplamanız gerekir. Tüm bu özellikler ve hangi ödülleri kazanabileceğinizi görmek için resmi kurallara bakın.

Son olarak, bu proje hakkında herhangi bir sorunuz varsa veya paylaşmak istediğiniz fikirleriniz varsa, MAKE Forumları konusuna gidin ve konuşun. Şimdi, veri kayıt cihazımızı oluşturmak için!

Veri kayıt cihazı şematik

Veri kaydedici için şematik. Anlaşmayı biraz daha kolaylaştırmak için beş bölüme ayırdım - mikrodenetleyici (mikrodenetleyiciyi çalıştırmak için gerekli olan bileşenler), programcı (bir PIC programlayıcısını bağlamak için kullanılan bağlantı noktası), sensör (örneğin) , bir termometre), seri port (bir FTDI kablosunu bağlamak için başlık) ve veri depolama (EEPROM bellek yongası ve ilgili parçalar). Devre şemaları bakmak kafa karıştırıcı olabilir, bu nedenle onları daha küçük parçalara ayırmak iyi bir stratejidir. Bu, gerçek devrelere bakarken de faydalı olabilir - breadboard'unuzdaki hangi bileşenlerin yukarıdaki bölümlerin her birine karşılık geldiğini tanımlayabilir misiniz? Devreniz zaten ilk dört bölüme veya veri saklama bölümü dışındaki her şeye sahip olmalıdır.

Adım 0: Malzemeleri toplayın

Parça listesi:

  • Tamamlanan “termometre” projesi
  • Microchip 24AA1025 EEPROM belleği
  • 2x10k direnç (100k iyi)
  • Breadboard atlama telleri
  • 2xAA pil tutucu ve piller

Adım 1: EEPROM'u tahtaya yerleştirin

EEPROM yongasını mikrodenetleyicinin sağındaki breadboard'a yerleştirin. Yerine oturduktan sonra, güç ve toprak kablolarını yukarıda gösterildiği gibi bağlayın. Pim 8, güce bağlanmalı ve Pim 5 - Toprak olmalıdır.

Adım 2: EEPROM'u aktarma kabloları kullanarak yapılandırma

Daha sonra, EEPROM'a nasıl davranılacağını anlatmak için bazı teller eklememiz gerekir. Öncelikle, çipin cevap vereceği seri adresini yapılandırmamız gerekiyor. Mikrodenetleyici bellekten okumak veya yazmak istediğinde, ilk önce yonga adresini i2c seri hattı üzerinden göndermek zorundadır. Tasarımcılar, cihazın yanıt verdiği adresi yapılandırmak için harici bir yol ekleyerek, tasarımcılar birbirleriyle çelişmeden aynı anda birden fazla EEPROM çipi bağlamayı ve kullanmayı mümkün kıldılar. Sadece bir çipimiz var, bu yüzden EEPROM Pimleri 1, 2 ve 3'ten gelen kabloları açarak Adres 7'ye yanıt verecek şekilde yapılandıralım.

Daha sonra, çipin hem okunması hem de yongasına yazılmasına izin vermesini söylememiz gerekir. Bunu yapmak için, WP piminden (EEPROM'daki Pim 7) Topraklama'ya bir kablo geçirin.

Adım 3: i2c veri yolunu işlemci ve bellek arasında bağlayın

EEPROM yongası mikrodenetleyici ile bir i2c seri veriyolu üzerinden iletişim kurar. Veri yolu, iki cihaz arasında mesajları ileri ve geri iletmek için iki kablo (saat ve veri) kullanır. Mikrodenetleyici Pin 14'ü EEPROM Pin 6 ile bağlayarak saat hattını ve veri hattını mikrodenetleyici Pin 15'i EEPROM Pin 5 ile bağlayarak veri hattını bağlayın. Yapmamız gereken diğer şey, her iki hattan çekme dirençleri eklemek. güç. Bunlar gereklidir, çünkü i2c veriyolundaki cihazlar, hem EEPROM hem de mikro kontrolörün aynı anda seri hat üzerinden veri göndermesi durumunda sorunların önlenmesine yardımcı olan açık kollektör çıkışları kullanır.

Not: Bazı mikrodenetleyicilerde yerleşik dirençler vardır, böylece harici olanları tedarik etmeniz gerekmez. Onlara 18l25k22 için ihtiyacın var!

Adım 4: Seri bağlantı noktasını bağlayın

Şimdi, bilgisayarın PIC'ye seri veri göndermesini sağlamak için bir kablo eklememiz gerekiyor. Mikrodenetleyicideki Pin 18'i seri başlığındaki Pin 4'e bağlayın.

Not: Termometre projesinde, FTDI seri kablo ile PIC arasında isteğe bağlı bir direnç gösterdim, çünkü 5V seri dönüştürücü kullanıyordum. Bağdaştırıcımı 3.3V sürümüne nasıl dönüştüğümü öğrendim, bu yüzden bu yapı için direnci kaldırdım.

Adım 5: Pilleri bağlayın

Sonunda aküyü bağlayın! Paketin pozitif ucunu (kırmızı) Güç rayına ve negatif ucunu (siyah) Topraklamaya bağlayın. Açma / kapama düğmeli bir pil takımı en iyi şekilde çalışacaktır, çünkü programlama kablosunu kullanırken bağlantısının kesildiğinden emin olmak isteyeceksiniz.

Adım 6: Veri kaydediciyi test edin

Donanım değişiklikleri için hepsi bu kadar. Son kısım, EEPROM hafızasını kayıt amacıyla kullanmak için yazılımı değiştirmektir. Kapmak

, sonra panonuza programlamak için MPLAB kullanın. Örnek proje için, veri kaydediciyi kontrol etmek için basit bir seri protokol uyguladık. Komutlar:

  • m: Sıcaklığı ölçün ve hemen değeri döndürün
  • b: Günlüğe kaydetmeye başla
  • e: Günlüğe kaydetmeyi sonlandır
  • d: Kayıtlı verileri atma
  • r: Kaydediciyi sıfırla).

Her şeyin işe yarayıp yaramadığını test etmek için seri programınızı (son örnekte olduğu gibi) ateşleyin ve “m” harfini yazın.

Mevcut sıcaklık: 68

Eğer işe yaradıysa, hepiniz gitmeye hazırsınız. PIC programlayıcısının fişini çekin, pili açın ve günlüğe kaydetmeye başlamak için 'b' yazın. Bu noktada, veri kaydediciyi FTDI kablonuzdan çıkarabilir ve sıcaklık verilerini toplamak için bir süre için bir yere koyabilirsiniz.Varsayılan olarak, her 10 saniyede bir sıcaklığı kapar, ancak bunu kaynak kodundaki "logInterval" değişkeninin değerini değiştirerek değiştirebilirsiniz.

Bir süre veri toplamasına izin verin (birkaç dakika veya birkaç saat), ardından tekrar seri kabloya takın, veri toplamayı durdurmak için terminal pencerenize "e" yazın, sonra veriyi almak için "d" yazın. Bir grafik yapmak için bir elektronik tablo programına kesip yapıştırabileceğiniz uzun bir sıcaklık örnekleri listesi edinmelisiniz. İşte çay içindeyken veri kaydedicimi buzdolabına, sonra bir su ısıtıcısının yanına, daha sonra da masamda bırakmadan önce buzdolabına koyduğum bir tane:

Sonuç

Şimdilik bu kadar. Gelecek hafta, işlemciyi ölçümler arasında kapanacak şekilde yapılandırarak, ölçümleri biraz daha hassas hale getirmeye çalışarak ve İşleme kullanarak toplanan verileri görüntülemek için basit bir GUI yaparak projeyi enerji açısından verimli hale getireceğiz.

Hisse

Yorum Bırakmak