Archivi tag: ir

PCTO A.S. 2020 – 2021 – SumoBot – lezione 1

Lavoro di PCTO a.s. 2020-2021. Anno scolastico difficile, la pandemia non aiuta assolutamente nello sviluppo di attività laboratoriali a scuola e in azienda e a tal proposito ho pensato di rivedere completamente il laboratorio iniziando dalle attività di laboratorio degli studenti del 3′ anno.
Come molti colleghi e studenti sapranno il PCTO (ex alternanza scuola lavoro) svolto al terzo anno consiste nello svolgimento di un’attività che viene integralmente realizzata a scuola in cui viene svolta una simulazione d’impresa, dalla progettazione alla creazione di un prodotto, ma il periodo è complicato e lo svolgimento delle attività avverrà in parte online ed in parte in presenza, online si effettueranno tutte le operazioni progettuali e di documentazione mentre in presenza si assemblerà l’oggetto che dovrà poi essere reso prodotto. Come per gli anni passati per le classi terze propongo un’attività basata su un kit da me progettato che i ragazzi poi dovranno modificare e migliorare sia dal punto di vista meccanico che dal punto di vista elettronico e informatico. Parto da un prodotto progettato in partenza semplicemente perché i tempi, i costi ed il periodo non permettono una progettazione da zero, ma come accade ogni anno molti ragazzi a fine attività rivedono integralmente il progetto riformulando una nuova proposta.


La robotica attrae sempre e prototipare piccoli robot affascina sempre i giovani studenti, pertanto ho modificato la prima versione del SumoRobot disegnato nello scorso anno scolastico, formulando una versione che potesse essere realizzata con semplicità e a costi molto bassi.
Tutti i miei studenti, di qualsiasi classe, ormai posseggono un kit Arduino con una buona dotazione di componentistica elettronica, pertanto le esercitazioni  in DaD non avvengono solamente usando simulatori, ma svolgendo praticamente loro a casa ed io a casa o a scuola le esercitazioni e allo stesso modo si opererà per l’attività di PCTO, fornendo un kit agli allievi.

Il kit consiste in un supporto di compensato da 4 mm tagliato a laser a scuola le cui parti verranno fissate utilizzando colla vinilica. Il controllo avviene mediante un Arduino Nano connesso ad una Sensor Shield V03 che permetterà agevolmente di connettere sensori e attuatori mediante semplici jumper evitando saldature.

I motori sono costituiti da due servomotori a rotazione continua, ciò consentirà di alimentare direttamente i motori dalla scheda Arduino evitando l’aggiunto di una ponte H per controllare i motori, azione che i ragazzi svolgeranno in altre esercitazioni. Due i sensori utilizzati sul robot: sensore ad ultrasuoni e sensori IR. L’alimentazione avverrà tramite una batteria da 9V. Il controllo dei movimenti del robot potrà avvenire anche remotamente via Bluetooth con Smartphone. Due gli elementi stampati in 3D, una ball caster in cui viene inserita una biglia di vetro e un supporto per il sensore ad ultrasuoni.

Durante la prima lezione gli allievi dovranno, seguendo il video allegato, assemblare tutte le parti, ricordando prima di ogni cosa di fissare la sensoristica e l’elettronica e successivamente procedere con l’incollaggio delle varie parti di compensato della struttura.

Per poter assemblare il robot bisognerà seguire il video allegato e le fotografie che seguono in cui sono evidenziate alcune parti.

E’ importante inoltre porre attenzione alla parte superiore di compensato che ha un orientamento specifico, seguire attentamente le indicazioni del video e delle fotografie.

A questa prima lezione allego la presentazione del progetto e i sorgenti grafici (pdf) in modo che anche altri colleghi o studenti possano duplicare e migliorare l’attività.

Nelle successive lezioni verranno mostrati i collegamenti elettrici delle varie parti e proposti alcuni sketch di esempio da cui partire per aggiungere le funzionalità richieste.

Presentazione del progetto.

Titolo del progetto: SumoRobot

Simulare la progettazione e la realizzazione da parte di un’azienda di un kit robotico per l’apprendimento del Coding e della Robotica per studenti della scuola media e primi due anni delle superiori.
Il Robot deve avere caratteristiche tali da poter essere impiegato in diverse tipologie di sperimentazioni didattiche:

  • evita ostacoli
  • segui linea
  • comando a distanza via Smartphone
  • modalità gara Sumo

