LEGO MINDSTORMS Education EV3 + MicroPython: rhaglennu set adeiladu plant mewn iaith oedolion

Helo, Habr! Rydym yn barod dweud wrth 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.

LEGO MINDSTORMS Education EV3 + MicroPython: rhaglennu set adeiladu plant mewn iaith oedolion

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.

LEGO MINDSTORMS Education EV3 + MicroPython: rhaglennu set adeiladu plant mewn iaith oedolion

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 Delwedd MicroPython EV3 ar unrhyw gerdyn microSD, gosodwch ef yn y microgyfrifiadur EV3 a'i droi ymlaen. Yna mae angen i chi osod estyniad am ddim ar gyfer Visual Studio. A gallwch chi ddechrau gweithio. 

Rhaglennu'r robot cyntaf yn MycroPython

LEGO MINDSTORMS Education EV3 + MicroPython: rhaglennu set adeiladu plant mewn iaith oedolion

Ar ein Ar-lein 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 cyfarwyddiadau, 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?

LEGO MINDSTORMS Education EV3 + MicroPython: rhaglennu set adeiladu plant mewn iaith oedolion

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 rhaglenni gwersi 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

Prynu gwesteio dibynadwy ar gyfer gwefannau sydd Γ’ diogelwch DDoS, gweinyddwyr VPS VDS πŸ”₯ Prynu cynnal gwefannau dibynadwy gyda diogelwch DDoS, gweinyddion VPS VDS | ProHoster