Foghlam LEGO MINDSTORMS EV3 + MicroPython: prògramadh seata togail chloinne ann an cànan inbheach

Halò, Habr! Tha sinn mu thràth dh ’innis mun àrd-ùrlar LEGO MINDSTORMS Education EV3. Is e prìomh amasan an àrd-ùrlair seo ionnsachadh tro eisimpleirean practaigeach, leasachadh sgilean STEAM agus leasachadh inntinn innleadaireachd. Faodar a chleachdadh airson obair obair-lann gus meacanaig agus daineamaigs a sgrùdadh. Bidh beingean obair-lann air an dèanamh le breigichean LEGO agus goireasan airson dàta a chlàradh agus a ghiullachd a’ dèanamh dheuchainnean eadhon nas inntinniche agus nas lèirsinneach agus a’ cuideachadh clann gus fiosaig a thuigsinn nas fheàrr. Mar eisimpleir, faodaidh oileanaich dàta puing leaghaidh a chruinneachadh agus an aplacaid a chleachdadh airson a chuir air dòigh agus a thaisbeanadh ann an graf. Ach chan eil an seo ach toiseach: an-diugh innsidh sinn dhut mar a chuireas tu ris an t-seata seo le àrainneachd prògramadh MicroPython agus a chleachdadh gus innealan-fuadain a theagasg.

Foghlam LEGO MINDSTORMS EV3 + MicroPython: prògramadh seata togail chloinne ann an cànan inbheach

Ionnsaich prògramadh a’ cleachdadh EV3

Tha clann-sgoile an latha an-diugh ag iarraidh toraidhean dathte fhaicinn. Tha, tha iad sgìth ma bhios am prògram a’ clò-bhualadh àireamhan chun chonsail, agus tha iad airson coimhead air grafaichean dath, diagraman agus fìor innealan-fuadain a chruthachadh a bhios a’ gluasad agus a’ leantainn òrdughan. Tha coltas gu bheil còd cunbhalach cuideachd ro iom-fhillte dha clann, agus mar sin tha e nas fheàrr tòiseachadh air ionnsachadh le rudeigin nas fhasa.

Tha an àrainneachd prògramadh EV3 bunaiteach stèidhichte air cànan grafaigeach LabVIEW agus leigidh e leat algorithms a shònrachadh airson an inneal-fuadain gu fradharcach: tha òrdughan air an taisbeanadh ann an cruth bhlocaichean a ghabhas a shlaodadh agus a cheangal.

Foghlam LEGO MINDSTORMS EV3 + MicroPython: prògramadh seata togail chloinne ann an cànan inbheach

Bidh an dòigh seo ag obair gu math nuair a dh'fheumas tu sealltainn mar a tha algorithms air an togail, ach chan eil e freagarrach airson prògraman le àireamh mhòr de bhlocaichean. Mar a bhios suidheachaidhean a 'fàs nas iom-fhillte, feumar gluasad gu prògramadh le còd, ach tha an ceum seo duilich dha clann a ghabhail. 

Tha beagan chleasan an seo, is e aon dhiubh sealltainn gu bheil an còd a’ dèanamh an aon rud ris na blocaichean. Anns an àrainneachd EV3, tha seo comasach tro amalachadh MicroPython, gus an urrainn dha clann an aon phrògram a chruthachadh an dà chuid san àrainneachd prògramadh bloc bunaiteach agus ann am Python ann an Còd Visual Studio aig Microsoft. Tha iad a 'faicinn gu bheil an dà dhòigh ag obair mar an ceudna, ach tha e nas fhasa fuasgladh fhaighinn air duilgheadasan iom-fhillte a' cleachdadh còd.

Ag atharrachadh gu MicroPython

Tha an àrainneachd EV3 air a thogail air pròiseasar ARM9, agus dh'fhàg an luchd-leasachaidh an ailtireachd fosgailte a dh'aona ghnothach. Rinn am fuasgladh seo e comasach firmware eile a chuir a-steach, agus bha aon dhiubh na ìomhaigh airson a bhith ag obair le MicroPython. Leigidh e leat Python a chleachdadh gus an EV3 agad a phrògramadh, a’ toirt an uidheamachd eadhon nas fhaisge air gnìomhan fìor. 

