Archivi categoria: programmazione

Programmazione C e non solo su Lego Mindstorm NXT 2.0

Mi è giunta in questa settimana la mail di Luigi B. che vi allego:

buongiorno,
scusi se la disturbo. le scrivo per chiederle un’informazione..sto pensando all’acquisto di Lego Mindstorm NXT 2.0 ma non sono riuscito a capire una cosa, è possibili programmare il robot in linguaggio C su sistema operativo Mountain Lion?

grazie mille e scusi il disturbo di nuovo

Ringrazio Luigi perché mi da spunto per realizzare un post riepilogativo su una domanda che spesso mi viene sottoposta da diversi utenti.
Risponderò brevemente non soltanto per quanto riguarda la programmazione in C, ma più in generale dando alcuni riferimenti sulle modalità di programmazione sull’NXT.

Premetto che per tutti gli ambienti di sviluppo ove non è prevista una versione per Mac OS X è possibile virtualizzare (in alcuni casi con qualche limitazione) ed usare l’ambiente di sviluppo specifico.

Per maggiori informazioni sugli ambienti di virtualizzazione fate riferimento a questi link:

Prima di ogni cosa vi rimando alla tabella di riepilogativa  (sistema operativo/ambiente di sviluppo) che trovate su teamhassenplug.org sito che vi consiglio vivamente di aggiungere ai vostri bookmarks.
Dovreste trovare sufficienti informazioni per incominciare a comprendere cosa possa essere necessario per voi o per la vostra classe se siete insegnanti.

Tra gli ambienti di sviluppo più noti segnalo:

ROBOTC
Poiché la richiesta è la programmazione in C allora ROBOTC è sicuramente una scelta da considerare, con esso potrete programmare in C standard sull’NXT. ROBOTC è stato sviluppato dalla Robotics Academy della Carnegie Mellon University e potete acquistarlo direttamente sul sito di riferimento. Per quanto riguarda la compatibilità co Mac OSX guardate la pagina How to install ROBOTC on a MAC

NXC … Not eXactly C
E’ un C-like per l’NXT. NXC deriva dall’ambiente di sviluppo Bricx originariamente creato per la programmazione sulla prima generazione Lego, il Lego RCX. NXC è l’evoluzione per la programmazione su NXT.

Di estremo interesse per un uso didattico:

PBLUA
Pblua è un linguaggio di scripting relativamente nuovo che sta ricevendo attenzione soprattutto a livello accademico.

leJOS NXJ – Java for Lego Mindstorms
leJOS è l’implementazione Java per l’NXT. Viene impiegato Java standard, ma con una libreria di classi più piccola in quanto la limitata quantità di memoria dell’NXT non potrebbe contenere tutte le librerie.

Code Avengers

Code Avengers è un sito che offre un metodo originale ed efficace per l’insegnamento della programmazione JavaScript, html e css a scuola. In tempo reale gli studenti potranno avere un feedback su ciò che hanno appreso permettendo all’insegnante di valutare immediatamente quando gli studenti hanno necessità di aiuto, il sistema infatti consente di visualizzare un report sullo stato di avanzamento dello studio per ogni allievo.

fonte : Andrea Graziano

After-school programming


Desiderate aprire un club di programmazione a scuola anche se siete dei principianti?

Una bella iniziativa di codecademy che mette a disposizione l’After School Code Kit, un documento che vi aiuterà ad aprire il vostro club di programmazione e pianificare le attività di apprendimento vostre o della classe o del club del “dopo scuola”.

Ma perché mai un giovane studente dovrebbero imparare a programmare?
La tecnologia sta cambiando radicalmente la nostra società e l’alfabetizzazione digitale è ormai una competenza fondamentale come la lettura e la scrittura.
Interagire con il mondo reale mediante la programmazione è qualcosa che affascina e coinvolge lo studente ed inoltre ne accentua le capacità logiche/matematiche e di comunicazione.

Certamente un’idea interessante da usare per aprire le scuole al territorio, rendendole un vero luogo di sperimentazione e di apprendimento.

Lezione 02 – corso di programmazione in C

In questa lezione:

  • soluzione ai problemi assegnati
  • operatori di uguaglianza e confronto
  • operatori logici
  • uso del costrutto condizionale if
  • uso del costrutto condizionale if…then
  • uso del costrutto condizionale switch
  • esercizi

Continua a leggere

Lezione 01 – corso di programmazione in C

Nuova avventura didattica.

Negli scorsi giorni ho avuto la fortuna di incontrare un gruppo di studenti che hanno una caratteristica molto bella, hanno la voglia di mettersi in discussione e di esplorare nuove frontiere, l’obiettivo è partecipare ad un concorso molto particolare ZeroRobotics.

Le agenzie Spaziali Europea (ESA), Italiana (ASI), il Politecnico di Torino e l’università di Padova, in collaborazione con il Massachusetts Institute of Technology (MIT), lanciano anche quest’anno il concorso Zero Robotics Europe 2012 in cui viene chiesto alle scuole superiori di creare programmi per il controllo di piccoli satelliti collocati nella Stazione Spaziale Internazionale (ISS).

Per poter pilotare i robot bisognerà saper programmare in C ed io avrò la funzione di “mentor”, dovrò supportare la squadra dell’IIS Galilei Ferrari di Torino, una bella responsabilità, ma sicuramente dal punto di vista dell’insegnante una bella sfida e comunque vada sia io che loro impareremo molto.

A causa dei tempi strettissimi per apprendere e partecipare al concorso ho deciso di realizzare un corso “super concentrato” 🙂 di programmazione in C che si svolgerà in circa 4 settimane in cui gli allievi seguiranno lezioni pratiche in laboratorio con studio e sperimentazione a casa, il tutto condito da una buona dose di scambio informazioni via facebook.

Non mi dilungherò sulla storia del C o su paragoni su altri linguaggi, ma la mia attenzione sarà rivolta esclusivamente al linguaggio di programmazione.

Partiamo!

In questa lezione:

  • Componenti di un programma C
  • Struttura di base di un programma C
  • Variabili
  • Tipi di dati
  • Operatori aritmetici
  • Regole di precedenza degli operatori aritmetici
  • Esercizi

Continua a leggere