Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => Python => Konuyu başlatan: z - 24 Nisan 2020, 02:21:29

Başlık: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 02:21:29
Dün Raspberry Pi Zero kartım geldi ve sağolsun arkadaşlar forumdaki sorularıma cevapsız bırakmadılar ve bugün kartta Python diliyle bayağı bir şey yapabilmeye başladım.

Üstelik bu dili de öğrenmeye daha dün başladım.

Şu anda bu mesajı sevinçten yazıyorum ve benim gibi bu konularda hiç çalışmamış olanların da SBC, Python'a ilgilerini çekeceğimi sanıyorum.

Önce neden sevindiğimi yazayım.

Dün Raspberry kitimin güç kaynağını işyerinden eve götürmeyi unutmuşum. Yani evde kitle çalışamadım. Hiç olmazsa PC'de emülatör vs tarzı bir şeyle pratik yapayım istedim ve PC'de python çalışabileceğim Pycharm adında ücretsiz bir IDE kurdum.

Kart vs kullanmadan çıplak PC üzerinde kafasını yara yara başladım Python kodları denemeye.

Python garip bir dil. C kullanıyorsanız C'ye, Basic biliyorsanız Basic'e, Delphi biliyorsanız Delphi'ye benziyor. (Bana öyle geldi)

Neyse kafa göz yara yara bir form ve üzerinde Labellar, Butonlar, RadioButtonlar oluşturmayı başardım. 
Yani visual dillerde yaptığımız grafik arayüzlü programların bir benzerini yazmayı başardım. Tüm bunlar akşam 16:00 01:00 saatleri arasında oldu.

Sabah işe gelir gemez ilk işim PC'deki py uzantılı deneme programını flash diske kopyalamak oldu. Raspberry kitimi çalıştırdım Flash diski taktım.

Flash disk PC'de olduğu gibi karşımda. Tıkladm Phyton deneme programım da karşımda. Dosyayı çift tıkladım.

Biraz açılması yavaş oldu ama grafik arayüzlü deneme programım hatasız şak diye çalıştı.

İşte bu olaya deli gibi sevindim. (Flash diske kolayca erişim, PC de oluşturulan dosyanın SBC kartta sorunsuz açılması, PC de yazılıp denenen kodların SBC kartta sorunsuz sıfır hata ile koşmaya başlaması)

İlk kez SBC kartla ilk kez Linux üzerinde ilk kez Python ile deneme yap o da çalışsın. İnanılmaz bir şey.

Bu durumda SBC kartlarla akla hayale gelmeyen bayağı teknolojik  alet aparat yapılabilir.

Bu işlere bulaşmamış tüm picroje üyelerine şiddetle öneriyorum.

Ucuzundan bir tane SBC kart alın ve muhakkak izlediğim yollardan bir geçin. Sadece 1 gün sonunda acaip işler yapabileceğinizi göreceksiniz.

Demedi demeyin.

Acemiliğim bittimi? Hayır. Daha işin çok başındayım ama kendime güvenim geldi. Biraz daha sorularımla başınızı ağrıtacağım.

Bu arada python hiç aklımda yoktu. C ile kod yazmayı düşünüyordum. Anladığım kadarıyla bedava çözümlerde grafik arayüz oluşturan IDE temini biraz sıkıntılı. (Ya da yeterince araştırmadım)

GUI için Python'un tkinter çözümü olduğundan bu dile bulaşmak zorunda kaldım.

Python belki yanlış belki de doğru seçimdir bilemiyorum. Sırf aceleciliğimden dolayı Python ile başladım.

Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: mehmet - 24 Nisan 2020, 02:49:10
https://www.youtube.com/watch?v=judATXojtDE
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: mehmet - 24 Nisan 2020, 03:47:48
@z Hocam;
Python STM32F4xx üzerinde de çalışıyor.  8-)

