Arduino ile Ethernet işlemleri

Başlatan ArifAhmet, 27 Temmuz 2014, 08:52:41

ArifAhmet

Merhabalar,
Örneğin elimde bir web sitesi var ve bunun veritabanlarına veri girişi yapmam gerekiyor. Bunun için aruino kullanacam. Arduino bilgisayara bağlı kalacak. Kendi web sitemdeki veritabanlarına erişip bunlara veri girişi yapabilirmiyim?
Yaşasın Open Source!

Cemre.

#1
Hocam arduino ile nasıl yapılır bilemiyorum ama, belki yol gösterir diye yazıyorum. Sitenizde örneğin veri_ekleme.php gibi bir sayfa oluşturup veritabanı bağlantılarını sağlasanız ve örneğin veri_ekleme.php?deger1=X&deger2=Y gibi bir istek gönderseniz, tabi ki güvenlik önlemlerini de alarak? Böyle bir yol izlenebilirdi belki diye düşünüyorum..

Böyle de bir kod parçacığı buldum..
value=analogRead(AnalogPinNr);  
...
client.print("GET /savedb.php?value=");
client.print(value);
client.println(" HTTP/1.1");
client.println("Host: www. yourwebsite. com");
client.println("User-Agent: MyArduino");
...

gumush

Kisa bir anlatimi yoktur sanirim
Ama mantik olarak bir ethernet modulu yada ethernet destekli arduino
Yazilimin basin Ethernet.h include
setup icine Ethernet.begin
sonra
http protokolu ile get yada post ile bir adresi cagirabilirsiniz. Boylece istediginiz bilgiyi gonderebilirsiniz.

Hikmet Gumus  izmir

Salih

Alıntı yapılan: ArifAhmet - 27 Temmuz 2014, 08:52:41
Merhabalar,
Örneğin elimde bir web sitesi var ve bunun veritabanlarına veri girişi yapmam gerekiyor. Bunun için aruino kullanacam. Arduino bilgisayara bağlı kalacak. Kendi web sitemdeki veritabanlarına erişip bunlara veri girişi yapabilirmiyim?

Kart pc'ye bağlı olacağına göre kart'ın ethernetli olması şart değil bana göre.
Kart pc ile seri olarak haberleşir. Pc'deki arayüz programı da internet le ilgili işlemleri yapar. 

ArifAhmet

Alıntı yapılan: salih - 29 Temmuz 2014, 15:45:36
Kart pc'ye bağlı olacağına göre kart'ın ethernetli olması şart değil bana göre.
Kart pc ile seri olarak haberleşir. Pc'deki arayüz programı da internet le ilgili işlemleri yapar. 

Evet bende onu düşünüm. Fakat php bilgim yok. Sadece ASP.NET, HTML, CSS ve JS. Örneğin arduino kullanarak bilgisayarda bir dosyaya kayıt işlemi yaparım .txt olarak sonra ASP.NET ile bilgisayardaki bu bilgiyi okuyup internete yazarım. Yanlız burada aklıma takılan şu; Sunucuda çalışan bir ASP.Net uygulamasında bilgisayaraki dosyalara erişebilirmiyim?
Yaşasın Open Source!

Cemre.

ASP.net ile ilgili bilgim yok ancak, text dosyasına kayıt yaptıracak bir program yazmak yerine, veritabanına veri girecek bir program yazmak daha doğru olmaz mıydı hocam?

ArifAhmet

#6
Alıntı yapılan: huseyin67 - 29 Temmuz 2014, 20:45:12
ASP.net ile ilgili bilgim yok ancak, text dosyasına kayıt yaptıracak bir program yazmak yerine, veritabanına veri girecek bir program yazmak daha doğru olmaz mıydı hocam?
Olurda, bu sefer ethernet modülüne +300TL ekstra para vermek gerekiyor. Eğer bahsettiğiniz arduino ile bilgisayrdaki veritabanına yazmaksa öyle bişey pek mümkün değil diye biliyorum, çünkü çok ayrı şeyler. Ancak şöyle yaparım; Arduino ile uarttan datayı yollar, bir masaüstü yazılımla veritabanına yazarım. O kısımdada şöyle bir sorun var; Ben sunucu tarafında hiç çalışmadım, yani sunucuda çalışan bir uygulamayla bilgisayara erişip veritabnını okumak farklımı, aynımı bilmiyorum.
Yaşasın Open Source!

gumush

Boyle anlatinca karisik geliyor. Projeyi detaylandirabilir misiniz ?

bir sunucu yada hostinginiz mi var ?
siteye guncellemek istediginiz bilgi , guncelleme yogunlugu nedir ? ( sicaklik 30dk'da bir yada bir yerden okunan akim verisi sn'de 1 gibi )

Ethernet shield o kadar pahalli degil

http://www.aliexpress.com/item/Ethernet-Shield-W5100-For-Arduino-2009-UNO-Mega-1280-2560-ATMEGA-328-Best-prices-Freeshipping/674888225.html

Wifi olani
http://www.aliexpress.com/item/CC3000-Wifi-Shield-for-Arduino-Smart-Phone-SIMPLELINK-SMARTCONFIG-support-MEGA2560-Free-Shipping-Dropshipping/1949396481.html

Hikmet Gumus  izmir

ArifAhmet

