Kaabo, Habr! A ti tẹlẹ nipa LEGO MINDSTORMS Education EV3 Syeed. Awọn ibi-afẹde akọkọ ti pẹpẹ yii jẹ kikọ nipasẹ awọn apẹẹrẹ iwulo, idagbasoke awọn ọgbọn STEAM ati idagbasoke iṣaro imọ-ẹrọ. O le ṣee lo fun iṣẹ yàrá lati ṣe iwadi awọn ẹrọ ati awọn agbara. Awọn ibujoko yàrá ti a ṣe lati awọn biriki LEGO ati awọn ohun elo fun gbigbasilẹ ati sisẹ data jẹ ki awọn idanwo paapaa iwunilori ati wiwo ati iranlọwọ fun awọn ọmọde ni oye fisiksi daradara. Fun apẹẹrẹ, awọn ọmọ ile-iwe le gba data aaye yo ati lo app lati ṣeto ati ṣafihan rẹ ni aworan kan. Ṣugbọn eyi jẹ ibẹrẹ: loni a yoo sọ fun ọ bi o ṣe le ṣe iranlowo eto yii pẹlu agbegbe siseto MicroPython ati lo lati kọ ẹkọ awọn ẹrọ roboti.

Kọ ẹkọ siseto nipa lilo EV3
Awọn ọmọ ile-iwe ode oni fẹ lati rii awọn abajade awọ. Bẹẹni, wọn sunmi ti eto naa ba tẹ awọn nọmba si console, ati pe wọn fẹ lati wo awọn aworan awọ, awọn aworan atọka ati ṣẹda awọn roboti gidi ti o gbe ati tẹle awọn aṣẹ. Koodu deede tun dabi idiju pupọ fun awọn ọmọde, nitorinaa o dara lati bẹrẹ ikẹkọ pẹlu nkan ti o rọrun.
Ayika siseto ipilẹ EV3 da lori ede ayaworan LabVIEW ati gba ọ laaye lati pato awọn algoridimu fun robot ni wiwo: awọn aṣẹ ti gbekalẹ ni irisi awọn bulọọki ti o le fa ati sopọ.

Ọna yii n ṣiṣẹ daradara nigbati o nilo lati ṣafihan bi a ṣe kọ awọn algoridimu, ṣugbọn ko dara fun awọn eto pẹlu nọmba nla ti awọn bulọọki. Bi awọn oju iṣẹlẹ ti di idiju, o jẹ dandan lati gbe si siseto pẹlu koodu, ṣugbọn igbesẹ yii nira fun awọn ọmọde lati mu.
Awọn ẹtan diẹ wa nibi, ọkan ninu eyiti o jẹ lati fihan pe koodu naa ṣe ohun kanna bi awọn bulọọki. Ni agbegbe EV3, eyi ṣee ṣe nipasẹ iṣọpọ MicroPython, nitorinaa awọn ọmọde le ṣẹda eto kanna ni agbegbe siseto ipilẹ ipilẹ ati Python ni koodu Studio Visual Microsoft. Wọn rii pe awọn ọna mejeeji ṣiṣẹ kanna, ṣugbọn yiyan awọn iṣoro eka lilo koodu jẹ irọrun diẹ sii.
Yipada si MicroPython
Ayika EV3 ti wa ni itumọ ti lori ero isise ARM9 kan, ati pe awọn olupilẹṣẹ naa mọọmọ fi faaji silẹ ni ṣiṣi. Ojutu yii jẹ ki o ṣee ṣe lati yipo famuwia omiiran, ọkan ninu eyiti o jẹ aworan fun ṣiṣẹ pẹlu MicroPython. O gba ọ laaye lati lo Python lati ṣe eto EV3 rẹ, mu kit naa paapaa sunmọ awọn iṣẹ ṣiṣe gidi-aye.
Lati bẹrẹ, o nilo lati ṣe igbasilẹ lori kaadi microSD eyikeyi, fi sii ni microcomputer EV3 ki o tan-an. Lẹhinna o nilo lati fi sori ẹrọ fun Visual Studio. Ati pe o le bẹrẹ ṣiṣẹ.
Siseto akọkọ robot ni MycroPython