http://micropython.org/download/stm32_nucleo/
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: fide - 24 Nisan 2020, 04:04:36
Esp32, microbit üzerinde de çalışıyor.  ::op
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 24 Nisan 2020, 04:17:56
Sbc de ne durumda bilmiyorum ama tkinter in desteği sonlandı(zaten berbat bir arayuz). Mümkünse pyside2 yada Pyqt kullanın. 
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: gokhangokcen - 24 Nisan 2020, 09:48:04
Alıntı yapılan: muhittin_kaplan - 24 Nisan 2020, 04:17:56Sbc de ne durumda bilmiyorum ama tkinter in desteği sonlandı(zaten berbat bir arayuz). Mümkünse pyside2 yada Pyqt kullanın. 
Kesinlikle katılıyorum. @z üstad yolun başındayken direkt PyQt'ye geç derim. Bende baya haşır neşir olmuştum bir ara Qt'nin rahatlığı hiç birinde yok bende. Ayrıca Qt'nin yeni versiyonunda STM serileri içinde destek gelmiş. Ayrıca Visual Studio'daki gibi bir sürükle bırak şeklinde de program yapabilirsiniz. Designer adlı bir arayüzü var.
Bu konuda yardıma ihtiyacınız olursa @muhittin_kaplan epey hakim diye biliyorum. Bende elimden geldiğinde yardımcı olurum
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 10:42:45
https://wiki.python.org/moin/PyQt/Tutorials

Burda pek cok versiyon var. Raspberry Pi Zero icin herhangi bir sinirlama var mi?

Hangisini yuklemeliyim?
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 11:40:44
whl dosyasini nasil yukleyecegim?