Il kit dovrà essere corredato da:

  • Titolo Azienda
  • Titolo del prodotto (non deve essere quello dell’attività di PCTO) corredato da logo
  • Brochoure pubblicitaria
  • Manuale di istruzioni per il montaggio composto da: lista materiali e componenti, fasi di montaggio, il tutto arricchito con immagini e disegni tecnici
  • Manuale introduttivo alla programmazione con Arduino indirizzata alla programmazione del robot
  • Lista di sketch di esempi commentati e funzionanti da allegare al kit
  • Slide di presentazione del progetto
  • Sito internet di riferimento in cui raccogliere tutta la documentazione per il cliente

Note

  • Tutta la documentazione dovrà essere prodotta in lingua italiana ed inglese.
  • Il sito internet dovrà essere realizzato con Google Site e sarà visibile solo mediante account personale dello studente al gruppo di lavoro e ai docenti del Consiglio di Classe
  • Il diario di bordo dovrà essere prodotto con Google Documenti e dovrà collezionare l’attività svolta durante ogni giornata di lavoro
  • Nel diario di bordo bisognerà includere una sezione di “considerazioni personali” espresse da ogni singolo studente sull’attività svolta ed eventuali suggerimenti per il miglioramento del progetto.
  • La presentazione del prodotto dovrà essere realizzata con Google Presentazioni
  • Ogni fase costruttiva dovrà essere documentata in modo fotografico e con brevi video

Lista componenti

  • Sensore ultrasuoni HC-SR04
  • Sensor Shield per Arduino Uno Nano V3
  • Servomotori a rotazione continua 360° –  FS90R con ruote
  • Arduino Nano (originale o compatibile) nella versione compatibile che utilizza un convertitore da USB a Seriale tipo CH340G è indispensabile installare un driver specifico
  • Cavo di Alimentazione 9V con cavo jack maschio 2.1 X 5.5 mm
  • Batteria 9V
  • Jumper Femmina-Femmina

Orientamento delle varie parti della struttura del robot

Vista frontale del robot

Vista dal basso del robot, si notano i due sensori IR fissati con vite M3 da 12 mm

Blocco supporto sensore ultrasuoni mediante due viti M3 da 12 mm

I servomotori sono fissati alla struttura mediante due fascette stringicavo. Seguire l’orientamento dei servomotori così come indicato nelle immagini che seguono, i cavi di uscita dei servomotori devono essere rivolti verso l’esterno

Nell’immagine si nota in quali fessure far passare la fascetta stringicavo

La chiusura della fascetta deve avvenire nella parte inferiore del robot mantenendo il nodo di chiusura così come indicato nell’immagine

Le ruote vanno fissate al mozzo del motore mediante apposita vite

La scheda Sensor Shield V03 va fissata ai giunti esagonali mediante vite M3 da 10 mm

Nella prossima lezione vedremo come collegare le varie parti elettroniche ed inizieremo con la programmazione del robot.

Buon Making a tutti 🙂

Appunti di programmazione su Arduino: Rispondere ad un telecomando ad infrarossi

In preparazione delle prossime lezioni con i miei studenti condivido la traccia dell’attività di laboratorio in cui mostro come con Arduino è possibile comandare i dispositivi collegati al microcontrollore utilizzando un telecomando ad infrarossi.

La comunicazione ad infrarossi (IR) è una tecnologia wireless ampiamente utilizzata e facilmente realizzabile. Tra gli impieghi più noti: telecomandi TV, termometri ad infrarossi, sensori di movimento (PIR) utilizzati ad esempio per gli antifurti.

Utilizzando Arduino si potrebbero realizzare sperimentazioni che utilizzano la comunicazione IR per realizzare telecomandi per il controllo di robot, telecomandi per TV o fotocamere DSLR, oppure sistemi per monitorare la frequenza cardiaca o realizzare sensori di distanza.

In questa lezione spiegherò, spero in maniera in maniera accessibile a studenti ed appassionati di elettronica cosa sono gli infrarossi e come funzionano e successivamente mostrerò come utilizzare qualsiasi telecomando IR e comandare qualsiasi dispositivo  connesso ad Arduino.

Cosa sono gli infrarossi

La radiazione infrarossa è una forma di luce simile alla luce che vediamo intorno a noi, la differenza tra la luce visibile la la radiazione IR risiede nella frequenza e nella lunghezza d’onda. La radiazione infrarossa si trova al di fuori della gamma di luce visibile, quindi gli esserti umani non possono vederla.

Lo spettro elettromagnetico

