Sawubona, Habr! Thina kakade mayelana nenkundla ye-LEGO MINDSTORMS Education EV3. Izinjongo eziyinhloko zale nkundla ukufunda ngezibonelo ezingokoqobo, ukuthuthukisa amakhono e-STEAM nokuthuthukisa umqondo wobunjiniyela. Ingasetshenziselwa umsebenzi waselabhorethri ukutadisha imishini kanye namandla. Amabhentshi aselabhorethri enziwe ngezitini ze-LEGO nezinsiza zokurekhoda nokucubungula idatha enza ukuhlola kuthakazelise futhi kubonakale nakakhulu futhi asize izingane ziqonde kangcono i-physics. Isibonelo, abafundi bangaqoqa idatha yephoyinti elincibilikayo futhi basebenzise uhlelo lokusebenza ukuze balihlele futhi balethule ngegrafu. Kodwa lokhu kumane kuyisiqalo: namuhla sizokutshela ukuthi ungayigcwalisa kanjani le sethi ngendawo yokuhlela ye-MicroPython futhi uyisebenzise ukufundisa amarobhothi.

Funda ukuhlela usebenzisa i-EV3
Izingane zesikole zesimanje zifuna ukubona imiphumela enemibalabala. Yebo, banesithukuthezi uma uhlelo luphrinta izinombolo ku-console, futhi bafuna ukubuka amagrafu ombala, imidwebo futhi benze amarobhothi angempela ahambayo futhi alandele imiyalo. Ikhodi evamile nayo ibonakala iyinkimbinkimbi kakhulu ezinganeni, ngakho-ke kungcono ukuqala ukufunda ngokuthile okulula.
Indawo eyisisekelo yokuhlela ye-EV3 isuselwe olimini lwesithombe lwe-LabVIEW futhi ikuvumela ukuthi ucacise ama-algorithms erobhothi ngokubukeka: imiyalo yethulwa ngendlela yamabhulokhi angahudulwa futhi axhunywe.

Le ndlela isebenza kahle uma udinga ukukhombisa ukuthi ama-algorithms akhiwa kanjani, kodwa ayifanele izinhlelo ezinenani elikhulu lamabhulokhi. Njengoba izimo ziba nzima kakhulu, kuyadingeka ukuthi uthuthele ohlelweni ngekhodi, kodwa lesi sinyathelo sinzima ukuthi izingane zisithathe.
Kukhona amaqhinga ambalwa lapha, elinye lawo ukukhombisa ukuthi ikhodi yenza into efanayo namabhulokhi. Emvelweni we-EV3, lokhu kungenzeka ngokuhlanganiswa kwe-MicroPython, ukuze izingane zikwazi ukudala uhlelo olufanayo kuzo zombili imvelo eyisisekelo yokuhlela ibhulokhi kanye nePython ku-Visual Studio Code ye-Microsoft. Babona ukuthi zombili izindlela zisebenza ngokufanayo, kodwa ukuxazulula izinkinga eziyinkimbinkimbi usebenzisa ikhodi kulula kakhulu.
Ishintshela ku-MicroPython
Imvelo ye-EV3 yakhelwe phezu kwephrosesa ye-ARM9, futhi abathuthukisi bashiye ngamabomu i-architecture ivuliwe. Lesi sixazululo senze kwaba nokwenzeka ukukhipha enye i-firmware, enye yazo okwakuyisithombe sokusebenza neMicroPython. Ikuvumela ukuthi usebenzise i-Python ukuhlela i-EV3 yakho, ilethe ikhithi eduze nakakhulu nemisebenzi yempilo yangempela.
Ukuze uqalise, udinga ukulanda kunoma yiliphi ikhadi le-microSD, lifake ku-microcomputer EV3 bese uyivula. Bese udinga ukufaka ye-Visual Studio. Futhi ungaqala ukusebenza.
Ukuhlela irobhothi lokuqala ku-MycroPython

