Ardunio dan c# ile veri çekme.
  • Arkadaşlar herkese kolay gelsin. Arduino da bir alarm projesi yaptım. Sistem hareket algıladığında merkeze bilgi verecek, tüm modüllerim çalışıyor. ethernet üzerinde veri verileri bir web sayfasında yayınlıyorum c# da web sitesi içinden veriyi okuyorum. Benim sorun şu, hiç araya bir web sitesi koymadan direk IP üzerinden veriyi çekebilimiyim.
  • temel tcp ip yi biliyorsanız ethernetclient fonksıyonunu kullanabılırsın

    https://www.arduino.cc/en/Reference/EthernetClient
  • Hocam çok teşekkür ederim. Bir sorum daha olacak eğer mümkünse hanrun hr91105a kullanıyorum, normal ip alıyor. Kontrol etmek için ip yi ping liyorum lakin bir yerden sonra pinglemiyor. Cihazı kapatıp açınca düzeliyor. Neden kaynaklanıyor olabilir.
  • bu bahsettıgınız konnektorun kodu işlemci nedir borddaki
  • Anakartım Ardunio ATMEGA2560 ATMEL İŞLEMCİ. Buna harici ethernet modülü bağladım oda ENC28J60
  • ethernet bordlarda zaman zaman kitlenme şikayeti sorunu hep geliyor her tcp kodunu duzgun işlemeyebiliyor kutuphane ping sizin için devamlı gerekli birşey mi bilemiyorum pinglere cevap vermeme yaptığında diğer tcp komutlarını veya başka bir kod kısmını çalıştırıyorsa takılmayın fazla direk işinize odaklanın ama genelde belirli peryotlarla karta reset attırıyorlar pek şık çözum olmasada boyle bır dene. kutuphaneler cok eskı ve gerektıgı kadar kapsamlı yazılmıyor ne yazıkkı. başka bir enj kutuphanesi bulabiliyorsanız onları da deneyın
  • Hocam tsk ederim cevap için. Şunu denedim ben devreleri olduğu gibi bir kutu içine koymustum kutuyu açtım o şekilde ping ledim dünden beri sürekli ping atıyorum sorunsuz ping atıyor. Aklıma aşırı ısınma düşüncesi geldi yani kutuyu açmaktan başka bir degisiklik yapmadım. Sizce neden bu olabilir mi ?. Sonuçta yaptığım alarm sistemi sürekli ulaşılabilir olması gerekiyor ciddi ciddi şubelerimize kurmayi dusunuyoruz bu sistemi aslında sizinde fikrinizi almak isterim. Arduino ile yapılmış bir alarm sistemi guvenirligi nedir yani sorunsuz calismasi konusunda
  • havalandırma deliği olsun sistemde aşırı ısınmaz normalde fazla voltaj vermeyın
  • Hocam tekrar merhaba hiç bir şey çözüm olmadı, bir süre sonra ethernet ile bağlantı kesiliyor. En son şunları denedim. Devreden tüm elemanları çıkarıp sadece ethernet modülünü bağladım ve IP verdim uzun süre hiç sorun olmadan çalıştı. Sonrasında diğer devre elemanarını ekledim tekrar lakin kodlama kısmında sadece ethernet modülüne IP verdim, bir müddet sonra tekrar bağlantı kesildi. Devre elemanları artınca sıkıntı yaşadığımı farkettim, acaba voltaj ile ilgili bir sorunum mu var ?
  • guvenlik ve saglık amacıyla arduıno kullanmayı istemezdim. bu ethernet şikayetı genelde var başka bır model ethernet kartı ıle deneyin mesele wiz5... olanlarla.
  • Açıkçası benimde şüphem olmaya başladı lakin bağlantı harici yani ethernet harici tüm devre 1 ayı geçkin süredir sorunsuz çalışıyor. Sanırım Elektronik konusunda bilgi eksikliğim bendeki en büyük sorun. Açıkçası hevesim ve hırsım kırıldı. Böyle bir proje için hangi kartı kullanmam doğru olur.
  • wiz5000 serilerini deneyin fark olabilir ve arduınonun resmı ethernet surucusudur. enc28j60 arduınoya ılk ethernet eklemesıydı ama bunu arduıno yapmadı ve bunu kartın yazılımı neredeyse ılk gunku gıbı hıc guncellenmedı kutuphaneyı yazan kısı bıraktı gıncellemeyı uzun zamandır.
  • Hocam sistem için arduino mega, 1 adet hareket sensörü, 1 adet buzzer, 1 adet 2X16 LCD ekran, 1 adet KeyPad, 1 tane de ethernet modülü kullanıyorum. Yazılımı vs. herşey tamam, Tüm devre elemanlarını bağlayıp yazılımı yüklediğimde tüm elemanlar çalışıyor, lakin bir müddet sonra bağlantı kesiliyor. Tüm devre elemanlarını çıkartıp sadece etherneti bağladığımda sorun yok. Devre elemanlarını takıp sadece modüle IP alacak kodları yazıp çalıştırdığımda dahi bağlantı gidiyor. Yani bir veri alış verişi dahi yapmıyorum sadece ethernet modülüne IP veriyorum, diğer modüllere sadece besleme yapıyorum. Bu durumda da bağlantı kopuyor.
  • keypad de tuşa basılmasını beklerken belkı ethernetı kacırıyorsun bu kadar şeyi eklerken tek seferde kod yazılmaz herseyı adım adım ekleyın.
    ethernet koduna once lcd ekleyın bır sure bekleyın sorun yoksa hareket sensorunu takın ethernet lcd ve hareket sensor beraber bır sure çalışsın buna en sone keybord ekleyıp deneyın. yazdıgınız şeylerde akım çeken bir şey goremedım kodunuzun bir yerınde takılıyor bıseylewr sanki. ethernetle paylaşılan pinler varsa onları başka pıne taşıyın garanti olsun
  • Hocam ilginiz için teşekkür ederim. Takıldığım konu şu. Tüm devre elemanları takılı iken sadece ethernete IP alması için kod yazıp yüklüyorum. Diğer modüllerin hiç biri için kod yazmıyorum. Yinede bir müddet sonra bağlantı kesiliyor.
  • kesişen pin vardır atmegada bazı pinler bir kaç değişik pinde kullanma ımkanı var pinlerı doldurup setuplarını yapmadan oylece bekletmek de uygun olmayabılır yukarıda yazdıgım sırada bırer bırer komponentlerı takıp ip almayı dene çalışanı bulursun o şekilde
  • Hocam dediğiniz gibi yaptım en son LCD ekran kaldı. şu ana kadar diğer tüm devre elemanları takılı halde sorunsuz ulaşabiliyorum cihaza. En son LCD ekranı takıp deniyeceğim. Pardon birde LCD ekran ayarı yaptığım potansiyo metre var. Bir şey dikkat ettim LCD de 3.3V vermem gereken yere şu ana kadar hep 5V vermişim acaba ondan mı bilemiyorum. LCD yi takacağım. Eğer sorun olursa, LCD nin 16 pini ni tek tek takıp deneyeceğim. Ama sanırım LCD de iki voltaj girişi var, 5V ve 3.3V bu iki sinden birini taktığımda sorun olacak gibi.
  • Hocam LCD 5v ve 3.3 V bağlayınca bağlantı kesildi sanırım sorunum LCD bağlandığında oluyor.
  • bir şey akım çekiyor galıba adaptoru buyut. nasıl bir lcd miş bu ya 5v tur yada 3.3v tur
  • Hocam standart 2X16 LCD örneklerine baktığımda 2. pinine 5V 15.pinine 3.3V gireceksiniz diyor. En son şunu deniyorum ethernet modülünün voltaj ve toprağını ayrı enerji kaynağına bağladım bu sabah şu ana kadar sorun çıkmadı ama bekliyorum bakalım.
  • Hocam affınıza sığınarak sizden yazdığım kodlara bakmanızı rica edeceğim, bu gün yaptığım testlerde voltajlarda sorun olmadığını tespit ettim.
  • #include < EtherCard.h>
    #include < SPI.h>

    #define STATIC 0 // set to 1 to disable DHCP (adjust myip/gwip values below)

    #if STATIC
    // ethernet interface ip address
    static byte myip[] = { 192,168,139,92 };
    // gateway ip address
    static byte gwip[] = { 192,168,139,3 };

    static byte subnet[] = { 255, 255, 255, 0 };
    #endif

    // ethernet mac address - must be unique on your network
    static byte mymac[] = { 0xDE, 0xA2, 0xBE, 0xEF, 0xFE, 0xED };

    byte Ethernet::buffer[500]; // tcp/ip send and receive buffer
    BufferFiller bfill;


    void setup(){
    Serial.begin(9600);
    if (ether.begin(sizeof Ethernet::buffer, mymac, 53) == 0)
    Serial.println( "Failed to access Ethernet controller");
    #if STATIC
    ether.staticSetup(myip, gwip);
    #else
    if (!ether.dhcpSetup())
    Serial.println("DHCP failed");
    #endif

    ether.printIp("IP: ", ether.myip);
    ether.printIp("GW: ", ether.gwip);
    ether.printIp("DNS: ", ether.dnsip);
    }

    static word homePage() {

    bfill = ether.tcpOffset();
    bfill.emit_p(PSTR("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\nPragma: no-cache\r\n"
    "\r\n"
    "< meta http-equiv='refresh' content='1'/>\r\n"
    "< h1>$D"),
    0);

    return bfill.position();
    }

    void loop(){

    word len = ether.packetReceive();
    word pos = ether.packetLoop(len);

    if (pos) // check if valid tcp data is received
    ether.httpServerReply(homePage()); // send web page data
    }

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Login with Facebook
Açık kaynak kültürü gereği, çözdüğünüz problemlerin çözümlerini paylaşmayı lütfen unutmayın.