Gus tòiseachadh, feumaidh tu luchdachadh sìos Dealbh EV3 MicroPython air cairt microSD sam bith, stàlaich e ann am microcomputer EV3 agus tionndaidh air. An uairsin feumaidh tu a stàladh leudachadh an-asgaidh Air sgàth airson lèirsinneach studio. Agus faodaidh tu tòiseachadh ag obair. 

A’ prògramadh a’ chiad robot ann am MycroPython

Foghlam LEGO MINDSTORMS EV3 + MicroPython: prògramadh seata togail chloinne ann an cànan inbheach

Air ar làrach Tha grunn leasanan ann airson maighstireachd a dhèanamh air bun-bheachdan robotics. Bidh modalan EV3 a’ toirt a-steach clann gu na bunaitean a thathas a’ cleachdadh ann an càraichean fèin-dràibhidh, innealan-fuadain cruinneachaidh factaraidh, agus innealan CNC. 

Gabhaidh sinn an eisimpleir de inneal tarraing, a dh'fhaodar a theagasg gus pàtrain agus cumaidhean geoimeatrach a tharraing. Tha a’ chùis seo na dhreach nas sìmplidhe de innealan-fuadain tàthaidh no bleith inbheach agus tha e a’ sealltainn mar a ghabhas EV3 a chleachdadh ann an co-bhonn ri MicroPython gus clann-sgoile a theagasg. Agus faodaidh inneal tarraing tuill a chomharrachadh ann am bòrd cuairteachaidh clò-bhuailte airson dad, ach is e sin ìre eile a dh’ fheumas matamataigs.

Airson obair, feumaidh sinn:

  • Foghlam LEGO MINDSTORMS EV3 Core Set; 
  • duilleag mòr de phàipear breac;
  • comharran dathte. 

Tha co-chruinneachadh an robot fhèin a-staigh stiùireadh, agus bheir sinn sùil air eisimpleir prògramadh.

An toiseach bidh sinn a’ tòiseachadh leabharlann modal 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

Stèidhich sinn àrd-ùrlar a thionndaidheas an làmh mar motair ann am port B. Shuidhich sinn an co-mheas gèar de thrèana gèar dà-ìre le grunn fhiaclan 20-12-28, fa leth.

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

Bidh sinn a’ rèiteachadh an inneal togail airson an làmh mar motair ann am port C:

seesaw_motor = Motor(Port.C)

Bidh sinn a’ rèiteachadh an gyroscope, a bhios a’ tomhas ceàrn claonadh an làimhseachaidh, ann am port 2:

gyro_sensor = GyroSensor(Port.S2)

Bidh sinn a’ rèiteachadh an sensor dath ann am port 3. Tha an sensor air a chleachdadh gus pàipear geal a lorg fon inneal tarraing:

color_sensor = ColorSensor(Port.S3)

Bidh sinn a’ rèiteachadh an sensor suathaidh ann am port 4. Bidh an robot a’ tòiseachadh a’ tarraing nuair a thèid an sensor a bhrùthadh:

touch_sensor = TouchSensor(Port.S4)

Bidh sinn a’ mìneachadh nan gnìomhan a thogas agus a lughdaicheas an làmh:

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)

Bidh sinn a’ mìneachadh gnìomh gus an làmh a thionndadh gu ceàrn sònraichte no gu ceàrn sònraichte:

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

Ma tha an ceàrn targaid nas motha na an ceàrn sensor gyro gnàthach, lean air adhart gu deiseal le astar adhartach:

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

Ma tha an ceàrn targaid nas lugha na an sensor gyro gnàthach, gluais an taobh deiseal:

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

Cuir stad air an àrd-ùrlar rothlach nuair a ruigear an ceàrn targaid:

  turntable_motor.stop(Stop.BRAKE)

