Gönderen Konu: K3NG ARDUINO ROTATOR YAZILIM HK.  (Okunma sayısı 858 defa)

Çevrimdışı TA8AT

K3NG ARDUINO ROTATOR YAZILIM HK.
« : 08 Eylül 2019, 12:18:29 »
Yazımı okuyan herkese merhaba.
K3NG' ün arduino ile yaptığı azimuth ve elevation özellikli rotor kontrol devresini uzun zamandır arkadaşlar ile yapmaya çalışıyoruz bir türlü çalıştırmayı başaramadık.

Soruma gelince orjinal yazılımı mega 2560'a yükledim 2×16 lcd den görüntü dahi alamadım yerine 3.2 ve 3.5inch lcd taktım yine olumsuz bir şekilde roleleri kontrol dahi edemedim.
Sonrasında arduino uno ve nano ile sitedeki şemayı birebir uyguladık yine başarısız olduk.

Bu devreyi daha önce yapıp kullanan arkadaşım olduysa çalışan yazılım ile bu yazılıma ait şemayı paylaşırsa memnun olurum. Gördüğümüz bir çok amatör kendine göre yazılımda birtakım değişiklikler yapmışlar ve paylaşmışlar ama ortada bilgi karmaşası ve uyumsuzluklar oluşmuş durumda.
100nf adlı sitedeki yazılımı sağolsun Hüseyin bey göndermişti lakin bana aynı zamanda elevation vb k3ng nin yazılımındaki özellikleride ihtiva eden çalışan kodlar lazım.

Yardımcı olacak arkadaşlara çok teşekkür ederim.
I LOVE İCOM

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #1 : 08 Eylül 2019, 13:48:54 »
defalarca yaptim
hatta gecen hafta bir tanesinin daha yapimina basladim.
2x16 (i2c) bir ekranla da calisan bir tane var su anda elimde
4x20 ile de calisani var.

Acikcasi hic ozel birsey de yapmadim.
4x20 olani sandart baglanti ile bagladim.. (semada gosterilen gibi)
daha sonra kullanmis oldugunuz ekran turune gore
(standart baglantida )
rotator_k3ngdisplay dosyasindan #define FEATURE_4_BIT_LCD_DISPLAY secenegini aktif yapiyorsunuz

ya da i2c ekran icin
#define FEATURE_RFROBOT_I2C_DISPLAY  secenegini aktif yapiyorsunuz


eger standart 4 bit ekran kullaniyorsaniz
rotator_pins dosyasindaki pinleri kontrol edin
//classic 4 bit LCD pins
#define lcd_4_bit_rs_pin 12
#define lcd_4_bit_enable_pin 11
#define lcd_4_bit_d4_pin 5
#define lcd_4_bit_d5_pin 4
#define lcd_4_bit_d6_pin 3
#define lcd_4_bit_d7_pin 2


bir de rotoator setting dosyasindan
ekran karakter sayilarinin dogru olup olmadigini kontrol edin
#define LCD_COLUMNS 16 //16
#define LCD_ROWS 2 //2   



roleleri kontrol etmek ve ekrandan goruntu almak tamamen farkli.

attachment olarak bendeki calisir vaziyetteki ino'yu paylasiyorum.

2x16 i2c ekran  moon ve gps kontrolleri de acik. lazim degilse kapatirsiniz.

https://yadi.sk/d/p71qKpokxcHkww


Çevrimdışı TA8AT

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #2 : 08 Eylül 2019, 14:32:30 »
Oğuzhan bey verdiğiniz bilgiler doğrultusunda yeniden yükleme yapıp deneyeceğim. 73
I LOVE İCOM

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #3 : 08 Eylül 2019, 16:52:52 »
Tecrubelerime gore en kolay montaj ve kullanim i2c tipi olanlar ile oluyor
2x16 da olsa 4x20 de olsa i2c calisanindan alin.. 4 kabloyla isi bitirin derim ;)

Led'ine ayri kablo beslemesine ayri kablo , goruntu aktarimina ayri kablo ugrasmaya gerek yok

