Përmbajtje:

Lidhja e përpunimit dhe Arduino dhe Make 7 Segment dhe Servo GUI Controller: 4 hapa
Lidhja e përpunimit dhe Arduino dhe Make 7 Segment dhe Servo GUI Controller: 4 hapa

Video: Lidhja e përpunimit dhe Arduino dhe Make 7 Segment dhe Servo GUI Controller: 4 hapa

Video: Lidhja e përpunimit dhe Arduino dhe Make 7 Segment dhe Servo GUI Controller: 4 hapa
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Nëntor
Anonim
Lidhja e përpunimit dhe Arduino dhe Make 7 Segment dhe Servo GUI Controller
Lidhja e përpunimit dhe Arduino dhe Make 7 Segment dhe Servo GUI Controller

Për disa projekte që keni bërë duhet të përdorni Arduino pasi siguron një platformë të lehtë prototipimi, por shfaqja e grafikëve në monitorin serik të Arduino mund të zgjasë shumë kohë dhe madje është e vështirë të bëhet. Ju mund të shfaqni grafikë në Arduino Serial Monitor por grafikët nuk janë e vetmja gjë që mund t'ju duhet të shfaqni. Të gjitha objektet ndërvepruese si rrëshqitësit, butonat, programet me dalje 2D, 3D, PDF ose SVG dhe gjithashtu mund të krijoni animacione me lehtësi. Mënyra e paracaktuar e programimit për përpunim është Java, por mund ta ndërroni në Android, p5.js, REPL, CoffeeScript dhe JavaScript. Në këtë Instructable ne megjithatë do të përdorim mënyrën e programimit Java.

E gjithë përmbajtja dhe kodi janë gjithashtu në dispozicion në github tim këtu.

Hapi 1: Përdorimi i Processing.serial

Kodi i përpunimit

Dy rreshtat e parë të kodit do të jenë

përpunimi i importit.serial.*; Seriali myPort;

Këtu në rreshtin e parë ne po importojmë bibliotekën - përpunimi dhe në rreshtin e dytë ne po krijojmë një objekt të klasës Serial i quajtur myPort, ju mund ta emërtoni atë çfarë të doni duke ndjekur rregullat e emërtimit të një identifikuesi.

Në përpunim ne kemi void setup () dhe void draw () ku void është lloji i kthimit të funksionit ju gjithashtu mund ta ndryshoni atë në int setup () dhe int draw () ose lloje të tjera të të dhënave që ju pëlqen, por do t'ju duhet të ktheni një vlerë e cila ka të njëjtin lloj të dhënash si lloji i të dhënave që përdorni para funksioneve.

në setup () ne shkruajmë deklaratat që duhet të ekzekutojmë një herë ndërsa në barazim () ne shkruajmë deklaratat që na duhen për të ekzekutuar shumë herë. Dy rreshtat e kodit të përmendur më sipër duhet të shkruhen mbi void setup () sepse ato duhet të kenë qasje globale.

Në void setup () ne do të inicializojmë objektin myPort.

void setup () {

madhësia (800, 800);

myPort = Serial i ri (kjo, "COM18", 9600);

}

Madhësia e linjës (800, 800); përcakton madhësinë e ekranit që është 800 piksele me 800 piksele.

Fjala kyçe e re në rreshtin e dytë përdoret për të rezervuar hapësirë për objektin në kujtesë, argumenti ky është një ndryshore referimi që i referohet objektit aktual. Argumenti COM18 është porti i Arduino i lidhur, ne kemi nevojë për këtë pasi do të transportojmë të dhënat përmes ndërfaqes serike. Numri 18 mund të jetë i ndryshëm në rastin tuaj, mund ta gjeni nën Veglat> Porti në Arduino IDE dhe 9600 është norma e baudit që mund ta ndryshoni këtë si në Arduino ashtu edhe në Përpunim.

Hapi 2: Kuptoni Klasën Seriale

Konstruktori për Serialin

Serial (prind, emri i portit, baudRate, pariteti, dataBits, stopBits)

Argumentet:

prind: zakonisht përdorni "këtë"

baudRate (int): 9600 është parazgjedhja

Emri i portës (String): emri i portës (COM1 është parazgjedhja)