Suidhich suidheachadh tùsail an làimhseachaidh anns an t-suidheachadh àrd:

pen_holder_raise()

A-nis thig am prìomh phàirt den phrògram - lùb gun chrìoch. Bidh EV3 an-toiseach a’ feitheamh ris an sensor dath pàipear geal no ceàrnag tòiseachaidh gorm a lorg agus an sensor suathaidh a bhrùthadh. An uairsin bidh e a 'tarraing pàtran, a' tilleadh chun an t-suidheachaidh tòiseachaidh agus ag ath-aithris a h-uile càil a-rithist.

Nuair nach eil an inneal deiseil, bidh na LEDs air an rianadair a’ tionndadh dearg agus tha ìomhaigh “òrdagan sìos” air a thaisbeanadh air an scrion LCD:

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

Bidh sinn a ’feitheamh gus am bi an sensor dath a’ cunntadh gorm no geal, cuir an dath LED gu uaine, seall ìomhaigh “òrdagan suas” air an scrion LCD agus aithris gu bheil an inneal deiseil airson a chleachdadh:

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

Bidh sinn a’ feitheamh gus an tèid an sensor suathaidh a bhrùthadh, sònraich luach ceàrn 0 don sensor gyroscopic agus tòisich a’ tarraing:

  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)

Àrdaich an neach-gleidhidh peann agus till air ais chun àite tùsail aige:

  pen_holder_raise()
  pen_holder_turn_to(0)</i>

Is e seo am prògram sìmplidh a chruthaich sinn. Agus a-nis bidh sinn ga chuir air bhog agus a’ coimhead air an inneal-fuadain dreachdadh ann an gnìomh. 

Dè tha eisimpleirean mar sin a’ toirt seachad?

Foghlam LEGO MINDSTORMS EV3 + MicroPython: prògramadh seata togail chloinne ann an cànan inbheach

Tha EV3 na inneal stiùireadh dreuchd airson dreuchdan STEM agus na àite inntrigidh gu dreuchdan innleadaireachd. Leis gum faodar a chleachdadh airson fuasgladh fhaighinn air duilgheadasan practaigeach, bidh clann a’ faighinn eòlas air leasachadh teignigeach agus cruthachadh innealan-fuadain tionnsgalach, ag ionnsachadh a bhith ag atharrais air fìor shuidheachaidhean, a’ tuigsinn phrògraman agus a’ mion-sgrùdadh algorithms, agus a’ faighinn maighstireachd air structaran prògramadh bunaiteach.

Tha taic MicroPython a’ dèanamh an àrd-ùrlar EV3 freagarrach airson teagasg àrd-sgoile. Faodaidh oileanaich feuchainn orra fhèin mar phrògramadairean ann an aon de na nuadh-chànanan as mòr-chòrdte, agus eòlas fhaighinn air proifeasanan co-cheangailte ri prògramadh agus dealbhadh innleadaireachd. Tha innealan EV3 a’ sealltainn nach eil còdadh eagallach, gad ullachadh airson fìor dhùbhlain innleadaireachd, agus gad chuideachadh gus a’ chiad cheum a ghabhail a dh’ ionnsaigh sgilean teignigeach. Agus dhaibhsan a tha ag obair ann an sgoiltean agus a tha co-cheangailte ri foghlam, tha sinn air ullachadh prògraman leasain agus stuthan foghlaim. Bidh iad a’ toirt cunntas mionaideach air na sgilean a thathas a’ leasachadh nuair a bhios iad a’ coileanadh gnìomhan sònraichte, agus mar a tha na sgilean a chaidh fhaighinn a’ buntainn ri ìrean trèanaidh.

Source: www.habr.com

Ceannaich aoigheachd earbsach airson làraich le dìon DDoS, frithealaichean VPS VDS 🔥 Ceannaich aoigheachd làrach-lìn earbsach le dìon DDoS, frithealaichean VPS VDS | ProHoster