1 telli parazitle çalışan mikrodenetleyici?


17

Dallas'ın 1 telli sensörlerini gördüm, harika görünüyorlar. Ancak, parazitle güçlendirilebilen bazı özel 1 telli köleler yapmak istiyorum (sadece toprak + veri).

Herkes buna uygun düşük güçlü bir mikrodenetleyici önerebilir mi?

1 telli veri yolundan bir MCU'ya nasıl güç vereceğime dair bir örnek devre var mı?


Java düğmeleri. onlar var. TI yaptım. Java Card IIRC
Tim Williscroft

Soruyu takip etmek ve geliştirmek - MCU'nun sıfırlanmasında güç açmaya ne dersiniz? Bu nasıl ele alınır? (1 tel için özel olarak tasarlanmış sensörler için, bunun için hazırlandığı şekilde cihazın kendisi tarafından kullanılmalıdır). MCU'da tarayıcı algılama özelliği bulunmalı mıdır? Bu yeterli mi?
mazurnifikasyon

@ macurnification - bu bana yeni bir soru gibi geliyor
Toby Jaffey

Yanıtlar:


17

Bir tel veri yolu, veri yolunda pasif olarak (yani bir dirençle) çekilir ve cihazlar veri yolunu aşağı çekerek veri yolunda iletişim kurar. Otobüsten güç çekmek istersem ne yapardım:

  1. Veri hattını doğrudan mikro denetleyicinizin veri giriş pimine besleyin.
  2. Ayrıca veri hattını bir Schottky diyotuna besleyin.
  3. Diyotun çıkışında toprağa büyük bir kondansatör (diyelim 10uF) koyun.
  4. Diyotun çıkışını mikrodenetleyicinizin VCC pinine gönderin.

Gerilim düşüşünü en aza indirmek için bir Schottky diyot kullanmalısınız. Diyot / kapasitör kombinasyonu, MCU'yu kapatmadan iletişimin (yani veri yolunun periyodik olarak topraklanması) yapılabilmesi için bunu yapmalıdır. Diyottan sonra kondansatörün yerleştirilmesi, bus verisindeki geçişleri keskin tutarken, MCU'nuza giden güç (voltaj) düşüşünü kademeli olarak korur. Kullandığınız cihazın gücü ne kadar düşükse, kapasitörünüzdeki tahliyeyi en aza indirmek daha iyidir, ancak hemen hemen tüm MCU'lar sizin için çalışacaktır. Benim tercihim Atmel'in AVR'ları, ancak TI MSP430'lar ve Microchip'in PIC'leri de düşük güç tüketimi için iyi adaylar.


9
TI MSP430'larda +1. En düşük güç tüketimi yarışmasını kazandıklarını düşünüyorum.
25'te pingswept

8
Eminim birkaç patates kapatabilirsiniz :)
Jim

2
"Tampon" ile ne demek istiyorsun? Normalde düşük voltaj düşüşü için bir diyot, tercihen Schottky diyot kullanırsınız.
starblue

2
@starblue bir tampon, tipik olarak sürücü gücünü artırmak ve giriş sinyalini "geçerken" düşük emiş gücü sağlayan bir elektrik bileşenidir. Çıktının girdiyi "takip etmesini" sağlarken, girdisini çıktısından etkili bir şekilde izole etme etkisine sahiptir. Uygulamanın birçok yolu vardır (bir op-amp bir yoldur; seri halinde iki CMOS invertör başka bir yoldur), ancak bunları ayrı bileşenler veya IC'ler olarak da bulabilirsiniz.
vicatcu

1
@ vicatcu Sanırım starblue bir mantık tamponunun ne olduğunu biliyor - Sadece evirmeyen bir amplifikatör. Farklı bir şeye atıfta bulunup bulunmadığınızı merak ediyor olabilirdi. Bir tampona giriş giriş akımının nano- veya mikro-amper seviyesinde olduğunu ve bu akımın kapasitörünüzden ziyade toprağa çevrildiğini unutuyorsunuz. Geleneksel bir tampon (CD4010 gibi) güç ve toprak olmadan çalışmaz. Yanıtınız seçildiğinden, lütfen bu gerçeği yansıtacak şekilde düzenleyin.
Kevin Vermeer

