İçeriğe atla

Artımlı kodlayıcı

Vikipedi, özgür ansiklopedi
Delik açıklığına göre milli döner artımlı kodlayıcı

Artımlı kodlayıcı (enkoder), cihaz hareket ettirildiğinde iki A ve B çıkış sinyalli darbeler veren, doğrusal veya döner elektromekanik bir cihazdır.[1] "A" ve "B" sinyalleri birlikte hareketin hem oluşumunu hem de yönünü gösterir. Çoğu artımlı kodlayıcının ek bir çıkış sinyali vardır ve bu sinyale, kodlayıcının belirli bir referans konumunda olduğunu gösteren, genelde "indeks"[2] veya "Z"[3] denilir. Ayrıca bazı kodlayıcılar, rulman arızası veya sensör arızası gibi dahili arızayı gösteren durum çıkışı ("alarm")[4] verir.

Mutlak kodlayıcı'dan farklı olarak, artımlı kodlayıcı mutlak konumu vermez, yalnızca konumdaki değişiklikleri[3] ve bildirilen her konum değişikliği için hareket yönünü bildirir. Sonuçta, belirli bir anda mutlak konumu bulmak için, kodlayıcı sinyallerini artımlı kodlayıcı arabirimine göndermek gereklidir, bu ise kodlayıcının mutlak konum değerini "izler" ve raporlar.

Artımlı kodlayıcılar konum değişikliklerini neredeyse anında bildirir, bu ise yüksek hızlı mekanizmaların hareketlerini neredeyse gerçek zamanlı olarak izlemeye olanak tanır. Bu nedenle artımlı kodlayıcılar, konum ve hızın hassas ölçümünü ve kontrolunu gerektiren uygulamalarda kullanılır.

Dörtlü çıktılar

[değiştir | kaynağı değiştir]
Dördün içinde iki kare dalga. Hareket yönü, bu durumda negatif olan A-B faz farkının işareti ile gösterilir çünkü A, B'yi takip eder.

Artımlı bir kodlayıcı, A ve B çıkış sinyallerini üretmek için dörtlü kodlayıcı kullanır. A ve B çıkışlarından çıkan darbeler karesel olarak kodlanmıştır, yani artımlı kodlayıcı sabit bir hızda hareket ettiğinde, A ve B dalga biçimleri kare dalgadır ve A ve B arasında 90 derece faz farkı vardır.[2]

Herhangi bir zamanda, "A" ve "B" sinyalleri arasındaki faz farkı kodlayıcının hareket yönüne bağlı olarak pozitif veya negatiftir. Döner kodlayıcıda faz farkı, cihaz tasarımına bağlı olarak saat yönünde dönüş için +90° ve saat yönünün tersine dönüş için -90° veya tam tersidir.

A&B (Clock & Data) signals from an oscillating shaft
Salınımlı bir milden gelen dörtlü sinyaller. 'Saat' sinyalinin yükselen kenarındaki 'Veri'den saat yönünde yönü okuyun. Mil yön değiştirdikçe, darbe genişliklerini ve fazını değiştirerek yavaşlar ve tersine döner.

A veya B çıkışındaki darbe frekansı, kodlayıcının hızıyla (konum değişim oranıyla) doğru orantılıdır; yüksek frekanslar hızlı hareketi, alçak frekanslar ise daha yavaş hızı gösterir.[1] Kodlayıcı hareketsizken “A” ve “B” üzerinde statik, değişmeyen sinyaller verir.

Döner kodlayıcıda frekans, kodlayıcının mil dönüş hızını ve doğrusal kodlayıcılarda ise frekans doğrusal gidiş hızını verir.

Dörtlü kodlayıcı algılama mekanizmalarının kavramsal çizimleri

Çözünürlük

[değiştir | kaynağı değiştir]

Artımlı kodlayıcının çözünürlüğü, ürettiği konum bilgi hassasiyetinin ölçüsüdür. Kodlayıcı çözünürlüğü genelde birim yer değiştirme başına A (veya B) darbe sayısı veya eşdeğeri birim yer değiştirme başına A (veya B) kare dalga döngü sayısı cinsinden belirtilir. Döner kodlayıcılarda çözünürlük her devir başına düşen darbe sayısı (PPR) veya her devir devir başına düşen döngü sayısı (CPR)[3] olarak belirtilirken, doğrusal kodlayıcı çözünürlüğü belirli bir doğrusal dönüş mesafesine karşılık gelen darbe sayısı cinsinden verilir (örneğin mm başına 1000 darbe gibi).

