Q-matic Baglantı & Calışma mantığı

Başlatan M_B, 21 Mart 2012, 08:57:48

M_B

Merhabalar;

Elime 7-8 tane Cıkma Q-matic Displaylerden geçti.
Bunları nasıl aktif hale getirebilirim. Veya kendinden bagımsız bir veya bir kaç displayi tek başlarına çalıştırıp ekrana yazı yazdırabilirmiyim.
Q-matic konusunda hiç bilgi sahibi değilim.  Q-matic uzerine çalışmış arkadaşlardan bilgi ögrenebilirmiyim.

Teşekkürler

Kart üzerinde 
Atmel işlemci  TS87c58x2..
Ram
24c02 Eeprom
ve 4094 ve transistor ve regulatorler var.





İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

bymrz

Hocam bunlar 485 ile mi çalışıyor ethernet ile mi? Bir de soketlerin olduğu yerin zıt tarafında ince uzun konektör gibi bir şey var. O nedir?

Gerçi soruya soru oldu ama :)

M_B

#2
Alıntı yapılan: alone_lover - 21 Mart 2012, 12:10:09
Hocam bunlar 485 ile mi çalışıyor ethernet ile mi? Bir de soketlerin olduğu yerin zıt tarafında ince uzun konektör gibi bir şey var. O nedir?

Gerçi soruya soru oldu ama :)
Hocam bunları ben sokmedıgım ıcın neyle calıstıgını bılmıyorum ama soketler RS-485 soketten.
PCB tarafından bakınca Sarı gıbı seyı dıyorsan Bobine yakın olan ( Kırmızı sıvıcın sırasında ) O LM2576 turu entegrenin sogutucusu.

NOt: 2 tane RS-485 soketi var.  (Sag ve sol kısımda ortada da kırmızı sivic )

Tahmınimce birisi ana girişi
digeri ise Buton devresine gidiyor

İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

elektrotasarim

Merhaba,
Q-Matic'in PC yazılımı varsa RS485 bağlantısı ile display'e birşeyler yazdırabilirsin. Daha sonra protokolü çözüp kendi PC yazılımınla display'e yazı gönderebilirsin. Böylece işlemciye hiç kod yazmadan display'i çalışır duruma getirebilirsin.
Eğer PC yazılımı yoksa üzerindeki Atmel'e yazılım yapman gerekecek. Bunlardan bir ara elime geçmişti. Devre yapısını tam hatırlamıyorum ama klasik satır-sütun mantığıyla çalışması gerekiyor. 9 tane büyük transistör 9 satırı sürme amaçlı kullanıyor olmalı.
Üzerindeki EEPROM da çok büyük ihtimal display adresi ve değişik tipteki fontları tutuyor.
RS485 konnektörleri paralel, birinden data girip diğerinden başka bir display'e geçiş yapıyor.

M_B

@elektrotasarim hocam;
Elimde Displeyler dısında hiç bir şey yok.

Soketler RS-485 tur demiştim, Şimdi kontrol ettim. RS-485 un bir ufağı. Yanı network kablosu sokete girmedi.
Bu arada soket 6 pinliymiş.
Pin baglantılarını ve Haberleşme protokolunu bilsem bir şeyler yapılır diye dusunuyorum.

İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

elektrotasarim

Ufak bir not daha, 6 pinli soket hem RS485 hem besleme gerilimi için kullanılıyor olmalı.
Naçizane görüşüm, RS485'i bir kenara bırakıp devreye enerji vermekle (tabii ki doğru pinleri bularak) başlanabilir. Enerji verdiğinde display'de default bir yazı çıkabilir. Mesela display ID'si gibi.

Ersin

Alıntı YapSoketler RS-485 tur demiştim
RJ45 olacaktı herhalde

OG

Önemli olanı işlemcisine hükmedebilmek, aksi halde bir işe yaramaz.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

M_B

Alıntı yapılan: OG - 21 Mart 2012, 19:57:10
Önemli olanı işlemcisine hükmedebilmek, aksi halde bir işe yaramaz.
Evet Hocam ;
O yuzden bu displaylerin bir iletişim protokolu vardır dıye sormak istedim. ( Hepsi RJ-45 ile baglı olduğu için.)
Bir bakıma komut seti gibi. Onemli olan onu bilebilmekte.
İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

