Skip to main content

Complessità di programmazione

I robot possono essere progettati per eseguire un’ampia gamma di compiti. Alcune di queste attività sono molto semplici, come aprire una porta automatica. Altri possono essere molto più complessi, come un’auto autonoma che naviga in un ambiente urbano. Non importa quanto sia complesso il compito, può essere suddiviso in compiti più semplici. Questi compiti sono conosciuti come comportamenti e sono gli elementi costitutivi della programmazione della robotica.

Un comportamento è il modo in cui agisce un robot e può variare in complessità a seconda di come il robot è costruito o programmato. Un semplice robot mobile come il VEX V5 Speedbot ha solo due motori, mentre il Clawbot ha quattro motori, inclusi due motori aggiuntivi per il braccio e l'artiglio. I comportamenti di entrambi i robot comporteranno la rotazione dei motori per raggiungere gli obiettivi prefissati. Con più progettazione e programmazione, puoi iniziare da questo comportamento semplice ed eseguire comportamenti più complessi.

Di seguito è riportato un elenco di comportamenti dei robot che vanno da semplici a complessi sia per lo Speedbot che per il Clawbot. Tra parentesi puoi vedere i comportamenti più semplici che li compongono.

  • Ruota un motore assegnato a una determinata porta

  • Guida in avanti (ruota entrambi i motori sinistro e destro utilizzando la trasmissione)

  • Percorri 5 metri (vai avanti e poi fermati)

  • Afferra un oggetto distante (percorri 2 metri, ruota il motore dell'artiglio per afferrarlo)

  • Recupera un oggetto e mettilo su uno scaffale alto (prendi un oggetto distante, girati, percorri 2 metri, usa i motori del braccio e dell'artiglio per sollevare e rilasciare l'oggetto)

Puoi vedere come puoi decostruire qualsiasi comportamento più complesso in comportamenti più semplici. Questi diventano gli elementi costitutivi di qualsiasi compito complesso.

Icona Suggerimenti per gli insegnanti Suggerimenti per gli insegnanti

  • Chiedere agli studenti di scomporre i comportamenti complessi del robot in passaggi più piccoli e semplici. Questo processo è noto come decomposizione.

  • Spiegare agli studenti che la scomposizione (scomposizione) di comportamenti complessi in compiti più semplici è una parte importante della pianificazione e della programmazione.

  • Consentire agli studenti di eseguire i propri progetti autonomi se il tempo in classe è sufficiente.

Icona Estendi il tuo apprendimento Estendi il tuo apprendimento

Per collegare questa attività al pensiero computazionale e alla scomposizione, chiedi agli studenti di mappare o elencare i passaggi comportamentali che un robot eseguirebbe per completare le attività seguenti:

  • Attività uno: percorri 1 metro e torna al punto di partenza.

  • Attività due: capovolgere una scatola situata a 60 cm davanti al robot.

  • Attività tre: prendi un oggetto, scuotilo, percorri 30 cm, posiziona l'oggetto a terra e torna al punto di partenza.

Icona motivare la discussione Motivare la discussione

Gli studenti dovrebbero condividere i passaggi comportamentali che hanno elencato per le attività di Estendi il tuo apprendimento sopra. Ciascuna delle seguenti domande può essere posta dopo una o tutte le attività.

D: Quali passaggi o comportamenti ha elencato ciascun gruppo completare con successo questa attività?
A: Gli studenti dovranno considerare la lunghezza che il robot deve percorrere, il movimento e la velocità del braccio, oltre a elencare i semplici comportamenti del robot richiesti per completare l'attività o il compito (guidare in avanti, all'indietro, girare a sinistra o a destra ). Gli studenti dovrebbero creare i loro elenchi di comportamenti in modo che ogni passaggio sia rappresentato.

D: Quali erano le somiglianze e le differenze tra le soluzioni (elenchi di passaggi) per questa attività?
A: Gli studenti faranno confronti in base alle loro soluzioni. Un diagramma di Venn potrebbe essere un buon modo per organizzare i passaggi condivisi dagli studenti. Se la maggior parte degli studenti nomina un passaggio particolare, aggiungilo al centro dove i cerchi si sovrappongono. Se solo uno o pochi studenti nominano un passaggio particolare, aggiungilo a una cerchia o all'altra. Una volta terminato, i passaggi al centro dovrebbero essere semplici e affidabili e non possono essere ulteriormente suddivisi, mentre i passaggi elencati solo in uno dei cerchi probabilmente non sono così semplici come potrebbero essere. Tuttavia, questo modello potrebbe essere invertito a seconda dell'esperienza della classe nel scomporre comportamenti complessi nei loro passaggi più semplici.

D: C'erano somiglianze con le soluzioni di successo? Se così fosse, cos'erano?
A: Le soluzioni di maggior successo sono state quelle che includevano il maggior numero di dettagli e specificità. Il robot è programmato in un linguaggio con comportamenti molto specifici che sono stati scomposti nei loro componenti più piccoli. Ad esempio, potrebbe essere comune dire che un robot "percorre 1 metro e ritorna al punto di partenza", ma questa descrizione di alto livello non si traduce facilmente durante la programmazione. Devi scomporlo ulteriormente: avanza per 1 metro, gira di 180 gradi e avanza per 1 metro. Ma anche questo potrebbe non essere abbastanza preciso e hai bisogno di questo livello di dettaglio per essere pronto per la programmazione: imposta la velocità di guida e di svolta al 40%, guida in avanti per 1 metro, attendi 3 secondi, gira a sinistra di 180 gradi, attendi 1 secondo e avanzare per 1 metro. Quanto più scomponiamo comportamenti complessi per renderli comportamenti robotici pronti per la programmazione, tanto meglio saremo preparati a completare un progetto.