Bu, kodlayıcının algılayabileceği en küçük konum değişikliği kodlayıcının ölçüm çözünürlüğünün aksinedir. A veya B üzerindeki her sinyal kenarı, algılanan konum değişikliğini gösterir. A (veya B) üzerindeki her kare dalga döngüsü dört sinyal kenarını kapsadığından (A yükselen, B yükselen, düşen A ve düşen B), kodlayıcının ölçüm çözünürlüğü tam bir A veya B çıktı döngüsü tarafından temsil edilen yer değiştirmenin dörtte birine eşittir. Örneğin 1000 darbe/mm doğrusal kodlayıcının 1 mm/ 1000 döngü= 1 μm döngü başına ölçüm çözünürlüğü vardır dolayısıyla bu kodlayıcının çözünürlüğü 1 μm/ 4 = 250 nm'dir.

Artımlı kodlayıcılar, sensör hatalarından dolayı simetri ve faz hataları yapar

Sabit hızda hareket ederken, ideal artımlı bir kodlayıcı A ve B arasında tam olarak 90°'lik bir faz farkıyla A ve B üzerinde tam kare dalgalar verir (yani darbeler tam olarak 180° genişliğindedir). Ancak gerçek kodlayıcılarda sensör kusurları nedeniyle darbe genişlikleri hiçbir zaman tam olarak 180° değildir ve faz farkı hiçbir zaman tam olarak 90° değildir. Ayrıca, A ve B darbe genişlikleri bir çevrimden diğerine (ve birbirine göre) değişir ve faz farkı her A ve B sinyal kenarında değişir. Sonuçta hem darbe genişliği hem de faz farkı bir dizi değer üzerinde değişir.

Herhangi bir kodlayıcı darbe genişliği ve faz farkı aralıkları sırasıyla "simetri" ve "faz" özellikleriyle tanımlanır. Örneğin, simetrisi 180° ±25° olarak belirtilen bir kodlayıcıda, her çıkış darbesinin genişliğinin en az 155° ve en fazla 205° olması garanti edilir. Benzer şekilde, 90° ±20° olarak belirtilen faz ile her A veya B kenarındaki faz farkı en az 70° ve 110°'den fazla olmaz.

Sinyal türleri

[değiştir | kaynağı değiştir]

Artımlı kodlayıcılar, çıkış sinyallerini sürmek (iletmek) için çeşitli elektronik devre tipleri kullanır ve üreticiler genellikle çeşitli sürücü tiplerinden herhangi biriyle belirli bir kodlayıcı modeli yapar. Çok bulunan sürücü tipleri açık toplayıcı (kollektör), mekanik, itme-çekme ve diferansiyel RS-422'dir.

Açık toplayıcı

[değiştir | kaynağı değiştir]
Bir açık toplayıcı sürücünün şematik diyagramı. Çıkış pull-up direnci bazı kodlayıcılarda kendiliğinden vardır; kodlayıcıda pull-up direnci yoksa harici bir direnç gereklidir.

Açık toplayıcı sürücüler (NPN transistörü veya n tipi MOSFET kullanan açık tahliye sürücülerini kullanarak), geniş sinyal voltaj aralığında çalışmaya imkan verir ve çıkış akımını oldukça azaltabilir. Bu özellikleri nedeniyle açık toplayıcı sürücülerini, akım döngülerini, optokuplörleri ve fiber optik vericileri sürmede yararlıdır.

Akım kaynağı olmadığından açık toplayıcı sürücü çıkışı, pull-up direnci aracılığıyla pozitif bir DC gerilimine bağlanmalıdır. Bazı kodlayıcıların bu amaç için içinde kendi dirençleri vardır; pull-up direnci olmayan diğerleri harici bir pull-up direncine gerek duyar. İkinci durumda direnç, gürültü bağışıklığını iyileştirmek için genellikle kodlayıcı arabirim yakınına konulur.

