Gömülü Cihazlar İçin GUI Tasarlamak
HTML-код
- Опубликовано: 29 сен 2024
- github.com/ede...
0:11 Giriş ve İhsan Keyribar eTP'nin bu bölümünde gömülü sistem cihazlara bağlanıp cihazlardan data alma, cihazlarla ilgili grafiklerin çizdirilmesi gibi konuların anlatılacağını aktardı.
1:08 Open source programın nasıl çalıştığı görsel olarak anlatıldı. Bu programın cihaza gönderilen komutları grafiğe dökebildiği belirtildi.
3:03 İhsan Kehribar, cihaz haberleşme protokolünü çizim üzerinde anlattı.
5:52 Arduino kodu üzerinden haberleşme protokolü anlatıldı. İlk olarak setup kısmında uart_init, timer_init, tesVal_init ve comHandler_init gibi bilgilerin olduğu aktarıldı.
7:20 timer_tick kodu incelendi. Packet timeout handler kısmının; örneğin cihaz 100 bayt data beklerken bir şekilde 90 bayt data gelmesi sonucu sistemin kilitlenmesinin önüne geçmek için kullanıldığı aktarıldı.
9:34 uart açıldıktan sonra seralEvent kısmında yeni mesaj gelip gelmediğinin kontrol edildiği aktarıldı. İhsan Kehribar, buffer buffer overflow korumasının olduğunu ve bir hata olduğunda bütün okuma algoritmasının bununla resetlenebildiğini belirtti.
13:12 Bir sonraki aşamada gelen bir paket varsa artık bunu handle etmek için kullanılan kod anlatıldı. İhsan Kehribar burada çok temek bir switch case olduğunu ve bunun bize test değerlerini geri gönderdiğini söyledi.
14:57 Dört baytlık bir data karşı tarafa nasıl gönderilir? İhsan Kehribar put32b metodu üzerinden soruyu cevapladı. put32b metodunun gelen değeri sırayla sekiz bit olarak işlediği sırayla uarttan teker teker gönderdiği anlatıldı. put32b metodunda farklı konseptlerin olduğu söylendi ve bu konseptlerin en büyük baytın başta mı yoksa sonda mı gönderileceği gibi seçimler yapmak için kullanıldığı anlatıldı.
19:48 İhsan Kehribar, özetle büyük sayıları küçük sayılara bölerek sırayla bir trene konulduğunu ve uarttan gönderildiğini söyledi. Daha sonrasında, gelen sayıları da birleştirerek bir bütün haline getirildiği aktarıldı.
22:41 Komutları grafiğe döken programın Python ile nasıl şekillendirildiği anlatıldı.
31:17 pyqtgraph'ın nasıl oluşturulduğu Python üzerinden anlatıldı. İhsan Kehribar dört adet farklı grafik oluşturup, bu grafiklerin isimleri, eksenleri gibi bilgilerin ayarlanabildiğini anlattı.
33:40 İhsan Kehribar, genel grafik programlarında koşması gereken iki adet metodun olduğunu belirtti. Ara yüz (UI) metodunun 30 FPS de koşabileceği aktarıldı. Koşması gereken ikinci metodun ise Data comm olduğu söylendi. Data comm'un cihazdan data almak için kullanılan bir metot olduğu aktarıldı. Bu iki metodun birbirinden ayrılmasının gerekli olduğu söylendi.
39:17 BufferLock nedir? İhsan Kehribar, BufferLock'ın treeding kütüphanesinin sunmuş olduğu bir değişken tipi olduğunu söyledi.
47:38 İhsan Kehribar bu projenin edelkrone gitHub hesabında bulunduğunu ve bakılabileceğini söyledi.
51:59 Kapanış.
#guitasarımı #python #eTP
Bu yaptığınız işler bu coğrafyada daha önce hiç vücut bulmamış şeyler. Yaptığınız hemen hemen herşeyi takip etmeye çalışıyorum. Hem teknik açıdan hem de fikri açıdan çok değerli olan bu bilgilerinizi bizimle paylaştığınız için çok teşekkür ederiz. Yabancı kaynaklardan öğrendiğimiz çoğu bilginin ve teknik faaliyetlerin türkçesine bu kalitede ulaşmak bizlere gurur ve cesaret veriyor. İnsanlara anlatmaktan yorulduğumuz yapılabilir savaşında bizi haklı çıkaran en önemli kozsunuz. Bizden arkanızdan gelmek için elimizden geleni ardımıza koymayacağımız hususunda sizlere söz veriyoruz. Nasıl bir fedakarlık yaptığınızın farkındayız. Bizlere ayırdığınız bunca zamanın hakkını verebilmek ümidiyle Kadir Köymen ve Değerli Arkadaşları esen kalın :)
Hiçbir şey anlamasam da istemsizce izliyorum.
Bence artık dernekleşmeliyiz..
Video Gerçekten çok başarılı, program geçmişi olan arkadaşlara güzel bir video olmuş ellerinize sağlık.
Hocam aynen devam bu seviye gayet başarılı.
.sonunda hataları giderdim fakat port soruyor arduinonun baglı oldugu porto com7 yazıyorım hata veriyorneden ?? naSI Düzeltirim aht ettim çalıştıracam azimle cebelleşiyorum yaedım please :)
RESTART: C:\Users\Administrator\Documents\Arduino\pyqt5_realtime_graph-master\main.py
What is the port address?
>>> 7
7
>>> com7
Traceback (most recent call last):
File "", line 1, in
com7
NameError: name 'com7' is not defined
Merhabalar neden modbus protokolü kullanmadınız ? Daha standart bir yapı olmuş olurdu başka sistemler ile entegrasyon aşaması için bir basamak olurdu.
Ilk yorum mu :D
timer kutuphanesi için
www.arduinolibraries.info/libraries/timer-one
stdbool.h : zaten var
gui çalıştırmak için :file installer: py to exe programı yada www.python.org/downloads/
www.pyqtgraph.org/downloads/0.10.0/pyqtgraph-0.10.0.win32.exe
sourceforge.net/projects/pyqt/
yukarııdakileri kurup denedim main.py yi çalıştırmayı fakat
Traceback (most recent call last):
File "C:\Users\Administrator\Documents\Arduino\pyqt5_realtime_graph-master\main.py", line 6, in
import pyqtgraph as pg
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pyqtgraph\__init__.py", line 13, in
from .Qt import QtGui
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pyqtgraph\Qt.py", line 44, in
raise Exception("PyQtGraph requires one of PyQt4, PyQt5 or PySide; none of these packages could be imported.")
Exception: PyQtGraph requires one of PyQt4, PyQt5 or PySide; none of these packages could be imported.
hata alıyorum çalıştırmak için biraz cebelleşmek lazım sanırım :)
Merhaba ,kodlar elinizde mevcut mu hala ?
linüx gang
hocam bu port soruyor napacaz
Bence başlık yanıltıcı olmuş. USB'den gelen veriyi pyqt ile nasıl görselleştiriliriz olsa daha doğru olur.
Gömülü cihazlar için GUI denince benim aklıma mikroişlemci/denetleyici ile nasıl GUI oluşturulur diye anlıyorum.
aynısını nextionla yap sen de ??