Picproje Elektronik Sitesi

BİLGİSAYAR => Donanım ve Yazılım => Konuyu başlatan: Mucit23 - 24 Ekim 2015, 19:03:09

Başlık: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 24 Ekim 2015, 19:03:09
Selamlar

Bu GPRS modülü ile TCP bağlantısını test etmem gerekiyor. Modüle internet bağlantısı aktif olan bir M2M kart takılı. Daha önce ethernet ile hiç uğraşmadım. Bu yüzden teknik olarak nasıl bağlantı kurmam gerektiğini bilmiyorum.

İnternette sim908 için TCP, FTP bağlantıları için örnekler buldum. Bağlantı kurmak istiyorum ama nereye nasıl bağlanacam onu bilmiyorum. Şimdilik bilgisayarımda HW Hercules FTP test programını yükledim. Bu programın ayarlarını nasıl yapmam gerekiyor? Ufak bir örnek verebilirmisiniz?
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 24 Ekim 2015, 21:47:42
TCP bağlantısı için uğraşıyorum.

Buradaki programı indirebilen varmı?
http://m2msupport.net/m2msupport/tutorial-for-simcom-m2m-modules/ (http://m2msupport.net/m2msupport/tutorial-for-simcom-m2m-modules/)
İndirmek istediğimde Java sürümü uyumsuz diyor.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: polleme - 25 Ekim 2015, 00:29:55
Alıntı yapılan: Mucit23 - 24 Ekim 2015, 21:47:42
TCP bağlantısı için uğraşıyorum.

Buradaki programı indirebilen varmı?
http://m2msupport.net/m2msupport/tutorial-for-simcom-m2m-modules/ (http://m2msupport.net/m2msupport/tutorial-for-simcom-m2m-modules/)
İndirmek istediğimde Java sürümü uyumsuz diyor.

Bu program inmiyor, online bir program. Çalıştırmak için Java'nın güncel olması ve Control Panel Java ayarlarında da bu sitenin girilmiş olması gerekiyor. Bunlar yapılıp browser yeniden başlatılınca çalışıyor.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: OG - 25 Ekim 2015, 02:13:49
HW Hercules basit güzel bir program.
Sim908 konusunu bilmiyorum ama HW Hercules programını basitçe çözebilirsin.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 25 Ekim 2015, 10:54:57
Hocam hercules ile bir TCP server kurmam gerekiyor. Burada bunun ayarlarını nasıl yapacam onu bilmiyorum. Etrafımda okadar çok döküman varki döküman karmaşası içerisindeyim.

Bu javanında security ayarlarını yaptım. Ama düzelmedi. Hala açılmıyor.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: sadogan - 25 Ekim 2015, 11:08:50
http://s6.dosya.tc/server3/9mqqw1/tcp.rar.html (http://s6.dosya.tc/server3/9mqqw1/tcp.rar.html)
TCPserver.exe istedigini yapıyor yanlızca dinleyeceği portu yazip sonra listen yapıyorsun
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: MrDarK - 25 Ekim 2015, 13:05:53
Herculesin öyle zor bir ayarı yok. Server portunu yazıp TCP modunda açacaksın. Sonra modeminin ayarlarına girip bilgisayarının TTNET IP'sinin server portuna yazdığın rakamı local IP'sinin portuna yönlendirdin mi olay tamamlanıyor.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: polleme - 25 Ekim 2015, 17:33:08
Hercules içinde TCP Server modu aktif edip ardından TCP Client ile ona bağlanarak kısa bir test bile yapabilirsiniz. Yazılım buna bile imkan tanıyor. Böylece nasıl çalıştığını daha net anlayabilirsiniz.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 25 Ekim 2015, 19:40:47
Hercules ile deneme yapıyorum. Sormak istediğim birkaç soru var.

TCP server'da Port değerini 1000 olarak belirleyip server'ı açıyorum. Sonra TCP Client moduna geçip IP adresini 127.0.0.1 giriyorum Port olarak da yine 1000 giriyorum. Connect diyince bağlantı kuruluyor.

Fakat ben bu 127.0.0.1 değerini neye göre belirleyeceğim Onu anlamadım. Birde Server modunda sadece port giriyorum ama IP adresi girmiyorum. Burada IP adresini öğrenmek için modemin içine girdim. Modem benim PC ye 192.168.2.158 gibi bir IP vermiş. Burada benim TCP server IP'si'de mi bu oluyor. Eğerki Server IP'si bu ise neden client'de  127 ile başlayan bir ip girmek zorundayım?

