Sadržaj:

Započnite s Raspberry Pi GUI: 8 koraka
Započnite s Raspberry Pi GUI: 8 koraka

Video: Započnite s Raspberry Pi GUI: 8 koraka

Video: Započnite s Raspberry Pi GUI: 8 koraka
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Studeni
Anonim
Započnite s Raspberry Pi GUI
Započnite s Raspberry Pi GUI

Dakle, imate Raspberry Pi i super ideju, ali kako olakšati interakciju svojim korisnicima poput pametnog telefona?

Izgradnja grafičkog korisničkog sučelja (GUI) zapravo je prilično jednostavna, a uz malo strpljenja možete stvoriti nevjerojatne projekte.

Korak 1: Široki pregled

Jedan od najmoćnijih alata koje Raspberry Pi pruža u odnosu na druge mikroe, brza je i jednostavna izrada grafičkog korisničkog sučelja (GUI) za vaš projekt.

Jedan od načina da to postignete, posebnost ako imate cijeli zaslon osjetljiv na dodir (ili standardni zaslon i ulazni uređaj poput miša), postao je nevjerojatan!

U svrhu ovog članka koristit ćemo Python 3 s Tkinterom:

Moćna knjižnica za razvoj aplikacija za grafičko korisničko sučelje (GUI) na Raspberry Pi -ju što se tiče proizvođača.

Tkinter se vjerojatno najčešće koristi s Pythonom, a na internetu postoji mnogo resursa.

2. korak: "Hello World" u Tkinteru

Slika
Slika

Koristimo aRaspberry Pi učitan Raspbian Stretch OS.

Za pokretanje Tkinter GUI aplikacija. Također možemo koristiti bilo koji drugi operativni sustav koji ima instaliran python.

Raspbian dolazi s instaliranim Python 2, Python 3 i Tkinter knjižnicom.

Da biste provjerili koju ste verziju instalirali, iz terminala pokrenite:

python3 --verzija

Izradite novu datoteku pod nazivom app.py i unesite donji kôd prikazan ispod:

#!/usr/bin/python

iz tkinter import * # uvozi Tkinter lib root = Tk () # kreira korijenski objekt root.wm_title ("Hello World") # postavlja naslov prozora root.mainloop () # pokreće GUI petlju

Ako ne koristite IDE, pokrenite sljedeću naredbu u terminalu iz direktorija koji sadrži vaš Python kôd da biste pokrenuli program.

python3 app.py

Korak 3: Prilagođavanje prozora

Prilagođavanje prozora
Prilagođavanje prozora

Pogledajmo sada kako prilagoditi ovaj prozor.

Boja pozadine

root.configure (bg = "black") # promijenite boju pozadine u "black"

ili

root.configure (bg = " # F9273E") # koristite heksadecimalni kôd boje

Dimenzije prozora

root.geometry ("800x480") # odredite dimenziju prozora

ili

root.attributes ("-cijeli zaslon", True) # postavljeno na cijeli zaslon

Imajte na umu da ćete zaglaviti u načinu rada preko cijelog zaslona ako ne stvorite način za izlaz

# možemo izaći kad pritisnemo tipku za izlaz

def end_fullscreen (event): root.attributes ("-fullscreen", False) root.bind ("", end_fullscreen)

Korak 4: Widgeti u Tkinteru

Widgeti u Tkinteru
Widgeti u Tkinteru
Widgeti u Tkinteru
Widgeti u Tkinteru

Tkinter uključuje mnogo različitih widgeta koji će vam pomoći stvoriti najprikladnije korisničko sučelje. Widgeti koje možete koristiti uključuju: • tekstualni okvir

• tipke

• tipka za provjeru

• klizač

• okvir s popisom

• Radio gumb

• itd.

Sada možemo dodati neke widgete poput teksta, gumba i unosa.

Dodavanje widgeta

Naljepnice

label_1 = Oznaka (root, text = "Zdravo, Svijete!")

