Helo, Habr! Rydym yn barod am blatfform LEGO MINDSTORMS Education EV3. Prif amcanion y platfform hwn yw dysgu trwy enghreifftiau ymarferol, datblygu sgiliau STEAM a datblygu meddylfryd peirianneg. Gellir ei ddefnyddio ar gyfer gwaith labordy i astudio mecaneg a dynameg. Mae meinciau labordy wedi'u gwneud o frics LEGO a chyfleustodau ar gyfer cofnodi a phrosesu data yn gwneud arbrofion hyd yn oed yn fwy diddorol a gweledol ac yn helpu plant i ddeall ffiseg yn well. Er enghraifft, gall myfyrwyr gasglu data pwynt toddi a defnyddio'r ap i'w drefnu a'i gyflwyno mewn graff. Ond dim ond y dechrau yw hyn: heddiw byddwn yn dweud wrthych sut i ategu'r set hon ag amgylchedd rhaglennu MicroPython a'i ddefnyddio i ddysgu roboteg.

Dysgwch raglennu gan ddefnyddio EV3
Mae plant ysgol modern eisiau gweld canlyniadau lliwgar. Ydyn, maen nhw wedi diflasu os yw'r rhaglen yn argraffu rhifau i'r consol, ac maen nhw eisiau edrych ar graffiau lliw, diagramau a chreu robotiaid go iawn sy'n symud ac yn dilyn gorchmynion. Mae cod rheolaidd hefyd yn ymddangos yn rhy gymhleth i blant, felly mae'n well dechrau dysgu gyda rhywbeth haws.
Mae'r amgylchedd rhaglennu EV3 sylfaenol yn seiliedig ar iaith graffigol LabVIEW ac mae'n caniatΓ‘u ichi nodi algorithmau ar gyfer y robot yn weledol: cyflwynir gorchmynion ar ffurf blociau y gellir eu llusgo a'u cysylltu.

Mae'r dull hwn yn gweithio'n dda pan fydd angen i chi ddangos sut mae algorithmau'n cael eu hadeiladu, ond nid yw'n addas ar gyfer rhaglenni gyda nifer fawr o flociau. Wrth i senarios ddod yn fwy cymhleth, mae angen symud i raglennu gyda chod, ond mae'r cam hwn yn anodd i blant ei gymryd.
Mae yna ychydig o driciau yma, ac un ohonynt yw dangos bod y cod yn gwneud yr un peth Γ’'r blociau. Yn yr amgylchedd EV3, mae hyn yn bosibl trwy integreiddio MicroPython, felly gall plant greu'r un rhaglen yn yr amgylchedd rhaglennu bloc sylfaenol a Python yng Nghod Stiwdio Weledol Microsoft. Maent yn gweld bod y ddau ddull yn gweithio yr un peth, ond mae datrys problemau cymhleth gan ddefnyddio cod yn fwy cyfleus.
Newid i MicroPython
Mae amgylchedd EV3 wedi'i adeiladu ar brosesydd ARM9, a gadawodd y datblygwyr y bensaernΓ―aeth yn agored yn fwriadol. Roedd yr ateb hwn yn ei gwneud hi'n bosibl cyflwyno firmware amgen, ac roedd un ohonynt yn ddelwedd ar gyfer gweithio gyda MicroPython. Mae'n caniatΓ‘u ichi ddefnyddio Python i raglennu'ch EV3, gan ddod Γ’'r cit hyd yn oed yn agosach at dasgau bywyd go iawn.
I ddechrau, mae angen i chi lawrlwytho ar unrhyw gerdyn microSD, gosodwch ef yn y microgyfrifiadur EV3 a'i droi ymlaen. Yna mae angen i chi osod ar gyfer Visual Studio. A gallwch chi ddechrau gweithio.
Rhaglennu'r robot cyntaf yn MycroPython