barazia (shkronja): 'N' për asnjë, 'E' për çift, 'O' për tek, 'M' për shenjën, 'S' për hapësirën ('N' është parazgjedhja)

dataBits (int): 8 është parazgjedhja

stopBits (noton): 1.0, 1.5, ose 2.0 (1.0 është parazgjedhja)

Metodat e rëndësishme:

  1. myPort.available () - kthen numrin e bajtëve në dispozicion.
  2. myPort.clear () - zbraz tamponin dhe heq të gjitha të dhënat e ruajtura atje.
  3. myPort.read () - Kthen një numër midis 0 dhe 255 për bajtin tjetër që pret në tampon.
  4. myPort.readString () - Kthen të gjitha të dhënat nga tamponi si String ose null nëse nuk ka asgjë në dispozicion.
  5. myPort.write ("test") - Shkruan bytes, chars, ints, bytes , stringje në portën seriale.
  6. myPort.stop () - Ndan kominikimin e të dhënave në port.

Hapi 3: Klasa Seriale e Arduino

Nuk keni nevojë të importoni Klasën Seriale në Arduino para se ta përdorni.

Në Arduino ekzistojnë 2 funksione të quajtura setup () dhe loop () setup ekzekutohet vetëm një herë, por cikli funksionon shumë herë. Në setup () ne duhet të shkruajmë duke përdorur metodën begin () për të filluar komunikimin serik. Në Arduino ndryshe nga përpunimi nuk kemi nevojë të përmendim portin si argumentet e metodës begin () pasi tashmë e specifikojmë portin gjatë ngarkimit të skicës në Arduino.

Pra, konfigurimi () do të duket kështu:

void setup () {

Serial.filloj (9600); // filloni komunikimin serik

}

9600 këtu specifikon normën e baudit që e kishim përmendur edhe këtë në skedarin e përpunimit. Për komunikimin e duhur, të dy nivelet e baudit duhet të jenë të barabarta ose mund ta shihni prodhimin serik si diçka marramendëse.

Tani le të shohim pjesën lak (). Kjo pjesë e kodit ekzekutohet disa herë. Nëse duam të lexojmë disa të dhëna nga porti do të përdorim metodën Serial.read (). Ky funksion kthehet null nëse nuk ka të dhëna në dispozicion, kështu që ne do ta quajmë këtë metodë vetëm kur kemi disa të dhëna në dispozicion në serial stream.

Për të kontrolluar nëse ka disa të dhëna në dispozicion, ne do të përdorim metodën Serial.available (). Nëse kthen vlerë më të madhe se 0 - disa të dhëna janë në dispozicion.

Pra, pjesa e lakut () do të duket kështu:

lak void () {

nëse (Serial.disponueshëm ()> 0) {// nëse disa të dhëna janë të disponueshme në portën seriale

gjendje char = Serial.read (); // lexoni vlerën

// nëse deklaratat ose ndërrojnë rastin

}

}

Tani ne mund të përdorim nëse shkallë ose nëse ka shumë rezultate të mundshme, ne mund të përdorim rastin kalues gjithashtu për gjendje të ndryshueshme.

Hapi 4: Ndërtoni një kontrollues segmentesh GUI 7

Ndërtoni një kontrollues segmentesh GUI 7
Ndërtoni një kontrollues segmentesh GUI 7
Ndërtoni një kontrollues segmentesh GUI 7
Ndërtoni një kontrollues segmentesh GUI 7
Ndërtoni një kontrollues segmentesh GUI 7
Ndërtoni një kontrollues segmentesh GUI 7

Dosjet janë bashkangjitur këtu. Shënim: Për përpunim do t'ju duhet gjithashtu të instaloni bibliotekën e kontrollit p5 të cilën e kam përdorur për të krijuar butona ndërveprues GUI.

Numrat pin

Segmenti 7 (sipas rendit alfabetik) i referohet figurës

a - pin dixhital 2

b - pin dixhital 3

c - kunja dixhitale 4

d - pin dixhital 5

e - pin dixhital 6

f - pin dixhital 7

g - kunja dixhitale 8

dp - pin dixhital 9

E gjithë përmbajtja dhe kodi janë gjithashtu në dispozicion në github tim këtu

Recommended: