esp8266 ile pic kart kontrol

Başlatan yasargunaydin, 27 Temmuz 2015, 09:43:47

yasargunaydin


Arkadaşlar merhaba;
Pic ile yaptığım  bir kartın rölelerini internet üzerinden çektirmek için  çalışmalara başladım.esp8266 ve usb modül bağlantılarını yapıp Fırat deveci arkadaşın proğramları ile ilk denemelerimi yaptım. AT komutlarına OK yanıtlarını ve gerekli cevapları esp8266 dan alıyorum.HTML dosyasında yapılacak bir butona basıldığında gönderilecek olan bilgiyi esp8266 ile nasıl alacağım konusunda bana yardımcı olabilirmisiniz.esp8266 içerisine proğram nasıl yazılacak.hangi proğramda yazılacak ve Nasıl yüklenecek.Bir örnek sayfa varmı bu konuda.Amaç yine internet üzerinden bir butona basılınca pic üzerinde bir ledi yakmak.
Herkese şimdiden teşekkürler

gogoce

Devre şeması yok örnek program yok , yardım istiyorsan kartlarını açık oynamalısın
Ne ukalayı affederim nede yapılan haksızlığı ...
Ya sus adam sansınlar , yada adam gibi kouş ilham alsınlar

yasargunaydin

Esp8266ya proğram yüklemesi nasıl ve hangi proğramlarda nasıl yazılıyor diye yardım istedim.Bunun şeması olmaz.Şuan yaptığım tek şey esp8266 ile usb çeviriciyi birbirine bağladım bununda şemasını vermedim.Lütfen eleştiri yerine yardım istiyorum ben.Sanırım html kodları esp8266 ya yükleniyor.Html içerisinde yaptığın butonda gönderdiğin bilgi esp8266ya geliyor.Yanılıyor da olabilirim.Bu konuda yol gösterilmesini istedim.bu html kodları esp8266 ya nasıl yüklenecek.Şuan araştırmalarını yapıyorum.Bilen arkadaşlardan lütfen yardım istiyorum.Esp8266  üzerindeki bir ledi yakmayı başardığımda  pic ile esp8266 bağlantılı bir kart yapacağım.ama henüz böyle birşey yapmadım.Bu arada bunu arduino ile yapıldığını biliyorum ama ben pic ile yapmak istiyorum.

Burak

Html kodlarinin esp'ye yuklenmesi diye birsey yok .. Dogrudan istemciye bildigimiz html kodunu uart ile yollayacaksin .. Hersey cok basit biraz kafa yorman kafi

Burak
Ω Gens Una Sumus Ω

yasargunaydin

Burak bey merhaba;Öncelikle ilgilendiğiniz için teşekkürler.
Html kodları  buldum.3 adet buton var ve sanırım butonların id numarasını gönderiyor.Bizim picte yaptığımız hserout gibi.ve ben esp8266 yı takınca 192.168.4.1 static adresi görüyorum ve html içine bunu yazdım.fakat internete bağlanıp html yi başka bilgisayarda açıp html içindeki butonlara basınca esp8266 da hiçbir işlem yok.Nebir led yanıyor ne başka birşey.



yasargunaydin

<html>
   <head><title>yasar</title></head>
      <body>


<button id="11" class="led">Toggle Pin 11</button> <!-- button for pin 11 -->
   <button id="12" class="led">Toggle Pin 12</button> <!-- button for pin 12 -->
   <button id="13" class="led">Toggle Pin 13</button> <!-- button for pin 13 -->

<script src="jquery.min.js"></script>
   <script type="text/javascript">
      $(document).ready(function(){
         $(".led").click(function(){
            var p = $(this).attr('id'); // get id value (i.e. pin13, pin12, or pin11)
            // send HTTP GET request to the IP address with the parameter "pin" and value "p", then execute the function
            $.get("http://192.168.4.1:80/", {pin:p}); // execute get request
         });
      });
   </script>
   </body>
</html>

Burak

ESP8266 ve PIC iletişimi ile ilgili bir kod göremiyorum ben dolayısıyla html üzerindeki hataları belirteceğim ,
Bu kodda 764 byte karakteri var ve ESP8266 'ya modem tarafından atanmış LAN IP adresi sanki sabitmiş gibi GET parametresinden sonra sabit bir IP adresinin 80 portundan gelecek buton kimliği okunmuş .. Ayrıca kod çok uzun yani 764 byte'lık ascii karakteri çözümlemesi gönderilecek dolayısıyla title gibi tag'lar çok gereksiz olacaktır ama illa olacak diyorsan bu HTML kodunun minimize edilmiş hali şu şekilde olacaktır ...


<html><head><title>yasar</title></head><body><button id="11" class="led">Toggle Pin 11</button><button id="12" class="led">Toggle Pin 12</button><button id="13" class="led">Toggle Pin 13</button><script src="jquery.min.js"></script><script type="text/javascript">
      $(document).ready(function(){
         $(".led").click(function(){
            var p = $(this).attr('id'); // get id value (i.e. pin13, pin12, or pin11)
            // send HTTP GET request to the IP address with the parameter "pin" and value "p", then execute the function
            $.get("http://192.168.4.1:80/", {pin:p}); // execute get request
         });
      });
   </script></body></html>


