LEGO MINDSTORMS Ilimi EV3 + MicroPython: tsara tsarin ginin yara a cikin yaren manya

Hello, Habr! Mun riga gaya game da dandalin LEGO MINDSTORMS Education EV3. Babban makasudin wannan dandali shine koyo ta hanyar misalai masu amfani, haɓaka ƙwarewar STEAM da haɓaka tunanin injiniya. Ana iya amfani dashi don aikin dakin gwaje-gwaje don nazarin makanikai da kuzari. Benches na dakin gwaje-gwaje da aka yi daga tubalin LEGO da abubuwan amfani don yin rikodi da sarrafa bayanai suna sa gwaje-gwajen sun fi ban sha'awa da gani kuma suna taimaka wa yara su fahimci ilimin kimiyyar lissafi. Misali, ɗalibai za su iya tattara bayanan narkewa kuma su yi amfani da app don tsara shi da gabatar da shi a cikin jadawali. Amma wannan shine farkon: a yau za mu gaya muku yadda ake haɗa wannan saiti tare da yanayin shirye-shiryen MicroPython da amfani da shi don koyar da mutum-mutumi.

LEGO MINDSTORMS Ilimi EV3 + MicroPython: tsara tsarin ginin yara a cikin yaren manya

Koyi shirye-shirye ta amfani da EV3

'Yan makaranta na zamani suna son ganin sakamako masu launi. Ee, sun gundura idan shirin ya buga lambobi zuwa na'ura wasan bidiyo, kuma suna son duba zane-zane masu launi, zane-zane da ƙirƙirar robots na gaske waɗanda ke motsawa da bin umarni. Lambar na yau da kullun kuma yana da wahala ga yara, don haka yana da kyau a fara koyo da wani abu mai sauƙi.

Asalin yanayin shirye-shiryen EV3 yana dogara ne akan harshen zane na LabVIEW kuma yana ba ku damar tantance algorithms don robot a gani: ana gabatar da umarni a cikin nau'i na tubalan waɗanda za a iya ja da haɗa su.

LEGO MINDSTORMS Ilimi EV3 + MicroPython: tsara tsarin ginin yara a cikin yaren manya

Wannan hanya tana aiki da kyau lokacin da kake buƙatar nuna yadda aka gina algorithms, amma bai dace da shirye-shirye tare da adadi mai yawa na tubalan ba. Yayin da al'amuran suka zama masu rikitarwa, ya zama dole don matsawa zuwa shirye-shirye tare da lambar, amma wannan mataki yana da wahala ga yara su ɗauka. 

Akwai 'yan dabaru a nan, ɗaya daga cikinsu shine don nuna cewa lambar tana yin abu ɗaya da tubalan. A cikin yanayin EV3, wannan yana yiwuwa ta hanyar haɗin gwiwar MicroPython, don haka yara za su iya ƙirƙirar shirin iri ɗaya a cikin mahallin shirye-shiryen toshe na asali da Python a cikin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Microsoft. Suna ganin cewa duka hanyoyin biyu suna aiki iri ɗaya, amma warware matsaloli masu rikitarwa ta amfani da lambar ya fi dacewa.

Canja zuwa MicroPython

An gina yanayin EV3 akan na'ura mai sarrafa ARM9, kuma masu haɓakawa da gangan suka bar gine-ginen a buɗe. Wannan bayani ya ba da damar fitar da madadin firmware, ɗayan wanda hoto ne don aiki tare da MicroPython. Yana ba ku damar amfani da Python don tsara EV3 ɗinku, yana kawo kit ɗin har ma kusa da ayyukan rayuwa na gaske. 

Don farawa, kuna buƙatar saukewa Hoton EV3 MicroPython akan kowane katin microSD, shigar da shi a cikin microcomputer na EV3 kuma kunna shi. Sannan kuna buƙatar shigarwa kari kyauta don Visual Studio. Kuma za ku iya fara aiki. 

Shirya mutum-mutumi na farko a cikin MycroPython

LEGO MINDSTORMS Ilimi EV3 + MicroPython: tsara tsarin ginin yara a cikin yaren manya

Akan namu shafin Akwai darussa da yawa don ƙware kan ainihin tunanin mutum-mutumi. Samfuran EV3 suna gabatar da yara ga abubuwan yau da kullun waɗanda ake amfani da su a cikin motoci masu tuƙa da kansu, robobin taron masana'anta, da injinan CNC. 

Za mu ɗauki misali na na'ura mai zane, wanda za a iya koya wa zane da siffofi na geometric. Wannan shari'ar sigar sauƙi ce ta manya-manyan walda ko injin niƙa kuma yana nuna yadda za a iya amfani da EV3 tare da MicroPython don koyar da yaran makaranta. Kuma injin zane na iya yin alamar ramuka a cikin allon da'ira na baba, amma wannan shine wani matakin da ke buƙatar lissafi.

Don aikin za mu buƙaci:

  • LEGO MINDSTORMS Ilimi EV3 Core Set; 
  • babban takarda na checkered takarda;
  • alamomi masu launi. 

Taron na robot da kansa yana ciki umarnin, kuma za mu kalli misalin shirye-shirye.

Da farko mun fara EV3 module library:

#!/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

Mun kafa wani dandamali wanda ke jujjuya rike kamar mota a tashar jiragen ruwa B. Mun saita rabon kaya na jirgin kasa mai hawa biyu tare da adadin hakora na 20-12-28, bi da bi.