Çevrimdışı TA8AT

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #4 : 08 Eylül 2019, 17:57:39 »
Bu yazılımla aynı anda 4 arkadaş uğraştık. Bir arkadaşım bahsettiğiniz lcd yi yazılımdan aktif etmiş görüntü almıştı. Lakin hiçbirimiz 4 lü  role  kartını şemadaki gibi bağlamamıza rağmen kontrol edemedik.
Verdiğiniz ino dosyasını yarın ilk işim yükleyip bord üzerinde denemek olacak. 
I LOVE İCOM

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #5 : 08 Eylül 2019, 23:49:52 »
Bendeki 4lu role karti baglantisi su sekilde..
https://www.direnc.net/12v-4-kanal-role-karti?lang=tr&h=41aca2ce&gclid=CjwKCAjwzdLrBRBiEiwAEHrAYiJOpB8TJCi5Aw-adZTkDABL7btMvwHPHn82B47wJvdr-wBp1DxJEhoC0Y0QAvD_BwE   adresindekine benzer 12v bir role karti kullaniyorum.

Oncelikle board uzerindeki jumperi cikarip, jd-vcc yazan yere 12v uyguladım..
bu voltaj role beslemesi icin gerekli voltaj..

Daha sonra,
rotator_pins dosyasindan

#define rotate_cw 6              // goes high to activate rotator R (CW) rotation - pin 1 on Yaesu connector
#define rotate_ccw 7             // goes high to activate rotator L (CCW) rotation - pin 2 on Yaesu connector

  #define rotate_up 8               // goes high to activate rotator elevation up
  #define rotate_down 9             // goes high to activate rotator elevation down

kısmında role kontrolu icin arduino'daki hangi pinleri kullanacagimi girdim. default'ta 0 olarak geliyor.. bir pin girmezseniz roleyi kontrol edemez..

Role'nin uzerindeki kontrol pinlerini arduino tarafındaki ilgili pinlere bagladim..
Ayrica role kartindaki VCC ve GND uclarini da arduino ustune bagladim. Buradaki besleme 5V oldugu icin arduino uzerinden direkt beslenebiliyor.

Eger aldiginiz role karti 12 degil de 5V rolelerle calisan bir turu ise, ustte bahsettigim jumper'i sokmenize gerek yok.. Buradaki 5V uzerinden beslenmeye devam eder.

Buraya kadar yaptiysaniz, arduinoya kodu yuklediginizde role kartindaki tum isiklarin yandigini goreceksiniz.
Bunun sebebi, ayarlarda pasifken high, aktifken low olacak sekilde geliyor.

ben oyle tercih etmedigim icin, rotator_settings dosyasinda

#define ROTATE_PIN_INACTIVE_VALUE HIGH
#define ROTATE_PIN_ACTIVE_VALUE LOW

seklinde degisiklik yaptim.

Bu sekilde rolelerin calismamasi icin hic bir neden kalmaz.
Muhtemelen pin degerleri girili degildir.
benzer sekilde,
#define button_cw A3              // normally open button to ground for manual CW rotation (schematic pin: A2)
#define button_ccw A6             // normally open button to ground for manual CCW rotation (schematic pin: A3)


gibi dondurmek icin gerekli pinlerin de girili olduguna emin olun.


Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #6 : 08 Eylül 2019, 23:57:55 »
bunlar da yeni calismam..
Bu sefer bir uydu alici kutusuna yerlestirdim.Uydu alicisinin dugmelerini de yon icin kullanabiliyorum.
Ama niyetim 4x20 ekrana gecmek. biraz ekran tasacak ama onemli olan islevi.

Ayrica bir baglanti ile GPS uzerinden sync yapmaktayim. Boylece tek dugme ile ay takip moduna gecip , hic pstrotator kullanmadan EME yapabilme sansim olacak.

Board ustundeki diger parca downconverter bir guc kaynagi.
12V u 9V a indirip arduino yu onunla calistiriyorum
Rotor beslemem de 12v oldugu icin tek PS girisi ile hepsini halledeyim dedim
« Son Düzenleme: 08 Eylül 2019, 23:59:09 Gönderen: TA2NC »

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #7 : 09 Eylül 2019, 14:20:07 »
k3ng nin semasini baz alarak hazirladigim kucuk bir anlatim yayinladim blogumda.

https://ta2nc.blogspot.com/2019/09/anten-rotator-kontrol-projesi-k3ng.html   adresinden bakabilirsiniz.


İyi çalışmalar.