7

Özel köle işlevlerinize "Tamam, burada kısa bir süre için çok fazla akıma ihtiyacım var" deyin ve çıktınıza bir MOSFET pullup eklemek için bir istek eklemeyi düşünebilirsiniz. Daha sonra, bunu birkaç döngü için kapatabilir ve slave'in hattın dirençli olarak çekilmesine izin verip vermediğini görebilirsiniz ( DS18S20 veri sayfasının p.3 şekil 2'sinde olduğu gibi . ) Çok sayıda 1 telli cihaz var ' t Gerçekten 1 telli. Gerçek 1 telli parçalarla etkileşim kurmanıza gerek yoksa ve / veya ana düğümü kontrol ediyorsanız, kendi spesifikasyonlarınızı tanımlayabilirsiniz ve bu işleri daha kolay hale getirecektir.

İşiniz daha kolay çünkü mikro muhtemelen otobüsün 5V'u arasında işlem yapabilir ve ~ 2.6'ya kadar bozulabilir. Bu nedenle, yukarıda belirtilen Schottky ve kondansatör kurulumu, hatta bir silikon diyotu çalışmalıdır. Aşağıdaki diyot ayarlarını düşünün:

  • Silikon diyot: Bu benim ilk tercihim olurdu. Mikro ve herhangi bir çevre birimi 4.3V'de çalışabildiği sürece, Schottky'de onlarca nano ampere kadar ters akımınızı onlarcadan yüzlerce (ve hatta ısındığında mA'ya kadar) en aza indirirsiniz.
  • Schottky diyot: Sadece standart diyot ve Schottky arasındaki .4V, uygulamanız için önemliyse, ancak 100uA siparişindeki ters akım kabul edilebilirse kullanın.
  • İdeal diyot: Maliyet bir sorun değilse (sadece 1,75 $, ancak pasif diyottan daha fazlası) ve 20uA ters akım kabul edilebilirse LTC4411 veya benzerlerini deneyin. Güç tüketimi için MSP430 veri sayfasına bakın. 3V'de (Bu cihazı çıkarmak, ancak daha düşük güç kodunu yürütmek için RAM'i korumak isteyebileceğinizi varsayarak, sızıntılı bir süper kapak yerine bir Li-ion pil kullanarak), 100na (nano-amp, .1uA) hazırda bekleme moduna sahip olmanız gerekir harici bir kesinti (pin değişikliği gibi!)

Diğer seçenek güç gereksinimlerinde cimri olmak ve bir pil kullanmaktır. Maxim bu uygulama notu bakın . MSP430'unuzu uyku modunda tutabiliyorsanız (yani, 1 telli başlatma darbesi gibi bir pim değişiminde uyanabilirsiniz), 1uA'dan daha düşük bir ortalamaya sahip olabilirsiniz ve bir madeni para hücresi on yıl boyunca dayanır (Teoride). cihazın uzun süre dayanmasını ister misiniz?


İdeal Diyot veri iletirken kapanacak kadar hızlı olacak mı?
mazurnifikasyon

5

Enerjiyi depolamak için bir kapasitör kullanın ve kapasitörün negatif ucunu toprağa bağlayın ve veri hattı ile kapasitör arasına Schottky diyot bağlayın. Schottky diyotların düşük bir ileri düşüşü vardır.


5

μ

Mikrodenetleyiciyi veriyolundan çalıştırmak için sadece bir diyot ve bir kapasitöre ihtiyacınız vardır. Kondansatör bus voltajını tamponlar ve diyot, bustaki düşük seviyenin kapasitörü boşaltmasını önler. Minimum voltaj düşüşüne sahip olmak için bir Schottky diyot seçin.

Uyarı: kirli hile önde!
Bu gal , mikrodenetleyicisine parazit olarak güç vermek için diyota ihtiyaç duymaz ve hatta kapasitör gerekli değildir. Bir G / Ç bağlantı noktasında RFID anteni olarak bir bobin kullanır ve bobin üzerindeki voltaj cihaza kenetleme diyotlarından güç verir.

resim açıklamasını buraya girin

VDDVDD