EM Spectrum Properties it.svg
Di Annuale. Original version in English by Inductiveload – Translation from English version, Pubblico dominio, Collegamento

Luce visibile

Spettro elettromagnetico semplice.png
Di Teolindo04Opera propria, CC0, Collegamento

La comunicazione IR richiede che tra trasmettitore e ricevitore non vi siano ostacoli, si devono trovare in condizione di visibilità reciproca, non sarà quindi possibile trasmettere attraverso ostacoli, come i muri, come invece risulta possibile per la comunicazione WiFi o Bluetooth.

Come funzionano i trasmettitori ed i ricevitori IR

Un tipico sistema di comunicazione ad infrarossi richiede un trasmettitore IR e un ricevitore IR. Il trasmettitore è contenuto molto spesso in un contenitore simile a quello di un LED standard, con la differenza che produce una redazione elettromagnetica nel campo IR invece che nello spettro visibile.

Se guardate la parte anteriore di un telecomando del TV noterete il LED del trasmettitore IR:

Modulazione di un segnale IR

La radiazione elettromagnetica IR viene emessa da molte fonti: dal sole, dalle lampadine e da qualsiasi altra fonte di calore, ciò implica che queste fonti possono disturbare la comunicazione tra i nostri dispositivi IR comportandosi come dei veri e propri segnali di rumore. Per evitare che il rumore IR interferisca con il segnale IR dei nostri dispositivi, viene utilizzata una tecnica che prende il nome di modulazione.

Se prendiamo in considerazione il telecomando di un TV, quando premiamo uno dei pulsanti verrà emesso, tramite il LED IR, una sequenza di accensioni e spegnimenti del LED IR a frequenza fissata (tipica è la frequenza di 38 kHz) secondo uno schema specifico per ogni pulsante premuto.
Ad ogni pulsante è associato uno schema (detti pattern) specifico di 0 ed 1. Ad ogni stato logico è associata la frequenza di 0 Hz nel caso si voglia inviare uno 0 logico ed una frequenza di  38 kHz nel caso si voglia inviare un 1 logico. Gli schemi sono in genere costituiti da sequenze 12 o 32 bit.

Esistono diverse tecniche per ridurre la quantità di errori derivanti dal rumore esterno (soprattutto dalla luce solare), una di queste prevede che alla pressione di uno dei tasti del telecomando un oscillatore interno al trasmettitore fa “lampeggiare” il LED IR ad una frequenza fa per il livello logico 0 e ad una frequenza fb per un valore logico 1.

Il ricevitore prenderà in considerazione solo le sequenze di segnali alle frequenze fa e fb  associate ai valori 1 e 0 e scarterà tutte le altre frequenze che potrebbero essere derivanti da rumore IR esterno.

Sintesi schema di trasmissione e ricezione 

Il trasmettitore invierà la sequenza di o e 1 ad un decoder che riconoscerà la sequenza corretta.

La modalità in cui il segnale IR modulato viene convertito in binario è definito dal protocollo di trasmissione. Esistono diversi protocolli di trasmissione IR definiti dalle aziende produttrici: NEC,  Sony, Matsushita, NEC, RC5 sono tra i protocolli più comuni.

Nel caso del protocollo NEC il ricevitore converte il segnale IR modulato in un segnale binario, usando la seguente regola:

il livello logico 0 viene trasmesso con un impulso IR a livello ALTO lungo 562.5 μs seguito da un impulso IR BASSO lungo 562.5 μs. Un livello logico 1 inizia con un impulso IR a livello ALTO lungo 562,5 μs ad una frequenza di 38 kHz seguito da un impulso IR a livello BASSO lungo 1.687,5 μs.

Ogni volta che si preme un pulsante sul telecomando, viene generato un codice esadecimale univoco, questo sarà il codice che viene modulato ed inviato tramite il segnale IR al ricevitore. Per decifrare quale pulsante è stato premuto sul telecomando bisognerà  fare in modo che il microcontrollore sappia quale codice corrisponde a ciascun tasto sul telecomando.

Tenete in conto che ciascun telecomando, anche di stessa marca, invia codici esadecimali diversi anche per stessa funzionalità del pulsante,  quindi per i vostri progetti dovrete determinare, prima di procedere nelle sperimentazioni, il codice generato per ciascun tasto sul vostro telecomando.

Le schede tecniche dei telecomandi forniscono i codici esadecimali corrispondenti ad ogni tasto, nel caso non riusciate a trovare la scheda tecnica, in questo tutorial mostro come, con un semplice sketch, è possibile trovare immediatamente i codici associati ad ogni pulsante.