pip falan deniyor ama bende pip yok.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: gokhangokcen - 24 Nisan 2020, 12:05:29
@z hocam raspberry'e PyQt kurmanıza gerek yok. Bilgisayarınızda kurun o size .py uzantılı dosya üretiyor. Kodu direkt olarak pi'de çalıştırabiliyorsunuz. Ama yinede kurmak isterseniz şurada  (https://raspberrypi.stackexchange.com/questions/62939/pyqt5-on-a-raspberry-pi)yönlendirmeler var. https://hizliresim.com/a0m77L Bilgisayardaki programın görseli şu şekilde. PyCharm aracılığı ile PyQt kurabilirsiniz.

Edit: burada nasıl kurulacağı ile ilgili video mevcut.
https://www.youtube.com/watch?v=I393ZNFWICA
https://www.youtube.com/watch?v=yqHiOesB-nI
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 12:10:40
Ben PC'ye de kuramadim.

PyCharm ile PyQt yuklemeyi de bilmem.

Ben install ozurluyum.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 13:26:38
@muhittin_kaplan

PyQt5-5.14.2-5.14.2-cp35.cp36.cp37.cp38-none-win_amd64.whl diye bir dosya indirdim.

Bunu PyCharm ile nasil yuklerim?



Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 24 Nisan 2020, 13:58:16
hocam siz geliştirmeyi doğrudan sbc üzerinden mi yapacaksınız ? yani sonuç dosyaları (proje ve gui) PC de hazırlayıp, sbc ye yükleseniz nasıl olur ?
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 14:02:49
SBC uzerinde kod gelistirmek cok gicik. Acaip yavas.

PC'de yazip deneyip ardindan SBCye flash ile tasiyorum.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 24 Nisan 2020, 14:17:48
tamam ozaman hiç onu bunu denemeyin,sanırım PC de windows kullanıyorsunuz.
https://www.anaconda.com/ da bulunan size uygun olan paketi indirip kurun. Bu paket içirisinde neredeyse tüm ihtiyaçlarınızı (hatta kat be kat fazlasını) barındıran kütüphaneler var. Pyqt mevcut bu paket içerisinde. ayrıca birde IDE var spyder adında.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 15:19:33
(https://i.postimg.cc/zfxVsm7v/1.jpg) (https://postimg.cc/gw6zhTfb)share images online free (https://postimages.org/)

Kurdum ama hala ortalikla grafik nesneleri surukleyebilecegim bir ortam goremedim.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 24 Nisan 2020, 15:26:09
Hocam Anaconda Navigator aklınızın bir köşesinde dursun.
Şimdi siz DragDrop yapıp arayüz geliştireceğiniz bir yer arayorsunuz. anaconda\Library\bin altında designer.exe (windows) olmalı.

Şimdi unutmamamız gereken şu, delphi vb.net c# gibi butonu koy, eventine şunu yaz tarzı bir çalışma sistemi yoktur.
designer sadece formu tasarlamanızı sağlar. eventleri vs yi yine python tarafında yazarsınız.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 24 Nisan 2020, 15:34:03
şurada designer kullanımı var. stm32 den sriporttan pyqt arayüzüne veri almıştım.

https://youtu.be/gbvuyK7PEqM
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 15:34:50
Tamam sagolasin buldum suruklemeli bir IDE cikti karsima.

Tesekkurler.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 24 Nisan 2020, 16:44:39
Qt Designer da surukle birak yaparak formu ve ustundeki nesnelerin yerlesimi bitti.

Form -> View Code dedigimde kodlarin C diline ait oldugunu goruyorum ve Python ile ilgili bir secim bulamadim.

Ui uzantili bir dosya olustu. Spyder mi acacak bunu?

Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 24 Nisan 2020, 17:20:13
Hocam ui dosyası bir çeşit xml e benzer.
Bununla işimiz bitti geri kalan python tarafında.
Bu dosya yi kullanmanın iki yolu var. (Biri videoda mevcut)
1. pyuic5 adında bir program var. Terminalde çalışır ve bu ui dosyasını py sınıfı dosyasına çevirir. Biz bu dosya yi alır import eder ve kullanırız.
pyuic5 dosyaadi.ui -o dosyaadi.py şeklinde bir kullanımı vardır.
2. Doğrudan kullanmak. Bunun için from PyQt5 de bulunan loadUi fonksiyonu kullanıyorsunuz.

Ben genelde 1. Yöntemi kullanıyorum.

https://likegeeks.com/pyqt5-tutorial/amp/
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 24 Nisan 2020, 17:22:28
Spyder bir ide hocam. pycharm gibi. Ama ben pycharm i öneririm.
Pycharm i yüklemissinizdir diye düşünüyorum.

Eğer pycharm i pc ye kurduysanız, yeni proje başlangıcında interpreter seçerken anaconda yi seçiniz.(virtual env yapmayın simdilik)
Exiting interpreter i secim anaconda klasörünü gosterin(...anaconda/bin/python) şeklinde olmali.
Bu yönlendirme, yazdığınız kodların hangi python yorumlayicisiyla yorumlanacagini bildirir. Birden fazla yorumlayıcı olabileceğinden böyle bir yönteme başvurmuşlar.(virtual env ye sonra deginirim)
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 25 Nisan 2020, 01:59:30
Yeminle soyluyorum hayattan sogudum.

Bu dediklerinizi yapabilseydim astronot olurdum zaten.

Herkese cok tesekkurler.
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: muhittin_kaplan - 25 Nisan 2020, 04:13:13
aslında kolay ama ilkkez yapmanızdan, bunu sizde biliyorsunuz  ;)
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: z - 25 Nisan 2020, 07:22:18
Kesinlikle basittir de bu ilklerde Allah canimi aliyor hocam ve yeni bir duzene gecmekten nefret ediyorum.

QT den vazgectim tkinter ile isimi yariladim zaten.

Asil amacim, bir elektronik cihazin raspbery pi ile basitce kullanimini gosteren uygulama yapmak.

Anlatmak istedigimi kod ornekleri ile anlattiktan sonra devam etmek isteyen zaten cok daha iyisini sifirdan yapacaktir.

Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: tunayk - 25 Nisan 2020, 12:12:24
Alıntı yapılan: muhittin_kaplan - 25 Nisan 2020, 04:13:13aslında kolay ama ilkkez yapmanızdan, bunu sizde biliyorsunuz  ;)

Hocam ilk kez yapmanın elbetteki etkisi var ancak açık kaynak işlerinde genel olarak bir dağınıklık sıkıntısı var. Bir Delphi veya VS IDE si gibi derli toplu bişey bulmak zor. GitHub da binlerce büyük küçük proje kod parçacığı, herkes filin bir tarafından tutmuş, Pek çoğu yarım kalmış. Tabi diyeceksiniz ki bedava işler böyle oluyor, eh siz de haklısınız. :)
Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: CaFFeiNe - 25 Nisan 2020, 13:59:05
tkinter için Page Generator diye bişiy varmış, Delphi, Visual Basic vs gözünü seviyim ne cımcıklı işmiş bu pythonla görsel arabirim meselesi

Başlık: Ynt: Tek kartta bilgisayarlar (SBC) Python Raspberry Pi
Gönderen: mehmet - 25 Nisan 2020, 21:29:56
Bu, nereden başladığınızla
ilgili bu durum.

https://youtu.be/NoxOnLkwoTQ