Yazıklar olsun ...! Russel veya Olin, bu kelepçe diyot kötüye kullanımını görürse ... :-)
Curd

1
@Curd - Russell mı yoksa Olin mi? Nasıl sizce ben ilk kez bu görünce keçe ?! :-)
stevenvh

3

1 telli uygulama notlarının çoğu, slave içindeki standart devreyi gösterir: dahili çipin GND ve VCC'si arasında (sizin durumunuzda, CPU'nuzun GND ve VCC'si arasında) bir kondansatör. Ayrıca, veri hattı yüksek olduğunda kapasitörün dolmasına izin vermek, ancak veri hattı düşük getirildiğinde gücün kapasitörden boşalmasını engellemek için veri hattından dahili çipin VCC'sine bir engelleme diyotu. Bu uygulama notlarındaki şemayı inceleyin:

Kapasitörünüz yeterince büyük olduğu sürece, çoğu modern mikrodenetleyiciyi çalıştırabilmelisiniz. Texas Instruments MSP430 piyasaya sürüldüğünde en düşük güçlü mikroydu. Atmel'in PicoPower AVR'larının MSP430'dan daha az güç kullandığını iddia ettiğini duydum. Ayrıca Microchip XLP mikroları nispeten az güç kullanır.

1wire.org'daki güzel kişilerin, köle 1 telli cihaz oluşturma hakkında ne söylediğini görünce şaşırabilirsiniz: http://www.1wire.org/index.html?target=p_142.html&lang=tr


Sanırım "1-wire" ifadesinden
kaçınsam iyi olur

İlginçtir ki, 1wire.org sayfasının söylediği şey "Bu sayfayı DEĞİŞTİRMEYİN. Müşteriler tarafından görülemez." Sanırım ben müşteri değilim. Bir tahmin, "shopfactory" javascript çalışmazsa ne olacağını bilmiyorum.
Yann Vernier

1

ben

Sadece bu konu üzerinde tökezledi ... Asıl soru, neden köle parazit olarak güç vermek istiyorum. Tüm 1 telli cihazlar parazitik cihazlar değildir ve genel olarak bu şekilde çalıştırılmamasını öneririm. Tek bir iz eklemenin bir sorun olduğu PCB'lerde cihazlara duyulan ihtiyaçtan bir tutun. Genel tasarımına bağlı olarak 1 Hatlı bir ağda çeşitli sorunların nedeni olabilir. Tabii ki çok da otobüs ustası tasarımlarına bağlıdır. aktif çekmeleri destekleyebilir.

Mikroişlemci 1-Telli slave'ler başarıyla yapılmıştır, ancak genel 1-Telli zamanlama özelliklerini karşılamanız gerekir. gördüğüm çoğu uygulama bunu yapmaz (özellikle bu kişisel kullanım dışında bir şey içinse). Herhangi biriyle gerçek detaylar hakkında konuşmaktan memnuniyet duyarım. Uygun cihaz özellikleri ile 16Mhz AVR Mega8 üzerinde başarıyla yapıldı. Kritik tepki sürelerini daha yavaş bir şeyle karşılamak gerçek bir zorluk olur ve hizmet sürelerini kesintiye uğratır ve uyandırma işlemleri genellikle yanıt süresini çok fazla karşılamak için yavaşlar.

Son birkaç yıldır yapılan 1 telli otobüse bir mikro koymanın birkaç farklı yolu vardır ve 1 telli mikro köleler benim için özel bir ilgi alanıdır, bu yüzden ilgilenen herkese birkaç tasarım fikri verebilirim. Opcodes (fonksiyonlar) hiçbir zaman adhoc olarak tasarlanmamalıdır, çünkü bir ağdaki diğer 1-Telli cihazlarda kolayca sorun yaratabilir.

1-Wire.org web sitesi için üzgünüm, son birkaç yıldır kendi cebimden uzak tuttum, böylece insanlar 1-Wire ile çabaları için bir başlangıç ​​noktası oldu.

Her neyse, 1 telli tasarım sorunlarına ihtiyaç duyan herkes doğrudan dml (at) sprynet.com veya admin@1wire.org adresinden benimle iletişime geçmekten çekinmeyin ve yapabilirsem yardım etmeye çalışacağım.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.