17 Aralık 2012 Pazartesi

RF Alıcı / Verici modüllerle çalışmak


 RF Alıcı/Vericiler
Kısa mesafeli ve düşük hızlı kablosuz kontrollerde DORJI'nin modülleri oldukça kullanışlı.
Alıcı-verici modülleri sürmenin birkaç yolu var.

HT12E ve HT12D entegreleri ile 8 bit adreslenebilir verici-Alıcı yapabilirsiniz. HT12 dökümanlarında, uygulama örnekleri mevcut. Bu entegre doğrudan RF modüllere bağlanabilir ve fazla bir devre elemanı da gerektirmez.


Bu entegreleri kullanmak istemezseniz, herhangi bir PIC de kullanabilirsiniz.

Modüllerin PIC ile kullanımına ait basit bir 
örnek yapmak istersek;




Ben DORJI'nin modüllerini kullandım, benzer modüller piyasada kolaylıkla bulunabiliyor.
(Elimde daha önce almış olduğum Laipac firmasının TLP serisi modülleri, mesafe olarak dorji'nin modüllerinden 2-3 kat daha uzağa gidiyor.) genel olarak kodlama mantığı aynı. 

(Örnekler MicroPascal içindir)


Verici devresi:
Verici modülü PIC'in bir portuna bağlayın. (soft uart kullanıyoruz) Bu portu aşağıdaki şekilde tanımlayın.

Soft_Uart_Init(PORTA, 0, 1, 1200, 1); //PORTA.0 Rx (kullanılmıyor)
                                      //PORTA.1 Tx

                                      //1200 baud 
//eşzamanlama bilgisi
Soft_Uart_Write($AA); //10101010
Soft_Uart_Write($AA);
Soft_Uart_Write($AA);
Soft_Uart_Write($AA);
Soft_Uart_Write($AA);
Soft_Uart_Write($FF); //11111111
Soft_Uart_Write($FF);
Soft_Uart_Write($FF);
Soft_Uart_Write($FF);
Soft_Uart_Write($FF);
//data
Soft_Uart_Write(84);   //ascii T
Soft_Uart_Write(88);   //ascii X
Soft_Uart_Write(84);   //ascii T

Soft_Uart_Write(69);   //ascii E
Soft_Uart_Write(83);   //ascii S
Soft_Uart_Write(84);   //ascii T

Datadan önce eşleme bilgisini göndermek gerekiyor, sonra istediğiniz uzunlukta
data gönderebilirsiniz. Tek yönlü haberleşmede "data alındı" bilgisi alamayacağınızdan, periyodik olarak dataları göndermek daha iyi. Paketlerden biri kaybolsa da, diğeri ulaşacaktır. Paket gönderme arasındaki süreyi de deneyerek en aza indirebilirsiniz.

Preamble/senkron kullanımı konusunda nette detaylı bilgi bulabilirsiniz.
(bu konuda UDEA firmasının dökümanlarından da faydalanabilirsiniz. bakınız)

Alıcı devresi:
Alıcı modülü PIC'in bir portuna bağlayın.

Soft_Uart_Init(PORTA, 0, 1, 1200, 1); //PORTA.0 Rx

kontrol_byte1 := Soft_Uart_Read(err);
kontrol_byte2 := Soft_Uart_Read(err);


//T ve X dataları ard arda alınmışsa, 4 byte data al
if (kontrol_byte1 = 84) and (kontrol_byte2 = 88) then begin
   for i:=0 to 3 do    

      data[i] := Soft_Uart_Read(err);
end;


Ben kablosuz sıcaklık sensörü için bu şekilde kullanıyorum.
Verici modülde dikkat edilmesi gereken; anten devreye çok yakın ise, PIC'in RF sinyalinden etkilenmesi mümkün olabiliyor. Devreyi metal bir kutuya koyarak veya PIC'e ekranlama yaparak bunun önüne geçilebilir.

Modüllerin dökümanlarına, alttaki linklerden ulaşabilirsiniz.


http://www.dorji.com/docs/data/DRA887TX.pdf
http://www.dorji.com/docs/data/DRA887RX.pdf

12 Aralık 2012 Çarşamba

ELM327 ile OBDII haberleşmesi


Araçların, arıza kodu, anlık veri vs. gibi bilgilerini aşağıdaki devre ile izleyebilir,
hataları silebilirsiniz.
Aşağıda, ELM327 devre şeması mevcut, yeni model araçlar, CAN protokolünü desteklediğinden, devrenin 
tamamını yapmanıza gerek yok. (ISO ve J1962 bağlantıları)
Ancak piyasada çok uygun fiyatlara (ELM entegresini orjinalinden daha ucuza) hazır devreler bulmak mümkün. Devreyle uğraşmak istemiyorsanız, hazır modüllerden birini alabilirsiniz. Bunlar RS232 kablolu veya bluetooth'lu olabilir.



Resimde görülen modül ve benzerlerini 15-20$ civarında bulabilirsiniz.
Devreyi yapmak isteyenler için de şema aşağıda. 




Bazı markalarda farklılık gösterse de genelde OBD2 soketi ve bağlantıları aşağıdaki gibidir.


ELM327 için PC ve Android tabanlı yazılımlar mevcut. Tablet PC veya cep telefonlarında
Torque pro yazılımı kullanabilirsiniz. PC için de Scan Master yazılımı oldukça başarılı.

Harici bir yazılımla kullanılabileceği gibi, kendi yazılımınızı geliştirmeniz (veya bir mikrokontrolcü ile ELM'den bilgi almanız) mümkün. Bir PIC ile araca ait bazı bilgileri okuyup bir ekrana yazdırabilirsiniz.

Her araçtan tüm veriler okunamayabiliyor ancak genel olarak temel anlık verileri almak mümkün.



torque pro uygulaması


scan master yazılımı

 
ELM327 üzerinden kendi kodunuzu yazarak, ihtiyacınız olan verileri alabilirsiniz.
Yazının sonraki bölümlerinde, OBD portuna bilgi gönderme ve okuma konusunda detaylı bilgi bulabilirsiniz.