turntable_motor = Motor(Port.B, Direction.CLOCKWISE, [20, 12, 28])

Muna saita tsarin ɗagawa don rikewa azaman mota a tashar jiragen ruwa C:

seesaw_motor = Motor(Port.C)

Mun saita gyroscope, wanda ke auna kusurwar karkata hannun, a cikin tashar jiragen ruwa 2:

gyro_sensor = GyroSensor(Port.S2)

Muna saita firikwensin launi a tashar jiragen ruwa 3. Ana amfani da firikwensin don gano farar takarda a ƙarƙashin injin zane:

color_sensor = ColorSensor(Port.S3)

Muna saita firikwensin taɓawa a tashar jiragen ruwa 4. Robot yana fara zane lokacin da aka danna firikwensin:

touch_sensor = TouchSensor(Port.S4)

Muna ayyana ayyukan da ke ɗagawa da rage hannun:

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)

Muna ayyana aiki don juya hannun zuwa wani kusurwa da aka bayar ko zuwa wani kusurwa:

def pen_holder_turn_to(target_angle):
  if target_angle > gyro_sensor.angle():

Idan kusurwar manufa ta fi kusurwar firikwensin gyro na yanzu, ci gaba da agogon hannu tare da ingantacciyar gudu:

    turntable_motor.run(70)
	
while gyro_sensor.angle() < target_angle:
  	
pass
  elif target_angle < gyro_sensor.angle():

Idan kusurwar manufa ta kasa da firikwensin gyro na yanzu, to sai ku matsa kusa da agogo.

    turntable_motor.run(-70)
	
while gyro_sensor.angle() > target_angle:
  	
pass

Dakatar da dandalin juyawa lokacin da aka kai kusurwar manufa:

  turntable_motor.stop(Stop.BRAKE)

Saita matsayi na farko na rike a matsayi na sama:

pen_holder_raise()

Yanzu ya zo babban ɓangaren shirin - madauki mara iyaka. EV3 da farko yana jiran firikwensin launi don gano farar takarda ko murabba'in farawa shuɗi kuma don danna firikwensin taɓawa. Sa'an nan kuma ya zana tsari, ya koma wurin farawa kuma ya sake maimaita komai.

Lokacin da na'urar ba ta shirya ba, LEDs akan mai sarrafawa sun juya ja kuma ana nuna hoton "yatsa ƙasa" akan allon LCD:

while True:
  brick.light(Color.RED)
  brick.display.image(ImageFile.THUMBS_DOWN)

Muna jira har sai firikwensin launi ya ƙidaya shuɗi ko fari, saita launi na LED zuwa kore, nuna hoton "yatsa sama" akan allon LCD kuma ya ba da rahoton cewa na'urar tana shirye don amfani:

  while color_sensor.color() not in (Color.BLUE, Color.WHITE):
	
wait(10)
  brick.light(Color.GREEN)
  brick.display.image(ImageFile.THUMBS_UP)

Muna jira don danna firikwensin taɓawa, sanya ƙimar kusurwa 0 zuwa firikwensin gyroscopic kuma fara zane:

  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)

Ɗaga mariƙin alƙalami kuma mayar da shi zuwa matsayinsa na asali:

  pen_holder_raise()
  pen_holder_turn_to(0)</i>

Wannan shi ne sauki shirin da muka halitta. Kuma a yanzu mun ƙaddamar da shi kuma mu dubi aikin mutum-mutumin da ke aiki. 

Menene irin waɗannan misalan suka bayar?

LEGO MINDSTORMS Ilimi EV3 + MicroPython: tsara tsarin ginin yara a cikin yaren manya

EV3 kayan aikin jagora ne don ayyukan STEM da kuma hanyar shiga cikin ayyukan injiniya. Tun da ana iya amfani da shi don magance matsalolin aiki, yara suna samun gogewa a cikin ci gaban fasaha da ƙirƙirar mutummutumi na masana'antu, koyon yin kwatankwacin yanayi na ainihi, fahimtar shirye-shirye da nazarin algorithms, da ƙwararrun gine-ginen shirye-shirye na asali.

Tallafin MicroPython ya sa dandalin EV3 ya dace da koyarwar makarantar sakandare. Dalibai za su iya gwada kansu a matsayin masu shirye-shirye a cikin ɗayan shahararrun yarukan zamani, kuma su san sana'o'in da suka shafi shirye-shirye da ƙirar injiniya. Kayayyakin EV3 sun nuna cewa coding ba abin tsoro bane, suna shirya ku don ƙalubalen aikin injiniya, kuma suna taimaka muku ɗaukar matakin farko don ƙwarewar ƙwarewar fasaha. Kuma ga wadanda suke aiki a makarantu kuma suna da alaƙa da ilimi, mun shirya shirye-shiryen darasi da kayan ilimi. Suna bayyana dalla-dalla irin ƙwarewar da aka haɓaka yayin aiwatar da wasu ayyuka, da yadda ƙwarewar da aka samu ke da alaƙa da ƙa'idodin horo.

source: www.habr.com

Sayi amintaccen masauki don shafuka tare da kariyar DDoS, sabar VPS VDS 🔥 Sayi ingantaccen masaukin yanar gizo tare da kariyar DDoS, sabar VPS VDS | ProHoster