Prima di partire con le sperimentazioni

Durante le attività di sperimentazioni potrete utilizzare il telecomando del vostro TV, nel caso desiderate utilizzare telecomandi IR provenienti da apparati che non possedete più probabilmente potrebbe essere il caso verificarne il funzionamento.

Premesso che abbiate controllato la carica delle batterie del telecomando, un modo pratico per verificare il funzionamento del telecomando consiste nell’utilizzare una qualsiasi macchina fotografica digitale, anche quella del vostro smartphone, dispositivi in grado di visualizzare le frequenze IR.

  • Passo 1: spegnete l’illuminazione della stanza (per ridurre il rumore IR)
  • Passo 2: puntata il telecomando verso l’obiettivo
  • Passo 3: premete un qualsiasi pulsante ed osservate lo schermo della fotocamera, dovreste notare una luce tendente al blu, ciò identifica il funzionamento della trasmissione del segnale

Connettere il ricevitore IR ad Arduino

I ricevitori IR più comuni sono: TSOP4838, PNA4602, TSOP2438, TSPO2236

Tutti questi dispositivi presentano gli stessi collegamenti ed il circuito di collegamento ad Arduino è il medesimo, tranne che per il TSOP2438 in cui i piedini +5V e GND sono invertiti rispetto agli altri componenti elencati.

Per questo esercizio utilizzerò un ricevitore IR TSOP2236 – con demodulazione a 36 KHz.

Per poter utilizzare un ricevitore IR è indispensabile includere all’interno degli sketch la libreria IRremote.h che permette la gestione della trasmissione e la ricezione di segnali infrarossi.

Per i dettagli sull’uso della libreria vi rimando:

Nel caso abbiate problemi di utilizzo della libreria IRremote.h vi consiglio la lettura dell’articolo pubblicato su questo sito:

Arduino: problemi con la libreria IRremote.h – come risolverli

Ricordo che per l’invio dei segnali la libreria IRremote.h utilizza la modulazione PWM ed un timer specifico che utilizzando il pin numero 3. Nel caso abbiate la necessità di variare il pin è indispensabile modificare la libreria. Parlerò di ciò in una prossima lezione.

La spiegazione del funzionamento dei metodi utilizzati fate riferimento ai commenti inclusi nel codice.

Per l’esatto orientamento del TSOP2236 mantenere la protuberanza di fronte a se, in tal modo partendo da sinistra verso destra, come indicato nell’immagine che segue si avrà:

  • segnale (a sinistra)
  • +Vcc (centrale)
  • GND (a destra)

Esercizio 1

Realizzare uno sketch che permetta di far accendere e spegnere il led di controllo (collegato al pin 13) di Arduino ogni volta che si preme un pulsante del telecomando.

// Prof. Michele Maffucci
// 28.04.2019

// Il LED sul pin 13 si accende o si spegne ogni volta che viene
// un pulsante del telecomando

// ricevitore IR TSOP2236 - demulatore 36 KHz

// piedinatura vista frontale TSPO2236
// pin 1 (sx): pin Arduino
// pin 2 (centrale): +Vcc
// pin 3 (dx): GND

#include <IRremote.h>

const int pinRicevitoreIR = 4;             // pin a cui  collegato il ricevitore
const int ledPin = 13;                     // LED connesso al pin 13

IRrecv irrecv(pinRicevitoreIR);            // pin a cui  collegato il ricevitore
decode_results risultato;                  // salva il risultato ricevuto dal rilevatore IR

boolean lightState = false;                // ricorda se il LED e' acceso
unsigned long last = millis();             // ricorda quando e' stato ricevuto
                                           // l'ultima volta un segnale IR

void setup() {
    pinMode(ledPin, OUTPUT);
    irrecv.enableIRIn();                   // Attiva l'oggetto del ricevitore
}

void loop() {
  if (irrecv.decode(&risultato) == true) // vero se si e' ricevuto un messaggio
  {
    if (millis() - last > 250) {             // e' passato 1/4 di secondo dopo l'ultimo messaggio
      lightState = !lightState;              // se vero si cambia lo stato del LED
      digitalWrite(ledPin, lightState);
    }
    last = millis();
    irrecv.resume();                         // presta attenzione ad un altro messaggio
  }
}

Esercizio 2

Realizzare uno sketch che decodifica i segnali di un telecomando in modo che si possa realizzare un sistema di automazione comandato con i pulsanti del telecomando.
Per i collegamenti utilizzare lo schema dell’esercizio 01.