Kodlayıcının yüksek seviyeli mantık sinyal voltajı, pull-up direncine uygulanan voltajla belirlenir (şemada VOH), düşük seviye çıkış akımı ise sinyal voltajı ve yük direnci (pull-up direnci dahil) ikilisince belirlenir. Sürücü düşük seviyeden yüksek mantık seviyesine geçtiğinde, yük direnci ve devre kapasitansı, sinyalin yükseliş süresini uzatan alçak-geçiren filtre oluşturmak için birlikte çalışırlar ve böylece sürücünün maksimum frekans gücü sınırlanır. Bu yüzden, açık toplayıcı sürücüler kodlayıcı yüksek frekanslar vereceğinde genellikle kullanılmaz.

Mekanik işlemi

[değiştir | kaynağı değiştir]
PCB'ye lehimlenmiş döner bir mekanik artımlı kodlayıcı

Mekanik (veya kontak)[5] artımlı kodlayıcılar, doğrudan A ve B çıkış sinyallerini oluşturmak için kayan elektrik kontakları kullanır.[2] Genelde, kontaklar kapalıyken sinyal toprağına elektriksel olarak bağlanır böylece çıkışlar düşük "sürülür", bu ise onları açık toplayıcı sürücülerin mekanik eşdeğeri yapar ve bu nedenle aynı sinyal koşullandırma gereksinimlerine tabidir (yani harici pull-up direnci).

Maksimum çıkış frekansı, açık toplayıcı çıkışlarını etkileyen aynı faktörlerle sınırlıdır ve kodlayıcı arayüzü tarafından filtrelenmesi gereken kontak sıçraması ve mekanik kontakların çalışma hızı ile sınırlıdır. Bu nedenle mekanik kodlayıcılar yüksek frekans çalışması için uygun değildir. Ayrıca kontaklar normal çalışmada mekanik olarak aşınır ve bu cihaz ömrünü sınırlar. Mekanik kodlayıcılar dahili, aktif elektronik devreleri olmadığından nispeten ucuzdur. Bu özellikleri nedeniyle mekanik kodlayıcılar, hafif görevler ve alçak frekanslı uygulamalar için uygundur.

İt-çek (Push-pull) çıkışları (örneğin Transistör–transistör mantığı, TTL) genellikle mantık devresine doğrudan arayüz için kullanılır. Bunlar, kodlayıcı ve arabirimin birbirine yakın yerleştirildiği (örneğin, baskılı devre iletkenleri veya kısa, korumalı kablo hatları aracılığıyla birbirine bağlı) ve ortak güç kaynağından güç alındığı böylece elektrik alanlarına, toprak döngülerine ve sinyalleri ve dolayısıyla konum izlemeyi bozabilecek veya daha da kötüsü kodlayıcı arayüzüne zarar verebilecek iletim hattı etkilerine maruz kalmanın önlendiği uygulamalar için çok uygundur.

Diferansiyel çifti

[değiştir | kaynağı değiştir]
Artımlı kodlayıcı'dan diferansiyel çıkış dalga biçimleri

Diferansiyel RS-422 sinyalleme, genelde kodlayıcı yüksek frekanslar vereceğinde veya kodlayıcı arayüzünden uzakta bulunduğunda,[5][6] veya kodlayıcı sinyallerinin elektrik alanlarına veya ortak mod voltajlarına maruz kalabileceği durumlarda[5] veya arayüzün kodlayıcı ile arayüz arasındaki bağlantı sorunlarını belirlemesi gerektiğinde tercih edilir. Koordinat ölçüm makineleri, CNC makineleri, endüstriyel robot, fabrika otomasyonu ve uçak ve uzay gemisi simülatörlerinde kullanılan hareket platformları bunlara örnek verilebilir.

RS-422 çıkışları kullanıldığında, kodlayıcı her mantık çıkışı için bir diferansiyel iletken çifti sağlar; örneğin, "A" ve "/A", kodlayıcının "A" mantık çıkışını içeren aktif-yüksek ve aktif-düşük diferansiyel çifti için kullanılan tanımlamalardır. Sonuçta, kodlayıcı arayüzü, gelen RS-422 çiftlerini tek uçlu mantığa dönüştürmek için RS-422 hat alıcıları sağlamalıdır.[5]

Ana uygulamalar

[değiştir | kaynağı değiştir]