Alıntı yapılan: gumush - 30 Temmuz 2014, 09:36:30
Boyle anlatinca karisik geliyor. Projeyi detaylandirabilir misiniz ?

bir sunucu yada hostinginiz mi var ?
siteye guncellemek istediginiz bilgi , guncelleme yogunlugu nedir ? ( sicaklik 30dk'da bir yada bir yerden okunan akim verisi sn'de 1 gibi )

Ethernet shield o kadar pahalli değil

http://www.aliexpress.com/item/Ethernet-Shield-W5100-For-Arduino-2009-UNO-Mega-1280-2560-ATMEGA-328-Best-prices-Freeshipping/674888225.html

Wifi olani
http://www.aliexpress.com/item/CC3000-Wifi-Shield-for-Arduino-Smart-Phone-SIMPLELINK-SMARTCONFIG-support-MEGA2560-Free-Shipping-Dropshipping/1949396481.html



Çok yoğun bir trafik yok ve evet bir sunucu var.
Tam olarak şöyle;
GSM modülü aruinoya bağlı, biri önceden veritbanına kayıt olan biri sms attığı anda bu veritabanlarına işlenecek. Web tarafında bu kontrol edilip sms atan yerler haritada gösterilecek.

Olay tam olarak böyle
Yaşasın Open Source!

gumush

Sunucu platformu nedir ? asp ? php ?

Bu durumda sms'okuma ve sunucuya haber verme asamasina kadar olan kismin var oldugunu dusunuyoruz.

SMS geldiginde tetiklenen bir islemimiz olacak. Bu islem http protokolu uzerinden server'a bu bilgiyi iletecek. Server gelen bilgiyi veritabanina isleyecek. Sonra server istedigi sekilde bilgiyi isleyerek ( sanirim gelen node'larin id'leri olacak oradan lokasyonu anlayacak ) istedigi gibi goresellestirecek.

http protokolu ile bilgiyi get yada post seklinde gonderebilirsiniz. Get icin bir ornek vereyim.

http://siteniz.com/bilgial.php?bilgipaketi=node1sms  adresini browser'a koyup enter yaptiginizda bu istek sunucuya gider. sunucuda bu calisacak olan bilgial.php'ye parametre olara bilgipaketi degerini gonderir. bilgial.php'de bu sekilde hazirlanmis oldugu icin bu bilgiyi veritabanina istenildigi gibi yazar.

Simdi sorun bu http GET istegini nasil olusturabilecegimiz.

GSM GPRS destekli ise AT komut seti ile onun uzerinden ( internet paketi olacak tabii )
Arduino uzerinde bu protokolu kullanabileceginiz bir kutuphane ve donanim ile  ; ethernet , wifi olabilir
Arduino ile seri haberlesme araciligi ile bilgisayar'a oradanda ek bir yazilim ile ayni sekilde sunucuya iletilebilir.

3. yontem cok pratik degil bu is icin surekli acik bir bilgisayar vs gerektirecek , ne kadar sade bir sistem olur ise o kadar az sorun cikacaktir.

Hikmet Gumus  izmir

ArifAhmet

Alıntı yapılan: gumush - 30 Temmuz 2014, 19:47:12
Sunucu platformu nedir ? asp ? php ?

Bu durumda sms'okuma ve sunucuya haber verme asamasina kadar olan kismin var oldugunu dusunuyoruz.

SMS geldiginde tetiklenen bir islemimiz olacak. Bu islem http protokolu uzerinden server'a bu bilgiyi iletecek. Server gelen bilgiyi veritabanina isleyecek. Sonra server istedigi sekilde bilgiyi isleyerek ( sanirim gelen node'larin id'leri olacak oradan lokasyonu anlayacak ) istedigi gibi goresellestirecek.

http protokolu ile bilgiyi get yada post seklinde gonderebilirsiniz. Get icin bir ornek vereyim.

http://siteniz.com/bilgial.php?bilgipaketi=node1sms  adresini browser'a koyup enter yaptiginizda bu istek sunucuya gider. sunucuda bu calisacak olan bilgial.php'ye parametre olara bilgipaketi degerini gonderir. bilgial.php'de bu sekilde hazirlanmis oldugu icin bu bilgiyi veritabanina istenildigi gibi yazar.

Simdi sorun bu http GET istegini nasil olusturabilecegimiz.

GSM GPRS destekli ise AT komut seti ile onun uzerinden ( internet paketi olacak tabii )
Arduino uzerinde bu protokolu kullanabileceginiz bir kutuphane ve donanim ile  ; ethernet , wifi olabilir
Arduino ile seri haberlesme araciligi ile bilgisayar'a oradanda ek bir yazilim ile ayni sekilde sunucuya iletilebilir.

3. yontem cok pratik değil bu is icin surekli acik bir bilgisayar vs gerektirecek , ne kadar sade bir sistem olur ise o kadar az sorun cikacaktir.



Hocam benim sorunumda burada. Ben bu siteyi php ile yapmayacağım. ASP.NET kullanacağım.
Yaşasın Open Source!

gumush

ASP konusunda bilgim yok ama mantigi ayni ,

http://triaslama.wordpress.com/2008/05/01/interacting-with-get-and-post-methods-in-aspnet/

adresinde hem post hem get motodu ile alinabilen degiskenleri gorebilirsiniz.

Hikmet Gumus  izmir