// Prof. Michele Maffucci
// 28.04.2019

// lettura codici esadecimali di un telecomando IR generico
// ricevitore IR TSOP2236 - demulatore 36 KHz

// piedinatura vista frontale TSPO2236
// pin 1 (sx): pin Arduino
// pin 2 (centrale): +Vcc
// pin 3 (dx): GND

#include <IRremote.h>

const int pinRicevitoreIR = 4;             // pin a cui  collegato il ricevitore

IRrecv irrecv(pinRicevitoreIR);            // pin a cui  collegato il ricevitore
decode_results risultato;                  // salva il risultato ricevuto dal rilevatore IR

void setup() {
    Serial.begin(9600);
    irrecv.enableIRIn();                   // Attiva l'oggetto del ricevitore
}

void loop() {
    if (irrecv.decode(&risultato)) {           // vero se si riceve un risultato
        Serial.print("0x");                    // stampa 0x che identifica un codice esadecimale
        Serial.println(risultato.value, HEX);  // stampa il valore esadecimale
        delay(50);                             // attesa di 50 millisecondi
        irrecv.resume();                       // ricezione del successivo valore
    }
}

Esercizio 3

Sfruttando lo sketch degli esercizi 1 e 2 identificare il codice di 5 pulsanti ed inviare sulla Serial Monitor i seguenti messaggi alla pressione dei pulsanti:

CODICE 1: Centrale
CODICE 2: Destro
CODICE 3: Sinistro
CODICE 4: Su
CODICE 5: Giù

Suggerimento
Utilizzare l’istruzione switch per discriminare tra la pressione dei diversi pulsanti

// Prof. Michele Maffucci
// 28.04.2019

// associazione codice invio messaggio sulla Serial Monitor
// ricevitore IR TSOP2236 - demulatore 36 KHz

// piedinatura vista frontale TSPO2236
// pin 1 (sx): pin Arduino
// pin 2 (centrale): +Vcc
// pin 3 (dx): GND

// N.B. nell'esempio sono stati inseriti nei rispettivi case i codici
// esadecimali utilizzati per il telecomando utilizzato
// sostituite questi valori a quelli che rilevate con lo sketch per la rilevazione
// dei codici esadecimali di qualsiasi telecomando  


#include <IRremote.h>

int pinRicevitoreIR = 4;                   // pin a cui  collegato il ricevitore

IRrecv irrecv(pinRicevitoreIR);            // pin a cui  collegato il ricevitore
decode_results risultato;                  // salva il risultato ricevuto dal rilevatore IR

void setup() {
    Serial.begin(9600);
    irrecv.enableIRIn();                   // Attiva l'oggetto del ricevitore
}

void loop() {
    if (irrecv.decode(&risultato)) {       // vero se si riceve un risultato
        
        switch (risultato.value) {         // in funzione di uno dei 4 pulsanti premuti invia messaggio sulla Serial Monitor
            case 0x77E1A086:
            Serial.println("Centrale");
            break;
            
            case 0x77E16086:
            Serial.println("Destro");
            break;
            
            case 0x77E19086:
            Serial.println("Sinistro");
            break;
            
            case 0x77E15086:
            Serial.println("Su'");
            break;
            
            case 0x77E13086:
            Serial.println("Giu'");
            break;
        } 
        irrecv.resume();                  // ricezione del successivo valore
    }
}

Esercizio 4

Accensione e spegnimento di un LED collegato al pin  8 con un solo pulsante di un telecomando. Visualizzare sulla Serial Monitor un messaggio che indica la pressione del pulsante.

Componenti

  • TSOP2236
  • LED
  • Resistenza da 220 Ohm

Nota
Tra pressione e successiva lettura della pressione di un pulsante lasciare trascorrere un tempo di 200 ms

// Prof. Michele Maffucci
// 28.04.2019

// accensione spegnimento di un LED con un telecomando IR generico
// ricevitore IR TSOP2236 - demulatore 36 KHz

// piedinatura vista frontale TSPO2236
// pin 1 (sx): pin Arduino
// pin 2 (centrale): +Vcc
// pin 3 (dx): GND

// N.B. nell'esempio è stato utilizzato come valore di controllo memorizzato in risultato.value
// il codice esadecimali del pulsante utilizzato per il telecomando usato come test
// sostituite questo valore con il pulsante del vostro telecomando

#include <IRremote.h>

const int pinRicevitoreIR = 4;             // pin a cui  collegato il ricevitore