Artımlı kodlayıcılar, mekanik cihazların fiziksel konumlarını izlemek için kullanılır. Artımlı kodlayıcı, izlenecek cihaza mekanik olarak bağlanmıştır, böylece cihaz hareket ettikçe çıkış sinyalleri değişir. Örnekler: Mekanik bilgisayar fareleri ve iztoplarının topları, elektronik ekipmandaki kontrol düğmeleri ve radar antenlerindeki dönen miller.

Artımlı bir kodlayıcı takip etmez ve çıkışları mevcut kodlayıcı konumunu göstermez; sadece konumdaki artımlı değişiklikleri bildirir.[3] Sonuçta herhangi bir anda kodlayıcı konumunu belirlemek için, konumu "izleyecek" harici elektronik devreler kullanmak gerekir. Artımlı kodlayıcı arabirimi olarak bilinen bu harici devre, artımlı konum değişikliklerini sayarak konumu izler.

Artımlı konum değişikliğinin her raporunu aldığından ("A" veya "B" sinyalinin geçişi ile gösterilir), kodlayıcı arayüzü A ve B arasındaki faz ilişkisini dikkate alır ve faz farkının işaretine bağlı olarak yukarı veya aşağı sayar. Kümülatif "sayımların" değeri, izleme başladığından beri kat edilen mesafeyi gösterir. Bu mekanizma, çift yönlü uygulamalarda doğru konum takibi sağlar ve tek yönlü uygulamalarda AB kod geçişi yakınında titreşim veya mekanik titremeden kaynaklanacak yanlış sayımları önler.

Yer değiştirme birimleri

[değiştir | kaynağı değiştir]

Çoğu zaman kodlayıcı sayıları metre, mil veya devir gibi birimlerle ifade edilmelidir. Bu gibi durumlarda, sayım başına kodlayıcı yer değiştirme oranı ile çarpılarak sayım istenen birime dönüştürülür:

.

Genelde bu hesaplama, artımlı kodlayıcı arayüzünden sayıları okuyan bir bilgisayar tarafından yapılır. Örneğin, hareketin milimetresi başına 8.000 sayı üreten doğrusal artımlı kodlayıcı kullanıldığında milimetre cinsinden konum şu şekilde hesaplanır:

.

Artımlı bir kodlayıcı arayüzünün mutlak konumu izlemesi ve raporlaması için kodlayıcının sayımları onun bağlı olduğu mekanik sistemdeki bir referans konumuyla ilişkilendirilmelidir. Bu genellikle, mekanik sistemin (ve kodlayıcının) bir referans konumu ile hizalanana kadar hareket ettirilmesi ve ardından ilgili mutlak konum sayımlarının kodlayıcı arabiriminin sayacına atanmasından oluşan sistemin yuvaya getirme (homing) işlemiyle yapılır.

Hedef aramayı kolaylaştırmak için bazı mekanik sistemlere mekanik sistem "yuva" (referans) konumundayken sinyal veren bir yakınlık sensörü yerleştirilir. Bu gibi durumlarda mekanik sistem kodlayıcı arayüzü sensör sinyalini alana kadar hareket ettirilerek bu konumun üzerine denk gelen konum değeri konum sayacına atanır.

Bazı dönen mekanik sistemlerde (örneğin dönen radar antenleri), ilgilenilen "konum", bir referans konumuna göre dönme açısıdır. Bunlar genelde indeks (veya Z) çıkış sinyalli döner artımlı kodlayıcı kullanır. "İndeks" sinyali mil referans konumundayken verilir böylece kodlayıcı arayüzünün referans açısını konum sayacına atamasına neden olur.

Bazı artımlı kodlayıcı uygulamalarında referans konum dedektörleri yoktur ve bu yüzden başka yollarla hedef arama yapılmalıdır. Örneğin bilgisayar, fare veya iztopu işaretleme aygıtı kullanırken önyüklemede bir başlangıç ekran konumu varsayılarak aygıt yuvaya getirilir ve karşılık gelen sayılar X ve Y konum sayaçlarına atanır.

Elle çalıştırılan kumandalar (örneğin, ses seviye kumandası) olarak kullanılan pano kodlayıcılarda, ilk konum elektrik gücü açıldığında ve konum sayacına atandığında ve güç kapatıldığında, flaş bellekten veya diğer kalıcı bellekten alınarak mevcut konum sayısı bir sonraki çalışma için başlangıç konumu olarak hizmet etmek üzere kalıcı belleğe kaydedilir.