Bu kod 662 byte'lık bir HTML kodu oldu ... Daha fazla yardım istiyorsan uğraşıp bir kod yaz , PIC-ESP8266 ile haberleştirmeyi sağla ondan sonrada kodunu kafana takılanlarla birlikte burada paylaş ...

[Lütfen post'lardaki kodlarıda # ile paylaş , diğer türlü takip etmesi çok zor oluyor .]

Burak
Ω Gens Una Sumus Ω

yasargunaydin

Burak Bey  ;
Kodları yazdıktan sonra yardım iste demişsiniz ama kartı yarın yapmaya başlayacağım ve yanlış kart yapmak istemiyorum.Yine Yardımcı olursanız çok memnun olurum.
Ekteki esp8266 ve pic16f877 bağlantı şemasını çizdim.Kartı yapıp "AT" Komutlarını picten esp8266 ya OK Cevapları alana kadar gönderip   esp8266yı hazır hale getireceğim.OK cevabı gelince  Pic16f877  hserin ile beklemeye geçecek.Sanırım buraya kadar yolum doğrudur diye düşünüyorum.

Bundan sonra yapmak istediğim html deki toogle pin11 tuşuna basınca  karttaki led1 yansın toogle pin12 de ise led2 ve toogle pin13 tede led3 yansın amacım bu.

Çözemediğim
1-html de esp8266 ya bağlanacak bir komut satırı yok.Yani ben   $.get("http://192.168.4.1:80)  satırı ile bağlanacak diye düşünmüştüm.
2- toogle11 tuşuna basınca id=11 olduğu için 11 bilgisimi gidecek ve ben pic16f877 de hserin komutu ile 11 bilgisinimi alacağım.

Şimdiden Teşekkürler

Burak

#8
Alıntı YapKodları yazdıktan sonra yardım iste demişsiniz ama kartı yarın yapmaya başlayacağım ve yanlış kart yapmak istemiyorum

Devreyi Board'da denemeyecek misin önce ? Çünkü birçok problemle karşılaşacaksın özellikle elindekiler ESP8266-01 ise .. Bu bu problemlerin %90'ı analog elektronik ile ilgili problemler o yüzden boşu buşuna board'a kurmadan bir baskı yapma ... Çünkü Wi-Fi entegre içerisinde çok güçlü bir PA ve LNA var buda zaman zaman entegrenin Station yada AP modunda modeme bağlanmadığı her an 250-300 ma akım çekmesine sebep oluyor veya Client'lara cevap verirken .. Öncelikle regülatör seçimini düzgün yaptın mı ? Devrede LM1117-3.3 görüyorum bu doğru bir seçim ama çıkışındaki kapasitör ? Bu işlemci çok aşırı derecede hassastır , eğer düzgün bir regülatör ile çalıştırmazsan boot tamamlanmaz ve çok yüksek akımlar çekmeye başlar ... LM1117'nin her ne kadar Tj grafikleri T0-220 kılıfta 300ma'ya kadar kısmen problem çıkarmayacağını göstersede bir heatsink'siz (soğutucu olmadan) bu projede kullanmak cihazın ömrünü kısaltır . İşlemciyi her daim sen kontrolde tutmalısın yani kimsenin kullanmadığı bir CH_PD pini vardır ki hayati önem taşır özellikle bağlandığımız modem ile bağlantımız kesildiğinde son derece ısındığını göreceksin entegrenin bu durumda Chip Power Down moduna alınarak işlemcinin RF katı devre dışı bırakılır işlemci yüksek empedans moduna geçer ve çok az akım tüketimi ile çalışır .. (Bu durumun bazı firmware'lerde çözüldüğü söyleniyor ama ne kadar doğru bilemiycem.)

Senin projende öncelikle ben olsam bir PIC tabanlı bir server yapmayı denerdim (Gerçek bir sunucu gibi çalışan bir sistem yani)
Bunu yapmak için hangi ESP8266 firmware'inde çalışıyosan onun komut setini indirip komutların kullanımın öğren ..
Ve mümkünse AI-v0.9.5.0 AT Firmware'ini kullanmaya çalış ... Diğer SDK firmware'ler henüz beta durumunda ..
Tekrar söylüyorum .. Çalışmalara başla ortaya birşeyler koy , ondan sonra yardım iste ..

Burak
Ω Gens Una Sumus Ω

gogoce

Burak Günay Beyin dediği gibi
"Çalışmalara başla ortaya birşeyler koy , ondan sonra yardım iste .."

bende bunu belirtmek istemiştim aslında
Ne ukalayı affederim nede yapılan haksızlığı ...
Ya sus adam sansınlar , yada adam gibi kouş ilham alsınlar

yasargunaydin

Peki arkadaşlar,Ufuk bey ve sayın Gogoce bey.çok sağolun ,dediğiniz gibi ben biraz daha çalışayım ve araştırayım.Biraz yol katedince takıldığım yerlerde  sizlerin yardımını tekrar isterim.
Teşekkürler.

Powered by EzPortal