Robotica educativa

Robotica: la teoria dei sistemi spiegata ai bambini

Robotica: la teoria dei sistemi spiegata ai bambini

Ai miei tempi, quando ero un alunno, l'ausilio didattico dell'insegnante era principalmente il libro di testo. Un mio professore, tuttavia, un giorno portò in classe quello che poteva essere un antesignano del PC (era la fine degli anni 70): un semplice computer programmabile in BASIC con un gioco che lui stesso aveva sviluppato. Si vedeva un puntino muoversi come fosse una pallina che rimbalzava verso una schematica porta di calcio  ed un omino, che doveva essere un portiere di calcio, agitarsi per effettuare la sua parata. In quel momento ho compreso che con la matematica si può rappresentare e simulare qualunque elemento del mondo reale. Questo ebbe come logica conseguenza la mia passione per la Teoria dei sistemi ma, sopratutto, non ho mai spesso di "inventare" esperimenti ed oggetti che potessero chiarire i concetti teorici.

La Teoria dei sistemi è una disciplina che, come ben sanno molti miei colleghi, è materia di insegnamento negli istituti tecnici industriali oltre che, naturalmente, in molti corsi universitari. Riguarda principalmente lo studio dei sistemi automatici ovvero apparati in grado di eseguire operazioni in maniera autonoma.

Il sistema in questione può essere relativamente semplice o anche molto complesso.  Il forno che tutti abbiamo in cucina è un esempio di sistema semplice: è in grado di raggiungere e mantenere autonomamente una temperatura prefissata. Il pilota automatico di un aereo è un esempio di sistema complesso: è progettato in modo da mantenere la rotta prestabilita esaminando un numero considerevole di variabili contemporaneamente (altitudine, velocità del vento, posizione GPS, ecc.) ed agendo sul motore e sui diversi dispositivi di movimentazione posti sulle ali.

Normalmente si rappresenta un sistema automatico come un congegno al quale viene fornita in ingresso una certa grandezza e dal quale ci si aspetta il raggiungimento di un certo obiettivo in uscita in base a tale grandezza. Tornando all’esempio del forno: imposto la temperatura desiderata (ingresso), il sistema confronta l’ingresso con la temperatura effettiva (uscita), raggiunge tale temperatura in tempi più o meno brevi (velocità di risposta) e la mantiene finché non verrà spento (regolazione); tutto questo nonostante si vada ogni tanto a controllare lo stato di cottura aprendo lo sportello (immunità dai disturbi).

Gli strumenti matematici per lo sviluppo di un sistema automatico si acquisiscono nella scuola secondaria superiore ed eventualmente consolidano durante gli studi universitari. Alcuni concetti fondamentali tuttavia possono, a mio avviso, essere introdotti e compresi, in maniera relativamente semplice, forse fin dalla scuola primaria.

La cosa interessante, infatti, è che, in definitiva, possiamo rappresentare e studiare il mondo fisico che ci circonda e perfino noi stessi attraverso i concetti tipici della teoria dei sistemi. Si pensi ad esempio ai fenomeni naturali che regolano e mantengono il clima nei diversi ecosistemi, i meccanismi attraverso cui le diverse specie animali e vegetali si adattano all’ambiente ottimizzando le risorse (acqua, luce), le cellule che si autoregolano negli organismi viventi.

Del resto, il compito stesso dell’insegnante non consiste forse nell’effettuare un continuo “processo di regolazione” confrontando periodicamente l’uscita del “sistema alunno” (livello di apprendimento) con l’ingresso desiderato (livello atteso)?

In effetti, la questione più affascinante, a mio avviso, risiede proprio nella possibilità di rappresentare  il comportamento umano, con particolare riferimento all’apprendimento, attraverso una schematizzazione stile Teoria dei sistemi. Sotto questo aspetto i nostri ragazzi, dalla primaria alla secondaria superiore, sono, ovviamente molto più “esperti” di noi visto che la fase di apprendimento è in pieno svolgimento.