Çevrimdışı TA8AT

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #8 : 09 Eylül 2019, 23:14:00 »
Oğuzhan bey öncelikle yazılım hakkında düzeltilmesi gereken yerler hakkında bilgi verdiğiniz için çok teşekkür ederim. Sayenizde k3ng rotator devresini çalıştırmayı başardım.
Bahsettiğiniz gibi elevation kısmınıda aktif ettim.

Yazılımsal olarak bir hatamı var benmi yanlış anlıyorum.
Öncelikle 1k potun bir bacağına artı 5 volt diğer bacağınada eksi verdim, orta ucuda 1k dirençle mega 2560 ın AN0 girişine girerek azimuthu, ikinci bir pot ilede aynı yöntemle AN1 girişine girerek elevationu bağlamış oldum.

1'inci gördüğüm hata; azimuth potu tam sıkılı iken azimuth değer 180 dereceyi sonra yavaş yavaş çevirdiğimde 360 dereceye ulaşınca pot henüz orta değerde iken birden 0 dereceye düşüyor. Aynı potu ayar işlemine devam edince 0 dan 270 dereceye kadar çıkıp ayar bitmiş oluyor. Elevation potu için böyle bir durum söz konusu değil zira  0 dereceden 180 dereceye kadar düzgün ayar yapıyor. Ama azimuth için böyle bir düzensiz çalışma var. Normal şartlarda rotor 0 dan başlayıp 450 dereceye kadar dönmesi gerekmezmi? Burada azimuth 0 dan 450 dereceye kadar ayar işlemini yapmıyor.

2'nci gördüğüm hata; azimuth için manuel butona basınca  ekranda (CW-CCW) dönüş yönüne göre yazıyor lakin ekranın bir alt satırında elevation için dereceyi gösteriyor. Yani rotoru sola çevirdiğimde bir yöndende potun konumunu değiştirince azimuth derecesinin potu işlem yapmıyor elevation için pot işlem yapıyor. Yani manuel sağ sol dönüşlerde azimuth dereceleri çalışmıyor.

Bu gördüğüm hatalar sizdede mevcutmu yoksa bir yerlerde hatamı yaptım.
I LOVE İCOM

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #9 : 10 Eylül 2019, 09:30:29 »
Bir yerde hata yapmissiniz.(COk net soyledim sanirim)

Oncelikle.. ayar dosyalarindan birinde azimuth start degrees gibi bir parametre vardi. orasi default 180. o yuzden sizin calisma da 180 den basliyor. Ayrica rotor 360 derecelik mi 450 derecelik mi o da ayarlanabiliyor. default degerler yaesu rotorlara gore..
Onlarin 0 noktası 180 derece, ve overlap yapip 450 dereceye kadar donebiliyorlar. Kendi rotorunuza gore bunlari ayarlamaniz lazim.

Ayrica, projenin web sayfasinda arduino ya direkt verebileceginiz bazi komutlarla baslangic, pot'Un o anki degeri gibi hassas ayarlari yapabildiginiz \a\z\e vs gibi bir cok komut var.
Buradan gercek yerinde ayar yapmaniz mumkun oluyor.
Hatta abartmislar, cihaza gps bagli ise, anteninizi manual olarak direkt gunese ya da aya cevirip , kalibre et dediginizde otomatik gercek degere gore kalibre bile ediyor

Yukarıda azimuth potu hatali deger gosteriyor demissiniz (0-450 arasi) ama altta azimuth hareket edince elevation degisiyor demissiniz. anlamadim. Ama yazilimda bir sorun olmadigini gonul rahatligiyla soyleyebilirim.
Ya yanlis pinlere bagli, ya da ekrandaki bilgiyi yanlis yorumluyorsunuz.
2 satir ekran oldugundan ekranda hangi degerlerin gorunup gorunmeyecegi, hangi sirayla gorunecegi gibi seyler de konfigure edileibliyor.
Biraz daha ayarlar ile oynayin derim

Çevrimdışı TA8AT

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #10 : 10 Eylül 2019, 10:09:07 »
Manuel butonlarla çevirdiğimde azimuth dada elevationdada farketmiyor ekranda elevation derecesini okuyorum. Dediğiniz gibi 2×16 lcd kullandığımdan dolayı bu sorun olabilir. Sanırım 4×20lcd bu proje için daha ideal olacak.
I LOVE İCOM

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #11 : 10 Eylül 2019, 10:13:49 »
degistirilmesi gereken degerler
#define AZIMUTH_STARTING_POINT_DEFAULT 0
#define AZIMUTH_ROTATION_CAPABILITY_DEFAULT 360