Kuhlelo lwethu Kunezifundo ezimbalwa zokwenza kahle imiqondo eyisisekelo yamarobhothi. Amamodeli e-EV3 ethula izingane ezintweni eziyisisekelo ezisetshenziswa ezimotweni ezizishayelayo, amarobhothi ahlanganisayo embonini, kanye nemishini ye-CNC.
Sizothatha isibonelo somshini wokudweba, ongafundiswa ukudweba amaphethini namajamo wejometri. Leli cala liyinguqulo eyenziwe lula yamarobhothi abantu abadala abashisela noma abasalayo futhi libonisa ukuthi i-EV3 ingasetshenziswa kanjani kanye ne-MicroPython ukuze kufundiswe izingane zesikole. Futhi umshini wokudweba ungamaka izimbobo ebhodini lesifunda eliphrintiwe likababa, kodwa lelo elinye izinga elidinga izibalo.
Ngomsebenzi sidinga:
- I-LEGO MINDSTORMS Education EV3 Core Set;
- ishidi elikhulu lephepha le-checkered;
- izimpawu ezinemibala.
Ukuhlanganiswa kwerobhothi ngokwalo kungaphakathi , futhi sizobheka isibonelo sokuhlela.
Okokuqala siqalisa umtapo wolwazi wemojuli ye-EV3:
#!/usr/bin/env pybricks-micropython
from pybricks import ev3brick as brick
from pybricks.ev3devices import (Motor, TouchSensor, ColorSensor, GyroSensor)
from pybricks.parameters import Port, Stop, Direction, Color, ImageFile
from pybricks.tools import wait
Setha inkundla ezungezisa isibambo njengenjini echwebeni B. Setha isilinganiso segiya sesitimela esinezigaba ezimbili esinamazinyo amaningi angu-20-12-28, ngokulandelana.
turntable_motor = Motor(Port.B, Direction.CLOCKWISE, [20, 12, 28])
Silungiselela indlela yokuphakamisa isibambo njengenjini echwebeni C:
seesaw_motor = Motor(Port.C)
Silungiselela i-gyroscope, ekala i-engeli yokuthambekela kwesibambo, kumbobo 2:
gyro_sensor = GyroSensor(Port.S2)
Silungiselela inzwa yombala kumbobo 3. Inzwa isetshenziselwa ukuthola iphepha elimhlophe ngaphansi komshini wokudweba:
color_sensor = ColorSensor(Port.S3)
Silungiselela inzwa yokuthinta ku-port 4. Irobhothi iqala ukudweba lapho inzwa icindezelwa:
touch_sensor = TouchSensor(Port.S4)
Sichaza imisebenzi ephakamisa futhi yehlise isibambo:
def pen_holder_raise():
seesaw_motor.run_target(50, 25, Stop.HOLD)
wait(1000)
def pen_holder_lower():
seesaw_motor.run_target(50, 0, Stop.HOLD)
wait(1000)
Sichaza umsebenzi wokuzungezisa isibambo siye ku-engeli enikeziwe noma i-engeli ethile:
def pen_holder_turn_to(target_angle):
if target_angle > gyro_sensor.angle():
Uma i-engeli eqondiwe inkulu kune-engeli yenzwa ye-gyro yamanje, qhubeka uye nokuhamba kwewashi ngesivinini esivumayo:
turntable_motor.run(70)
while gyro_sensor.angle() < target_angle:
pass
elif target_angle < gyro_sensor.angle():
Uma i-engeli eqondiwe ingaphansi kwenzwa ye-gyro yamanje, hambisa ngokuphikisana newashi:
turntable_motor.run(-70)
while gyro_sensor.angle() > target_angle:
pass
Misa iplathifomu ejikelezayo lapho i-engeli eqondiwe ifinyelelwa:
turntable_motor.stop(Stop.BRAKE)
Setha indawo yokuqala yesibambo endaweni ephezulu:
pen_holder_raise()
Manje kufika ingxenye eyinhloko yohlelo - iluphu engapheli. I-EV3 ilinda kuqala inzwa yombala ukuze ithole iphepha elimhlophe noma isikwele sokuqala esiluhlaza okwesibhakabhaka kanye nenzwa yokuthinta ukuze icindezelwe. Khona-ke udweba iphethini, ubuyela endaweni yokuqala futhi uphinda konke futhi.
Uma idivayisi ingakalungi, ama-LED kusilawuli aphenduka abebomvu futhi isithombe "sezithupha phansi" siboniswa esikrinini se-LCD:
while True:
brick.light(Color.RED)
brick.display.image(ImageFile.THUMBS_DOWN)
Silinda kuze kube yilapho inzwa yombala ibala okuluhlaza okwesibhakabhaka noma okumhlophe, setha umbala we-LED ube luhlaza, sibonise isithombe βsokushaphuβ esikrinini se-LCD futhi sibike ukuthi idivayisi isilungele ukusetshenziswa:
while color_sensor.color() not in (Color.BLUE, Color.WHITE):
wait(10)
brick.light(Color.GREEN)
brick.display.image(ImageFile.THUMBS_UP)
Silinda ukuthi inzwa yokuthinta icindezelwe, sinikeze inani le-engeli engu-0 kunzwa ye-gyroscopic bese siqala ukudweba:
while not touch_sensor.pressed():
wait(10)
gyro_sensor.reset_angle(0)
pen_holder_turn_to(15)
pen_holder_lower()
pen_holder_turn_to(30)
pen_holder_raise()
pen_holder_turn_to(45)
pen_holder_lower()
pen_holder_turn_to(60)
Phakamisa isibambi sosiba bese usibuyisela endaweni yaso yokuqala:
pen_holder_raise()
pen_holder_turn_to(0)</i>
Lolu wuhlelo olulula esilwenzile. Futhi manje siyethula futhi sibheke irobhothi elibhalayo lisebenza.
Zisinikezani izibonelo ezinjalo?

I-EV3 iyithuluzi lesiqondiso somsebenzi wemisebenzi ye-STEM kanye nendawo yokungena emisebenzini yobunjiniyela. Njengoba ingasetshenziswa ukuxazulula izinkinga ezingokoqobo, izingane zithola ulwazi ekuthuthukisweni kwezobuchwepheshe kanye nokwakhiwa kwamarobhothi ezimboni, zifunde ukulingisa izimo zangempela, ukuqonda izinhlelo nokuhlaziya ama-algorithms, kanye nobuciko bokwakha izinhlelo eziyisisekelo.
Ukusekelwa kweMicroPython kwenza inkundla ye-EV3 ifanelekele ukufundisa esikoleni esiphakeme. Abafundi bangazizama njengabahleli bohlelo ngolunye lwezilimi zesimanje ezidume kakhulu, futhi bajwayelane nobungcweti obuhlobene nezinhlelo kanye nedizayini yobunjiniyela. Amakhithi e-EV3 abonisa ukuthi ukubhala ngekhodi akwesabisi, akulungiselela izinselele ezinzima zobunjiniyela, futhi akusize ukuthi uthathe isinyathelo sokuqala sokuthola amakhono obuchwepheshe. Futhi kulabo abasebenza ezikoleni futhi ezihambisana nemfundo, sizilungiselele kanye nezinto zokufundisa. Bachaza ngokuningiliziwe ukuthi yimaphi amakhono athuthukiswayo lapho kwenziwa imisebenzi ethile, nokuthi amakhono atholiwe ahlobana kanjani namazinga okuqeqesha.
Source: www.habr.com