Si pensi all’azione del bere un bicchiere d’acqua … semplice? Quante volte avremo ripetuto questo gesto prima di riuscire da piccoli a compierlo? Chi ce lo ha insegnato? Evidentemente i nostri occhi hanno osservarto qualcuno mentre eseguiva il gesto del bere e la nostra mente, elaborando i dati dei vari inevitabili insuccessi, alla fine avrà permesso la riuscita dell’impresa.

In effetti il bere un bicchiere d’acqua è un ottimo esempio di sistema automatico. Per prima cosa dobbiamo afferrare il bicchiere: l’ingresso del nostro sistema è la posizione del bicchiere, l’uscita la posizione della mano. Noi agiremo in modo da rendere la nulla la differenza tra queste due variabili muovendo il braccio nella giusta direzione. Per fare questo dovremo confrontare la posizione mano-bicchiere e regolare l’intensità dei nostri muscoli in un processo continuo. Naturalmente anche l’azione dell’afferrare il bicchiere e del portarlo alla bocca possono essere scomposti secondo procedimenti simili, individuando le opportune variabili.

Naturalmente questi concetti sono ampiamente utilizzati in robotica. In effetti l’uso dei robot consente di mettere in luce i diversi aspetti della regolazione automatica a vari livelli di astrazione. La semplice osservazione diretta del comportamento di robot programmati dall’insegnante e con l’opportuna mediazione da parte di quest'ultimo, può effettivamente permettere l’introduzione di questi concetti fondamentali fin dai primi anni di scuola, aprendo così la strada verso nuove tecniche di ragionamento. Salendo di livello saranno gli stessi studenti a programmare i robot in modo che implementino un determinato comportamento, passando così da una fase di semplice osservazione ad una più evoluta di progetto e sviluppo.

Nel video raggiungibile attraverso il link in fondo all’articolo osserviamo un’applicazione di questi concetti che io stesso ho utilizzato più volte, in particolare durante i ministage di orientamento, cioè per i ragazzi della scuola secondaria di primo grado.

Vediamo due robot. Il piccolo rover su ruote è realizzato con il kit Lego Mindstorms e programmato con LabView per Lego; le gambe robotiche invece le ho sviluppate usando una tecnologia mista: componenti Lego per le parti meccaniche e scheda Arduino per l'elettronica di controllo (in questo caso ho usato il C++ come linguaggio di programmazione). Un minirobot è programmato per muoversi in avanti, l’altro, che insegue, dovrà mantenersi ad una certa distanza prestabilita. 

Il secondo robot, evidentemente, sta implementando un sistema a retroazione: l’ingresso è la distanza desiderata e viene inserita da programma; l’uscita è la distanza effettiva tra i due robot, l’azione della regolazione è il confronto continuo della posizione reciproca dei robot ed il comando dei motori per mantenerla costante.


Spero, a questo punto, di aver fornito qualche spunto utile per le vostre lezioni di sistemi automatici o semplicemente per introdurre, in maniera divertente, alcuni dei concetti fondamentali su cui si fonda tutta la moderna Teoria dei Sistemi cioè, di fatto, la disciplina volta a progettare praticamente ogni attuale dispositivo elettronico, elettrico, meccanico e perfino utile allo studio del comportamento umano e dei più diversi fenomeni sociologici.


Se siete interessati ai programmi che ho sviluppato nei diversi robot seguitemi nei futuri articoli e non esitate a contattarmi.

https://youtu.be/cyMof6pEu-8


Alla prossima,

ing. Franco Babbo

 

 

RIFERIMENTI

logo icted

ICTEDMAGAZINE

Information Communicatio
Technologies Education Magazine

Registrazione al n.157 del Registro Stam­pa presso il Tribunale di Catanzaro del 27/09/2004

Rivista trimestrale  

Direttore responsabile/Editore-responsabile intellettuale

Luigi A. Macrì