bu degisiklikler ile kaydedin.

daha sonra arduino'nun seri baglantisini acin. (arduino yaziliminda sag ust kosede buyutec benzeri bir ikon var.. orasi)

\E komutunu verip epromu silebilirsiniz. boylece yeni ayarlari yukler.

https://github.com/k3ng/k3ng_rotator_controller/wiki/820-Command-Reference  adresinde tum komut seti var.


\E  Epromu silip tum parametreleri tekrar okur (rotor tipi baslangic degerleri vs)

https://github.com/k3ng/k3ng_rotator_controller/wiki/500-Heading-Calibration  adresindeki gibi kalibrasyon da yapabilirsiniz.


Once O harfine (pesinden entera) basin. potansiyometreyi saat yonu tersinde sonuna kadar cevirin
Enter 'a basin
^
SOnra F ye basin(entera basin)
Potu saat yonunde sonuna kadar cevirin
Enter'a basın

Boylece potansiyometre'nin en dusuk ve en yuksek degerleri icin kalibrasyon yapmis oldunuz.


Bu degerler tabii yukarida tanimladigimiz

AZIMUTH_STARTING_POINT_DEFAULT 0  degerine gore.

Misal, asagida herseyi ayarladiniz.. Yukari rotorunuzu cikardiniz. Ama potansiyometrenin 0 noktası yani rotorun en sola donuk hali 0 dereceye degil de 45 dereceye geldi...
Once konfigurasyon dosyasindan
AZIMUTH_STARTING_POINT_DEFAULT  45 yapiyoruz (boylece rotorun baslangic noktasini belirtiyoruz)
\E komutu gonderip epromu sifirliyoruz.. Yeni degere gore calisiyor..

Artik controller uzerindeki 0 noktasında 45 derece yaziyor olacak.
Anteniniz 46 dereceden baslayip, saat yonunde donup 44-45 derecede tam turu bitirecek.




Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #12 : 10 Eylül 2019, 10:15:56 »
Manuel butonlarla çevirdiğimde azimuth dada elevationdada farketmiyor ekranda elevation derecesini okuyorum. Dediğiniz gibi 2×16 lcd kullandığımdan dolayı bu sorun olabilir. Sanırım 4×20lcd bu proje için daha ideal olacak.

Ekranda nelerin gorunup nelerin gorunmeyecegini rotator_features dosyasindan gorebilirsiniz

#define OPTION_DISPLAY_STATUS
#define OPTION_DISPLAY_HEADING   
haricindekileri kapatip bir de oyle deneyin.
2x16 da o sekilde ben kullanabiliyordum.