Hız ölçümü

[değiştir | kaynağı değiştir]
Bunun gibi mekanik konveyörler genellikle kapalı döngü hız kontrolü için geri besleme cihazları olarak döner artımlı kodlayıcılar kullanır

Artımlı kodlayıcılar genellikle mekanik sistemlerin hızını ölçmek için kullanılır. Bu, izleme amacıyla veya hareket kontrolü için geri bildirim sağlamak amacıyla veya her ikisi için yapılabilir.[5] Radar anten dönüşünün ve malzeme konveyörlerinin hız kontrolü ve robotik, koordinat ölçüm makineleri (CMM) ve CNC makinelerinde hareket kontrolü bazı çok kullanılan uygulamalardır.

Artımlı kodlayıcı arayüzleri öncelikle mekanik yer değiştirmenin izlenmesiyle ilgilidir ve genellikle hızı doğrudan ölçmez. Sonuç olarak hızın, konumun zamana göre türevi alınarak dolaylı olarak ölçülmesi gerekir. Konum sinyali doğası gereği nicemlenmiştir ve bu durum, özellikle düşük hızlarda niceleme hatası nedeniyle türevin alınmasında zorluk çıkarır.

Kodlayıcı hızı, kodlayıcı çıkış darbelerini (veya kenarlarını) sayarak veya zamanlayarak belirlenebilir.[7] Ortaya çıkan değer, hızın hesaplanabileceği sırasıyla frekans veya periyodu gösterir. Hız frekansla doğru orantılı, periyotla ters orantılıdır.

Frekansa göre hız ölçümü

[değiştir | kaynağı değiştir]

Konum sinyali örneklenirse (ayrı bir zaman sinyali), darbeler (veya darbe kenarları) arayüz tarafından algılanır ve sayılır ve hız, genellikle arayüze okuma erişimi olan bir bilgisayar tarafından hesaplanır. Bunu yapmak için bilgisayar, zamanında arayüzden konum sayımlarını okur ve daha sonra ‘i bulmak için zamanında sayıları tekrar okur. Daha sonra ‘dan ‘e geçen zaman aralığındaki ortalama hız hesaplanır:[2]

.

Ortaya çıkan hız değeri, birim zaman başına sayım (örneğin saniye başına sayım) olarak ifade edilir. Ancak pratikte hızın genellikle saniye başına metre, dakika başına devir (RPM) veya saat başına mil (MPH) gibi standart birimlerle ifade edilmesi gerekir. Bu gibi durumlarda yazılım, sayımlar ile istenen mesafe birimleri arasındaki ilişkinin yanı sıra örnekleme periyodunun istenen zaman birimlerine oranını da hesaba katar. Örneğin devir başına 4.096 sayım üreten ve saniyede bir kez okunan döner artımlı kodlayıcıdada, yazılım RPM'yi şu şekilde hesaplar:

.

Hız bu şekilde ölçülürken, ölçüm çözünürlüğü hem kodlayıcı çözünürlüğü hem de örnekleme periyodu (iki örnek arasında geçen süre) ile orantılıdır; Örnekleme periyodu arttıkça ölçüm çözünürlüğü de artar.[2]

Periyoda göre hızın ölçümü

[değiştir | kaynağı değiştir]

Alternatif olarak, darbe genişliği veya periyodu ölçülerek her kodlayıcı çıkış darbesinde bir hız ölçümü raporlanabilir. Bu yöntem kullanıldığında ölçümler belirli zamanlar yerine belirli konumlarda tetiklenir. Hız hesaplaması yukarıda gösterilenle aynıdır (sayım / zaman), ancak bu durumda ölçüm başlama ve durma süreleri ( ve ) bir zaman referansı ile sağlanır.

Bu teknik konum niceleme hatasını önler ancak zaman referansının nicelenmesiyle ilgili hatalara neden olur. Ayrıca faz hataları, simetri hataları ve geçiş konumlarındaki nominal değerlerden sapmalar gibi sensör idealsizliklerine karşı daha duyarlıdır.[8]

Artımlı kodlayıcı arayüzü