@MrDarK
Alıntı YapSonra modeminin ayarlarına girip bilgisayarının TTNET IP'sinin server portuna yazdığın rakamı local IP'sinin portuna yönlendirdin mi olay tamamlanıyor.

Bunu biraz daha açıklayabilirmisin?
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: MrDarK - 25 Ekim 2015, 20:01:08
@Mucit23 ;

Modem markasından markasına değişiyor, Port yönlendirme diye araştır kendi modem markana göre.

Sonra hangi portu,hangi IP'li bilgisayarın portuna istersen ona yönlendiriyorsun. Örneğin Hercules'de 1000 nolu portu server açtın. Modemden de 1000 nolu portu bilgisayarının IP'si olan 192.168.2.158 IP ve 1000 portuna yönlendirdiğinde GSM modülden yapman gereken tek şey TTNET'in sana verdiği IP'nin 1000 nolu portuna bağlantı kurmak. TTNET IP'sini görmek için ;
https://yandex.com.tr/yandsearch?text=ip%20adresim&from=os&clid=1836588

Linklerinden faydalanabilirsin.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: polleme - 25 Ekim 2015, 20:06:19
127.0.0.1, makinanın kendisi demektir. Bir makina, kendi üzerinde açılmış olan bir TCP/IP servis veya uygulamaya kendi IP adresi üzerinden bağlanabildiği gibi 127.0.0.1 IP adresi üzerinden de bağlanabilir. Ancak bir makina başka bir makinaya bağlanacaksa orada 127.0.0.1 gibi bir adres artık kullanılamaz.

Diğer kısmını MrDark açıkladı zaten.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: OG - 25 Ekim 2015, 20:43:41
Dış IP nin bilinmesine ihtiyac olacağı zamanlarda ekteki php kodu kullanıyorum.

Konuya yabancı olanlara
ekteki dosya php yapılı sayfa kodudur, bir domain altında (veya ana sayfasında) kullanılır, bu php kodlu sayfayı barındıran bir hosta sahip olunması gerek.