(extra
#define OPTION_DISPLAY_HEADING_AZ_ONLY
#define OPTION_DISPLAY_HEADING_EL_ONLY

secekenkleri acik olmali .. basina // koyup iptal edin)


Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #13 : 10 Eylül 2019, 10:46:23 »
bu arada soyle birsey soyleyeyim.
siz cihazi bir rotator a bagladiniz mi yoksa resimdeki gibi potansiyometreler ile mi test ediyorsunuz?

Eger potansiyometre ile ise,
CW/CCW dugmelerine basmaniz sirasinda ekranda CW/CCW yazisi gorursunuz sadece.

Dugmeye basmasaniz bile potansiyometre'den antenin o anda baktigi yonu gorursunuz.
Yani dugmeye basmakla o deger sadece rotor donuyorsa degisir.

Nereye dondugu bilgisini ancak seri porttan su dereceye don komutu gonderirseniz (ya da pstrotator gibi bir programla controller a baglanip yon belirtirseniz) gorursunuz.

Benim gonderdigim resimdeki CW 221 yazisi bilgisayar uzerinden donecegi dereceyi cihaza gonderdigim icin cikmakta.
Normalde manual dugmeye basinca sadece CW/CCW UP/DOWN cikiyor
Asagidaki az /el kismindaki deger de anten donuyorsa degisiyor

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #14 : 10 Eylül 2019, 10:49:21 »
Not uzerine not oldu ama, sizin test fotonuza bakinca daha iyi anladim sorununuzu.
Aslinda bir sorununuz yok..hersey olmasi gerektigi gibi calisiyor.

Ekranda azimuth ve elevation'u goster demissiniz..
Birinci satirda Azimuth bilgisi
İkinci satirda Elevation var.

Siz manual dugmelere basinca 1. satırda yaptiginiz islemi yazar.. o yuzden ust satir kayboluyor.. altta kalan elevation'u goruyorsunuz sadece.. Halbuki o sirada azimuth mevcut..sadece siz gormuyorsunuz..

Yukarida yazdigim ekranda gosterilecek bilgi ile ilgili degisikligi yaparsaniz hem azimuth hem elevation'u 2. satirda goreceksiniz.
boylece 1. satirda cikan cw  up down gibi yazilar yuzunden degerleri okuyamama sorununuz kalmayacak

Çevrimdışı TA8AT

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #15 : 10 Eylül 2019, 11:09:52 »
En iyisi dediğim gibi 4×20 lcd. Ben şuan için yaesu g 1000 rotoruma bağlamadım ama arduinoya manuel komut verdiğimde aynı anda dönüyormuş gibi komut vermek için ilgili potansiyometreyi çevirerek denemeler yaptım sonuçta aynı mantık. Program hakkında iyice bilgi sahibi olmuşsunuz sağolun beni fazla uğraştırmadan gerekli düzeltmeleri yapıp verdiniz. 
I LOVE İCOM

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #16 : 10 Eylül 2019, 11:30:05 »
Dogrudur.
Programda bazı kod degisiklikleri bile yapip kendi istegime gore modifiye edecek durumdayim su an

En son , Ay takibi icin bir degisiklik yaptim.
Bu cihaz yaklasik 5 saniyede bir ayin pozisyonuna gore rotoru yonlendiriyordu.
Ancak, EME yaparken hicbir gurultuye tahammulu olmuyor sistemin.
Bu yuzden JT65'in ilk 50 saniye TX yapip sonraki 10 saniye hesaplama yaptigini dusununce, rotorun ay takip hareketini her dakikanin son 10 saniyesi yapacagi sekilde bir duzeltme yaptim kodda.

Boylece gonderme veya dinleme sirasinda rotor hareket etmiyor (boylece motorlardan gelecek sesi duymuyoruz)  sadece 10 saniyelik bosta kalan surede rotor hareket ediyor.


Bu projedeki onemli noktalardan biri de rolelerin nasil baglanacagi..
Ekte hem DC hem AC motor icin nasil baglanacagi ile ilgili ornek sema ekliyorum
AC 'de kapasitoru arduino tarafindaki role cikis uclari arasinda bagladim.
DC de zaten bir sorun yok.


Çevrimdışı TA8AT

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #17 : 10 Eylül 2019, 11:45:25 »
G 1000 ile azimuth extra bir actuator ilede elecation yapmayı düşünüyorum. Rotorda sorun yok içerisindeki 500 ohm luk potansiyometre yön bilgisini arduino ile haberleşebiliyor. Actuatorun içerisinde bir sensör var. Sanırım onunda içerisine potansiyometre yerleştirmem gerekecek.
Oğuzhan bey sizin anten setupınızın resmini forumdan görmüştüm. Sanıyorum sizde actuatorun içerisinde pot kullandınız.
I LOVE İCOM

Çevrimdışı TA2NC

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #18 : 10 Eylül 2019, 12:03:57 »
Benim actuator zaten pot ile satiliyordu. İlave birsey eklemedim.

Actuator'Un içinde ne tur bir sensor var onu ogrenirseniz, hall effect sensor, pulse sensor, vs cogu sensor tipini destekliyor k3ng.

İcine birsey ilave etmek zor olursa bahsettigim gibi, mast'in uzerine koyacaginiz accelerometer'lar ile elevation bilgisi alabilirsiniz.


Çevrimdışı TA8AT

Ynt: K3NG ARDUINO ROTATOR YAZILIM HK.
« Yanıtla #19 : 10 Eylül 2019, 18:54:36 »
Elimdeki actuatorun resmini yükledim. Klemensin solundaki sarı ve siyah kablolar ile bağlanmış ince bir sensör. Pulse sensör olabileceğini yorumluyorum. Ama bu yazılımla nasıl eşleştireceğim konusunda hiç fikrim yok. Eğer bu sensörleride destekliyorsa pes diyorum.
I LOVE İCOM