[değiştir | kaynağı değiştir]
PCI Express 6 eksenli artımlı kodlayıcı arayüzü.Input connectors for encoder signalsRS-422 line receiversFPGAPCI Express edge connector
PCI Express 6 eksenli artımlı kodlayıcı arayüzü. Yukarıdan aşağıya: giriş birleştiricileri (L) ve hat alıcıları (R); FPGA; arka panel birleştirici

Artımlı kodlayıcı arayüzü, artımlı kodlayıcıdan sinyalleri alan, mutlak konum ve diğer bilgileri üretmek için sinyalleri işleyen ve elde edilen bilgileri harici devrelerin kullanımına sunan elektronik devredir.

Artımlı kodlayıcı arayüzleri, ASIC'ler, FPGAlardaki IP blokları, mikrodenetleyicilerde özel çevresel arayüzler ve yüksek sayım hızları gerekmediğinde yoklamalı (yazılım izlenen) Genel Amaçlı Giriş/Çıkışlar (GPIO) dahil olmak üzere çeşitli şekillerde uygulanır.

Uygulamadan bağımsız olarak arayüz, bir sonraki durum değişikliği olmadan önce her AB durum değişikliğini bulmak için kodlayıcının A ve B çıkış sinyallerini yeterince sık örneklemelidir. Bir durum değişikliği tespit edildiğinde, A'nın B'nin önünde mi yoksa arkasında mı olduğuna bağlı olarak konum sayımlarını artırılır veya azaltılır. Bu genellikle önceki AB durumunun bir kopyasının saklanması ve durum değişikliği üzerine hareket yönünü belirlemek için mevcut ve önceki AB durumlarının kullanılmasıyla yapılır.

Hat alıcıları

[değiştir | kaynağı değiştir]

Artımlı kodlayıcı arayüzleri, kodlayıcı tarafından üretilen sinyalleri almak için çeşitli elektronik devre türlerini kullanır. Bu hat alıcıları, aşağı yöndeki arayüz devrelerini korumak için tampon görevi ve çoğu durumda sinyal şartlandırma da yapar.

Artımlı kodlayıcı arayüzleri, tek uçlu (örneğin, itme-çekme, açık toplayıcı) çıkışlı kodlayıcılardan sinyalleri almak için tipik olarak Schmitt tetikleyici girişlerini kullanır. Bu tür hat alıcısı doğası gereği düşük seviyeli gürültüyü (giriş histerezisi aracılığıyla) reddeder ve aşağı akış devrelerini geçersiz (ve muhtemelen yıkıcı) mantık sinyali seviyelerinden korur.

RS-422 hat alıcıları genellikle diferansiyel çıkışlı kodlayıcılardan sinyal almak için kullanılır. Bu tip alıcı, ortak mod gürültüsünü reddeder ve gelen diferansiyel sinyalleri, aşağı akış mantık devrelerinin gerektirdiği tek uçlu şekle dönüştürür.

Kritik görev sistemlerinde, kodlayıcı güç kaybı, sinyal sürücü arızası, kablo arızası veya kablo bağlantısının kesilmesi nedeniyle giriş sinyali kaybını tespit etmek için bir kodlayıcı arayüzü gerekli olabilir. Bu genellikle geçerli giriş sinyallerinin yokluğunu bulan ve bu durumu "sinyal kaybı" durum çıkışı yoluyla bildiren gelişmiş RS-422 hat alıcıları kullanılarak gerçekleştirilir. Normal çalışmada, giriş durumu geçişleri sırasında durum çıkışlarında hatalar (kısa darbeler) görünebilir; Tipik olarak kodlayıcı arayüzü, bu aksaklıkların yanlışlıkla kayıp sinyaller olarak yorumlanmasını önlemek için durum sinyallerini filtreler. Arayüze bağlı olarak sonraki işlemler, sinyal kaybının belirlenmesine kesme isteği oluşturulmasını ve hata günlüğü veya arıza analizi için uygulamaya bildirim gönderilmesini içerebilir.

Saat senkronizasyonu

[değiştir | kaynağı değiştir]
2-FF senkronizatör. Hat alıcısının çıkış sinyali Din'e uygulanır; Dout sinyali kareleme kod çözücüye gönderilir.
Yüksek saat frekanslarında, senkronizatörler bit hata oranını azaltmak için üç (bunun gibi) veya daha çok flip-flop kullanabilir