arslan74

Eğer displaylerin içinde yazılım yazmadan kendi yazılımıyla kullanmak istiyorsan. Bunların iletişim protokolleri vardır. Bu aletin iletiişim protokolleri kendine özgü olacağından, kullanmak için bu protokolü anlatan bir dökümana ihtiyac vardır.
Eğer sadece Hazır kartı kullanmak istiyorsan o zaman bu devrenin devre şemasına ihtiyacın var. Bu devre şemasını PCB üzerinden ölcerek cıkartabilirsin. Bizaz zor olacak ama yapabilirsin. Sonra hensin bu şemaya göre kendi amaçalına göre yeniden yazılım yazabilirsin. Tabi bunun işlemcisi PIC olmadığına göre kullanılan işlemcisini tanıman gerek.

Selamlar

bymrz

Tahmin ediyorum ki, bu displayi varsayalım kendi programıyla çalıştırdınız... O şekilde seri portu dinlediniz... Ve ne gönderiyor ona bakayım dediniz.. Orda duruyosunuz işte.. Çünkü genelde bu tarz ürünlerde, basit bir şifreleme(XOR) oluyor... Bu nedenle de ne gönderildiğini görseniz de pek işe yaramıyor. Gerçi yarar ama uzun iş...


hibeyup_44

Konu Bayaa eskiymiş ama cevap verebileceğim bir iki nokta var.
konnektör 4 pinli ise 2 si besleme 2side Rs485 in A-B uclarıdır
aynı konnektörden iki tane olması normaldir ve bunlar birbirine paraleldir, çünkü bu tarz haberleşmede paralel için birdaha kablo bağlantısı yapmamak için yapılır. Örneğin o displayin bir keypad i vardır bu keypadi direk Rs-485 terminale kadar kablo çekmek yerine direk displayin üzerindeki paralel olan konnektöre takılabilir.

Displayler slave çalışan cihazlar olduğu için PC ye bağlasanızda bir haberleşme kodu göndermezler, mesala tıbbi cihazlardaki gibi haberleşmeyi başlatmak için bir ACK kodu istemezler sadce gelen veriyi uygularlar, tabi keypadler de işler biraz farklı  ;D

Çözmüş ve yazılımını devreye aldığım 110 Display ve 50 keypad li bir sistemden bir örnek vereyim;

Orta Vektöre mesaj göndermek için şöyle bir asci cod gönderilmesi gerekiyor.


Chr$(0) + Chr$(0) + Chr$(217) + Chr$(1) + Chr$(Display ID) + Chr$(1) + "Mesaj"+ Chr$(0) + Chr$(247)

Display ID byte(0-255) bir değerdir, büyük bir ihtimalle ilk açılışta zaten ıd numarsını verecektir ve arkadaki bir butonla bunu artırabilirsiniz.
mesaj string ve kullandığım fonta göre büyük harf ve tr karektr desteklemiyordu. bunun için biraz cpuyu güncellemem gerekti :)

Derdim mi? Yeterki bu memleket teknoloji ithal etmesin...

iyildirim

Bir iki ay önce yazdığımız yazılıma entegre etmek için Qmatic ile benim de uğraşmam gerekti. P10 panelleri de düşündüm ama mekanik işçilik kablolama vs. yüzünden tercih etmedim.

Q-matic protokolünü çözerim basittir diye düşünmüştüm ama Panellere font tablosu vs de PC den yükleniyor gibi gördüm ve o kadar  kalabalık ve tekrarlanan veri var ki uğraşmak zor geldi.

Ben de üzerindeki 8051 cinsi olduğunu sandığım işlemci, RAM, eeprom vs yi söküp işlemcinin işlemci boyutuna yakın minik bir PCB ile eski işlemcinin bacaklarına uydurarak bir 18F mcu taktım. Fazla fazla yetti. 8 adet pine bağlamak yeterli oluyor.
Basit bir satır taramalı panel + seri iletişim kodu ile gayet güzel çalıştı. İlgilenen olursa paylaşırım.

Etiketler için bir tablet ve Yazıcı olarak da eldeki bir termal yazıcıyı kullandık.  Ama yazıcıya düzgün bir panel vs. gerekiyor.  Yapılan içime pek sinmedi. 