IRrecv irrecv(pinRicevitoreIR);            // pin a cui  collegato il ricevitore
decode_results risultato;                  // salva il risultato ricevuto dal rilevatore IR

int ledPin = 8;                            // pin a cui  collegato il LED
int stato = 0;                             // se stato= 0 ledPin off - se stato = 1 ledPin on

void setup() {
    Serial.begin(9600);
    irrecv.enableIRIn();                   // Attiva l'oggetto del ricevitore
    pinMode(ledPin, OUTPUT);
}
 
void loop() {
    if ((irrecv.decode(&risultato)) && (risultato.value==0x77E1A086)) {
        if (stato == 0) {
            stato = 1;
            digitalWrite(ledPin, HIGH); 
            Serial.println("Centro - HIGH");
            } else {
            stato = 0;
            digitalWrite(ledPin, LOW);
            Serial.println("Centro - LOW");
        }
        delay(200);
        irrecv.resume();
    }
}

Buon Coding a tutti 🙂

Hackerare il proprio impianto di condizionamento

mattia-rossi

Qualche giorno fa ho ricevuto una segnalazione sulla mia pagina Facebook da Mattia Rossi un caro amico ed ex compagno di studi che sta sviluppando un progetto personale sul controllo remoto dell’impianto di condizionamento utilizzando OpenHub.
Ho trovato l’articolo estremamente interessante e mi ha dato alcuni suggerimenti su alcuni argomenti di demotica che dovr realizzare nel prossimo anno scolastico. Vi invito quindi alla lettura del suo tutorial da cui certamente potrete trarre spunti interessanti.
Il primo passo realizzato il Reverse Engineering dei comandi inviati via IR con i telecomandi, in modo da poterli controllare con con apposita elettronica, credo nel breve saranno pubblicati ulteriori sperimentazioni.

L’articolo: Toshiba Air Conditioner IR signal Reverse Engineering

Un caro saluto e sincero grazie a Mattia.
Attendiamo i prossimi tutorial.

Arduino: problemi con la libreria IRremote.h – come risolverli

Scrivo questo appunto per mantenere traccia in modo che possa essere utile anche ad altri.

Piccolo problema riscontrato con la libreria IRremote.h inclusa nell’ultima versione dell’IDE Arduino, la 1.6.3
Durante l’ultima lezione del mio corso Arduino Avanzato, svoltosi presso il FabLab di Biella, avevo impostato alcune esercitazioni sulla lettura dei codici dei telecomandi ad infrarossi che utilizziamo ogni giorno. Gli sketch utilizzavano ovviamente la libreria IRremote.h. Le esercitazioni sono state progettate sul mio computer desktop con la versione 1.6.3, tutte ovviamente testate e funzionanti. Riportando le stesse esercitazioni sul portatile con medesimo IDE ho riscontrato durante il corso il problema di cui vi allego schermata.

iremote-01

Il problema, nel mio caso non si rileva su un Mac desktop ultima generazione, mentre sul portatile MacBook Air sì.

Il messaggio di errore è:

‘TKD2’ was not declared in this scope

su entrambi ho una versione java 8 update 45, ma ritengo che il problema sia dovuto ad un conflitto derivante da un’altra libreria installata sul portatile, da test fatti l’anomalia si presenta anche su PC windows. Queste indicazioni mi rendo conto che non sono  tecnicamente dettagliato, ma per l’urgenza avevo bisogno di tenerne traccia, cercherò le cause precise dell’anomalia in un momento successivo. On-line ho verificato che anche altri utenti hanno avuto medesimo problema.

Grazie allo sforzo congiunto e tempestivo dei partecipanti al corso, che ringrazio, la soluzione è stata trovata prelevando nuovamente l’ultima versione IRremote, l’intera cartella è stata poi inserita direttamente all’interno della cartella su Mac:

Contents > Java > libraries > RobotIRremote

che potete visualizzare facendo click tasto destro sull’icona Arduino e selezionando “Show Package Contents”

iremote-02

su PC Windows il procedimento è simile, individuate la cartella libraries e procedete in modo analogo.

iremote-03

iremote-04

Ho assegnato alla cartella dell’ultima versione della libreria il medesimo nome della precedente, ed ho rinominato la vecchia in “RobotIRremote-old” conservata per future analisi.

iremote-05
Riavviando l’IDE tutto si è risolto.

iremote-06

Cercherò di comprendere le cause esatte del problema. Spero che questo alert possa servire anche ad altri.

Saluti.