Bir domain name aldınız örneğin www.benimsayfam.com (http://www.benimsayfam.com)
Bir host (web sayfalarının barınacağı yer) ayarladınız (ücretli veya ücretsiz).
web sitenizi tasarladınız ve hosta yüklediniz. Artık isminiz tıklanınca hazırladığınız web açılıyor.

Bu ismin barındığı hosta ekteki sayfayı da yüklediniz (rar içinden çıkararak "benim_ip.php" veya istediğiniz bir isim ile değiştirerek )

www.benimsayfam.com/benim_ip.php (http://www.benimsayfam.com/benim_ip.php)
çağrıldığında içinde başka hiçbir karakter katışığı bulunmadan direk copy dediğinizde elde edilen IP' nizdir.
Örneğin kendim için yuklediğim sayfayı şu an çağırdım, gelen sayfanın içeriğini kopyaladım

188.58.16.79
yanlızca sonda bir boş karakter görüyorum. Başka bir fazlalık yok.

PHP sayfanın kodu
<?php 
function GetIP(){ 
    if(
getenv("HTTP_CLIENT_IP")) { 
        
$ip getenv("HTTP_CLIENT_IP"); 
    } elseif(
getenv("HTTP_X_FORWARDED_FOR")) { 
        
$ip getenv("HTTP_X_FORWARDED_FOR"); 
        if (
strstr($ip',')) { 
            
$tmp explode (','$ip); 
            
$ip trim($tmp[0]); 
        } 
    } else { 
        
$ip getenv("REMOTE_ADDR"); 
    } 
    return 
$ip


$kimlik GetIP(); 
echo 
$kimlik
?>



- - -
Sayfanın bütün kodu şartları elemeleri kaldırınca şu kadar da yetebilir. Bunda sondaki boşluk da yok.

<?php echo $_SERVER['REMOTE_ADDR']; ?>
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 25 Ekim 2015, 23:47:01
OG hocam bilgi için teşekkürler. PHP konusunda bilgim yok ama anlatmak istediğinizide anladım.

TCP Client bağlantısını biraz anladım. Ben şuanda yine Sim908 üzerinde TCP bağlantısı üzerine uğraşıyorum. Bağlantı kurmak için çırpınıyorum.

Hercules'te TCP server'i açıp port numarasını 1000 yaptım

Sonra Sim908 ile aramızda geçen diyaloglar şu şekilde. Kırmızı olanlar benim gönderdiğim komutlar.

AT
AT

OK
AT+CIPSHUT
AT+CIPSHUT
SHUT OK

AT+CIPMUX=0
AT+CIPMUX=0
OK

AT+CIPSTATUS
AT+CIPSTATUS
OK
STATE: IP INITIAL

AT+CGATT=1
AT+CGATT=1
OK

AT+CSTT="IP"
AT+CSTT="IP"
OK

AT+CIICR
AT+CIICR
OK

AT+CIFSR
AT+CIFSR
10.96.100.164  //Modül IP adresi

AT+CIPSTART="TCP","88.228.84.133","1000"     
AT+CIPSTART="TCP","88.228.84.133","1000"
OK

STATE: TCP CLOSED

CONNECT FAIL

Benim IP adresim 88.228.84.133, PC de Hercules Server 1000 portunda dinleme yapıyor. Birkaç deneme daha yaptım fakat sürekli  CONNECT FAIL hatası alıyorum. Fikri olan var mı bir yerlerde hata yapıyor olmalıyım.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: kantirici - 26 Ekim 2015, 00:21:43
@Mucit23  Modem de port açtın mı? Yani yönlendirme yaptın mı? Eğer açmadıysan bağlantı kurulamaz.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: MrDarK - 26 Ekim 2015, 09:41:50
@Mucit23 ;

Eğer port yönlendirmeyi yapamamış isen sistem çalışmayacaktır. Hercules'den TCP server kur tekrar server kurulu ve dinliyorken aşağıdaki siteye gir;

http://ip-adresim.net/araclar/acik-portlar (http://ip-adresim.net/araclar/acik-portlar)

Buraya kendi bilgisayarının IP'sini ve portunu gir. Sonra sorgula butonuna bas. Eğer başarılı şeklinde bir cevap alırsan gsm modülünde bağlanaması gereklidir. Ondan öncesinde gsm modül komutlarına bakmamıza gerek yok. Önce bağlantından emin olmak lazım.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 26 Ekim 2015, 11:03:34
Evet port açmamıştım. Port açmam gerektiğini bilmiyordum. Aslında Hercules'te server kurunca port ayarlamasını vs yapmasını beklerdim.

MrDark Dediğini yapıyorum ve Port Kapalı şeklinde bildirim alıyorum. Port yönlendirme yapılmadığında böyle bir uyarı veriyor sanırım.

Şuan iş yerindeki modem üzerinde deneme yapıyorum. Zyxel'in bir modemi var (Allah düşmanın başına böyle modem vermesin. Sürekli internette kopmalar yaşıyorum. Çözebilmiş değilim. ) Bendeki modemin modeli Zyxel p-660hn-t1a, Beş para etmez bir modem. Sabahtan beri port açacam diye 2 defa fabrika ayarlarıne çevimek zorunda kaldım.  >:(
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: MrDarK - 26 Ekim 2015, 13:35:23
Hocam ha gayret;

En kötü yine olmazsa uzak masaüstü bağlantısıyla modeminizin ayarlarını inceleyebilirim.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 26 Ekim 2015, 15:45:47
Bağlantı kurabildim sonunda... Ama kendi bilgisayarıma değil. Bünyesinde Server bulunduran bir firmadaki arkadaşıma rica ettim. Kendi serverlarında Bana özel bir port açtılar. Bende Onların IP'sine ve Portuna bağlanıp String vs gönderdim. Karşı tarafa sıkıntısız bir şekilde ulaştı. 

Kendi bilgisayarımda henüz yapamadım. Modemden port açma işleminı çözemedim. Onu çözsem kendi bilgisayarımda verileri göreceğim.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: X-Fi - 26 Ekim 2015, 16:10:56
Port açma işlemini gerçekteştirdikten sonra Eterlogic firmasının güzel bir "virtual serial port emulator" yazılımı var TCP client ve server da oluşturabiliryor.

Ben bu program sayesinde 2 adet sanal COM açıp(pair com),, birde TCP server oluşturup serveri sanal comlardan birine bağlıyorum, haberleşmek için diğer COM'u seçip servera bağlı client cihazlara veri gönderip alabiliyorum.

Bu şekilde bilgisayarcılara çok işin düşmeden testlerini halledebilirsin.

iyi çalışmalar.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Mucit23 - 26 Ekim 2015, 16:26:17
Sonunda port açıp haberleşmeyi Sağlayabildim. İnternette izlediğim bir video faydalı oldu.

Konuyu sonuçlandıralım bari. Bu modülle uğraşacakların TCP bağlantısı kurabilmesi için sırayla aşağıdaki komutları göndermesi gerekiyor. Kırmızı ile yazılanlar benim gönderdiklerim. Yeşil olanlar modülün verdiği cevaplar.

AT+CREG?
+CREG: 0,1
OK

AT+CFUN=1
OK

AT+CIPSHUT
SHUT OK

AT+CIPMUX=0
OK

AT+CIPSTATUS
OK

STATE: IP INITIAL

AT+CGACT=1,1
OK

AT+CGATT=1
OK

AT+CIPSTATUS
OK

STATE: IP INITIAL

AT+CSTT
OK

AT+CIPSTATUS
OK

STATE: IP START

AT+CIICR
OK

AT+CIFSR
10.103.176.253    //Sim908'in GSM Şebekesinden aldığı IP

AT+CIPSTART="TCP","88.228.71.161","23"  //Burada 88.228.71.161 nolu IP benim bilgisayarımın bağlı olduğu modemin dış dünyaya açıldığı IP'dir. Siz bunu kendi bilgisayarınıza göre değiştirin.  23 ise bağlanmak istediğim port.  Cevap Aşağıdaki gibi olması gerekiyor.
OK

CONNECT OK
Bu cevap geldiyse bağlantı kurulmuştur. Veri göndermek için aşağıdaki yapı kullanılır.
AT+CIPSEND=10 //10 verisi gönderilecek string'in boyutudur. Bu komut girildikten sonra aşağıdaki cevap gelmelidir.
> // Şimdi doğrudan Texti Yazıp gönderebilirsiniz.
Deneme 123
SEND OK

Bu konuyu birazcık anlamış oldum bu sayede.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: X-Fi - 26 Ekim 2015, 16:30:52
Hocam AT+CIPSEND=10 komutu falan göndermek gereksiz, bunları parse etmekle uğraşmayın transparent mode geçin çift yönlü iletişim başlasın çıkmak içinde "+++" gönderirsiniz.

Not: GL865 den hatırlıyorum iletişimde byte veya char verilerin gönderimi için ayrı bir seçenek vardı. karakter dışında bir veri gönderiyorsanız bu seçeneği bir kontrol edin.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Fixxer - 04 Kasım 2015, 13:39:20
Haberleşmeyi sağlamak için modemden hangi portu açmamız gerekiyor?  Herhangi boşta bir port olabilir mi ?!
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: MrDarK - 04 Kasım 2015, 14:35:08
Alıntı yapılan: Fixxer - 04 Kasım 2015, 13:39:20
Haberleşmeyi sağlamak için modemden hangi portu açmamız gerekiyor?  Herhangi boşta bir port olabilir mi ?!

Evet
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: Fixxer - 05 Kasım 2015, 13:38:25
Evet, modemden istediğim portu yönlendiriyorum ama daha pratik bir yöntem olarak; Turkcell 3g Wınn modem kullandım. Tüm portları açık olduğundan hiçbir işlem yapmama gerek kalmadı.
Başlık: Ynt: Sim908 ile TCP Bağlantısını nasıl test ederim?
Gönderen: memreirmak - 03 Haziran 2016, 20:44:33
Alıntı yapılan: Fixxer - 05 Kasım 2015, 13:38:25
Evet, modemden istediğim portu yönlendiriyorum ama daha pratik bir yöntem olarak; Turkcell 3g Wınn modem kullandım. Tüm portları açık olduğundan hiçbir işlem yapmama gerek kalmadı.

hocam tam olarak şu an yapmaya çalışıpta yapamadığım şeyi yapmışsın .3g modem+ 3g router  ile internete bağlı olan bilgisayarda hercules ile tcp server kuruyorum ancak  bu sunucuya uzak bir IP den bağlanamıyorum.neyi eksik yapıyorum ?