Lori wa Awọn ẹkọ pupọ lo wa fun ṣiṣakoso awọn imọran ipilẹ ti awọn roboti. Awọn awoṣe EV3 ṣafihan awọn ọmọde si awọn ipilẹ ti a lo ninu awọn ọkọ ayọkẹlẹ awakọ ti ara ẹni, awọn roboti apejọ ile-iṣẹ, ati awọn ẹrọ CNC.
A yoo gba apẹẹrẹ ti ẹrọ iyaworan, eyiti o le kọ ẹkọ lati fa awọn ilana ati awọn apẹrẹ jiometirika. Ọran yii jẹ ẹya irọrun ti alurinmorin agbalagba tabi awọn roboti ọlọ ati fihan bi EV3 ṣe le lo ni apapo pẹlu MicroPython lati kọ awọn ọmọ ile-iwe. Ati ẹrọ iyaworan le samisi awọn ihò ninu igbimọ Circuit ti a tẹjade fun baba, ṣugbọn iyẹn jẹ ipele miiran ti o nilo iṣiro.
Fun iṣẹ a nilo:
- LEGO MINDSTORMS Ẹkọ EV3 Core Ṣeto;
- iwe nla ti iwe ayẹwo;
- awọ asami.
Apejọ ti robot funrararẹ wa ninu , ati pe a yoo wo apẹẹrẹ siseto kan.
Ni akọkọ a bẹrẹ ile-ikawe module 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
A ṣeto ipilẹ kan ti o yiyi mimu bi ọkọ ayọkẹlẹ kan ni ibudo B. A ṣeto ipin jia ti ọkọ oju-irin jia ipele meji pẹlu nọmba awọn eyin ti 20-12-28, lẹsẹsẹ.
turntable_motor = Motor(Port.B, Direction.CLOCKWISE, [20, 12, 28])
A tunto ẹrọ gbigbe fun mimu bi motor ni ibudo C:
seesaw_motor = Motor(Port.C)
A tunto gyroscope, eyiti o ṣe iwọn igun ti iteri ti mimu, ni ibudo 2:
gyro_sensor = GyroSensor(Port.S2)
A tunto sensọ awọ ni ibudo 3. A lo sensọ lati ṣawari iwe funfun labẹ ẹrọ iyaworan:
color_sensor = ColorSensor(Port.S3)
A tunto sensọ ifọwọkan ni ibudo 4. Robot bẹrẹ iyaworan nigbati sensọ ti tẹ:
touch_sensor = TouchSensor(Port.S4)
A setumo awọn iṣẹ ti o gbe ati isalẹ awọn mu:
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)
A ṣe asọye iṣẹ kan lati yi imudani pada si igun ti a fun tabi si igun kan:
def pen_holder_turn_to(target_angle):
if target_angle > gyro_sensor.angle():
Ti igun ibi-afẹde ba tobi ju igun sensọ gyro lọwọlọwọ, tẹsiwaju ni iwọn aago pẹlu iyara to dara:
turntable_motor.run(70)
while gyro_sensor.angle() < target_angle:
pass
elif target_angle < gyro_sensor.angle():
Ti igun ibi-afẹde ba kere si sensọ gyro lọwọlọwọ, lẹhinna gbe lọna aago:
turntable_motor.run(-70)
while gyro_sensor.angle() > target_angle:
pass
Duro pẹpẹ ti o yiyi nigbati igun ibi-afẹde ba de:
turntable_motor.stop(Stop.BRAKE)
Ṣeto ipo ibẹrẹ ti mimu ni ipo oke:
pen_holder_raise()
Bayi ni apakan akọkọ ti eto naa wa - lupu ailopin. EV3 kọkọ duro fun sensọ awọ lati rii iwe funfun kan tabi square ibẹrẹ buluu ati fun sensọ ifọwọkan lati tẹ. Lẹhinna o fa apẹrẹ kan, pada si ipo ibẹrẹ ati tun ṣe ohun gbogbo lẹẹkansi.
Nigbati ẹrọ naa ko ba ṣetan, awọn LED ti o wa lori oludari yipada pupa ati aworan “atampako isalẹ” ti han loju iboju LCD:
while True:
brick.light(Color.RED)
brick.display.image(ImageFile.THUMBS_DOWN)
A duro titi sensọ awọ yoo ka buluu tabi funfun, ṣeto awọ LED si alawọ ewe, ṣafihan aworan “atampako soke” lori iboju LCD ki o jabo pe ẹrọ naa ti ṣetan fun lilo:
while color_sensor.color() not in (Color.BLUE, Color.WHITE):
wait(10)
brick.light(Color.GREEN)
brick.display.image(ImageFile.THUMBS_UP)
A duro fun sensọ ifọwọkan lati tẹ, fi iye igun naa 0 si sensọ gyroscopic ki o bẹrẹ iyaworan:
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)
Gbe ohun ikọwe soke ki o da pada si ipo atilẹba rẹ:
pen_holder_raise()
pen_holder_turn_to(0)</i>
Eyi ni eto ti o rọrun ti a ṣẹda. Ati ni bayi a ṣe ifilọlẹ ati wo robot kikọ ni iṣe.
Kí ni irú àwọn àpẹẹrẹ bẹ́ẹ̀ pèsè?

EV3 jẹ ohun elo itọnisọna iṣẹ fun awọn iṣẹ STEM ati aaye titẹsi sinu awọn iṣẹ ṣiṣe ẹrọ. Niwọn igba ti o le ṣee lo lati yanju awọn iṣoro ilowo, awọn ọmọde ni iriri ni idagbasoke imọ-ẹrọ ati ṣiṣẹda awọn roboti ile-iṣẹ, kọ ẹkọ lati ṣe afiwe awọn ipo gidi, loye awọn eto ati itupalẹ awọn algoridimu, ati Titunto si awọn igbelewọn siseto ipilẹ.
Atilẹyin MicroPython jẹ ki pẹpẹ EV3 dara fun ẹkọ ile-iwe giga. Awọn ọmọ ile-iwe le gbiyanju ara wọn bi awọn pirogirama ni ọkan ninu awọn ede ode oni olokiki julọ, ati ki o faramọ awọn oojọ ti o ni ibatan si siseto ati apẹrẹ imọ-ẹrọ. Awọn ohun elo EV3 fihan pe ifaminsi kii ṣe idẹruba, mura silẹ fun awọn italaya imọ-ẹrọ to ṣe pataki, ati ṣe iranlọwọ fun ọ lati ṣe igbesẹ akọkọ si didari awọn ọgbọn imọ-ẹrọ. Ati fun awọn ti o ṣiṣẹ ni awọn ile-iwe ati ti o ni nkan ṣe pẹlu ẹkọ, a ti pese sile ati awọn ohun elo ẹkọ. Wọn ṣe apejuwe ni awọn alaye kini awọn ọgbọn ti o dagbasoke nigbati o ba n ṣe awọn iṣẹ ṣiṣe kan, ati bii awọn ọgbọn ti o gba ni ibatan si awọn iṣedede ikẹkọ.
orisun: www.habr.com