Artımlı kodlayıcı arayüzü büyük ölçüde bir saat sinyali tarafından hızlanan sıralı mantıktan oluşur. Bununla birlikte, gelen kodlayıcı sinyalleri arayüz saatine göre eşzamansızdır çünkü zamanlamaları yalnızca kodlayıcı hareketi tarafından belirlenir. Sonuçta, hem metastabiliteden kaynaklanan hataları önlemek hem de sinyalleri karesel kod çözücünün saat alanına zorlamak için A ve B (ayrıca kullanılıyorsa Z ve alarm) hat alıcılarından gelen çıkış sinyallerinin arayüz saatiyle eşzamanlı yapılması gerekir.[9]

Genellikle bu senkronizasyon, burada görülen iki flip-flop senkronizatörü gibi bağımsız, tek sinyalli senkronizatörler tarafından gerçekleştirilir. Çok yüksek saat frekanslarında veya çok az hata oranına gerek duyulduğunda, senkronizatörler kabul edilebilir derecede az bit hata oranına ulaşmak için ek flip-floplar içerebilir.[10]

Giriş filtresi

[değiştir | kaynağı değiştir]

Çoğu durumda bir kodlayıcı arayüzü, daha fazla işleme tabi tutulmadan önce senkronize kodlayıcı sinyallerini filtrelemelidir. Bu, motor uygulamalarında[11] yaygın olarak bulunan alçak-seviyeli gürültüyü ve kısa, büyük genlikli gürültü sivri uçlarını reddetmek ve mekanik tip kodlayıcılar durumunda, mekanik kontak sıçraması nedeniyle oluşan sayım hatalarını önlemek için A ve Byi geri döndürmek için gerekli olabilir.

Donanım tabanlı arayüzler genellikle kodlayıcı sinyalleri için programlanabilir filtreler sağlar, bu ise geniş bir filtre ayar aralığı sunar ve böylece gerektiğinde kontakları geri döndürmelerine veya gürültüden veya yavaşça dönen sinyallerden kaynaklanan geçişleri bastırmalarına olanak tanır. Yazılım tabanlı arayüzlerde, A ve B genellikle yazılım tarafından örneklenen (yoklama veya kenar kesintileri yoluyla) ve geri döndürülen GPIO'lara bağlanır.

  1. ^ a b Sensoray. "Introduction to Incremental Encoders". 18 Temmuz 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Temmuz 2018. 
  2. ^ a b c d e Craig, K. "Optical Encoders" (PDF). 10 Temmuz 2022 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 25 Temmuz 2018. 
  3. ^ a b c d "The Basics of How an Encoder Works" (PDF). Encoder Products Company. 23 Temmuz 2018 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 23 Temmuz 2018. 
  4. ^ "Encoder Basics" (PDF). ICS A/S. 3 Mart 2021 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 10 Haziran 2022. 
  5. ^ a b c d e "Encoder Primer" (PDF). NASA Infrared Telescope Facility (IRTF). Institute for Astronomy, University of Hawaii. 19 Eylül 2009 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 17 Ağustos 2018. 
  6. ^ "3 Steps to Specifying the Correct Encoder Output Type". Encoder Products. 20 Ağustos 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Ağustos 2018. 
  7. ^ Collins, Danielle. "How are encoders used for speed measurement?". Design World. 3 Ağustos 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 22 Eylül 2020. 
  8. ^ Petrella, Roberto; Tursini, Marco; Peretti, Luca; Zigliotto, Mauro. "Speed Measurement Algorithms for Low-Resolution Incremental Encoder Equipped Drives: a Comparative Analysis" (PDF). 16 Nisan 2021 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 22 Eylül 2020. 
  9. ^ Ginosar, Ran. "Metastability and Synchronizers: A Tutorial" (PDF). Israel Institute of Technology. 10 Aralık 2019 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 21 Ocak 2020. 
  10. ^ Donohue, Ryan. "Synchronization in Digital Logic Circuits" (PDF). Stanford Üniversitesi. 19 Ağustos 2019 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 21 Ocak 2020. 
  11. ^ "Quadrature Decoder/Counter Interface ICs" (PDF). Agilent Technologies. 23 Eylül 2010 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 20 Ağustos 2018.