Ar ein Mae yna sawl gwers ar gyfer meistroli cysyniadau sylfaenol roboteg. Mae modelau EV3 yn cyflwyno plant i'r pethau sylfaenol a ddefnyddir mewn ceir hunan-yrru, robotiaid cydosod ffatri, a pheiriannau CNC.
Byddwn yn cymryd yr enghraifft o beiriant lluniadu, y gellir ei ddysgu i luniadu patrymau a siapiau geometrig. Mae'r achos hwn yn fersiwn symlach o robotiaid weldio neu melino oedolion ac mae'n dangos sut y gellir defnyddio EV3 ar y cyd Γ’ MicroPython i ddysgu plant ysgol. A gall peiriant darlunio nodi tyllau mewn bwrdd cylched printiedig ar gyfer dad, ond mae honno'n lefel arall sy'n gofyn am fathemateg.
Ar gyfer gwaith, mae angen i ni:
- LEGO MINDSTORMS Addysg EV3 Set Graidd;
- dalen fawr o bapur brith;
- marcwyr lliw.
Mae cynulliad y robot ei hun i mewn , a byddwn yn edrych ar enghraifft rhaglennu.
Yn gyntaf, rydym yn cychwyn y llyfrgell modiwlau 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
Fe wnaethom sefydlu platfform sy'n cylchdroi'r handlen fel modur ym mhorthladd B. Rydym yn gosod cymhareb gΓͺr trΓͺn gΓͺr dau gam gyda nifer o ddannedd o 20-12-28, yn y drefn honno.
turntable_motor = Motor(Port.B, Direction.CLOCKWISE, [20, 12, 28])
Rydym yn ffurfweddu'r mecanwaith codi ar gyfer yr handlen fel modur ym mhorthladd C:
seesaw_motor = Motor(Port.C)
Rydym yn ffurfweddu'r gyrosgop, sy'n mesur ongl gogwydd yr handlen, ym mhorthladd 2:
gyro_sensor = GyroSensor(Port.S2)
Rydym yn ffurfweddu'r synhwyrydd lliw ym mhorthladd 3. Defnyddir y synhwyrydd i ganfod papur gwyn o dan y peiriant lluniadu:
color_sensor = ColorSensor(Port.S3)
Rydym yn ffurfweddu'r synhwyrydd cyffwrdd ym mhorth 4. Mae'r robot yn dechrau lluniadu pan fydd y synhwyrydd yn cael ei wasgu:
touch_sensor = TouchSensor(Port.S4)
Rydym yn diffinio'r swyddogaethau sy'n codi ac yn gostwng yr handlen:
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)
Rydym yn diffinio swyddogaeth i gylchdroi'r handlen i ongl benodol neu i ongl benodol:
def pen_holder_turn_to(target_angle):
if target_angle > gyro_sensor.angle():
Os yw'r ongl darged yn fwy na'r ongl synhwyrydd gyro gyfredol, parhewch Γ’'r cloc gyda chyflymder positif:
turntable_motor.run(70)
while gyro_sensor.angle() < target_angle:
pass
elif target_angle < gyro_sensor.angle():
Os yw'r ongl darged yn llai na'r synhwyrydd gyro cyfredol, symudwch yn wrthglocwedd:
turntable_motor.run(-70)
while gyro_sensor.angle() > target_angle:
pass
Stopiwch y platfform cylchdroi pan gyrhaeddir yr ongl darged:
turntable_motor.stop(Stop.BRAKE)
Gosodwch safle cychwynnol yr handlen yn y safle uchaf:
pen_holder_raise()
Nawr daw prif ran y rhaglen - dolen ddiddiwedd. Mae EV3 yn aros yn gyntaf i'r synhwyrydd lliw ganfod papur gwyn neu sgwΓ’r cychwyn glas ac i'r synhwyrydd cyffwrdd gael ei wasgu. Yna mae'n tynnu patrwm, yn dychwelyd i'r man cychwyn ac yn ailadrodd popeth eto.
Pan nad yw'r ddyfais yn barod, mae'r LEDs ar y rheolydd yn troi'n goch ac mae delwedd βbawd i lawrβ yn cael ei harddangos ar y sgrin LCD:
while True:
brick.light(Color.RED)
brick.display.image(ImageFile.THUMBS_DOWN)
Rydyn ni'n aros nes bod y synhwyrydd lliw yn cyfrif yn las neu'n wyn, yn gosod y lliw LED i wyrdd, yn arddangos delwedd βbawd i fynyβ ar y sgrin LCD ac yn adrodd bod y ddyfais yn barod i'w defnyddio:
while color_sensor.color() not in (Color.BLUE, Color.WHITE):
wait(10)
brick.light(Color.GREEN)
brick.display.image(ImageFile.THUMBS_UP)
Rydym yn aros i'r synhwyrydd cyffwrdd gael ei wasgu, aseinio'r gwerth ongl 0 i'r synhwyrydd gyrosgopig a dechrau lluniadu:
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)
Codwch ddeiliad y pen a'i ddychwelyd i'w safle gwreiddiol:
pen_holder_raise()
pen_holder_turn_to(0)</i>
Dyma'r rhaglen syml rydyn ni wedi'i chreu. Ac yn awr rydym yn ei lansio ac yn edrych ar y robot drafftio ar waith.
Beth mae enghreifftiau o'r fath yn ei ddarparu?

Mae EV3 yn offeryn cyfarwyddyd gyrfa ar gyfer gyrfaoedd STEM ac yn fan mynediad i yrfaoedd peirianneg. Gan y gellir ei ddefnyddio i ddatrys problemau ymarferol, mae plant yn ennill profiad mewn datblygiad technegol a chreu robotiaid diwydiannol, yn dysgu i efelychu sefyllfaoedd go iawn, yn deall rhaglenni a dadansoddi algorithmau, ac yn meistroli lluniadau rhaglennu sylfaenol.
Mae cefnogaeth MicroPython yn gwneud y platfform EV3 yn addas ar gyfer addysgu ysgol uwchradd. Gall myfyrwyr roi cynnig ar eu hunain fel rhaglenwyr yn un o'r ieithoedd modern mwyaf poblogaidd, a dod yn gyfarwydd Γ’ phroffesiynau sy'n ymwneud Γ’ rhaglennu a dylunio peirianneg. Mae citiau EV3 yn dangos nad yw codio yn frawychus, yn eich paratoi ar gyfer heriau peirianneg difrifol, ac yn eich helpu i gymryd y cam cyntaf tuag at feistroli sgiliau technegol. Ac ar gyfer y rhai sy'n gweithio mewn ysgolion ac sy'n gysylltiedig ag addysg, rydym wedi paratoi a deunyddiau addysgol. Disgrifiant yn fanwl pa fedrau a ddatblygir wrth gyflawni rhai tasgau, a sut mae'r medrau a enillwyd yn berthnasol i safonau hyfforddi.
Ffynhonnell: hab.com