@hibeyup_44 elinizde yazıcı ile ilgili bilgi varmı. Yazılım dili, format komutlar vs. Yada sadece etiket bilgisi. Copy paste de olur.  Belki panel vs. kutu vs. ile uğraşmak yerine  eski yazıcının paneline sadece tablet takarak kurtarabilirim.

M_B

Alıntı yapılan: iyildirim - 20 Kasım 2013, 21:25:01

Basit bir satır taramalı panel + seri iletişim kodu ile gayet güzel çalıştı. İlgilenen olursa paylaşırım.
Hocam benim elimdekiler hala duruyor bir işlem yapmadım. Bende sizin gibi dusunmustum ama semasını cıkarmak zor gelmişti. PCB cift taraflı Ledler smd ve ıkı renkli
Sizinkinin baglantıları bana uyarmı ?
Hocam pcb nin resmi var mı benimki ile karşılaştırmak icin
İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

iyildirim

Resim çekmiştim ama sadece söktüğüm parçalara ait bölüme ait.

Bendeki de iki renkli olabilen ama tek renk dizilmiş 24x9 paneldi. Arka arkaya bağlanabiliyorlar.  Paneller 2003-2008 arası tarihli. Tek farkları eskilerde atmel daha yeni olanlarda philips mcu var.

Ara bağlantı pinlerinin ne olduğunu da not etmiştim. 1 Üst taraftaki pin olmak üzere şöyle not almışım.
1 +20V
 2 GND
 3 RED LED COLS OE
 4 GİRİŞ COLS İLK 4094 DATA   ÇIKIŞ RED LED COLS SON 4094 QS2 KASKAT İÇİN
 5 GİRİŞ COLS İLK 4094 DATA   ÇIKIŞ BOŞ LED COLS SON 4094 QS2 KASKAT İÇİN
 6 ROWS İLK 4094 DATA
 7 RED LED COLS CLOCK 
 8 BOŞ LED COLS CLOCK
 9 ROWS CLOCK
10 ROWS STROBE 
11 ROW MOS DRAIN
12 ROW MOS DRAIN
13 ROW MOS DRAIN
14 ROW MOS DRAIN
15 ROW MOS DRAIN
16 ROW MOS DRAIN
17 ROW MOS DRAIN
18 ROW MOS DRAIN
19 ROW MOS DRAIN
20 BOŞ LED COLS OE 
21 LED VCC REG OUT 
22 LED VCC REG OUT 
23 LED VCC REG OUT
24 +5V 
25 GND
26 GND


RJ-11 soket ise karta malzeme tarafından bakarken soket solda iken en üstten, +20V, GND, RX şeklinde. 

İletişim panellerde tek yönlü. Paneller ve diğer terminal, yazıcı vs paralel, hatta  yıldız bağlanmış.
Ben  VDD ve GND dışındaki pinlerin herhangi bir çiftinde RS-485 cinsi diferansiyel bir sinyal göremedim. RS-232 diye düşündüm.
Ama Sinyal seviyesi invert edilmiş şekilde.
Yani IDLE +18-20V gibi ve gerilim negatife geçmiyor. Gerilim bölücü veya max232 ile sinyal mcu ya girilebiliyor. mcu da UART modülüne sinyalin invert edildiğini söylemek yeterli .


Tam bir şema çıkarmakla uğraşmadım.
Tarama mantığınının nasıl olabileceğini ve bunun da mcu ile kontrol edildiğini düşününce satır ve sütünlara ait shift registerlerin clock-strobe-data-OE uçlarının hangi mcu pinlerine ait olduğunu buldum o kadar.  Birde ledleri besleyen 5V smps in on-off pini var.
Bir tek ikinci renk ledleri süren sütunlardaki 4094 ler ile uğraşmadım. Onlarında clock-data-strobe-OE uçlarının bulunması gerekir. 


Shift registerlere data gönderirken çıkışlarının disable edilmesi gerekiyor.
Bendeki paneller 2003-2008 model. Ve sanırım o zamanlarda logic level mos olmadığı için yada pahalı olduğundan mos ları doğru sürebilmek için ledler aktif edilince 4094 lerin GND ve VDD lerine 3V gibi bir voltaj bindiriliyor. Dolayısı ile ledler aktif iken 4094 leri HIGH seviyede süremiyorsunuz.