Prije nego što bude vidljiv u prozoru, moramo postaviti njegov položaj. Koristit ćemo pozicioniranje mreže.

label_1.grid (row = 0, column = 0) # postavite poziciju

Unos unosa

label_1 = Label (root, text = "Zdravo, Svijete!", font = "Verdana 26 podebljano, fg ="#000 ", bg ="#99B898 ")

label_2 = Label (root, text = "Kako se zovete?", height = 3, fg = "#000", bg = "#99B898") entry_1 = Unos (root) #input entry label_1.grid (row = 0, stupac = 0) label_2.grid (redak = 1, stupac = 0) entry_1.grid (redak = 1, stupac = 1)

Gumbi

#Dodajte gumb unutar prozora

Button = Button (root, text = "Submit") Button.grid (redak = 2, stupac = 1)

Korak 5: Dodavanje logike

Dodavanje logike
Dodavanje logike
Dodavanje logike
Dodavanje logike

Sada imamo jednostavan obrazac, međutim klik na gumb ne čini ništa !!

Istražit ćemo kako postaviti događaj na widgetu za gumbe i povezati ga s funkcijom koja se izvršava kad se klikne.

U tu ćemo svrhu ažurirati label_1 za prikaz "Pozdrav + tekst unet u unos". Kada odaberete gumb za slanje.

Preuzmite donji kôd, a zatim ga pokrenite.

Korak 6: LED upravljanje

LED kontrola
LED kontrola
LED kontrola
LED kontrola
LED kontrola
LED kontrola
LED kontrola
LED kontrola

Do sada vidimo kako dodati gumb u prozor i dodati mu logiku kako bi izvršili radnju.

Sada ćemo malo promijeniti kôd. Stoga ćemo stvoriti obrazac i dodati mu dva gumba. Jedan za uključivanje/isključivanje LED diode, a drugi za izlaz iz programa.

Napomena: Prije početka provjerite jeste li ažurirali Raspberry i imate li instaliranu biblioteku GPIO, otvorite naredbeni prozor i unesite sljedeće instalacije biblioteke GPIO. Otvorite naredbeni prozor i unesite sljedeće:

$ sudo apt-get ažuriranje

$ sudo apt-get install python-rpi.gpio python3-rpi.gpio

Konstrukcija:

Potrebni dijelovi:

1 x malina Pi 3

1 x LED

1 x 330Ω otpornik

Izgradnja kruga:

Pratite gornje fotografije.

Obratite pozornost na orijentaciju LED diode i pin gdje je spojen (GPIO23).

Korak 7: Dodavanje kontrolera servo motora

Dodavanje kontrolera servo motora
Dodavanje kontrolera servo motora
Dodavanje kontrolera servo motora
Dodavanje kontrolera servo motora
Dodavanje kontrolera servo motora
Dodavanje kontrolera servo motora

Preći ćemo na nešto drugo osim na gumb. Također možemo koristiti različite ulaze za kontrolu izlaza PWM (Pulse Width Modulation) iz Raspberry Pi.

Servo motor odličan je izbor koji prevodi PWM signal u kut.

Konstrukcija:

Potrebni dijelovi:

1 x malina Pi 3

1 x LED

1 x 330Ω otpornik

1 x servo motor

Izgradnja kruga:

Slijedite gornji dijagram (LED spojen na GPIO 23, servo motor spojen na GPIO 18).

Provjerite video ako ste zaglavili.

Korak 8: Zaključak

Evo ga! Idite naprijed i osvojite neke nevjerojatne ideje za korisničko sučelje!

Naravno, ako imate bilo kakvih pitanja, možete ostaviti komentar.

Za više informacija o mojim radovima posjetite moj kanal

myYouTube

myTwitter

myLinkedin

Hvala vam što ste pročitali ovo uputstvo ^^ i ugodan dan vam želim. Vidimo se. Ahmed Nouira.

Preporučeni: